[KDevPlatform] 306d9f2 Fix linkage and link-interfaces
Aleix Pol
aleixpol at kde.org
Tue Dec 14 21:56:10 UTC 2010
On Tue, Dec 14, 2010 at 10:20 PM, Andreas Pakulat <apaku at gmx.de> wrote:
> commit 306d9f23e3d70fb8d745c384aac96a76963dffbd
> branch master
> Author: Andreas Pakulat <apaku at gmx.de>
> Date: Tue Dec 14 22:17:44 2010 +0100
>
> Fix linkage and link-interfaces
>
> This reduces the link-interfaces of the kdevplatform libs to whats
> really
> necessary (i.e. to libs they really use in their public API) and removes
> unecessary ones from the interface that are indirectly pulled in
> already.
>
> Also cleaned up the linking a bit along the way, removed some unecessary
> dependencies.
>
> If someone notices linker errors please send contact me with the output
> of make VERBOSE=1 in the failing directory.
>
> CCMAIL: kdevelop-devel at kdevelop.org
>
> diff --git a/debugger/CMakeLists.txt b/debugger/CMakeLists.txt
> index 639fc99..0e6fa50 100644
> --- a/debugger/CMakeLists.txt
> +++ b/debugger/CMakeLists.txt
> @@ -30,6 +30,9 @@ target_link_libraries(kdevplatformdebugger
> ${KDE4_KDEUI_LIBS}
> ${KDE4_KTEXTEDITOR_LIBS}
> )
> +target_link_libraries(kdevplatformdebugger LINK_INTERFACE_LIBRARIES
> + kdevplatforminterfaces
> + kdevplatformutil)
> set_target_properties(kdevplatformdebugger PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS kdevplatformdebugger EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
>
> diff --git a/documentation/CMakeLists.txt b/documentation/CMakeLists.txt
> index 7b0c44c..8e36eae 100644
> --- a/documentation/CMakeLists.txt
> +++ b/documentation/CMakeLists.txt
> @@ -15,8 +15,7 @@ target_link_libraries(kdevplatformdocumentation
> kdevplatforminterfaces)
>
> target_link_libraries(kdevplatformdocumentation LINK_INTERFACE_LIBRARIES
> - ${QT_QTGUI_LIBRARY}
> - ${KDE4_KDECORE_LIBS})
> + kdevplatforminterfaces)
>
> set_target_properties(kdevplatformdocumentation PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
>
> diff --git a/language/CMakeLists.txt b/language/CMakeLists.txt
> index b66418d..67985db 100644
> --- a/language/CMakeLists.txt
> +++ b/language/CMakeLists.txt
> @@ -139,8 +139,7 @@ target_link_libraries(kdevplatformlanguage
> kdevplatformutil)
> # Need to add kdevplatforminterfaces and kdevplatformutil when those are
> exported targets
> target_link_libraries(kdevplatformlanguage LINK_INTERFACE_LIBRARIES
> - ${KDE4_KTEXTEDITOR_LIBS}
> - ${KDE4_THREADWEAVER_LIBRARIES})
> + kdevplatforminterfaces)
> set_target_properties(kdevplatformlanguage PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS kdevplatformlanguage EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
>
> diff --git a/outputview/CMakeLists.txt b/outputview/CMakeLists.txt
> index 8bc2650..ba30392 100644
> --- a/outputview/CMakeLists.txt
> +++ b/outputview/CMakeLists.txt
> @@ -9,10 +9,9 @@ kde4_add_library( kdevplatformoutputview SHARED
> ${outputviewinterfaces_LIB_SRCS}
> target_link_libraries(kdevplatformoutputview
> ${QT_QTCORE_LIBRARY}
> ${KDE4_KDEUI_LIBS}
> - kdevplatforminterfaces )
> + kdevplatforminterfaces)
> # Need to add kdevplatforminterfaces when its exported as target
> target_link_libraries(kdevplatformoutputview LINK_INTERFACE_LIBRARIES
> - ${QT_QTCORE_LIBRARY}
> ${KDE4_KDEUI_LIBS})
> set_target_properties(kdevplatformoutputview PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS kdevplatformoutputview EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
> diff --git a/plugins/execute/CMakeLists.txt
> b/plugins/execute/CMakeLists.txt
> index 0454f7e..6c65936 100644
> --- a/plugins/execute/CMakeLists.txt
> +++ b/plugins/execute/CMakeLists.txt
> @@ -19,6 +19,7 @@ kde4_add_ui_files( kdevexecute_PART_SRCS
> ${kdevexecute_PART_UIS} )
> kde4_add_plugin(kdevexecute ${kdevexecute_PART_SRCS} )
> target_link_libraries(kdevexecute
> ${KDE4_KDEUI_LIBS}
> + ${KDE4_KCMUTILS_LIBS}
> kdevplatforminterfaces
> kdevplatformutil
> kdevplatformproject
> diff --git a/project/CMakeLists.txt b/project/CMakeLists.txt
> index 1cf4d7c..6e195ad 100644
> --- a/project/CMakeLists.txt
> +++ b/project/CMakeLists.txt
> @@ -26,9 +26,7 @@ target_link_libraries(kdevplatformproject
> kdevplatformlanguage
> ${KDE4_KIO_LIBS})
> target_link_libraries(kdevplatformproject LINK_INTERFACE_LIBRARIES
> - ${QT_QTGUI_LIBRARY}
> - ${KDE4_KDECORE_LIBS}
> - ${KDE4_KUTIL_LIBRARY})
> + kdevplatforminterfaces)
> set_target_properties(kdevplatformproject PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS kdevplatformproject EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
>
> diff --git a/shell/CMakeLists.txt b/shell/CMakeLists.txt
> index fdd430c..95641dd 100644
> --- a/shell/CMakeLists.txt
> +++ b/shell/CMakeLists.txt
> @@ -113,15 +113,9 @@ target_link_libraries(kdevplatformshell
> kdevplatformdocumentation)
> # need to add kdevplatform* once those are exported targets
> target_link_libraries(kdevplatformshell LINK_INTERFACE_LIBRARIES
> - ${KDE4_KDEUI_LIBS}
> - ${KDE4_KDECORE_LIBS}
> - kdevplatformproject
> + kdevplatformoutputview
> sublime
> - kdevplatformlanguage
> - kdevplatformvcs
> - kdevplatformdocumentation
> - kdevplatformdebugger
> - kdevplatforminterfaces)
> + kdevplatformdebugger)
> set_target_properties(kdevplatformshell PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
>
> install(FILES
> diff --git a/sublime/CMakeLists.txt b/sublime/CMakeLists.txt
> index a4c3523..f9aaaeb 100644
> --- a/sublime/CMakeLists.txt
> +++ b/sublime/CMakeLists.txt
> @@ -27,7 +27,6 @@ target_link_libraries(sublime
> ${KDE4_KDEUI_LIBS}
> ${KDE4_KPARTS_LIBS})
> target_link_libraries(sublime LINK_INTERFACE_LIBRARIES
> - ${KDE4_KDEUI_LIBS}
> ${KDE4_KPARTS_LIBS})
> set_target_properties(sublime PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS sublime EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
> diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
> index f90cc07..39bf040 100644
> --- a/tests/CMakeLists.txt
> +++ b/tests/CMakeLists.txt
> @@ -13,7 +13,8 @@ kde4_add_library(kdevplatformtests SHARED
> ${kdevplatformtests_LIB_SRCS})
> target_link_libraries(kdevplatformtests
> ${QT_QTCORE_LIBRARY} kdevplatformshell kdevplatformlanguage)
> target_link_libraries(kdevplatformtests LINK_INTERFACE_LIBRARIES
> - ${QT_QTCORE_LIBRARY} kdevplatformshell)
> + kdevplatformshell
> + kdevplatformlanguage)
> set_target_properties(kdevplatformtests PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS kdevplatformtests EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
>
> diff --git a/util/CMakeLists.txt b/util/CMakeLists.txt
> index de8616d..1e8c2a7 100644
> --- a/util/CMakeLists.txt
> +++ b/util/CMakeLists.txt
> @@ -27,12 +27,10 @@ target_link_libraries(kdevplatformutil
> ${KDE4_KDEUI_LIBS}
> ${KDE4_KCMUTILS_LIBRARY}
> kdevplatforminterfaces
> - kdevplatformoutputview
> )
> # Might want to add kdevplatform* when they're exported targets
> target_link_libraries(kdevplatformutil LINK_INTERFACE_LIBRARIES
> - ${KDE4_KDEUI_LIBS}
> - ${KDE4_KCMUTILS_LIBRARY})
> + ${KDE4_KDEUI_LIBS})
> set_target_properties(kdevplatformutil PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS kdevplatformutil EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
>
> diff --git a/vcs/CMakeLists.txt b/vcs/CMakeLists.txt
> index 7419986..f3cd726 100644
> --- a/vcs/CMakeLists.txt
> +++ b/vcs/CMakeLists.txt
> @@ -58,8 +58,8 @@ target_link_libraries(kdevplatformvcs
> )
> # add kdevplatform* when they're exported targets
> target_link_libraries(kdevplatformvcs LINK_INTERFACE_LIBRARIES
> - ${KDE4_KIO_LIBS}
> - ${KDE4_KPARTS_LIBS})
> + kdevplatformoutputview
> + kdevplatforminterfaces)
> set_target_properties(kdevplatformvcs PROPERTIES VERSION
> ${KDEVPLATFORM_LIB_VERSION} SOVERSION ${KDEVPLATFORM_LIB_SOVERSION})
> install(TARGETS kdevplatformvcs EXPORT KDevPlatformTargets
> ${INSTALL_TARGETS_DEFAULT_ARGS} )
>
>
> --
> KDevelop-devel mailing list
> KDevelop-devel at kdevelop.org
> https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel
>
Just for the record, it worked just fine here.
Aleix
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20101214/854322ea/attachment.html>
More information about the KDevelop-devel
mailing list