summaryrefslogtreecommitdiff
path: root/eclass/kde4-meta.eclass
diff options
context:
space:
mode:
Diffstat (limited to 'eclass/kde4-meta.eclass')
-rw-r--r--eclass/kde4-meta.eclass21
1 files changed, 17 insertions, 4 deletions
diff --git a/eclass/kde4-meta.eclass b/eclass/kde4-meta.eclass
index 5835ad809d1..578ad0a430c 100644
--- a/eclass/kde4-meta.eclass
+++ b/eclass/kde4-meta.eclass
@@ -582,10 +582,20 @@ kde4-meta_change_cmakelists() {
# strip duplicate definitions only. Libkworkspace is only special
# candidate that installs the desired file itself.
if [[ ${PN} != libkworkspace ]]; then
- sed -i \
- -e '/install(FILES[[:space:]]\${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/DESTINATION \${_KDE4WorkspaceConfig_INSTALL_DIR})/d' \
- -e "s/FILE KDE4WorkspaceLibraryTargets.cmake/FILE KDE4WorkspaceLibraryTargets-${PN}.cmake/g" \
- CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
+ # we have to search up the CMakeLists.txt to see if we install
+ # export or not
+ [[ `find "${S}" -type f -name CMakeLists.txt | xargs -i cat {} | grep "EXPORT kdeworkspaceLibraryTargets" | wc -l` -gt 1 ]] \
+ && EXPORT_WORKSPACE=1
+ if [[ ${EXPORT_WORKSPACE} = 1 ]]; then
+ sed -i \
+ -e '/install(FILES[[:space:]]\${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/DESTINATION \${_KDE4WorkspaceConfig_INSTALL_DIR})/d' \
+ -e "s/FILE KDE4WorkspaceLibraryTargets.cmake/FILE KDE4WorkspaceLibraryTargets-${PN}.cmake/g" \
+ CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
+ else
+ sed -i \
+ -e '/install(FILES ${CMAKE_CURRENT_BINARY_DIR}\/KDE4WorkspaceConfig.cmake/,/^[[:space:]]*FILE KDE4WorkspaceLibraryTargets.cmake )[[:space:]]*^/d' \
+ CMakeLists.txt || die "${LINENO}: sed died in kdebase-workspace strip config install and fix EXPORT section"
+ fi
fi
;;
kdebase-runtime)
@@ -678,6 +688,9 @@ kde4-meta_src_install() {
debug-print-function $FUNCNAME "$@"
kde4-base_src_install
+ # remove loader script for kdebase-workspace. Only one is needed.
+ [[ ${KMNAME} = kdebase-workspace && ${PN} != libkworkspace && ${EXPORT_WORKSPACE} = 1 ]] && \
+ rm "${D}/${KDEDIR}/$(get_libdir)/cmake/KDE4Workspace-${PV}/KDE4WorkspaceLibraryTargets-${PN}.cmake"
}
# @FUNCTION: kde4-meta_src_make_doc