diff options
-rwxr-xr-x | am2cmake | 4 | ||||
-rwxr-xr-x | generate_findpackage_file | 31 | ||||
-rw-r--r-- | modules/FindKDE4.cmake | 9 | ||||
-rw-r--r-- | modules/FindLibArt.cmake | 12 | ||||
-rw-r--r-- | modules/FindLibXml2.cmake | 13 | ||||
-rw-r--r-- | modules/KDE4Macros.cmake | 12 |
6 files changed, 51 insertions, 30 deletions
@@ -850,10 +850,10 @@ class CMakeFile elsif buildTarget.type==Part if buildTarget.stdPrefix file.printf("kde4_add_plugin(%s WITH_PREFIX ${%s})\n\n", buildTarget.name, srcsName) - file.printf("kde4_create_libtool_file( %s /kde4/ )\n\n", buildTarget.name) + file.printf("kde4_install_libtool_file( ${KDE4_PLUGIN_INSTALL_DIR} %s )\n\n", buildTarget.name) else file.printf("kde4_add_plugin(%s ${%s})\n\n", buildTarget.name, srcsName) - file.printf("kde4_create_libtool_file( %s /kde4/ )\n\n", buildTarget.name) + file.printf("kde4_install_libtool_file( ${KDE4_PLUGIN_INSTALL_DIR} %s )\n\n", buildTarget.name) end file.printf("target_link_libraries(%s ", buildTarget.name) buildTarget.libs.each { |currentLib| file.printf(" %s", currentLib) } diff --git a/generate_findpackage_file b/generate_findpackage_file index 818b4f08..db3da7d9 100755 --- a/generate_findpackage_file +++ b/generate_findpackage_file @@ -16,9 +16,6 @@ header=gets.chomp print("Include subdir (e.g. \"libxml2\", empty to skip ): ") incSubDir=gets.chomp -if not incSubDir.empty? - incSubDir="/"+incSubDir -end print("Look for library (e.g. \"jpeg\" or \"xml2\"): ") lib=gets.chomp @@ -51,13 +48,29 @@ if not pkgconfig.empty? file.printf("SET(#{cmakeDefsName} ${_#{package}Cflags})\n\n") end -file.printf("FIND_PATH(#{cmakeIncDirName} #{header}\n") -if not pkgconfig.empty? - file.printf(" ${_#{package}IncDir}#{incSubDir}\n") +if not incSubDir.empty? + cmakeRootIncDirName=package.upcase+"_ROOT_INCLUDE_DIR" + + file.printf("FIND_PATH(#{cmakeRootIncDirName} #{incSubDir}/#{header}\n") + if not pkgconfig.empty? + file.printf(" ${_#{package}IncDir}\n") + end + file.printf(" /usr/include\n") + file.printf(" /usr/local/include\n") + file.printf(")\n\n") + + file.printf("SET(#{cmakeIncDirName} ${#{cmakeRootIncDirName}}/#{incSubDir} CACHE PATH \"The #{package} include directory\" )\n") + file.printf("MARK_AS_ADVANCED(#{cmakeRootIncDirName})\n\n") +else + file.printf("FIND_PATH(#{cmakeIncDirName} #{header}\n") + if not pkgconfig.empty? + file.printf(" ${_#{package}IncDir}\n") + end + file.printf(" /usr/include\n") + file.printf(" /usr/local/include\n") + file.printf(")\n\n") end -file.printf(" /usr/include#{incSubDir}\n") -file.printf(" /usr/local/include#{incSubDir}\n") -file.printf(")\n\n") + file.printf("FIND_LIBRARY(#{cmakeLibName} NAMES #{lib}\n") file.printf(" PATHS\n") diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index b09ddcd1..12e6b89b 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -18,7 +18,7 @@ # KDE4_ADD_KCFG_FILES # KDE4_AUTOMOC # KDE4_PLACEHOLDER -# KDE4_CREATE_LIBTOOL_FILE +# KDE4_INSTALL_LIBTOOL_FILE # KDE4_CREATE_FINAL_FILE # KDE4_ADD_KPART # KDE4_ADD_KLM @@ -62,9 +62,10 @@ SET(XDG_DIRECTORY_DIR /share/desktop-directories) # the following are directories where stuff will be installed to #SET(KDE4_SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") -SET(KDE4_MAN_INSTALL_DIR "/man" CACHE STRING "The kde man install dir (default prefix/man/)") -SET(KDE4_INFO_INSTALL_DIR "/info" CACHE STRING "The kde info install dir (default prefix/info)") -SET(KDE4_LIB_INSTALL_DIR "/lib" CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +SET(KDE4_MAN_INSTALL_DIR "/man" CACHE STRING "The kde man install dir (default prefix/man/)") +SET(KDE4_INFO_INSTALL_DIR "/info" CACHE STRING "The kde info install dir (default prefix/info)") +SET(KDE4_LIB_INSTALL_DIR "/lib" CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +SET(KDE4_PLUGIN_INSTALL_DIR "/lib/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is /lib/kde4)") diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 35b349fc..da9d68e7 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -6,12 +6,16 @@ PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags SET(LIBART_DEFINITIONS ${_libArtCflags}) -FIND_PATH(LIBART_INCLUDE_DIR libart_lgpl/libart.h -${_libArtIncDir}/libart-2.0 -/usr/include/libart-2.0 -/usr/local/include/libart-2.0 +FIND_PATH(LIBART_ROOT_INCLUDE_DIR libart-2.0/libart_lgpl/libart.h + ${_libArtIncDir} + /usr/include + /usr/local/include ) +SET(LIBART_INCLUDE_DIR ${LIBART_ROOT_INCLUDE_DIR}/libart-2.0 CACHE PATH "LibArt include directory") + +MARK_AS_ADVANCED(LIBART_ROOT_INCLUDE_DIR) + FIND_LIBRARY(LIBART_LIBRARY NAMES art_lgpl_2 PATHS ${_libArtLinkDir} diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 5aade097..122e2f8c 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -16,13 +16,16 @@ PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cf SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) -FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h - ${CMAKE_INCLUDE_PATH}/libxml2 - ${_LibXml2IncDir}/libxml2 - /usr/include/libxml2 - /usr/local/include/libxml2 +FIND_PATH(LIBXML2_ROOT_INCLUDE_DIR libxml2/libxml/xpath.h + ${_LibXml2IncDir} + /usr/include + /usr/local/include ) +SET(LIBXML2_INCLUDE_DIR ${LIBXML2_ROOT_INCLUDE_DIR}/libxml2 CACHE PATH "LibXml2 include directory") + +MARK_AS_ADVANCED(LIBXML2_ROOT_INCLUDE_DIR) + FIND_LIBRARY(LIBXML2_LIBRARY NAMES xml2 libxml2 PATHS ${_LibXml2LinkDir} diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 64520a12..61c6dc97 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -6,7 +6,7 @@ # KDE4_ADD_UI_FILES # KDE4_ADD_KCFG_FILES # KDE4_AUTOMOC -# KDE4_CREATE_LIBTOOL_FILE +# KDE4_INSTALL_LIBTOOL_FILE # KDE4_PLACEHOLDER # KDE4_CREATE_FINAL_FILE # KDE4_ADD_KPART @@ -336,7 +336,7 @@ MACRO(KDE4_FOOTER) ENDMACRO(KDE4_FOOTER) -MACRO(KDE4_CREATE_LIBTOOL_FILE _target _subdir) +MACRO(KDE4_INSTALL_LIBTOOL_FILE _subdir _target) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) @@ -358,11 +358,11 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target _subdir) FILE(APPEND ${_laname} "# Should we warn about portability when linking against -modules?\nshouldnotlink=yes\n") FILE(APPEND ${_laname} "# Files to dlopen/dlpreopen\ndlopen=''\ndlpreopen=''\n") FILE(APPEND ${_laname} "# Directory that this library needs to be installed in:\n") - FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${KDE4_LIB_INSTALL_DIR}/${_subdir}'\n") + FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${_subdir}'\n") - INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/${_subdir} FILES ${_laname}) + INSTALL_FILES(${_subdir} FILES ${_laname}) MACRO_ADDITIONAL_CLEAN_FILES( ${_laname}) -ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) +ENDMACRO(KDE4_INSTALL_LIBTOOL_FILE) MACRO(KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) @@ -405,7 +405,7 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) # IF (UNIX) # I guess under windows the libtool file are not required - #KDE4_CREATE_LIBTOOL_FILE(${_target_NAME}) + #KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) # ENDIF (UNIX) ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) |