[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