From f2586846661fd2ef1a999765108298ca41b57256 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 14 Jan 2006 20:15:30 +0000 Subject: -simple cmake modules for detecting libart, OpenSSL, FAM, jasper and PCRE -major improvement of am2cmake: add libtool .la files found in LIBADD to TARGET_LINK_LIBRARIES and fix the loop for adding the libs Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=498154 --- modules/FindFAM.cmake | 27 +++++++++++++++++++++++++++ modules/FindJasper.cmake | 27 +++++++++++++++++++++++++++ modules/FindLibArt.cmake | 27 +++++++++++++++++++++++++++ modules/FindOpenEXR.cmake | 12 ++++++++++++ modules/FindOpenSSL.cmake | 26 ++++++++++++++++++++++++++ modules/FindPCRE.cmake | 34 ++++++++++++++++++++++++++++++++++ modules/README | 5 +++++ 7 files changed, 158 insertions(+) create mode 100644 modules/FindFAM.cmake create mode 100644 modules/FindJasper.cmake create mode 100644 modules/FindLibArt.cmake create mode 100644 modules/FindOpenEXR.cmake create mode 100644 modules/FindOpenSSL.cmake create mode 100644 modules/FindPCRE.cmake create mode 100644 modules/README (limited to 'modules') diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake new file mode 100644 index 00000000..1ac64251 --- /dev/null +++ b/modules/FindFAM.cmake @@ -0,0 +1,27 @@ + +FIND_PATH(FAM_INCLUDE_DIR fam.h +/usr/include +/usr/local/include +) + +FIND_LIBRARY(FAM_LIBRARY NAMES fam +PATHS +/usr/lib +/usr/local/lib +) + + +IF(FAM_INCLUDE_DIR) + SET(FAM_FOUND TRUE) +ENDIF(FAM_INCLUDE_DIR) + + +IF(FAM_FOUND) + IF(NOT FAM_FIND_QUIETLY) + MESSAGE(STATUS "Found fam: ${FAM_LIBRARY}") + ENDIF(NOT FAM_FIND_QUIETLY) +ELSE(FAM_FOUND) + IF(FAM_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could not find fam library") + ENDIF(FAM_FIND_REQUIRED) +ENDIF(FAM_FOUND) diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake new file mode 100644 index 00000000..4123229e --- /dev/null +++ b/modules/FindJasper.cmake @@ -0,0 +1,27 @@ + +FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h +/usr/include +/usr/local/include +) + +FIND_LIBRARY(JASPER_LIBRARY NAMES jasper +PATHS +/usr/lib +/usr/local/lib +) + + +IF(JASPER_INCLUDE_DIR AND JASPER_LIBRARY) + SET(JASPER_FOUND TRUE) +ENDIF(JASPER_INCLUDE_DIR AND JASPER_LIBRARY) + + +IF(JASPER_FOUND) + IF(NOT JASPER_FIND_QUIETLY) + MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARY}") + ENDIF(NOT JASPER_FIND_QUIETLY) +ELSE(JASPER_FOUND) + IF(JASPER_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could not find jasper library") + ENDIF(JASPER_FIND_REQUIRED) +ENDIF(JASPER_FOUND) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake new file mode 100644 index 00000000..e170d0e9 --- /dev/null +++ b/modules/FindLibArt.cmake @@ -0,0 +1,27 @@ + +FIND_PATH(LIBART_INCLUDE_DIR libart_lgpl/libart.h +/usr/include/libart-2.0 +/usr/local/include/libart-2.0 +) + +FIND_LIBRARY(LIBART_LIBRARY NAMES art_lgpl_2 +PATHS +/usr/lib +/usr/local/lib +) + + +IF(LIBART_INCLUDE_DIR AND LIBART_LIBRARY) + SET(LIBART_FOUND TRUE) +ENDIF(LIBART_INCLUDE_DIR AND LIBART_LIBRARY) + + +IF(LIBART_FOUND) + IF(NOT LIBART_FIND_QUIETLY) + MESSAGE(STATUS "Found libart: ${LIBART_LIBRARY}") + ENDIF(NOT LIBART_FIND_QUIETLY) +ELSE(LIBART_FOUND) + IF(LIBART_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could not find libart") + ENDIF(LIBART_FIND_REQUIRED) +ENDIF(LIBART_FOUND) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake new file mode 100644 index 00000000..615d9ac7 --- /dev/null +++ b/modules/FindOpenEXR.cmake @@ -0,0 +1,12 @@ + +FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h +/usr/include +/usr/local/include +) + + + +IF(OPENEXR_INCLUDE_DIR) + SET(OPENEXR_FOUND TRUE) +ENDIF(OPENEXR_INCLUDE_DIR) + diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake new file mode 100644 index 00000000..8b6d6e5d --- /dev/null +++ b/modules/FindOpenSSL.cmake @@ -0,0 +1,26 @@ + +FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h +/usr/include/ +/usr/local/include/ +) + +FIND_LIBRARY(OPENSSL_LIBRARY NAMES ssl +PATHS +/usr/lib +/usr/local/lib +) + +IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY) + SET(OPENSSL_FOUND TRUE) +ENDIF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY) + + +IF(OPENSSL_FOUND) + IF(NOT OPENSSL_FIND_QUIETLY) + MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARY}") + ENDIF(NOT OPENSSL_FIND_QUIETLY) +ELSE(OPENSSL_FOUND) + IF(OPENSSL_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could not find OpenSSL") + ENDIF(OPENSSL_FIND_REQUIRED) +ENDIF(OPENSSL_FOUND) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake new file mode 100644 index 00000000..350cced8 --- /dev/null +++ b/modules/FindPCRE.cmake @@ -0,0 +1,34 @@ + +FIND_PATH(PCRE_INCLUDE_DIR pcre.h +/usr/include/ +/usr/local/include/ +) + +FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre +PATHS +/usr/lib +/usr/local/lib +) + +FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix +PATHS +/usr/lib +/usr/local/lib +) + +SET(PCRE_LIBRARY ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY}) + +IF(PCRE_INCLUDE_DIR AND PCRE_LIBRARY) + SET(PCRE_FOUND TRUE) +ENDIF(PCRE_INCLUDE_DIR AND PCRE_LIBRARY) + + +IF(PCRE_FOUND) + IF(NOT PCRE_FIND_QUIETLY) + MESSAGE(STATUS "Found PCRE: ${PCRE_LIBRARY}") + ENDIF(NOT PCRE_FIND_QUIETLY) +ELSE(PCRE_FOUND) + IF(PCRE_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could not find PCRE") + ENDIF(PCRE_FIND_REQUIRED) +ENDIF(PCRE_FOUND) diff --git a/modules/README b/modules/README new file mode 100644 index 00000000..3dc1eb80 --- /dev/null +++ b/modules/README @@ -0,0 +1,5 @@ +these are modules for detecting software packages needed by KDE, but not yet +part of cmake + +Alex + -- cgit v1.2.1 From b3e6c6d3bbb0faf683d9114f53ee142136a495ac Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 15 Jan 2006 13:49:12 +0000 Subject: -small wrapper around cmake's CheckTypeSize to turn it into a "CheckPrototypeExists" Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=498414 --- modules/CheckPrototypeExists.cmake | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 modules/CheckPrototypeExists.cmake (limited to 'modules') diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake new file mode 100644 index 00000000..4797865f --- /dev/null +++ b/modules/CheckPrototypeExists.cmake @@ -0,0 +1,16 @@ +# - Check if the prototype for a function exists. +# CHECK_PROTOTYPE_EXISTS (FUNCTION HEADER VARIABLE) +# +# FUNCTION - the name of the function you are looking for +# HEADER - the header(s) where the prototype should be declared +# VARIABLE - variable to store the result +# + +INCLUDE(CheckTypeSize) + +MACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) + SET(CMAKE_EXTRA_INCLUDE_FILES ${_HEADER}) + CHECK_TYPE_SIZE(${_SYMBOL} ${_RESULT}) + SET(CMAKE_EXTRA_INCLUDE_FILES) +ENDMACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) + -- cgit v1.2.1 From 49b236c6856b3b7c22a798320c0bd4c1f9ab6df5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 16 Jan 2006 18:09:26 +0000 Subject: cmake module for using pkg-config usage: pkgconfig(alsa ALSA_INCLUDE_DIR ALSA_LINK_DIR ALSA_LINK_FLAGS ALSA_CFLAGS) This will fill in the respective values in these four variables. If pkg-config or the software package is not found they will be empty. This command is not intended to be used directly, but in FindFOO.cmake modules. CCMAIL: kde-buildsystem@kde.org Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=498955 --- modules/UsePkgConfig.cmake | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 modules/UsePkgConfig.cmake (limited to 'modules') diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake new file mode 100644 index 00000000..7dc74777 --- /dev/null +++ b/modules/UsePkgConfig.cmake @@ -0,0 +1,39 @@ +# - pkg-config module for CMake +# Defines the following macros: +# PKGCONFIG(package includedir libdir linkflags cflags) +# - Calling PKGCONFIG will fill the desired information into the 4 given arguments, +# e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS) +# if pkg-config was not found or the specified software package doesn't exist, the +# variable will be empty when the function returns, otherwise they will contain the respective information + +FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) + +MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) +# reset the variables at the beginning + SET(${_include_DIR}) + SET(${_link_DIR}) + SET(${_link_FLAGS}) + SET(${_cflags}) + +# if pkg-config has been found + IF(PKGCONFIG_EXECUTABLE) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE ) + +# and if the package of interest also exists for pkg-config, then get the information + IF(NOT _return_VALUE) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir OUTPUT_VARIABLE ${_link_DIR} ) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs-only-other OUTPUT_VARIABLE ${_link_FLAGS} ) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags-only-other OUTPUT_VARIABLE ${_cflags} ) + + ENDIF(NOT _return_VALUE) + + ENDIF(PKGCONFIG_EXECUTABLE) + +ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) + -- cgit v1.2.1 From 0d87c6e52d0dae7cda5b61991089738c95fe8067 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 16 Jan 2006 21:50:40 +0000 Subject: use the new pkg-config cmake module in the libart module the support for pkg-config was added with a custom cmake module (i.e. script, no editing of C++ sources involved) since somebody asked me, whether pkg-config is supported by cmake, ccmail to the mailinglist CCMAIL: kde-buildsystem@kde.org Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=499066 --- modules/FindLibArt.cmake | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'modules') diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index e170d0e9..e8bd5a6b 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -1,11 +1,20 @@ +INCLUDE(UsePkgConfig) + +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +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_LIBRARY(LIBART_LIBRARY NAMES art_lgpl_2 PATHS +${_libArtLinkDir} /usr/lib /usr/local/lib ) -- cgit v1.2.1 From a6f951a920cc9b57aa36285d1201f7ebf0ad0265 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 19 Jan 2006 22:50:30 +0000 Subject: -fix ui3 handling Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=500305 --- modules/FindQt4.cmake | 755 ++++++++++++++++++++++++++++++++++++++++++++++++++ modules/FindX11.cmake | 151 ++++++++++ 2 files changed, 906 insertions(+) create mode 100644 modules/FindQt4.cmake create mode 100644 modules/FindX11.cmake (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake new file mode 100644 index 00000000..47ac15d8 --- /dev/null +++ b/modules/FindQt4.cmake @@ -0,0 +1,755 @@ +# - Find QT 4 +# This module can be used to find Qt4. +# This module defines a number of key variables and macros. First is +# QT_USE_FILE which is the path to a CMake file that can be included to compile +# Qt 4 applications and libraries. By default, the QtCore and QtGui +# libraries are loaded. This behavior can be changed by setting one or more +# of the following variables to true: +# QT_DONT_USE_QTCORE +# QT_DONT_USE_QTGUI +# QT_USE_QT3SUPPORT +# QT_USE_QTASSISTANT +# QT_USE_QTDESIGNER +# QT_USE_QTMOTIF +# QT_USE_QTNETWORK +# QT_USE_QTNSPLUGIN +# QT_USE_QTOPENGL +# QT_USE_QTSQL +# QT_USE_QTXML +# All the libraries required are stored in a variable called QT_LIBRARIES. +# Add this variable to your TARGET_LINK_LIBRARIES. +# +# macro QT4_WRAP_CPP(outfiles inputfile ... ) +# macro QT4_WRAP_UI(outfiles inputfile ... ) +# macro QT4_ADD_RESOURCE(outfiles inputfile ... ) +# +# QT_FOUND If false, don't try to use Qt. +# QT4_FOUND If false, don't try to use Qt 4. +# +# QT_QTCORE_FOUND True if QtCore was found. +# QT_QTGUI_FOUND True if QtGui was found. +# QT_QT3SUPPORT_FOUND True if Qt3Support was found. +# QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTDESIGNER_FOUND True if QtDesigner was found. +# QT_QTMOTIF_FOUND True if QtMotif was found. +# QT_QTNETWORK_FOUND True if QtNetwork was found. +# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. +# QT_QTOPENGL_FOUND True if QtOpenGL was found. +# QT_QTSQL_FOUND True if QtSql was found. +# QT_QTXML_FOUND True if QtXml was found. +# +# QT_DEFINITIONS Definitions to use when compiling code that +# uses Qt. +# +# QT_INCLUDES List of paths to all include directories of +# Qt4 QT_INCLUDE_DIR, QT_QT_INCLUDE_DIR, +# and QT_QTGUI_INCLUDE_DIR are +# always in this variable even if NOTFOUND, +# all other INCLUDE_DIRS are +# only added if they are found. +# +# QT_INCLUDE_DIR Path to "include" of Qt4 +# QT_QT_INCLUDE_DIR Path to "include/Qt" +# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" +# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" +# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" +# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" +# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" +# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" +# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" +# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" +# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" +# +# QT_LIBRARY_DIR Path to "lib" of Qt4 +# +# QT_QT3SUPPORT_LIBRARY Fullpath to Qt3Support library +# QT_QTASSISTANT_LIBRARY Fullpath to QtAssistant library +# QT_QTCORE_LIBRARY Fullpath to QtCore library +# QT_QTDESIGNER_LIBRARY Fullpath to QtDesigner library +# QT_QTGUI_LIBRARY Fullpath to QtGui library +# QT_QTMOTIF_LIBRARY Fullpath to QtMotif library +# QT_QTNETWORK_LIBRARY Fullpath to QtNetwork library +# QT_QTNSPLUGIN_LIBRARY Fullpath to QtNsPlugin library +# QT_QTOPENGL_LIBRARY Fullpath to QtOpenGL library +# QT_QTSQL_LIBRARY Fullpath to QtSql library +# QT_QTXML_LIBRARY Fullpath to QtXml library +# +# QT_QT3SUPPORT_LIBRARY_DEBUG Fullpath to Qt3Support_debug library +# QT_QTASSISTANT_LIBRARY_DEBUG Fullpath to QtAssistant_debug library +# +# QT_QTCORE_LIBRARY_DEBUG Fullpath to QtCore_debug +# QT_QTDESIGNER_LIBRARY_DEBUG Fullpath to QtDesigner_debug +# QT_QTGUI_LIBRARY_DEBUG Fullpath to QtGui_debug +# QT_QTMOTIF_LIBRARY_DEBUG Fullpath to QtMotif_debug +# QT_QTNETWORK_LIBRARY_DEBUG Fullpath to QtNetwork_debug +# QT_QTNSPLUGIN_LIBRARY_DEBUG Fullpath to QtNsPlugin_debug +# QT_QTOPENGL_LIBRARY_DEBUG Fullpath to QtOpenGL_debug +# QT_QTSQL_LIBRARY_DEBUG Fullpath to QtSql_debug +# QT_QTXML_LIBRARY_DEBUG Fullpath to QtXml_debug +# +# also defined, but not for general use are +# QT_MOC_EXECUTABLE Where to find the moc tool. +# QT_UIC_EXECUTABLE Where to find the uic tool. +# QT_UIC3_EXECUTABLE Where to find the uic3 tool. +# QT_RCC_EXECUTABLE Where to find the rcc tool +# +# These are around for backwards compatibility +# they will be set +# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found +# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found +# +# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) +# QT_MT_REQUIRED Qt4 is now always multithreaded +# +# These variables are set to "" Because Qt structure changed +# (They make no sense in Qt4) +# QT_QT_LIBRARY Qt-Library is now splitt +# QT_QTMAIN_LIBRARY Qt-Library is now splitt + +SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) + +SET( QT_DEFINITIONS "") + +IF (WIN32) + SET(QT_DEFINITIONS -DQT_DLL) +ENDIF(WIN32) + +FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/) +SET(GLOB_TEMP_VAR) +IF(GLOB_TEMP_VAR) + SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) +ENDIF(GLOB_TEMP_VAR) +SET(GLOB_TEMP_VAR) +FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-4*/bin/) +IF(GLOB_TEMP_VAR) + SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) +ENDIF(GLOB_TEMP_VAR) +# check for qmake +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin + ${QT4_PATHS} +) + +IF(QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" + OUTPUT_VARIABLE QTVERSION) + IF(QTVERSION MATCHES "4.*") + SET(QT4_QMAKE_FOUND TRUE) + ENDIF(QTVERSION MATCHES "4.*") +ENDIF(QT_QMAKE_EXECUTABLE) + +IF(QT4_QMAKE_FOUND) + # Set QT_LIBRARY_DIR + IF(NOT QT_LIBRARY_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_LIBS" + OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + IF(EXISTS "${QT_LIBRARY_DIR_TMP}") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does not exist, Qt must not be installed correctly.") + ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") + ENDIF(NOT QT_LIBRARY_DIR) + + IF (APPLE) + IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS ON + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS OFF + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) + ENDIF (APPLE) + + ######################################## + # + # Setting the INCLUDE-Variables + # + ######################################## + IF (NOT QT_HEADERS_DIR) + # Set QT_QT_INCLUDE_DIR by searching for qglobal.h + IF(QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_HEADERS" + OUTPUT_VARIABLE qt_headers ) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + ENDIF(QT_QMAKE_EXECUTABLE) + ENDIF (NOT QT_HEADERS_DIR) + FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-3*/include/Qt/) + SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) + FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) + SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) + FIND_PATH( QT_QT_INCLUDE_DIR qglobal.h + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/Qt" + ${QT_PATH_INCLUDE} + ${QT_HEADERS_DIR}/Qt + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + $ENV{QTDIR}/include/Qt + /usr/local/qt/include/Qt + /usr/local/include/Qt + /usr/lib/qt/include/Qt + /usr/include/Qt + /usr/share/qt4/include/Qt + "C:/Program Files/qt/include/Qt" + /usr/include/qt4/Qt) + + # Set QT_INCLUDE_DIR by removine "/Qt" in the string ${QT_QT_INCLUDE_DIR} + IF( QT_QT_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF (QT_USE_FRAMEWORKS) + SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) + ELSE (QT_USE_FRAMEWORKS) + STRING( REGEX REPLACE "/Qt$" "" qt4_include_dir ${QT_QT_INCLUDE_DIR}) + SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + ENDIF (QT_USE_FRAMEWORKS) + ENDIF( QT_QT_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF( NOT QT_INCLUDE_DIR) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( SEND_ERROR "Could not find qglobal.h") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_INCLUDE_DIR) + + IF (QT_USE_FRAMEWORKS) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} + -F${QT_LIBRARY_DIR} + ) + ENDIF (QT_USE_FRAMEWORKS) + + # Set QT_QT3SUPPORT_INCLUDE_DIR + FIND_PATH( QT_QT3SUPPORT_INCLUDE_DIR Qt3Support + ${QT_INCLUDE_DIR}/Qt3Support + ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers + ) + + # Set QT_QTCORE_INCLUDE_DIR + FIND_PATH( QT_QTCORE_INCLUDE_DIR QtCore + ${QT_INCLUDE_DIR}/QtCore + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + ) + + # Set QT_QTGUI_INCLUDE_DIR + FIND_PATH( QT_QTGUI_INCLUDE_DIR QtGui + ${QT_INCLUDE_DIR}/QtGui + ${QT_LIBRARY_DIR}/QtGui.framework/Headers + ) + + # Set QT_QTMOTIF_INCLUDE_DIR + FIND_PATH( QT_QTMOTIF_INCLUDE_DIR QtMotif ${QT_INCLUDE_DIR}/QtMotif) + + # Set QT_QTNETWORK_INCLUDE_DIR + FIND_PATH( QT_QTNETWORK_INCLUDE_DIR QtNetwork + ${QT_INCLUDE_DIR}/QtNetwork + ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers + ) + + # Set QT_QTNSPLUGIN_INCLUDE_DIR + FIND_PATH( QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin + ${QT_INCLUDE_DIR}/QtNsPlugin + ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers + ) + + # Set QT_QTOPENGL_INCLUDE_DIR + FIND_PATH( QT_QTOPENGL_INCLUDE_DIR QtOpenGL + ${QT_INCLUDE_DIR}/QtOpenGL + ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers + ) + + # Set QT_QTSQL_INCLUDE_DIR + FIND_PATH( QT_QTSQL_INCLUDE_DIR QtSql + ${QT_INCLUDE_DIR}/QtSql + ${QT_LIBRARY_DIR}/QtSql.framework/Headers + ) + + # Set QT_QTXML_INCLUDE_DIR + FIND_PATH( QT_QTXML_INCLUDE_DIR QtXml + ${QT_INCLUDE_DIR}/QtXml + ${QT_LIBRARY_DIR}/QtXml.framework/Headers + ) + + # Set QT_QTASSISTANT_INCLUDE_DIR + FIND_PATH( QT_QTASSISTANT_INCLUDE_DIR QtAssistant + ${QT_INCLUDE_DIR}/QtAssistant + ${QT_HEADERS_DIR}/QtAssistant + ) + + # Set QT_QTDESIGNER_INCLUDE_DIR + FIND_PATH( QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( + QT_LIBRARY_DIR + QT_INCLUDE_DIR + QT_QT_INCLUDE_DIR + QT_QT3SUPPORT_INCLUDE_DIR + QT_QTASSISTANT_INCLUDE_DIR + QT_QTCORE_INCLUDE_DIR + QT_QTDESIGNER_INCLUDE_DIR + QT_QTGUI_INCLUDE_DIR + QT_QTMOTIF_INCLUDE_DIR + QT_QTNETWORK_INCLUDE_DIR + QT_QTNSPLUGIN_INCLUDE_DIR + QT_QTOPENGL_INCLUDE_DIR + QT_QTSQL_INCLUDE_DIR + QT_QTXML_INCLUDE_DIR + ) + + # Set QT_INCLUDES + SET( QT_INCLUDES + ${QT_INCLUDE_DIR} + ${QT_QTCORE_INCLUDE_DIR} + ${QT_QT_INCLUDE_DIR} + ${QT_QTGUI_INCLUDE_DIR} + ) + # append optional flags + MACRO(QT4_APPEND_INCLUDES_FLAG FLAG) + IF(${FLAG}) + SET(QT_INCLUDES ${QT_INCLUDES} "${${FLAG}}") + ENDIF(${FLAG}) + ENDMACRO(QT4_APPEND_INCLUDES_FLAG) + QT4_APPEND_INCLUDES_FLAG(QT_QT3SUPPORT_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTASSISTANT_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTDESIGNER_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTDESIGNER_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTMOTIF_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTNETWORK_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTNSPLUGIN_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTOPENGL_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTSQL_INCLUDE_DIR) + QT4_APPEND_INCLUDES_FLAG(QT_QTXML_INCLUDE_DIR) + + + ######################################## + # + # Setting the LIBRARY-Variables + # + ######################################## + + IF (QT_USE_FRAMEWORKS) + # If FIND_LIBRARY found libraries in Apple frameworks, we would not have + # to jump through these hoops. + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" + CACHE STRING "The QtCore library.") + SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" + CACHE STRING "The QtCore library.") + SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" + CACHE STRING "The Qt3Support library.") + SET(QT_QT3SUPPORT_LIBRARY_DEBUG "-framework Qt3Support" + CACHE STRING "The Qt3Support library.") + SET(QT_QTGUI_LIBRARY "-framework QtGui" + CACHE STRING "The QtGui library.") + SET(QT_QTGUI_LIBRARY_DEBUG "-framework QtGui" + CACHE STRING "The QtGui library.") + SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" + CACHE STRING "The QtNetwork library.") + SET(QT_QTNETWORK_LIBRARY_DEBUG "-framework QtNetwork" + CACHE STRING "The QtNetwork library.") + SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" + CACHE STRING "The QtOpenGL library.") + SET(QT_QTOPENGL_LIBRARY_DEBUG "-framework QtOpenGL" + CACHE STRING "The QtOpenGL library.") + SET(QT_QTSQL_LIBRARY "-framework QtSql" + CACHE STRING "The QtSql library.") + SET(QT_QTSQL_LIBRARY_DEBUG "-framework QtSql" + CACHE STRING "The QtSql library.") + SET(QT_QTXML_LIBRARY "-framework QtXml" + CACHE STRING "The QtXml library.") + SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" + CACHE STRING "The QtXml library.") + ELSE (QT_USE_FRAMEWORKS) + + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of + # the filename + FIND_LIBRARY( QT_QTCORE_LIBRARY + NAMES QtCore QtCore4 + PATHS + ${QT_LIBRARY_DIR} + $ENV{QTDIR}/lib + /usr/local/qt/lib + /usr/local/lib + /usr/lib/qt/lib + /usr/lib + /usr/share/qt4/lib + C:/Progra~1/qt/lib + /usr/lib/qt4 ) + + # Set QT_QTCORE_LIBRARY_DEBUG by searching for a lib with "QtCore_debug" + # as part of the filename + FIND_LIBRARY( QT_QTCORE_LIBRARY_DEBUG + NAMES QtCore_debug QtCored4 + PATHS + ${QT_LIBRARY_DIR} + $ENV{QTDIR}/lib + /usr/local/qt/lib + /usr/local/lib + /usr/lib/qt/lib + /usr/lib + /usr/share/qt4/lib + C:/Progra~1/qt/lib + /usr/lib/qt4 ) + + # Set QT_QT3SUPPORT_LIBRARY + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Support_debug Qt3Supportd4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTGUI_LIBRARY + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTMOTIF_LIBRARY + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTNETWORK_LIBRARY + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetwork_debug QtNetworkd4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTNSPLUGIN_LIBRARY + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_DEBUG NAMES QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTOPENGL_LIBRARY + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGL_debug QtOpenGLd4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTSQL_LIBRARY + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSql_debug QtSqld4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTXML_LIBRARY + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR}) + + ENDIF (QT_USE_FRAMEWORKS) + + # Set QT_QTASSISTANT_LIBRARY + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTDESIGNER_LIBRARY + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR}) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( + QT_QT3SUPPORT_LIBRARY + QT_QTASSISTANT_LIBRARY + QT_QTCORE_LIBRARY + QT_QTDESIGNER_LIBRARY + QT_QTGUI_LIBRARY + QT_QTMOTIF_LIBRARY + QT_QTNETWORK_LIBRARY + QT_QTNSPLUGIN_LIBRARY + QT_QTOPENGL_LIBRARY + QT_QTSQL_LIBRARY + QT_QTXML_LIBRARY ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( + QT_QT3SUPPORT_LIBRARY_DEBUG + QT_QTASSISTANT_LIBRARY_DEBUG + QT_QTCORE_LIBRARY_DEBUG + QT_QTDESIGNER_LIBRARY_DEBUG + QT_QTGUI_LIBRARY_DEBUG + QT_QTMOTIF_LIBRARY_DEBUG + QT_QTNETWORK_LIBRARY_DEBUG + QT_QTNSPLUGIN_LIBRARY_DEBUG + QT_QTOPENGL_LIBRARY_DEBUG + QT_QTSQL_LIBRARY_DEBUG + QT_QTXML_LIBRARY_DEBUG ) + + ############################################ + # + # Check the existence of the libraries. + # + ############################################ + + IF (QT_QTCORE_INCLUDE_DIR AND QT_QTCORE_LIBRARY) + SET(QT_QTCORE_FOUND 1) + IF (NOT QT_QTCORE_LIBRARY_DEBUG) + SET(QT_QTCORE_LIBRARY_DEBUG ${QT_QTCORE_LIBRARY}) + ENDIF (NOT QT_QTCORE_LIBRARY_DEBUG) + ENDIF (QT_QTCORE_INCLUDE_DIR AND QT_QTCORE_LIBRARY) + + IF (QT_QTGUI_INCLUDE_DIR AND QT_QTGUI_LIBRARY) + SET(QT_QTGUI_FOUND 1) + IF (NOT QT_QTGUI_LIBRARY_DEBUG) + SET(QT_QTGUI_LIBRARY_DEBUG ${QT_QTGUI_LIBRARY}) + ENDIF (NOT QT_QTGUI_LIBRARY_DEBUG) + ENDIF (QT_QTGUI_INCLUDE_DIR AND QT_QTGUI_LIBRARY) + + IF (QT_QT3SUPPORT_INCLUDE_DIR AND QT_QT3SUPPORT_LIBRARY) + SET(QT_QT3SUPPORT_FOUND 1) + IF (NOT QT_QT3SUPPORT_LIBRARY_DEBUG) + SET(QT_QT3SUPPORT_LIBRARY_DEBUG ${QT_QT3SUPPORT_LIBRARY}) + ENDIF (NOT QT_QT3SUPPORT_LIBRARY_DEBUG) + ENDIF (QT_QT3SUPPORT_INCLUDE_DIR AND QT_QT3SUPPORT_LIBRARY) + + IF (QT_QTASSISTANT_INCLUDE_DIR AND QT_QTASSISTANT_LIBRARY) + SET(QT_QTASSISTANT_FOUND 1) + IF (NOT QT_QTASSISTANT_LIBRARY_DEBUG) + SET(QT_QTASSISTANT_LIBRARY_DEBUG ${QT_QTASSISTANT_LIBRARY}) + ENDIF (NOT QT_QTASSISTANT_LIBRARY_DEBUG) + ENDIF (QT_QTASSISTANT_INCLUDE_DIR AND QT_QTASSISTANT_LIBRARY) + + IF (QT_QTDESIGNER_INCLUDE_DIR AND QT_QTDESIGNER_LIBRARY) + SET(QT_QTDESIGNER_FOUND 1) + IF (NOT QT_QTDESIGNER_LIBRARY_DEBUG) + SET(QT_QTDESIGNER_LIBRARY_DEBUG ${QT_QTDESIGNER_LIBRARY}) + ENDIF (NOT QT_QTDESIGNER_LIBRARY_DEBUG) + ENDIF (QT_QTDESIGNER_INCLUDE_DIR AND QT_QTDESIGNER_LIBRARY) + + IF (QT_QTMOTIF_INCLUDE_DIR AND QT_QTMOTIF_LIBRARY) + SET(QT_QTMOTIF_FOUND 1) + IF (NOT QT_QTMOTIF_LIBRARY_DEBUG) + SET(QT_QTMOTIF_LIBRARY_DEBUG ${QT_QTMOTIF_LIBRARY}) + ENDIF (NOT QT_QTMOTIF_LIBRARY_DEBUG) + ENDIF (QT_QTMOTIF_INCLUDE_DIR AND QT_QTMOTIF_LIBRARY) + + IF (QT_QTNETWORK_INCLUDE_DIR AND QT_QTNETWORK_LIBRARY) + SET(QT_QTNETWORK_FOUND 1) + IF (NOT QT_QTNETWORK_LIBRARY_DEBUG) + SET(QT_QTNETWORK_LIBRARY_DEBUG ${QT_QTNETWORK_LIBRARY}) + ENDIF (NOT QT_QTNETWORK_LIBRARY_DEBUG) + ENDIF (QT_QTNETWORK_INCLUDE_DIR AND QT_QTNETWORK_LIBRARY) + + IF (QT_QTNSPLUGIN_INCLUDE_DIR AND QT_QTNSPLUGIN_LIBRARY) + SET(QT_QTNSPLUGIN_FOUND 1) + IF (NOT QT_QTNSPLUGIN_LIBRARY_DEBUG) + SET(QT_QTNSPLUGIN_LIBRARY_DEBUG ${QT_QTNSPLUGIN_LIBRARY}) + ENDIF (NOT QT_QTNSPLUGIN_LIBRARY_DEBUG) + ENDIF (QT_QTNSPLUGIN_INCLUDE_DIR AND QT_QTNSPLUGIN_LIBRARY) + + IF (QT_QTOPENGL_INCLUDE_DIR AND QT_QTOPENGL_LIBRARY) + SET(QT_QTOPENGL_FOUND 1) + IF (NOT QT_QTOPENGL_LIBRARY_DEBUG) + SET(QT_QTOPENGL_LIBRARY_DEBUG ${QT_QTOPENGL_LIBRARY}) + ENDIF (NOT QT_QTOPENGL_LIBRARY_DEBUG) + ENDIF (QT_QTOPENGL_INCLUDE_DIR AND QT_QTOPENGL_LIBRARY) + + IF (QT_QTSQL_INCLUDE_DIR AND QT_QTSQL_LIBRARY) + SET(QT_QTSQL_FOUND 1) + IF (NOT QT_QTSQL_LIBRARY_DEBUG) + SET(QT_QTSQL_LIBRARY_DEBUG ${QT_QTSQL_LIBRARY}) + ENDIF (NOT QT_QTSQL_LIBRARY_DEBUG) + ENDIF (QT_QTSQL_INCLUDE_DIR AND QT_QTSQL_LIBRARY) + + IF (QT_QTXML_INCLUDE_DIR AND QT_QTXML_LIBRARY) + SET(QT_QTXML_FOUND 1) + IF (NOT QT_QTXML_LIBRARY_DEBUG) + SET(QT_QTXML_LIBRARY_DEBUG ${QT_QTXML_LIBRARY}) + ENDIF (NOT QT_QTXML_LIBRARY_DEBUG) + ENDIF (QT_QTXML_INCLUDE_DIR AND QT_QTXML_LIBRARY) + + ####################################### + # + # Check the executables of Qt + # ( moc, uic, rcc ) + # + ####################################### + IF (NOT QT_BINARY_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + ENDIF (NOT QT_BINARY_DIR) + FIND_PROGRAM(QT_MOC_EXECUTABLE + NAMES moc + PATHS + ${QT_BINARY_DIR} + $ENV{QTDIR}/bin + /usr/local/qt/bin + /usr/local/bin + /usr/lib/qt/bin + /usr/bin + /usr/share/qt4/bin + C:/Progra~1/qt/bin + /usr/bin/qt4 + ) + + IF(QT_MOC_EXECUTABLE) + SET ( QT_WRAP_CPP "YES") + ENDIF(QT_MOC_EXECUTABLE) + + FIND_PROGRAM(QT_UIC3_EXECUTABLE + NAMES uic3 + PATHS + ${QT_BINARY_DIR} + $ENV{QTDIR}/bin + /usr/local/qt/bin + /usr/local/bin + /usr/lib/qt/bin + /usr/bin + /usr/share/qt4/bin + C:/Progra~1/qt/bin + /usr/bin/qt4 + ) + + FIND_PROGRAM(QT_UIC_EXECUTABLE + NAMES uic + PATHS + ${QT_BINARY_DIR} + $ENV{QTDIR}/bin + /usr/local/qt/bin + /usr/local/bin + /usr/lib/qt/bin + /usr/bin + /usr/share/qt4/bin + C:/Progra~1/qt/bin + /usr/bin/qt4 + ) + + IF(QT_UIC_EXECUTABLE) + SET ( QT_WRAP_UI "YES") + ENDIF(QT_UIC_EXECUTABLE) + + FIND_PROGRAM(QT_RCC_EXECUTABLE + NAMES rcc + PATHS + ${QT_BINARY_DIR} + $ENV{QTDIR}/bin + /usr/local/qt/bin + /usr/local/bin + /usr/lib/qt/bin + /usr/bin + /usr/share/qt4/bin + C:/Progra~1/qt/bin + /usr/bin/qt4 + ) + + MARK_AS_ADVANCED( + QT_UIC_EXECUTABLE + QT_UIC3_EXECUTABLE + QT_MOC_EXECUTABLE + QT_RCC_EXECUTABLE ) + + ###################################### + # + # Macros for building Qt files + # + ###################################### + + + # QT4_WRAP_CPP(outfiles inputfile ... ) + # TODO perhaps add support for -D, -U and other minor options + + MACRO(QT4_WRAP_CPP outfiles ) + + # get include dirs + GET_DIRECTORY_PROPERTY(moc_includes_tmp INCLUDE_DIRECTORIES) + SET(moc_includes) + FOREACH(it ${moc_includes_tmp}) + SET(moc_includes ${moc_includes} "-I${it}") + ENDFOREACH(it) + + FOREACH(it ${ARGN}) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + + SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + + ENDMACRO(QT4_WRAP_CPP) + + + # QT4_WRAP_UI(outfiles inputfile ... ) + + MACRO(QT4_WRAP_UI outfiles ) + + FOREACH(it ${ARGN}) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + + ENDMACRO(QT4_WRAP_UI) + + # QT4_ADD_RESOURCE(outfiles inputfile ... ) + # TODO perhaps consider adding support for compression and root options to rcc + + MACRO(QT4_ADD_RESOURCES outfiles ) + + FOREACH(it ${ARGN}) + GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) + SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_RCC_EXECUTABLE} + ARGS -name ${outfilename} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} ) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + + ENDMACRO(QT4_ADD_RESOURCES) + + + + ###################################### + # + # decide if Qt got found + # + ###################################### + # if the includes,libraries,moc,uic and rcc are found then we have it + IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "YES" ) + IF( NOT Qt4_FIND_QUIETLY) + MESSAGE(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") + ENDIF( NOT Qt4_FIND_QUIETLY) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "NO") + IF( Qt4_FIND_REQUIRED) + MESSAGE( SEND_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + ENDIF( Qt4_FIND_REQUIRED) + ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET(QT_FOUND ${QT4_FOUND}) + + + ####################################### + # + # System dependent settings + # + ####################################### + # for unix add X11 stuff + IF(UNIX) + FIND_PACKAGE(X11) + ENDIF(UNIX) + + + ####################################### + # + # compatibility settings + # + ####################################### + # Backwards compatibility for CMake1.4 and 1.2 + SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + + SET( QT_QT_LIBRARY "") + SET( QT_QTMAIN_LIBRARY "") +ELSE(QT4_QMAKE_FOUND) + IF(QT_QMAKE_EXECUTABLE) + MESSAGE("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") + ENDIF(QT_QMAKE_EXECUTABLE) + IF( Qt4_FIND_REQUIRED) + MESSAGE( SEND_ERROR "Qt qmake not found!") + ENDIF( Qt4_FIND_REQUIRED) + +ENDIF(QT4_QMAKE_FOUND) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake new file mode 100644 index 00000000..25d6e1e4 --- /dev/null +++ b/modules/FindX11.cmake @@ -0,0 +1,151 @@ +# - Find X11 installation +# Try to find X11 on UNIX systems. The following values are defined +# X11_FOUND - True if X11 is available +# X11_INCLUDE_DIR - include directories to use X11 +# X11_LIBRARIES - link against these to use X11 + +IF (UNIX) + SET(X11_FOUND 0) + + SET(X11_INC_SEARCH_PATH + /usr/X11R6/include + /usr/local/include + /usr/include/X11 + /usr/openwin/include + /usr/openwin/share/include + /opt/graphics/OpenGL/include + /usr/include + ) + + SET(X11_LIB_SEARCH_PATH + /usr/X11R6/lib + /usr/local/lib + /usr/openwin/lib + /usr/lib + ) + + FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) + FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) + + IF(X11_X11_INCLUDE_PATH) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) + ENDIF(X11_X11_INCLUDE_PATH) + + IF(X11_Xlib_INCLUDE_PATH) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH}) + ENDIF(X11_Xlib_INCLUDE_PATH) + + IF(X11_Xutil_INCLUDE_PATH) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) + ENDIF(X11_Xutil_INCLUDE_PATH) + + IF(X11_X11_LIB) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) + ENDIF(X11_X11_LIB) + + IF(X11_Xext_LIB) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) + ENDIF(X11_Xext_LIB) + + # Deprecated variable for backwards compatibility with CMake 1.4 + IF(X11_X11_INCLUDE_PATH) + IF(X11_LIBRARIES) + SET(X11_FOUND 1) + ENDIF(X11_LIBRARIES) + ENDIF(X11_X11_INCLUDE_PATH) + + SET(X11_LIBRARY_DIR "") + IF(X11_X11_LIB) + GET_FILENAME_COMPONENT(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) + ENDIF(X11_X11_LIB) + + IF(X11_FOUND) + INCLUDE(CheckFunctionExists) + INCLUDE(CheckLibraryExists) + + # Translated from an autoconf-generated configure script. + # See libs.m4 in autoconf's m4 directory. + IF($ENV{ISC} MATCHES "^yes$") + SET(X11_X_EXTRA_LIBS -lnsl_s -linet) + ELSE($ENV{ISC} MATCHES "^yes$") + SET(X11_X_EXTRA_LIBS "") + + # See if XOpenDisplay in X11 works by itself. + CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) + IF(NOT X11_LIB_X11_SOLO) + # Find library needed for dnet_ntoa. + CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) + IF (X11_LIB_DNET_HAS_DNET_NTOA) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) + ELSE (X11_LIB_DNET_HAS_DNET_NTOA) + CHECK_LIBRARY_EXISTS("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) + IF (X11_LIB_DNET_STUB_HAS_DNET_NTOA) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) + ENDIF (X11_LIB_DNET_STUB_HAS_DNET_NTOA) + ENDIF (X11_LIB_DNET_HAS_DNET_NTOA) + ENDIF(NOT X11_LIB_X11_SOLO) + + # Find library needed for gethostbyname. + CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) + IF(NOT CMAKE_HAVE_GETHOSTBYNAME) + CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + IF (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) + ELSE (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + CHECK_LIBRARY_EXISTS("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + IF (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) + ENDIF (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + ENDIF (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + ENDIF(NOT CMAKE_HAVE_GETHOSTBYNAME) + + # Find library needed for connect. + CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT) + IF(NOT CMAKE_HAVE_CONNECT) + CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) + IF (CMAKE_LIB_SOCKET_HAS_CONNECT) + SET (X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) + ENDIF (CMAKE_LIB_SOCKET_HAS_CONNECT) + ENDIF(NOT CMAKE_HAVE_CONNECT) + + # Find library needed for remove. + CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE) + IF(NOT CMAKE_HAVE_REMOVE) + CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) + IF (CMAKE_LIB_POSIX_HAS_REMOVE) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) + ENDIF (CMAKE_LIB_POSIX_HAS_REMOVE) + ENDIF(NOT CMAKE_HAVE_REMOVE) + + # Find library needed for shmat. + CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT) + IF(NOT CMAKE_HAVE_SHMAT) + CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) + IF (CMAKE_LIB_IPS_HAS_SHMAT) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) + ENDIF (CMAKE_LIB_IPS_HAS_SHMAT) + ENDIF(NOT CMAKE_HAVE_SHMAT) + ENDIF($ENV{ISC} MATCHES "^yes$") + + CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" + CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + IF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + SET (X11_X_PRE_LIBS -lSM -lICE) + ENDIF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + # Build the final list of libraries. + SET (X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) + ENDIF(X11_FOUND) + + MARK_AS_ADVANCED( + X11_X11_INCLUDE_PATH + X11_X11_LIB + X11_Xext_LIB + X11_Xlib_INCLUDE_PATH + X11_Xutil_INCLUDE_PATH + X11_LIBRARIES + ) + +ENDIF (UNIX) -- cgit v1.2.1 From 7c7a0e07ca201f1f5dd51bf87d6c023dc9dc28f0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 10:29:20 +0000 Subject: -generate_findpackage_file: a script to simplify generating simple FindFoo.cmake files -FindLibXml2.cmake and FindLibXslt.cmake: modules to find libxml2 and libxslt, generated by the script above -some tuning in the other modules Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501125 --- modules/FindLibXml2.cmake | 45 +++++++++++++++++++++++++++++++++++++++++++++ modules/FindLibXslt.cmake | 45 +++++++++++++++++++++++++++++++++++++++++++++ modules/FindQt4.cmake | 43 ++++++++++++++++++++++++++++++++++--------- 3 files changed, 124 insertions(+), 9 deletions(-) create mode 100644 modules/FindLibXml2.cmake create mode 100644 modules/FindLibXslt.cmake (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake new file mode 100644 index 00000000..37486afc --- /dev/null +++ b/modules/FindLibXml2.cmake @@ -0,0 +1,45 @@ +# - Try to find LibXml2 +# Once done this will define +# +# LIBXML2_FOUND - system has LibXml2 +# LIBXML2_INCLUDE_DIR - the LibXml2 include directory +# LIBXML2_LIBRARY - Link these to use OpenGL and GLU +# LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 +# +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls + + +INCLUDE(UsePkgConfig) + +PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) + +SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) + +FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h + ${_LibXml2IncDir}/libxml2 + /usr/include/libxml2 + /usr/local/include/libxml2 +) + +FIND_LIBRARY(LIBXML2_LIBRARY NAMES xml2 + PATHS + ${_LibXml2LinkDir} + /usr/lib + /usr/local/lib +) + +IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY) + SET(LIBXML2_FOUND TRUE) +ENDIF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY) + +IF(LIBXML2_FOUND) + IF(NOT LIBXML2_QUIETLY) + MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARY}") + ENDIF(NOT LIBXML2_QUIETLY) +ELSE(LIBXML2_FOUND) + IF(NOT LIBXML2_REQUIRED) + MESSAGE(SEND_ERROR "Could not find LibXml2") + ENDIF(NOT LIBXML2_REQUIRED) +ENDIF(LIBXML2_FOUND) + diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake new file mode 100644 index 00000000..ed23fd64 --- /dev/null +++ b/modules/FindLibXslt.cmake @@ -0,0 +1,45 @@ +# - Try to find LibXslt +# Once done this will define +# +# LIBXSLT_FOUND - system has LibXslt +# LIBXSLT_INCLUDE_DIR - the LibXslt include directory +# LIBXSLT_LIBRARY - Link these to use OpenGL and GLU +# LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt +# + + +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +INCLUDE(UsePkgConfig) + +PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) + +SET(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) + +FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h + ${_LibXsltIncDir} + /usr/include + /usr/local/include +) + +FIND_LIBRARY(LIBXSLT_LIBRARY NAMES xslt + PATHS + ${_LibXsltLinkDir} + /usr/lib + /usr/local/lib +) + +IF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARY) + SET(LIBXSLT_FOUND TRUE) +ENDIF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARY) + +IF(LIBXSLT_FOUND) + IF(NOT LIBXSLT_QUIETLY) + MESSAGE(STATUS "Found LibXslt: ${LIBXSLT_LIBRARY}") + ENDIF(NOT LIBXSLT_QUIETLY) +ELSE(LIBXSLT_FOUND) + IF(NOT LIBXSLT_REQUIRED) + MESSAGE(SEND_ERROR "Could not find LibXslt") + ENDIF(NOT LIBXSLT_REQUIRED) +ENDIF(LIBXSLT_FOUND) + diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 47ac15d8..d2cea8a4 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -637,28 +637,53 @@ IF(QT4_QMAKE_FOUND) # ###################################### + MACRO(QT4_GET_ABS_PATH _abs_filename _filename) + IF(${_filename} MATCHES "^/.+") + SET(${_abs_filename} ${_filename}) + ELSE(${_filename} MATCHES "^/.+") + SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) + ENDIF(${_filename} MATCHES "^/.+") + ENDMACRO(QT4_GET_ABS_PATH) + + + MACRO(QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) + SET(${_moc_INC_DIRS}) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + + FOREACH(_current ${_inc_DIRS}) + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) + + MACRO(QT4_GENERATE_MOC infile outfile ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + QT4_GET_ABS_PATH(infile ${infile}) + + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + ENDMACRO(QT4_GENERATE_MOC) + # QT4_WRAP_CPP(outfiles inputfile ... ) # TODO perhaps add support for -D, -U and other minor options MACRO(QT4_WRAP_CPP outfiles ) - # get include dirs - GET_DIRECTORY_PROPERTY(moc_includes_tmp INCLUDE_DIRECTORIES) - SET(moc_includes) - FOREACH(it ${moc_includes_tmp}) - SET(moc_includes ${moc_includes} "-I${it}") - ENDFOREACH(it) + QT4_GET_MOC_INC_DIRS(moc_includes) FOREACH(it ${ARGN}) + QT4_GET_ABS_PATH(it ${it}) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) + ARGS ${moc_includes} -o ${outfile} ${it} + MAIN_DEPENDENCY ${it}) SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH(it) -- cgit v1.2.1 From 71e286cff4be54ac5a71898141234bd210882be5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 16:33:31 +0000 Subject: -files for detecting bzip2 and cups -better support for libtool convenience libs Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501320 --- modules/FindBZip2.cmake | 38 ++++++++++++++++++++++++++++++++++++++ modules/FindCups.cmake | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 modules/FindBZip2.cmake create mode 100644 modules/FindCups.cmake (limited to 'modules') diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake new file mode 100644 index 00000000..b6a99d62 --- /dev/null +++ b/modules/FindBZip2.cmake @@ -0,0 +1,38 @@ +# - Try to find BZip2 +# Once done this will define +# +# BZIP2_FOUND - system has BZip2 +# BZIP2_INCLUDE_DIR - the BZip2 include directory +# BZIP2_LIBRARY - Link these to use OpenGL and GLU +# BZIP2_DEFINITIONS - Compiler switches required for using BZip2 +# BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ +# + + +FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(BZIP2_LIBRARY NAMES bz2 + PATHS + /usr/lib + /usr/local/lib +) + +IF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARY) + SET(BZIP2_FOUND TRUE) + INCLUDE(CheckLibraryExists) + check_library_exists(${BZIP2_LIBRARY} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) +ENDIF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARY) + +IF(BZIP2_FOUND) + IF(NOT BZIP2_QUIETLY) + MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARY}") + ENDIF(NOT BZIP2_QUIETLY) +ELSE(BZIP2_FOUND) + IF(NOT BZIP2_REQUIRED) + MESSAGE(SEND_ERROR "Could not find BZip2") + ENDIF(NOT BZIP2_REQUIRED) +ENDIF(BZIP2_FOUND) + diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake new file mode 100644 index 00000000..1e669d45 --- /dev/null +++ b/modules/FindCups.cmake @@ -0,0 +1,35 @@ +# - Try to find Cups +# Once done this will define +# +# CUPS_FOUND - system has Cups +# CUPS_INCLUDE_DIR - the Cups include directory +# CUPS_LIBRARY - Link these to use OpenGL and GLU +# CUPS_DEFINITIONS - Compiler switches required for using Cups +# + + +FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(CUPS_LIBRARY NAMES cups + PATHS + /usr/lib + /usr/local/lib +) + +IF(CUPS_INCLUDE_DIR AND CUPS_LIBRARY) + SET(CUPS_FOUND TRUE) +ENDIF(CUPS_INCLUDE_DIR AND CUPS_LIBRARY) + +IF(CUPS_FOUND) + IF(NOT CUPS_QUIETLY) + MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARY}") + ENDIF(NOT CUPS_QUIETLY) +ELSE(CUPS_FOUND) + IF(NOT CUPS_REQUIRED) + MESSAGE(SEND_ERROR "Could not find Cups") + ENDIF(NOT CUPS_REQUIRED) +ENDIF(CUPS_FOUND) + -- cgit v1.2.1 From 5b1774853f2618ad398bffd71d3111e101a819d0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 18:15:11 +0000 Subject: - add the X11 incklude dirs -fix for CheckTypeSize.cmake -add thread library (required in cmake) Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501365 --- modules/CheckTypeSize.cmake | 52 +++++++++++++++++++++++++++++++++++++++++++++ modules/FindQt4.cmake | 2 ++ 2 files changed, 54 insertions(+) create mode 100644 modules/CheckTypeSize.cmake (limited to 'modules') diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake new file mode 100644 index 00000000..c4163cc1 --- /dev/null +++ b/modules/CheckTypeSize.cmake @@ -0,0 +1,52 @@ +# - Check sizeof a type +# CHECK_TYPE_SIZE(TYPE VARIABLE) +# Check if the type exists and determine size of type. if the type +# exists, the size will be stored to the variable. +# +# VARIABLE - variable to store size if the type exists. +# HAVE_${VARIABLE} - does the variable exists or not + +MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) + IF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS + "${CMAKE_REQUIRED_FLAGS}") + FOREACH(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) + IF("${def}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS + "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") + ENDIF("${def}") + ENDFOREACH(def) + SET(CHECK_TYPE_SIZE_PREINCLUDE) + SET(CHECK_TYPE_SIZE_PREMAIN) + FOREACH(def ${CMAKE_EXTRA_INCLUDE_FILES}) + SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") + ENDFOREACH(def) + CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" + "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) + FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" + CHECK_TYPE_SIZE_FILE_CONTENT) + MESSAGE(STATUS "Check size of ${TYPE}") + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_TYPE_SIZE_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ENDIF(CMAKE_REQUIRED_LIBRARIES) + TRY_RUN(${VARIABLE} HAVE_${VARIABLE} + ${CMAKE_BINARY_DIR} + "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} + "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" + OUTPUT_VARIABLE OUTPUT) + IF(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - done") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log + "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") + ELSE(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - failed") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") + ENDIF(HAVE_${VARIABLE}) + ENDIF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) +ENDMACRO(CHECK_TYPE_SIZE) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d2cea8a4..9b7bb1dd 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -755,6 +755,8 @@ IF(QT4_QMAKE_FOUND) # for unix add X11 stuff IF(UNIX) FIND_PACKAGE(X11) + FIND_PACKAGE(Threads) + SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) ENDIF(UNIX) -- cgit v1.2.1 From c6a5360e376a7d9b1750f5eccb46f85bfe5e041d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 18:52:15 +0000 Subject: moved kde3 stuff to modules/ Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501376 --- modules/CMakeLists.txt | 3 + modules/FindKDE3.cmake | 159 ++++++++++++++++++ modules/KDE3Macros.cmake | 364 ++++++++++++++++++++++++++++++++++++++++++ modules/kde3init_dummy.cpp.in | 3 + modules/kde3uic.cmake | 17 ++ 5 files changed, 546 insertions(+) create mode 100644 modules/CMakeLists.txt create mode 100644 modules/FindKDE3.cmake create mode 100644 modules/KDE3Macros.cmake create mode 100644 modules/kde3init_dummy.cpp.in create mode 100644 modules/kde3uic.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt new file mode 100644 index 00000000..a7fa49a9 --- /dev/null +++ b/modules/CMakeLists.txt @@ -0,0 +1,3 @@ +SET(CMAKE_INSTALL_PREFIX ${CMAKE_ROOT} ) +INSTALL_FILES(/Modules FILES FindKDE3.cmake KDE3Macros.cmake kde3init_dummy.cpp.in kde3uic.cmake ) + diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake new file mode 100644 index 00000000..f5be090d --- /dev/null +++ b/modules/FindKDE3.cmake @@ -0,0 +1,159 @@ +# - Find the KDE3 include and library dirs, KDE preprocessors and define a some macros +# +# KDE3_DEFINITIONS +# KDE3_INCLUDE_DIR +# KDE3_INCLUDE_DIRS +# KDE3_LIB_DIR +# KDE3_SERVICETYPES_DIR +# KDE3_DCOPIDL_EXECUTABLE +# KDE3_DCOPIDL2CPP_EXECUTABLE +# KDE3_KCFGC_EXECUTABLE +# KDE3_FOUND +# it also adds the following macros (from KDE3Macros.cmake) +# ADD_FILE_DEPENDANCY +# KDE3_ADD_DCOP_SKELS +# KDE3_ADD_DCOP_STUBS +# KDE3_ADD_MOC_FILES +# KDE3_ADD_UI_FILES +# KDE3_ADD_KCFG_FILES +# KDE3_AUTOMOC +# KDE3_PLACEHOLDER +# KDE3_CREATE_LIBTOOL_FILE +# KDE3_CREATE_FINAL_FILE +# KDE3_ADD_KPART +# KDE3_ADD_KLM +# KDE3_ADD_EXECUTABLE + + +CMAKE_MINIMUM_REQUIRED(VERSION 2.2) + +SET(QT_MT_REQUIRED TRUE) +#SET(QT_MIN_VERSION "3.0.0") + +#this line includes FindQt.cmake, which searches the Qt library and headers +INCLUDE(FindQt3) + +#add the definitions found by FindQt to the current definitions +#ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) + +SET(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) + +#add some KDE specific stuff +SET(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common) + +#only on linux, but not e.g. on FreeBSD: +IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + SET(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) +ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + + +#SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") +#SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") +#SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + +#now try to find some kde stuff + +#at first the KDE include direcory +FIND_PATH(KDE3_INCLUDE_DIR kurl.h + $ENV{KDEDIR}/include + /opt/kde/include + /opt/kde3/include + /usr/local/include + /usr/include/ + /usr/include/kde + /usr/local/include/kde +) + +#now the KDE library directory +FIND_PATH(KDE3_LIB_DIR libkdecore.so + $ENV{KDEDIR}/lib + /opt/kde/lib + /opt/kde3/lib + /usr/lib + /usr/local/lib +) + +#now the KDE service types directory +FIND_PATH(KDE3_SERVICETYPES_DIR ktexteditor.desktop + $ENV{KDEDIR}/share/servicetypes/ + /opt/kde/share/servicetypes/ + /opt/kde3/share/servicetypes/ +) + +#now search for the dcop utilities +FIND_PROGRAM(KDE3_DCOPIDL_EXECUTABLE NAME dcopidl PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde3/bin + ) + +FIND_PROGRAM(KDE3_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde3/bin) + +FIND_PROGRAM(KDE3_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde3/bin) + +# KDE3Macros.cmake contains all the KDE specific macros +INCLUDE(KDE3Macros) + +#set KDE3_FOUND +IF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) + SET(KDE3_FOUND TRUE) +ELSE (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) + SET(KDE3_FOUND FALSE) +ENDIF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) + + +MACRO (KDE3_PRINT_RESULTS) + IF(KDE3_INCLUDE_DIR) + MESSAGE(STATUS "Found KDE3 include dir: ${KDE3_INCLUDE_DIR}") + ELSE(KDE3_INCLUDE_DIR) + MESSAGE(STATUS "Didn't find KDE3 headers") + ENDIF(KDE3_INCLUDE_DIR) + + IF(KDE3_LIB_DIR) + MESSAGE(STATUS "Found KDE3 library dir: ${KDE3_LIB_DIR}") + ELSE(KDE3_LIB_DIR) + MESSAGE(STATUS "Didn't find KDE3 core library") + ENDIF(KDE3_LIB_DIR) + + IF(KDE3_DCOPIDL_EXECUTABLE) + MESSAGE(STATUS "Found KDE3 dcopidl preprocessor: ${KDE3_DCOPIDL_EXECUTABLE}") + ELSE(KDE3_DCOPIDL_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE3 dcopidl preprocessor") + ENDIF(KDE3_DCOPIDL_EXECUTABLE) + + IF(KDE3_DCOPIDL2CPP_EXECUTABLE) + MESSAGE(STATUS "Found KDE3 dcopidl2cpp preprocessor: ${KDE3_DCOPIDL2CPP_EXECUTABLE}") + ELSE(KDE3_DCOPIDL2CPP_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE3 dcopidl2cpp preprocessor") + ENDIF(KDE3_DCOPIDL2CPP_EXECUTABLE) + + IF(KDE3_KCFGC_EXECUTABLE) + MESSAGE(STATUS "Found KDE3 kconfig_compiler preprocessor: ${KDE3_KCFGC_EXECUTABLE}") + ELSE(KDE3_KCFGC_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE3 kconfig_compiler preprocessor") + ENDIF(KDE3_KCFGC_EXECUTABLE) + +ENDMACRO (KDE3_PRINT_RESULTS) + +IF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) + #bail out if something wasn't found + KDE3_PRINT_RESULTS() + MESSAGE(FATAL_ERROR "Could not find everything required for compiling KDE 3 programs") + +ENDIF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) + +IF (NOT KDE3_FIND_QUIETLY) + KDE3_PRINT_RESULTS() +ENDIF (NOT KDE3_FIND_QUIETLY) + +#add the found Qt and KDE include directories to the current include path +SET(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) +#INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR} .) +#LINK_DIRECTORIES(${KDE3_LIB_DIR}) + diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake new file mode 100644 index 00000000..78b94fce --- /dev/null +++ b/modules/KDE3Macros.cmake @@ -0,0 +1,364 @@ +# this file contains the following macros: +# ADD_FILE_DEPENDANCY +# KDE3_ADD_DCOP_SKELS +# KDE3_ADD_DCOP_STUBS +# KDE3_ADD_MOC_FILES +# KDE3_ADD_UI_FILES +# KDE3_ADD_KCFG_FILES +# KDE3_AUTOMOC +# KDE3_CREATE_LIBTOOL_FILE +# KDE3_PLACEHOLDER +# KDE3_CREATE_FINAL_FILE +# KDE3_ADD_KPART +# KDE3_ADD_KLM +# KDE3_ADD_EXECUTABLE + + +#neundorf@kde.org + +#this should better be part of cmake: +#add an additional file to the list of files a source file depends on +MACRO(ADD_FILE_DEPENDANCY file) + + GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) + IF (_deps) + SET(_deps ${_deps} ${ARGN}) + ELSE (_deps) + SET(_deps ${ARGN}) + ENDIF (_deps) + + SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") + +ENDMACRO(ADD_FILE_DEPENDANCY) + + +#create the kidl and skeletion file for dcop stuff +#usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) +MACRO(KDE3_ADD_DCOP_SKELS _sources) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) + + SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel_skel.cpp) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.kidl) + + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE3_DCOPIDL_EXECUTABLE} + ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_skel} + COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} + DEPENDS ${_kidl} + ) + + SET(${_sources} ${${_sources}} ${_skel}) + + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE3_ADD_DCOP_SKELS) + +MACRO(KDE3_ADD_DCOP_STUBS _sources) + FOREACH (_current_FILE ${ARGN}) + + IF(${_current_FILE} MATCHES "^/.+") #abs path + SET(_tmp_FILE ${_current_FILE}) + ELSE(${_current_FILE} MATCHES "^/.+") + SET(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) + ENDIF(${_current_FILE} MATCHES "^/.+") + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + + SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) +# SET(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.kidl) + + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE3_DCOPIDL_EXECUTABLE} + ARGS ${tmp_FILE} > ${_kidl} + DEPENDS ${tmp_FILE} + ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} + COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} + DEPENDS ${_kidl} + ) + + SET(${_sources} ${${_sources}} ${_stub_CPP}) + + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE3_ADD_DCOP_STUBS) + +MACRO(KDE3_ADD_KCFG_FILES _sources) + FOREACH (_current_FILE ${ARGN}) + + IF(${_current_FILE} MATCHES "^/.+") #abs path + SET(_tmp_FILE ${_current_FILE}) + ELSE(${_current_FILE} MATCHES "^/.+") + SET(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) + ENDIF(${_current_FILE} MATCHES "^/.+") + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + + FILE(READ ${_tmp_FILE} _contents) + STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+)\n.*$" "\\2" _kcfg_FILE "${_contents}") + + SET(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + + ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} + COMMAND ${KDE3_KCFGC_EXECUTABLE} + ARGS ${_kcfg_FILE} ${_tmp_FILE} + DEPENDS ${_tmp_FILE} ) + + SET(${_sources} ${${_sources}} ${_src_FILE}) + + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE3_ADD_KCFG_FILES) + + +#create the moc files and add them to the list of sources +#usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) +MACRO(KDE3_ADD_MOC_FILES _sources) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) + GET_FILENAME_COMPONENT(_path ${_current_FILE} PATH) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -o ${_moc} + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + ) + + SET(${_sources} ${${_sources}} ${_moc}) + + ENDFOREACH (_current_FILE) +ENDMACRO(KDE3_ADD_MOC_FILES) + + +#create the implementation files from the ui files and add them to the list of sources +#usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) +MACRO(KDE3_ADD_UI_FILES _sources ) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + + ADD_CUSTOM_COMMAND(OUTPUT ${_header} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS -nounload -o ${_header} ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + ) + +# ADD_CUSTOM_COMMAND(OUTPUT ${_src} +# COMMAND uic +# ARGS -nounload -tr tr2i18n -o ${_src} -impl ${_header} ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} +# DEPENDS ${_header} +# ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_src} + COMMAND ${CMAKE_COMMAND} + ARGS + -DKDE_UIC_FILE:STRING=${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + -DKDE_UIC_CPP_FILE:STRING=${_src} + -DKDE_UIC_H_FILE:STRING=${_header} + -P ${CMAKE_ROOT}/Modules/kde3uic.cmake + DEPENDS ${_header} + ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + SET(${_sources} ${${_sources}} ${_src} ${_moc} ) + + ENDFOREACH (_current_FILE) +ENDMACRO(KDE3_ADD_UI_FILES) + +MACRO(KDE3_AUTOMOC) + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + IF (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) + + FILE(READ ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} _contents) + + IF(${_current_FILE} MATCHES "^/.+") + SET(_tmp_FILE ${_current_FILE}) + ELSE(${_current_FILE} MATCHES "^/.+") + SET(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) + ENDIF(${_current_FILE} MATCHES "^/.+") + GET_FILENAME_COMPONENT(_abs_FILE ${_tmp_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) +# SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + ADD_FILE_DEPENDANCY(${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} ${_moc}) + + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + + ENDIF (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) + ENDFOREACH (_current_FILE) +ENDMACRO(KDE3_AUTOMOC) + +MACRO(KDE3_INSTALL_ICONS _theme) + ADD_CUSTOM_TARGET(install_icons ) + SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) + FILE(WRITE install_icons.cmake "# icon installations rules\n") + FILE(APPEND install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") + + FILE(GLOB _icons *.png) + FOREACH(_current_ICON ${_icons} ) + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") + + SET(_icon_GROUP "actions") + + IF(${_group} STREQUAL "mime") + SET(_icon_GROUP "mimetypes") + ENDIF(${_group} STREQUAL "mime") + + IF(${_group} STREQUAL "filesys") + SET(_icon_GROUP "filesystems") + ENDIF(${_group} STREQUAL "filesys") + + IF(${_group} STREQUAL "device") + SET(_icon_GROUP "devices") + ENDIF(${_group} STREQUAL "device") + + IF(${_group} STREQUAL "app") + SET(_icon_GROUP "apps") + ENDIF(${_group} STREQUAL "app") + + IF(${_group} STREQUAL "action") + SET(_icon_GROUP "actions") + ENDIF(${_group} STREQUAL "action") + +# MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) + SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + FILE(APPEND install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + + ENDFOREACH (_current_ICON) +ENDMACRO(KDE3_INSTALL_ICONS _theme) + +MACRO(KDE3_PLACEHOLDER) +ENDMACRO(KDE3_PLACEHOLDER) + +MACRO(KDE3_CREATE_LIBTOOL_FILE _target) + GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) + + GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) + GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) + SET(_laname ${_laname}.la) + + FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") + FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") + FILE(APPEND ${_laname} "dlname='${_soname}'\n") + FILE(APPEND ${_laname} "# Names of this library\n") + FILE(APPEND ${_laname} "library_names='${_soname} ${_soname} ${_soname}'\n") + FILE(APPEND ${_laname} "# The name of the static archive\n") + FILE(APPEND ${_laname} "old_library=''\n") + FILE(APPEND ${_laname} "# Libraries that this one depends upon.\n") + FILE(APPEND ${_laname} "dependency_libs=''\n") +# FILE(APPEND ${_laname} "dependency_libs='${${_target}_LIB_DEPENDS}'\n") + FILE(APPEND ${_laname} "# Version information.\ncurrent=0\nage=0\nrevision=0\n") + FILE(APPEND ${_laname} "# Is this an already installed library?\ninstalled=yes\n") + 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}/lib/kde3'\n") + + INSTALL_FILES(/lib/kde3 FILES ${_laname}) +ENDMACRO(KDE3_CREATE_LIBTOOL_FILE) + + +MACRO(KDE3_CREATE_FINAL_FILE _filename) + FILE(WRITE ${_filename} "//autogenerated file\n") + FOREACH (_current_FILE ${ARGN}) + FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n") + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE3_CREATE_FINAL_FILE _filename) + + +OPTION(KDE3_ENABLE_FINAL "Enable final all-in-one compilation") +OPTION(KDE3_BUILD_TESTS "Build the tests") + +MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) +#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty + IF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + SET(_first_SRC) + ELSE (${_with_PREFIX} STREQUAL "WITH_PREFIX") + SET(_first_SRC ${_with_PREFIX}) + ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + + IF (KDE3_ENABLE_FINAL) + KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) + ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final.cpp) + ELSE (KDE3_ENABLE_FINAL) + ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) + ENDIF (KDE3_ENABLE_FINAL) + + IF(_first_SRC) + SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") + ENDIF(_first_SRC) + + KDE3_CREATE_LIBTOOL_FILE(${_target_NAME}) + +ENDMACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) + +MACRO(KDE3_ADD_KLM _target_NAME ) + + IF (KDE3_ENABLE_FINAL) + KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) + ELSE (KDE3_ENABLE_FINAL) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) + MESSAGE(STATUS "klm: kdeinit_${_target_NAME}") + ENDIF (KDE3_ENABLE_FINAL) + + CONFIGURE_FILE(${CMAKE_ROOT}/Modules/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + + ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) + TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) + +ENDMACRO(KDE3_ADD_KLM _target_NAME) + + +MACRO(KDE3_ADD_EXECUTABLE _target_NAME ) + + IF (KDE3_ENABLE_FINAL) + KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) + ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp) + ELSE (KDE3_ENABLE_FINAL) + ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) + ENDIF (KDE3_ENABLE_FINAL) + +ENDMACRO(KDE3_ADD_EXECUTABLE _target_NAME) + + diff --git a/modules/kde3init_dummy.cpp.in b/modules/kde3init_dummy.cpp.in new file mode 100644 index 00000000..f0cd3488 --- /dev/null +++ b/modules/kde3init_dummy.cpp.in @@ -0,0 +1,3 @@ +extern "C" int kdemain(int argc, char* argv[]); +extern "C" int kdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); } +int main(int argc, char* argv[]) { return kdemain(argc,argv); } diff --git a/modules/kde3uic.cmake b/modules/kde3uic.cmake new file mode 100644 index 00000000..64751b2e --- /dev/null +++ b/modules/kde3uic.cmake @@ -0,0 +1,17 @@ + +EXEC_PROGRAM(uic ARGS + -nounload -tr tr2i18n + -impl ${KDE_UIC_H_FILE} + ${KDE_UIC_FILE} + OUTPUT_VARIABLE _uic_CONTENTS +) + +STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) +STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) + +# $(PERL) -pe "s,image([0-9][0-9]*)_data,img\$$1_editbookmarkdlg,g" >> editbookmarkdlg.cpp ;\ +# rm -f editbookmarkdlg.cpp.temp ;\ + +FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n") +FILE(APPEND ${KDE_UIC_CPP_FILE} "${_uic_CONTENTS}") + -- cgit v1.2.1 From 633d9d3a85a68f175a4d1c263e0275563d57b079 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 18:54:11 +0000 Subject: -kde4 stuff moved to modules/ dir Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501378 --- modules/FindKDE4.cmake | 225 ++++++++++++++++++++++ modules/KDE4Macros.cmake | 435 ++++++++++++++++++++++++++++++++++++++++++ modules/kde4init_dummy.cpp.in | 3 + modules/kde4uic.cmake | 47 +++++ modules/potential_problems | 3 + 5 files changed, 713 insertions(+) create mode 100644 modules/FindKDE4.cmake create mode 100644 modules/KDE4Macros.cmake create mode 100644 modules/kde4init_dummy.cpp.in create mode 100644 modules/kde4uic.cmake create mode 100644 modules/potential_problems (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake new file mode 100644 index 00000000..8e4c4d4d --- /dev/null +++ b/modules/FindKDE4.cmake @@ -0,0 +1,225 @@ +# - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros +# +# KDE4_DEFINITIONS +# KDE4_INCLUDE_DIR +# KDE4_INCLUDE_DIRS +# KDE4_LIB_DIR +# KDE4_SERVICETYPES_DIR +# KDE4_DCOPIDL_EXECUTABLE +# KDE4_DCOPIDL2CPP_EXECUTABLE +# KDE4_KCFGC_EXECUTABLE +# KDE4_FOUND +# it also adds the following macros (from KDE4Macros.cmake) +# ADD_FILE_DEPENDANCY +# KDE4_ADD_DCOP_SKELS +# KDE4_ADD_DCOP_STUBS +# KDE4_ADD_MOC_FILES +# KDE4_ADD_UI_FILES +# KDE4_ADD_KCFG_FILES +# KDE4_AUTOMOC +# KDE4_PLACEHOLDER +# KDE4_CREATE_LIBTOOL_FILE +# KDE4_CREATE_FINAL_FILE +# KDE4_ADD_KPART +# KDE4_ADD_KLM +# KDE4_ADD_EXECUTABLE + + +CMAKE_MINIMUM_REQUIRED(VERSION 2.2) + +IF(UNIX) + IF(APPLE) + MESSAGE(SEND_ERROR "Mac OSX not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") + ELSE(APPLE) + FIND_PACKAGE(X11 REQUIRED) + ENDIF(APPLE) +ELSE(UNIX) + MESSAGE(SEND_ERROR "Win32 not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") +ENDIF(UNIX) + +#this line includes FindQt.cmake, which searches the Qt library and headers +INCLUDE(FindQt4) + +#add the definitions found by FindQt to the current definitions +#ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) + +SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) + +#add some KDE specific stuff +# not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT +SET(KDE4_DEFINITIONS -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ) + +SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") +SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") + +#only on linux, but not e.g. on FreeBSD: +IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) +ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + +IF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") + SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_GNU_SOURCE) +ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") + + +#SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") +SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") +SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + +SET(KDE4_DIR /opt/kde4) + +SET(KDE4_APPS_DIR /share/applnk) +SET(KDE4_CONFIG_DIR /share/config) +SET(KDE4_DATA_DIR /share/apps) +SET(KDE4_HTML_DIR /share/doc/HTML) +SET(KDE4_ICON_DIR /share/icons) +SET(KDE4_KCFG_DIR /share/config.kcfg) +SET(KDE4_LIBS_HTML_DIR /share/doc/HTML) +SET(KDE4_LOCALE_DIR /share/locale) +SET(KDE4_MIME_DIR /share/mimelnk) +SET(KDE4_SERVICES_DIR /share/services) +SET(KDE4_SERVICETYPES_DIR /share/services) +SET(KDE4_SOUND_DIR /share/sounds) +SET(KDE4_TEMPLATES_DIR /share/templates) +SET(KDE4_WALLPAPER_DIR /share/wallpapers) + +SET(XDG_APPS_DIR /share/applications/kde) +SET(XDG_DIRECTORY_DIR /share/desktop-directories) + + +#now try to find some kde stuff + +#are we trying to compile kdelibs ? +#then enter bootstrap mode +IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + MESSAGE(STATUS "Building kdelibs...") + + SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + + SET(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) + SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) + SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) + SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/kconfig_compiler ) + +ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + #at first the KDE include direcory + FIND_PATH(KDE4_INCLUDE_DIR kurl.h + $ENV{KDEDIR}/include + /opt/kde/include + /opt/kde4/include + /usr/local/include + /usr/include/ + /usr/include/kde + /usr/local/include/kde + ) + + #now the KDE library directory + FIND_PATH(KDE4_LIB_DIR libkdecore.so + $ENV{KDEDIR}/lib + /opt/kde/lib + /opt/kde4/lib + /usr/lib + /usr/local/lib + ) + +#now the KDE service types directory +#FIND_PATH(KDE4_SERVICETYPES_DIR ktexteditor.desktop +# $ENV{KDEDIR}/share/servicetypes/ +# /opt/kde/share/servicetypes/ +# /opt/kde4/share/servicetypes/ +#) + + + #now search for the dcop utilities + FIND_PROGRAM(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + + FIND_PATH(KDE4_KALYPTUS_DIR kalyptus + $ENV{KDEDIR}/share/apps/dcopidl + /opt/kde/share/apps/dcopidl + /opt/kde4/share/apps/dcopidl + ) + + FIND_PROGRAM(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + + FIND_PROGRAM(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + +ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + +# KDE4Macros.cmake contains all the KDE specific macros +INCLUDE(KDE4Macros) + +#set KDE4_FOUND +IF (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + SET(KDE4_FOUND TRUE) +ELSE (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + SET(KDE4_FOUND FALSE) +ENDIF (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + + +MACRO (KDE4_PRINT_RESULTS) + IF(KDE4_INCLUDE_DIR) + MESSAGE(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") + ELSE(KDE4_INCLUDE_DIR) + MESSAGE(STATUS "Didn't find KDE4 headers") + ENDIF(KDE4_INCLUDE_DIR) + + IF(KDE4_LIB_DIR) + MESSAGE(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") + ELSE(KDE4_LIB_DIR) + MESSAGE(STATUS "Didn't find KDE4 core library") + ENDIF(KDE4_LIB_DIR) + + IF(KDE4_DCOPIDL_EXECUTABLE) + MESSAGE(STATUS "Found KDE4 dcopidl preprocessor: ${KDE4_DCOPIDL_EXECUTABLE}") + ELSE(KDE4_DCOPIDL_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE4 dcopidl preprocessor") + ENDIF(KDE4_DCOPIDL_EXECUTABLE) + + IF(KDE4_DCOPIDL2CPP_EXECUTABLE) + MESSAGE(STATUS "Found KDE4 dcopidl2cpp preprocessor: ${KDE4_DCOPIDL2CPP_EXECUTABLE}") + ELSE(KDE4_DCOPIDL2CPP_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE4 dcopidl2cpp preprocessor") + ENDIF(KDE4_DCOPIDL2CPP_EXECUTABLE) + + IF(KDE4_KCFGC_EXECUTABLE) + MESSAGE(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") + ELSE(KDE4_KCFGC_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") + ENDIF(KDE4_KCFGC_EXECUTABLE) + +ENDMACRO (KDE4_PRINT_RESULTS) + +IF (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) + #bail out if something wasn't found + KDE4_PRINT_RESULTS() + MESSAGE(FATAL_ERROR "Could not find everything required for compiling KDE 4 programs") + +ENDIF (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) + +IF (NOT KDE4_FIND_QUIETLY) + KDE4_PRINT_RESULTS() +ENDIF (NOT KDE4_FIND_QUIETLY) + +#add the found Qt and KDE include directories to the current include path +SET(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${X11_INCLUDE_DIR} ) +#INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR} ${KDE4_INCLUDE_DIR} .) +#LINK_DIRECTORIES(${KDE4_LIB_DIR}) + diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake new file mode 100644 index 00000000..8cbeb6f8 --- /dev/null +++ b/modules/KDE4Macros.cmake @@ -0,0 +1,435 @@ +# this file contains the following macros: +# KDE4_ADD_FILE_DEPENDANCY +# KDE4_ADD_DCOP_SKELS +# KDE4_ADD_DCOP_STUBS +# KDE4_ADD_MOC_FILES +# KDE4_ADD_UI_FILES +# KDE4_ADD_KCFG_FILES +# KDE4_AUTOMOC +# KDE4_CREATE_LIBTOOL_FILE +# KDE4_PLACEHOLDER +# KDE4_CREATE_FINAL_FILE +# KDE4_ADD_KPART +# KDE4_ADD_KLM +# KDE4_ADD_EXECUTABLE + + +#neundorf@kde.org + +#this should better be part of cmake: +#add an additional file to the list of files a source file depends on +MACRO(KDE4_ADD_FILE_DEPENDANCY file) + + GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) + IF (_deps) + SET(_deps ${_deps} ${ARGN}) + ELSE (_deps) + SET(_deps ${ARGN}) + ENDIF (_deps) + + SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") + +ENDMACRO(KDE4_ADD_FILE_DEPENDANCY) + + +#create the kidl and skeletion file for dcop stuff +#usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) +MACRO(KDE4_ADD_DCOP_SKELS _sources) + FOREACH (_current_FILE ${ARGN}) + + QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + + SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE4_DCOPIDL_EXECUTABLE} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} + DEPENDS ${_tmp_FILE} + ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_skel} + COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} + DEPENDS ${_kidl} + ) + + SET(${_sources} ${${_sources}} ${_skel}) + + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE4_ADD_DCOP_SKELS) + +MACRO(KDE4_ADD_DCOP_STUBS _sources) + FOREACH (_current_FILE ${ARGN}) + + QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + + SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) +# SET(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE4_DCOPIDL_EXECUTABLE} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} + DEPENDS ${_tmp_FILE} + ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} + COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} + DEPENDS ${_kidl} + ) + + SET(${_sources} ${${_sources}} ${_stub_CPP}) + + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE4_ADD_DCOP_STUBS) + +MACRO(KDE4_ADD_KCFG_FILES _sources) + FOREACH (_current_FILE ${ARGN}) + + QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + + FILE(READ ${_tmp_FILE} _contents) + STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+)\n.*$" "\\2" _kcfg_FILE "${_contents}") + + SET(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + + ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} + COMMAND ${KDE4_KCFGC_EXECUTABLE} + ARGS ${_kcfg_FILE} ${_tmp_FILE} + DEPENDS ${_tmp_FILE} ) + + SET(${_sources} ${${_sources}} ${_src_FILE}) + + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE4_ADD_KCFG_FILES) + + +#create the moc files and add them to the list of sources +#usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) +#MACRO(KDE4_ADD_MOC_FILES _sources) +# FOREACH (_current_FILE ${ARGN}) +# GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) +# GET_FILENAME_COMPONENT(_path ${_current_FILE} PATH) +# SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + +# ADD_CUSTOM_COMMAND(OUTPUT ${_moc} +# COMMAND ${QT_MOC_EXECUTABLE} +# ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -o ${_moc} +# DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} +# ) +# SET(${_sources} ${${_sources}} ${_moc}) +# ENDFOREACH (_current_FILE) +#ENDMACRO(KDE4_ADD_MOC_FILES) + + +#create the implementation files from the ui files and add them to the list of sources +#usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) +MACRO(KDE4_ADD_UI_FILES _sources ) + FOREACH (_current_FILE ${ARGN}) + + QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + + # we need to run uic and replace some things in the generated file + # this is done by executing the cmake script kde4uic.cmake + ADD_CUSTOM_COMMAND(OUTPUT ${_header} + COMMAND ${CMAKE_COMMAND} + ARGS + -DKDE4_HEADER:BOOL=ON + -DKDE_UIC_EXECUTABLE:FILEPATH=${QT_UIC_EXECUTABLE} + -DKDE_UIC_FILE:FILEPATH=${_tmp_FILE} + -DKDE_UIC_H_FILE:FILEPATH=${_header} + -DKDE_UIC_BASENAME:STRING=${_basename} + -P ${CMAKE_ROOT}/Modules/kde4uic.cmake + DEPENDS ${_tmp_FILE} + ) + ENDFOREACH (_current_FILE) +ENDMACRO(KDE4_ADD_UI_FILES) + +#create the implementation files from the ui files and add them to the list of sources +#usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) +MACRO(KDE4_ADD_UI3_FILES _sources ) + + QT4_GET_MOC_INC_DIRS(_moc_INCS) + + FOREACH (_current_FILE ${ARGN}) + + QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + +# ADD_CUSTOM_COMMAND(OUTPUT ${_header} +# COMMAND ${QT_UIC3_EXECUTABLE} +# ARGS -nounload -o ${_header} ${_tmp_FILE} +# DEPENDS ${_tmp_FILE} +# ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_header} + COMMAND ${CMAKE_COMMAND} + -DKDE3_HEADER:BOOL=ON + -DKDE_UIC_EXECUTABLE:FILEPATH=${QT_UIC3_EXECUTABLE} + -DKDE_UIC_FILE:FILEPATH=${_tmp_FILE} + -DKDE_UIC_H_FILE:FILEPATH=${_header} + -DKDE_UIC_BASENAME:STRING=${_basename} + -DKDE_UIC_PLUGIN_DIR:FILEPATH="." + -P ${CMAKE_ROOT}/Modules/kde4uic.cmake + DEPENDS ${_tmp_FILE} + ) + +# we need to run uic3 and replace some things in the generated file + # this is done by executing the cmake script kde4uic.cmake + ADD_CUSTOM_COMMAND(OUTPUT ${_src} + COMMAND ${CMAKE_COMMAND} + ARGS + -DKDE3_IMPL:BOOL=ON + -DKDE_UIC_EXECUTABLE:FILEPATH=${QT_UIC3_EXECUTABLE} + -DKDE_UIC_FILE:FILEPATH=${_tmp_FILE} + -DKDE_UIC_CPP_FILE:FILEPATH=${_src} + -DKDE_UIC_H_FILE:FILEPATH=${_header} + -DKDE_UIC_BASENAME:STRING=${_basename} + -DKDE_UIC_PLUGIN_DIR:FILEPATH="." + -P ${CMAKE_ROOT}/Modules/kde4uic.cmake + DEPENDS ${_header} + ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${_header} -o ${_moc} + DEPENDS ${_header} + ) + SET(${_sources} ${${_sources}} ${_src} ${_moc} ) + + ENDFOREACH (_current_FILE) +ENDMACRO(KDE4_ADD_UI3_FILES) + + +MACRO(KDE4_AUTOMOC) + QT4_GET_MOC_INC_DIRS(_moc_INCS) + + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + + QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + IF (EXISTS ${_tmp_FILE}) + + FILE(READ ${_tmp_FILE} _contents) + + GET_FILENAME_COMPONENT(_abs_FILE ${_tmp_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) +# SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + KDE4_ADD_FILE_DEPENDANCY(${_tmp_FILE} ${_moc}) + + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + + ENDIF (EXISTS ${_tmp_FILE}) + ENDFOREACH (_current_FILE) +ENDMACRO(KDE4_AUTOMOC) + +MACRO(KDE4_INSTALL_ICONS _theme) + ADD_CUSTOM_TARGET(install_icons ) + SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) + FILE(WRITE install_icons.cmake "# icon installations rules\n") + FILE(APPEND install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") + + FILE(GLOB _icons *.png) + FOREACH(_current_ICON ${_icons} ) + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") + + SET(_icon_GROUP "actions") + + IF(${_group} STREQUAL "mime") + SET(_icon_GROUP "mimetypes") + ENDIF(${_group} STREQUAL "mime") + + IF(${_group} STREQUAL "filesys") + SET(_icon_GROUP "filesystems") + ENDIF(${_group} STREQUAL "filesys") + + IF(${_group} STREQUAL "device") + SET(_icon_GROUP "devices") + ENDIF(${_group} STREQUAL "device") + + IF(${_group} STREQUAL "app") + SET(_icon_GROUP "apps") + ENDIF(${_group} STREQUAL "app") + + IF(${_group} STREQUAL "action") + SET(_icon_GROUP "actions") + ENDIF(${_group} STREQUAL "action") + +# MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) + SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + FILE(APPEND install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + + ENDFOREACH (_current_ICON) +ENDMACRO(KDE4_INSTALL_ICONS _theme) + +# for the case that something should be added to every CMakeLists.txt at the top +MACRO(KDE4_HEADER) +ENDMACRO(KDE4_HEADER) + +# same as above, but at the end +MACRO(KDE4_FOOTER) +ENDMACRO(KDE4_FOOTER) + +MACRO(KDE4_CREATE_LIBTOOL_FILE _target) + GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) + + GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) + GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) + SET(_laname ${_laname}.la) + + FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") + FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") + FILE(APPEND ${_laname} "dlname='${_soname}'\n") + FILE(APPEND ${_laname} "# Names of this library\n") + FILE(APPEND ${_laname} "library_names='${_soname} ${_soname} ${_soname}'\n") + FILE(APPEND ${_laname} "# The name of the static archive\n") + FILE(APPEND ${_laname} "old_library=''\n") + FILE(APPEND ${_laname} "# Libraries that this one depends upon.\n") + FILE(APPEND ${_laname} "dependency_libs=''\n") +# FILE(APPEND ${_laname} "dependency_libs='${${_target}_LIB_DEPENDS}'\n") + FILE(APPEND ${_laname} "# Version information.\ncurrent=0\nage=0\nrevision=0\n") + FILE(APPEND ${_laname} "# Is this an already installed library?\ninstalled=yes\n") + 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}/lib/kde4'\n") + + INSTALL_FILES(/lib/kde4 FILES ${_laname}) +ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) + + +MACRO(KDE4_CREATE_FINAL_FILE _filename) + FILE(WRITE ${_filename} "//autogenerated file\n") + FOREACH (_current_FILE ${ARGN}) + FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n") + ENDFOREACH (_current_FILE) + +ENDMACRO(KDE4_CREATE_FINAL_FILE _filename) + + +OPTION(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") +OPTION(KDE4_BUILD_TESTS "Build the tests") + +MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) +#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty + IF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + SET(_first_SRC) + ELSE (${_with_PREFIX} STREQUAL "WITH_PREFIX") + SET(_first_SRC ${_with_PREFIX}) + ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + + IF (KDE4_ENABLE_FINAL) + KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) + ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final.cpp) + ELSE (KDE4_ENABLE_FINAL) + ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) + ENDIF (KDE4_ENABLE_FINAL) + + IF(_first_SRC) + SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") + ENDIF(_first_SRC) + + KDE4_CREATE_LIBTOOL_FILE(${_target_NAME}) + +ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) + +MACRO(KDE4_ADD_KLM _target_NAME ) + + IF (KDE4_ENABLE_FINAL) + KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) + ELSE (KDE4_ENABLE_FINAL) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) +# MESSAGE(STATUS "klm: kdeinit_${_target_NAME}") + ENDIF (KDE4_ENABLE_FINAL) + + CONFIGURE_FILE(${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + + ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) + TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) + +ENDMACRO(KDE4_ADD_KLM _target_NAME) + + +MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) + + IF (KDE4_ENABLE_FINAL) + KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) + ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp) + ELSE (KDE4_ENABLE_FINAL) + ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) + ENDIF (KDE4_ENABLE_FINAL) + +ENDMACRO(KDE4_ADD_EXECUTABLE _target_NAME) + +MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty + + SET(_first_SRC ${_lib_TYPE}) + SET(_add_lib_param) + + IF (${_lib_TYPE} STREQUAL "STATIC") + SET(_first_SRC) + SET(_add_lib_param STATIC) + ENDIF (${_lib_TYPE} STREQUAL "STATIC") + IF (${_lib_TYPE} STREQUAL "SHARED") + SET(_first_SRC) + SET(_add_lib_param SHARED) + ENDIF (${_lib_TYPE} STREQUAL "SHARED") + IF (${_lib_TYPE} STREQUAL "MODULE") + SET(_first_SRC) + SET(_add_lib_param MODULE) + ENDIF (${_lib_TYPE} STREQUAL "MODULE") + + IF (KDE4_ENABLE_FINAL) + KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) + ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final.cpp) + ELSE (KDE4_ENABLE_FINAL) + ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) + ENDIF (KDE4_ENABLE_FINAL) + +ENDMACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) + + +MACRO(KDE4_CREATE_DOXYGEN_DOCS) +ENDMACRO(KDE4_CREATE_DOXYGEN_DOCS) + diff --git a/modules/kde4init_dummy.cpp.in b/modules/kde4init_dummy.cpp.in new file mode 100644 index 00000000..f0cd3488 --- /dev/null +++ b/modules/kde4init_dummy.cpp.in @@ -0,0 +1,3 @@ +extern "C" int kdemain(int argc, char* argv[]); +extern "C" int kdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); } +int main(int argc, char* argv[]) { return kdemain(argc,argv); } diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake new file mode 100644 index 00000000..42382aac --- /dev/null +++ b/modules/kde4uic.cmake @@ -0,0 +1,47 @@ + +#using a ui3 file with uic3 +IF(KDE3_IMPL) + + EXEC_PROGRAM(${KDE_UIC_EXECUTABLE} ARGS + -nounload -tr tr2i18n + -impl ${KDE_UIC_H_FILE} + ${KDE_UIC_FILE} + OUTPUT_VARIABLE _uic_CONTENTS + ) +ENDIF(KDE3_IMPL) + + +IF(KDE3_HEADER) + + EXEC_PROGRAM(${KDE_UIC_EXECUTABLE} ARGS + -nounload -tr tr2i18n + ${KDE_UIC_FILE} + OUTPUT_VARIABLE _uic_CONTENTS + ) + SET(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) +ENDIF(KDE3_HEADER) + +# the kde4 branch +IF (KDE4_HEADER) + + EXEC_PROGRAM(${KDE_UIC_EXECUTABLE} ARGS + -tr tr2i18n + ${KDE_UIC_FILE} + OUTPUT_VARIABLE _uic_CONTENTS + ) + + SET(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) +ENDIF (KDE4_HEADER) + + +#replace tr218n("") with QString::null to avoid waring from KLocale +STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) +STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) +STRING(REGEX REPLACE "\nuic3: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) +STRING(REGEX REPLACE "\n'[^\n]+' [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) + +#replace image15_data with img15_filename to make enable_final work +STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") + +FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n${_uic_CONTENTS}\n") + diff --git a/modules/potential_problems b/modules/potential_problems new file mode 100644 index 00000000..233949c5 --- /dev/null +++ b/modules/potential_problems @@ -0,0 +1,3 @@ +/CMakeLists.txt find_package(Perl REQUIRED) +KDE4_AUTOMOC: -DQ_WS_X11 +test for bzip2 -- cgit v1.2.1 From 92b2d3880bc24d8675eac69992cd10d4ec10080a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 19:09:20 +0000 Subject: make install now installs all cmake files into the cmake module directory Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501385 --- modules/CMakeLists.txt | 9 ++++++++- modules/README | 7 +++++-- 2 files changed, 13 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index a7fa49a9..85c9279d 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,3 +1,10 @@ SET(CMAKE_INSTALL_PREFIX ${CMAKE_ROOT} ) -INSTALL_FILES(/Modules FILES FindKDE3.cmake KDE3Macros.cmake kde3init_dummy.cpp.in kde3uic.cmake ) + +FILE(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") + +INSTALL_FILES(/Modules FILES +kde3init_dummy.cpp.in +kde4init_dummy.cpp.in +${cmakeFiles} +) diff --git a/modules/README b/modules/README index 3dc1eb80..e13ffafd 100644 --- a/modules/README +++ b/modules/README @@ -1,5 +1,8 @@ -these are modules for detecting software packages needed by KDE, but not yet -part of cmake +these are additional cmake modules required for compiling KDE3 or KDE4 +applications with cmake. Some of them are enhanced versions of the files +coming with cmake, some of them are not yet part of cmake. +To use them, copy them into the cmake Module directory or +run "cmake ." followed by "make install" Alex -- cgit v1.2.1 From 5c4afe434448c1d6248c7212294b6c37ae2cdeb3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 20:39:27 +0000 Subject: -require Qt4 in FindKDE4.cmake, as suggested by Tanner Lovelace Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501422 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 8e4c4d4d..e0099107 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -38,7 +38,7 @@ ELSE(UNIX) ENDIF(UNIX) #this line includes FindQt.cmake, which searches the Qt library and headers -INCLUDE(FindQt4) +FIND_PACKAGE(Qt4 REQUIRED) #add the definitions found by FindQt to the current definitions #ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) -- cgit v1.2.1 From 22228526d004d33f669d287643f0a07477a72b1e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Jan 2006 21:30:26 +0000 Subject: it seems strtoll doesn't work opn FreeBSD with -ansi Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501434 --- modules/FindKDE4.cmake | 12 ++++++++---- modules/KDE4Macros.cmake | 4 ++-- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index e0099107..8553ef9f 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -49,22 +49,26 @@ SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) # not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT SET(KDE4_DEFINITIONS -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ) -SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") -SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") #only on linux, but not e.g. on FreeBSD: IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") IF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_GNU_SOURCE) + SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") + SET(CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") + SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") #SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") -SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") -SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") SET(KDE4_DIR /opt/kde4) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 8cbeb6f8..e3503b33 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -106,8 +106,8 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} - ARGS ${_kcfg_FILE} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} ) + ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} + DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ) SET(${_sources} ${${_sources}} ${_src_FILE}) -- cgit v1.2.1 From f966ce265b1c469713f7c2543bb81e5cf8b70d13 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 23 Jan 2006 17:41:24 +0000 Subject: -fix Foo_FIND_REQUIRED and Foo_FIND_QUIETYL handling: Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501687 --- modules/FindBZip2.cmake | 8 ++++---- modules/FindCups.cmake | 8 ++++---- modules/FindJasper.cmake | 8 ++++---- modules/FindLibArt.cmake | 8 ++++---- modules/FindLibXml2.cmake | 8 ++++---- modules/FindLibXslt.cmake | 8 ++++---- modules/FindOpenSSL.cmake | 8 ++++---- 7 files changed, 28 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index b6a99d62..cc248ad1 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -27,12 +27,12 @@ IF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARY) ENDIF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARY) IF(BZIP2_FOUND) - IF(NOT BZIP2_QUIETLY) + IF(NOT BZip2_FIND_QUIETLY) MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARY}") - ENDIF(NOT BZIP2_QUIETLY) + ENDIF(NOT BZip2_FIND_QUIETLY) ELSE(BZIP2_FOUND) - IF(NOT BZIP2_REQUIRED) + IF(BZip2_FIND_REQUIRED) MESSAGE(SEND_ERROR "Could not find BZip2") - ENDIF(NOT BZIP2_REQUIRED) + ENDIF(BZip2_FIND_REQUIRED) ENDIF(BZIP2_FOUND) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 1e669d45..f0518f68 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -24,12 +24,12 @@ IF(CUPS_INCLUDE_DIR AND CUPS_LIBRARY) ENDIF(CUPS_INCLUDE_DIR AND CUPS_LIBRARY) IF(CUPS_FOUND) - IF(NOT CUPS_QUIETLY) + IF(NOT Cups_FIND_QUIETLY) MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARY}") - ENDIF(NOT CUPS_QUIETLY) + ENDIF(NOT Cups_FIND_QUIETLY) ELSE(CUPS_FOUND) - IF(NOT CUPS_REQUIRED) + IF(Cups_FIND_REQUIRED) MESSAGE(SEND_ERROR "Could not find Cups") - ENDIF(NOT CUPS_REQUIRED) + ENDIF(Cups_FIND_REQUIRED) ENDIF(CUPS_FOUND) diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 4123229e..87bdb70d 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -17,11 +17,11 @@ ENDIF(JASPER_INCLUDE_DIR AND JASPER_LIBRARY) IF(JASPER_FOUND) - IF(NOT JASPER_FIND_QUIETLY) + IF(NOT Jasper_FIND_QUIETLY) MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARY}") - ENDIF(NOT JASPER_FIND_QUIETLY) + ENDIF(NOT Jasper_FIND_QUIETLY) ELSE(JASPER_FOUND) - IF(JASPER_FIND_REQUIRED) + IF(Jasper_FIND_REQUIRED) MESSAGE(SEND_ERROR "Could not find jasper library") - ENDIF(JASPER_FIND_REQUIRED) + ENDIF(Jasper_FIND_REQUIRED) ENDIF(JASPER_FOUND) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index e8bd5a6b..3a716fef 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -26,11 +26,11 @@ ENDIF(LIBART_INCLUDE_DIR AND LIBART_LIBRARY) IF(LIBART_FOUND) - IF(NOT LIBART_FIND_QUIETLY) + IF(NOT LibArt_FIND_QUIETLY) MESSAGE(STATUS "Found libart: ${LIBART_LIBRARY}") - ENDIF(NOT LIBART_FIND_QUIETLY) + ENDIF(NOT LibArt_FIND_QUIETLY) ELSE(LIBART_FOUND) - IF(LIBART_FIND_REQUIRED) + IF(LibArt_FIND_REQUIRED) MESSAGE(SEND_ERROR "Could not find libart") - ENDIF(LIBART_FIND_REQUIRED) + ENDIF(LibArt_FIND_REQUIRED) ENDIF(LIBART_FOUND) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 37486afc..4be22454 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -34,12 +34,12 @@ IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY) ENDIF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY) IF(LIBXML2_FOUND) - IF(NOT LIBXML2_QUIETLY) + IF(NOT LibXml2_FIND_QUIETLY) MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARY}") - ENDIF(NOT LIBXML2_QUIETLY) + ENDIF(NOT LibXml2_FIND_QUIETLY) ELSE(LIBXML2_FOUND) - IF(NOT LIBXML2_REQUIRED) + IF(LibXml2_FIND_REQUIRED) MESSAGE(SEND_ERROR "Could not find LibXml2") - ENDIF(NOT LIBXML2_REQUIRED) + ENDIF(LibXml2_FIND_REQUIRED) ENDIF(LIBXML2_FOUND) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index ed23fd64..f8007ce0 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -34,12 +34,12 @@ IF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARY) ENDIF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARY) IF(LIBXSLT_FOUND) - IF(NOT LIBXSLT_QUIETLY) + IF(NOT LibXslt_FIND_QUIETLY) MESSAGE(STATUS "Found LibXslt: ${LIBXSLT_LIBRARY}") - ENDIF(NOT LIBXSLT_QUIETLY) + ENDIF(NOT LibXslt_FIND_QUIETLY) ELSE(LIBXSLT_FOUND) - IF(NOT LIBXSLT_REQUIRED) + IF(LibXslt_FIND_REQUIRED) MESSAGE(SEND_ERROR "Could not find LibXslt") - ENDIF(NOT LIBXSLT_REQUIRED) + ENDIF(LibXslt_FIND_REQUIRED) ENDIF(LIBXSLT_FOUND) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 8b6d6e5d..1b13d63f 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -16,11 +16,11 @@ ENDIF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY) IF(OPENSSL_FOUND) - IF(NOT OPENSSL_FIND_QUIETLY) + IF(NOT OpenSSL_FIND_QUIETLY) MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARY}") - ENDIF(NOT OPENSSL_FIND_QUIETLY) + ENDIF(NOT OpenSSL_FIND_QUIETLY) ELSE(OPENSSL_FOUND) - IF(OPENSSL_FIND_REQUIRED) + IF(OpenSSL_FIND_REQUIRED) MESSAGE(SEND_ERROR "Could not find OpenSSL") - ENDIF(OPENSSL_FIND_REQUIRED) + ENDIF(OpenSSL_FIND_REQUIRED) ENDIF(OPENSSL_FOUND) -- cgit v1.2.1 From 70e36df077f2685f6feda284cb02c27162d43344 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 23 Jan 2006 19:21:32 +0000 Subject: make it dcop skel/stub rules work in directories where stubs/skels are generated multiple times for the same headers Alex svn path=/trunk/KDE/kdesdk/cmake/; revision=501726 --- modules/KDE4Macros.cmake | 60 ++++++++++++++++++++++++++++++++---------------- 1 file changed, 40 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e3503b33..376e6a38 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -44,17 +44,28 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} - COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} - DEPENDS ${_tmp_FILE} - ) + IF (NOT HAVE_${_basename}_KIDL_RULE) + SET(HAVE_${_basename}_KIDL_RULE ON) - ADD_CUSTOM_COMMAND(OUTPUT ${_skel} - COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} - DEPENDS ${_kidl} - ) + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE4_DCOPIDL_EXECUTABLE} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} + DEPENDS ${_tmp_FILE} + ) + ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + + + + IF (NOT HAVE_${_basename}_SKEL_RULE) + SET(HAVE_${_basename}_SKEL_RULE ON) + + ADD_CUSTOM_COMMAND(OUTPUT ${_skel} + COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} + DEPENDS ${_kidl} + ) + + ENDIF (NOT HAVE_${_basename}_SKEL_RULE) SET(${_sources} ${${_sources}} ${_skel}) @@ -73,17 +84,26 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) # SET(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} - COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} - DEPENDS ${_tmp_FILE} - ) - ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} - COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} - DEPENDS ${_kidl} - ) + IF (NOT HAVE_${_basename}_KIDL_RULE) + SET(HAVE_${_basename}_KIDL_RULE ON) + + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE4_DCOPIDL_EXECUTABLE} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} + DEPENDS ${_tmp_FILE} + ) + ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + + IF (NOT HAVE_${_basename}_STUB_RULE) + SET(HAVE_${_basename}_STUB_RULE ON) + + ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} + COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} + DEPENDS ${_kidl} + ) + ENDIF (NOT HAVE_${_basename}_STUB_RULE) SET(${_sources} ${${_sources}} ${_stub_CPP}) -- cgit v1.2.1 From 1d78fb83f0d0c05d0d0bd8b4bbb53747fc55778d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 25 Jan 2006 20:41:54 +0000 Subject: add the stuff moved from kdesdk, maybe... Alex svn path=/trunk/KDE/kdelibs/; revision=502383 --- modules/CheckPrototypeExists.cmake | 17 ++++++++++---- modules/FindBZip2.cmake | 2 +- modules/FindCups.cmake | 2 +- modules/FindFAM.cmake | 2 +- modules/FindJasper.cmake | 2 +- modules/FindKDE4.cmake | 6 ++--- modules/FindLibArt.cmake | 2 +- modules/FindLibXslt.cmake | 2 +- modules/FindOpenSSL.cmake | 2 +- modules/FindPCRE.cmake | 2 +- modules/FindQt4.cmake | 6 ++--- modules/KDE4Macros.cmake | 48 +++++++++++++++++++++++--------------- modules/UsePkgConfig.cmake | 2 +- 13 files changed, 57 insertions(+), 38 deletions(-) (limited to 'modules') diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index 4797865f..38d9d6ba 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -6,11 +6,20 @@ # VARIABLE - variable to store the result # -INCLUDE(CheckTypeSize) +INCLUDE(CheckCXXSourceCompiles) MACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) - SET(CMAKE_EXTRA_INCLUDE_FILES ${_HEADER}) - CHECK_TYPE_SIZE(${_SYMBOL} ${_RESULT}) - SET(CMAKE_EXTRA_INCLUDE_FILES) + SET(_CHECK_PROTO_EXISTS_SOURCE_CODE " +#include <${_HEADER}> +void cmakeRequireSymbol(int dummy,...){(void)dummy;} +int main() +{ +#ifndef ${_SYMBOL} + cmakeRequireSymbol(0,&${_SYMBOL}); +#endif + return 0; +} +") + CHECK_CXX_SOURCE_COMPILES("${_CHECK_PROTO_EXISTS_SOURCE_CODE}" ${_RESULT}) ENDMACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index cc248ad1..cbf9b25a 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -32,7 +32,7 @@ IF(BZIP2_FOUND) ENDIF(NOT BZip2_FIND_QUIETLY) ELSE(BZIP2_FOUND) IF(BZip2_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find BZip2") + MESSAGE(FATAL_ERROR "Could not find BZip2") ENDIF(BZip2_FIND_REQUIRED) ENDIF(BZIP2_FOUND) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index f0518f68..3fa26686 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -29,7 +29,7 @@ IF(CUPS_FOUND) ENDIF(NOT Cups_FIND_QUIETLY) ELSE(CUPS_FOUND) IF(Cups_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find Cups") + MESSAGE(FATAL_ERROR "Could not find Cups") ENDIF(Cups_FIND_REQUIRED) ENDIF(CUPS_FOUND) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index 1ac64251..bfc553fe 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -22,6 +22,6 @@ IF(FAM_FOUND) ENDIF(NOT FAM_FIND_QUIETLY) ELSE(FAM_FOUND) IF(FAM_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find fam library") + MESSAGE(FATAL_ERROR "Could not find fam library") ENDIF(FAM_FIND_REQUIRED) ENDIF(FAM_FOUND) diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 87bdb70d..447d309b 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -22,6 +22,6 @@ IF(JASPER_FOUND) ENDIF(NOT Jasper_FIND_QUIETLY) ELSE(JASPER_FOUND) IF(Jasper_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find jasper library") + MESSAGE(FATAL_ERROR "Could not find jasper library") ENDIF(Jasper_FIND_REQUIRED) ENDIF(JASPER_FOUND) diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 8553ef9f..012c9a10 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -29,12 +29,12 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.2) IF(UNIX) IF(APPLE) - MESSAGE(SEND_ERROR "Mac OSX not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") + MESSAGE(FATAL_ERROR "Mac OSX not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") ELSE(APPLE) FIND_PACKAGE(X11 REQUIRED) ENDIF(APPLE) ELSE(UNIX) - MESSAGE(SEND_ERROR "Win32 not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") + MESSAGE(FATAL_ERROR "Win32 not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") ENDIF(UNIX) #this line includes FindQt.cmake, which searches the Qt library and headers @@ -56,7 +56,7 @@ IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") + SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") IF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 3a716fef..35b349fc 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -31,6 +31,6 @@ IF(LIBART_FOUND) ENDIF(NOT LibArt_FIND_QUIETLY) ELSE(LIBART_FOUND) IF(LibArt_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find libart") + MESSAGE(FATAL_ERROR "Could not find libart") ENDIF(LibArt_FIND_REQUIRED) ENDIF(LIBART_FOUND) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index f8007ce0..3d0dc525 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -39,7 +39,7 @@ IF(LIBXSLT_FOUND) ENDIF(NOT LibXslt_FIND_QUIETLY) ELSE(LIBXSLT_FOUND) IF(LibXslt_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find LibXslt") + MESSAGE(FATAL_ERROR "Could not find LibXslt") ENDIF(LibXslt_FIND_REQUIRED) ENDIF(LIBXSLT_FOUND) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 1b13d63f..f07908a0 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -21,6 +21,6 @@ IF(OPENSSL_FOUND) ENDIF(NOT OpenSSL_FIND_QUIETLY) ELSE(OPENSSL_FOUND) IF(OpenSSL_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find OpenSSL") + MESSAGE(FATAL_ERROR "Could not find OpenSSL") ENDIF(OpenSSL_FIND_REQUIRED) ENDIF(OPENSSL_FOUND) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 350cced8..fa61a430 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -29,6 +29,6 @@ IF(PCRE_FOUND) ENDIF(NOT PCRE_FIND_QUIETLY) ELSE(PCRE_FOUND) IF(PCRE_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find PCRE") + MESSAGE(FATAL_ERROR "Could not find PCRE") ENDIF(PCRE_FIND_REQUIRED) ENDIF(PCRE_FOUND) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 9b7bb1dd..466ccb37 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -211,7 +211,7 @@ IF(QT4_QMAKE_FOUND) ENDIF( QT_QT_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) IF( NOT QT_INCLUDE_DIR) IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( SEND_ERROR "Could not find qglobal.h") + MESSAGE( FATAL_ERROR "Could not find qglobal.h") ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) @@ -741,7 +741,7 @@ IF(QT4_QMAKE_FOUND) ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "NO") IF( Qt4_FIND_REQUIRED) - MESSAGE( SEND_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") ENDIF( Qt4_FIND_REQUIRED) ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET(QT_FOUND ${QT4_FOUND}) @@ -776,7 +776,7 @@ ELSE(QT4_QMAKE_FOUND) MESSAGE("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") ENDIF(QT_QMAKE_EXECUTABLE) IF( Qt4_FIND_REQUIRED) - MESSAGE( SEND_ERROR "Qt qmake not found!") + MESSAGE( FATAL_ERROR "Qt qmake not found!") ENDIF( Qt4_FIND_REQUIRED) ENDIF(QT4_QMAKE_FOUND) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 376e6a38..f5632c8a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -54,8 +54,6 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ) ENDIF (NOT HAVE_${_basename}_KIDL_RULE) - - IF (NOT HAVE_${_basename}_SKEL_RULE) SET(HAVE_${_basename}_SKEL_RULE ON) @@ -92,7 +90,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) COMMAND ${KDE4_DCOPIDL_EXECUTABLE} ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} DEPENDS ${_tmp_FILE} - ) + ) ENDIF (NOT HAVE_${_basename}_KIDL_RULE) IF (NOT HAVE_${_basename}_STUB_RULE) @@ -153,6 +151,12 @@ ENDMACRO(KDE4_ADD_KCFG_FILES) # ENDFOREACH (_current_FILE) #ENDMACRO(KDE4_ADD_MOC_FILES) +IF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") + SET(KDE4_MODULE_DIR "${CMAKE_ROOT}/Modules") +ELSE(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") + SET(KDE4_MODULE_DIR "${CMAKE_SOURCE_DIR}/cmake/modules") +ENDIF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") + #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) @@ -174,7 +178,7 @@ MACRO(KDE4_ADD_UI_FILES _sources ) -DKDE_UIC_FILE:FILEPATH=${_tmp_FILE} -DKDE_UIC_H_FILE:FILEPATH=${_header} -DKDE_UIC_BASENAME:STRING=${_basename} - -P ${CMAKE_ROOT}/Modules/kde4uic.cmake + -P ${KDE4_MODULE_DIR}/kde4uic.cmake DEPENDS ${_tmp_FILE} ) ENDFOREACH (_current_FILE) @@ -209,7 +213,7 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) -DKDE_UIC_H_FILE:FILEPATH=${_header} -DKDE_UIC_BASENAME:STRING=${_basename} -DKDE_UIC_PLUGIN_DIR:FILEPATH="." - -P ${CMAKE_ROOT}/Modules/kde4uic.cmake + -P ${KDE4_MODULE_DIR}/kde4uic.cmake DEPENDS ${_tmp_FILE} ) @@ -225,7 +229,7 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) -DKDE_UIC_H_FILE:FILEPATH=${_header} -DKDE_UIC_BASENAME:STRING=${_basename} -DKDE_UIC_PLUGIN_DIR:FILEPATH="." - -P ${CMAKE_ROOT}/Modules/kde4uic.cmake + -P ${KDE4_MODULE_DIR}/kde4uic.cmake DEPENDS ${_header} ) @@ -357,13 +361,19 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target) ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) -MACRO(KDE4_CREATE_FINAL_FILE _filename) - FILE(WRITE ${_filename} "//autogenerated file\n") +MACRO(KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) + FILE(WRITE ${_filenameCPP} "//autogenerated file\n") + FILE(WRITE ${_filenameC} "/*autogenerated file*/\n") FOREACH (_current_FILE ${ARGN}) - FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n") + STRING(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE}) + IF(_isCFile) + FILE(APPEND ${_filenameC} "#include \"${_current_FILE}\"\n") + ELSE(_isCFile) + FILE(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n") + ENDIF(_isCFile) ENDFOREACH (_current_FILE) -ENDMACRO(KDE4_CREATE_FINAL_FILE _filename) +ENDMACRO(KDE4_CREATE_FINAL_FILES) OPTION(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") @@ -378,8 +388,8 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX") IF (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) - ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final.cpp) + KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) + ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) ELSE (KDE4_ENABLE_FINAL) ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) ENDIF (KDE4_ENABLE_FINAL) @@ -395,14 +405,14 @@ ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) MACRO(KDE4_ADD_KLM _target_NAME ) IF (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) + KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) ELSE (KDE4_ENABLE_FINAL) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) # MESSAGE(STATUS "klm: kdeinit_${_target_NAME}") ENDIF (KDE4_ENABLE_FINAL) - CONFIGURE_FILE(${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) @@ -413,8 +423,8 @@ ENDMACRO(KDE4_ADD_KLM _target_NAME) MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) IF (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) - ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp) + KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) + ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) ELSE (KDE4_ENABLE_FINAL) ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) ENDIF (KDE4_ENABLE_FINAL) @@ -441,8 +451,8 @@ MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) ENDIF (${_lib_TYPE} STREQUAL "MODULE") IF (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) - ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final.cpp) + KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) + ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) ELSE (KDE4_ENABLE_FINAL) ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) ENDIF (KDE4_ENABLE_FINAL) diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index 7dc74777..898fb706 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -18,7 +18,7 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) # if pkg-config has been found IF(PKGCONFIG_EXECUTABLE) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) # and if the package of interest also exists for pkg-config, then get the information IF(NOT _return_VALUE) -- cgit v1.2.1 From 6617c46a929d83ae13dbf52022d4fc8458695dc0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 25 Jan 2006 21:54:10 +0000 Subject: -all install rules work now -DartConfig.cmake contributed by Bill Hoffman Alex svn path=/trunk/KDE/kdelibs/; revision=502405 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f5632c8a..ac229538 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -286,8 +286,8 @@ ENDMACRO(KDE4_AUTOMOC) MACRO(KDE4_INSTALL_ICONS _theme) ADD_CUSTOM_TARGET(install_icons ) SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) - FILE(WRITE install_icons.cmake "# icon installations rules\n") - FILE(APPEND install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") FILE(GLOB _icons *.png) FOREACH(_current_ICON ${_icons} ) @@ -319,8 +319,8 @@ MACRO(KDE4_INSTALL_ICONS _theme) # MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") ENDFOREACH (_current_ICON) ENDMACRO(KDE4_INSTALL_ICONS _theme) -- cgit v1.2.1 From 023d276597dd2c8889efeeb946ecf316e112f006 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 26 Jan 2006 18:43:52 +0000 Subject: -fix by Tanner Lovelace, generate correct include statements Alex svn path=/trunk/KDE/kdelibs/; revision=502616 --- modules/CheckPrototypeExists.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index 38d9d6ba..90f7d5dc 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -9,8 +9,13 @@ INCLUDE(CheckCXXSourceCompiles) MACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) + SET(_INCLUDE_FILES) + FOREACH(it ${_HEADER}) + SET(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") + ENDFOREACH(it) + SET(_CHECK_PROTO_EXISTS_SOURCE_CODE " -#include <${_HEADER}> +${_INCLUDE_FILES} void cmakeRequireSymbol(int dummy,...){(void)dummy;} int main() { -- cgit v1.2.1 From 7f84e10ddbcc7d67e553e7df49a7b7db5727ba71 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Fri, 27 Jan 2006 22:24:04 +0000 Subject: mac os x fixes for the cmake build svn path=/trunk/KDE/kdelibs/; revision=503025 --- modules/FindKDE4.cmake | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 012c9a10..022fe454 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -29,7 +29,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.2) IF(UNIX) IF(APPLE) - MESSAGE(FATAL_ERROR "Mac OSX not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") + #MESSAGE(FATAL_ERROR "Mac OSX not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") ELSE(APPLE) FIND_PACKAGE(X11 REQUIRED) ENDIF(APPLE) @@ -67,6 +67,26 @@ IF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") +# This will need to be modified later to support either Qt/X11 or Qt/Mac builds +IF(APPLE) + # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow + # -undefined dynamic_lookup; in the future we should do this programmatically + # hmm... why doesn't this work? + SET(ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) + + # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default + # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented + # or perhaps it already is, and I just don't know where to look ;) + + SET(CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") + SET(CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") + #SET(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") + #SET(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") + + SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common -Os") + SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") +ENDIF(APPLE) + #SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") -- cgit v1.2.1 From e402fb5eafaaa75f2b0ddacdf3cd9359d872469e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 27 Jan 2006 22:44:32 +0000 Subject: -first *complete* build of *complete* kdelibs, with no undefined symbols left -compile fix in interfaces/ktexteditor/codecompletion2.h, gcc 3.3.6 didn't compile it: In file included from /home/alex/src/kde4-svn/kdelibs/kate/part/kateview.h:31, from /home/alex/src/kde4-svn/kdelibs/kate/part/katesearch.cpp:27: /home/alex/src/kde4-svn/kdelibs/interfaces/ktexteditor/codecompletion2.h:89: error: duplicate field enum KTextEditor::CodeCompletionModel::HighlightMethod' (as enum and non-enum) /home/alex/src/kde4-svn/kdelibs/kate/part/katesearch.cpp: In constructor KateReplacePrompt::KateRep lacePrompt(QWidget*)': /home/alex/src/kde4-svn/kdelibs/kate/part/katesearch.cpp:628: warning: __base_ctor' is deprecated (declared at /home/alex/src/kde4-svn/kdelibs/kdeui/kdialogbase.h:194) -compile fix in kdeui/ktip.cpp, gcc 3.3.6 didn't compile it Alex CCMAIL: kwrite-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=503028 --- modules/FindGIF.cmake | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 modules/FindGIF.cmake (limited to 'modules') diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake new file mode 100644 index 00000000..b8b85e83 --- /dev/null +++ b/modules/FindGIF.cmake @@ -0,0 +1,35 @@ +# - Try to find GIF +# Once done this will define +# +# GIF_FOUND - system has GIF +# GIF_INCLUDE_DIR - the GIF include directory +# GIF_LIBRARY - Link these to use OpenGL and GLU +# GIF_DEFINITIONS - Compiler switches required for using GIF +# + + +FIND_PATH(GIF_INCLUDE_DIR gif_lib.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(GIF_LIBRARY NAMES ungif + PATHS + /usr/lib + /usr/local/lib +) + +IF(GIF_INCLUDE_DIR AND GIF_LIBRARY) + SET(GIF_FOUND TRUE) +ENDIF(GIF_INCLUDE_DIR AND GIF_LIBRARY) + +IF(GIF_FOUND) + IF(NOT GIF_FIND_QUIETLY) + MESSAGE(STATUS "Found GIF: ${GIF_LIBRARY}") + ENDIF(NOT GIF_FIND_QUIETLY) +ELSE(GIF_FOUND) + IF(GIF_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find GIF") + ENDIF(GIF_FIND_REQUIRED) +ENDIF(GIF_FOUND) + -- cgit v1.2.1 From 53c4e99326c480b8471750aa78d43817623d557f Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Fri, 27 Jan 2006 22:51:22 +0000 Subject: -lQtTest is not a framework on osx qt 4.1.0, need -L still svn path=/trunk/KDE/kdelibs/; revision=503032 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 466ccb37..9e1bc91c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -217,7 +217,7 @@ IF(QT4_QMAKE_FOUND) IF (QT_USE_FRAMEWORKS) SET(QT_DEFINITIONS ${QT_DEFINITIONS} - -F${QT_LIBRARY_DIR} + -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) ENDIF (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From 6050d6f881b64311764baed1c88d132d5b5f4f4a Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Fri, 27 Jan 2006 22:52:34 +0000 Subject: d'oh! forgot to add this svn path=/trunk/KDE/kdelibs/; revision=503034 --- modules/FindCarbon.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 modules/FindCarbon.cmake (limited to 'modules') diff --git a/modules/FindCarbon.cmake b/modules/FindCarbon.cmake new file mode 100644 index 00000000..ffcd114a --- /dev/null +++ b/modules/FindCarbon.cmake @@ -0,0 +1,8 @@ +INCLUDE(CMakeFindFrameworks) + +CMAKE_FIND_FRAMEWORKS(Carbon) + +IF(Carbon_FRAMEWORKS) + SET (CARBON_LIBRARY "-framework Carbon" CACHE FILEPATH "Carbon framework" FORCE) + SET (CARBON_FOUND 1) +ENDIF(Carbon_FRAMEWORKS) -- cgit v1.2.1 From 426fd2a499c367c0262111c1b80bd67c823aee5a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 28 Jan 2006 12:55:09 +0000 Subject: -prefer the Qt binaries in the "special" (like QTDIR) directories over the Qt binaries in the normal system paths Alex svn path=/trunk/KDE/kdelibs/; revision=503140 --- modules/FindQt4.cmake | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 9e1bc91c..fe9dbff8 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -132,8 +132,14 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin ${QT4_PATHS} + $ENV{PATH} + NO_SYSTEM_PATH ) +IF(NOT QT_QMAKE_EXECUTABLE) + FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake) +ENDIF(NOT QT_QMAKE_EXECUTABLE) + IF(QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) @@ -573,8 +579,13 @@ IF(QT4_QMAKE_FOUND) /usr/share/qt4/bin C:/Progra~1/qt/bin /usr/bin/qt4 + NO_SYSTEM_PATH ) + IF(NOT QT_MOC_EXECUTABLE) + FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) + ENDIF(NOT QT_MOC_EXECUTABLE) + IF(QT_MOC_EXECUTABLE) SET ( QT_WRAP_CPP "YES") ENDIF(QT_MOC_EXECUTABLE) @@ -605,8 +616,13 @@ IF(QT4_QMAKE_FOUND) /usr/share/qt4/bin C:/Progra~1/qt/bin /usr/bin/qt4 + NO_SYSTEM_PATH ) + IF(NOT QT_UIC_EXECUTABLE) + FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic ) + ENDIF(NOT QT_UIC_EXECUTABLE) + IF(QT_UIC_EXECUTABLE) SET ( QT_WRAP_UI "YES") ENDIF(QT_UIC_EXECUTABLE) -- cgit v1.2.1 From bfe61edb969f42e1f9faa39baa3e6d33c77c92d9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 28 Jan 2006 13:10:06 +0000 Subject: this wan't intended to be commited Alex svn path=/trunk/KDE/kdelibs/; revision=503146 --- modules/FindQt4.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index fe9dbff8..4ed32e69 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -132,7 +132,6 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin ${QT4_PATHS} - $ENV{PATH} NO_SYSTEM_PATH ) -- cgit v1.2.1 From 06c252e787a30b58f650c61854d5d870cd2dfb4f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 28 Jan 2006 15:32:00 +0000 Subject: -new module to find agg (I don't have it installed here, so I couldn't really test it) -some cosmetic changes -FindQt4 should now also work if only the debug libraries are present, less LOC -preparation for windows developers Alex svn path=/trunk/KDE/kdelibs/; revision=503263 --- modules/FindAGG.cmake | 45 +++++++++++ modules/FindKDE4.cmake | 11 +-- modules/FindQt4.cmake | 208 ++++++++++++++----------------------------------- 3 files changed, 106 insertions(+), 158 deletions(-) create mode 100644 modules/FindAGG.cmake (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake new file mode 100644 index 00000000..6dc61dfe --- /dev/null +++ b/modules/FindAGG.cmake @@ -0,0 +1,45 @@ +# - Try to find AGG +# Once done this will define +# +# AGG_FOUND - system has AGG +# AGG_INCLUDE_DIR - the AGG include directory +# AGG_LIBRARY - Link these to use OpenGL and GLU +# AGG_DEFINITIONS - Compiler switches required for using AGG +# + + +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +INCLUDE(UsePkgConfig) + +PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) + +SET(AGG_DEFINITIONS ${_AGGCflags}) + +FIND_PATH(AGG_INCLUDE_DIR agg2/agg_conv_stroke.h + ${_AGGIncDir} + /usr/include + /usr/local/include +) + +FIND_LIBRARY(AGG_LIBRARY NAMES agg + PATHS + ${_AGGLinkDir} + /usr/lib + /usr/local/lib +) + +IF(AGG_INCLUDE_DIR AND AGG_LIBRARY) + SET(AGG_FOUND TRUE) +ENDIF(AGG_INCLUDE_DIR AND AGG_LIBRARY) + +IF(AGG_FOUND) + IF(NOT AGG_FIND_QUIETLY) + MESSAGE(STATUS "Found AGG: ${AGG_LIBRARY}") + ENDIF(NOT AGG_FIND_QUIETLY) +ELSE(AGG_FOUND) + IF(AGG_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find AGG") + ENDIF(AGG_FIND_REQUIRED) +ENDIF(AGG_FOUND) + diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 022fe454..77a407db 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -40,9 +40,6 @@ ENDIF(UNIX) #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt4 REQUIRED) -#add the definitions found by FindQt to the current definitions -#ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) - SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) #add some KDE specific stuff @@ -51,21 +48,21 @@ SET(KDE4_DEFINITIONS -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRA #only on linux, but not e.g. on FreeBSD: -IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") +IF(CMAKE_SYSTEM_NAME MATCHES Linux) SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") -ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") +ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) -IF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") +IF(CMAKE_SYSTEM_NAME MATCHES FreeBSD) SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_GNU_SOURCE) SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") SET(CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") +ENDIF(CMAKE_SYSTEM_NAME MATCHES FreeBSD) # This will need to be modified later to support either Qt/X11 or Qt/Mac builds IF(APPLE) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 4ed32e69..edc438a9 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -78,7 +78,6 @@ # # QT_QT3SUPPORT_LIBRARY_DEBUG Fullpath to Qt3Support_debug library # QT_QTASSISTANT_LIBRARY_DEBUG Fullpath to QtAssistant_debug library -# # QT_QTCORE_LIBRARY_DEBUG Fullpath to QtCore_debug # QT_QTDESIGNER_LIBRARY_DEBUG Fullpath to QtDesigner_debug # QT_QTGUI_LIBRARY_DEBUG Fullpath to QtGui_debug @@ -290,46 +289,10 @@ IF(QT4_QMAKE_FOUND) ) # Make variables changeble to the advanced user - MARK_AS_ADVANCED( - QT_LIBRARY_DIR - QT_INCLUDE_DIR - QT_QT_INCLUDE_DIR - QT_QT3SUPPORT_INCLUDE_DIR - QT_QTASSISTANT_INCLUDE_DIR - QT_QTCORE_INCLUDE_DIR - QT_QTDESIGNER_INCLUDE_DIR - QT_QTGUI_INCLUDE_DIR - QT_QTMOTIF_INCLUDE_DIR - QT_QTNETWORK_INCLUDE_DIR - QT_QTNSPLUGIN_INCLUDE_DIR - QT_QTOPENGL_INCLUDE_DIR - QT_QTSQL_INCLUDE_DIR - QT_QTXML_INCLUDE_DIR - ) + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR ) # Set QT_INCLUDES - SET( QT_INCLUDES - ${QT_INCLUDE_DIR} - ${QT_QTCORE_INCLUDE_DIR} - ${QT_QT_INCLUDE_DIR} - ${QT_QTGUI_INCLUDE_DIR} - ) - # append optional flags - MACRO(QT4_APPEND_INCLUDES_FLAG FLAG) - IF(${FLAG}) - SET(QT_INCLUDES ${QT_INCLUDES} "${${FLAG}}") - ENDIF(${FLAG}) - ENDMACRO(QT4_APPEND_INCLUDES_FLAG) - QT4_APPEND_INCLUDES_FLAG(QT_QT3SUPPORT_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTASSISTANT_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTDESIGNER_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTDESIGNER_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTMOTIF_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTNETWORK_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTNSPLUGIN_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTOPENGL_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTSQL_INCLUDE_DIR) - QT4_APPEND_INCLUDES_FLAG(QT_QTXML_INCLUDE_DIR) + SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) ######################################## @@ -443,116 +406,48 @@ IF(QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR}) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR}) - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( - QT_QT3SUPPORT_LIBRARY - QT_QTASSISTANT_LIBRARY - QT_QTCORE_LIBRARY - QT_QTDESIGNER_LIBRARY - QT_QTGUI_LIBRARY - QT_QTMOTIF_LIBRARY - QT_QTNETWORK_LIBRARY - QT_QTNSPLUGIN_LIBRARY - QT_QTOPENGL_LIBRARY - QT_QTSQL_LIBRARY - QT_QTXML_LIBRARY ) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( - QT_QT3SUPPORT_LIBRARY_DEBUG - QT_QTASSISTANT_LIBRARY_DEBUG - QT_QTCORE_LIBRARY_DEBUG - QT_QTDESIGNER_LIBRARY_DEBUG - QT_QTGUI_LIBRARY_DEBUG - QT_QTMOTIF_LIBRARY_DEBUG - QT_QTNETWORK_LIBRARY_DEBUG - QT_QTNSPLUGIN_LIBRARY_DEBUG - QT_QTOPENGL_LIBRARY_DEBUG - QT_QTSQL_LIBRARY_DEBUG - QT_QTXML_LIBRARY_DEBUG ) - ############################################ # # Check the existence of the libraries. # ############################################ - IF (QT_QTCORE_INCLUDE_DIR AND QT_QTCORE_LIBRARY) - SET(QT_QTCORE_FOUND 1) - IF (NOT QT_QTCORE_LIBRARY_DEBUG) - SET(QT_QTCORE_LIBRARY_DEBUG ${QT_QTCORE_LIBRARY}) - ENDIF (NOT QT_QTCORE_LIBRARY_DEBUG) - ENDIF (QT_QTCORE_INCLUDE_DIR AND QT_QTCORE_LIBRARY) - - IF (QT_QTGUI_INCLUDE_DIR AND QT_QTGUI_LIBRARY) - SET(QT_QTGUI_FOUND 1) - IF (NOT QT_QTGUI_LIBRARY_DEBUG) - SET(QT_QTGUI_LIBRARY_DEBUG ${QT_QTGUI_LIBRARY}) - ENDIF (NOT QT_QTGUI_LIBRARY_DEBUG) - ENDIF (QT_QTGUI_INCLUDE_DIR AND QT_QTGUI_LIBRARY) - - IF (QT_QT3SUPPORT_INCLUDE_DIR AND QT_QT3SUPPORT_LIBRARY) - SET(QT_QT3SUPPORT_FOUND 1) - IF (NOT QT_QT3SUPPORT_LIBRARY_DEBUG) - SET(QT_QT3SUPPORT_LIBRARY_DEBUG ${QT_QT3SUPPORT_LIBRARY}) - ENDIF (NOT QT_QT3SUPPORT_LIBRARY_DEBUG) - ENDIF (QT_QT3SUPPORT_INCLUDE_DIR AND QT_QT3SUPPORT_LIBRARY) - - IF (QT_QTASSISTANT_INCLUDE_DIR AND QT_QTASSISTANT_LIBRARY) - SET(QT_QTASSISTANT_FOUND 1) - IF (NOT QT_QTASSISTANT_LIBRARY_DEBUG) - SET(QT_QTASSISTANT_LIBRARY_DEBUG ${QT_QTASSISTANT_LIBRARY}) - ENDIF (NOT QT_QTASSISTANT_LIBRARY_DEBUG) - ENDIF (QT_QTASSISTANT_INCLUDE_DIR AND QT_QTASSISTANT_LIBRARY) - - IF (QT_QTDESIGNER_INCLUDE_DIR AND QT_QTDESIGNER_LIBRARY) - SET(QT_QTDESIGNER_FOUND 1) - IF (NOT QT_QTDESIGNER_LIBRARY_DEBUG) - SET(QT_QTDESIGNER_LIBRARY_DEBUG ${QT_QTDESIGNER_LIBRARY}) - ENDIF (NOT QT_QTDESIGNER_LIBRARY_DEBUG) - ENDIF (QT_QTDESIGNER_INCLUDE_DIR AND QT_QTDESIGNER_LIBRARY) - - IF (QT_QTMOTIF_INCLUDE_DIR AND QT_QTMOTIF_LIBRARY) - SET(QT_QTMOTIF_FOUND 1) - IF (NOT QT_QTMOTIF_LIBRARY_DEBUG) - SET(QT_QTMOTIF_LIBRARY_DEBUG ${QT_QTMOTIF_LIBRARY}) - ENDIF (NOT QT_QTMOTIF_LIBRARY_DEBUG) - ENDIF (QT_QTMOTIF_INCLUDE_DIR AND QT_QTMOTIF_LIBRARY) - - IF (QT_QTNETWORK_INCLUDE_DIR AND QT_QTNETWORK_LIBRARY) - SET(QT_QTNETWORK_FOUND 1) - IF (NOT QT_QTNETWORK_LIBRARY_DEBUG) - SET(QT_QTNETWORK_LIBRARY_DEBUG ${QT_QTNETWORK_LIBRARY}) - ENDIF (NOT QT_QTNETWORK_LIBRARY_DEBUG) - ENDIF (QT_QTNETWORK_INCLUDE_DIR AND QT_QTNETWORK_LIBRARY) - - IF (QT_QTNSPLUGIN_INCLUDE_DIR AND QT_QTNSPLUGIN_LIBRARY) - SET(QT_QTNSPLUGIN_FOUND 1) - IF (NOT QT_QTNSPLUGIN_LIBRARY_DEBUG) - SET(QT_QTNSPLUGIN_LIBRARY_DEBUG ${QT_QTNSPLUGIN_LIBRARY}) - ENDIF (NOT QT_QTNSPLUGIN_LIBRARY_DEBUG) - ENDIF (QT_QTNSPLUGIN_INCLUDE_DIR AND QT_QTNSPLUGIN_LIBRARY) - - IF (QT_QTOPENGL_INCLUDE_DIR AND QT_QTOPENGL_LIBRARY) - SET(QT_QTOPENGL_FOUND 1) - IF (NOT QT_QTOPENGL_LIBRARY_DEBUG) - SET(QT_QTOPENGL_LIBRARY_DEBUG ${QT_QTOPENGL_LIBRARY}) - ENDIF (NOT QT_QTOPENGL_LIBRARY_DEBUG) - ENDIF (QT_QTOPENGL_INCLUDE_DIR AND QT_QTOPENGL_LIBRARY) - - IF (QT_QTSQL_INCLUDE_DIR AND QT_QTSQL_LIBRARY) - SET(QT_QTSQL_FOUND 1) - IF (NOT QT_QTSQL_LIBRARY_DEBUG) - SET(QT_QTSQL_LIBRARY_DEBUG ${QT_QTSQL_LIBRARY}) - ENDIF (NOT QT_QTSQL_LIBRARY_DEBUG) - ENDIF (QT_QTSQL_INCLUDE_DIR AND QT_QTSQL_LIBRARY) - - IF (QT_QTXML_INCLUDE_DIR AND QT_QTXML_LIBRARY) - SET(QT_QTXML_FOUND 1) - IF (NOT QT_QTXML_LIBRARY_DEBUG) - SET(QT_QTXML_LIBRARY_DEBUG ${QT_QTXML_LIBRARY}) - ENDIF (NOT QT_QTXML_LIBRARY_DEBUG) - ENDIF (QT_QTXML_INCLUDE_DIR AND QT_QTXML_LIBRARY) + MACRO(_QT4_ADJUST_LIB_VARS basename) + IF (QT_${basename}_INCLUDE_DIR) + + # if only the release version was found, set the debug variable also to the release version + IF (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) + ENDIF (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) + + # if only the debug version was found, set the release variable also to the debug version + IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) + + IF (QT_${basename}_LIBRARY) + SET(QT_${basename}_FOUND 1) + ENDIF (QT_${basename}_LIBRARY) + + #add the include directory to QT_INCLUDES + SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + ENDIF (QT_${basename}_INCLUDE_DIR ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) + ENDMACRO(_QT4_ADJUST_LIB_VARS) + + _QT4_ADJUST_LIB_VARS(QTCORE) + _QT4_ADJUST_LIB_VARS(QTGUI) + _QT4_ADJUST_LIB_VARS(QT3SUPPORT) + _QT4_ADJUST_LIB_VARS(QTASSISTENT) + _QT4_ADJUST_LIB_VARS(QTDESIGNER) + _QT4_ADJUST_LIB_VARS(QTMOTIF) + _QT4_ADJUST_LIB_VARS(QTNETWORK) + _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) + _QT4_ADJUST_LIB_VARS(QTOPENGL) + _QT4_ADJUST_LIB_VARS(QTSQL) + _QT4_ADJUST_LIB_VARS(QTXML) ####################################### # @@ -566,6 +461,9 @@ IF(QT4_QMAKE_FOUND) OUTPUT_VARIABLE qt_bins ) SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") ENDIF (NOT QT_BINARY_DIR) + + # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, + # which might be a Qt3 qmake FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc PATHS @@ -581,6 +479,7 @@ IF(QT4_QMAKE_FOUND) NO_SYSTEM_PATH ) + # if qmake wasn't found in the specific dirs, now check the system path IF(NOT QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) ENDIF(NOT QT_MOC_EXECUTABLE) @@ -603,6 +502,7 @@ IF(QT4_QMAKE_FOUND) /usr/bin/qt4 ) + # first the specific paths, then the system path, same as with qmake FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic PATHS @@ -656,19 +556,25 @@ IF(QT4_QMAKE_FOUND) IF(${_filename} MATCHES "^/.+") SET(${_abs_filename} ${_filename}) ELSE(${_filename} MATCHES "^/.+") - SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) +# if you are on windows and have problems converting relative paths to absolute paths +# check if un-commenting the following lines works for you and let me know, Alex, neundorf@kde.org +# IF(${_filename} MATCHES "^[a-zA-Z]:\\\\") +# SET(${_abs_filename} ${_filename}) +# ELSE(${_filename} MATCHES "^[a-zA-Z]:\\\\") + SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) +# ENDIF(${_filename} MATCHES "^[a-zA-Z]:\\\\") ENDIF(${_filename} MATCHES "^/.+") - ENDMACRO(QT4_GET_ABS_PATH) + ENDMACRO(QT4_GET_ABS_PATH) - MACRO(QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + MACRO(QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) + SET(${_moc_INC_DIRS}) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - FOREACH(_current ${_inc_DIRS}) + FOREACH(_current ${_inc_DIRS}) SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - ENDFOREACH(_current ${_inc_DIRS}) - ENDMACRO(QT4_GET_MOC_INC_DIRS) + ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) MACRO(QT4_GENERATE_MOC infile outfile ) # get include dirs -- cgit v1.2.1 From d1a021f0cbc31f14a7b7a4f0fd047e089905da80 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 28 Jan 2006 16:58:37 +0000 Subject: -support QtSvg and QtTest Alex svn path=/trunk/KDE/kdelibs/; revision=503277 --- modules/FindQt4.cmake | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index edc438a9..8d5169b6 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -37,6 +37,8 @@ # QT_QTOPENGL_FOUND True if QtOpenGL was found. # QT_QTSQL_FOUND True if QtSql was found. # QT_QTXML_FOUND True if QtXml was found. +# QT_QTSVG_FOUND True if QtSvg was found. +# QT_QTTEST_FOUND True if QtTest was found. # # QT_DEFINITIONS Definitions to use when compiling code that # uses Qt. @@ -61,6 +63,8 @@ # QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" # QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" # QT_QTXML_INCLUDE_DIR Path to "include/QtXml" +# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" +# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" # # QT_LIBRARY_DIR Path to "lib" of Qt4 # @@ -75,6 +79,8 @@ # QT_QTOPENGL_LIBRARY Fullpath to QtOpenGL library # QT_QTSQL_LIBRARY Fullpath to QtSql library # QT_QTXML_LIBRARY Fullpath to QtXml library +# QT_QTSVG_LIBRARY Fullpath to QtSvg library +# QT_QTTEST_LIBRARY Fullpath to QtTest library # # QT_QT3SUPPORT_LIBRARY_DEBUG Fullpath to Qt3Support_debug library # QT_QTASSISTANT_LIBRARY_DEBUG Fullpath to QtAssistant_debug library @@ -87,6 +93,8 @@ # QT_QTOPENGL_LIBRARY_DEBUG Fullpath to QtOpenGL_debug # QT_QTSQL_LIBRARY_DEBUG Fullpath to QtSql_debug # QT_QTXML_LIBRARY_DEBUG Fullpath to QtXml_debug +# QT_QTSVG_LIBRARY_DEBUG Fullpath to QtSvg_debug +# QT_QTTEST_LIBRARY_DEBUG Fullpath to QtTest_debug # # also defined, but not for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. @@ -243,6 +251,19 @@ IF(QT4_QMAKE_FOUND) ${QT_LIBRARY_DIR}/QtGui.framework/Headers ) + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH( QT_QTSVG_INCLUDE_DIR QtSvg + ${QT_INCLUDE_DIR}/QtSvg + ${QT_LIBRARY_DIR}/QtSvg.framework/Headers + ) + + # Set QT_QTTEST_INCLUDE_DIR + FIND_PATH( QT_QTTEST_INCLUDE_DIR QtTest + ${QT_INCLUDE_DIR}/QtTest + ${QT_LIBRARY_DIR}/QtTest.framework/Headers + ) + + # Set QT_QTMOTIF_INCLUDE_DIR FIND_PATH( QT_QTMOTIF_INCLUDE_DIR QtMotif ${QT_INCLUDE_DIR}/QtMotif) @@ -332,6 +353,15 @@ IF(QT4_QMAKE_FOUND) CACHE STRING "The QtXml library.") SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") + SET(QT_QTSVG_LIBRARY "-framework QtSvg" + CACHE STRING "The QtSvg library.") + SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" + CACHE STRING "The QtSvg library.") + SET(QT_QTTEST_LIBRARY "-framework QtTest" + CACHE STRING "The QtTest library.") + SET(QT_QTTEST_LIBRARY_DEBUG "-framework QtTest" + CACHE STRING "The QtTest library.") + ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of @@ -395,6 +425,14 @@ IF(QT4_QMAKE_FOUND) # Set QT_QTXML_LIBRARY FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR}) FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTSVG_LIBRARY + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR}) + + # Set QT_QTTEST_LIBRARY + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTestd4 PATHS ${QT_LIBRARY_DIR}) ENDIF (QT_USE_FRAMEWORKS) @@ -448,6 +486,8 @@ IF(QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTOPENGL) _QT4_ADJUST_LIB_VARS(QTSQL) _QT4_ADJUST_LIB_VARS(QTXML) + _QT4_ADJUST_LIB_VARS(QTSVG) + _QT4_ADJUST_LIB_VARS(QTTEST) ####################################### # -- cgit v1.2.1 From f6763a5b8a691ce8c4320228d7f4f5e8354ec125 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Sat, 28 Jan 2006 21:59:13 +0000 Subject: look for libgif or libungif svn path=/trunk/KDE/kdelibs/; revision=503362 --- modules/FindGIF.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index b8b85e83..08c59a59 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -13,7 +13,7 @@ FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/local/include ) -FIND_LIBRARY(GIF_LIBRARY NAMES ungif +FIND_LIBRARY(GIF_LIBRARY NAMES gif ungif PATHS /usr/lib /usr/local/lib -- cgit v1.2.1 From 8f58cbe87706dcb835998a6f4302e9a056729fb5 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Sat, 28 Jan 2006 21:59:31 +0000 Subject: stupid non-framework QtTest svn path=/trunk/KDE/kdelibs/; revision=503363 --- modules/FindQt4.cmake | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8d5169b6..656dc36e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -325,9 +325,9 @@ IF(QT4_QMAKE_FOUND) IF (QT_USE_FRAMEWORKS) # If FIND_LIBRARY found libraries in Apple frameworks, we would not have # to jump through these hoops. - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" + SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") @@ -357,9 +357,11 @@ IF(QT4_QMAKE_FOUND) CACHE STRING "The QtSvg library.") SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTTEST_LIBRARY "-framework QtTest" + + # WTF? why don't we have frameworks? :P + SET(QT_QTTEST_LIBRARY "-lQtTest" CACHE STRING "The QtTest library.") - SET(QT_QTTEST_LIBRARY_DEBUG "-framework QtTest" + SET(QT_QTTEST_LIBRARY_DEBUG "-lQtTest" CACHE STRING "The QtTest library.") ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From af0e749d1b7be7b28556ee14ca9fba6ec387e33b Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Sat, 28 Jan 2006 22:04:49 +0000 Subject: work around some kjs stuff that assumes __APPLE__ == WEBKIT, also fix definitions for QT_AND_KDECORE_LIBS to get -L and -F svn path=/trunk/KDE/kdelibs/; revision=503366 --- modules/FindKDE4.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 77a407db..66d840d2 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -29,7 +29,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.2) IF(UNIX) IF(APPLE) - #MESSAGE(FATAL_ERROR "Mac OSX not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") + SET(PLATFORM_DEFINITIONS -D__APPLE_KDE__) ELSE(APPLE) FIND_PACKAGE(X11 REQUIRED) ENDIF(APPLE) @@ -40,11 +40,11 @@ ENDIF(UNIX) #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt4 REQUIRED) -SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) +SET(QT_AND_KDECORE_LIBS ${QT_DEFINITIONS} ${QT_QTCORE_LIBRARY} kdecore) #add some KDE specific stuff # not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -SET(KDE4_DEFINITIONS -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ) +SET(KDE4_DEFINITIONS -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ${PLATFORM_DEFINITIONS} ) #only on linux, but not e.g. on FreeBSD: -- cgit v1.2.1 From e8fe31826d1c34f9ffc5809cbb540eebf1f085a2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 29 Jan 2006 13:39:06 +0000 Subject: dont use /opt/kde4 hardcoded as KDE4DIR Alex svn path=/trunk/KDE/kdelibs/; revision=503508 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 66d840d2..654d53af 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -87,7 +87,7 @@ ENDIF(APPLE) #SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") -SET(KDE4_DIR /opt/kde4) +SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) SET(KDE4_APPS_DIR /share/applnk) SET(KDE4_CONFIG_DIR /share/config) -- cgit v1.2.1 From c5017f5fcf5b2c9846cea77be107c89f535d5df9 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Sun, 29 Jan 2006 16:51:22 +0000 Subject: mess with the path only or QtTest svn path=/trunk/KDE/kdelibs/; revision=503588 --- modules/FindKDE4.cmake | 2 +- modules/FindQt4.cmake | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 654d53af..09d1558b 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -40,7 +40,7 @@ ENDIF(UNIX) #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt4 REQUIRED) -SET(QT_AND_KDECORE_LIBS ${QT_DEFINITIONS} ${QT_QTCORE_LIBRARY} kdecore) +SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) #add some KDE specific stuff # not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 656dc36e..a6a4ddd3 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -325,9 +325,9 @@ IF(QT4_QMAKE_FOUND) IF (QT_USE_FRAMEWORKS) # If FIND_LIBRARY found libraries in Apple frameworks, we would not have # to jump through these hoops. - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} -framework QtCore" + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} -framework QtCore" + SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") @@ -359,9 +359,9 @@ IF(QT4_QMAKE_FOUND) CACHE STRING "The QtSvg library.") # WTF? why don't we have frameworks? :P - SET(QT_QTTEST_LIBRARY "-lQtTest" + SET(QT_QTTEST_LIBRARY "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") - SET(QT_QTTEST_LIBRARY_DEBUG "-lQtTest" + SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From 22bb447928da7e47a7f3599fc2233770eba8e2d7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 29 Jan 2006 17:38:21 +0000 Subject: -install dcopidl (dcopidl.bat on windows) -use the correct Qt do dir Alex svn path=/trunk/KDE/kdelibs/; revision=503606 --- modules/FindQt4.cmake | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a6a4ddd3..a32d80f9 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -102,6 +102,9 @@ # QT_UIC3_EXECUTABLE Where to find the uic3 tool. # QT_RCC_EXECUTABLE Where to find the rcc tool # +# QT_DOC_DIR Path to "doc" of Qt4 +# +# # These are around for backwards compatibility # they will be set # QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found @@ -186,7 +189,7 @@ IF(QT4_QMAKE_FOUND) # ######################################## IF (NOT QT_HEADERS_DIR) - # Set QT_QT_INCLUDE_DIR by searching for qglobal.h + # Set QT_QT_INCLUDE_DIR by searching for the QtGlobal header IF(QT_QMAKE_EXECUTABLE) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" @@ -198,7 +201,7 @@ IF(QT4_QMAKE_FOUND) SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) - FIND_PATH( QT_QT_INCLUDE_DIR qglobal.h + FIND_PATH( QT_QT_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/Qt" ${QT_PATH_INCLUDE} ${QT_HEADERS_DIR}/Qt @@ -223,10 +226,20 @@ IF(QT4_QMAKE_FOUND) ENDIF( QT_QT_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) IF( NOT QT_INCLUDE_DIR) IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could not find qglobal.h") + MESSAGE( FATAL_ERROR "Could not find QtGlobal header") ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) + + FIND_PATH( QT_DOC_DIR /html/qcoreapplication.html + ${QT_PATH_INCLUDE} + $ENV{QTDIR}/doc + /usr/local/qt/doc + /usr/lib/qt/doc + /usr/share/qt4/doc + "C:/Program Files/qt/doc" + ) + IF (QT_USE_FRAMEWORKS) SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} @@ -256,7 +269,7 @@ IF(QT4_QMAKE_FOUND) ${QT_INCLUDE_DIR}/QtSvg ${QT_LIBRARY_DIR}/QtSvg.framework/Headers ) - + # Set QT_QTTEST_INCLUDE_DIR FIND_PATH( QT_QTTEST_INCLUDE_DIR QtTest ${QT_INCLUDE_DIR}/QtTest @@ -363,7 +376,7 @@ IF(QT4_QMAKE_FOUND) CACHE STRING "The QtTest library.") SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") - + ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of @@ -427,11 +440,11 @@ IF(QT4_QMAKE_FOUND) # Set QT_QTXML_LIBRARY FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR}) FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR}) - + # Set QT_QTSVG_LIBRARY FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR}) FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR}) - + # Set QT_QTTEST_LIBRARY FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTestd4 PATHS ${QT_LIBRARY_DIR}) @@ -459,16 +472,16 @@ IF(QT4_QMAKE_FOUND) IF (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) ENDIF (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) - + # if only the debug version was found, set the release variable also to the debug version IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) - + IF (QT_${basename}_LIBRARY) SET(QT_${basename}_FOUND 1) ENDIF (QT_${basename}_LIBRARY) - + #add the include directory to QT_INCLUDES SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") ENDIF (QT_${basename}_INCLUDE_DIR ) @@ -503,7 +516,7 @@ IF(QT4_QMAKE_FOUND) OUTPUT_VARIABLE qt_bins ) SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") ENDIF (NOT QT_BINARY_DIR) - + # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, # which might be a Qt3 qmake FIND_PROGRAM(QT_MOC_EXECUTABLE -- cgit v1.2.1 From 2f0842c4d9419a47aa1637909fc68cb709116690 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 29 Jan 2006 19:03:31 +0000 Subject: aspell/hspell support by Laurent Montel Alex svn path=/trunk/KDE/kdelibs/; revision=503634 --- modules/FindASPELL.cmake | 35 +++++++++++++++++++++++++++++++++++ modules/FindHSPELL.cmake | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) create mode 100644 modules/FindASPELL.cmake create mode 100644 modules/FindHSPELL.cmake (limited to 'modules') diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake new file mode 100644 index 00000000..427b581d --- /dev/null +++ b/modules/FindASPELL.cmake @@ -0,0 +1,35 @@ +# - Try to find ASPELL +# Once done this will define +# +# ASPELL_FOUND - system has ASPELL +# ASPELL_INCLUDE_DIR - the ASPELL include directory +# ASPELL_LIBRARY - Link these to use OpenGL and GLU +# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL +# + + +FIND_PATH(ASPELL_INCLUDE_DIR aspell.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(ASPELL_LIBRARY NAMES aspell + PATHS + /usr/lib + /usr/local/lib +) + +IF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY) + SET(ASPELL_FOUND TRUE) +ENDIF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY) + +IF(ASPELL_FOUND) + IF(NOT ASPELL_FIND_QUIETLY) + MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARY}") + ENDIF(NOT ASPELL_FIND_QUIETLY) +ELSE(ASPELL_FOUND) + IF(ASPELL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find ASPELL") + ENDIF(ASPELL_FIND_REQUIRED) +ENDIF(ASPELL_FOUND) + diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake new file mode 100644 index 00000000..5a5576e3 --- /dev/null +++ b/modules/FindHSPELL.cmake @@ -0,0 +1,35 @@ +# - Try to find HSPELL +# Once done this will define +# +# HSPELL_FOUND - system has HSPELL +# HSPELL_INCLUDE_DIR - the HSPELL include directory +# HSPELL_LIBRARY - Link these to use OpenGL and GLU +# HSPELL_DEFINITIONS - Compiler switches required for using HSPELL +# + + +FIND_PATH(HSPELL_INCLUDE_DIR hspell.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(HSPELL_LIBRARY NAMES hspell + PATHS + /usr/lib + /usr/local/lib +) + +IF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARY) + SET(HSPELL_FOUND TRUE) +ENDIF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARY) + +IF(HSPELL_FOUND) + IF(NOT HSPELL_FIND_QUIETLY) + MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARY}") + ENDIF(NOT HSPELL_FIND_QUIETLY) +ELSE(HSPELL_FOUND) + IF(HSPELL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find HSPELL") + ENDIF(HSPELL_FIND_REQUIRED) +ENDIF(HSPELL_FOUND) + -- cgit v1.2.1 From 667a03d2082372d02ee661f716b764baa028f2a8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 29 Jan 2006 22:03:40 +0000 Subject: prepare support for the windows port update the kde3 cmake files Alex svn path=/trunk/KDE/kdelibs/; revision=503684 --- modules/FindKDE3.cmake | 10 ++-- modules/FindKDE4.cmake | 69 +++++++++++++---------- modules/FindQt4.cmake | 26 +++++---- modules/KDE3Macros.cmake | 143 +++++++++++++++++++++++++++-------------------- 4 files changed, 141 insertions(+), 107 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index f5be090d..dba73688 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -31,7 +31,8 @@ SET(QT_MT_REQUIRED TRUE) #SET(QT_MIN_VERSION "3.0.0") #this line includes FindQt.cmake, which searches the Qt library and headers -INCLUDE(FindQt3) +FIND_PACKAGE(Qt3 REQUIRED) +FIND_PACKAGE(X11 REQUIRED) #add the definitions found by FindQt to the current definitions #ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) @@ -42,9 +43,9 @@ SET(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) SET(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common) #only on linux, but not e.g. on FreeBSD: -IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") +IF(CMAKE_SYSTEM_NAME MATCHES "Linux") SET(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) -ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") +ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux") #SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") @@ -65,7 +66,8 @@ FIND_PATH(KDE3_INCLUDE_DIR kurl.h ) #now the KDE library directory -FIND_PATH(KDE3_LIB_DIR libkdecore.so +FIND_LIBRARY(KDE3_LIB_DIR NAMES kdecore + PATHS $ENV{KDEDIR}/lib /opt/kde/lib /opt/kde3/lib diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 09d1558b..d1c0886c 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -27,24 +27,34 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.2) -IF(UNIX) - IF(APPLE) - SET(PLATFORM_DEFINITIONS -D__APPLE_KDE__) - ELSE(APPLE) - FIND_PACKAGE(X11 REQUIRED) - ENDIF(APPLE) -ELSE(UNIX) - MESSAGE(FATAL_ERROR "Win32 not yet supported by FindKDE4.cmake and KDE4Macros.cmake, please edit them as required") -ENDIF(UNIX) - #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt4 REQUIRED) SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) -#add some KDE specific stuff -# not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -SET(KDE4_DEFINITIONS -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ${PLATFORM_DEFINITIONS} ) + +# this will move into Windows-cl.cmake +IF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") + SET(MSVC TRUE) +ENDIF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") + +##################### and now the platform specific stuff ############################ + +IF(UNIX AND NOT APPLE) + FIND_PACKAGE(X11 REQUIRED) +ENDIF(UNIX AND NOT APPLE) + +IF(CYGWIN) + MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") +ENDIF(CYGWIN) + +IF(MINGW) + MESSAGE(FATAL_ERROR "Support for MinGW not yet implemented, please edit FindKDE4.cmake to enable it") +ENDIF(MINGW) + +IF(MSVC) + MESSAGE(FATAL_ERROR "Support for MSVC is not yet implemented, please edit FindKDE4.cmake to enable it") +ENDIF(MSVC) #only on linux, but not e.g. on FreeBSD: @@ -56,16 +66,20 @@ IF(CMAKE_SYSTEM_NAME MATCHES Linux) SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) -IF(CMAKE_SYSTEM_NAME MATCHES FreeBSD) +# works on FreeBSD, not tested on NetBSD and OpenBSD +IF(CMAKE_SYSTEM_NAME MATCHES BSD) SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_GNU_SOURCE) SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") SET(CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -ENDIF(CMAKE_SYSTEM_NAME MATCHES FreeBSD) +ENDIF(CMAKE_SYSTEM_NAME MATCHES BSD) # This will need to be modified later to support either Qt/X11 or Qt/Mac builds IF(APPLE) + + SET(PLATFORM_DEFINITIONS -D__APPLE_KDE__) + # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow # -undefined dynamic_lookup; in the future we should do this programmatically # hmm... why doesn't this work? @@ -84,11 +98,14 @@ IF(APPLE) SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") ENDIF(APPLE) +########### end of platform specific stuff ########################## -#SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") +#add some KDE specific stuff +# not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT +SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ${PLATFORM_DEFINITIONS} ) -SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) +SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) SET(KDE4_APPS_DIR /share/applnk) SET(KDE4_CONFIG_DIR /share/config) SET(KDE4_DATA_DIR /share/apps) @@ -128,7 +145,8 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - #at first the KDE include direcory + # at first the KDE include direcory + # this should better check for a header which didn't exist in KDE < 4 FIND_PATH(KDE4_INCLUDE_DIR kurl.h $ENV{KDEDIR}/include /opt/kde/include @@ -139,8 +157,9 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) /usr/local/include/kde ) - #now the KDE library directory - FIND_PATH(KDE4_LIB_DIR libkdecore.so + # now the KDE library directory, kxmlcore is new with KDE4 + FIND_LIBRARY(KDE4_LIB_DIR NAMES kxmlcore + PATHS $ENV{KDEDIR}/lib /opt/kde/lib /opt/kde4/lib @@ -148,14 +167,6 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) /usr/local/lib ) -#now the KDE service types directory -#FIND_PATH(KDE4_SERVICETYPES_DIR ktexteditor.desktop -# $ENV{KDEDIR}/share/servicetypes/ -# /opt/kde/share/servicetypes/ -# /opt/kde4/share/servicetypes/ -#) - - #now search for the dcop utilities FIND_PROGRAM(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS $ENV{KDEDIR}/bin @@ -241,6 +252,4 @@ ENDIF (NOT KDE4_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path SET(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${X11_INCLUDE_DIR} ) -#INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR} ${KDE4_INCLUDE_DIR} .) -#LINK_DIRECTORIES(${KDE4_LIB_DIR}) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a32d80f9..cd01782a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -607,21 +607,23 @@ IF(QT4_QMAKE_FOUND) # ###################################### + # this function takes a relative or absolute filename as argument in _filename + # and returns the absolute path in _abs_filename +# it should work both with UNIX and Windows paths (Windows not tested), Alex MACRO(QT4_GET_ABS_PATH _abs_filename _filename) - IF(${_filename} MATCHES "^/.+") - SET(${_abs_filename} ${_filename}) - ELSE(${_filename} MATCHES "^/.+") -# if you are on windows and have problems converting relative paths to absolute paths -# check if un-commenting the following lines works for you and let me know, Alex, neundorf@kde.org -# IF(${_filename} MATCHES "^[a-zA-Z]:\\\\") -# SET(${_abs_filename} ${_filename}) -# ELSE(${_filename} MATCHES "^[a-zA-Z]:\\\\") - SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) -# ENDIF(${_filename} MATCHES "^[a-zA-Z]:\\\\") - ENDIF(${_filename} MATCHES "^/.+") + IF(${_filename} MATCHES "^([a-zA-Z]:)?/.+") + SET(${_abs_filename} ${_filename}) + ELSE(${_filename} MATCHES "^([a-zA-Z]:)?/.+") + SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) + ENDIF(${_filename} MATCHES "^([a-zA-Z]:)?/.+") +# the previous version, works only with UNIX paths +# IF(${_filename} MATCHES "^/.+") +# SET(${_abs_filename} ${_filename}) +# ELSE(${_filename} MATCHES "^/.+") +# SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) +# ENDIF(${_filename} MATCHES "^/.+") ENDMACRO(QT4_GET_ABS_PATH) - MACRO(QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) SET(${_moc_INC_DIRS}) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index 78b94fce..077771d3 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -18,7 +18,7 @@ #this should better be part of cmake: #add an additional file to the list of files a source file depends on -MACRO(ADD_FILE_DEPENDANCY file) +MACRO(KDE3_ADD_FILE_DEPENDANCY file) GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) IF (_deps) @@ -29,29 +29,48 @@ MACRO(ADD_FILE_DEPENDANCY file) SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") -ENDMACRO(ADD_FILE_DEPENDANCY) +ENDMACRO(KDE3_ADD_FILE_DEPENDANCY) +MACRO(KDE3_GET_ABS_PATH _abs_filename _filename) + IF(${_filename} MATCHES "^/.+") + SET(${_abs_filename} ${_filename}) + ELSE(${_filename} MATCHES "^/.+") + SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) + ENDIF(${_filename} MATCHES "^/.+") +ENDMACRO(KDE3_GET_ABS_PATH) #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) MACRO(KDE3_ADD_DCOP_SKELS _sources) FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) - SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel_skel.cpp) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.kidl) + KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} - COMMAND ${KDE3_DCOPIDL_EXECUTABLE} - ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} - ) + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - ADD_CUSTOM_COMMAND(OUTPUT ${_skel} - COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} - DEPENDS ${_kidl} - ) + SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + + IF (NOT HAVE_${_basename}_KIDL_RULE) + SET(HAVE_${_basename}_KIDL_RULE ON) + + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE3_DCOPIDL_EXECUTABLE} + ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} + DEPENDS ${_tmp_FILE} + ) + ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + + IF (NOT HAVE_${_basename}_SKEL_RULE) + SET(HAVE_${_basename}_SKEL_RULE ON) + + ADD_CUSTOM_COMMAND(OUTPUT ${_skel} + COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} + DEPENDS ${_kidl} + ) + + ENDIF (NOT HAVE_${_basename}_SKEL_RULE) SET(${_sources} ${${_sources}} ${_skel}) @@ -62,29 +81,36 @@ ENDMACRO(KDE3_ADD_DCOP_SKELS) MACRO(KDE3_ADD_DCOP_STUBS _sources) FOREACH (_current_FILE ${ARGN}) - IF(${_current_FILE} MATCHES "^/.+") #abs path - SET(_tmp_FILE ${_current_FILE}) - ELSE(${_current_FILE} MATCHES "^/.+") - SET(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) - ENDIF(${_current_FILE} MATCHES "^/.+") + KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) -# SET(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.kidl) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} - COMMAND ${KDE3_DCOPIDL_EXECUTABLE} - ARGS ${tmp_FILE} > ${_kidl} - DEPENDS ${tmp_FILE} - ) + IF (NOT HAVE_${_basename}_KIDL_RULE) + SET(HAVE_${_basename}_KIDL_RULE ON) + + + ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + COMMAND ${KDE3_DCOPIDL_EXECUTABLE} + ARGS ${tmp_FILE} > ${_kidl} + DEPENDS ${tmp_FILE} + ) + + ENDIF (NOT HAVE_${_basename}_KIDL_RULE) - ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} - COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} - DEPENDS ${_kidl} - ) + + IF (NOT HAVE_${_basename}_STUB_RULE) + SET(HAVE_${_basename}_STUB_RULE ON) + + ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} + COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} + ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} + DEPENDS ${_kidl} + ) + + ENDIF (NOT HAVE_${_basename}_STUB_RULE) SET(${_sources} ${${_sources}} ${_stub_CPP}) @@ -95,11 +121,7 @@ ENDMACRO(KDE3_ADD_DCOP_STUBS) MACRO(KDE3_ADD_KCFG_FILES _sources) FOREACH (_current_FILE ${ARGN}) - IF(${_current_FILE} MATCHES "^/.+") #abs path - SET(_tmp_FILE ${_current_FILE}) - ELSE(${_current_FILE} MATCHES "^/.+") - SET(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) - ENDIF(${_current_FILE} MATCHES "^/.+") + KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) @@ -112,7 +134,7 @@ MACRO(KDE3_ADD_KCFG_FILES _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE3_KCFGC_EXECUTABLE} ARGS ${_kcfg_FILE} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} ) + DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ) SET(${_sources} ${${_sources}} ${_src_FILE}) @@ -125,14 +147,16 @@ ENDMACRO(KDE3_ADD_KCFG_FILES) #usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) MACRO(KDE3_ADD_MOC_FILES _sources) FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) - GET_FILENAME_COMPONENT(_path ${_current_FILE} PATH) + + KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -o ${_moc} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + ARGS ${_tmp_FILE} -o ${_moc} + DEPENDS ${_tmp_FILE} ) SET(${_sources} ${${_sources}} ${_moc}) @@ -146,7 +170,10 @@ ENDMACRO(KDE3_ADD_MOC_FILES) MACRO(KDE3_ADD_UI_FILES _sources ) FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) + KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + + GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) @@ -154,7 +181,7 @@ MACRO(KDE3_ADD_UI_FILES _sources ) ADD_CUSTOM_COMMAND(OUTPUT ${_header} COMMAND ${QT_UIC_EXECUTABLE} ARGS -nounload -o ${_header} ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + DEPENDS ${_tmp_FILE} ) # ADD_CUSTOM_COMMAND(OUTPUT ${_src} @@ -166,7 +193,7 @@ MACRO(KDE3_ADD_UI_FILES _sources ) ADD_CUSTOM_COMMAND(OUTPUT ${_src} COMMAND ${CMAKE_COMMAND} ARGS - -DKDE_UIC_FILE:STRING=${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} + -DKDE_UIC_FILE:STRING=${_tmp_FILE} -DKDE_UIC_CPP_FILE:STRING=${_src} -DKDE_UIC_H_FILE:STRING=${_header} -P ${CMAKE_ROOT}/Modules/kde3uic.cmake @@ -187,15 +214,13 @@ ENDMACRO(KDE3_ADD_UI_FILES) MACRO(KDE3_AUTOMOC) SET(_matching_FILES ) FOREACH (_current_FILE ${ARGN}) - IF (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) - FILE(READ ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} _contents) + KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + + IF (EXISTS ${_tmp_FILE}) + + FILE(READ ${_tmp_FILE} _contents) - IF(${_current_FILE} MATCHES "^/.+") - SET(_tmp_FILE ${_current_FILE}) - ELSE(${_current_FILE} MATCHES "^/.+") - SET(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) - ENDIF(${_current_FILE} MATCHES "^/.+") GET_FILENAME_COMPONENT(_abs_FILE ${_tmp_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) @@ -215,7 +240,7 @@ MACRO(KDE3_AUTOMOC) DEPENDS ${_header} ) - ADD_FILE_DEPENDANCY(${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} ${_moc}) + KDE3_ADD_FILE_DEPENDANCY(${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) ENDIF(_match) @@ -227,8 +252,8 @@ ENDMACRO(KDE3_AUTOMOC) MACRO(KDE3_INSTALL_ICONS _theme) ADD_CUSTOM_TARGET(install_icons ) SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) - FILE(WRITE install_icons.cmake "# icon installations rules\n") - FILE(APPEND install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") FILE(GLOB _icons *.png) FOREACH(_current_ICON ${_icons} ) @@ -260,15 +285,12 @@ MACRO(KDE3_INSTALL_ICONS _theme) # MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") ENDFOREACH (_current_ICON) ENDMACRO(KDE3_INSTALL_ICONS _theme) -MACRO(KDE3_PLACEHOLDER) -ENDMACRO(KDE3_PLACEHOLDER) - MACRO(KDE3_CREATE_LIBTOOL_FILE _target) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) @@ -339,7 +361,6 @@ MACRO(KDE3_ADD_KLM _target_NAME ) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) ELSE (KDE3_ENABLE_FINAL) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) - MESSAGE(STATUS "klm: kdeinit_${_target_NAME}") ENDIF (KDE3_ENABLE_FINAL) CONFIGURE_FILE(${CMAKE_ROOT}/Modules/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) -- cgit v1.2.1 From 30b434ee1cd1d737966aea29d73796d85e52ba1c Mon Sep 17 00:00:00 2001 From: Christian Loose Date: Mon, 30 Jan 2006 18:07:00 +0000 Subject: fix ENDIF svn path=/trunk/KDE/kdelibs/; revision=503889 --- modules/KDE3Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index 077771d3..e4b1316c 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -245,7 +245,7 @@ MACRO(KDE3_AUTOMOC) ENDFOREACH (_current_MOC_INC) ENDIF(_match) - ENDIF (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) + ENDIF (EXISTS ${_tmp_FILE}) ENDFOREACH (_current_FILE) ENDMACRO(KDE3_AUTOMOC) -- cgit v1.2.1 From 10737fbf2dcd3e569ecc896bdb6053e20ed579d8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 30 Jan 2006 23:01:48 +0000 Subject: -generate the xml kate files on demand during the build, not during cmake time -add a CMakeLists.txt for windows -check for another agg header Alex svn path=/trunk/KDE/kdelibs/; revision=503989 --- modules/FindAGG.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 6dc61dfe..8d294b18 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -16,7 +16,7 @@ PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) SET(AGG_DEFINITIONS ${_AGGCflags}) -FIND_PATH(AGG_INCLUDE_DIR agg2/agg_conv_stroke.h +FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h ${_AGGIncDir} /usr/include /usr/local/include -- cgit v1.2.1 From f4f6ec39cdd7fb8a767fe46cfd10c8cdc560f2c5 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 31 Jan 2006 10:11:55 +0000 Subject: Add test for dnssd lib svn path=/trunk/KDE/kdelibs/; revision=504066 --- modules/FindDNSSD.cmake | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 modules/FindDNSSD.cmake (limited to 'modules') diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake new file mode 100644 index 00000000..466dd3f2 --- /dev/null +++ b/modules/FindDNSSD.cmake @@ -0,0 +1,36 @@ +# - Try to find DNSSD +# Once done this will define +# +# DNSSD_FOUND - system has DNSSD +# DNSSD_INCLUDE_DIR - the DNSSD include directory +# DNSSD_LIBRARY - Link these to use dnssd +# DNSSD_DEFINITIONS - Compiler switches required for using DNSSD +# +# need more test: look at into dnssd/configure.in.in + +FIND_PATH(DNSSD_INCLUDE_DIR dns_sd.h + /usr/include + /usr/local/include + /usr/include/avahi-compat-libdns_sd/ +) + +FIND_LIBRARY(DNSSD_LIBRARY NAMES dns_sd + PATHS + /usr/lib + /usr/local/lib +) + +IF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARY) + SET(DNSSD_FOUND TRUE) +ENDIF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARY) + +IF(DNSSD_FOUND) + IF(NOT DNSSD_FIND_QUIETLY) + MESSAGE(STATUS "Found DNSSD: ${DNSSD_LIBRARY}") + ENDIF(NOT DNSSD_FIND_QUIETLY) +ELSE(DNSSD_FOUND) + IF(DNSSD_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find DNSSD") + ENDIF(DNSSD_FIND_REQUIRED) +ENDIF(DNSSD_FOUND) + -- cgit v1.2.1 From 85fb81dd64b58d3ce6c4a581e3057bb99732b2a5 Mon Sep 17 00:00:00 2001 From: Christian Loose Date: Tue, 31 Jan 2006 19:33:58 +0000 Subject: fix source_dir != build_dir: call kconfig_compiler for .kcfg file in source_dir svn path=/trunk/KDE/kdelibs/; revision=504325 --- modules/KDE3Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index e4b1316c..58f02ce6 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -133,7 +133,7 @@ MACRO(KDE3_ADD_KCFG_FILES _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE3_KCFGC_EXECUTABLE} - ARGS ${_kcfg_FILE} ${_tmp_FILE} + ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ) SET(${_sources} ${${_sources}} ${_src_FILE}) -- cgit v1.2.1 From ff3c21d2e0fe6b0accd73fa0dd54ac881a7c3fbe Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 31 Jan 2006 20:23:33 +0000 Subject: new cmake macro OptionalFindPackage.cmake featuring the new command optional_find_package() e.g. optional_find_package( ZLIB) is the same as option(WITH_ZLIB "Search for ZLIB package" ON) if (WITH_ZLIB) find_package(ZLIB) endif (WITH_ZLIB) This has the effect that all packages which are searched using this new command can be manually disabled using "cmake -DWITH_=OFF" (or using the cmake GUI) This can be used to disable a package although it exists on the system. The result _FOUND can be used as usual with find_package() for further testing in the CMakeLists.txt Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=504336 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/OptionalFindPackage.cmake | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 modules/OptionalFindPackage.cmake (limited to 'modules') diff --git a/modules/OptionalFindPackage.cmake b/modules/OptionalFindPackage.cmake new file mode 100644 index 00000000..2642a993 --- /dev/null +++ b/modules/OptionalFindPackage.cmake @@ -0,0 +1,16 @@ +# - OPTIONAL_FIND_PACKAGE() combines FIND_PACKAGE() with an OPTION() +# OPTIONAL_FIND_PACKAGE( [QUIT] ) +# This macro is a combination of OPTION() and FIND_PACKAGE(), it +# works like FIND_PACKAGE(), but additionally it automatically creates +# an option name WITH_, which can be disabled via the cmake GUI. +# or via -DWITH_=OFF +# The standard _FOUND variables can be used in the same way +# as when using the normal FIND_PACKAGE() + +MACRO(OPTIONAL_FIND_PACKAGE _name ) + OPTION(WITH_${_name} "Search for ${_name} package" ON) + IF (WITH_${_name}) + FIND_PACKAGE(${_name} ${ARGN}) + ENDIF (WITH_${_name}) +ENDMACRO(OPTIONAL_FIND_PACKAGE) + -- cgit v1.2.1 From bbbe989cbf38611650e71513f1865b8c8c5597f0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 31 Jan 2006 21:50:05 +0000 Subject: -DLEAN_AND_MEAN for windows -search for kdewin32 library on windows Alex svn path=/trunk/KDE/kdelibs/; revision=504372 --- modules/FindKDE4.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index d1c0886c..7cfe9c14 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -53,7 +53,11 @@ IF(MINGW) ENDIF(MINGW) IF(MSVC) - MESSAGE(FATAL_ERROR "Support for MSVC is not yet implemented, please edit FindKDE4.cmake to enable it") + FIND_LIBRARY(KDE4_KDEWIN32_LIBRARY NAMES kdewin32) + IF (NOT KDE4_WIN32_LIBRARY) + MESSAGE(FATAL_ERROR "Could not find kdewin32 library, make sure to build and install kdelibs/win/ first" ) + ENDIF (NOT KDE4_WIN32_LIBRARY) + SET(QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDE4_KDEWIN32_LIBRARY}) ENDIF(MSVC) -- cgit v1.2.1 From c3f3de43934521c05c9744c67743ac2a87d31996 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 1 Feb 2006 16:47:58 +0000 Subject: Add module to find png lib svn path=/trunk/KDE/kdelibs/; revision=504646 --- modules/FindPNG.cmake | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 modules/FindPNG.cmake (limited to 'modules') diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake new file mode 100644 index 00000000..1442bbcf --- /dev/null +++ b/modules/FindPNG.cmake @@ -0,0 +1,35 @@ +# - Try to find PNG +# Once done this will define +# +# PNG_FOUND - system has PNG +# PNG_INCLUDE_DIR - the PNG include directory +# PNG_LIBRARY - Link these to use OpenGL and GLU +# PNG_DEFINITIONS - Compiler switches required for using PNG +# + + +FIND_PATH(PNG_INCLUDE_DIR png.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(PNG_LIBRARY NAMES png + PATHS + /usr/lib + /usr/local/lib +) + +IF(PNG_INCLUDE_DIR AND PNG_LIBRARY) + SET(PNg_FOUND TRUE) +ENDIF(PNG_INCLUDE_DIR AND PNG_LIBRARY) + +IF(PNG_FOUND) + IF(NOT PNG_FIND_QUIETLY) + MESSAGE(STATUS "Found PNG: ${PNG_LIBRARY}") + ENDIF(NOT PNG_FIND_QUIETLY) +ELSE(PNG_FOUND) + IF(PNG_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find PNG") + ENDIF(PNG_FIND_REQUIRED) +ENDIF(PNG_FOUND) + -- cgit v1.2.1 From e508911ab6bf5fea45a4189e4742e831e97cb2c7 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 1 Feb 2006 17:19:10 +0000 Subject: Fix typo svn path=/trunk/KDE/kdelibs/; revision=504651 --- modules/FindPNG.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake index 1442bbcf..87c53060 100644 --- a/modules/FindPNG.cmake +++ b/modules/FindPNG.cmake @@ -20,7 +20,7 @@ FIND_LIBRARY(PNG_LIBRARY NAMES png ) IF(PNG_INCLUDE_DIR AND PNG_LIBRARY) - SET(PNg_FOUND TRUE) + SET(PNG_FOUND TRUE) ENDIF(PNG_INCLUDE_DIR AND PNG_LIBRARY) IF(PNG_FOUND) -- cgit v1.2.1 From 393c61e5f8f741fdfb8b1f8e079b64d7a81bf262 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 1 Feb 2006 17:28:32 +0000 Subject: Define "KDE4_SYSCONF_DIR" which is '/etc' by default but now we can redefine it svn path=/trunk/KDE/kdelibs/; revision=504653 --- modules/FindKDE4.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 7cfe9c14..0db4b226 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -110,6 +110,7 @@ SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_ SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) +SET(KDE4_SYSCONF_DIR ${CMAKE_INSTALL_SYSCONF}) SET(KDE4_APPS_DIR /share/applnk) SET(KDE4_CONFIG_DIR /share/config) SET(KDE4_DATA_DIR /share/apps) @@ -128,6 +129,9 @@ SET(KDE4_WALLPAPER_DIR /share/wallpapers) SET(XDG_APPS_DIR /share/applications/kde) SET(XDG_DIRECTORY_DIR /share/desktop-directories) +IF(NOT KDE4_SYSCONF_DIR) + SET(KDE4_SYSCONF_DIR /etc) +ENDIF(NOT KDE4_SYSCONF_DIR) #now try to find some kde stuff -- cgit v1.2.1 From bd325b32bcd1ca1004d615a9c3f90c395d46d16f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 1 Feb 2006 17:39:19 +0000 Subject: Now we can define pos of mandir/infodir svn path=/trunk/KDE/kdelibs/; revision=504656 --- modules/FindKDE4.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 0db4b226..839a0f00 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -111,6 +111,8 @@ SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_ SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) SET(KDE4_SYSCONF_DIR ${CMAKE_INSTALL_SYSCONF}) +SET(KDE4_MAN_DIR ${CMAKE_INSTALL_MAN}) +SET(KDE4_INFO_DIR ${CMAKE_INSTALL_INFO}) SET(KDE4_APPS_DIR /share/applnk) SET(KDE4_CONFIG_DIR /share/config) SET(KDE4_DATA_DIR /share/apps) @@ -133,6 +135,15 @@ IF(NOT KDE4_SYSCONF_DIR) SET(KDE4_SYSCONF_DIR /etc) ENDIF(NOT KDE4_SYSCONF_DIR) +IF(NOT KDE4_MAN_DIR) + SET(KDE4_MAN_DIR /man) +ENDIF(NOT KDE4_INFO_DIR) + +IF(NOT KDE4_INFO_DIR) + SET(KDE4_INFO_DIR /info) +ENDIF(NOT KDE4_INFO_DIR) + + #now try to find some kde stuff #are we trying to compile kdelibs ? -- cgit v1.2.1 From 42a2e149e75301f00dc72fd19ef4fe20725c624e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 1 Feb 2006 18:03:40 +0000 Subject: Alexander is right, cmake have a png module svn path=/trunk/KDE/kdelibs/; revision=504660 --- modules/FindPNG.cmake | 35 ----------------------------------- 1 file changed, 35 deletions(-) delete mode 100644 modules/FindPNG.cmake (limited to 'modules') diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake deleted file mode 100644 index 87c53060..00000000 --- a/modules/FindPNG.cmake +++ /dev/null @@ -1,35 +0,0 @@ -# - Try to find PNG -# Once done this will define -# -# PNG_FOUND - system has PNG -# PNG_INCLUDE_DIR - the PNG include directory -# PNG_LIBRARY - Link these to use OpenGL and GLU -# PNG_DEFINITIONS - Compiler switches required for using PNG -# - - -FIND_PATH(PNG_INCLUDE_DIR png.h - /usr/include - /usr/local/include -) - -FIND_LIBRARY(PNG_LIBRARY NAMES png - PATHS - /usr/lib - /usr/local/lib -) - -IF(PNG_INCLUDE_DIR AND PNG_LIBRARY) - SET(PNG_FOUND TRUE) -ENDIF(PNG_INCLUDE_DIR AND PNG_LIBRARY) - -IF(PNG_FOUND) - IF(NOT PNG_FIND_QUIETLY) - MESSAGE(STATUS "Found PNG: ${PNG_LIBRARY}") - ENDIF(NOT PNG_FIND_QUIETLY) -ELSE(PNG_FOUND) - IF(PNG_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find PNG") - ENDIF(PNG_FIND_REQUIRED) -ENDIF(PNG_FOUND) - -- cgit v1.2.1 From d72bf10601afd072a9405c430b6711a5db7d2b94 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 1 Feb 2006 18:25:19 +0000 Subject: Fix to use KDE4_* and CACHE STRING to define what is the usefull of macro svn path=/trunk/KDE/kdelibs/; revision=504665 --- modules/FindKDE4.cmake | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 839a0f00..127727e5 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -110,9 +110,9 @@ SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_ SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) -SET(KDE4_SYSCONF_DIR ${CMAKE_INSTALL_SYSCONF}) -SET(KDE4_MAN_DIR ${CMAKE_INSTALL_MAN}) -SET(KDE4_INFO_DIR ${CMAKE_INSTALL_INFO}) +#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_APPS_DIR /share/applnk) SET(KDE4_CONFIG_DIR /share/config) SET(KDE4_DATA_DIR /share/apps) @@ -131,17 +131,6 @@ SET(KDE4_WALLPAPER_DIR /share/wallpapers) SET(XDG_APPS_DIR /share/applications/kde) SET(XDG_DIRECTORY_DIR /share/desktop-directories) -IF(NOT KDE4_SYSCONF_DIR) - SET(KDE4_SYSCONF_DIR /etc) -ENDIF(NOT KDE4_SYSCONF_DIR) - -IF(NOT KDE4_MAN_DIR) - SET(KDE4_MAN_DIR /man) -ENDIF(NOT KDE4_INFO_DIR) - -IF(NOT KDE4_INFO_DIR) - SET(KDE4_INFO_DIR /info) -ENDIF(NOT KDE4_INFO_DIR) #now try to find some kde stuff -- cgit v1.2.1 From 140992a24a239340886832fd055ae46453c8920b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Feb 2006 21:14:03 +0000 Subject: -FindQt4.cmake now checks first for include/QtCore, and only optionally for include/Qt/ -some tweaks for windows ... quite hard to do if you neither can test it nor know how it should work... Alex svn path=/trunk/KDE/kdelibs/; revision=504695 --- modules/FindKDE4.cmake | 158 ++++++++++++++++++++++++++----------------------- modules/FindQt4.cmake | 47 ++++++++------- 2 files changed, 107 insertions(+), 98 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 127727e5..47b7d9b1 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -23,6 +23,9 @@ # KDE4_ADD_KPART # KDE4_ADD_KLM # KDE4_ADD_EXECUTABLE +# +# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally +# _KDE4_PLATFORM_DEFINITIONS is used only internally CMAKE_MINIMUM_REQUIRED(VERSION 2.2) @@ -32,81 +35,7 @@ FIND_PACKAGE(Qt4 REQUIRED) SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) - -# this will move into Windows-cl.cmake -IF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") - SET(MSVC TRUE) -ENDIF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") - -##################### and now the platform specific stuff ############################ - -IF(UNIX AND NOT APPLE) - FIND_PACKAGE(X11 REQUIRED) -ENDIF(UNIX AND NOT APPLE) - -IF(CYGWIN) - MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") -ENDIF(CYGWIN) - -IF(MINGW) - MESSAGE(FATAL_ERROR "Support for MinGW not yet implemented, please edit FindKDE4.cmake to enable it") -ENDIF(MINGW) - -IF(MSVC) - FIND_LIBRARY(KDE4_KDEWIN32_LIBRARY NAMES kdewin32) - IF (NOT KDE4_WIN32_LIBRARY) - MESSAGE(FATAL_ERROR "Could not find kdewin32 library, make sure to build and install kdelibs/win/ first" ) - ENDIF (NOT KDE4_WIN32_LIBRARY) - SET(QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDE4_KDEWIN32_LIBRARY}) -ENDIF(MSVC) - - -#only on linux, but not e.g. on FreeBSD: -IF(CMAKE_SYSTEM_NAME MATCHES Linux) - SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") -ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) - -# works on FreeBSD, not tested on NetBSD and OpenBSD -IF(CMAKE_SYSTEM_NAME MATCHES BSD) - SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -D_GNU_SOURCE) - SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") - SET(CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") - SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -ENDIF(CMAKE_SYSTEM_NAME MATCHES BSD) - -# This will need to be modified later to support either Qt/X11 or Qt/Mac builds -IF(APPLE) - - SET(PLATFORM_DEFINITIONS -D__APPLE_KDE__) - - # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow - # -undefined dynamic_lookup; in the future we should do this programmatically - # hmm... why doesn't this work? - SET(ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) - - # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default - # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented - # or perhaps it already is, and I just don't know where to look ;) - - SET(CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") - SET(CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") - #SET(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") - #SET(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") - - SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common -Os") - SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") -ENDIF(APPLE) - -########### end of platform specific stuff ########################## - #add some KDE specific stuff -# not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -SET(KDE4_DEFINITIONS ${KDE4_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ${PLATFORM_DEFINITIONS} ) SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) @@ -203,6 +132,83 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) +# this will move into Windows-cl.cmake +IF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") + SET(MSVC TRUE) +ENDIF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") + +##################### and now the platform specific stuff ############################ + +IF(UNIX AND NOT APPLE) + FIND_PACKAGE(X11 REQUIRED) + SET(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) +ENDIF(UNIX AND NOT APPLE) + +IF(CYGWIN) + MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") +ENDIF(CYGWIN) + +IF(MINGW) + MESSAGE(FATAL_ERROR "Support for MinGW not yet implemented, please edit FindKDE4.cmake to enable it") + SET(_KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/include/mingw ) + SET( CMAKE_INCLUDE_PATH ${${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/mingw ) +ENDIF(MINGW) + +IF(MSVC) + FIND_LIBRARY( KDE4_KDEWIN32_LIBRARY NAMES kdewin32 ) + IF ( NOT KDE4_WIN32_LIBRARY ) + MESSAGE( FATAL_ERROR "Could not find kdewin32 library, make sure to build and install kdelibs/win/ first" ) + ENDIF ( NOT KDE4_WIN32_LIBRARY ) + SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDE4_KDEWIN32_LIBRARY}) + SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) + SET( _KDE4_PLATFORM_DEFINITIONS -D_WINSOCKAPI_ -DWIN32_LEAN_AND_MEAN -DMAKE_KDEWIN32_LIB -DUNICODE ) + SET( CMAKE_INCLUDE_PATH ${${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) +ENDIF(MSVC) + +#only on linux, but not e.g. on FreeBSD: +IF(CMAKE_SYSTEM_NAME MATCHES Linux) + SET ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + SET ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + SET ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") +ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) + +# works on FreeBSD, not tested on NetBSD and OpenBSD +IF(CMAKE_SYSTEM_NAME MATCHES BSD) + SET ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) + SET ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") + SET ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") + SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") +ENDIF(CMAKE_SYSTEM_NAME MATCHES BSD) + +# This will need to be modified later to support either Qt/X11 or Qt/Mac builds +IF(APPLE) + + SET ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) + + # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow + # -undefined dynamic_lookup; in the future we should do this programmatically + # hmm... why doesn't this work? + SET (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) + + # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default + # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented + # or perhaps it already is, and I just don't know where to look ;) + + SET (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") + SET (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") + #SET(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") + #SET(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") + + SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common -Os") + SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") +ENDIF(APPLE) + +########### end of platform specific stuff ########################## + + # KDE4Macros.cmake contains all the KDE specific macros INCLUDE(KDE4Macros) @@ -259,5 +265,7 @@ IF (NOT KDE4_FIND_QUIETLY) ENDIF (NOT KDE4_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path -SET(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${X11_INCLUDE_DIR} ) +SET(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) +# not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT +SET(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index cd01782a..b5533b5c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -44,8 +44,7 @@ # uses Qt. # # QT_INCLUDES List of paths to all include directories of -# Qt4 QT_INCLUDE_DIR, QT_QT_INCLUDE_DIR, -# and QT_QTGUI_INCLUDE_DIR are +# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are # always in this variable even if NOTFOUND, # all other INCLUDE_DIRS are # only added if they are found. @@ -189,7 +188,7 @@ IF(QT4_QMAKE_FOUND) # ######################################## IF (NOT QT_HEADERS_DIR) - # Set QT_QT_INCLUDE_DIR by searching for the QtGlobal header + # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header IF(QT_QMAKE_EXECUTABLE) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" @@ -201,29 +200,31 @@ IF(QT4_QMAKE_FOUND) SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) - FIND_PATH( QT_QT_INCLUDE_DIR QtGlobal - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/Qt" + + FIND_PATH( QT_QTCORE_INCLUDE_DIR QtGlobal + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" ${QT_PATH_INCLUDE} - ${QT_HEADERS_DIR}/Qt + ${QT_HEADERS_DIR}/QtCore ${QT_LIBRARY_DIR}/QtCore.framework/Headers - $ENV{QTDIR}/include/Qt - /usr/local/qt/include/Qt - /usr/local/include/Qt - /usr/lib/qt/include/Qt - /usr/include/Qt - /usr/share/qt4/include/Qt - "C:/Program Files/qt/include/Qt" - /usr/include/qt4/Qt) - - # Set QT_INCLUDE_DIR by removine "/Qt" in the string ${QT_QT_INCLUDE_DIR} - IF( QT_QT_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + $ENV{QTDIR}/include/QtCore + /usr/local/qt/include/QtCore + /usr/local/include/QtCore + /usr/lib/qt/include/QtCore + /usr/include/QtCore + /usr/share/qt4/include/QtCore + "C:/Program Files/qt/include/QtCore" + /usr/include/qt4/QtCore) + + # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} + IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) IF (QT_USE_FRAMEWORKS) SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) ELSE (QT_USE_FRAMEWORKS) - STRING( REGEX REPLACE "/Qt$" "" qt4_include_dir ${QT_QT_INCLUDE_DIR}) + STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") ENDIF (QT_USE_FRAMEWORKS) - ENDIF( QT_QT_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF( NOT QT_INCLUDE_DIR) IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Could not find QtGlobal header") @@ -252,10 +253,10 @@ IF(QT4_QMAKE_FOUND) ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers ) - # Set QT_QTCORE_INCLUDE_DIR - FIND_PATH( QT_QTCORE_INCLUDE_DIR QtCore - ${QT_INCLUDE_DIR}/QtCore - ${QT_LIBRARY_DIR}/QtCore.framework/Headers + # Set QT_QT_INCLUDE_DIR + FIND_PATH( QT_QT_INCLUDE_DIR QtGlobal + ${QT_INCLUDE_DIR}/Qt + ${QT_LIBRARY_DIR}/Qt.framework/Headers ) # Set QT_QTGUI_INCLUDE_DIR -- cgit v1.2.1 From c9706fa7bb1c557a0ee7e0e3037a068921790229 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Feb 2006 21:34:51 +0000 Subject: fix typo, thanks to peter Alex svn path=/trunk/KDE/kdelibs/; revision=504698 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 47b7d9b1..6fb1e139 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -162,7 +162,7 @@ IF(MSVC) SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDE4_KDEWIN32_LIBRARY}) SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) SET( _KDE4_PLATFORM_DEFINITIONS -D_WINSOCKAPI_ -DWIN32_LEAN_AND_MEAN -DMAKE_KDEWIN32_LIB -DUNICODE ) - SET( CMAKE_INCLUDE_PATH ${${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) + SET( CMAKE_INCLUDE_PATH ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) ENDIF(MSVC) #only on linux, but not e.g. on FreeBSD: -- cgit v1.2.1 From 3246c794391f5b73886d6487ec8457ca2b6c15f1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Feb 2006 21:39:23 +0000 Subject: there's no Qt.framework on OS X Alex svn path=/trunk/KDE/kdelibs/; revision=504699 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b5533b5c..80b6d114 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -256,7 +256,7 @@ IF(QT4_QMAKE_FOUND) # Set QT_QT_INCLUDE_DIR FIND_PATH( QT_QT_INCLUDE_DIR QtGlobal ${QT_INCLUDE_DIR}/Qt - ${QT_LIBRARY_DIR}/Qt.framework/Headers + ${QT_LIBRARY_DIR}/QtCore.framework/Headers ) # Set QT_QTGUI_INCLUDE_DIR -- cgit v1.2.1 From 7a62a4b0e422e55a80f8b30cdd4f37da86579708 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Feb 2006 21:46:42 +0000 Subject: hmm, include/Qt/ seems to be different an every platform Alex svn path=/trunk/KDE/kdelibs/; revision=504701 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 80b6d114..82a9b38c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -254,7 +254,7 @@ IF(QT4_QMAKE_FOUND) ) # Set QT_QT_INCLUDE_DIR - FIND_PATH( QT_QT_INCLUDE_DIR QtGlobal + FIND_PATH( QT_QT_INCLUDE_DIR qglobal.h ${QT_INCLUDE_DIR}/Qt ${QT_LIBRARY_DIR}/QtCore.framework/Headers ) -- cgit v1.2.1 From 9673f1b80da6760879d167f38f8851d6c403ff0d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Feb 2006 22:06:06 +0000 Subject: output Qt version Alex svn path=/trunk/KDE/kdelibs/; revision=504703 --- modules/FindQt4.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 82a9b38c..6c34226c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -715,7 +715,8 @@ IF(QT4_QMAKE_FOUND) IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "YES" ) IF( NOT Qt4_FIND_QUIETLY) - MESSAGE(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") + MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") +# MESSAGE(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") ENDIF( NOT Qt4_FIND_QUIETLY) ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "NO") -- cgit v1.2.1 From a75fa4e60bad0a7d0a9fa3a728d62c09de5d7fa4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Feb 2006 22:12:52 +0000 Subject: fix kdewin32 detection Alex svn path=/trunk/KDE/kdelibs/; revision=504706 --- modules/FindKDE4.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 6fb1e139..3a68ed4f 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -156,9 +156,10 @@ ENDIF(MINGW) IF(MSVC) FIND_LIBRARY( KDE4_KDEWIN32_LIBRARY NAMES kdewin32 ) - IF ( NOT KDE4_WIN32_LIBRARY ) + IF ( NOT KDE4_KDEWIN32_LIBRARY ) MESSAGE( FATAL_ERROR "Could not find kdewin32 library, make sure to build and install kdelibs/win/ first" ) - ENDIF ( NOT KDE4_WIN32_LIBRARY ) + ENDIF ( NOT KDE4_KDEWIN32_LIBRARY ) + SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDE4_KDEWIN32_LIBRARY}) SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) SET( _KDE4_PLATFORM_DEFINITIONS -D_WINSOCKAPI_ -DWIN32_LEAN_AND_MEAN -DMAKE_KDEWIN32_LIB -DUNICODE ) -- cgit v1.2.1 From 60f38460a32b31f43b121a36b16d351cb67525f7 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 2 Feb 2006 07:52:42 +0000 Subject: Add "KDE4_LIB_INSTALL_DIR" as discussed with alexander to fix install lib on x86_64 svn path=/trunk/KDE/kdelibs/; revision=504772 --- modules/FindKDE4.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 3a68ed4f..611ba064 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -42,6 +42,7 @@ SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) #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_APPS_DIR /share/applnk) SET(KDE4_CONFIG_DIR /share/config) SET(KDE4_DATA_DIR /share/apps) -- cgit v1.2.1 From 892f166e897ebcb3f75856350c0f7fb159981c4f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 2 Feb 2006 14:26:09 +0000 Subject: Allow to compile java directory (install doesn't work for the moment ) svn path=/trunk/KDE/kdelibs/; revision=504910 --- modules/KDE4Macros.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ac229538..9e942e54 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -378,6 +378,7 @@ ENDMACRO(KDE4_CREATE_FINAL_FILES) OPTION(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") OPTION(KDE4_BUILD_TESTS "Build the tests") +OPTION(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty -- cgit v1.2.1 From dcc24bc23c28569342a49003037a18e6662cf191 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 2 Feb 2006 16:06:26 +0000 Subject: install the fake libtool la files also to KDE4_LIB_INSTALL_DIR Alex svn path=/trunk/KDE/kdelibs/; revision=504937 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9e942e54..9e769700 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -357,7 +357,7 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target) FILE(APPEND ${_laname} "# Directory that this library needs to be installed in:\n") FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/lib/kde4'\n") - INSTALL_FILES(/lib/kde4 FILES ${_laname}) + INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/kde4 FILES ${_laname}) ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) -- cgit v1.2.1 From 64ba4eeb803fa5c780bf83627763ad9552986139 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 2 Feb 2006 16:15:23 +0000 Subject: correct path also in the la file Alex svn path=/trunk/KDE/kdelibs/; revision=504940 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9e769700..2e0866e9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -355,7 +355,7 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target) 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}/lib/kde4'\n") + FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${KDE4_LIB_INSTALL_DIR}/kde4'\n") INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/kde4 FILES ${_laname}) ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) -- cgit v1.2.1 From 5951c50387c0bdfb0a358bcdee4cb7f7af3ac593 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 2 Feb 2006 19:10:38 +0000 Subject: -use the expected -DMAKE__LIB when compiling libraries under windows Alex svn path=/trunk/KDE/kdelibs/; revision=504990 --- modules/KDE4Macros.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2e0866e9..259e2924 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -458,6 +458,13 @@ MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) ENDIF (KDE4_ENABLE_FINAL) + IF (WIN32) + # for shared libraries a -DMAKE_target_LIB is required + string(TOUPPER ${_target_NAME} _symbol) + set(_symbol "MAKE_${_symbol}_LIB") + set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) + ENDIF (WIN32) + ENDMACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -- cgit v1.2.1 From ce042bd251f406fe60e3722b019961f1ce3ebb97 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 3 Feb 2006 07:31:54 +0000 Subject: Fix install into servicetypes directory svn path=/trunk/KDE/kdelibs/; revision=505117 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 611ba064..a548a803 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -53,7 +53,7 @@ SET(KDE4_LIBS_HTML_DIR /share/doc/HTML) SET(KDE4_LOCALE_DIR /share/locale) SET(KDE4_MIME_DIR /share/mimelnk) SET(KDE4_SERVICES_DIR /share/services) -SET(KDE4_SERVICETYPES_DIR /share/services) +SET(KDE4_SERVICETYPES_DIR /share/servicetypes) SET(KDE4_SOUND_DIR /share/sounds) SET(KDE4_TEMPLATES_DIR /share/templates) SET(KDE4_WALLPAPER_DIR /share/wallpapers) -- cgit v1.2.1 From 7771ccf599f598da22aefc9dfbfdc06787bc0435 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 3 Feb 2006 10:34:54 +0000 Subject: Add specific directory for kconf_update svn path=/trunk/KDE/kdelibs/; revision=505157 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index a548a803..321a665e 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -57,7 +57,7 @@ SET(KDE4_SERVICETYPES_DIR /share/servicetypes) SET(KDE4_SOUND_DIR /share/sounds) SET(KDE4_TEMPLATES_DIR /share/templates) SET(KDE4_WALLPAPER_DIR /share/wallpapers) - +SET(KDE4_KCONF_UPDATE_DIR /share/apps/kconf_update/ ) SET(XDG_APPS_DIR /share/applications/kde) SET(XDG_DIRECTORY_DIR /share/desktop-directories) -- cgit v1.2.1 From ec20af3748c658bd51630c39a4426950b9ca8270 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 3 Feb 2006 13:59:02 +0000 Subject: Install scalable icons svn path=/trunk/KDE/kdelibs/; revision=505212 --- modules/KDE4Macros.cmake | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 259e2924..91ded6d4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -323,6 +323,38 @@ MACRO(KDE4_INSTALL_ICONS _theme) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") ENDFOREACH (_current_ICON) + FILE(GLOB _icons *.svgz) + FOREACH(_current_ICON ${_icons} ) + STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") + + SET(_icon_GROUP "actions") + + IF(${_group} STREQUAL "mime") + SET(_icon_GROUP "mimetypes") + ENDIF(${_group} STREQUAL "mime") + + IF(${_group} STREQUAL "filesys") + SET(_icon_GROUP "filesystems") + ENDIF(${_group} STREQUAL "filesys") + + IF(${_group} STREQUAL "device") + SET(_icon_GROUP "devices") + ENDIF(${_group} STREQUAL "device") + + IF(${_group} STREQUAL "app") + SET(_icon_GROUP "apps") + ENDIF(${_group} STREQUAL "app") + + IF(${_group} STREQUAL "action") + SET(_icon_GROUP "actions") + ENDIF(${_group} STREQUAL "action") + + SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/scalable/${_icon_GROUP}/${_name}) + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + + ENDFOREACH (_current_ICON) ENDMACRO(KDE4_INSTALL_ICONS _theme) # for the case that something should be added to every CMakeLists.txt at the top -- cgit v1.2.1 From 0f0ed599605523734c61287f9e2f68061b068951 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Feb 2006 22:00:11 +0000 Subject: -major overhaul of the windows stuff: kdelibs/win/ is now built as a regular part of the build process -an improved version of CheckIncludeFiles.cmake has been added, which takes additional include directories as argument -the check for the KDE4_LIB_DIR was wrong, it returned libkxmlcore.so instead of the directory -fix the header install commands for the win/include/ stuff Alex svn path=/trunk/KDE/kdelibs/; revision=505455 --- modules/CheckIncludeFiles.cmake | 63 +++++++++++++++++++++++++++++++++++++++++ modules/FindKDE4.cmake | 45 ++++++++++++++++++----------- modules/KDE4Macros.cmake | 28 ++++++++++++------ 3 files changed, 110 insertions(+), 26 deletions(-) create mode 100644 modules/CheckIncludeFiles.cmake (limited to 'modules') diff --git a/modules/CheckIncludeFiles.cmake b/modules/CheckIncludeFiles.cmake new file mode 100644 index 00000000..8d1b0fb3 --- /dev/null +++ b/modules/CheckIncludeFiles.cmake @@ -0,0 +1,63 @@ +# - Check if the files can be included +# +# CHECK_INCLUDE_FILES(INCLUDE VARIABLE) +# +# INCLUDE - list of files to include +# VARIABLE - variable to return result +# +# If CMAKE_REQUIRED_FLAGS is set then those flags will be passed into the +# compile of the program +# additionally to the original cmake module this one uses CMAKE_REQUIRED_INCLUDES +# where you can specify a directory which will be added to the include path + +MACRO(CHECK_INCLUDE_FILES INCLUDE VARIABLE) + IF("${VARIABLE}" MATCHES "^${VARIABLE}$") + SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS ) +# IF(CMAKE_REQUIRED_INCLUDES) +# SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS +# "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") +# ENDIF(CMAKE_REQUIRED_INCLUDES) + + SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS -DINCLUDE_DIRECTORIES=) + FOREACH(_inc_DIR ${CMAKE_REQUIRED_INCLUDES}) + SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}${_inc_DIR}\;") + ENDFOREACH(_inc_DIR ${CMAKE_REQUIRED_INCLUDES}) + SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS} ") + + SET(CHECK_INCLUDE_FILES_CONTENT "/* */\n") + SET(MACRO_CHECK_INCLUDE_FILES_FLAGS ${CMAKE_REQUIRED_FLAGS}) + FOREACH(FILE ${INCLUDE}) + SET(CHECK_INCLUDE_FILES_CONTENT + "${CHECK_INCLUDE_FILES_CONTENT}#include <${FILE}>\n") + ENDFOREACH(FILE) + SET(CHECK_INCLUDE_FILES_CONTENT + "${CHECK_INCLUDE_FILES_CONTENT}\n\nint main(){return 0;}\n") + FILE(WRITE ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckIncludeFiles.c + "${CHECK_INCLUDE_FILES_CONTENT}") + + MESSAGE(STATUS "Looking for include files ${VARIABLE}") + TRY_COMPILE(${VARIABLE} + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckIncludeFiles.c + CMAKE_FLAGS +# -DINCLUDE_DIRECTORIES=${CMAKE_REQUIRED_INCLUDE_DIR} + -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_INCLUDE_FILES_FLAGS} + ${CHECK_INCLUDE_FILES_INCLUDE_DIRS} + OUTPUT_VARIABLE OUTPUT) + IF(${VARIABLE}) + MESSAGE(STATUS "Looking for include files ${VARIABLE} - found") + SET(${VARIABLE} 1 CACHE INTERNAL "Have include ${VARIABLE}") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeFiles/CMakeOutput.log + "Determining if files ${INCLUDE} " + "exist passed with the following output:\n" + "${OUTPUT}\n\n") + ELSE(${VARIABLE}) + MESSAGE(STATUS "Looking for include files ${VARIABLE} - not found.") + SET(${VARIABLE} "" CACHE INTERNAL "Have includes ${VARIABLE}") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Determining if files ${INCLUDE} " + "exist failed with the following output:\n" + "${OUTPUT}\nSource:\n${CHECK_INCLUDE_FILES_CONTENT}\n") + ENDIF(${VARIABLE}) + ENDIF("${VARIABLE}" MATCHES "^${VARIABLE}$") +ENDMACRO(CHECK_INCLUDE_FILES) diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 321a665e..f713e4e7 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -39,10 +39,6 @@ SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) -#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_APPS_DIR /share/applnk) SET(KDE4_CONFIG_DIR /share/config) SET(KDE4_DATA_DIR /share/apps) @@ -53,7 +49,7 @@ SET(KDE4_LIBS_HTML_DIR /share/doc/HTML) SET(KDE4_LOCALE_DIR /share/locale) SET(KDE4_MIME_DIR /share/mimelnk) SET(KDE4_SERVICES_DIR /share/services) -SET(KDE4_SERVICETYPES_DIR /share/servicetypes) +SET(KDE4_SERVICETYPES_DIR /share/servicetypes) SET(KDE4_SOUND_DIR /share/sounds) SET(KDE4_TEMPLATES_DIR /share/templates) SET(KDE4_WALLPAPER_DIR /share/wallpapers) @@ -62,6 +58,14 @@ SET(XDG_APPS_DIR /share/applications/kde) 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)") + + + #now try to find some kde stuff @@ -96,7 +100,7 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ) # now the KDE library directory, kxmlcore is new with KDE4 - FIND_LIBRARY(KDE4_LIB_DIR NAMES kxmlcore + FIND_LIBRARY(KDE4_XMLCORE_LIBRARY NAMES kxmlcore PATHS $ENV{KDEDIR}/lib /opt/kde/lib @@ -105,6 +109,8 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) /usr/local/lib ) + GET_FILENAME_COMPONENT(KDE4_LIB_DIR ${KDE4_XMLCORE_LIBRARY} PATH ) + #now search for the dcop utilities FIND_PROGRAM(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS $ENV{KDEDIR}/bin @@ -140,34 +146,36 @@ ENDIF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") ##################### and now the platform specific stuff ############################ + IF(UNIX AND NOT APPLE) FIND_PACKAGE(X11 REQUIRED) SET(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) ENDIF(UNIX AND NOT APPLE) + IF(CYGWIN) MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") ENDIF(CYGWIN) + +# windows, mingw IF(MINGW) - MESSAGE(FATAL_ERROR "Support for MinGW not yet implemented, please edit FindKDE4.cmake to enable it") + SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} kdewin32 ) SET(_KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/include/mingw ) SET( CMAKE_INCLUDE_PATH ${${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/mingw ) ENDIF(MINGW) + +# windows, microsoft compiler IF(MSVC) - FIND_LIBRARY( KDE4_KDEWIN32_LIBRARY NAMES kdewin32 ) - IF ( NOT KDE4_KDEWIN32_LIBRARY ) - MESSAGE( FATAL_ERROR "Could not find kdewin32 library, make sure to build and install kdelibs/win/ first" ) - ENDIF ( NOT KDE4_KDEWIN32_LIBRARY ) - - SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDE4_KDEWIN32_LIBRARY}) + SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} kdewin32 ) SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) SET( _KDE4_PLATFORM_DEFINITIONS -D_WINSOCKAPI_ -DWIN32_LEAN_AND_MEAN -DMAKE_KDEWIN32_LIB -DUNICODE ) SET( CMAKE_INCLUDE_PATH ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) ENDIF(MSVC) -#only on linux, but not e.g. on FreeBSD: + +# only on linux, but not e.g. on FreeBSD: IF(CMAKE_SYSTEM_NAME MATCHES Linux) SET ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) SET ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") @@ -176,6 +184,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES Linux) SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) + # works on FreeBSD, not tested on NetBSD and OpenBSD IF(CMAKE_SYSTEM_NAME MATCHES BSD) SET ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) @@ -185,6 +194,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES BSD) SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") ENDIF(CMAKE_SYSTEM_NAME MATCHES BSD) + # This will need to be modified later to support either Qt/X11 or Qt/Mac builds IF(APPLE) @@ -214,7 +224,8 @@ ENDIF(APPLE) # KDE4Macros.cmake contains all the KDE specific macros INCLUDE(KDE4Macros) -#set KDE4_FOUND + +# decide whether KDE4 has been found IF (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) SET(KDE4_FOUND TRUE) ELSE (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) @@ -252,16 +263,16 @@ MACRO (KDE4_PRINT_RESULTS) ELSE(KDE4_KCFGC_EXECUTABLE) MESSAGE(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") ENDIF(KDE4_KCFGC_EXECUTABLE) - ENDMACRO (KDE4_PRINT_RESULTS) + IF (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) #bail out if something wasn't found KDE4_PRINT_RESULTS() MESSAGE(FATAL_ERROR "Could not find everything required for compiling KDE 4 programs") - ENDIF (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) + IF (NOT KDE4_FIND_QUIETLY) KDE4_PRINT_RESULTS() ENDIF (NOT KDE4_FIND_QUIETLY) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 91ded6d4..682eae4c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -431,24 +431,34 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") ENDIF(_first_SRC) +# IF (UNIX) + # I guess under windows the libtool file are not required KDE4_CREATE_LIBTOOL_FILE(${_target_NAME}) +# ENDIF (UNIX) ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) MACRO(KDE4_ADD_KLM _target_NAME ) - IF (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - ELSE (KDE4_ENABLE_FINAL) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) + CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + + IF (WIN32) + # under windows, just build a normal executable + KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) + ELSE (WIN32) + # under UNIX, create a shared library and a small executable, which links to this library + IF (KDE4_ENABLE_FINAL) + KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + ELSE (KDE4_ENABLE_FINAL) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) # MESSAGE(STATUS "klm: kdeinit_${_target_NAME}") - ENDIF (KDE4_ENABLE_FINAL) + ENDIF (KDE4_ENABLE_FINAL) - CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) - TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) + ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) + TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) + ENDIF (WIN32) ENDMACRO(KDE4_ADD_KLM _target_NAME) -- cgit v1.2.1 From 8fd2d55e9cecc281f6da7a86bbff4011c490996a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Feb 2006 22:30:30 +0000 Subject: for now the kdeinit stuff is also required on windows, make compiling easier for now fix typo in mingw section Alex svn path=/trunk/KDE/kdelibs/; revision=505460 --- modules/FindKDE4.cmake | 2 +- modules/KDE4Macros.cmake | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index f713e4e7..a3f42d40 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -162,7 +162,7 @@ ENDIF(CYGWIN) IF(MINGW) SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} kdewin32 ) SET(_KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/include/mingw ) - SET( CMAKE_INCLUDE_PATH ${${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/mingw ) + SET( CMAKE_INCLUDE_PATH ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/mingw ) ENDIF(MINGW) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 682eae4c..93af113f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -442,10 +442,10 @@ MACRO(KDE4_ADD_KLM _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - IF (WIN32) - # under windows, just build a normal executable - KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) - ELSE (WIN32) +# IF (WIN32) +# # under windows, just build a normal executable +# KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) +# ELSE (WIN32) # under UNIX, create a shared library and a small executable, which links to this library IF (KDE4_ENABLE_FINAL) KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) @@ -458,7 +458,7 @@ MACRO(KDE4_ADD_KLM _target_NAME ) ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) - ENDIF (WIN32) +# ENDIF (WIN32) ENDMACRO(KDE4_ADD_KLM _target_NAME) -- cgit v1.2.1 From 40eafd6dc1fbf76983eca88c7ad3bcec300ffcc8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Feb 2006 23:12:44 +0000 Subject: more fixes for windows... Alex svn path=/trunk/KDE/kdelibs/; revision=505471 --- modules/FindKDE4.cmake | 5 +++++ modules/KDE4Macros.cmake | 12 ++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index a3f42d40..2f78c381 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -80,6 +80,11 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) SET(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) + IF (WIN32) + SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + ELSE (WIN32) + SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + ENDIF (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 93af113f..cb0657e5 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -32,6 +32,14 @@ MACRO(KDE4_ADD_FILE_DEPENDANCY file) ENDMACRO(KDE4_ADD_FILE_DEPENDANCY) +IF (UNIX) + # dcopidl needs the redirection under unix + SET (_KDE4_GT ">") +ELSE (UNIX) + # but not under windows + SET (_KDE4_GT ) +ENDIF (UNIX) + #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) MACRO(KDE4_ADD_DCOP_SKELS _sources) @@ -49,7 +57,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} ${_KDE4_GT} ${_kidl} DEPENDS ${_tmp_FILE} ) ENDIF (NOT HAVE_${_basename}_KIDL_RULE) @@ -88,7 +96,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} > ${_kidl} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} ${_KDE4_GT} ${_kidl} DEPENDS ${_tmp_FILE} ) ENDIF (NOT HAVE_${_basename}_KIDL_RULE) -- cgit v1.2.1 From c830bd7fd12533e39c590fd4308f33c2b41e1c6a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 4 Feb 2006 00:08:33 +0000 Subject: Fix install icon in good directory svn path=/trunk/KDE/kdelibs/; revision=505485 The following changes were in SVN, but were removed from git: M pics/crystalsvg/CMakeLists.txt M pics/hicolor/CMakeLists.txt --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index cb0657e5..a6ed9303 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -291,7 +291,7 @@ MACRO(KDE4_AUTOMOC) ENDFOREACH (_current_FILE) ENDMACRO(KDE4_AUTOMOC) -MACRO(KDE4_INSTALL_ICONS _theme) +MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) ADD_CUSTOM_TARGET(install_icons ) SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") @@ -326,7 +326,7 @@ MACRO(KDE4_INSTALL_ICONS _theme) ENDIF(${_group} STREQUAL "action") # MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") @@ -358,12 +358,12 @@ MACRO(KDE4_INSTALL_ICONS _theme) SET(_icon_GROUP "actions") ENDIF(${_group} STREQUAL "action") - SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/scalable/${_icon_GROUP}/${_name}) + SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/scalable/${_icon_GROUP}/${_name}) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") ENDFOREACH (_current_ICON) -ENDMACRO(KDE4_INSTALL_ICONS _theme) +ENDMACRO(KDE4_INSTALL_ICONS _theme _defaultpath) # for the case that something should be added to every CMakeLists.txt at the top MACRO(KDE4_HEADER) -- cgit v1.2.1 From 817117aaa55be6d5c8ef3867630c9a9545da5520 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 4 Feb 2006 09:01:18 +0000 Subject: Now icons installed correctly svn path=/trunk/KDE/kdelibs/; revision=505535 --- modules/KDE4Macros.cmake | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a6ed9303..37c3cc84 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -302,35 +302,37 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") + IF( ${_size} STREQUAL ${_name} ) + MESSAGE(STATUS "icon: ${_current_ICON} can't be parse" ) + ELSE( ${_size} STREQUAL ${_name} ) + SET(_icon_GROUP "actions") - SET(_icon_GROUP "actions") + IF(${_group} STREQUAL "mime") + SET(_icon_GROUP "mimetypes") + ENDIF(${_group} STREQUAL "mime") - IF(${_group} STREQUAL "mime") - SET(_icon_GROUP "mimetypes") - ENDIF(${_group} STREQUAL "mime") + IF(${_group} STREQUAL "filesys") + SET(_icon_GROUP "filesystems") + ENDIF(${_group} STREQUAL "filesys") - IF(${_group} STREQUAL "filesys") - SET(_icon_GROUP "filesystems") - ENDIF(${_group} STREQUAL "filesys") + IF(${_group} STREQUAL "device") + SET(_icon_GROUP "devices") + ENDIF(${_group} STREQUAL "device") - IF(${_group} STREQUAL "device") - SET(_icon_GROUP "devices") - ENDIF(${_group} STREQUAL "device") + IF(${_group} STREQUAL "app") + SET(_icon_GROUP "apps") + ENDIF(${_group} STREQUAL "app") - IF(${_group} STREQUAL "app") - SET(_icon_GROUP "apps") - ENDIF(${_group} STREQUAL "app") - - IF(${_group} STREQUAL "action") - SET(_icon_GROUP "actions") - ENDIF(${_group} STREQUAL "action") + IF(${_group} STREQUAL "action") + SET(_icon_GROUP "actions") + ENDIF(${_group} STREQUAL "action") # MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - - ENDFOREACH (_current_ICON) + SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + ENDIF( ${_size} STREQUAL ${_name} ) + ENDFOREACH (_current_ICON) FILE(GLOB _icons *.svgz) FOREACH(_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") -- cgit v1.2.1 From fb0d05a8363b1f37c24f995b9565cb90c8625256 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 4 Feb 2006 12:15:29 +0000 Subject: -renamed optional_find_package() to macro_optional_find_package(), to make it clear it is a macro and not a builtin command -kjsembed compiles -CheckCXXSourceCompiles now support multiple include paths -compile fix in kjsembed/value_binding.cpp: prefer the local global.h, otherwise it might end up with the global.h from kio/kio/, depending on the order of include directories -use the new "-o" switch for dcopidl -add a (temporary) workaround for David's uic problem Alex svn path=/trunk/KDE/kdelibs/; revision=505580 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/CheckCXXSourceCompiles.cmake | 53 ++++++++++++++++++++++++++++++++++ modules/CheckIncludeFiles.cmake | 14 ++------- modules/KDE4Macros.cmake | 46 ++++++++++++++--------------- modules/MacroLibrary.cmake | 5 ++++ modules/MacroOptionalFindPackage.cmake | 16 ++++++++++ modules/OptionalFindPackage.cmake | 16 ---------- modules/kde4uic.cmake | 8 +++-- 7 files changed, 105 insertions(+), 53 deletions(-) create mode 100644 modules/CheckCXXSourceCompiles.cmake create mode 100644 modules/MacroLibrary.cmake create mode 100644 modules/MacroOptionalFindPackage.cmake delete mode 100644 modules/OptionalFindPackage.cmake (limited to 'modules') diff --git a/modules/CheckCXXSourceCompiles.cmake b/modules/CheckCXXSourceCompiles.cmake new file mode 100644 index 00000000..dc696d1f --- /dev/null +++ b/modules/CheckCXXSourceCompiles.cmake @@ -0,0 +1,53 @@ +# - Check if the source code provided in the SOURCE argument compiles. +# CHECK_CXX_SOURCE_COMPILES(SOURCE VAR) +# - macro which checks if the source code compiles\ +# SOURCE - source code to try to compile +# VAR - variable to store size if the type exists. +# Checks the following optional VARIABLES (not arguments) +# CMAKE_REQUIRED_LIBRARIES - Link to extra libraries +# CMAKE_REQUIRED_FLAGS - Extra flags to C compiler +# CMAKE_REQUIRED_INCLUDES - Extra include directories +# + +MACRO(CHECK_CXX_SOURCE_COMPILES SOURCE VAR) + IF("${VAR}" MATCHES "^${VAR}$") + SET(MACRO_CHECK_FUNCTION_DEFINITIONS + "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ENDIF(CMAKE_REQUIRED_LIBRARIES) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + STRING(REGEX REPLACE ";" "\\\\;" CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}") + ENDIF(CMAKE_REQUIRED_INCLUDES) + FILE(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx" + "${SOURCE}") + + MESSAGE(STATUS "Performing Test ${VAR}") + TRY_COMPILE(${VAR} + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx + CMAKE_FLAGS + "${CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES}" + "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}" + OUTPUT_VARIABLE OUTPUT) + IF(${VAR}) + SET(${VAR} 1 CACHE INTERNAL "Test ${FUNCTION}") + MESSAGE(STATUS "Performing Test ${VAR} - Success") + WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log + "Performing C++ SOURCE FILE Test ${VAR} succeded with the following output:\n" + "${OUTPUT}\n" + "Source file was:\n${SOURCE}\n" APPEND) + ELSE(${VAR}) + MESSAGE(STATUS "Performing Test ${VAR} - Failed") + SET(${VAR} "" CACHE INTERNAL "Test ${FUNCTION}") + WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Performing C++ SOURCE FILE Test ${VAR} failed with the following output:\n" + "${OUTPUT}\n" + "Source file was:\n${SOURCE}\n" APPEND) + ENDIF(${VAR}) + ENDIF("${VAR}" MATCHES "^${VAR}$") +ENDMACRO(CHECK_CXX_SOURCE_COMPILES) + diff --git a/modules/CheckIncludeFiles.cmake b/modules/CheckIncludeFiles.cmake index 8d1b0fb3..016402af 100644 --- a/modules/CheckIncludeFiles.cmake +++ b/modules/CheckIncludeFiles.cmake @@ -12,18 +12,10 @@ MACRO(CHECK_INCLUDE_FILES INCLUDE VARIABLE) IF("${VARIABLE}" MATCHES "^${VARIABLE}$") - SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS ) -# IF(CMAKE_REQUIRED_INCLUDES) -# SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS -# "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") -# ENDIF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS -DINCLUDE_DIRECTORIES=) - FOREACH(_inc_DIR ${CMAKE_REQUIRED_INCLUDES}) - SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}${_inc_DIR}\;") - ENDFOREACH(_inc_DIR ${CMAKE_REQUIRED_INCLUDES}) - SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS} ") - + SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "-DINCLUDE_DIRECTORIES=${CMAKE_REQUIRED_INCLUDES}") + STRING(REGEX REPLACE ";" "\\\\;" CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}") + SET(CHECK_INCLUDE_FILES_CONTENT "/* */\n") SET(MACRO_CHECK_INCLUDE_FILES_FLAGS ${CMAKE_REQUIRED_FLAGS}) FOREACH(FILE ${INCLUDE}) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 37c3cc84..9a4858c1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -10,7 +10,7 @@ # KDE4_PLACEHOLDER # KDE4_CREATE_FINAL_FILE # KDE4_ADD_KPART -# KDE4_ADD_KLM +# KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_EXECUTABLE @@ -32,14 +32,6 @@ MACRO(KDE4_ADD_FILE_DEPENDANCY file) ENDMACRO(KDE4_ADD_FILE_DEPENDANCY) -IF (UNIX) - # dcopidl needs the redirection under unix - SET (_KDE4_GT ">") -ELSE (UNIX) - # but not under windows - SET (_KDE4_GT ) -ENDIF (UNIX) - #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) MACRO(KDE4_ADD_DCOP_SKELS _sources) @@ -57,7 +49,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} ${_KDE4_GT} ${_kidl} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ) ENDIF (NOT HAVE_${_basename}_KIDL_RULE) @@ -79,6 +71,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ENDMACRO(KDE4_ADD_DCOP_SKELS) + MACRO(KDE4_ADD_DCOP_STUBS _sources) FOREACH (_current_FILE ${ARGN}) @@ -87,16 +80,14 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) -# SET(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - IF (NOT HAVE_${_basename}_KIDL_RULE) SET(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} ${_tmp_FILE} ${_KDE4_GT} ${_kidl} + ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ) ENDIF (NOT HAVE_${_basename}_KIDL_RULE) @@ -117,6 +108,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) ENDMACRO(KDE4_ADD_DCOP_STUBS) + MACRO(KDE4_ADD_KCFG_FILES _sources) FOREACH (_current_FILE ${ARGN}) @@ -192,6 +184,7 @@ MACRO(KDE4_ADD_UI_FILES _sources ) ENDFOREACH (_current_FILE) ENDMACRO(KDE4_ADD_UI_FILES) + #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) MACRO(KDE4_ADD_UI3_FILES _sources ) @@ -291,6 +284,7 @@ MACRO(KDE4_AUTOMOC) ENDFOREACH (_current_FILE) ENDMACRO(KDE4_AUTOMOC) + MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) ADD_CUSTOM_TARGET(install_icons ) SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) @@ -299,16 +293,15 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) FILE(GLOB _icons *.png) FOREACH(_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") - IF( ${_size} STREQUAL ${_name} ) - MESSAGE(STATUS "icon: ${_current_ICON} can't be parse" ) - ELSE( ${_size} STREQUAL ${_name} ) - SET(_icon_GROUP "actions") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") + # if the string doesn't match the pattern, the result is the full string, so all three have the same content + IF( NOT ${_size} STREQUAL ${_name} ) + SET(_icon_GROUP "actions") IF(${_group} STREQUAL "mime") - SET(_icon_GROUP "mimetypes") + SET(_icon_GROUP "mimetypes") ENDIF(${_group} STREQUAL "mime") IF(${_group} STREQUAL "filesys") @@ -331,8 +324,8 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - ENDIF( ${_size} STREQUAL ${_name} ) - ENDFOREACH (_current_ICON) + ENDIF( NOT ${_size} STREQUAL ${_name} ) + ENDFOREACH (_current_ICON) FILE(GLOB _icons *.svgz) FOREACH(_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") @@ -367,14 +360,17 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) ENDFOREACH (_current_ICON) ENDMACRO(KDE4_INSTALL_ICONS _theme _defaultpath) + # for the case that something should be added to every CMakeLists.txt at the top MACRO(KDE4_HEADER) ENDMACRO(KDE4_HEADER) + # same as above, but at the end MACRO(KDE4_FOOTER) ENDMACRO(KDE4_FOOTER) + MACRO(KDE4_CREATE_LIBTOOL_FILE _target) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) @@ -448,7 +444,8 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -MACRO(KDE4_ADD_KLM _target_NAME ) + +MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) @@ -470,7 +467,7 @@ MACRO(KDE4_ADD_KLM _target_NAME ) TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) # ENDIF (WIN32) -ENDMACRO(KDE4_ADD_KLM _target_NAME) +ENDMACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) @@ -484,6 +481,7 @@ MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) ENDMACRO(KDE4_ADD_EXECUTABLE _target_NAME) + MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake new file mode 100644 index 00000000..25abc38d --- /dev/null +++ b/modules/MacroLibrary.cmake @@ -0,0 +1,5 @@ +# - include MacroLibrary offers a collection of macros which extend the built-in cmake commands +# OPTIONAL_FIND_PACKAGE( [QUIT] ) + +INCLUDE (MacroOptionalFindPackage) + diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake new file mode 100644 index 00000000..4ad64a41 --- /dev/null +++ b/modules/MacroOptionalFindPackage.cmake @@ -0,0 +1,16 @@ +# - MACRO_OPTIONAL_FIND_PACKAGE() combines FIND_PACKAGE() with an OPTION() +# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) +# This macro is a combination of OPTION() and FIND_PACKAGE(), it +# works like FIND_PACKAGE(), but additionally it automatically creates +# an option name WITH_, which can be disabled via the cmake GUI. +# or via -DWITH_=OFF +# The standard _FOUND variables can be used in the same way +# as when using the normal FIND_PACKAGE() + +MACRO(MACRO_OPTIONAL_FIND_PACKAGE _name ) + OPTION(WITH_${_name} "Search for ${_name} package" ON) + IF (WITH_${_name}) + FIND_PACKAGE(${_name} ${ARGN}) + ENDIF (WITH_${_name}) +ENDMACRO(MACRO_OPTIONAL_FIND_PACKAGE) + diff --git a/modules/OptionalFindPackage.cmake b/modules/OptionalFindPackage.cmake deleted file mode 100644 index 2642a993..00000000 --- a/modules/OptionalFindPackage.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# - OPTIONAL_FIND_PACKAGE() combines FIND_PACKAGE() with an OPTION() -# OPTIONAL_FIND_PACKAGE( [QUIT] ) -# This macro is a combination of OPTION() and FIND_PACKAGE(), it -# works like FIND_PACKAGE(), but additionally it automatically creates -# an option name WITH_, which can be disabled via the cmake GUI. -# or via -DWITH_=OFF -# The standard _FOUND variables can be used in the same way -# as when using the normal FIND_PACKAGE() - -MACRO(OPTIONAL_FIND_PACKAGE _name ) - OPTION(WITH_${_name} "Search for ${_name} package" ON) - IF (WITH_${_name}) - FIND_PACKAGE(${_name} ${ARGN}) - ENDIF (WITH_${_name}) -ENDMACRO(OPTIONAL_FIND_PACKAGE) - diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 42382aac..16bce3a8 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -37,11 +37,15 @@ ENDIF (KDE4_HEADER) #replace tr218n("") with QString::null to avoid waring from KLocale STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) +#replace image15_data with img15_filename to make enable_final work +STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") + +# workaround which removes the stderr messages from uic, will be removed as soon as +# I switch to EXEC_PROCESS() in the calls above STRING(REGEX REPLACE "\nuic3: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) STRING(REGEX REPLACE "\n'[^\n]+' [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) +STRING(REGEX REPLACE "\nWarning: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) -#replace image15_data with img15_filename to make enable_final work -STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n${_uic_CONTENTS}\n") -- cgit v1.2.1 From afe0713330569133407e3f1a9d9688dd36dfe09d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 4 Feb 2006 14:22:36 +0000 Subject: more fixes for windows from Peter Kuemmel two functional changes: kdemacros.h: -# elif defined(_MSC_VER) && (_MSC_VER >= 1300) +# elif defined(_MSC_VER) && (_MSC_VER >= 1300) && (_MSC_VER < 1400) dcopidl.bat: since yesterday the unix dcopidl supports the -o parameter to specify the outputfile this change is to make dcopidl.bat compatible with this behaviour, so now both can be called with the same command line: dcopidl --srcdir -o ksycoca.kidl ksycoca.h I think it might be a good idea to use the same call scheme also in the other buildsystems Alex CCMAIL: Ch.Ehrlicher@gmx.de CCMAIL: kuemmel@coffeelogic.de CCMAIL: ralf.habacker@freenet.de svn path=/trunk/KDE/kdelibs/; revision=505607 --- modules/FindKDE4.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 2f78c381..3176a7c1 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -81,11 +81,10 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) SET(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) IF (WIN32) - SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) ELSE (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) ENDIF (WIN32) - SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/kconfig_compiler ) -- cgit v1.2.1 From 5a7bcaa7f124163bbfd05131d20f34fa62a2d0a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 5 Feb 2006 01:12:57 +0000 Subject: update to cmake 2.3-kde version, remove later svn path=/trunk/KDE/kdelibs/; revision=505830 --- modules/CheckCXXSourceCompiles.cmake | 104 +++++++++++++++++------------------ 1 file changed, 51 insertions(+), 53 deletions(-) (limited to 'modules') diff --git a/modules/CheckCXXSourceCompiles.cmake b/modules/CheckCXXSourceCompiles.cmake index dc696d1f..43055dee 100644 --- a/modules/CheckCXXSourceCompiles.cmake +++ b/modules/CheckCXXSourceCompiles.cmake @@ -1,53 +1,51 @@ -# - Check if the source code provided in the SOURCE argument compiles. -# CHECK_CXX_SOURCE_COMPILES(SOURCE VAR) -# - macro which checks if the source code compiles\ -# SOURCE - source code to try to compile -# VAR - variable to store size if the type exists. -# Checks the following optional VARIABLES (not arguments) -# CMAKE_REQUIRED_LIBRARIES - Link to extra libraries -# CMAKE_REQUIRED_FLAGS - Extra flags to C compiler -# CMAKE_REQUIRED_INCLUDES - Extra include directories -# - -MACRO(CHECK_CXX_SOURCE_COMPILES SOURCE VAR) - IF("${VAR}" MATCHES "^${VAR}$") - SET(MACRO_CHECK_FUNCTION_DEFINITIONS - "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") - IF(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES - "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ENDIF(CMAKE_REQUIRED_LIBRARIES) - IF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES - "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - STRING(REGEX REPLACE ";" "\\\\;" CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}") - ENDIF(CMAKE_REQUIRED_INCLUDES) - FILE(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx" - "${SOURCE}") - - MESSAGE(STATUS "Performing Test ${VAR}") - TRY_COMPILE(${VAR} - ${CMAKE_BINARY_DIR} - ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx - CMAKE_FLAGS - "${CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES}" - "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}" - OUTPUT_VARIABLE OUTPUT) - IF(${VAR}) - SET(${VAR} 1 CACHE INTERNAL "Test ${FUNCTION}") - MESSAGE(STATUS "Performing Test ${VAR} - Success") - WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log - "Performing C++ SOURCE FILE Test ${VAR} succeded with the following output:\n" - "${OUTPUT}\n" - "Source file was:\n${SOURCE}\n" APPEND) - ELSE(${VAR}) - MESSAGE(STATUS "Performing Test ${VAR} - Failed") - SET(${VAR} "" CACHE INTERNAL "Test ${FUNCTION}") - WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Performing C++ SOURCE FILE Test ${VAR} failed with the following output:\n" - "${OUTPUT}\n" - "Source file was:\n${SOURCE}\n" APPEND) - ENDIF(${VAR}) - ENDIF("${VAR}" MATCHES "^${VAR}$") -ENDMACRO(CHECK_CXX_SOURCE_COMPILES) - +# - Check if the source code provided in the SOURCE argument compiles. +# CHECK_CXX_SOURCE_COMPILES(SOURCE VAR) +# - macro which checks if the source code compiles\ +# SOURCE - source code to try to compile +# VAR - variable to store size if the type exists. +# Checks the following optional VARIABLES (not arguments) +# CMAKE_REQUIRED_LIBRARIES - Link to extra libraries +# CMAKE_REQUIRED_FLAGS - Extra flags to C compiler +# + +MACRO(CHECK_CXX_SOURCE_COMPILES SOURCE VAR) + IF("${VAR}" MATCHES "^${VAR}$") + SET(MACRO_CHECK_FUNCTION_DEFINITIONS + "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ENDIF(CMAKE_REQUIRED_LIBRARIES) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ENDIF(CMAKE_REQUIRED_INCLUDES) + FILE(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx" + "${SOURCE}") + + MESSAGE(STATUS "Performing Test ${VAR}") + TRY_COMPILE(${VAR} + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx + CMAKE_FLAGS + "${CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES}" + "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}" + OUTPUT_VARIABLE OUTPUT) + IF(${VAR}) + SET(${VAR} 1 CACHE INTERNAL "Test ${FUNCTION}") + MESSAGE(STATUS "Performing Test ${VAR} - Success") + WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log + "Performing C++ SOURCE FILE Test ${VAR} succeded with the following output:\n" + "${OUTPUT}\n" + "Source file was:\n${SOURCE}\n" APPEND) + ELSE(${VAR}) + MESSAGE(STATUS "Performing Test ${VAR} - Failed") + SET(${VAR} "" CACHE INTERNAL "Test ${FUNCTION}") + WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Performing C++ SOURCE FILE Test ${VAR} failed with the following output:\n" + "${OUTPUT}\n" + "Source file was:\n${SOURCE}\n" APPEND) + ENDIF(${VAR}) + ENDIF("${VAR}" MATCHES "^${VAR}$") +ENDMACRO(CHECK_CXX_SOURCE_COMPILES) + -- cgit v1.2.1 From 2886e61a6f00532fe798d2a06cad45a57e68d207 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 5 Feb 2006 01:15:51 +0000 Subject: remove forgotten line svn path=/trunk/KDE/kdelibs/; revision=505831 --- modules/FindKDE4.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 3176a7c1..96825ef5 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -85,7 +85,6 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ELSE (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) ENDIF (WIN32) - SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/kconfig_compiler ) -- cgit v1.2.1 From f0e9823a6122993b104bd5bd44fdb48f2db90d1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 5 Feb 2006 01:17:55 +0000 Subject: remove forgotten line svn path=/trunk/KDE/kdelibs/; revision=505832 --- modules/FindKDE4.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 96825ef5..3176a7c1 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -85,6 +85,7 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ELSE (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) ENDIF (WIN32) + SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/kconfig_compiler ) -- cgit v1.2.1 From 4fcbcf67384df12e986f06d491262e3e28da5732 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 5 Feb 2006 03:23:14 +0000 Subject: with msvc all tests fail because of a linker error svn path=/trunk/KDE/kdelibs/; revision=505849 --- modules/CheckPrototypeExists.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index 90f7d5dc..0c72adef 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -20,7 +20,11 @@ void cmakeRequireSymbol(int dummy,...){(void)dummy;} int main() { #ifndef ${_SYMBOL} +#ifndef _MSC_VER cmakeRequireSymbol(0,&${_SYMBOL}); +#else + char i = sizeof(&${_SYMBOL}); +#endif #endif return 0; } -- cgit v1.2.1 From a25005cff76d7aa55440e1354c948d2cdfe1b203 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 5 Feb 2006 11:27:17 +0000 Subject: the former version of CheckPrototypeExists was basically a CheckFunctionExists, the fix by Peter Kuemmel is also the fix for UNXI Alex svn path=/trunk/KDE/kdelibs/; revision=505907 --- modules/CheckPrototypeExists.cmake | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index 0c72adef..1c0d7c13 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -16,15 +16,10 @@ MACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) SET(_CHECK_PROTO_EXISTS_SOURCE_CODE " ${_INCLUDE_FILES} -void cmakeRequireSymbol(int dummy,...){(void)dummy;} int main() { #ifndef ${_SYMBOL} -#ifndef _MSC_VER - cmakeRequireSymbol(0,&${_SYMBOL}); -#else - char i = sizeof(&${_SYMBOL}); -#endif + int i = sizeof(&${_SYMBOL}); #endif return 0; } -- cgit v1.2.1 From 339f98743f4621ce092d5c4f530bf31a47e862e1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 5 Feb 2006 11:42:03 +0000 Subject: -correct fix for multiple inc dirs for check_include_files -reset local variables to empty Alex svn path=/trunk/KDE/kdelibs/; revision=505915 --- modules/CheckCXXSourceCompiles.cmake | 2 ++ modules/CheckIncludeFiles.cmake | 5 ++- modules/CheckSymbolExists.cmake | 65 ++++++++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+), 3 deletions(-) create mode 100755 modules/CheckSymbolExists.cmake (limited to 'modules') diff --git a/modules/CheckCXXSourceCompiles.cmake b/modules/CheckCXXSourceCompiles.cmake index 43055dee..a4785756 100644 --- a/modules/CheckCXXSourceCompiles.cmake +++ b/modules/CheckCXXSourceCompiles.cmake @@ -12,6 +12,8 @@ MACRO(CHECK_CXX_SOURCE_COMPILES SOURCE VAR) IF("${VAR}" MATCHES "^${VAR}$") SET(MACRO_CHECK_FUNCTION_DEFINITIONS "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") + SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES) IF(CMAKE_REQUIRED_LIBRARIES) SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") diff --git a/modules/CheckIncludeFiles.cmake b/modules/CheckIncludeFiles.cmake index 016402af..52870101 100644 --- a/modules/CheckIncludeFiles.cmake +++ b/modules/CheckIncludeFiles.cmake @@ -14,7 +14,7 @@ MACRO(CHECK_INCLUDE_FILES INCLUDE VARIABLE) IF("${VARIABLE}" MATCHES "^${VARIABLE}$") SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "-DINCLUDE_DIRECTORIES=${CMAKE_REQUIRED_INCLUDES}") - STRING(REGEX REPLACE ";" "\\\\;" CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}") +# STRING(REGEX REPLACE ";" "\\\\;" CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}") SET(CHECK_INCLUDE_FILES_CONTENT "/* */\n") SET(MACRO_CHECK_INCLUDE_FILES_FLAGS ${CMAKE_REQUIRED_FLAGS}) @@ -32,9 +32,8 @@ MACRO(CHECK_INCLUDE_FILES INCLUDE VARIABLE) ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckIncludeFiles.c CMAKE_FLAGS -# -DINCLUDE_DIRECTORIES=${CMAKE_REQUIRED_INCLUDE_DIR} -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_INCLUDE_FILES_FLAGS} - ${CHECK_INCLUDE_FILES_INCLUDE_DIRS} + "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}" OUTPUT_VARIABLE OUTPUT) IF(${VARIABLE}) MESSAGE(STATUS "Looking for include files ${VARIABLE} - found") diff --git a/modules/CheckSymbolExists.cmake b/modules/CheckSymbolExists.cmake new file mode 100755 index 00000000..ce3e4afa --- /dev/null +++ b/modules/CheckSymbolExists.cmake @@ -0,0 +1,65 @@ +# - Check if the symbol exists in include files +# CHECK_SYMBOL_EXISTS(SYMBOL FILES VARIABLE) +# +# SYMBOL - symbol +# FILES - include files to check +# VARIABLE - variable to return result +# +# If CMAKE_REQUIRED_FLAGS is set then those flags will be passed into the +# compile of the program likewise if CMAKE_REQUIRED_LIBRARIES is set then +# those libraries will be linked against the test program. If CMAKE_REQUIRED_INCLUDES +# is set then these directories will be added to the include search path. + + +MACRO(CHECK_SYMBOL_EXISTS SYMBOL FILES VARIABLE) + IF("${VARIABLE}" MATCHES "^${VARIABLE}$") + SET(CHECK_SYMBOL_EXISTS_CONTENT "/* */\n") + SET(MACRO_CHECK_SYMBOL_EXISTS_FLAGS ${CMAKE_REQUIRED_FLAGS}) + SET(CHECK_SYMBOL_EXISTS_LIBS) + SET(CHECK_SYMBOL_EXISTS_ADD_INCLUDES) + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_SYMBOL_EXISTS_LIBS + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ENDIF(CMAKE_REQUIRED_LIBRARIES) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_SYMBOL_EXISTS_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ENDIF(CMAKE_REQUIRED_INCLUDES) + FOREACH(FILE ${FILES}) + SET(CHECK_SYMBOL_EXISTS_CONTENT + "${CHECK_SYMBOL_EXISTS_CONTENT}#include <${FILE}>\n") + ENDFOREACH(FILE) + SET(CHECK_SYMBOL_EXISTS_CONTENT + "${CHECK_SYMBOL_EXISTS_CONTENT}\nvoid cmakeRequireSymbol(int dummy,...){(void)dummy;}\nint main()\n{\n#ifndef ${SYMBOL}\n cmakeRequireSymbol(0,&${SYMBOL});\n#endif\n return 0;\n}\n") + + FILE(WRITE ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c + "${CHECK_SYMBOL_EXISTS_CONTENT}") + + MESSAGE(STATUS "Looking for ${SYMBOL}") + TRY_COMPILE(${VARIABLE} + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c + CMAKE_FLAGS + -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_SYMBOL_EXISTS_FLAGS} + "${CHECK_SYMBOL_EXISTS_ADD_INCLUDES}" + "${CHECK_SYMBOL_EXISTS_LIBS}" + OUTPUT_VARIABLE OUTPUT) + IF(${VARIABLE}) + MESSAGE(STATUS "Looking for ${SYMBOL} - found") + SET(${VARIABLE} 1 CACHE INTERNAL "Have symbol ${SYMBOL}") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log + "Determining if the ${SYMBOL} " + "exist passed with the following output:\n" + "${OUTPUT}\nFile ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c:\n" + "${CHECK_SYMBOL_EXISTS_CONTENT}\n") + ELSE(${VARIABLE}) + MESSAGE(STATUS "Looking for ${SYMBOL} - not found.") + SET(${VARIABLE} "" CACHE INTERNAL "Have symbol ${SYMBOL}") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Determining if the ${SYMBOL} " + "exist failed with the following output:\n" + "${OUTPUT}\nFile ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c:\n" + "${CHECK_SYMBOL_EXISTS_CONTENT}\n") + ENDIF(${VARIABLE}) + ENDIF("${VARIABLE}" MATCHES "^${VARIABLE}$") +ENDMACRO(CHECK_SYMBOL_EXISTS) -- cgit v1.2.1 From 184ab1934776308a006e95bdc38333d71952a516 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 5 Feb 2006 19:01:05 +0000 Subject: -fix the generation of the la-files for out-of-source builds -fix the klockfile test Alex svn path=/trunk/KDE/kdelibs/; revision=506092 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9a4858c1..322fec7e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -376,7 +376,7 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) - SET(_laname ${_laname}.la) + SET(_laname ${LIBRARY_OUTPUT_PATH}/${_laname}.la) FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") -- cgit v1.2.1 From 269ad8d203f9d00e3cb2cc0ad9ba61cf9ff0b1bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 5 Feb 2006 20:46:54 +0000 Subject: give msvc all it needs svn path=/trunk/KDE/kdelibs/; revision=506141 --- modules/FindKDE4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 3176a7c1..d4dccf91 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -174,7 +174,7 @@ ENDIF(MINGW) IF(MSVC) SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} kdewin32 ) SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) - SET( _KDE4_PLATFORM_DEFINITIONS -D_WINSOCKAPI_ -DWIN32_LEAN_AND_MEAN -DMAKE_KDEWIN32_LIB -DUNICODE ) + SET( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DMAKE_KDEWIN32_LIB -DUNICODE ) SET( CMAKE_INCLUDE_PATH ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) ENDIF(MSVC) @@ -285,4 +285,4 @@ ENDIF (NOT KDE4_FIND_QUIETLY) SET(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) # not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -SET(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -DQT_NO_TRANSLATION -D_REENTRANT ) +SET(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT ) -- cgit v1.2.1 From 1583b1066841e0f2936b3dcdc91656c451b27b8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 5 Feb 2006 21:24:45 +0000 Subject: remove wrong macro svn path=/trunk/KDE/kdelibs/; revision=506148 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index d4dccf91..31db32de 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -174,7 +174,7 @@ ENDIF(MINGW) IF(MSVC) SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} kdewin32 ) SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) - SET( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DMAKE_KDEWIN32_LIB -DUNICODE ) + SET( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) SET( CMAKE_INCLUDE_PATH ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) ENDIF(MSVC) -- cgit v1.2.1 From 623d9bee46dbb53c4adf1ba8fcbd1c729a9098a6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 6 Feb 2006 16:56:28 +0000 Subject: -if (WIN32): create the libraries in the same directory as the executables, so the linker will find them automatically Alex svn path=/trunk/KDE/kdelibs/; revision=506382 --- modules/FindKDE4.cmake | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 31db32de..dc5d38df 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -75,15 +75,17 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) MESSAGE(STATUS "Building kdelibs...") - SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - SET(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) + + SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + IF (WIN32) - SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + SET(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # create the libraries in the same directory as the executables, so the linker will find them ELSE (WIN32) - SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) ENDIF (WIN32) SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) -- cgit v1.2.1 From 613824ee96a753618066da1536dcd14eb59615bb Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 6 Feb 2006 19:31:33 +0000 Subject: unbreak compilation with cmake :-/ Alex svn path=/trunk/KDE/kdelibs/; revision=506418 --- modules/FindKDE4.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index dc5d38df..5aca073d 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -76,7 +76,6 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) MESSAGE(STATUS "Building kdelibs...") SET(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) - SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) @@ -87,6 +86,8 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) ENDIF (WIN32) + + SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/kconfig_compiler ) -- cgit v1.2.1 From 59b48b4798e6a65b4dfd3d2f54a7fa9d812d641a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 6 Feb 2006 22:04:07 +0000 Subject: one more fix for uic3 before switching to EXEC_PROCESS, which will require everybody who uses cmake to update cmake Alex svn path=/trunk/KDE/kdelibs/; revision=506514 --- modules/kde4uic.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 16bce3a8..fe1e6b6c 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -42,7 +42,7 @@ STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONT # workaround which removes the stderr messages from uic, will be removed as soon as # I switch to EXEC_PROCESS() in the calls above -STRING(REGEX REPLACE "\nuic3: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) +STRING(REGEX REPLACE "\n[^\n]*uic3: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) STRING(REGEX REPLACE "\n'[^\n]+' [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) STRING(REGEX REPLACE "\nWarning: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) -- cgit v1.2.1 From 455902e5dc8299b22fa6087f8fc2d756146f8515 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 7 Feb 2006 11:16:32 +0000 Subject: Now we can install .la lib into good directory before it installed la lib just in /usr/lib/kde4 svn path=/trunk/KDE/kdelibs/; revision=506638 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 322fec7e..43d6eba9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -371,7 +371,7 @@ MACRO(KDE4_FOOTER) ENDMACRO(KDE4_FOOTER) -MACRO(KDE4_CREATE_LIBTOOL_FILE _target) +MACRO(KDE4_CREATE_LIBTOOL_FILE _target _subdir) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) @@ -393,9 +393,9 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target) 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}/kde4'\n") + FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${KDE4_LIB_INSTALL_DIR}/kde4/${_subdir}'\n") - INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/kde4 FILES ${_laname}) + INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/kde4/${_subdir} FILES ${_laname}) ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) @@ -439,7 +439,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_CREATE_LIBTOOL_FILE(${_target_NAME}) # ENDIF (UNIX) ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -- cgit v1.2.1 From 5fc4f5fe3e9731dc869df15080b2b3b532c99d66 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 7 Feb 2006 11:57:14 +0000 Subject: Now we specify lib dir now we can specify /usr/lib directory and not jsut usr/lib/kde4 for la lib (necessary for .la installed into /usr/lib) svn path=/trunk/KDE/kdelibs/; revision=506650 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 43d6eba9..d8566dab 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -393,9 +393,9 @@ 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}/kde4/${_subdir}'\n") + FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${KDE4_LIB_INSTALL_DIR}/${_subdir}'\n") - INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/kde4/${_subdir} FILES ${_laname}) + INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/${_subdir} FILES ${_laname}) ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) -- cgit v1.2.1 From b47c577aba55d74f60cc4ac0ac5ea42b333dc615 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Tue, 7 Feb 2006 11:58:12 +0000 Subject: undo /lib=/bin for win32, todo copy Dlls to /bin svn path=/trunk/KDE/kdelibs/; revision=506651 --- modules/FindKDE4.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 5aca073d..d30e31f8 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -81,7 +81,8 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) IF (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) - SET(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # create the libraries in the same directory as the executables, so the linker will find them + SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + # todo: copy Dlls only to ${CMAKE_BINARY_DIR}/lib ELSE (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) -- cgit v1.2.1 From c11fc5de759fa645e301e50fbb4e794c80d1a117 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Feb 2006 20:16:28 +0000 Subject: -move the find_package(PCRE) from kdelibs/CMakeLists.txt to kdelibs/kjs/CMakeLists.txt -add a check for regex.h in kjs/CMakeLists.txt and error out if neither PCRE nor regex.h have been found build kdelibs/win independent from the rest of kdelibs/ this means 1) run cmake on kdelibs/win/ 2) make kdelibs/win 3) install kdelibs/win 4) run cmake in kdelibs/ -> point it to the place where kdewin32 has been installed to 5) make kdelibs/ 6) make install Peter, can you please check that kdelibs/win/ builds and also installs this way ? It might still be possible that somewhere stuff from kdelibs/ is included directly. Also eventually $ENV{MSSDK}/include might have to be added in kdelibs/win/ ConfigureChecksWin.cmake is not used anymore, we can remove it if it works this way. Please check also that kdelibs/ configures correctly again. It is required that the include dir of kdewin32 is set. If all the HAVE_FOO_PROTO checks still fail, please post the error messages from CMakeError.log Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: syntheticpp@gmx.net CCMAIL: bill.hoffman@kitware.com svn path=/trunk/KDE/kdelibs/; revision=506872 --- modules/FindKDE4.cmake | 69 ++++++++++++++++++++++++---------- modules/MacroOptionalFindPackage.cmake | 6 +++ 2 files changed, 55 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index d30e31f8..3a9b2dcf 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -81,7 +81,8 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) IF (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) - SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + SET(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) +# SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) # todo: copy Dlls only to ${CMAKE_BINARY_DIR}/lib ELSE (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) @@ -161,26 +162,54 @@ IF(UNIX AND NOT APPLE) ENDIF(UNIX AND NOT APPLE) -IF(CYGWIN) - MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") -ENDIF(CYGWIN) - - -# windows, mingw -IF(MINGW) - SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} kdewin32 ) - SET(_KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/include/mingw ) - SET( CMAKE_INCLUDE_PATH ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/mingw ) -ENDIF(MINGW) - -# windows, microsoft compiler -IF(MSVC) - SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} kdewin32 ) - SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) - SET( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) - SET( CMAKE_INCLUDE_PATH ${KDE4_INCLUDE_DIR}/win/include ${KDE4_INCLUDE_DIR}/win/include/msvc ) -ENDIF(MSVC) +IF (WIN32) + + IF(CYGWIN) + MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") + ENDIF(CYGWIN) + + + # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ + FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32) + FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h) + + # kdelibs/win/ has to be built before the rest of kdelibs/ + # eventually it will be moved out from kdelibs/ + IF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) + MESSAGE(FATAL_ERROR "Could not find kdewin32 library, build and install kdelibs/win/ before building kdelibs/") + ENDIF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) + + IF(MINGW) + #mingw compiler + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + ELSE(MINGW) + # msvc compiler + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ) + + # add the MS SDK include directory if available + SET(MS_SDK_DIR $ENV{MSSdk}) + IF (MS_SDK_DIR) + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDES} ${MS_SDK_DIR}/include ) + ENDIF (MS_SDK_DIR) + + ENDIF(MINGW) + + SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) + SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARY} ) + SET( CMAKE_INCLUDE_PATH ${KDEWIN32_INCLUDES} ) + + # windows, mingw + IF(MINGW) + #hmmm, something special to do here ? + ENDIF(MINGW) + + # windows, microsoft compiler + IF(MSVC) + SET( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + ENDIF(MSVC) + +ENDIF (WIN32) # only on linux, but not e.g. on FreeBSD: diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake index 4ad64a41..1b0cf1e7 100644 --- a/modules/MacroOptionalFindPackage.cmake +++ b/modules/MacroOptionalFindPackage.cmake @@ -11,6 +11,12 @@ MACRO(MACRO_OPTIONAL_FIND_PACKAGE _name ) OPTION(WITH_${_name} "Search for ${_name} package" ON) IF (WITH_${_name}) FIND_PACKAGE(${_name} ${ARGN}) + ELSE (WITH_${_name}) + SET(${_name}_FOUND) + SET(${_name}_INCLUDE_DIR) + SET(${_name}_INCLUDES) + SET(${_name}_LIBRARY) + SET(${_name}_LIBRARIES) ENDIF (WITH_${_name}) ENDMACRO(MACRO_OPTIONAL_FIND_PACKAGE) -- cgit v1.2.1 From 33ef2dcde9be9d37e41a3c905f85849e918a240a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Feb 2006 20:32:01 +0000 Subject: -add -DMAKE_KDEWIN32_LIB to the build in kdelibs/win/ -convert KDECORE_EXPORT in include/mingw to KDEWIN32_EXPORT, is this correct ? -use CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH in FindKDE4.cmake Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=506879 --- modules/FindKDE4.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 3a9b2dcf..b7ef270d 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -171,8 +171,8 @@ IF (WIN32) # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ - FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32) - FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h) + FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 PATHS ${CMAKE_LIBRARY_PATH}) + FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h ${CMAKE_INCLUDE_PATH}) # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ @@ -182,10 +182,10 @@ IF (WIN32) IF(MINGW) #mingw compiler - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES} ${CMAKE_INCLUDE_PATH}) ELSE(MINGW) # msvc compiler - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ) + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${CMAKE_INCLUDE_PATH}) # add the MS SDK include directory if available SET(MS_SDK_DIR $ENV{MSSdk}) -- cgit v1.2.1 From fce52d437088520993f5f0df591408aa7e8e6eb4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Feb 2006 21:49:31 +0000 Subject: two new macros: macro_append_directory_properties() and macro_append_source_files_properties() don't use CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH in FindKDE4.cmake clean more files Alex svn path=/trunk/KDE/kdelibs/; revision=506927 --- modules/FindKDE4.cmake | 13 ++++++++---- modules/KDE4Macros.cmake | 29 ++++++++++++++------------ modules/MacroAppendDirectoryProperties.cmake | 19 +++++++++++++++++ modules/MacroAppendSourceFilesProperties.cmake | 21 +++++++++++++++++++ modules/MacroLibrary.cmake | 2 ++ 5 files changed, 67 insertions(+), 17 deletions(-) create mode 100644 modules/MacroAppendDirectoryProperties.cmake create mode 100644 modules/MacroAppendSourceFilesProperties.cmake (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index b7ef270d..08ad73be 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -35,6 +35,8 @@ FIND_PACKAGE(Qt4 REQUIRED) SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) +INCLUDE (MacroLibrary) + #add some KDE specific stuff @@ -171,21 +173,24 @@ IF (WIN32) # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ - FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 PATHS ${CMAKE_LIBRARY_PATH}) - FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h ${CMAKE_INCLUDE_PATH}) + FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 PATHS ) + FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h ) # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ IF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) MESSAGE(FATAL_ERROR "Could not find kdewin32 library, build and install kdelibs/win/ before building kdelibs/") ENDIF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) + + # add the winsock2 library, using find_library or something like this would probably be better + SET(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY} ws2_32) IF(MINGW) #mingw compiler - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES} ${CMAKE_INCLUDE_PATH}) + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) ELSE(MINGW) # msvc compiler - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${CMAKE_INCLUDE_PATH}) + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES}) # add the MS SDK include directory if available SET(MS_SDK_DIR $ENV{MSSdk}) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d8566dab..db49f3a2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -18,18 +18,18 @@ #this should better be part of cmake: #add an additional file to the list of files a source file depends on -MACRO(KDE4_ADD_FILE_DEPENDANCY file) - - GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) - IF (_deps) - SET(_deps ${_deps} ${ARGN}) - ELSE (_deps) - SET(_deps ${ARGN}) - ENDIF (_deps) - - SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") - -ENDMACRO(KDE4_ADD_FILE_DEPENDANCY) +#MACRO(KDE4_ADD_FILE_DEPENDANCY file) +# +# GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) +# IF (_deps) +# SET(_deps ${_deps} ${ARGN}) +# ELSE (_deps) +# SET(_deps ${ARGN}) +# ENDIF (_deps) +# +# SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") +# +#ENDMACRO(KDE4_ADD_FILE_DEPENDANCY) #create the kidl and skeletion file for dcop stuff @@ -275,7 +275,8 @@ MACRO(KDE4_AUTOMOC) DEPENDS ${_header} ) - KDE4_ADD_FILE_DEPENDANCY(${_tmp_FILE} ${_moc}) +# KDE4_ADD_FILE_DEPENDANCY(${_tmp_FILE} ${_moc}) + MACRO_APPEND_SOURCE_FILES_PROPERTIES(${_tmp_FILE} PROPERTIES OBJECT_DEPENDS ${_moc} ) ENDFOREACH (_current_MOC_INC) ENDIF(_match) @@ -396,6 +397,7 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target _subdir) FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${KDE4_LIB_INSTALL_DIR}/${_subdir}'\n") INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/${_subdir} FILES ${_laname}) + MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_laname}) ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) @@ -448,6 +450,7 @@ ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) # IF (WIN32) # # under windows, just build a normal executable diff --git a/modules/MacroAppendDirectoryProperties.cmake b/modules/MacroAppendDirectoryProperties.cmake new file mode 100644 index 00000000..2fed5a55 --- /dev/null +++ b/modules/MacroAppendDirectoryProperties.cmake @@ -0,0 +1,19 @@ +# - MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES key values...) +# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) + +MACRO(MACRO_APPEND_DIRECTORY_PROPERTIES _properties _property) + GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ${_property} ) + IF (NOT _tmp_DIR_PROPS) + SET(_tmp_DIR_PROPS) + ENDIF (NOT _tmp_DIR_PROPS) + FOREACH(_value ${ARGN}) + IF (_tmp_DIR_PROPS) + SET(_tmp_DIR_PROPS ${_tmp_DIR_PROPS} ${_value}) + ELSE (_tmp_DIR_PROPS) + SET(_tmp_DIR_PROPS ${_value}) + ENDIF (_tmp_DIR_PROPS) + ENDFOREACH(_value ${ARGN}) + + SET_DIRECTORY_PROPERTIES(${_properties} ${_property} "${_tmp_DIR_PROPS}") +ENDMACRO(MACRO_APPEND_DIRECTORY_PROPERTIES) + diff --git a/modules/MacroAppendSourceFilesProperties.cmake b/modules/MacroAppendSourceFilesProperties.cmake new file mode 100644 index 00000000..4d387e20 --- /dev/null +++ b/modules/MacroAppendSourceFilesProperties.cmake @@ -0,0 +1,21 @@ +# - MACRO_APPEND_SOURCE_FILES_PROPERTIES( PROPERTIES key values...) +# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) + +MACRO(MACRO_APPEND_SOURCE_FILES_PROPERTIES _file _properties _property) + GET_SOURCE_FILE_PROPERTY(_tmp_FILE_PROPS ${_file} ${_property}) + + IF (NOT _tmp_FILE_PROPS) # make sure it's empty not e.g. "NOTFOUND" or "FALSE" + SET(_tmp_FILE_PROPS) + ENDIF (NOT _tmp_FILE_PROPS) + + FOREACH(_value ${ARGN}) + IF (_tmp_FILE_PROPS) + SET(_tmp_FILE_PROPS ${_tmp_FILE_PROPS} ${_value}) + ELSE (_tmp_FILE_PROPS) + SET(_tmp_FILE_PROPS ${_value}) + ENDIF (_tmp_FILE_PROPS) + ENDFOREACH(_value ${ARGN}) + + SET_SOURCE_FILES_PROPERTIES(${_file} ${_properties} ${_property} "${_tmp_FILE_PROPS}") +ENDMACRO(MACRO_APPEND_SOURCE_FILES_PROPERTIES) + diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 25abc38d..337a1087 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -2,4 +2,6 @@ # OPTIONAL_FIND_PACKAGE( [QUIT] ) INCLUDE (MacroOptionalFindPackage) +INCLUDE (MacroAppendDirectoryProperties) +INCLUDE (MacroAppendSourceFilesProperties) -- cgit v1.2.1 From 51f7b91d0443e8d846f5ca62b3b922b150b3778b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Feb 2006 22:08:52 +0000 Subject: make everything clean Alex svn path=/trunk/KDE/kdelibs/; revision=506938 --- modules/KDE4Macros.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index db49f3a2..68d45bad 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -42,6 +42,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) + SET(_skel_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.h) SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) IF (NOT HAVE_${_basename}_KIDL_RULE) @@ -62,6 +63,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} DEPENDS ${_kidl} ) + MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_skel_H}) ENDIF (NOT HAVE_${_basename}_SKEL_RULE) @@ -80,6 +82,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) + SET(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) IF (NOT HAVE_${_basename}_KIDL_RULE) @@ -100,6 +103,8 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} DEPENDS ${_kidl} ) + MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_stub_H}) + ENDIF (NOT HAVE_${_basename}_STUB_RULE) SET(${_sources} ${${_sources}} ${_stub_CPP}) -- cgit v1.2.1 From e9546235111d74688e81f3c2b0af539555f0c2e7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Feb 2006 22:34:26 +0000 Subject: adding KDEWIN32_INCLUDE_DIR to CMAKE_INCLUDE_PATH is pointless... Alex svn path=/trunk/KDE/kdelibs/; revision=506939 --- modules/FindKDE4.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 08ad73be..1c897998 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -202,7 +202,6 @@ IF (WIN32) SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARY} ) - SET( CMAKE_INCLUDE_PATH ${KDEWIN32_INCLUDES} ) # windows, mingw IF(MINGW) -- cgit v1.2.1 From 272a3726beaf6e0a925462211d2d18a535a38ff5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 8 Feb 2006 19:00:40 +0000 Subject: the Qt Assistant library is named QtAssistantClient Alex svn path=/trunk/KDE/kdelibs/; revision=507220 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 6c34226c..af9676a4 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -453,8 +453,8 @@ IF(QT4_QMAKE_FOUND) ENDIF (QT_USE_FRAMEWORKS) # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTDESIGNER_LIBRARY FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR}) -- cgit v1.2.1 From 8ad0121573a771ded4fd6dccc754eb5cfd3661af Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 8 Feb 2006 19:46:50 +0000 Subject: add some libnames svn path=/trunk/KDE/kdelibs/; revision=507241 --- modules/FindASPELL.cmake | 2 +- modules/FindBZip2.cmake | 2 +- modules/FindGIF.cmake | 2 +- modules/FindLibXml2.cmake | 2 +- modules/FindLibXslt.cmake | 2 +- modules/FindOpenSSL.cmake | 2 +- modules/FindQt4.cmake | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index 427b581d..4c524cc3 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -13,7 +13,7 @@ FIND_PATH(ASPELL_INCLUDE_DIR aspell.h /usr/local/include ) -FIND_LIBRARY(ASPELL_LIBRARY NAMES aspell +FIND_LIBRARY(ASPELL_LIBRARY NAMES aspell aspell-15 PATHS /usr/lib /usr/local/lib diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index cbf9b25a..3f4e493d 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -14,7 +14,7 @@ FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h /usr/local/include ) -FIND_LIBRARY(BZIP2_LIBRARY NAMES bz2 +FIND_LIBRARY(BZIP2_LIBRARY NAMES bz2 bzip2 PATHS /usr/lib /usr/local/lib diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index 08c59a59..c243deb8 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -13,7 +13,7 @@ FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/local/include ) -FIND_LIBRARY(GIF_LIBRARY NAMES gif ungif +FIND_LIBRARY(GIF_LIBRARY NAMES gif libgif ungif libungif PATHS /usr/lib /usr/local/lib diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 4be22454..5dca3a19 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -22,7 +22,7 @@ FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h /usr/local/include/libxml2 ) -FIND_LIBRARY(LIBXML2_LIBRARY NAMES xml2 +FIND_LIBRARY(LIBXML2_LIBRARY NAMES xml2 libxml2 PATHS ${_LibXml2LinkDir} /usr/lib diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 3d0dc525..6f120cbb 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -22,7 +22,7 @@ FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h /usr/local/include ) -FIND_LIBRARY(LIBXSLT_LIBRARY NAMES xslt +FIND_LIBRARY(LIBXSLT_LIBRARY NAMES xslt libxslt PATHS ${_LibXsltLinkDir} /usr/lib diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index f07908a0..e5240905 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -4,7 +4,7 @@ FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/local/include/ ) -FIND_LIBRARY(OPENSSL_LIBRARY NAMES ssl +FIND_LIBRARY(OPENSSL_LIBRARY NAMES ssl ssleay32 PATHS /usr/lib /usr/local/lib diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index af9676a4..6653995a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -448,7 +448,7 @@ IF(QT4_QMAKE_FOUND) # Set QT_QTTEST_LIBRARY FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTestd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR}) ENDIF (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From 8da037b9c177dc8055725beac87841f10d4ae80f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 8 Feb 2006 20:34:09 +0000 Subject: -remove macro_append_directory_properties() and add macro_additional_clean_files() -remove macro_append_source_files_properties() and add macro_add_file_dependencies() -build kICE as a static library and link to it, instead of including the sources multiple times -remove the -kdemain=main from dcop/, hope this didn't break things on windows some patches from Brad King: -rename the target dcop (the executable) to dcop_executable, otherwise MS Visual Studio complains about multiple targets with the same name , the name of the created executable stays "dcop" -add the dependency of all dcop stubs and skels to dcopidl2cpp, to make sure it is compiled before this rule is executed Alex svn path=/trunk/KDE/kdelibs/; revision=507257 --- modules/FindKDE4.cmake | 19 +++++++++++++------ modules/KDE4Macros.cmake | 21 ++++++++++----------- modules/MacroAddFileDependencies.cmake | 15 +++++++++++++++ modules/MacroAdditionalCleanFiles.cmake | 15 +++++++++++++++ modules/MacroAppendDirectoryProperties.cmake | 19 ------------------- modules/MacroAppendSourceFilesProperties.cmake | 21 --------------------- modules/MacroLibrary.cmake | 6 ++++-- 7 files changed, 57 insertions(+), 59 deletions(-) create mode 100644 modules/MacroAddFileDependencies.cmake create mode 100644 modules/MacroAdditionalCleanFiles.cmake delete mode 100644 modules/MacroAppendDirectoryProperties.cmake delete mode 100644 modules/MacroAppendSourceFilesProperties.cmake (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 1c897998..e8dda0a9 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -93,8 +93,10 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) - SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp ) - SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/kconfig_compiler ) + + # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC + SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) @@ -150,10 +152,13 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) -# this will move into Windows-cl.cmake -IF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") - SET(MSVC TRUE) -ENDIF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe") +# this is already in cmake cvs and can be removed once we require it +IF (WIN32) + GET_FILENAME_COMPONENT(_tmp_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME_WE) + IF ( _tmp_COMPILER_NAME MATCHES cl ) + SET(MSVC TRUE) + ENDIF ( _tmp_COMPILER_NAME MATCHES cl ) +ENDIF (WIN32) ##################### and now the platform specific stuff ############################ @@ -167,6 +172,8 @@ ENDIF(UNIX AND NOT APPLE) IF (WIN32) + + IF(CYGWIN) MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") ENDIF(CYGWIN) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 68d45bad..34a528d2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -61,9 +61,9 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} - DEPENDS ${_kidl} - ) - MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_skel_H}) + DEPENDS ${_kidl} dcopidl2cpp ) + + MACRO_ADDITIONAL_CLEAN_FILES( ${_skel_H}) ENDIF (NOT HAVE_${_basename}_SKEL_RULE) @@ -101,9 +101,9 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} - DEPENDS ${_kidl} - ) - MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_stub_H}) + DEPENDS ${_kidl} dcopidl2cpp ) + + MACRO_ADDITIONAL_CLEAN_FILES( ${_stub_H}) ENDIF (NOT HAVE_${_basename}_STUB_RULE) @@ -130,7 +130,7 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ) + DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} kconfig_compiler ) SET(${_sources} ${${_sources}} ${_src_FILE}) @@ -280,8 +280,7 @@ MACRO(KDE4_AUTOMOC) DEPENDS ${_header} ) -# KDE4_ADD_FILE_DEPENDANCY(${_tmp_FILE} ${_moc}) - MACRO_APPEND_SOURCE_FILES_PROPERTIES(${_tmp_FILE} PROPERTIES OBJECT_DEPENDS ${_moc} ) + MACRO_ADD_FILE_DEPENDENCIES(${_tmp_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) ENDIF(_match) @@ -402,7 +401,7 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target _subdir) FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${KDE4_LIB_INSTALL_DIR}/${_subdir}'\n") INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/${_subdir} FILES ${_laname}) - MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_laname}) + MACRO_ADDITIONAL_CLEAN_FILES( ${_laname}) ENDMACRO(KDE4_CREATE_LIBTOOL_FILE) @@ -455,7 +454,7 @@ ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) + MACRO_ADDITIONAL_CLEAN_FILES( ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) # IF (WIN32) # # under windows, just build a normal executable diff --git a/modules/MacroAddFileDependencies.cmake b/modules/MacroAddFileDependencies.cmake new file mode 100644 index 00000000..e263c6b8 --- /dev/null +++ b/modules/MacroAddFileDependencies.cmake @@ -0,0 +1,15 @@ +# - MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) +# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) + +MACRO(MACRO_ADD_FILE_DEPENDENCIES _file) + + GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS) + IF (_deps) + SET(_deps ${_deps} ${ARGN}) + ELSE (_deps) + SET(_deps ${ARGN}) + ENDIF (_deps) + + SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}") + +ENDMACRO(MACRO_ADD_FILE_DEPENDENCIES) diff --git a/modules/MacroAdditionalCleanFiles.cmake b/modules/MacroAdditionalCleanFiles.cmake new file mode 100644 index 00000000..a3d930dc --- /dev/null +++ b/modules/MacroAdditionalCleanFiles.cmake @@ -0,0 +1,15 @@ +# - MACRO_ADDITIONAL_CLEAN_FILES(files...) +# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) + +MACRO(MACRO_ADDITIONAL_CLEAN_FILES) + GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ADDITIONAL_MAKE_CLEAN_FILES ) + + IF (_tmp_DIR_PROPS) + SET(_tmp_DIR_PROPS ${_tmp_DIR_PROPS} ${ARGN}) + ELSE (_tmp_DIR_PROPS) + SET(_tmp_DIR_PROPS ${ARGN}) + ENDIF (_tmp_DIR_PROPS) + + SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${_tmp_DIR_PROPS}") +ENDMACRO(MACRO_ADDITIONAL_CLEAN_FILES) + diff --git a/modules/MacroAppendDirectoryProperties.cmake b/modules/MacroAppendDirectoryProperties.cmake deleted file mode 100644 index 2fed5a55..00000000 --- a/modules/MacroAppendDirectoryProperties.cmake +++ /dev/null @@ -1,19 +0,0 @@ -# - MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES key values...) -# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) - -MACRO(MACRO_APPEND_DIRECTORY_PROPERTIES _properties _property) - GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ${_property} ) - IF (NOT _tmp_DIR_PROPS) - SET(_tmp_DIR_PROPS) - ENDIF (NOT _tmp_DIR_PROPS) - FOREACH(_value ${ARGN}) - IF (_tmp_DIR_PROPS) - SET(_tmp_DIR_PROPS ${_tmp_DIR_PROPS} ${_value}) - ELSE (_tmp_DIR_PROPS) - SET(_tmp_DIR_PROPS ${_value}) - ENDIF (_tmp_DIR_PROPS) - ENDFOREACH(_value ${ARGN}) - - SET_DIRECTORY_PROPERTIES(${_properties} ${_property} "${_tmp_DIR_PROPS}") -ENDMACRO(MACRO_APPEND_DIRECTORY_PROPERTIES) - diff --git a/modules/MacroAppendSourceFilesProperties.cmake b/modules/MacroAppendSourceFilesProperties.cmake deleted file mode 100644 index 4d387e20..00000000 --- a/modules/MacroAppendSourceFilesProperties.cmake +++ /dev/null @@ -1,21 +0,0 @@ -# - MACRO_APPEND_SOURCE_FILES_PROPERTIES( PROPERTIES key values...) -# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) - -MACRO(MACRO_APPEND_SOURCE_FILES_PROPERTIES _file _properties _property) - GET_SOURCE_FILE_PROPERTY(_tmp_FILE_PROPS ${_file} ${_property}) - - IF (NOT _tmp_FILE_PROPS) # make sure it's empty not e.g. "NOTFOUND" or "FALSE" - SET(_tmp_FILE_PROPS) - ENDIF (NOT _tmp_FILE_PROPS) - - FOREACH(_value ${ARGN}) - IF (_tmp_FILE_PROPS) - SET(_tmp_FILE_PROPS ${_tmp_FILE_PROPS} ${_value}) - ELSE (_tmp_FILE_PROPS) - SET(_tmp_FILE_PROPS ${_value}) - ENDIF (_tmp_FILE_PROPS) - ENDFOREACH(_value ${ARGN}) - - SET_SOURCE_FILES_PROPERTIES(${_file} ${_properties} ${_property} "${_tmp_FILE_PROPS}") -ENDMACRO(MACRO_APPEND_SOURCE_FILES_PROPERTIES) - diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 337a1087..f82a5db8 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -2,6 +2,8 @@ # OPTIONAL_FIND_PACKAGE( [QUIT] ) INCLUDE (MacroOptionalFindPackage) -INCLUDE (MacroAppendDirectoryProperties) -INCLUDE (MacroAppendSourceFilesProperties) +INCLUDE (MacroAdditionalCleanFiles) +INCLUDE (MacroAddFileDependencies) +#INCLUDE (MacroAppendDirectoryProperties) +#INCLUDE (MacroAppendSourceFilesProperties) -- cgit v1.2.1 From 16c16f6238c4cd2c5c649af5cd64a7f5b87f64e7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 9 Feb 2006 17:30:10 +0000 Subject: -move find_package(pcre) back to kdelibs/CMakeLists.txt, otherwise HAVE_PCREPOSIX doesn't get set -use qPrintable() in kded/kbuildsycoca.cpp patches by Brad King: -fix stat.h for mingw -fix typo in FindQt4.cmake -only depend on dcopidl2ccp and kconfig_compiler when compiling kdelibs Alex svn path=/trunk/KDE/kdelibs/; revision=507620 --- modules/FindKDE4.cmake | 9 +++++++++ modules/FindQt4.cmake | 2 +- modules/KDE4Macros.cmake | 6 +++--- 3 files changed, 13 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index e8dda0a9..e4f0a2d6 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -98,8 +98,17 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + # when building kdelibs, make the dcop and kcfg rules depend on the binaries... + SET( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) + SET( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + + ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + # ... but not otherwise + SET( _KDE4_DCOPIDL2CPP_DEP ) + SET( _KDE4_KCONFIG_COMPILER_DEP) + # at first the KDE include direcory # this should better check for a header which didn't exist in KDE < 4 FIND_PATH(KDE4_INCLUDE_DIR kurl.h diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 6653995a..894c42b1 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -494,7 +494,7 @@ IF(QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTCORE) _QT4_ADJUST_LIB_VARS(QTGUI) _QT4_ADJUST_LIB_VARS(QT3SUPPORT) - _QT4_ADJUST_LIB_VARS(QTASSISTENT) + _QT4_ADJUST_LIB_VARS(QTASSISTANT) _QT4_ADJUST_LIB_VARS(QTDESIGNER) _QT4_ADJUST_LIB_VARS(QTMOTIF) _QT4_ADJUST_LIB_VARS(QTNETWORK) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 34a528d2..4034ebb6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -61,7 +61,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} - DEPENDS ${_kidl} dcopidl2cpp ) + DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) MACRO_ADDITIONAL_CLEAN_FILES( ${_skel_H}) @@ -101,7 +101,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} - DEPENDS ${_kidl} dcopidl2cpp ) + DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) MACRO_ADDITIONAL_CLEAN_FILES( ${_stub_H}) @@ -130,7 +130,7 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} kconfig_compiler ) + DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) SET(${_sources} ${${_sources}} ${_src_FILE}) -- cgit v1.2.1 From 07660ecde4e99774ade07cebd9233de8495ce31f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 9 Feb 2006 18:17:53 +0000 Subject: fixes for msys Alex svn path=/trunk/KDE/kdelibs/; revision=507636 --- modules/CheckIncludeFiles.cmake | 6 ++++-- modules/FindGIF.cmake | 2 +- modules/FindKDE4.cmake | 11 ++++++++--- 3 files changed, 13 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/CheckIncludeFiles.cmake b/modules/CheckIncludeFiles.cmake index 52870101..03676fb5 100644 --- a/modules/CheckIncludeFiles.cmake +++ b/modules/CheckIncludeFiles.cmake @@ -13,8 +13,10 @@ MACRO(CHECK_INCLUDE_FILES INCLUDE VARIABLE) IF("${VARIABLE}" MATCHES "^${VARIABLE}$") - SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "-DINCLUDE_DIRECTORIES=${CMAKE_REQUIRED_INCLUDES}") -# STRING(REGEX REPLACE ";" "\\\\;" CHECK_INCLUDE_FILES_INCLUDE_DIRS "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}") + SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "-DINCLUDE_DIRECTORIES=${CMAKE_REQUIRED_INCLUDES}") + ENDIF(CMAKE_REQUIRED_INCLUDES) SET(CHECK_INCLUDE_FILES_CONTENT "/* */\n") SET(MACRO_CHECK_INCLUDE_FILES_FLAGS ${CMAKE_REQUIRED_FLAGS}) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index c243deb8..b1dc4a57 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -13,7 +13,7 @@ FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/local/include ) -FIND_LIBRARY(GIF_LIBRARY NAMES gif libgif ungif libungif +FIND_LIBRARY(GIF_LIBRARY NAMES gif libgif ungif libungif giflib PATHS /usr/lib /usr/local/lib diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index e4f0a2d6..a6d016ef 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -81,11 +81,16 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + # adjust dcopidl and the library output path depending on the platform IF (WIN32) - SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + # under windows dcopidl.bat has to be used, except when using MSYS, then the perl script has to be used, Alex + IF ("${CMAKE_GENERATOR}" MATCHES "MSYS") + SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + ELSE ("${CMAKE_GENERATOR}" MATCHES "MSYS") + SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + ENDIF ("${CMAKE_GENERATOR}" MATCHES "MSYS") + SET(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) -# SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - # todo: copy Dlls only to ${CMAKE_BINARY_DIR}/lib ELSE (WIN32) SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) -- cgit v1.2.1 From 202be9e4fd8d1fabab4c440927833a10c2f42a4e Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 9 Feb 2006 22:20:41 +0000 Subject: moved KICE_EXPORT definition to kdelibs_export_win.h svn path=/trunk/KDE/kdelibs/; revision=507730 --- modules/FindPCRE.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index fa61a430..0722499f 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -2,18 +2,21 @@ FIND_PATH(PCRE_INCLUDE_DIR pcre.h /usr/include/ /usr/local/include/ +$ENV{GNUWIN32}/include/ ) FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre PATHS /usr/lib /usr/local/lib +$ENV{GNUWIN32}/lib/ ) FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS /usr/lib /usr/local/lib +$ENV{GNUWIN32}/lib/ ) SET(PCRE_LIBRARY ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY}) -- cgit v1.2.1 From 3ffc94f7afb0182846fc2beadf1b540a42730fa2 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 9 Feb 2006 22:21:31 +0000 Subject: revert last change svn path=/trunk/KDE/kdelibs/; revision=507732 --- modules/FindPCRE.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 0722499f..fa61a430 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -2,21 +2,18 @@ FIND_PATH(PCRE_INCLUDE_DIR pcre.h /usr/include/ /usr/local/include/ -$ENV{GNUWIN32}/include/ ) FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre PATHS /usr/lib /usr/local/lib -$ENV{GNUWIN32}/lib/ ) FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS /usr/lib /usr/local/lib -$ENV{GNUWIN32}/lib/ ) SET(PCRE_LIBRARY ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY}) -- cgit v1.2.1 From ebd6503159beebe2dc1f65316d6283d75deb8def Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 10 Feb 2006 01:06:43 +0000 Subject: Remove forks - use the versions from the real cmake now. svn path=/trunk/KDE/kdelibs/; revision=507779 --- modules/CheckCXXSourceCompiles.cmake | 53 ----------------------------- modules/CheckIncludeFiles.cmake | 56 ------------------------------- modules/CheckSymbolExists.cmake | 65 ------------------------------------ modules/CheckTypeSize.cmake | 52 ----------------------------- 4 files changed, 226 deletions(-) delete mode 100644 modules/CheckCXXSourceCompiles.cmake delete mode 100644 modules/CheckIncludeFiles.cmake delete mode 100755 modules/CheckSymbolExists.cmake delete mode 100644 modules/CheckTypeSize.cmake (limited to 'modules') diff --git a/modules/CheckCXXSourceCompiles.cmake b/modules/CheckCXXSourceCompiles.cmake deleted file mode 100644 index a4785756..00000000 --- a/modules/CheckCXXSourceCompiles.cmake +++ /dev/null @@ -1,53 +0,0 @@ -# - Check if the source code provided in the SOURCE argument compiles. -# CHECK_CXX_SOURCE_COMPILES(SOURCE VAR) -# - macro which checks if the source code compiles\ -# SOURCE - source code to try to compile -# VAR - variable to store size if the type exists. -# Checks the following optional VARIABLES (not arguments) -# CMAKE_REQUIRED_LIBRARIES - Link to extra libraries -# CMAKE_REQUIRED_FLAGS - Extra flags to C compiler -# - -MACRO(CHECK_CXX_SOURCE_COMPILES SOURCE VAR) - IF("${VAR}" MATCHES "^${VAR}$") - SET(MACRO_CHECK_FUNCTION_DEFINITIONS - "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") - SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES) - SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES) - IF(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES - "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ENDIF(CMAKE_REQUIRED_LIBRARIES) - IF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES - "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - ENDIF(CMAKE_REQUIRED_INCLUDES) - FILE(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx" - "${SOURCE}") - - MESSAGE(STATUS "Performing Test ${VAR}") - TRY_COMPILE(${VAR} - ${CMAKE_BINARY_DIR} - ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/src.cxx - CMAKE_FLAGS - "${CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES}" - "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}" - OUTPUT_VARIABLE OUTPUT) - IF(${VAR}) - SET(${VAR} 1 CACHE INTERNAL "Test ${FUNCTION}") - MESSAGE(STATUS "Performing Test ${VAR} - Success") - WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log - "Performing C++ SOURCE FILE Test ${VAR} succeded with the following output:\n" - "${OUTPUT}\n" - "Source file was:\n${SOURCE}\n" APPEND) - ELSE(${VAR}) - MESSAGE(STATUS "Performing Test ${VAR} - Failed") - SET(${VAR} "" CACHE INTERNAL "Test ${FUNCTION}") - WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Performing C++ SOURCE FILE Test ${VAR} failed with the following output:\n" - "${OUTPUT}\n" - "Source file was:\n${SOURCE}\n" APPEND) - ENDIF(${VAR}) - ENDIF("${VAR}" MATCHES "^${VAR}$") -ENDMACRO(CHECK_CXX_SOURCE_COMPILES) - diff --git a/modules/CheckIncludeFiles.cmake b/modules/CheckIncludeFiles.cmake deleted file mode 100644 index 03676fb5..00000000 --- a/modules/CheckIncludeFiles.cmake +++ /dev/null @@ -1,56 +0,0 @@ -# - Check if the files can be included -# -# CHECK_INCLUDE_FILES(INCLUDE VARIABLE) -# -# INCLUDE - list of files to include -# VARIABLE - variable to return result -# -# If CMAKE_REQUIRED_FLAGS is set then those flags will be passed into the -# compile of the program -# additionally to the original cmake module this one uses CMAKE_REQUIRED_INCLUDES -# where you can specify a directory which will be added to the include path - -MACRO(CHECK_INCLUDE_FILES INCLUDE VARIABLE) - IF("${VARIABLE}" MATCHES "^${VARIABLE}$") - - SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS) - IF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_INCLUDE_FILES_INCLUDE_DIRS "-DINCLUDE_DIRECTORIES=${CMAKE_REQUIRED_INCLUDES}") - ENDIF(CMAKE_REQUIRED_INCLUDES) - - SET(CHECK_INCLUDE_FILES_CONTENT "/* */\n") - SET(MACRO_CHECK_INCLUDE_FILES_FLAGS ${CMAKE_REQUIRED_FLAGS}) - FOREACH(FILE ${INCLUDE}) - SET(CHECK_INCLUDE_FILES_CONTENT - "${CHECK_INCLUDE_FILES_CONTENT}#include <${FILE}>\n") - ENDFOREACH(FILE) - SET(CHECK_INCLUDE_FILES_CONTENT - "${CHECK_INCLUDE_FILES_CONTENT}\n\nint main(){return 0;}\n") - FILE(WRITE ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckIncludeFiles.c - "${CHECK_INCLUDE_FILES_CONTENT}") - - MESSAGE(STATUS "Looking for include files ${VARIABLE}") - TRY_COMPILE(${VARIABLE} - ${CMAKE_BINARY_DIR} - ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckIncludeFiles.c - CMAKE_FLAGS - -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_INCLUDE_FILES_FLAGS} - "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}" - OUTPUT_VARIABLE OUTPUT) - IF(${VARIABLE}) - MESSAGE(STATUS "Looking for include files ${VARIABLE} - found") - SET(${VARIABLE} 1 CACHE INTERNAL "Have include ${VARIABLE}") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeFiles/CMakeOutput.log - "Determining if files ${INCLUDE} " - "exist passed with the following output:\n" - "${OUTPUT}\n\n") - ELSE(${VARIABLE}) - MESSAGE(STATUS "Looking for include files ${VARIABLE} - not found.") - SET(${VARIABLE} "" CACHE INTERNAL "Have includes ${VARIABLE}") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Determining if files ${INCLUDE} " - "exist failed with the following output:\n" - "${OUTPUT}\nSource:\n${CHECK_INCLUDE_FILES_CONTENT}\n") - ENDIF(${VARIABLE}) - ENDIF("${VARIABLE}" MATCHES "^${VARIABLE}$") -ENDMACRO(CHECK_INCLUDE_FILES) diff --git a/modules/CheckSymbolExists.cmake b/modules/CheckSymbolExists.cmake deleted file mode 100755 index ce3e4afa..00000000 --- a/modules/CheckSymbolExists.cmake +++ /dev/null @@ -1,65 +0,0 @@ -# - Check if the symbol exists in include files -# CHECK_SYMBOL_EXISTS(SYMBOL FILES VARIABLE) -# -# SYMBOL - symbol -# FILES - include files to check -# VARIABLE - variable to return result -# -# If CMAKE_REQUIRED_FLAGS is set then those flags will be passed into the -# compile of the program likewise if CMAKE_REQUIRED_LIBRARIES is set then -# those libraries will be linked against the test program. If CMAKE_REQUIRED_INCLUDES -# is set then these directories will be added to the include search path. - - -MACRO(CHECK_SYMBOL_EXISTS SYMBOL FILES VARIABLE) - IF("${VARIABLE}" MATCHES "^${VARIABLE}$") - SET(CHECK_SYMBOL_EXISTS_CONTENT "/* */\n") - SET(MACRO_CHECK_SYMBOL_EXISTS_FLAGS ${CMAKE_REQUIRED_FLAGS}) - SET(CHECK_SYMBOL_EXISTS_LIBS) - SET(CHECK_SYMBOL_EXISTS_ADD_INCLUDES) - IF(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_SYMBOL_EXISTS_LIBS - "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ENDIF(CMAKE_REQUIRED_LIBRARIES) - IF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_SYMBOL_EXISTS_ADD_INCLUDES - "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - ENDIF(CMAKE_REQUIRED_INCLUDES) - FOREACH(FILE ${FILES}) - SET(CHECK_SYMBOL_EXISTS_CONTENT - "${CHECK_SYMBOL_EXISTS_CONTENT}#include <${FILE}>\n") - ENDFOREACH(FILE) - SET(CHECK_SYMBOL_EXISTS_CONTENT - "${CHECK_SYMBOL_EXISTS_CONTENT}\nvoid cmakeRequireSymbol(int dummy,...){(void)dummy;}\nint main()\n{\n#ifndef ${SYMBOL}\n cmakeRequireSymbol(0,&${SYMBOL});\n#endif\n return 0;\n}\n") - - FILE(WRITE ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c - "${CHECK_SYMBOL_EXISTS_CONTENT}") - - MESSAGE(STATUS "Looking for ${SYMBOL}") - TRY_COMPILE(${VARIABLE} - ${CMAKE_BINARY_DIR} - ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c - CMAKE_FLAGS - -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_SYMBOL_EXISTS_FLAGS} - "${CHECK_SYMBOL_EXISTS_ADD_INCLUDES}" - "${CHECK_SYMBOL_EXISTS_LIBS}" - OUTPUT_VARIABLE OUTPUT) - IF(${VARIABLE}) - MESSAGE(STATUS "Looking for ${SYMBOL} - found") - SET(${VARIABLE} 1 CACHE INTERNAL "Have symbol ${SYMBOL}") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log - "Determining if the ${SYMBOL} " - "exist passed with the following output:\n" - "${OUTPUT}\nFile ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c:\n" - "${CHECK_SYMBOL_EXISTS_CONTENT}\n") - ELSE(${VARIABLE}) - MESSAGE(STATUS "Looking for ${SYMBOL} - not found.") - SET(${VARIABLE} "" CACHE INTERNAL "Have symbol ${SYMBOL}") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Determining if the ${SYMBOL} " - "exist failed with the following output:\n" - "${OUTPUT}\nFile ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckSymbolExists.c:\n" - "${CHECK_SYMBOL_EXISTS_CONTENT}\n") - ENDIF(${VARIABLE}) - ENDIF("${VARIABLE}" MATCHES "^${VARIABLE}$") -ENDMACRO(CHECK_SYMBOL_EXISTS) diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake deleted file mode 100644 index c4163cc1..00000000 --- a/modules/CheckTypeSize.cmake +++ /dev/null @@ -1,52 +0,0 @@ -# - Check sizeof a type -# CHECK_TYPE_SIZE(TYPE VARIABLE) -# Check if the type exists and determine size of type. if the type -# exists, the size will be stored to the variable. -# -# VARIABLE - variable to store size if the type exists. -# HAVE_${VARIABLE} - does the variable exists or not - -MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) - IF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS - "${CMAKE_REQUIRED_FLAGS}") - FOREACH(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) - IF("${def}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS - "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") - ENDIF("${def}") - ENDFOREACH(def) - SET(CHECK_TYPE_SIZE_PREINCLUDE) - SET(CHECK_TYPE_SIZE_PREMAIN) - FOREACH(def ${CMAKE_EXTRA_INCLUDE_FILES}) - SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") - ENDFOREACH(def) - CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" - "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) - FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" - CHECK_TYPE_SIZE_FILE_CONTENT) - MESSAGE(STATUS "Check size of ${TYPE}") - IF(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_TYPE_SIZE_ADD_LIBRARIES - "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ENDIF(CMAKE_REQUIRED_LIBRARIES) - TRY_RUN(${VARIABLE} HAVE_${VARIABLE} - ${CMAKE_BINARY_DIR} - "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" - CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} - "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" - OUTPUT_VARIABLE OUTPUT) - IF(HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - done") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log - "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") - ELSE(HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - failed") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") - ENDIF(HAVE_${VARIABLE}) - ENDIF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) -ENDMACRO(CHECK_TYPE_SIZE) -- cgit v1.2.1 From b7c52832df7c32dec7d6e6183ef469efef0f3845 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 10 Feb 2006 08:23:31 +0000 Subject: added CMAKE_INCLUDE_PATH related path check for include files svn path=/trunk/KDE/kdelibs/; revision=507831 --- modules/FindLibXml2.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 5dca3a19..5aade097 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -17,6 +17,7 @@ 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 -- cgit v1.2.1 From ebe8d14d55712ea169ed6ff83e641415c9cbd89d Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 10 Feb 2006 16:30:29 +0000 Subject: add shell32.lib and user32.lib on windows svn path=/trunk/KDE/kdelibs/; revision=508059 --- modules/FindKDE4.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index a6d016ef..ef0a65b8 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -204,8 +204,10 @@ IF (WIN32) ENDIF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) # add the winsock2 library, using find_library or something like this would probably be better + SET(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY} user32) + SET(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY} shell32) SET(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY} ws2_32) - + IF(MINGW) #mingw compiler SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) -- cgit v1.2.1 From b9244b697c9abe1e40a3f8f3068830338c61a70b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Fri, 10 Feb 2006 22:28:51 +0000 Subject: search for kdewin32 in the default install directory for applications (default of (n)make install) see also http://kennethhunt.com/archives/000933.html for variables on windows svn path=/trunk/KDE/kdelibs/; revision=508152 --- modules/FindKDE4.cmake | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index ef0a65b8..3794f564 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -194,9 +194,13 @@ IF (WIN32) # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ - FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 PATHS ) - FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h ) - + # search for kdewin32 in the default install directory for applications (default of (n)make install) + FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 PATHS + $ENV{ProgramFiles}/kdewin32/lib ) + FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h + $ENV{ProgramFiles}/kdewin32/include ) + + # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ IF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) -- cgit v1.2.1 From 68e472fabed37bd21e22ec58af4a0ce6d7a25720 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 11 Feb 2006 16:50:25 +0000 Subject: now cmake 2.3.3 is required, if you have an older version, you get a warning KDE cmake files are now workaround-free (if I didn't forget any): -use GET_FILENAME_COMPONENT(... ABSOLUTE) instead of QT4_GET_ABS_PATH() -use the new EXECUTE_PROCESS() instead of EXEC_PROGRAM() which discards stderr output -use check_symbol_exists() instead of check_function_exists() since this works better (mainly various windows issues) -use the new WORKING_DIRECTORY argument for ADD_CUSTOM_COMMAND() instead of cmake -E chdir ... Alex svn path=/trunk/KDE/kdelibs/; revision=508407 --- modules/FindKDE4.cmake | 2 +- modules/FindQt4.cmake | 23 +++-------------- modules/KDE4Macros.cmake | 64 +++++++++--------------------------------------- modules/kde4uic.cmake | 16 +++++------- 4 files changed, 22 insertions(+), 83 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 3794f564..b09ddcd1 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -28,7 +28,7 @@ # _KDE4_PLATFORM_DEFINITIONS is used only internally -CMAKE_MINIMUM_REQUIRED(VERSION 2.2) +CMAKE_MINIMUM_REQUIRED(VERSION 2.3.3) #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt4 REQUIRED) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 894c42b1..b7273684 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -608,23 +608,6 @@ IF(QT4_QMAKE_FOUND) # ###################################### - # this function takes a relative or absolute filename as argument in _filename - # and returns the absolute path in _abs_filename -# it should work both with UNIX and Windows paths (Windows not tested), Alex - MACRO(QT4_GET_ABS_PATH _abs_filename _filename) - IF(${_filename} MATCHES "^([a-zA-Z]:)?/.+") - SET(${_abs_filename} ${_filename}) - ELSE(${_filename} MATCHES "^([a-zA-Z]:)?/.+") - SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) - ENDIF(${_filename} MATCHES "^([a-zA-Z]:)?/.+") -# the previous version, works only with UNIX paths -# IF(${_filename} MATCHES "^/.+") -# SET(${_abs_filename} ${_filename}) -# ELSE(${_filename} MATCHES "^/.+") -# SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) -# ENDIF(${_filename} MATCHES "^/.+") - ENDMACRO(QT4_GET_ABS_PATH) - MACRO(QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) SET(${_moc_INC_DIRS}) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) @@ -638,8 +621,8 @@ IF(QT4_QMAKE_FOUND) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) - QT4_GET_ABS_PATH(infile ${infile}) - + GET_FILENAME_COMPONENT(infile ${infile} ABSOLUTE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${infile} @@ -655,7 +638,7 @@ IF(QT4_QMAKE_FOUND) QT4_GET_MOC_INC_DIRS(moc_includes) FOREACH(it ${ARGN}) - QT4_GET_ABS_PATH(it ${it}) + GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4034ebb6..64520a12 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -13,31 +13,14 @@ # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_EXECUTABLE - #neundorf@kde.org -#this should better be part of cmake: -#add an additional file to the list of files a source file depends on -#MACRO(KDE4_ADD_FILE_DEPENDANCY file) -# -# GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) -# IF (_deps) -# SET(_deps ${_deps} ${ARGN}) -# ELSE (_deps) -# SET(_deps ${ARGN}) -# ENDIF (_deps) -# -# SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") -# -#ENDMACRO(KDE4_ADD_FILE_DEPENDANCY) - - #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) MACRO(KDE4_ADD_DCOP_SKELS _sources) FOREACH (_current_FILE ${ARGN}) - QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) @@ -62,7 +45,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) - + MACRO_ADDITIONAL_CLEAN_FILES( ${_skel_H}) ENDIF (NOT HAVE_${_basename}_SKEL_RULE) @@ -77,7 +60,7 @@ ENDMACRO(KDE4_ADD_DCOP_SKELS) MACRO(KDE4_ADD_DCOP_STUBS _sources) FOREACH (_current_FILE ${ARGN}) - QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) @@ -102,9 +85,9 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) - + MACRO_ADDITIONAL_CLEAN_FILES( ${_stub_H}) - + ENDIF (NOT HAVE_${_basename}_STUB_RULE) SET(${_sources} ${${_sources}} ${_stub_CPP}) @@ -117,7 +100,7 @@ ENDMACRO(KDE4_ADD_DCOP_STUBS) MACRO(KDE4_ADD_KCFG_FILES _sources) FOREACH (_current_FILE ${ARGN}) - QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) @@ -138,24 +121,6 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) ENDMACRO(KDE4_ADD_KCFG_FILES) - -#create the moc files and add them to the list of sources -#usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) -#MACRO(KDE4_ADD_MOC_FILES _sources) -# FOREACH (_current_FILE ${ARGN}) -# GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE) -# GET_FILENAME_COMPONENT(_path ${_current_FILE} PATH) -# SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) - -# ADD_CUSTOM_COMMAND(OUTPUT ${_moc} -# COMMAND ${QT_MOC_EXECUTABLE} -# ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -o ${_moc} -# DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -# ) -# SET(${_sources} ${${_sources}} ${_moc}) -# ENDFOREACH (_current_FILE) -#ENDMACRO(KDE4_ADD_MOC_FILES) - IF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") SET(KDE4_MODULE_DIR "${CMAKE_ROOT}/Modules") ELSE(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") @@ -168,7 +133,7 @@ ENDIF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") MACRO(KDE4_ADD_UI_FILES _sources ) FOREACH (_current_FILE ${ARGN}) - QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) @@ -198,19 +163,13 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) FOREACH (_current_FILE ${ARGN}) - QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) -# ADD_CUSTOM_COMMAND(OUTPUT ${_header} -# COMMAND ${QT_UIC3_EXECUTABLE} -# ARGS -nounload -o ${_header} ${_tmp_FILE} -# DEPENDS ${_tmp_FILE} -# ) - ADD_CUSTOM_COMMAND(OUTPUT ${_header} COMMAND ${CMAKE_COMMAND} -DKDE3_HEADER:BOOL=ON @@ -256,7 +215,7 @@ MACRO(KDE4_AUTOMOC) SET(_matching_FILES ) FOREACH (_current_FILE ${ARGN}) - QT4_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) IF (EXISTS ${_tmp_FILE}) @@ -292,7 +251,6 @@ ENDMACRO(KDE4_AUTOMOC) MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) ADD_CUSTOM_TARGET(install_icons ) - SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") @@ -363,6 +321,8 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") ENDFOREACH (_current_ICON) + INSTALL(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) + ENDMACRO(KDE4_INSTALL_ICONS _theme _defaultpath) @@ -455,7 +415,7 @@ MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) MACRO_ADDITIONAL_CLEAN_FILES( ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) - + # IF (WIN32) # # under windows, just build a normal executable # KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index fe1e6b6c..4d33e60d 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -2,21 +2,23 @@ #using a ui3 file with uic3 IF(KDE3_IMPL) - EXEC_PROGRAM(${KDE_UIC_EXECUTABLE} ARGS + EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -nounload -tr tr2i18n -impl ${KDE_UIC_H_FILE} ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS + ERROR_QUIET ) ENDIF(KDE3_IMPL) IF(KDE3_HEADER) - EXEC_PROGRAM(${KDE_UIC_EXECUTABLE} ARGS + EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -nounload -tr tr2i18n ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS + ERROR_QUIET ) SET(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) ENDIF(KDE3_HEADER) @@ -24,10 +26,11 @@ ENDIF(KDE3_HEADER) # the kde4 branch IF (KDE4_HEADER) - EXEC_PROGRAM(${KDE_UIC_EXECUTABLE} ARGS + EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -tr tr2i18n ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS + ERROR_QUIET ) SET(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) @@ -40,12 +43,5 @@ STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${ #replace image15_data with img15_filename to make enable_final work STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") -# workaround which removes the stderr messages from uic, will be removed as soon as -# I switch to EXEC_PROCESS() in the calls above -STRING(REGEX REPLACE "\n[^\n]*uic3: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) -STRING(REGEX REPLACE "\n'[^\n]+' [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) -STRING(REGEX REPLACE "\nWarning: [^\n]+" "" _uic_CONTENTS "${_uic_CONTENTS}" ) - - FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n${_uic_CONTENTS}\n") -- cgit v1.2.1 From 48ba4c4ffbcdfc8eb9c4ddcb96742163efc13802 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 11 Feb 2006 20:19:10 +0000 Subject: fix lib name for msvc -> jasper is easily compilable with msvc / on windows CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=508457 --- modules/FindJasper.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 447d309b..5e86c1ca 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -4,7 +4,7 @@ FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h /usr/local/include ) -FIND_LIBRARY(JASPER_LIBRARY NAMES jasper +FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper PATHS /usr/lib /usr/local/lib -- cgit v1.2.1 From cf46a70c5cc373e23ea2075c2a2fb0e41cfffe96 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 11 Feb 2006 20:19:59 +0000 Subject: -changed kde4_create_libtool_file (target dir_relative_to_libdir) to kde4_install_libtool_file(dir_relative_to_install_prefix target) -added variable KDE4_PLUGIN_INSTALL_DIR, used usually for installing plugins -changed am2cmake accordingly -edited FindLibXml2.cmake and FindLibArt so that they work correctly with CMAKE_INSTALL_PATH -changed generated_findpackage_file accordingly -some minor formatting changes Alex CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=508458 --- modules/FindKDE4.cmake | 9 +++++---- modules/FindLibArt.cmake | 12 ++++++++---- modules/FindLibXml2.cmake | 13 ++++++++----- modules/KDE4Macros.cmake | 12 ++++++------ 4 files changed, 27 insertions(+), 19 deletions(-) (limited to 'modules') 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) -- cgit v1.2.1 From bce40e0de3b22a291ecaa2b75358e6a998e1579b Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sat, 11 Feb 2006 20:48:29 +0000 Subject: workaround for detecting libxml2 on windows when using a path list in CMAKE_INCLUDE_PATH svn path=/trunk/KDE/kdelibs/; revision=508470 --- modules/FindLibXml2.cmake | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 122e2f8c..b40635c8 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -15,23 +15,16 @@ INCLUDE(UsePkgConfig) PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) - -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} - /usr/lib - /usr/local/lib -) + +# this is a hack dealing with lists in CMAKE_INCLUDE_PATH +foreach(incDir ${CMAKE_INCLUDE_PATH}) + FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h + ${incDir}/libxml2 + ${_LibXml2IncDir}/libxml2 + /usr/include/libxml2 + /usr/local/include/libxml2 + ) +endforeach(incDir ${CMAKE_INCLUDE_PATH}) IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY) SET(LIBXML2_FOUND TRUE) -- cgit v1.2.1 From 75a07dd38b4a491a9d16d24492bea5c6ba90a8ff Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 12 Feb 2006 14:38:04 +0000 Subject: -moved the cmake code to find kdewin32 out of FindKDE4.cmake and into its own FindKDEWIN32.cmake file -added a new FindGNUWIN32.cmake file, which tries to find the gnuwin32 base directory -changed all "FOO_LIBRARY" variable names to "FOO_LIBRARIES" to be more consistent with the other cmake modules -added a macro_getenv_win_path() which replaces all backslahes with slashes from environment variables -modified the kde4_add_kcfg_files() command, so that the generated header is also processed by moc -all tests compile and link Alex CCMAIL:kde-buildsystem@kde.org The changes to the windows stuff are untested, since I don't have a windows box. Please check that everything still works. Please have a look at FindGNUWIN32.cmake, there are probably ways to improve this. The resulting GNUWIN32_DIR variable is used in other cmake modules as default path to search for headers and libraries. svn path=/trunk/KDE/kdelibs/; revision=508648 --- modules/FindAGG.cmake | 13 ++-- modules/FindASPELL.cmake | 11 ++-- modules/FindBZip2.cmake | 13 ++-- modules/FindCups.cmake | 13 ++-- modules/FindDNSSD.cmake | 11 ++-- modules/FindFAM.cmake | 27 +++++--- modules/FindGIF.cmake | 11 ++-- modules/FindGNUWIN32.cmake | 32 ++++++++++ modules/FindHSPELL.cmake | 12 ++-- modules/FindJasper.cmake | 26 +++++--- modules/FindKDE4.cmake | 37 +---------- modules/FindKDEWIN32.cmake | 58 +++++++++++++++++ modules/FindLibArt.cmake | 47 +++++++++----- modules/FindLibXml2.cmake | 38 ++++++----- modules/FindLibXslt.cmake | 12 ++-- modules/FindOpenSSL.cmake | 27 +++++--- modules/FindPCRE.cmake | 42 +++++++++---- modules/FindQt4.cmake | 132 +++++++++++++++++++-------------------- modules/KDE4Macros.cmake | 7 +++ modules/MacroGetenvWinPath.cmake | 5 ++ modules/MacroLibrary.cmake | 3 +- modules/UsePkgConfig.cmake | 1 + 22 files changed, 362 insertions(+), 216 deletions(-) create mode 100644 modules/FindGNUWIN32.cmake create mode 100644 modules/FindKDEWIN32.cmake create mode 100644 modules/MacroGetenvWinPath.cmake (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 8d294b18..ed02a46c 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -1,9 +1,9 @@ -# - Try to find AGG +# - Try to find the AGG graphics library # Once done this will define # # AGG_FOUND - system has AGG # AGG_INCLUDE_DIR - the AGG include directory -# AGG_LIBRARY - Link these to use OpenGL and GLU +# AGG_LIBRARIES - Link these to use AGG # AGG_DEFINITIONS - Compiler switches required for using AGG # @@ -22,20 +22,20 @@ FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h /usr/local/include ) -FIND_LIBRARY(AGG_LIBRARY NAMES agg +FIND_LIBRARY(AGG_LIBRARIES NAMES agg PATHS ${_AGGLinkDir} /usr/lib /usr/local/lib ) -IF(AGG_INCLUDE_DIR AND AGG_LIBRARY) +IF(AGG_INCLUDE_DIR AND AGG_LIBRARIES) SET(AGG_FOUND TRUE) -ENDIF(AGG_INCLUDE_DIR AND AGG_LIBRARY) +ENDIF(AGG_INCLUDE_DIR AND AGG_LIBRARIES) IF(AGG_FOUND) IF(NOT AGG_FIND_QUIETLY) - MESSAGE(STATUS "Found AGG: ${AGG_LIBRARY}") + MESSAGE(STATUS "Found AGG: ${AGG_LIBRARIES}") ENDIF(NOT AGG_FIND_QUIETLY) ELSE(AGG_FOUND) IF(AGG_FIND_REQUIRED) @@ -43,3 +43,4 @@ ELSE(AGG_FOUND) ENDIF(AGG_FIND_REQUIRED) ENDIF(AGG_FOUND) +MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index 4c524cc3..1233c976 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -3,7 +3,7 @@ # # ASPELL_FOUND - system has ASPELL # ASPELL_INCLUDE_DIR - the ASPELL include directory -# ASPELL_LIBRARY - Link these to use OpenGL and GLU +# ASPELL_LIBRARIES - The libraries needed to use ASPELL # ASPELL_DEFINITIONS - Compiler switches required for using ASPELL # @@ -13,19 +13,19 @@ FIND_PATH(ASPELL_INCLUDE_DIR aspell.h /usr/local/include ) -FIND_LIBRARY(ASPELL_LIBRARY NAMES aspell aspell-15 +FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15 PATHS /usr/lib /usr/local/lib ) -IF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY) +IF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) SET(ASPELL_FOUND TRUE) -ENDIF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY) +ENDIF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) IF(ASPELL_FOUND) IF(NOT ASPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARY}") + MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") ENDIF(NOT ASPELL_FIND_QUIETLY) ELSE(ASPELL_FOUND) IF(ASPELL_FIND_REQUIRED) @@ -33,3 +33,4 @@ ELSE(ASPELL_FOUND) ENDIF(ASPELL_FIND_REQUIRED) ENDIF(ASPELL_FOUND) +MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 3f4e493d..21f4a825 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -3,7 +3,7 @@ # # BZIP2_FOUND - system has BZip2 # BZIP2_INCLUDE_DIR - the BZip2 include directory -# BZIP2_LIBRARY - Link these to use OpenGL and GLU +# BZIP2_LIBRARIES - Link these to use BZip2 # BZIP2_DEFINITIONS - Compiler switches required for using BZip2 # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ # @@ -14,21 +14,21 @@ FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h /usr/local/include ) -FIND_LIBRARY(BZIP2_LIBRARY NAMES bz2 bzip2 +FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 PATHS /usr/lib /usr/local/lib ) -IF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARY) +IF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) SET(BZIP2_FOUND TRUE) INCLUDE(CheckLibraryExists) - check_library_exists(${BZIP2_LIBRARY} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) -ENDIF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARY) + CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) +ENDIF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) IF(BZIP2_FOUND) IF(NOT BZip2_FIND_QUIETLY) - MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARY}") + MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") ENDIF(NOT BZip2_FIND_QUIETLY) ELSE(BZIP2_FOUND) IF(BZip2_FIND_REQUIRED) @@ -36,3 +36,4 @@ ELSE(BZIP2_FOUND) ENDIF(BZip2_FIND_REQUIRED) ENDIF(BZIP2_FOUND) +MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 3fa26686..fa97b6f1 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -1,9 +1,9 @@ -# - Try to find Cups +# - Try to find the Cups printing system # Once done this will define # # CUPS_FOUND - system has Cups # CUPS_INCLUDE_DIR - the Cups include directory -# CUPS_LIBRARY - Link these to use OpenGL and GLU +# CUPS_LIBRARIES - Libraries needed to use Cups # CUPS_DEFINITIONS - Compiler switches required for using Cups # @@ -13,19 +13,19 @@ FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h /usr/local/include ) -FIND_LIBRARY(CUPS_LIBRARY NAMES cups +FIND_LIBRARY(CUPS_LIBRARIES NAMES cups PATHS /usr/lib /usr/local/lib ) -IF(CUPS_INCLUDE_DIR AND CUPS_LIBRARY) +IF(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) SET(CUPS_FOUND TRUE) -ENDIF(CUPS_INCLUDE_DIR AND CUPS_LIBRARY) +ENDIF(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) IF(CUPS_FOUND) IF(NOT Cups_FIND_QUIETLY) - MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARY}") + MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARIES}") ENDIF(NOT Cups_FIND_QUIETLY) ELSE(CUPS_FOUND) IF(Cups_FIND_REQUIRED) @@ -33,3 +33,4 @@ ELSE(CUPS_FOUND) ENDIF(Cups_FIND_REQUIRED) ENDIF(CUPS_FOUND) +MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index 466dd3f2..7b6f81e3 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -3,7 +3,7 @@ # # DNSSD_FOUND - system has DNSSD # DNSSD_INCLUDE_DIR - the DNSSD include directory -# DNSSD_LIBRARY - Link these to use dnssd +# DNSSD_LIBRARIES - Link these to use dnssd # DNSSD_DEFINITIONS - Compiler switches required for using DNSSD # # need more test: look at into dnssd/configure.in.in @@ -14,19 +14,19 @@ FIND_PATH(DNSSD_INCLUDE_DIR dns_sd.h /usr/include/avahi-compat-libdns_sd/ ) -FIND_LIBRARY(DNSSD_LIBRARY NAMES dns_sd +FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd PATHS /usr/lib /usr/local/lib ) -IF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARY) +IF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) SET(DNSSD_FOUND TRUE) -ENDIF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARY) +ENDIF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) IF(DNSSD_FOUND) IF(NOT DNSSD_FIND_QUIETLY) - MESSAGE(STATUS "Found DNSSD: ${DNSSD_LIBRARY}") + MESSAGE(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") ENDIF(NOT DNSSD_FIND_QUIETLY) ELSE(DNSSD_FOUND) IF(DNSSD_FIND_REQUIRED) @@ -34,3 +34,4 @@ ELSE(DNSSD_FOUND) ENDIF(DNSSD_FIND_REQUIRED) ENDIF(DNSSD_FOUND) +MARK_AS_ADVANCED(DNSSD_INCLUDE_DIR DNSSD_LIBRARIES) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index bfc553fe..0479bc8f 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -1,27 +1,36 @@ +# - Try to find the FAM directory notification library +# Once done this will define +# +# FAM_FOUND - system has FAM +# FAM_INCLUDE_DIR - the FAM include directory +# FAM_LIBRARIES - The libraries needed to use FAM FIND_PATH(FAM_INCLUDE_DIR fam.h -/usr/include -/usr/local/include + /usr/include + /usr/local/include ) -FIND_LIBRARY(FAM_LIBRARY NAMES fam -PATHS -/usr/lib -/usr/local/lib +FIND_LIBRARY(FAM_LIBRARIES NAMES fam + PATHS + /usr/lib + /usr/local/lib ) -IF(FAM_INCLUDE_DIR) +IF(FAM_INCLUDE_DIR AND FAM_LIBRARIES) SET(FAM_FOUND TRUE) -ENDIF(FAM_INCLUDE_DIR) +ENDIF(FAM_INCLUDE_DIR AND FAM_LIBRARIES) IF(FAM_FOUND) IF(NOT FAM_FIND_QUIETLY) - MESSAGE(STATUS "Found fam: ${FAM_LIBRARY}") + MESSAGE(STATUS "Found fam: ${FAM_LIBRARIES}") ENDIF(NOT FAM_FIND_QUIETLY) ELSE(FAM_FOUND) IF(FAM_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find fam library") ENDIF(FAM_FIND_REQUIRED) ENDIF(FAM_FOUND) + +MARK_AS_ADVANCED(FAM_INCLUDE_DIR FAM_LIBRARIES) + diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index b1dc4a57..94e75388 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -3,7 +3,7 @@ # # GIF_FOUND - system has GIF # GIF_INCLUDE_DIR - the GIF include directory -# GIF_LIBRARY - Link these to use OpenGL and GLU +# GIF_LIBRARIES - Libraries needed to use GIF # GIF_DEFINITIONS - Compiler switches required for using GIF # @@ -13,19 +13,19 @@ FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/local/include ) -FIND_LIBRARY(GIF_LIBRARY NAMES gif libgif ungif libungif giflib +FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib PATHS /usr/lib /usr/local/lib ) -IF(GIF_INCLUDE_DIR AND GIF_LIBRARY) +IF(GIF_INCLUDE_DIR AND GIF_LIBRARIES) SET(GIF_FOUND TRUE) -ENDIF(GIF_INCLUDE_DIR AND GIF_LIBRARY) +ENDIF(GIF_INCLUDE_DIR AND GIF_LIBRARIES) IF(GIF_FOUND) IF(NOT GIF_FIND_QUIETLY) - MESSAGE(STATUS "Found GIF: ${GIF_LIBRARY}") + MESSAGE(STATUS "Found GIF: ${GIF_LIBRARIES}") ENDIF(NOT GIF_FIND_QUIETLY) ELSE(GIF_FOUND) IF(GIF_FIND_REQUIRED) @@ -33,3 +33,4 @@ ELSE(GIF_FOUND) ENDIF(GIF_FIND_REQUIRED) ENDIF(GIF_FOUND) +MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake new file mode 100644 index 00000000..fc57f022 --- /dev/null +++ b/modules/FindGNUWIN32.cmake @@ -0,0 +1,32 @@ +IF (WIN32) + +INCLUDE(MacroGetenvWinPath) + +MACRO_GETENV_WIN_PATH(_progFiles PROGRAMFILES) + +FIND_FILE(GNUWIN32_DIR GNUWIN32 + ${_progFiles} + "C:/" +) + +IF(GNUWIN32_DIRECTORY) + SET(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) + SET(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) + SET(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) + SET(GNUWIN32_FOUND TRUE) +ELSE(GNUWIN32_DIRECTORY) + SET(GNUWIN32_FOUND) +ENDIF(GNUWIN32_DIRECTORY) + +IF(GNUWIN32_FOUND) + IF(NOT GNUWIN32_FIND_QUIETLY) + MESSAGE(STATUS "Found GNUWIN32: ${GNUWIN32_DIR}") + ENDIF(NOT GNUWIN32_FIND_QUIETLY) +ELSE(GNUWIN32_FOUND) + IF(GNUWIN32_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could not find GNUWIN32") + ENDIF(GNUWIN32_FIND_REQUIRED) +ENDIF(GNUWIN32_FOUND) + +ENDIF (WIN32) + diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake index 5a5576e3..0ae31553 100644 --- a/modules/FindHSPELL.cmake +++ b/modules/FindHSPELL.cmake @@ -3,7 +3,7 @@ # # HSPELL_FOUND - system has HSPELL # HSPELL_INCLUDE_DIR - the HSPELL include directory -# HSPELL_LIBRARY - Link these to use OpenGL and GLU +# HSPELL_LIBRARIES - The libraries needed to use HSPELL # HSPELL_DEFINITIONS - Compiler switches required for using HSPELL # @@ -13,19 +13,19 @@ FIND_PATH(HSPELL_INCLUDE_DIR hspell.h /usr/local/include ) -FIND_LIBRARY(HSPELL_LIBRARY NAMES hspell +FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell PATHS /usr/lib /usr/local/lib ) -IF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARY) +IF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) SET(HSPELL_FOUND TRUE) -ENDIF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARY) +ENDIF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) IF(HSPELL_FOUND) IF(NOT HSPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARY}") + MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") ENDIF(NOT HSPELL_FIND_QUIETLY) ELSE(HSPELL_FOUND) IF(HSPELL_FIND_REQUIRED) @@ -33,3 +33,5 @@ ELSE(HSPELL_FOUND) ENDIF(HSPELL_FIND_REQUIRED) ENDIF(HSPELL_FOUND) +MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) + diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 5e86c1ca..5eff452e 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -1,27 +1,35 @@ +# - Try to find the Jasper JPEG2000 library +# Once done this will define +# +# JASPER_FOUND - system has Jasper +# JASPER_INCLUDE_DIR - the Jasper include directory +# JASPER_LIBRARIES - The libraries needed to use Jasper FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h -/usr/include -/usr/local/include + /usr/include + /usr/local/include ) -FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper -PATHS -/usr/lib -/usr/local/lib +FIND_LIBRARY(JASPER_LIBRARIES NAMES jasper libjasper + PATHS + /usr/lib + /usr/local/lib ) -IF(JASPER_INCLUDE_DIR AND JASPER_LIBRARY) +IF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES) SET(JASPER_FOUND TRUE) -ENDIF(JASPER_INCLUDE_DIR AND JASPER_LIBRARY) +ENDIF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES) IF(JASPER_FOUND) IF(NOT Jasper_FIND_QUIETLY) - MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARY}") + MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARIES}") ENDIF(NOT Jasper_FIND_QUIETLY) ELSE(JASPER_FOUND) IF(Jasper_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find jasper library") ENDIF(Jasper_FIND_REQUIRED) ENDIF(JASPER_FOUND) + +MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES) diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 12e6b89b..f0b82112 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -193,43 +193,10 @@ IF (WIN32) MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") ENDIF(CYGWIN) - - # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ - # search for kdewin32 in the default install directory for applications (default of (n)make install) - FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 PATHS - $ENV{ProgramFiles}/kdewin32/lib ) - FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h - $ENV{ProgramFiles}/kdewin32/include ) - - - # kdelibs/win/ has to be built before the rest of kdelibs/ - # eventually it will be moved out from kdelibs/ - IF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) - MESSAGE(FATAL_ERROR "Could not find kdewin32 library, build and install kdelibs/win/ before building kdelibs/") - ENDIF (NOT KDEWIN32_LIBRARY OR NOT KDEWIN32_INCLUDE_DIR) - - # add the winsock2 library, using find_library or something like this would probably be better - SET(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY} user32) - SET(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY} shell32) - SET(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY} ws2_32) - - IF(MINGW) - #mingw compiler - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - ELSE(MINGW) - # msvc compiler - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES}) - - # add the MS SDK include directory if available - SET(MS_SDK_DIR $ENV{MSSdk}) - IF (MS_SDK_DIR) - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDES} ${MS_SDK_DIR}/include ) - ENDIF (MS_SDK_DIR) - - ENDIF(MINGW) + FIND_PACKAGE(KDEWIN32 REQUIRED) SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) - SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARY} ) + SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) # windows, mingw IF(MINGW) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake new file mode 100644 index 00000000..131c0354 --- /dev/null +++ b/modules/FindKDEWIN32.cmake @@ -0,0 +1,58 @@ +# - Try to find the KDEWIN32 library +# Once done this will define +# +# KDEWIN32_FOUND - system has KDEWIN32 +# KDEWIN32_INCLUDES - the KDEWIN32 include directories +# KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 + +IF (WIN32) + +INCLUDE(MacroGetenvWinPath) + +MACRO_GETENV_WIN_PATH(_program_FILES_DIR PROGRAMFILES) + +FIND_PACKAGE(Qt4 REQUIRED) + +FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h + ${_program_FILES_DIR}/kdewin32/include +) + + +# at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ +# search for kdewin32 in the default install directory for applications (default of (n)make install) +FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 + PATHS + ${_program_FILES_DIR}/kdewin32/lib +) + + +# kdelibs/win/ has to be built before the rest of kdelibs/ +# eventually it will be moved out from kdelibs/ +IF (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + SET(KDEWIN32_FOUND TRUE) + # add the winsock2 library, using find_library or something like this would probably be better + SET(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) + + IF(MINGW) + #mingw compiler + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + ELSE(MINGW) + # msvc compiler + # add the MS SDK include directory if available + MACRO_GETENV_WIN_PATH(MSSDK_DIR MSSDK) + SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + ENDIF(MINGW) + +ENDIF (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + +IF (KDEWIN32_FOUND) + IF (NOT KDEWIN32_FIND_QUIETLY) + MESSAGE(STATUS "Found KDEWIN32: ${KDEWIN32_LIBRARY}") + ENDIF (NOT KDEWIN32_FIND_QUIETLY) +ELSE (KDEWIN32_FOUND) + IF (KDEWIN32_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find KDEWIN32 library") + ENDIF (KDEWIN32_FIND_REQUIRED) +ENDIF (KDEWIN32_FOUND) + +ENDIF (WIN32) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index da9d68e7..967e8818 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -1,3 +1,14 @@ +# - Try to find the LibArt 2D graphics library +# Once done this will define +# +# LIBART_FOUND - system has the LibArt +# LIBART_INCLUDE_DIR - the LibArt include directory +# LIBART_LIBRARIES - The libraries needed to use LibArt +# under Windows this also checks in the GNUWIN32 directory, so make +# sure that the GNUWIN32 directory gets found if you use the GNUWIN32 version of PCRE +# under UNIX pkgconfig among others pkg-config is used to find the directories + + INCLUDE(UsePkgConfig) # use pkg-config to get the directories and then use these values @@ -6,35 +17,39 @@ PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags SET(LIBART_DEFINITIONS ${_libArtCflags}) -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") +# under windows, try to find the base gnuwin32 directory, do nothing under UNIX +FIND_PACKAGE(GNUWIN32) -MARK_AS_ADVANCED(LIBART_ROOT_INCLUDE_DIR) +FIND_PATH(LIBART_INCLUDE_DIR libart_lgpl/libart.h + ${_libArtIncDir}/libart-2.0 + /usr/include/libart-2.0 + /usr/local/include/libart-2.0 + ${GNUWIN32_DIR}/include +) -FIND_LIBRARY(LIBART_LIBRARY NAMES art_lgpl_2 -PATHS -${_libArtLinkDir} -/usr/lib -/usr/local/lib +FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 + PATHS + ${_libArtLinkDir} + /usr/lib + /usr/local/lib + ${GNUWIN32_DIR}/lib ) -IF(LIBART_INCLUDE_DIR AND LIBART_LIBRARY) +IF(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) SET(LIBART_FOUND TRUE) -ENDIF(LIBART_INCLUDE_DIR AND LIBART_LIBRARY) +ENDIF(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) IF(LIBART_FOUND) IF(NOT LibArt_FIND_QUIETLY) - MESSAGE(STATUS "Found libart: ${LIBART_LIBRARY}") + MESSAGE(STATUS "Found libart: ${LIBART_LIBRARIES}") ENDIF(NOT LibArt_FIND_QUIETLY) ELSE(LIBART_FOUND) IF(LibArt_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find libart") ENDIF(LibArt_FIND_REQUIRED) ENDIF(LIBART_FOUND) + +MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) + diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index b40635c8..0ccd8ca2 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -3,7 +3,7 @@ # # LIBXML2_FOUND - system has LibXml2 # LIBXML2_INCLUDE_DIR - the LibXml2 include directory -# LIBXML2_LIBRARY - Link these to use OpenGL and GLU +# LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 # # use pkg-config to get the directories and then use these values @@ -15,24 +15,31 @@ INCLUDE(UsePkgConfig) PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) - -# this is a hack dealing with lists in CMAKE_INCLUDE_PATH -foreach(incDir ${CMAKE_INCLUDE_PATH}) - FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h - ${incDir}/libxml2 - ${_LibXml2IncDir}/libxml2 - /usr/include/libxml2 - /usr/local/include/libxml2 - ) -endforeach(incDir ${CMAKE_INCLUDE_PATH}) - -IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY) + +FIND_PACKAGE(GNUWIN32) + +FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h + ${_LibXml2IncDir}/libxml2 + /usr/include/libxml2 + /usr/local/include/libxml2 + ${GNUWIN32_DIR}/include/libxml2 +) + +FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 + PATHS + ${_LibXml2LinkDir} + /usr/lib + /usr/local/lib + ${GNUWIN32_DIR}/lib +) + +IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) SET(LIBXML2_FOUND TRUE) -ENDIF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY) +ENDIF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) IF(LIBXML2_FOUND) IF(NOT LibXml2_FIND_QUIETLY) - MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARY}") + MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") ENDIF(NOT LibXml2_FIND_QUIETLY) ELSE(LIBXML2_FOUND) IF(LibXml2_FIND_REQUIRED) @@ -40,3 +47,4 @@ ELSE(LIBXML2_FOUND) ENDIF(LibXml2_FIND_REQUIRED) ENDIF(LIBXML2_FOUND) +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) \ No newline at end of file diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 6f120cbb..0df7e855 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -3,7 +3,7 @@ # # LIBXSLT_FOUND - system has LibXslt # LIBXSLT_INCLUDE_DIR - the LibXslt include directory -# LIBXSLT_LIBRARY - Link these to use OpenGL and GLU +# LIBXSLT_LIBRARIES - Link these to LibXslt # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # @@ -22,20 +22,20 @@ FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h /usr/local/include ) -FIND_LIBRARY(LIBXSLT_LIBRARY NAMES xslt libxslt +FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt PATHS ${_LibXsltLinkDir} /usr/lib /usr/local/lib ) -IF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARY) +IF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) SET(LIBXSLT_FOUND TRUE) -ENDIF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARY) +ENDIF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) IF(LIBXSLT_FOUND) IF(NOT LibXslt_FIND_QUIETLY) - MESSAGE(STATUS "Found LibXslt: ${LIBXSLT_LIBRARY}") + MESSAGE(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") ENDIF(NOT LibXslt_FIND_QUIETLY) ELSE(LIBXSLT_FOUND) IF(LibXslt_FIND_REQUIRED) @@ -43,3 +43,5 @@ ELSE(LIBXSLT_FOUND) ENDIF(LibXslt_FIND_REQUIRED) ENDIF(LIBXSLT_FOUND) +MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) + diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index e5240905..93625b4f 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -1,26 +1,35 @@ +# - Try to find the OpenSSL encryption library +# Once done this will define +# +# OPENSSL_FOUND - system has the OpenSSL library +# OPENSSL_INCLUDE_DIR - the OpenSSL include directory +# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h -/usr/include/ -/usr/local/include/ + /usr/include/ + /usr/local/include/ ) -FIND_LIBRARY(OPENSSL_LIBRARY NAMES ssl ssleay32 -PATHS -/usr/lib -/usr/local/lib +FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 + PATHS + /usr/lib + /usr/local/lib ) -IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY) +IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) SET(OPENSSL_FOUND TRUE) -ENDIF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY) +ENDIF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) IF(OPENSSL_FOUND) IF(NOT OpenSSL_FIND_QUIETLY) - MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARY}") + MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") ENDIF(NOT OpenSSL_FIND_QUIETLY) ELSE(OPENSSL_FOUND) IF(OpenSSL_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find OpenSSL") ENDIF(OpenSSL_FIND_REQUIRED) ENDIF(OPENSSL_FOUND) + +MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) + diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index fa61a430..5a78c6c1 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -1,34 +1,52 @@ +# - Try to find the PCRE regular expression library +# Once done this will define +# +# PCRE_FOUND - system has the PCRE library +# PCRE_INCLUDE_DIR - the PCRE include directory +# PCRE_LIBRARIES - The libraries needed to use PCRE +# under Windows this also checks in the GNUWIN32 directory, so make +# sure that the GNUWIN32 directory gets found if you use the GNUWIN32 version of PCRE +# + + +# under windows, try to find the base gnuwin32 directory, do nothing under UNIX +FIND_PACKAGE(GNUWIN32) FIND_PATH(PCRE_INCLUDE_DIR pcre.h -/usr/include/ -/usr/local/include/ + /usr/include/ + /usr/local/include/ + ${GNUWIN32_DIR}/include ) FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre -PATHS -/usr/lib -/usr/local/lib + PATHS + /usr/lib + /usr/local/lib + ${GNUWIN32_DIR}/lib ) FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix -PATHS -/usr/lib -/usr/local/lib + PATHS + /usr/lib + /usr/local/lib + ${GNUWIN32_DIR}/lib ) -SET(PCRE_LIBRARY ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY}) +SET(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") -IF(PCRE_INCLUDE_DIR AND PCRE_LIBRARY) +IF(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) SET(PCRE_FOUND TRUE) -ENDIF(PCRE_INCLUDE_DIR AND PCRE_LIBRARY) +ENDIF(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) IF(PCRE_FOUND) IF(NOT PCRE_FIND_QUIETLY) - MESSAGE(STATUS "Found PCRE: ${PCRE_LIBRARY}") + MESSAGE(STATUS "Found PCRE: ${PCRE_LIBRARIES}") ENDIF(NOT PCRE_FIND_QUIETLY) ELSE(PCRE_FOUND) IF(PCRE_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find PCRE") ENDIF(PCRE_FIND_REQUIRED) ENDIF(PCRE_FOUND) + +MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b7273684..c968951c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -127,14 +127,15 @@ ENDIF(WIN32) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/) SET(GLOB_TEMP_VAR) -IF(GLOB_TEMP_VAR) +IF (GLOB_TEMP_VAR) SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -ENDIF(GLOB_TEMP_VAR) +ENDIF (GLOB_TEMP_VAR) SET(GLOB_TEMP_VAR) FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-4*/bin/) -IF(GLOB_TEMP_VAR) - SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -ENDIF(GLOB_TEMP_VAR) +IF (GLOB_TEMP_VAR) + SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) +ENDIF (GLOB_TEMP_VAR) + # check for qmake FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" @@ -144,39 +145,39 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS NO_SYSTEM_PATH ) -IF(NOT QT_QMAKE_EXECUTABLE) +IF (NOT QT_QMAKE_EXECUTABLE) FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake) -ENDIF(NOT QT_QMAKE_EXECUTABLE) +ENDIF (NOT QT_QMAKE_EXECUTABLE) -IF(QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" - OUTPUT_VARIABLE QTVERSION) - IF(QTVERSION MATCHES "4.*") - SET(QT4_QMAKE_FOUND TRUE) - ENDIF(QTVERSION MATCHES "4.*") -ENDIF(QT_QMAKE_EXECUTABLE) +IF (QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" + OUTPUT_VARIABLE QTVERSION) + IF(QTVERSION MATCHES "4.*") + SET(QT4_QMAKE_FOUND TRUE) + ENDIF(QTVERSION MATCHES "4.*") +ENDIF (QT_QMAKE_EXECUTABLE) IF(QT4_QMAKE_FOUND) # Set QT_LIBRARY_DIR IF(NOT QT_LIBRARY_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_LIBS" - OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + ARGS "-query QT_INSTALL_LIBS" + OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does not exist, Qt must not be installed correctly.") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does not exist, Qt must not be installed correctly.") ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") ENDIF(NOT QT_LIBRARY_DIR) IF (APPLE) IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) SET(QT_USE_FRAMEWORKS ON - CACHE BOOL "Set to ON if Qt build uses frameworks.") + CACHE BOOL "Set to ON if Qt build uses frameworks.") ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS OFF - CACHE BOOL "Set to ON if Qt build uses frameworks.") + SET(QT_USE_FRAMEWORKS OFF + CACHE BOOL "Set to ON if Qt build uses frameworks.") ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) @@ -196,6 +197,7 @@ IF(QT4_QMAKE_FOUND) SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") ENDIF(QT_QMAKE_EXECUTABLE) ENDIF (NOT QT_HEADERS_DIR) + FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-3*/include/Qt/) SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) @@ -242,9 +244,7 @@ IF(QT4_QMAKE_FOUND) ) IF (QT_USE_FRAMEWORKS) - SET(QT_DEFINITIONS ${QT_DEFINITIONS} - -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} - ) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) ENDIF (QT_USE_FRAMEWORKS) # Set QT_QT3SUPPORT_INCLUDE_DIR @@ -340,43 +340,43 @@ IF(QT4_QMAKE_FOUND) # If FIND_LIBRARY found libraries in Apple frameworks, we would not have # to jump through these hoops. SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" - CACHE STRING "The QtCore library.") + CACHE STRING "The QtCore library.") SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" - CACHE STRING "The QtCore library.") + CACHE STRING "The QtCore library.") SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" - CACHE STRING "The Qt3Support library.") + CACHE STRING "The Qt3Support library.") SET(QT_QT3SUPPORT_LIBRARY_DEBUG "-framework Qt3Support" - CACHE STRING "The Qt3Support library.") + CACHE STRING "The Qt3Support library.") SET(QT_QTGUI_LIBRARY "-framework QtGui" - CACHE STRING "The QtGui library.") + CACHE STRING "The QtGui library.") SET(QT_QTGUI_LIBRARY_DEBUG "-framework QtGui" - CACHE STRING "The QtGui library.") + CACHE STRING "The QtGui library.") SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" - CACHE STRING "The QtNetwork library.") + CACHE STRING "The QtNetwork library.") SET(QT_QTNETWORK_LIBRARY_DEBUG "-framework QtNetwork" - CACHE STRING "The QtNetwork library.") + CACHE STRING "The QtNetwork library.") SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" - CACHE STRING "The QtOpenGL library.") + CACHE STRING "The QtOpenGL library.") SET(QT_QTOPENGL_LIBRARY_DEBUG "-framework QtOpenGL" - CACHE STRING "The QtOpenGL library.") + CACHE STRING "The QtOpenGL library.") SET(QT_QTSQL_LIBRARY "-framework QtSql" - CACHE STRING "The QtSql library.") + CACHE STRING "The QtSql library.") SET(QT_QTSQL_LIBRARY_DEBUG "-framework QtSql" - CACHE STRING "The QtSql library.") + CACHE STRING "The QtSql library.") SET(QT_QTXML_LIBRARY "-framework QtXml" - CACHE STRING "The QtXml library.") + CACHE STRING "The QtXml library.") SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" - CACHE STRING "The QtXml library.") + CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY "-framework QtSvg" - CACHE STRING "The QtSvg library.") + CACHE STRING "The QtSvg library.") SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" - CACHE STRING "The QtSvg library.") + CACHE STRING "The QtSvg library.") # WTF? why don't we have frameworks? :P SET(QT_QTTEST_LIBRARY "-L${QT_LIBRARY_DIR} -lQtTest" - CACHE STRING "The QtTest library.") + CACHE STRING "The QtTest library.") SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" - CACHE STRING "The QtTest library.") + CACHE STRING "The QtTest library.") ELSE (QT_USE_FRAMEWORKS) @@ -512,10 +512,10 @@ IF(QT4_QMAKE_FOUND) # ####################################### IF (NOT QT_BINARY_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") ENDIF (NOT QT_BINARY_DIR) # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, @@ -536,13 +536,13 @@ IF(QT4_QMAKE_FOUND) ) # if qmake wasn't found in the specific dirs, now check the system path - IF(NOT QT_MOC_EXECUTABLE) - FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) - ENDIF(NOT QT_MOC_EXECUTABLE) + IF (NOT QT_MOC_EXECUTABLE) + FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) + ENDIF (NOT QT_MOC_EXECUTABLE) - IF(QT_MOC_EXECUTABLE) - SET ( QT_WRAP_CPP "YES") - ENDIF(QT_MOC_EXECUTABLE) + IF (QT_MOC_EXECUTABLE) + SET ( QT_WRAP_CPP "YES") + ENDIF (QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 @@ -574,13 +574,13 @@ IF(QT4_QMAKE_FOUND) NO_SYSTEM_PATH ) - IF(NOT QT_UIC_EXECUTABLE) - FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic ) - ENDIF(NOT QT_UIC_EXECUTABLE) + IF (NOT QT_UIC_EXECUTABLE) + FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic ) + ENDIF (NOT QT_UIC_EXECUTABLE) - IF(QT_UIC_EXECUTABLE) - SET ( QT_WRAP_UI "YES") - ENDIF(QT_UIC_EXECUTABLE) + IF (QT_UIC_EXECUTABLE) + SET ( QT_WRAP_UI "YES") + ENDIF (QT_UIC_EXECUTABLE) FIND_PROGRAM(QT_RCC_EXECUTABLE NAMES rcc @@ -613,20 +613,20 @@ IF(QT4_QMAKE_FOUND) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) FOREACH(_current ${_inc_DIRS}) - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) ENDFOREACH(_current ${_inc_DIRS}) ENDMACRO(QT4_GET_MOC_INC_DIRS) MACRO(QT4_GENERATE_MOC infile outfile ) # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) + QT4_GET_MOC_INC_DIRS(moc_includes) - GET_FILENAME_COMPONENT(infile ${infile} ABSOLUTE) + GET_FILENAME_COMPONENT(infile ${infile} ABSOLUTE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) ENDMACRO(QT4_GENERATE_MOC) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 61c6dc97..cd8af459 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -109,12 +109,19 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) SET(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) + + SET_SOURCE_FILES_PROPERTIES(${_header_FILE} PROPERTIES GENERATED TRUE) + QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) + + MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) + SET(${_sources} ${${_sources}} ${_src_FILE}) ENDFOREACH (_current_FILE) diff --git a/modules/MacroGetenvWinPath.cmake b/modules/MacroGetenvWinPath.cmake new file mode 100644 index 00000000..9c8efaf3 --- /dev/null +++ b/modules/MacroGetenvWinPath.cmake @@ -0,0 +1,5 @@ + +MACRO(MACRO_GETENV_WIN_PATH var name) + SET(${var} $ENV{${name}}) + STRING( REGEX REPLACE "\\\\" "/" ${var} "${${var}}" ) +ENDMACRO(MACRO_GETENV_WIN_PATH var name) diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index f82a5db8..7da67217 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -4,6 +4,5 @@ INCLUDE (MacroOptionalFindPackage) INCLUDE (MacroAdditionalCleanFiles) INCLUDE (MacroAddFileDependencies) -#INCLUDE (MacroAppendDirectoryProperties) -#INCLUDE (MacroAppendSourceFilesProperties) +INCLUDE (MacroGetenvWinPath) diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index 898fb706..0990dc20 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -37,3 +37,4 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) +MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) \ No newline at end of file -- cgit v1.2.1 From c9ee42326c9f8609a6b8948e40c61dfc4459b63a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 13 Feb 2006 13:20:50 +0000 Subject: Define plugin dir as subdir of lib dir But for me it was better to define a variable to define just sub dir for plugins => kde4 and not all directory lib/kde4 svn path=/trunk/KDE/kdelibs/; revision=509024 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index f0b82112..934a41ad 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -65,7 +65,7 @@ SET(XDG_DIRECTORY_DIR /share/desktop-directories) 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)") +SET(KDE4_PLUGIN_INSTALL_DIR "${KDE4_LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") -- cgit v1.2.1 From 933faee513f4b74ad2ca2d9fbdf4f0844c4931e2 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 13 Feb 2006 17:07:42 +0000 Subject: Try to fix search openexr. (How to debug it ?) svn path=/trunk/KDE/kdelibs/; revision=509073 --- modules/FindOpenEXR.cmake | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 615d9ac7..b78cd17f 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -1,12 +1,39 @@ +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +INCLUDE(UsePkgConfig) + +PKGCONFIG(OpenEXR _OPENEXRIncDir _OPENEXRLinkDir _OPENEXRLinkFlags _OPENEXRCflags) + FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h +${_OPENEXRIncDir} /usr/include /usr/local/include ) +FIND_LIBRARY(OPENEXR_LIBRARIES NAMES Half Iex IlmImf Imath + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib +) - -IF(OPENEXR_INCLUDE_DIR) +IF(OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) SET(OPENEXR_FOUND TRUE) -ENDIF(OPENEXR_INCLUDE_DIR) +ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) + + + +IF(OPENEXR_FOUND) + IF(NOT OPENEXR_FIND_QUIETLY) + MESSAGE(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") + ENDIF(NOT OPENEXR_FIND_QUIETLY) +ELSE(OPENEXR_FOUND) + IF(OPENEXR_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find OPENEXR") + ENDIF(OPENEXR_FIND_REQUIRED) +ENDIF(OPENEXR_FOUND) + +MARK_AS_ADVANCED(OPENEXR_INCLUDE_DIR OPENEXR_LIBRARIES) + -- cgit v1.2.1 From 00f37818f01673a028496d3c41f40f0c5e6ee654 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 13 Feb 2006 18:13:28 +0000 Subject: more verbose error message Alex svn path=/trunk/KDE/kdelibs/; revision=509112 --- modules/FindKDEWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 131c0354..cf8344ee 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -51,7 +51,7 @@ IF (KDEWIN32_FOUND) ENDIF (NOT KDEWIN32_FIND_QUIETLY) ELSE (KDEWIN32_FOUND) IF (KDEWIN32_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find KDEWIN32 library") + MESSAGE(SEND_ERROR "Could not find KDEWIN32 library\nPlease build and install kdelibs/win/ first") ENDIF (KDEWIN32_FIND_REQUIRED) ENDIF (KDEWIN32_FOUND) -- cgit v1.2.1 From be111f8b6effb76236abb445cf9b5eff3033b85c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 13 Feb 2006 18:52:32 +0000 Subject: -added project(name-of_project) commands, so now when using the KDevelop3 generator you will have ready-to-use kdevelop projects :-) ...may have problems with out-of-source builds (requires changes in kdevelop) Alex svn path=/trunk/KDE/kdelibs/; revision=509123 --- modules/KDE4Macros.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index cd8af459..ab7de2f4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -111,15 +111,20 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + # the command for creating the source file from the kcfg file ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) - + # for the case that the header contains signals or slots, it has to be processed by moc + # since the generated header isn't listed as OUTPUT in the ADD_CUSTOM_COMMAND above, we + # have to tell cmake explicitly that it is generated, otherwise it will complain that it doesn't + # exist at cmake time + # the generated source will then include the moc file, but since the source doesn't exist + # yet at cmake time, this can't be recognized by KDE4_AUTOMOC, so we have to set the depedency explicitely SET_SOURCE_FILES_PROPERTIES(${_header_FILE} PROPERTIES GENERATED TRUE) QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) - MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) SET(${_sources} ${${_sources}} ${_src_FILE}) -- cgit v1.2.1 From 26b817a2afadfbd3b72fd77ca59c58a591bfa5f5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 13 Feb 2006 19:49:14 +0000 Subject: fix some typos Alex svn path=/trunk/KDE/kdelibs/; revision=509144 --- modules/FindOpenEXR.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index b78cd17f..4d1ca712 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -24,15 +24,15 @@ ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) -IF(OPENEXR_FOUND) - IF(NOT OPENEXR_FIND_QUIETLY) +IF (OPENEXR_FOUND) + IF (NOT OpenEXR_FIND_QUIETLY) MESSAGE(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") - ENDIF(NOT OPENEXR_FIND_QUIETLY) -ELSE(OPENEXR_FOUND) - IF(OPENEXR_FIND_REQUIRED) + ENDIF (NOT OpenEXR_FIND_QUIETLY) +ELSE (OPENEXR_FOUND) + IF (OpenEXR_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find OPENEXR") - ENDIF(OPENEXR_FIND_REQUIRED) -ENDIF(OPENEXR_FOUND) + ENDIF (OpenEXR_FIND_REQUIRED) +ENDIF (OPENEXR_FOUND) MARK_AS_ADVANCED(OPENEXR_INCLUDE_DIR OPENEXR_LIBRARIES) -- cgit v1.2.1 From ce98385ad289708fba627ec288028ead04824a0e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 13 Feb 2006 19:59:49 +0000 Subject: it seems that for jasper jpeg is also required Alex svn path=/trunk/KDE/kdelibs/; revision=509149 --- modules/FindJasper.cmake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 5eff452e..44f0a7a4 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -10,16 +10,18 @@ FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h /usr/local/include ) -FIND_LIBRARY(JASPER_LIBRARIES NAMES jasper libjasper +FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper PATHS /usr/lib /usr/local/lib ) +FIND_PACKAGE(JPEG) -IF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES) +IF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) SET(JASPER_FOUND TRUE) -ENDIF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES) + SET(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) +ENDIF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) IF(JASPER_FOUND) -- cgit v1.2.1 From d1677a67bbbb1e59ca45a7d003ee92fe7e8629f1 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 14 Feb 2006 09:13:18 +0000 Subject: Use cflags and libs svn path=/trunk/KDE/kdelibs/; revision=509297 --- modules/UsePkgConfig.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index 0990dc20..e810d572 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -27,9 +27,9 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir OUTPUT_VARIABLE ${_link_DIR} ) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs-only-other OUTPUT_VARIABLE ${_link_FLAGS} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs OUTPUT_VARIABLE ${_link_FLAGS} ) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags-only-other OUTPUT_VARIABLE ${_cflags} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) ENDIF(NOT _return_VALUE) @@ -37,4 +37,4 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) -MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) \ No newline at end of file +MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) -- cgit v1.2.1 From 5e100faf4de6cf5293b672f5cf8ec119555691c7 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 14 Feb 2006 09:48:01 +0000 Subject: Fix detect openexr svn path=/trunk/KDE/kdelibs/; revision=509305 --- modules/FindOpenEXR.cmake | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 4d1ca712..ed55daee 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -3,21 +3,25 @@ # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) -PKGCONFIG(OpenEXR _OPENEXRIncDir _OPENEXRLinkDir _OPENEXRLinkFlags _OPENEXRCflags) +PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) + +#PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h -${_OPENEXRIncDir} +${_OpenEXRIncDir} +${_OpenEXRIncDir}/OpenEXR/ /usr/include /usr/local/include ) -FIND_LIBRARY(OPENEXR_LIBRARIES NAMES Half Iex IlmImf Imath +FIND_LIBRARY(OPENEXR_LIBRARIES NAMES IlmImf PATHS ${_OPENEXRLinkDir} /usr/lib /usr/local/lib ) + IF(OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) SET(OPENEXR_FOUND TRUE) ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) -- cgit v1.2.1 From aad4c0da1b886a743d56e6a542e2a9918979c66f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 14 Feb 2006 12:36:44 +0000 Subject: Now exr plugins compiles fine svn path=/trunk/KDE/kdelibs/; revision=509347 --- modules/FindOpenEXR.cmake | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index ed55daee..ef3d60f2 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -14,7 +14,23 @@ ${_OpenEXRIncDir}/OpenEXR/ /usr/local/include ) -FIND_LIBRARY(OPENEXR_LIBRARIES NAMES IlmImf + +FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib +) + + +FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib +) + +FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath PATHS ${_OPENEXRLinkDir} /usr/lib @@ -22,9 +38,19 @@ FIND_LIBRARY(OPENEXR_LIBRARIES NAMES IlmImf ) -IF(OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) +FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib +) + +SET( OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} + ${OPENEXR_IMATH__LIBRARY}...) +IF(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) SET(OPENEXR_FOUND TRUE) -ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) + SET( OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARIES} ${OPENEXR_ILMIMF_LIBRARIES} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) +ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) -- cgit v1.2.1 From 722057ec2ba7b629a5ead686401f0bb8ae53898e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 14 Feb 2006 14:22:53 +0000 Subject: Add -DQT3_SUPPORT_WARNINGS svn path=/trunk/KDE/kdelibs/; revision=509372 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 934a41ad..6e69ee42 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -317,4 +317,4 @@ ENDIF (NOT KDE4_FIND_QUIETLY) SET(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) # not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -SET(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT ) +SET(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS ) -- cgit v1.2.1 From 27c23eace05c4708938ba4c69e8ccc5ff110e4bb Mon Sep 17 00:00:00 2001 From: Brad King Date: Tue, 14 Feb 2006 14:56:59 +0000 Subject: Restore FATAL_ERROR when KDEWIN32 is not found but is required. svn path=/trunk/KDE/kdelibs/; revision=509380 --- modules/FindKDEWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index cf8344ee..a71e04d2 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -51,7 +51,7 @@ IF (KDEWIN32_FOUND) ENDIF (NOT KDEWIN32_FIND_QUIETLY) ELSE (KDEWIN32_FOUND) IF (KDEWIN32_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find KDEWIN32 library\nPlease build and install kdelibs/win/ first") + MESSAGE(FATAL_ERROR "Could not find KDEWIN32 library\nPlease build and install kdelibs/win/ first") ENDIF (KDEWIN32_FIND_REQUIRED) ENDIF (KDEWIN32_FOUND) -- cgit v1.2.1 From 5c9e190c949e5768e9ce1d5b630c6543ffc0050f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Tue, 14 Feb 2006 18:29:04 +0000 Subject: prepare to use patched check_type_size macro, this is the original cmake version svn path=/trunk/KDE/kdelibs/; revision=509446 --- modules/CheckTypeSize.cmake | 52 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100755 modules/CheckTypeSize.cmake (limited to 'modules') diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake new file mode 100755 index 00000000..35264956 --- /dev/null +++ b/modules/CheckTypeSize.cmake @@ -0,0 +1,52 @@ +# - Check sizeof a type +# CHECK_TYPE_SIZE(TYPE VARIABLE) +# Check if the type exists and determine size of type. if the type +# exists, the size will be stored to the variable. +# +# VARIABLE - variable to store size if the type exists. +# HAVE_${VARIABLE} - does the variable exists or not + +MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) + IF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS + "${CMAKE_REQUIRED_FLAGS}") + FOREACH(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) + IF("${def}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS + "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") + ENDIF("${def}") + ENDFOREACH(def) + SET(CHECK_TYPE_SIZE_PREINCLUDE) + SET(CHECK_TYPE_SIZE_PREMAIN) + FOREACH(def ${CMAKE_EXTRA_INCLUDE_FILES}) + SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") + ENDFOREACH(def) + CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" + "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) + FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" + CHECK_TYPE_SIZE_FILE_CONTENT) + MESSAGE(STATUS "Check size of ${TYPE}") + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_TYPE_SIZE_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ENDIF(CMAKE_REQUIRED_LIBRARIES) + TRY_RUN(${VARIABLE} HAVE_${VARIABLE} + ${CMAKE_BINARY_DIR} + "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} + "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" + OUTPUT_VARIABLE OUTPUT) + IF(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - done") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log + "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") + ELSE(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - failed") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") + ENDIF(HAVE_${VARIABLE}) + ENDIF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) +ENDMACRO(CHECK_TYPE_SIZE) -- cgit v1.2.1 From 31a97a461e613fb992ef60a72db1c3db6d691f68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Tue, 14 Feb 2006 18:33:21 +0000 Subject: add CMAKE_REQUIRED_INCLUDES to the original check_type_size CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=509448 --- modules/CheckTypeSize.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake index 35264956..e0f21371 100755 --- a/modules/CheckTypeSize.cmake +++ b/modules/CheckTypeSize.cmake @@ -32,10 +32,17 @@ MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) SET(CHECK_TYPE_SIZE_ADD_LIBRARIES "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") ENDIF(CMAKE_REQUIRED_LIBRARIES) + + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_TYPE_SIZE_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ENDIF(CMAKE_REQUIRED_INCLUDES) + TRY_RUN(${VARIABLE} HAVE_${VARIABLE} ${CMAKE_BINARY_DIR} "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} + "${CHECK_TYPE_SIZE_ADD_INCLUDES}" "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" OUTPUT_VARIABLE OUTPUT) IF(HAVE_${VARIABLE}) -- cgit v1.2.1 From 24b5ce778a5c25f887d24d8a6a99cbb6ab1db995 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 15 Feb 2006 07:26:06 +0000 Subject: Fix typo. Now exr compiles fine svn path=/trunk/KDE/kdelibs/; revision=509573 --- modules/FindOpenEXR.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index ef3d60f2..da539972 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -14,6 +14,7 @@ ${_OpenEXRIncDir}/OpenEXR/ /usr/local/include ) +MESSAGE(STATUS "OPENEXR_INCLUDE_DIR :${OPENEXR_INCLUDE_DIR}") FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half PATHS @@ -45,11 +46,13 @@ FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf /usr/local/lib ) +MESSAGE(STATUS "OPENEXR_IMATH_LIBRARIES: ${OPENEXR_IMATH_LIBRARY}, OPENEXR_ILMIMF_LIBRARY: ${OPENEXR_ILMIMF_LIBRARY}, OPENEXR_IEX_LIBRARY: ${OPENEXR_IEX_LIBRARY}, OPENEXR_HALF_LIBRARY: ${OPENEXR_HALF_LIBRARY}") + SET( OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH__LIBRARY}...) IF(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) SET(OPENEXR_FOUND TRUE) - SET( OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARIES} ${OPENEXR_ILMIMF_LIBRARIES} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) + SET( OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) -- cgit v1.2.1 From 527ca576efb8fd69d60d0a838ef1669642f39bdb Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 15 Feb 2006 08:35:54 +0000 Subject: tiff import lib is named 'libtiff' on windows/msvc svn path=/trunk/KDE/kdelibs/; revision=509588 --- modules/FindTIFF.cmake | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 modules/FindTIFF.cmake (limited to 'modules') diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake new file mode 100644 index 00000000..0c206402 --- /dev/null +++ b/modules/FindTIFF.cmake @@ -0,0 +1,27 @@ +# - Find TIFF library +# Find the native TIFF includes and library +# This module defines +# TIFF_INCLUDE_DIR, where to find tiff.h, etc. +# TIFF_LIBRARIES, libraries to link against to use TIFF. +# TIFF_FOUND, If false, do not try to use TIFF. +# also defined, but not for general use are +# TIFF_LIBRARY, where to find the TIFF library. + +FIND_PATH(TIFF_INCLUDE_DIR tiff.h + /usr/local/include + /usr/include +) + +SET(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) +FIND_LIBRARY(TIFF_LIBRARY + NAMES ${TIFF_NAMES} + PATHS /usr/lib /usr/local/lib + ) + +IF(TIFF_INCLUDE_DIR) + IF(TIFF_LIBRARY) + SET( TIFF_FOUND "YES" ) + SET( TIFF_LIBRARIES ${TIFF_LIBRARY} ) + ENDIF(TIFF_LIBRARY) +ENDIF(TIFF_INCLUDE_DIR) + -- cgit v1.2.1 From ffc69376dc591eae7b0ed2e974a599fb1b8b2aa8 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 15 Feb 2006 10:47:36 +0000 Subject: Lowercase some common keywords to improve readability svn path=/trunk/KDE/kdelibs/; revision=509624 --- modules/CMakeLists.txt | 2 +- modules/CheckPrototypeExists.cmake | 10 +- modules/CheckTypeSize.cmake | 56 +++--- modules/FindAGG.cmake | 28 +-- modules/FindASPELL.cmake | 24 +-- modules/FindBZip2.cmake | 24 +-- modules/FindCarbon.cmake | 8 +- modules/FindCups.cmake | 24 +-- modules/FindDNSSD.cmake | 24 +-- modules/FindFAM.cmake | 28 +-- modules/FindGIF.cmake | 24 +-- modules/FindGNUWIN32.cmake | 38 ++-- modules/FindHSPELL.cmake | 24 +-- modules/FindJasper.cmake | 26 +-- modules/FindKDE3.cmake | 100 +++++------ modules/FindKDE4.cmake | 270 ++++++++++++++-------------- modules/FindKDEWIN32.cmake | 44 ++--- modules/FindLibArt.cmake | 26 +-- modules/FindLibXml2.cmake | 28 +-- modules/FindLibXslt.cmake | 28 +-- modules/FindOpenEXR.cmake | 38 ++-- modules/FindOpenSSL.cmake | 24 +-- modules/FindPCRE.cmake | 32 ++-- modules/FindQt4.cmake | 308 ++++++++++++++++---------------- modules/FindTIFF.cmake | 14 +- modules/FindX11.cmake | 146 +++++++-------- modules/KDE3Macros.cmake | 200 ++++++++++----------- modules/KDE4Macros.cmake | 298 +++++++++++++++--------------- modules/MacroAddFileDependencies.cmake | 10 +- modules/MacroAdditionalCleanFiles.cmake | 10 +- modules/MacroGetenvWinPath.cmake | 2 +- modules/MacroOptionalFindPackage.cmake | 16 +- modules/UsePkgConfig.cmake | 16 +- modules/kde4uic.cmake | 16 +- 34 files changed, 983 insertions(+), 983 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 85c9279d..8ccb8c3b 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,4 +1,4 @@ -SET(CMAKE_INSTALL_PREFIX ${CMAKE_ROOT} ) +set(CMAKE_INSTALL_PREFIX ${CMAKE_ROOT} ) FILE(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index 1c0d7c13..1c994ed4 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -9,12 +9,12 @@ INCLUDE(CheckCXXSourceCompiles) MACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) - SET(_INCLUDE_FILES) - FOREACH(it ${_HEADER}) - SET(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") - ENDFOREACH(it) + set(_INCLUDE_FILES) + foreach(it ${_HEADER}) + set(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") + endforeach(it) - SET(_CHECK_PROTO_EXISTS_SOURCE_CODE " + set(_CHECK_PROTO_EXISTS_SOURCE_CODE " ${_INCLUDE_FILES} int main() { diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake index e0f21371..ec1af0ab 100755 --- a/modules/CheckTypeSize.cmake +++ b/modules/CheckTypeSize.cmake @@ -7,36 +7,36 @@ # HAVE_${VARIABLE} - does the variable exists or not MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) - IF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS + set(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) + if("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + set(CHECK_TYPE_SIZE_TYPE "${TYPE}") + set(MACRO_CHECK_TYPE_SIZE_FLAGS "${CMAKE_REQUIRED_FLAGS}") - FOREACH(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) - IF("${def}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS + foreach(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) + if("${def}") + set(MACRO_CHECK_TYPE_SIZE_FLAGS "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") - ENDIF("${def}") - ENDFOREACH(def) - SET(CHECK_TYPE_SIZE_PREINCLUDE) - SET(CHECK_TYPE_SIZE_PREMAIN) - FOREACH(def ${CMAKE_EXTRA_INCLUDE_FILES}) - SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") - ENDFOREACH(def) + endif("${def}") + endforeach(def) + set(CHECK_TYPE_SIZE_PREINCLUDE) + set(CHECK_TYPE_SIZE_PREMAIN) + foreach(def ${CMAKE_EXTRA_INCLUDE_FILES}) + set(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") + endforeach(def) CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" CHECK_TYPE_SIZE_FILE_CONTENT) - MESSAGE(STATUS "Check size of ${TYPE}") - IF(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_TYPE_SIZE_ADD_LIBRARIES + message(STATUS "Check size of ${TYPE}") + if(CMAKE_REQUIRED_LIBRARIES) + set(CHECK_TYPE_SIZE_ADD_LIBRARIES "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ENDIF(CMAKE_REQUIRED_LIBRARIES) + endif(CMAKE_REQUIRED_LIBRARIES) - IF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_TYPE_SIZE_ADD_INCLUDES + if(CMAKE_REQUIRED_INCLUDES) + set(CHECK_TYPE_SIZE_ADD_INCLUDES "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - ENDIF(CMAKE_REQUIRED_INCLUDES) + endif(CMAKE_REQUIRED_INCLUDES) TRY_RUN(${VARIABLE} HAVE_${VARIABLE} ${CMAKE_BINARY_DIR} @@ -45,15 +45,15 @@ MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) "${CHECK_TYPE_SIZE_ADD_INCLUDES}" "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" OUTPUT_VARIABLE OUTPUT) - IF(HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - done") + if(HAVE_${VARIABLE}) + message(STATUS "Check size of ${TYPE} - done") FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") - ELSE(HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - failed") + else(HAVE_${VARIABLE}) + message(STATUS "Check size of ${TYPE} - failed") FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") - ENDIF(HAVE_${VARIABLE}) - ENDIF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) + endif(HAVE_${VARIABLE}) + endif("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + set(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) ENDMACRO(CHECK_TYPE_SIZE) diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index ed02a46c..2ea1ead5 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -14,7 +14,7 @@ INCLUDE(UsePkgConfig) PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) -SET(AGG_DEFINITIONS ${_AGGCflags}) +set(AGG_DEFINITIONS ${_AGGCflags}) FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h ${_AGGIncDir} @@ -29,18 +29,18 @@ FIND_LIBRARY(AGG_LIBRARIES NAMES agg /usr/local/lib ) -IF(AGG_INCLUDE_DIR AND AGG_LIBRARIES) - SET(AGG_FOUND TRUE) -ENDIF(AGG_INCLUDE_DIR AND AGG_LIBRARIES) - -IF(AGG_FOUND) - IF(NOT AGG_FIND_QUIETLY) - MESSAGE(STATUS "Found AGG: ${AGG_LIBRARIES}") - ENDIF(NOT AGG_FIND_QUIETLY) -ELSE(AGG_FOUND) - IF(AGG_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find AGG") - ENDIF(AGG_FIND_REQUIRED) -ENDIF(AGG_FOUND) +if(AGG_INCLUDE_DIR AND AGG_LIBRARIES) + set(AGG_FOUND TRUE) +endif(AGG_INCLUDE_DIR AND AGG_LIBRARIES) + +if(AGG_FOUND) + if(not AGG_FIND_QUIETLY) + message(STATUS "Found AGG: ${AGG_LIBRARIES}") + endif(not AGG_FIND_QUIETLY) +else(AGG_FOUND) + if(AGG_FIND_REQUIRED) + message(FATAL_ERROR "Could not find AGG") + endif(AGG_FIND_REQUIRED) +endif(AGG_FOUND) MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index 1233c976..f2ca068c 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -19,18 +19,18 @@ FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15 /usr/local/lib ) -IF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - SET(ASPELL_FOUND TRUE) -ENDIF(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) +if(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + set(ASPELL_FOUND TRUE) +endif(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) -IF(ASPELL_FOUND) - IF(NOT ASPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") - ENDIF(NOT ASPELL_FIND_QUIETLY) -ELSE(ASPELL_FOUND) - IF(ASPELL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find ASPELL") - ENDIF(ASPELL_FIND_REQUIRED) -ENDIF(ASPELL_FOUND) +if(ASPELL_FOUND) + if(not ASPELL_FIND_QUIETLY) + message(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") + endif(not ASPELL_FIND_QUIETLY) +else(ASPELL_FOUND) + if(ASPELL_FIND_REQUIRED) + message(FATAL_ERROR "Could not find ASPELL") + endif(ASPELL_FIND_REQUIRED) +endif(ASPELL_FOUND) MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 21f4a825..5e9faad9 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -20,20 +20,20 @@ FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 /usr/local/lib ) -IF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - SET(BZIP2_FOUND TRUE) +if(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + set(BZIP2_FOUND TRUE) INCLUDE(CheckLibraryExists) CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) -ENDIF(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) +endif(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) -IF(BZIP2_FOUND) - IF(NOT BZip2_FIND_QUIETLY) - MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - ENDIF(NOT BZip2_FIND_QUIETLY) -ELSE(BZIP2_FOUND) - IF(BZip2_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find BZip2") - ENDIF(BZip2_FIND_REQUIRED) -ENDIF(BZIP2_FOUND) +if(BZIP2_FOUND) + if(not BZip2_FIND_QUIETLY) + message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") + endif(not BZip2_FIND_QUIETLY) +else(BZIP2_FOUND) + if(BZip2_FIND_REQUIRED) + message(FATAL_ERROR "Could not find BZip2") + endif(BZip2_FIND_REQUIRED) +endif(BZIP2_FOUND) MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) diff --git a/modules/FindCarbon.cmake b/modules/FindCarbon.cmake index ffcd114a..f2fa376b 100644 --- a/modules/FindCarbon.cmake +++ b/modules/FindCarbon.cmake @@ -2,7 +2,7 @@ INCLUDE(CMakeFindFrameworks) CMAKE_FIND_FRAMEWORKS(Carbon) -IF(Carbon_FRAMEWORKS) - SET (CARBON_LIBRARY "-framework Carbon" CACHE FILEPATH "Carbon framework" FORCE) - SET (CARBON_FOUND 1) -ENDIF(Carbon_FRAMEWORKS) +if(Carbon_FRAMEWORKS) + set (CARBON_LIBRARY "-framework Carbon" CACHE FILEPATH "Carbon framework" FORCE) + set (CARBON_FOUND 1) +endif(Carbon_FRAMEWORKS) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index fa97b6f1..f0689036 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -19,18 +19,18 @@ FIND_LIBRARY(CUPS_LIBRARIES NAMES cups /usr/local/lib ) -IF(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - SET(CUPS_FOUND TRUE) -ENDIF(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) +if(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + set(CUPS_FOUND TRUE) +endif(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) -IF(CUPS_FOUND) - IF(NOT Cups_FIND_QUIETLY) - MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARIES}") - ENDIF(NOT Cups_FIND_QUIETLY) -ELSE(CUPS_FOUND) - IF(Cups_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Cups") - ENDIF(Cups_FIND_REQUIRED) -ENDIF(CUPS_FOUND) +if(CUPS_FOUND) + if(not Cups_FIND_QUIETLY) + message(STATUS "Found Cups: ${CUPS_LIBRARIES}") + endif(not Cups_FIND_QUIETLY) +else(CUPS_FOUND) + if(Cups_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Cups") + endif(Cups_FIND_REQUIRED) +endif(CUPS_FOUND) MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index 7b6f81e3..e13956f1 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -20,18 +20,18 @@ FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd /usr/local/lib ) -IF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) - SET(DNSSD_FOUND TRUE) -ENDIF(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) +if(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) + set(DNSSD_FOUND TRUE) +endif(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) -IF(DNSSD_FOUND) - IF(NOT DNSSD_FIND_QUIETLY) - MESSAGE(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") - ENDIF(NOT DNSSD_FIND_QUIETLY) -ELSE(DNSSD_FOUND) - IF(DNSSD_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find DNSSD") - ENDIF(DNSSD_FIND_REQUIRED) -ENDIF(DNSSD_FOUND) +if(DNSSD_FOUND) + if(not DNSSD_FIND_QUIETLY) + message(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") + endif(not DNSSD_FIND_QUIETLY) +else(DNSSD_FOUND) + if(DNSSD_FIND_REQUIRED) + message(FATAL_ERROR "Could not find DNSSD") + endif(DNSSD_FIND_REQUIRED) +endif(DNSSD_FOUND) MARK_AS_ADVANCED(DNSSD_INCLUDE_DIR DNSSD_LIBRARIES) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index 0479bc8f..b61fc4e7 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -17,20 +17,20 @@ FIND_LIBRARY(FAM_LIBRARIES NAMES fam ) -IF(FAM_INCLUDE_DIR AND FAM_LIBRARIES) - SET(FAM_FOUND TRUE) -ENDIF(FAM_INCLUDE_DIR AND FAM_LIBRARIES) - - -IF(FAM_FOUND) - IF(NOT FAM_FIND_QUIETLY) - MESSAGE(STATUS "Found fam: ${FAM_LIBRARIES}") - ENDIF(NOT FAM_FIND_QUIETLY) -ELSE(FAM_FOUND) - IF(FAM_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find fam library") - ENDIF(FAM_FIND_REQUIRED) -ENDIF(FAM_FOUND) +if(FAM_INCLUDE_DIR AND FAM_LIBRARIES) + set(FAM_FOUND TRUE) +endif(FAM_INCLUDE_DIR AND FAM_LIBRARIES) + + +if(FAM_FOUND) + if(not FAM_FIND_QUIETLY) + message(STATUS "Found fam: ${FAM_LIBRARIES}") + endif(not FAM_FIND_QUIETLY) +else(FAM_FOUND) + if(FAM_FIND_REQUIRED) + message(FATAL_ERROR "Could not find fam library") + endif(FAM_FIND_REQUIRED) +endif(FAM_FOUND) MARK_AS_ADVANCED(FAM_INCLUDE_DIR FAM_LIBRARIES) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index 94e75388..6222b0d8 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -19,18 +19,18 @@ FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib /usr/local/lib ) -IF(GIF_INCLUDE_DIR AND GIF_LIBRARIES) - SET(GIF_FOUND TRUE) -ENDIF(GIF_INCLUDE_DIR AND GIF_LIBRARIES) +if(GIF_INCLUDE_DIR AND GIF_LIBRARIES) + set(GIF_FOUND TRUE) +endif(GIF_INCLUDE_DIR AND GIF_LIBRARIES) -IF(GIF_FOUND) - IF(NOT GIF_FIND_QUIETLY) - MESSAGE(STATUS "Found GIF: ${GIF_LIBRARIES}") - ENDIF(NOT GIF_FIND_QUIETLY) -ELSE(GIF_FOUND) - IF(GIF_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find GIF") - ENDIF(GIF_FIND_REQUIRED) -ENDIF(GIF_FOUND) +if(GIF_FOUND) + if(not GIF_FIND_QUIETLY) + message(STATUS "Found GIF: ${GIF_LIBRARIES}") + endif(not GIF_FIND_QUIETLY) +else(GIF_FOUND) + if(GIF_FIND_REQUIRED) + message(FATAL_ERROR "Could not find GIF") + endif(GIF_FIND_REQUIRED) +endif(GIF_FOUND) MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index fc57f022..d1c2422f 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -1,4 +1,4 @@ -IF (WIN32) +if (WIN32) INCLUDE(MacroGetenvWinPath) @@ -9,24 +9,24 @@ FIND_FILE(GNUWIN32_DIR GNUWIN32 "C:/" ) -IF(GNUWIN32_DIRECTORY) - SET(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) - SET(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) - SET(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) - SET(GNUWIN32_FOUND TRUE) -ELSE(GNUWIN32_DIRECTORY) - SET(GNUWIN32_FOUND) -ENDIF(GNUWIN32_DIRECTORY) +if(GNUWIN32_DIRECTORY) + set(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) + set(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) + set(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) + set(GNUWIN32_FOUND TRUE) +else(GNUWIN32_DIRECTORY) + set(GNUWIN32_FOUND) +endif(GNUWIN32_DIRECTORY) -IF(GNUWIN32_FOUND) - IF(NOT GNUWIN32_FIND_QUIETLY) - MESSAGE(STATUS "Found GNUWIN32: ${GNUWIN32_DIR}") - ENDIF(NOT GNUWIN32_FIND_QUIETLY) -ELSE(GNUWIN32_FOUND) - IF(GNUWIN32_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find GNUWIN32") - ENDIF(GNUWIN32_FIND_REQUIRED) -ENDIF(GNUWIN32_FOUND) +if(GNUWIN32_FOUND) + if(not GNUWIN32_FIND_QUIETLY) + message(STATUS "Found GNUWIN32: ${GNUWIN32_DIR}") + endif(not GNUWIN32_FIND_QUIETLY) +else(GNUWIN32_FOUND) + if(GNUWIN32_FIND_REQUIRED) + message(SEND_ERROR "Could not find GNUWIN32") + endif(GNUWIN32_FIND_REQUIRED) +endif(GNUWIN32_FOUND) -ENDIF (WIN32) +endif (WIN32) diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake index 0ae31553..b0681d43 100644 --- a/modules/FindHSPELL.cmake +++ b/modules/FindHSPELL.cmake @@ -19,19 +19,19 @@ FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell /usr/local/lib ) -IF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - SET(HSPELL_FOUND TRUE) -ENDIF(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) +if(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + set(HSPELL_FOUND TRUE) +endif(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) -IF(HSPELL_FOUND) - IF(NOT HSPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") - ENDIF(NOT HSPELL_FIND_QUIETLY) -ELSE(HSPELL_FOUND) - IF(HSPELL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find HSPELL") - ENDIF(HSPELL_FIND_REQUIRED) -ENDIF(HSPELL_FOUND) +if(HSPELL_FOUND) + if(not HSPELL_FIND_QUIETLY) + message(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") + endif(not HSPELL_FIND_QUIETLY) +else(HSPELL_FOUND) + if(HSPELL_FIND_REQUIRED) + message(FATAL_ERROR "Could not find HSPELL") + endif(HSPELL_FIND_REQUIRED) +endif(HSPELL_FOUND) MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 44f0a7a4..4de93039 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -18,20 +18,20 @@ FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper FIND_PACKAGE(JPEG) -IF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) - SET(JASPER_FOUND TRUE) - SET(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) -ENDIF(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) +if(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) + set(JASPER_FOUND TRUE) + set(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) +endif(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) -IF(JASPER_FOUND) - IF(NOT Jasper_FIND_QUIETLY) - MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARIES}") - ENDIF(NOT Jasper_FIND_QUIETLY) -ELSE(JASPER_FOUND) - IF(Jasper_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find jasper library") - ENDIF(Jasper_FIND_REQUIRED) -ENDIF(JASPER_FOUND) +if(JASPER_FOUND) + if(not Jasper_FIND_QUIETLY) + message(STATUS "Found jasper: ${JASPER_LIBRARIES}") + endif(not Jasper_FIND_QUIETLY) +else(JASPER_FOUND) + if(Jasper_FIND_REQUIRED) + message(FATAL_ERROR "Could not find jasper library") + endif(Jasper_FIND_REQUIRED) +endif(JASPER_FOUND) MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES) diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index dba73688..498dffec 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -27,8 +27,8 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.2) -SET(QT_MT_REQUIRED TRUE) -#SET(QT_MIN_VERSION "3.0.0") +set(QT_MT_REQUIRED TRUE) +#set(QT_MIN_VERSION "3.0.0") #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt3 REQUIRED) @@ -37,20 +37,20 @@ FIND_PACKAGE(X11 REQUIRED) #add the definitions found by FindQt to the current definitions #ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) -SET(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) +set(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) #add some KDE specific stuff -SET(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common) +set(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common) #only on linux, but not e.g. on FreeBSD: -IF(CMAKE_SYSTEM_NAME MATCHES "Linux") - SET(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) -ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux") +if(CMAKE_SYSTEM_NAME MATCHES "Linux") + set(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) +endif(CMAKE_SYSTEM_NAME MATCHES "Linux") -#SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") -#SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") -#SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") +#set(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") +#set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") +#set(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") #now try to find some kde stuff @@ -103,59 +103,59 @@ FIND_PROGRAM(KDE3_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS INCLUDE(KDE3Macros) #set KDE3_FOUND -IF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) - SET(KDE3_FOUND TRUE) -ELSE (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) - SET(KDE3_FOUND FALSE) -ENDIF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) +if (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) + set(KDE3_FOUND TRUE) +else (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) + set(KDE3_FOUND FALSE) +endif (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) MACRO (KDE3_PRINT_RESULTS) - IF(KDE3_INCLUDE_DIR) - MESSAGE(STATUS "Found KDE3 include dir: ${KDE3_INCLUDE_DIR}") - ELSE(KDE3_INCLUDE_DIR) - MESSAGE(STATUS "Didn't find KDE3 headers") - ENDIF(KDE3_INCLUDE_DIR) - - IF(KDE3_LIB_DIR) - MESSAGE(STATUS "Found KDE3 library dir: ${KDE3_LIB_DIR}") - ELSE(KDE3_LIB_DIR) - MESSAGE(STATUS "Didn't find KDE3 core library") - ENDIF(KDE3_LIB_DIR) - - IF(KDE3_DCOPIDL_EXECUTABLE) - MESSAGE(STATUS "Found KDE3 dcopidl preprocessor: ${KDE3_DCOPIDL_EXECUTABLE}") - ELSE(KDE3_DCOPIDL_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE3 dcopidl preprocessor") - ENDIF(KDE3_DCOPIDL_EXECUTABLE) - - IF(KDE3_DCOPIDL2CPP_EXECUTABLE) - MESSAGE(STATUS "Found KDE3 dcopidl2cpp preprocessor: ${KDE3_DCOPIDL2CPP_EXECUTABLE}") - ELSE(KDE3_DCOPIDL2CPP_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE3 dcopidl2cpp preprocessor") - ENDIF(KDE3_DCOPIDL2CPP_EXECUTABLE) - - IF(KDE3_KCFGC_EXECUTABLE) - MESSAGE(STATUS "Found KDE3 kconfig_compiler preprocessor: ${KDE3_KCFGC_EXECUTABLE}") - ELSE(KDE3_KCFGC_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE3 kconfig_compiler preprocessor") - ENDIF(KDE3_KCFGC_EXECUTABLE) + if(KDE3_INCLUDE_DIR) + message(STATUS "Found KDE3 include dir: ${KDE3_INCLUDE_DIR}") + else(KDE3_INCLUDE_DIR) + message(STATUS "Didn't find KDE3 headers") + endif(KDE3_INCLUDE_DIR) + + if(KDE3_LIB_DIR) + message(STATUS "Found KDE3 library dir: ${KDE3_LIB_DIR}") + else(KDE3_LIB_DIR) + message(STATUS "Didn't find KDE3 core library") + endif(KDE3_LIB_DIR) + + if(KDE3_DCOPIDL_EXECUTABLE) + message(STATUS "Found KDE3 dcopidl preprocessor: ${KDE3_DCOPIDL_EXECUTABLE}") + else(KDE3_DCOPIDL_EXECUTABLE) + message(STATUS "Didn't find the KDE3 dcopidl preprocessor") + endif(KDE3_DCOPIDL_EXECUTABLE) + + if(KDE3_DCOPIDL2CPP_EXECUTABLE) + message(STATUS "Found KDE3 dcopidl2cpp preprocessor: ${KDE3_DCOPIDL2CPP_EXECUTABLE}") + else(KDE3_DCOPIDL2CPP_EXECUTABLE) + message(STATUS "Didn't find the KDE3 dcopidl2cpp preprocessor") + endif(KDE3_DCOPIDL2CPP_EXECUTABLE) + + if(KDE3_KCFGC_EXECUTABLE) + message(STATUS "Found KDE3 kconfig_compiler preprocessor: ${KDE3_KCFGC_EXECUTABLE}") + else(KDE3_KCFGC_EXECUTABLE) + message(STATUS "Didn't find the KDE3 kconfig_compiler preprocessor") + endif(KDE3_KCFGC_EXECUTABLE) ENDMACRO (KDE3_PRINT_RESULTS) -IF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) +if (KDE3_FIND_REQUIRED AND not KDE3_FOUND) #bail out if something wasn't found KDE3_PRINT_RESULTS() - MESSAGE(FATAL_ERROR "Could not find everything required for compiling KDE 3 programs") + message(FATAL_ERROR "Could not find everything required for compiling KDE 3 programs") -ENDIF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) +endif (KDE3_FIND_REQUIRED AND not KDE3_FOUND) -IF (NOT KDE3_FIND_QUIETLY) +if (not KDE3_FIND_QUIETLY) KDE3_PRINT_RESULTS() -ENDIF (NOT KDE3_FIND_QUIETLY) +endif (not KDE3_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path -SET(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) +set(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) #INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR} .) #LINK_DIRECTORIES(${KDE3_LIB_DIR}) diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 6e69ee42..6a81de18 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -33,39 +33,39 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.3.3) #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt4 REQUIRED) -SET(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) +set(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) INCLUDE (MacroLibrary) #add some KDE specific stuff -SET(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) -SET(KDE4_APPS_DIR /share/applnk) -SET(KDE4_CONFIG_DIR /share/config) -SET(KDE4_DATA_DIR /share/apps) -SET(KDE4_HTML_DIR /share/doc/HTML) -SET(KDE4_ICON_DIR /share/icons) -SET(KDE4_KCFG_DIR /share/config.kcfg) -SET(KDE4_LIBS_HTML_DIR /share/doc/HTML) -SET(KDE4_LOCALE_DIR /share/locale) -SET(KDE4_MIME_DIR /share/mimelnk) -SET(KDE4_SERVICES_DIR /share/services) -SET(KDE4_SERVICETYPES_DIR /share/servicetypes) -SET(KDE4_SOUND_DIR /share/sounds) -SET(KDE4_TEMPLATES_DIR /share/templates) -SET(KDE4_WALLPAPER_DIR /share/wallpapers) -SET(KDE4_KCONF_UPDATE_DIR /share/apps/kconf_update/ ) -SET(XDG_APPS_DIR /share/applications/kde) -SET(XDG_DIRECTORY_DIR /share/desktop-directories) +set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) +set(KDE4_APPS_DIR /share/applnk) +set(KDE4_CONFIG_DIR /share/config) +set(KDE4_DATA_DIR /share/apps) +set(KDE4_HTML_DIR /share/doc/HTML) +set(KDE4_ICON_DIR /share/icons) +set(KDE4_KCFG_DIR /share/config.kcfg) +set(KDE4_LIBS_HTML_DIR /share/doc/HTML) +set(KDE4_LOCALE_DIR /share/locale) +set(KDE4_MIME_DIR /share/mimelnk) +set(KDE4_SERVICES_DIR /share/services) +set(KDE4_SERVICETYPES_DIR /share/servicetypes) +set(KDE4_SOUND_DIR /share/sounds) +set(KDE4_TEMPLATES_DIR /share/templates) +set(KDE4_WALLPAPER_DIR /share/wallpapers) +set(KDE4_KCONF_UPDATE_DIR /share/apps/kconf_update/ ) +set(XDG_APPS_DIR /share/applications/kde) +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_PLUGIN_INSTALL_DIR "${KDE4_LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") +#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_PLUGIN_INSTALL_DIR "${KDE4_LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") @@ -74,46 +74,46 @@ SET(KDE4_PLUGIN_INSTALL_DIR "${KDE4_LIB_INSTALL_DIR}/kde4" CACHE STRING "The su #are we trying to compile kdelibs ? #then enter bootstrap mode -IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) +if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - MESSAGE(STATUS "Building kdelibs...") + message(STATUS "Building kdelibs...") - SET(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) - SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) # adjust dcopidl and the library output path depending on the platform - IF (WIN32) + if (WIN32) # under windows dcopidl.bat has to be used, except when using MSYS, then the perl script has to be used, Alex - IF ("${CMAKE_GENERATOR}" MATCHES "MSYS") - SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - ELSE ("${CMAKE_GENERATOR}" MATCHES "MSYS") - SET(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) - ENDIF ("${CMAKE_GENERATOR}" MATCHES "MSYS") + if ("${CMAKE_GENERATOR}" MATCHES "MSYS") + set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + else ("${CMAKE_GENERATOR}" MATCHES "MSYS") + set(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + endif ("${CMAKE_GENERATOR}" MATCHES "MSYS") - SET(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) - ELSE (WIN32) - SET(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - ENDIF (WIN32) - - SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) - SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) + set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + else (WIN32) + set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + endif (WIN32) + + set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) + set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... - SET( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) - SET( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) + set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) -ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) +else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # ... but not otherwise - SET( _KDE4_DCOPIDL2CPP_DEP ) - SET( _KDE4_KCONFIG_COMPILER_DEP) + set( _KDE4_DCOPIDL2CPP_DEP ) + set( _KDE4_KCONFIG_COMPILER_DEP) # at first the KDE include direcory # this should better check for a header which didn't exist in KDE < 4 @@ -164,95 +164,95 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) /opt/kde4/bin ) -ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) +endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # this is already in cmake cvs and can be removed once we require it -IF (WIN32) +if (WIN32) GET_FILENAME_COMPONENT(_tmp_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME_WE) - IF ( _tmp_COMPILER_NAME MATCHES cl ) - SET(MSVC TRUE) - ENDIF ( _tmp_COMPILER_NAME MATCHES cl ) -ENDIF (WIN32) + if ( _tmp_COMPILER_NAME MATCHES cl ) + set(MSVC TRUE) + endif ( _tmp_COMPILER_NAME MATCHES cl ) +endif (WIN32) ##################### and now the platform specific stuff ############################ -IF(UNIX AND NOT APPLE) +if(UNIX AND not APPLE) FIND_PACKAGE(X11 REQUIRED) - SET(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) -ENDIF(UNIX AND NOT APPLE) + set(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) +endif(UNIX AND not APPLE) -IF (WIN32) +if (WIN32) - IF(CYGWIN) - MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") - ENDIF(CYGWIN) + if(CYGWIN) + message(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") + endif(CYGWIN) FIND_PACKAGE(KDEWIN32 REQUIRED) - SET( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) - SET( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) + set( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) # windows, mingw - IF(MINGW) + if(MINGW) #hmmm, something special to do here ? - ENDIF(MINGW) + endif(MINGW) # windows, microsoft compiler - IF(MSVC) - SET( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) - ENDIF(MSVC) + if(MSVC) + set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + endif(MSVC) -ENDIF (WIN32) +endif (WIN32) # only on linux, but not e.g. on FreeBSD: -IF(CMAKE_SYSTEM_NAME MATCHES Linux) - SET ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - SET ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - SET ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") -ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) +if(CMAKE_SYSTEM_NAME MATCHES Linux) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") +endif(CMAKE_SYSTEM_NAME MATCHES Linux) # works on FreeBSD, not tested on NetBSD and OpenBSD -IF(CMAKE_SYSTEM_NAME MATCHES BSD) - SET ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - SET ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") - SET ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") - SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -ENDIF(CMAKE_SYSTEM_NAME MATCHES BSD) +if(CMAKE_SYSTEM_NAME MATCHES BSD) + set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) + set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") +endif(CMAKE_SYSTEM_NAME MATCHES BSD) # This will need to be modified later to support either Qt/X11 or Qt/Mac builds -IF(APPLE) +if(APPLE) - SET ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) + set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow # -undefined dynamic_lookup; in the future we should do this programmatically # hmm... why doesn't this work? - SET (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) + set (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented # or perhaps it already is, and I just don't know where to look ;) - SET (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") - SET (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") - #SET(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") - #SET(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") + set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") + set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") + #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") + #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") - SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common -Os") - SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") -ENDIF(APPLE) + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common -Os") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") +endif(APPLE) ########### end of platform specific stuff ########################## @@ -262,59 +262,59 @@ INCLUDE(KDE4Macros) # decide whether KDE4 has been found -IF (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) - SET(KDE4_FOUND TRUE) -ELSE (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) - SET(KDE4_FOUND FALSE) -ENDIF (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + set(KDE4_FOUND TRUE) +else (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + set(KDE4_FOUND FALSE) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) MACRO (KDE4_PRINT_RESULTS) - IF(KDE4_INCLUDE_DIR) - MESSAGE(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") - ELSE(KDE4_INCLUDE_DIR) - MESSAGE(STATUS "Didn't find KDE4 headers") - ENDIF(KDE4_INCLUDE_DIR) - - IF(KDE4_LIB_DIR) - MESSAGE(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") - ELSE(KDE4_LIB_DIR) - MESSAGE(STATUS "Didn't find KDE4 core library") - ENDIF(KDE4_LIB_DIR) - - IF(KDE4_DCOPIDL_EXECUTABLE) - MESSAGE(STATUS "Found KDE4 dcopidl preprocessor: ${KDE4_DCOPIDL_EXECUTABLE}") - ELSE(KDE4_DCOPIDL_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE4 dcopidl preprocessor") - ENDIF(KDE4_DCOPIDL_EXECUTABLE) - - IF(KDE4_DCOPIDL2CPP_EXECUTABLE) - MESSAGE(STATUS "Found KDE4 dcopidl2cpp preprocessor: ${KDE4_DCOPIDL2CPP_EXECUTABLE}") - ELSE(KDE4_DCOPIDL2CPP_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE4 dcopidl2cpp preprocessor") - ENDIF(KDE4_DCOPIDL2CPP_EXECUTABLE) - - IF(KDE4_KCFGC_EXECUTABLE) - MESSAGE(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") - ELSE(KDE4_KCFGC_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") - ENDIF(KDE4_KCFGC_EXECUTABLE) + if(KDE4_INCLUDE_DIR) + message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") + else(KDE4_INCLUDE_DIR) + message(STATUS "Didn't find KDE4 headers") + endif(KDE4_INCLUDE_DIR) + + if(KDE4_LIB_DIR) + message(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") + else(KDE4_LIB_DIR) + message(STATUS "Didn't find KDE4 core library") + endif(KDE4_LIB_DIR) + + if(KDE4_DCOPIDL_EXECUTABLE) + message(STATUS "Found KDE4 dcopidl preprocessor: ${KDE4_DCOPIDL_EXECUTABLE}") + else(KDE4_DCOPIDL_EXECUTABLE) + message(STATUS "Didn't find the KDE4 dcopidl preprocessor") + endif(KDE4_DCOPIDL_EXECUTABLE) + + if(KDE4_DCOPIDL2CPP_EXECUTABLE) + message(STATUS "Found KDE4 dcopidl2cpp preprocessor: ${KDE4_DCOPIDL2CPP_EXECUTABLE}") + else(KDE4_DCOPIDL2CPP_EXECUTABLE) + message(STATUS "Didn't find the KDE4 dcopidl2cpp preprocessor") + endif(KDE4_DCOPIDL2CPP_EXECUTABLE) + + if(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") + else(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") + endif(KDE4_KCFGC_EXECUTABLE) ENDMACRO (KDE4_PRINT_RESULTS) -IF (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) +if (KDE4_FIND_REQUIRED AND not KDE4_FOUND) #bail out if something wasn't found KDE4_PRINT_RESULTS() - MESSAGE(FATAL_ERROR "Could not find everything required for compiling KDE 4 programs") -ENDIF (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) + message(FATAL_ERROR "Could not find everything required for compiling KDE 4 programs") +endif (KDE4_FIND_REQUIRED AND not KDE4_FOUND) -IF (NOT KDE4_FIND_QUIETLY) +if (not KDE4_FIND_QUIETLY) KDE4_PRINT_RESULTS() -ENDIF (NOT KDE4_FIND_QUIETLY) +endif (not KDE4_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path -SET(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) +set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) # not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -SET(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS ) +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS ) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index a71e04d2..0cf90ffd 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -5,7 +5,7 @@ # KDEWIN32_INCLUDES - the KDEWIN32 include directories # KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 -IF (WIN32) +if (WIN32) INCLUDE(MacroGetenvWinPath) @@ -28,31 +28,31 @@ FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ -IF (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - SET(KDEWIN32_FOUND TRUE) +if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + set(KDEWIN32_FOUND TRUE) # add the winsock2 library, using find_library or something like this would probably be better - SET(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) + set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) - IF(MINGW) + if(MINGW) #mingw compiler - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - ELSE(MINGW) + set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + else(MINGW) # msvc compiler # add the MS SDK include directory if available MACRO_GETENV_WIN_PATH(MSSDK_DIR MSSDK) - SET(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) - ENDIF(MINGW) + set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + endif(MINGW) -ENDIF (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - -IF (KDEWIN32_FOUND) - IF (NOT KDEWIN32_FIND_QUIETLY) - MESSAGE(STATUS "Found KDEWIN32: ${KDEWIN32_LIBRARY}") - ENDIF (NOT KDEWIN32_FIND_QUIETLY) -ELSE (KDEWIN32_FOUND) - IF (KDEWIN32_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find KDEWIN32 library\nPlease build and install kdelibs/win/ first") - ENDIF (KDEWIN32_FIND_REQUIRED) -ENDIF (KDEWIN32_FOUND) - -ENDIF (WIN32) +endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + +if (KDEWIN32_FOUND) + if (not KDEWIN32_FIND_QUIETLY) + message(STATUS "Found KDEWIN32: ${KDEWIN32_LIBRARY}") + endif (not KDEWIN32_FIND_QUIETLY) +else (KDEWIN32_FOUND) + if (KDEWIN32_FIND_REQUIRED) + message(FATAL_ERROR "Could not find KDEWIN32 library\nPlease build and install kdelibs/win/ first") + endif (KDEWIN32_FIND_REQUIRED) +endif (KDEWIN32_FOUND) + +endif (WIN32) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 967e8818..e0226d6c 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -15,7 +15,7 @@ INCLUDE(UsePkgConfig) # in the FIND_PATH() and FIND_LIBRARY() calls PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags) -SET(LIBART_DEFINITIONS ${_libArtCflags}) +set(LIBART_DEFINITIONS ${_libArtCflags}) # under windows, try to find the base gnuwin32 directory, do nothing under UNIX FIND_PACKAGE(GNUWIN32) @@ -36,20 +36,20 @@ FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 ) -IF(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) - SET(LIBART_FOUND TRUE) -ENDIF(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) +if(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) + set(LIBART_FOUND TRUE) +endif(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) -IF(LIBART_FOUND) - IF(NOT LibArt_FIND_QUIETLY) - MESSAGE(STATUS "Found libart: ${LIBART_LIBRARIES}") - ENDIF(NOT LibArt_FIND_QUIETLY) -ELSE(LIBART_FOUND) - IF(LibArt_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find libart") - ENDIF(LibArt_FIND_REQUIRED) -ENDIF(LIBART_FOUND) +if(LIBART_FOUND) + if(not LibArt_FIND_QUIETLY) + message(STATUS "Found libart: ${LIBART_LIBRARIES}") + endif(not LibArt_FIND_QUIETLY) +else(LIBART_FOUND) + if(LibArt_FIND_REQUIRED) + message(FATAL_ERROR "Could not find libart") + endif(LibArt_FIND_REQUIRED) +endif(LIBART_FOUND) MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 0ccd8ca2..89737bb6 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -14,7 +14,7 @@ INCLUDE(UsePkgConfig) PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) -SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) +set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) FIND_PACKAGE(GNUWIN32) @@ -33,18 +33,18 @@ FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 ${GNUWIN32_DIR}/lib ) -IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - SET(LIBXML2_FOUND TRUE) -ENDIF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - -IF(LIBXML2_FOUND) - IF(NOT LibXml2_FIND_QUIETLY) - MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") - ENDIF(NOT LibXml2_FIND_QUIETLY) -ELSE(LIBXML2_FOUND) - IF(LibXml2_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could not find LibXml2") - ENDIF(LibXml2_FIND_REQUIRED) -ENDIF(LIBXML2_FOUND) +if(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + set(LIBXML2_FOUND TRUE) +endif(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + +if(LIBXML2_FOUND) + if(not LibXml2_FIND_QUIETLY) + message(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") + endif(not LibXml2_FIND_QUIETLY) +else(LIBXML2_FOUND) + if(LibXml2_FIND_REQUIRED) + message(SEND_ERROR "Could not find LibXml2") + endif(LibXml2_FIND_REQUIRED) +endif(LIBXML2_FOUND) MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) \ No newline at end of file diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 0df7e855..2efe52f2 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -14,7 +14,7 @@ INCLUDE(UsePkgConfig) PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) -SET(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) +set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h ${_LibXsltIncDir} @@ -29,19 +29,19 @@ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt /usr/local/lib ) -IF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - SET(LIBXSLT_FOUND TRUE) -ENDIF(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - -IF(LIBXSLT_FOUND) - IF(NOT LibXslt_FIND_QUIETLY) - MESSAGE(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") - ENDIF(NOT LibXslt_FIND_QUIETLY) -ELSE(LIBXSLT_FOUND) - IF(LibXslt_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find LibXslt") - ENDIF(LibXslt_FIND_REQUIRED) -ENDIF(LIBXSLT_FOUND) +if(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + set(LIBXSLT_FOUND TRUE) +endif(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + +if(LIBXSLT_FOUND) + if(not LibXslt_FIND_QUIETLY) + message(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") + endif(not LibXslt_FIND_QUIETLY) +else(LIBXSLT_FOUND) + if(LibXslt_FIND_REQUIRED) + message(FATAL_ERROR "Could not find LibXslt") + endif(LibXslt_FIND_REQUIRED) +endif(LIBXSLT_FOUND) MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index da539972..23ae39a5 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -14,7 +14,7 @@ ${_OpenEXRIncDir}/OpenEXR/ /usr/local/include ) -MESSAGE(STATUS "OPENEXR_INCLUDE_DIR :${OPENEXR_INCLUDE_DIR}") +message(STATUS "OPENEXR_INCLUDE_DIR :${OPENEXR_INCLUDE_DIR}") FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half PATHS @@ -46,26 +46,26 @@ FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf /usr/local/lib ) -MESSAGE(STATUS "OPENEXR_IMATH_LIBRARIES: ${OPENEXR_IMATH_LIBRARY}, OPENEXR_ILMIMF_LIBRARY: ${OPENEXR_ILMIMF_LIBRARY}, OPENEXR_IEX_LIBRARY: ${OPENEXR_IEX_LIBRARY}, OPENEXR_HALF_LIBRARY: ${OPENEXR_HALF_LIBRARY}") +message(STATUS "OPENEXR_IMATH_LIBRARIES: ${OPENEXR_IMATH_LIBRARY}, OPENEXR_ILMIMF_LIBRARY: ${OPENEXR_ILMIMF_LIBRARY}, OPENEXR_IEX_LIBRARY: ${OPENEXR_IEX_LIBRARY}, OPENEXR_HALF_LIBRARY: ${OPENEXR_HALF_LIBRARY}") -SET( OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} +set( OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH__LIBRARY}...) -IF(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - SET(OPENEXR_FOUND TRUE) - SET( OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) -ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - - - -IF (OPENEXR_FOUND) - IF (NOT OpenEXR_FIND_QUIETLY) - MESSAGE(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") - ENDIF (NOT OpenEXR_FIND_QUIETLY) -ELSE (OPENEXR_FOUND) - IF (OpenEXR_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find OPENEXR") - ENDIF (OpenEXR_FIND_REQUIRED) -ENDIF (OPENEXR_FOUND) +if(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + set(OPENEXR_FOUND TRUE) + set( OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) +endif(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + + + +if (OPENEXR_FOUND) + if (not OpenEXR_FIND_QUIETLY) + message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") + endif (not OpenEXR_FIND_QUIETLY) +else (OPENEXR_FOUND) + if (OpenEXR_FIND_REQUIRED) + message(FATAL_ERROR "Could not find OPENEXR") + endif (OpenEXR_FIND_REQUIRED) +endif (OPENEXR_FOUND) MARK_AS_ADVANCED(OPENEXR_INCLUDE_DIR OPENEXR_LIBRARIES) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 93625b4f..766cbc58 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -16,20 +16,20 @@ FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 /usr/local/lib ) -IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - SET(OPENSSL_FOUND TRUE) -ENDIF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +if(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + set(OPENSSL_FOUND TRUE) +endif(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) -IF(OPENSSL_FOUND) - IF(NOT OpenSSL_FIND_QUIETLY) - MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") - ENDIF(NOT OpenSSL_FIND_QUIETLY) -ELSE(OPENSSL_FOUND) - IF(OpenSSL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find OpenSSL") - ENDIF(OpenSSL_FIND_REQUIRED) -ENDIF(OPENSSL_FOUND) +if(OPENSSL_FOUND) + if(not OpenSSL_FIND_QUIETLY) + message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") + endif(not OpenSSL_FIND_QUIETLY) +else(OPENSSL_FOUND) + if(OpenSSL_FIND_REQUIRED) + message(FATAL_ERROR "Could not find OpenSSL") + endif(OpenSSL_FIND_REQUIRED) +endif(OPENSSL_FOUND) MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 5a78c6c1..fbca4eb8 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -32,21 +32,21 @@ FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix ${GNUWIN32_DIR}/lib ) -SET(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") - -IF(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - SET(PCRE_FOUND TRUE) -ENDIF(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - - -IF(PCRE_FOUND) - IF(NOT PCRE_FIND_QUIETLY) - MESSAGE(STATUS "Found PCRE: ${PCRE_LIBRARIES}") - ENDIF(NOT PCRE_FIND_QUIETLY) -ELSE(PCRE_FOUND) - IF(PCRE_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find PCRE") - ENDIF(PCRE_FIND_REQUIRED) -ENDIF(PCRE_FOUND) +set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") + +if(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + set(PCRE_FOUND TRUE) +endif(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + + +if(PCRE_FOUND) + if(not PCRE_FIND_QUIETLY) + message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") + endif(not PCRE_FIND_QUIETLY) +else(PCRE_FOUND) + if(PCRE_FIND_REQUIRED) + message(FATAL_ERROR "Could not find PCRE") + endif(PCRE_FIND_REQUIRED) +endif(PCRE_FOUND) MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index c968951c..2012c753 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -117,24 +117,24 @@ # QT_QT_LIBRARY Qt-Library is now splitt # QT_QTMAIN_LIBRARY Qt-Library is now splitt -SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) +set(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) -SET( QT_DEFINITIONS "") +set( QT_DEFINITIONS "") -IF (WIN32) - SET(QT_DEFINITIONS -DQT_DLL) -ENDIF(WIN32) +if (WIN32) + set(QT_DEFINITIONS -DQT_DLL) +endif(WIN32) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/) -SET(GLOB_TEMP_VAR) -IF (GLOB_TEMP_VAR) - SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -ENDIF (GLOB_TEMP_VAR) -SET(GLOB_TEMP_VAR) +set(GLOB_TEMP_VAR) +if (GLOB_TEMP_VAR) + set(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) +endif (GLOB_TEMP_VAR) +set(GLOB_TEMP_VAR) FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-4*/bin/) -IF (GLOB_TEMP_VAR) - SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -ENDIF (GLOB_TEMP_VAR) +if (GLOB_TEMP_VAR) + set(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) +endif (GLOB_TEMP_VAR) # check for qmake FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS @@ -145,63 +145,63 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS NO_SYSTEM_PATH ) -IF (NOT QT_QMAKE_EXECUTABLE) +if (not QT_QMAKE_EXECUTABLE) FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake) -ENDIF (NOT QT_QMAKE_EXECUTABLE) +endif (not QT_QMAKE_EXECUTABLE) -IF (QT_QMAKE_EXECUTABLE) +if (QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - IF(QTVERSION MATCHES "4.*") - SET(QT4_QMAKE_FOUND TRUE) - ENDIF(QTVERSION MATCHES "4.*") -ENDIF (QT_QMAKE_EXECUTABLE) + if(QTVERSION MATCHES "4.*") + set(QT4_QMAKE_FOUND TRUE) + endif(QTVERSION MATCHES "4.*") +endif (QT_QMAKE_EXECUTABLE) -IF(QT4_QMAKE_FOUND) +if(QT4_QMAKE_FOUND) # Set QT_LIBRARY_DIR - IF(NOT QT_LIBRARY_DIR) + if(not QT_LIBRARY_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_LIBS" OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") - ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does not exist, Qt must not be installed correctly.") - ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") - ENDIF(NOT QT_LIBRARY_DIR) - - IF (APPLE) - IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS ON + if(EXISTS "${QT_LIBRARY_DIR_TMP}") + set(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + else(EXISTS "${QT_LIBRARY_DIR_TMP}") + message("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + message("Warning: ${QT_LIBRARY_DIR_TMP} does not exist, Qt must not be installed correctly.") + endif(EXISTS "${QT_LIBRARY_DIR_TMP}") + endif(not QT_LIBRARY_DIR) + + if (APPLE) + if (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + set(QT_USE_FRAMEWORKS ON CACHE BOOL "Set to ON if Qt build uses frameworks.") - ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS OFF + else (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + set(QT_USE_FRAMEWORKS OFF CACHE BOOL "Set to ON if Qt build uses frameworks.") - ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + endif (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) - ENDIF (APPLE) + endif (APPLE) ######################################## # # Setting the INCLUDE-Variables # ######################################## - IF (NOT QT_HEADERS_DIR) + if (not QT_HEADERS_DIR) # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header - IF(QT_QMAKE_EXECUTABLE) + if(QT_QMAKE_EXECUTABLE) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" OUTPUT_VARIABLE qt_headers ) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(QT_QMAKE_EXECUTABLE) - ENDIF (NOT QT_HEADERS_DIR) + set(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + endif(QT_QMAKE_EXECUTABLE) + endif (not QT_HEADERS_DIR) FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-3*/include/Qt/) - SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) + set(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) - SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) + set(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) FIND_PATH( QT_QTCORE_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" @@ -218,20 +218,20 @@ IF(QT4_QMAKE_FOUND) /usr/include/qt4/QtCore) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - IF (QT_USE_FRAMEWORKS) - SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) - ELSE (QT_USE_FRAMEWORKS) + if( QT_QTCORE_INCLUDE_DIR AND not QT_INCLUDE_DIR) + if (QT_USE_FRAMEWORKS) + set(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) + else (QT_USE_FRAMEWORKS) STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) - SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") - ENDIF (QT_USE_FRAMEWORKS) - ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + set( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + endif (QT_USE_FRAMEWORKS) + endif( QT_QTCORE_INCLUDE_DIR AND not QT_INCLUDE_DIR) - IF( NOT QT_INCLUDE_DIR) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could not find QtGlobal header") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_INCLUDE_DIR) + if( not QT_INCLUDE_DIR) + if( not Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + message( FATAL_ERROR "Could not find QtGlobal header") + endif( not Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + endif( not QT_INCLUDE_DIR) FIND_PATH( QT_DOC_DIR /html/qcoreapplication.html @@ -243,9 +243,9 @@ IF(QT4_QMAKE_FOUND) "C:/Program Files/qt/doc" ) - IF (QT_USE_FRAMEWORKS) - SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) - ENDIF (QT_USE_FRAMEWORKS) + if (QT_USE_FRAMEWORKS) + set(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) + endif (QT_USE_FRAMEWORKS) # Set QT_QT3SUPPORT_INCLUDE_DIR FIND_PATH( QT_QT3SUPPORT_INCLUDE_DIR Qt3Support @@ -327,7 +327,7 @@ IF(QT4_QMAKE_FOUND) MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR ) # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) + set( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) ######################################## @@ -336,49 +336,49 @@ IF(QT4_QMAKE_FOUND) # ######################################## - IF (QT_USE_FRAMEWORKS) + if (QT_USE_FRAMEWORKS) # If FIND_LIBRARY found libraries in Apple frameworks, we would not have # to jump through these hoops. - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" + set(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" + set(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" + set(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") - SET(QT_QT3SUPPORT_LIBRARY_DEBUG "-framework Qt3Support" + set(QT_QT3SUPPORT_LIBRARY_DEBUG "-framework Qt3Support" CACHE STRING "The Qt3Support library.") - SET(QT_QTGUI_LIBRARY "-framework QtGui" + set(QT_QTGUI_LIBRARY "-framework QtGui" CACHE STRING "The QtGui library.") - SET(QT_QTGUI_LIBRARY_DEBUG "-framework QtGui" + set(QT_QTGUI_LIBRARY_DEBUG "-framework QtGui" CACHE STRING "The QtGui library.") - SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" + set(QT_QTNETWORK_LIBRARY "-framework QtNetwork" CACHE STRING "The QtNetwork library.") - SET(QT_QTNETWORK_LIBRARY_DEBUG "-framework QtNetwork" + set(QT_QTNETWORK_LIBRARY_DEBUG "-framework QtNetwork" CACHE STRING "The QtNetwork library.") - SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" + set(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - SET(QT_QTOPENGL_LIBRARY_DEBUG "-framework QtOpenGL" + set(QT_QTOPENGL_LIBRARY_DEBUG "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - SET(QT_QTSQL_LIBRARY "-framework QtSql" + set(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") - SET(QT_QTSQL_LIBRARY_DEBUG "-framework QtSql" + set(QT_QTSQL_LIBRARY_DEBUG "-framework QtSql" CACHE STRING "The QtSql library.") - SET(QT_QTXML_LIBRARY "-framework QtXml" + set(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") - SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" + set(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") - SET(QT_QTSVG_LIBRARY "-framework QtSvg" + set(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" + set(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") # WTF? why don't we have frameworks? :P - SET(QT_QTTEST_LIBRARY "-L${QT_LIBRARY_DIR} -lQtTest" + set(QT_QTTEST_LIBRARY "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") - SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" + set(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") - ELSE (QT_USE_FRAMEWORKS) + else (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of # the filename @@ -450,7 +450,7 @@ IF(QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR}) - ENDIF (QT_USE_FRAMEWORKS) + endif (QT_USE_FRAMEWORKS) # Set QT_QTASSISTANT_LIBRARY FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR}) @@ -467,25 +467,25 @@ IF(QT4_QMAKE_FOUND) ############################################ MACRO(_QT4_ADJUST_LIB_VARS basename) - IF (QT_${basename}_INCLUDE_DIR) + if (QT_${basename}_INCLUDE_DIR) # if only the release version was found, set the debug variable also to the release version - IF (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) - ENDIF (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) + if (QT_${basename}_LIBRARY AND not QT_${basename}_LIBRARY_DEBUG) + set(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) + endif (QT_${basename}_LIBRARY AND not QT_${basename}_LIBRARY_DEBUG) # if only the debug version was found, set the release variable also to the debug version - IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) + if (QT_${basename}_LIBRARY_DEBUG AND not QT_${basename}_LIBRARY) + set(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + endif (QT_${basename}_LIBRARY_DEBUG AND not QT_${basename}_LIBRARY) - IF (QT_${basename}_LIBRARY) - SET(QT_${basename}_FOUND 1) - ENDIF (QT_${basename}_LIBRARY) + if (QT_${basename}_LIBRARY) + set(QT_${basename}_FOUND 1) + endif (QT_${basename}_LIBRARY) #add the include directory to QT_INCLUDES - SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") - ENDIF (QT_${basename}_INCLUDE_DIR ) + set(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + endif (QT_${basename}_INCLUDE_DIR ) # Make variables changeble to the advanced user MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) @@ -511,12 +511,12 @@ IF(QT4_QMAKE_FOUND) # ( moc, uic, rcc ) # ####################################### - IF (NOT QT_BINARY_DIR) + if (not QT_BINARY_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_BINS" OUTPUT_VARIABLE qt_bins ) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (NOT QT_BINARY_DIR) + set(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + endif (not QT_BINARY_DIR) # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, # which might be a Qt3 qmake @@ -536,13 +536,13 @@ IF(QT4_QMAKE_FOUND) ) # if qmake wasn't found in the specific dirs, now check the system path - IF (NOT QT_MOC_EXECUTABLE) + if (not QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) - ENDIF (NOT QT_MOC_EXECUTABLE) + endif (not QT_MOC_EXECUTABLE) - IF (QT_MOC_EXECUTABLE) - SET ( QT_WRAP_CPP "YES") - ENDIF (QT_MOC_EXECUTABLE) + if (QT_MOC_EXECUTABLE) + set ( QT_WRAP_CPP "YES") + endif (QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 @@ -574,13 +574,13 @@ IF(QT4_QMAKE_FOUND) NO_SYSTEM_PATH ) - IF (NOT QT_UIC_EXECUTABLE) + if (not QT_UIC_EXECUTABLE) FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic ) - ENDIF (NOT QT_UIC_EXECUTABLE) + endif (not QT_UIC_EXECUTABLE) - IF (QT_UIC_EXECUTABLE) - SET ( QT_WRAP_UI "YES") - ENDIF (QT_UIC_EXECUTABLE) + if (QT_UIC_EXECUTABLE) + set ( QT_WRAP_UI "YES") + endif (QT_UIC_EXECUTABLE) FIND_PROGRAM(QT_RCC_EXECUTABLE NAMES rcc @@ -609,12 +609,12 @@ IF(QT4_QMAKE_FOUND) ###################################### MACRO(QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) + set(${_moc_INC_DIRS}) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - FOREACH(_current ${_inc_DIRS}) - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - ENDFOREACH(_current ${_inc_DIRS}) + foreach(_current ${_inc_DIRS}) + set(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + endforeach(_current ${_inc_DIRS}) ENDMACRO(QT4_GET_MOC_INC_DIRS) MACRO(QT4_GENERATE_MOC infile outfile ) @@ -637,17 +637,17 @@ IF(QT4_QMAKE_FOUND) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) - FOREACH(it ${ARGN}) + foreach(it ${ARGN}) GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) + set(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${it} MAIN_DEPENDENCY ${it}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) + set(${outfiles} ${${outfiles}} ${outfile}) + endforeach(it) ENDMACRO(QT4_WRAP_CPP) @@ -656,16 +656,16 @@ IF(QT4_QMAKE_FOUND) MACRO(QT4_WRAP_UI outfiles ) - FOREACH(it ${ARGN}) + foreach(it ${ARGN}) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + set(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + set(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_UIC_EXECUTABLE} ARGS -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) + set(${outfiles} ${${outfiles}} ${outfile}) + endforeach(it) ENDMACRO(QT4_WRAP_UI) @@ -674,16 +674,16 @@ IF(QT4_QMAKE_FOUND) MACRO(QT4_ADD_RESOURCES outfiles ) - FOREACH(it ${ARGN}) + foreach(it ${ARGN}) GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + set(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + set(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_RCC_EXECUTABLE} ARGS -name ${outfilename} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile} ) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) + set(${outfiles} ${${outfiles}} ${outfile}) + endforeach(it) ENDMACRO(QT4_ADD_RESOURCES) @@ -695,19 +695,19 @@ IF(QT4_QMAKE_FOUND) # ###################################### # if the includes,libraries,moc,uic and rcc are found then we have it - IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "YES" ) - IF( NOT Qt4_FIND_QUIETLY) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") -# MESSAGE(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") - ENDIF( NOT Qt4_FIND_QUIETLY) - ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "NO") - IF( Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") - ENDIF( Qt4_FIND_REQUIRED) - ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET(QT_FOUND ${QT4_FOUND}) + if( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + set( QT4_FOUND "YES" ) + if( not Qt4_FIND_QUIETLY) + message(STATUS "Found Qt-Version ${QTVERSION}") +# message(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") + endif( not Qt4_FIND_QUIETLY) + else( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + set( QT4_FOUND "NO") + if( Qt4_FIND_REQUIRED) + message( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc not found!") + endif( Qt4_FIND_REQUIRED) + endif( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + set(QT_FOUND ${QT4_FOUND}) ####################################### @@ -716,11 +716,11 @@ IF(QT4_QMAKE_FOUND) # ####################################### # for unix add X11 stuff - IF(UNIX) + if(UNIX) FIND_PACKAGE(X11) FIND_PACKAGE(Threads) - SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - ENDIF(UNIX) + set(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + endif(UNIX) ####################################### @@ -729,17 +729,17 @@ IF(QT4_QMAKE_FOUND) # ####################################### # Backwards compatibility for CMake1.4 and 1.2 - SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) - SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) - - SET( QT_QT_LIBRARY "") - SET( QT_QTMAIN_LIBRARY "") -ELSE(QT4_QMAKE_FOUND) - IF(QT_QMAKE_EXECUTABLE) - MESSAGE("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") - ENDIF(QT_QMAKE_EXECUTABLE) - IF( Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Qt qmake not found!") - ENDIF( Qt4_FIND_REQUIRED) - -ENDIF(QT4_QMAKE_FOUND) + set (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + set (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + + set( QT_QT_LIBRARY "") + set( QT_QTMAIN_LIBRARY "") +else(QT4_QMAKE_FOUND) + if(QT_QMAKE_EXECUTABLE) + message("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") + endif(QT_QMAKE_EXECUTABLE) + if( Qt4_FIND_REQUIRED) + message( FATAL_ERROR "Qt qmake not found!") + endif( Qt4_FIND_REQUIRED) + +endif(QT4_QMAKE_FOUND) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 0c206402..463fcc25 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -12,16 +12,16 @@ FIND_PATH(TIFF_INCLUDE_DIR tiff.h /usr/include ) -SET(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) +set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) FIND_LIBRARY(TIFF_LIBRARY NAMES ${TIFF_NAMES} PATHS /usr/lib /usr/local/lib ) -IF(TIFF_INCLUDE_DIR) - IF(TIFF_LIBRARY) - SET( TIFF_FOUND "YES" ) - SET( TIFF_LIBRARIES ${TIFF_LIBRARY} ) - ENDIF(TIFF_LIBRARY) -ENDIF(TIFF_INCLUDE_DIR) +if(TIFF_INCLUDE_DIR) + if(TIFF_LIBRARY) + set( TIFF_FOUND "YES" ) + set( TIFF_LIBRARIES ${TIFF_LIBRARY} ) + endif(TIFF_LIBRARY) +endif(TIFF_INCLUDE_DIR) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 25d6e1e4..f0e61210 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -4,10 +4,10 @@ # X11_INCLUDE_DIR - include directories to use X11 # X11_LIBRARIES - link against these to use X11 -IF (UNIX) - SET(X11_FOUND 0) +if (UNIX) + set(X11_FOUND 0) - SET(X11_INC_SEARCH_PATH + set(X11_INC_SEARCH_PATH /usr/X11R6/include /usr/local/include /usr/include/X11 @@ -17,7 +17,7 @@ IF (UNIX) /usr/include ) - SET(X11_LIB_SEARCH_PATH + set(X11_LIB_SEARCH_PATH /usr/X11R6/lib /usr/local/lib /usr/openwin/lib @@ -30,114 +30,114 @@ IF (UNIX) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) - IF(X11_X11_INCLUDE_PATH) - SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) - ENDIF(X11_X11_INCLUDE_PATH) + if(X11_X11_INCLUDE_PATH) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) + endif(X11_X11_INCLUDE_PATH) - IF(X11_Xlib_INCLUDE_PATH) - SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH}) - ENDIF(X11_Xlib_INCLUDE_PATH) + if(X11_Xlib_INCLUDE_PATH) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH}) + endif(X11_Xlib_INCLUDE_PATH) - IF(X11_Xutil_INCLUDE_PATH) - SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) - ENDIF(X11_Xutil_INCLUDE_PATH) + if(X11_Xutil_INCLUDE_PATH) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) + endif(X11_Xutil_INCLUDE_PATH) - IF(X11_X11_LIB) - SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) - ENDIF(X11_X11_LIB) + if(X11_X11_LIB) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) + endif(X11_X11_LIB) - IF(X11_Xext_LIB) - SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) - ENDIF(X11_Xext_LIB) + if(X11_Xext_LIB) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) + endif(X11_Xext_LIB) # Deprecated variable for backwards compatibility with CMake 1.4 - IF(X11_X11_INCLUDE_PATH) - IF(X11_LIBRARIES) - SET(X11_FOUND 1) - ENDIF(X11_LIBRARIES) - ENDIF(X11_X11_INCLUDE_PATH) - - SET(X11_LIBRARY_DIR "") - IF(X11_X11_LIB) + if(X11_X11_INCLUDE_PATH) + if(X11_LIBRARIES) + set(X11_FOUND 1) + endif(X11_LIBRARIES) + endif(X11_X11_INCLUDE_PATH) + + set(X11_LIBRARY_DIR "") + if(X11_X11_LIB) GET_FILENAME_COMPONENT(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) - ENDIF(X11_X11_LIB) + endif(X11_X11_LIB) - IF(X11_FOUND) + if(X11_FOUND) INCLUDE(CheckFunctionExists) INCLUDE(CheckLibraryExists) # Translated from an autoconf-generated configure script. # See libs.m4 in autoconf's m4 directory. - IF($ENV{ISC} MATCHES "^yes$") - SET(X11_X_EXTRA_LIBS -lnsl_s -linet) - ELSE($ENV{ISC} MATCHES "^yes$") - SET(X11_X_EXTRA_LIBS "") + if($ENV{ISC} MATCHES "^yes$") + set(X11_X_EXTRA_LIBS -lnsl_s -linet) + else($ENV{ISC} MATCHES "^yes$") + set(X11_X_EXTRA_LIBS "") # See if XOpenDisplay in X11 works by itself. CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) - IF(NOT X11_LIB_X11_SOLO) + if(not X11_LIB_X11_SOLO) # Find library needed for dnet_ntoa. CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) - IF (X11_LIB_DNET_HAS_DNET_NTOA) - SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) - ELSE (X11_LIB_DNET_HAS_DNET_NTOA) + if (X11_LIB_DNET_HAS_DNET_NTOA) + set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) + else (X11_LIB_DNET_HAS_DNET_NTOA) CHECK_LIBRARY_EXISTS("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) - IF (X11_LIB_DNET_STUB_HAS_DNET_NTOA) - SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) - ENDIF (X11_LIB_DNET_STUB_HAS_DNET_NTOA) - ENDIF (X11_LIB_DNET_HAS_DNET_NTOA) - ENDIF(NOT X11_LIB_X11_SOLO) + if (X11_LIB_DNET_STUB_HAS_DNET_NTOA) + set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) + endif (X11_LIB_DNET_STUB_HAS_DNET_NTOA) + endif (X11_LIB_DNET_HAS_DNET_NTOA) + endif(not X11_LIB_X11_SOLO) # Find library needed for gethostbyname. CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) - IF(NOT CMAKE_HAVE_GETHOSTBYNAME) + if(not CMAKE_HAVE_GETHOSTBYNAME) CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - IF (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) - ELSE (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) + else (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) CHECK_LIBRARY_EXISTS("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) - IF (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) - SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) - ENDIF (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) - ENDIF (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - ENDIF(NOT CMAKE_HAVE_GETHOSTBYNAME) + if (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) + endif (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + endif (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + endif(not CMAKE_HAVE_GETHOSTBYNAME) # Find library needed for connect. CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT) - IF(NOT CMAKE_HAVE_CONNECT) + if(not CMAKE_HAVE_CONNECT) CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) - IF (CMAKE_LIB_SOCKET_HAS_CONNECT) - SET (X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) - ENDIF (CMAKE_LIB_SOCKET_HAS_CONNECT) - ENDIF(NOT CMAKE_HAVE_CONNECT) + if (CMAKE_LIB_SOCKET_HAS_CONNECT) + set (X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) + endif (CMAKE_LIB_SOCKET_HAS_CONNECT) + endif(not CMAKE_HAVE_CONNECT) # Find library needed for remove. CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE) - IF(NOT CMAKE_HAVE_REMOVE) + if(not CMAKE_HAVE_REMOVE) CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) - IF (CMAKE_LIB_POSIX_HAS_REMOVE) - SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) - ENDIF (CMAKE_LIB_POSIX_HAS_REMOVE) - ENDIF(NOT CMAKE_HAVE_REMOVE) + if (CMAKE_LIB_POSIX_HAS_REMOVE) + set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) + endif (CMAKE_LIB_POSIX_HAS_REMOVE) + endif(not CMAKE_HAVE_REMOVE) # Find library needed for shmat. CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT) - IF(NOT CMAKE_HAVE_SHMAT) + if(not CMAKE_HAVE_SHMAT) CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) - IF (CMAKE_LIB_IPS_HAS_SHMAT) - SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) - ENDIF (CMAKE_LIB_IPS_HAS_SHMAT) - ENDIF(NOT CMAKE_HAVE_SHMAT) - ENDIF($ENV{ISC} MATCHES "^yes$") + if (CMAKE_LIB_IPS_HAS_SHMAT) + set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) + endif (CMAKE_LIB_IPS_HAS_SHMAT) + endif(not CMAKE_HAVE_SHMAT) + endif($ENV{ISC} MATCHES "^yes$") CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - IF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - SET (X11_X_PRE_LIBS -lSM -lICE) - ENDIF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + if(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + set (X11_X_PRE_LIBS -lSM -lICE) + endif(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) # Build the final list of libraries. - SET (X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) - ENDIF(X11_FOUND) + set (X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) + endif(X11_FOUND) MARK_AS_ADVANCED( X11_X11_INCLUDE_PATH @@ -148,4 +148,4 @@ IF (UNIX) X11_LIBRARIES ) -ENDIF (UNIX) +endif (UNIX) diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index 58f02ce6..7411ed00 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -21,48 +21,48 @@ MACRO(KDE3_ADD_FILE_DEPENDANCY file) GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) - IF (_deps) - SET(_deps ${_deps} ${ARGN}) - ELSE (_deps) - SET(_deps ${ARGN}) - ENDIF (_deps) + if (_deps) + set(_deps ${_deps} ${ARGN}) + else (_deps) + set(_deps ${ARGN}) + endif (_deps) SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") ENDMACRO(KDE3_ADD_FILE_DEPENDANCY) MACRO(KDE3_GET_ABS_PATH _abs_filename _filename) - IF(${_filename} MATCHES "^/.+") - SET(${_abs_filename} ${_filename}) - ELSE(${_filename} MATCHES "^/.+") - SET(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) - ENDIF(${_filename} MATCHES "^/.+") + if(${_filename} MATCHES "^/.+") + set(${_abs_filename} ${_filename}) + else(${_filename} MATCHES "^/.+") + set(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) + endif(${_filename} MATCHES "^/.+") ENDMACRO(KDE3_GET_ABS_PATH) #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) MACRO(KDE3_ADD_DCOP_SKELS _sources) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + set(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) + set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - IF (NOT HAVE_${_basename}_KIDL_RULE) - SET(HAVE_${_basename}_KIDL_RULE ON) + if (not HAVE_${_basename}_KIDL_RULE) + set(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE3_DCOPIDL_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} DEPENDS ${_tmp_FILE} ) - ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + endif (not HAVE_${_basename}_KIDL_RULE) - IF (NOT HAVE_${_basename}_SKEL_RULE) - SET(HAVE_${_basename}_SKEL_RULE ON) + if (not HAVE_${_basename}_SKEL_RULE) + set(HAVE_${_basename}_SKEL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} @@ -70,26 +70,26 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) DEPENDS ${_kidl} ) - ENDIF (NOT HAVE_${_basename}_SKEL_RULE) + endif (not HAVE_${_basename}_SKEL_RULE) - SET(${_sources} ${${_sources}} ${_skel}) + set(${_sources} ${${_sources}} ${_skel}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE3_ADD_DCOP_SKELS) MACRO(KDE3_ADD_DCOP_STUBS _sources) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + set(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) + set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - IF (NOT HAVE_${_basename}_KIDL_RULE) - SET(HAVE_${_basename}_KIDL_RULE ON) + if (not HAVE_${_basename}_KIDL_RULE) + set(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} @@ -98,11 +98,11 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) DEPENDS ${tmp_FILE} ) - ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + endif (not HAVE_${_basename}_KIDL_RULE) - IF (NOT HAVE_${_basename}_STUB_RULE) - SET(HAVE_${_basename}_STUB_RULE ON) + if (not HAVE_${_basename}_STUB_RULE) + set(HAVE_${_basename}_STUB_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} @@ -110,16 +110,16 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) DEPENDS ${_kidl} ) - ENDIF (NOT HAVE_${_basename}_STUB_RULE) + endif (not HAVE_${_basename}_STUB_RULE) - SET(${_sources} ${${_sources}} ${_stub_CPP}) + set(${_sources} ${${_sources}} ${_stub_CPP}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE3_ADD_DCOP_STUBS) MACRO(KDE3_ADD_KCFG_FILES _sources) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) @@ -128,17 +128,17 @@ MACRO(KDE3_ADD_KCFG_FILES _sources) FILE(READ ${_tmp_FILE} _contents) STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+)\n.*$" "\\2" _kcfg_FILE "${_contents}") - SET(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE3_KCFGC_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ) - SET(${_sources} ${${_sources}} ${_src_FILE}) + set(${_sources} ${${_sources}} ${_src_FILE}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE3_ADD_KCFG_FILES) @@ -146,12 +146,12 @@ ENDMACRO(KDE3_ADD_KCFG_FILES) #create the moc files and add them to the list of sources #usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) MACRO(KDE3_ADD_MOC_FILES _sources) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} @@ -159,24 +159,24 @@ MACRO(KDE3_ADD_MOC_FILES _sources) DEPENDS ${_tmp_FILE} ) - SET(${_sources} ${${_sources}} ${_moc}) + set(${_sources} ${${_sources}} ${_moc}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE3_ADD_MOC_FILES) #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) MACRO(KDE3_ADD_UI_FILES _sources ) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_header} COMMAND ${QT_UIC_EXECUTABLE} @@ -206,18 +206,18 @@ MACRO(KDE3_ADD_UI_FILES _sources ) DEPENDS ${_header} ) - SET(${_sources} ${${_sources}} ${_src} ${_moc} ) + set(${_sources} ${${_sources}} ${_src} ${_moc} ) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE3_ADD_UI_FILES) MACRO(KDE3_AUTOMOC) - SET(_matching_FILES ) - FOREACH (_current_FILE ${ARGN}) + set(_matching_FILES ) + foreach (_current_FILE ${ARGN}) KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) - IF (EXISTS ${_tmp_FILE}) + if (EXISTS ${_tmp_FILE}) FILE(READ ${_tmp_FILE} _contents) @@ -225,14 +225,14 @@ MACRO(KDE3_AUTOMOC) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) - FOREACH (_current_MOC_INC ${_match}) + if(_match) + foreach (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) -# SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) +# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + set(_header ${_abs_PATH}/${_basename}.h) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} @@ -242,53 +242,53 @@ MACRO(KDE3_AUTOMOC) KDE3_ADD_FILE_DEPENDANCY(${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} ${_moc}) - ENDFOREACH (_current_MOC_INC) - ENDIF(_match) + endforeach (_current_MOC_INC) + endif(_match) - ENDIF (EXISTS ${_tmp_FILE}) - ENDFOREACH (_current_FILE) + endif (EXISTS ${_tmp_FILE}) + endforeach (_current_FILE) ENDMACRO(KDE3_AUTOMOC) MACRO(KDE3_INSTALL_ICONS _theme) ADD_CUSTOM_TARGET(install_icons ) SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") FILE(GLOB _icons *.png) - FOREACH(_current_ICON ${_icons} ) + foreach(_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") - SET(_icon_GROUP "actions") + set(_icon_GROUP "actions") - IF(${_group} STREQUAL "mime") - SET(_icon_GROUP "mimetypes") - ENDIF(${_group} STREQUAL "mime") + if(${_group} STREQUAL "mime") + set(_icon_GROUP "mimetypes") + endif(${_group} STREQUAL "mime") - IF(${_group} STREQUAL "filesys") - SET(_icon_GROUP "filesystems") - ENDIF(${_group} STREQUAL "filesys") + if(${_group} STREQUAL "filesys") + set(_icon_GROUP "filesystems") + endif(${_group} STREQUAL "filesys") - IF(${_group} STREQUAL "device") - SET(_icon_GROUP "devices") - ENDIF(${_group} STREQUAL "device") + if(${_group} STREQUAL "device") + set(_icon_GROUP "devices") + endif(${_group} STREQUAL "device") - IF(${_group} STREQUAL "app") - SET(_icon_GROUP "apps") - ENDIF(${_group} STREQUAL "app") + if(${_group} STREQUAL "app") + set(_icon_GROUP "apps") + endif(${_group} STREQUAL "app") - IF(${_group} STREQUAL "action") - SET(_icon_GROUP "actions") - ENDIF(${_group} STREQUAL "action") + if(${_group} STREQUAL "action") + set(_icon_GROUP "actions") + endif(${_group} STREQUAL "action") -# MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") +# message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) + set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - ENDFOREACH (_current_ICON) + endforeach (_current_ICON) ENDMACRO(KDE3_INSTALL_ICONS _theme) MACRO(KDE3_CREATE_LIBTOOL_FILE _target) @@ -296,7 +296,7 @@ MACRO(KDE3_CREATE_LIBTOOL_FILE _target) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) - SET(_laname ${_laname}.la) + set(_laname ${_laname}.la) FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") @@ -321,9 +321,9 @@ ENDMACRO(KDE3_CREATE_LIBTOOL_FILE) MACRO(KDE3_CREATE_FINAL_FILE _filename) FILE(WRITE ${_filename} "//autogenerated file\n") - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n") - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE3_CREATE_FINAL_FILE _filename) @@ -333,22 +333,22 @@ OPTION(KDE3_BUILD_TESTS "Build the tests") MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty - IF (${_with_PREFIX} STREQUAL "WITH_PREFIX") - SET(_first_SRC) - ELSE (${_with_PREFIX} STREQUAL "WITH_PREFIX") - SET(_first_SRC ${_with_PREFIX}) - ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + if (${_with_PREFIX} STREQUAL "WITH_PREFIX") + set(_first_SRC) + else (${_with_PREFIX} STREQUAL "WITH_PREFIX") + set(_first_SRC ${_with_PREFIX}) + endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") - IF (KDE3_ENABLE_FINAL) + if (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final.cpp) - ELSE (KDE3_ENABLE_FINAL) + else (KDE3_ENABLE_FINAL) ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) - ENDIF (KDE3_ENABLE_FINAL) + endif (KDE3_ENABLE_FINAL) - IF(_first_SRC) + if(_first_SRC) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") - ENDIF(_first_SRC) + endif(_first_SRC) KDE3_CREATE_LIBTOOL_FILE(${_target_NAME}) @@ -356,12 +356,12 @@ ENDMACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) MACRO(KDE3_ADD_KLM _target_NAME ) - IF (KDE3_ENABLE_FINAL) + if (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) - ELSE (KDE3_ENABLE_FINAL) + else (KDE3_ENABLE_FINAL) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) - ENDIF (KDE3_ENABLE_FINAL) + endif (KDE3_ENABLE_FINAL) CONFIGURE_FILE(${CMAKE_ROOT}/Modules/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) @@ -373,12 +373,12 @@ ENDMACRO(KDE3_ADD_KLM _target_NAME) MACRO(KDE3_ADD_EXECUTABLE _target_NAME ) - IF (KDE3_ENABLE_FINAL) + if (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp) - ELSE (KDE3_ENABLE_FINAL) + else (KDE3_ENABLE_FINAL) ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) - ENDIF (KDE3_ENABLE_FINAL) + endif (KDE3_ENABLE_FINAL) ENDMACRO(KDE3_ADD_EXECUTABLE _target_NAME) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ab7de2f4..fbf58ba1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -18,28 +18,28 @@ #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) MACRO(KDE4_ADD_DCOP_SKELS _sources) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) - SET(_skel_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.h) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + set(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) + set(_skel_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.h) + set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - IF (NOT HAVE_${_basename}_KIDL_RULE) - SET(HAVE_${_basename}_KIDL_RULE ON) + if (not HAVE_${_basename}_KIDL_RULE) + set(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ) - ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + endif (not HAVE_${_basename}_KIDL_RULE) - IF (NOT HAVE_${_basename}_SKEL_RULE) - SET(HAVE_${_basename}_SKEL_RULE ON) + if (not HAVE_${_basename}_SKEL_RULE) + set(HAVE_${_basename}_SKEL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} @@ -48,38 +48,38 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) MACRO_ADDITIONAL_CLEAN_FILES( ${_skel_H}) - ENDIF (NOT HAVE_${_basename}_SKEL_RULE) + endif (not HAVE_${_basename}_SKEL_RULE) - SET(${_sources} ${${_sources}} ${_skel}) + set(${_sources} ${${_sources}} ${_skel}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE4_ADD_DCOP_SKELS) MACRO(KDE4_ADD_DCOP_STUBS _sources) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) - SET(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + set(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) + set(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) + set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - IF (NOT HAVE_${_basename}_KIDL_RULE) - SET(HAVE_${_basename}_KIDL_RULE ON) + if (not HAVE_${_basename}_KIDL_RULE) + set(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ) - ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + endif (not HAVE_${_basename}_KIDL_RULE) - IF (NOT HAVE_${_basename}_STUB_RULE) - SET(HAVE_${_basename}_STUB_RULE ON) + if (not HAVE_${_basename}_STUB_RULE) + set(HAVE_${_basename}_STUB_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} @@ -88,17 +88,17 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) MACRO_ADDITIONAL_CLEAN_FILES( ${_stub_H}) - ENDIF (NOT HAVE_${_basename}_STUB_RULE) + endif (not HAVE_${_basename}_STUB_RULE) - SET(${_sources} ${${_sources}} ${_stub_CPP}) + set(${_sources} ${${_sources}} ${_stub_CPP}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE4_ADD_DCOP_STUBS) MACRO(KDE4_ADD_KCFG_FILES _sources) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -107,9 +107,9 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) FILE(READ ${_tmp_FILE} _contents) STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+)\n.*$" "\\2" _kcfg_FILE "${_contents}") - SET(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) # the command for creating the source file from the kcfg file ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} @@ -127,28 +127,28 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) - SET(${_sources} ${${_sources}} ${_src_FILE}) + set(${_sources} ${${_sources}} ${_src_FILE}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE4_ADD_KCFG_FILES) -IF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") - SET(KDE4_MODULE_DIR "${CMAKE_ROOT}/Modules") -ELSE(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") - SET(KDE4_MODULE_DIR "${CMAKE_SOURCE_DIR}/cmake/modules") -ENDIF(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") +if(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") + set(KDE4_MODULE_DIR "${CMAKE_ROOT}/Modules") +else(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") + set(KDE4_MODULE_DIR "${CMAKE_SOURCE_DIR}/cmake/modules") +endif(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) MACRO(KDE4_ADD_UI_FILES _sources ) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) # we need to run uic and replace some things in the generated file # this is done by executing the cmake script kde4uic.cmake @@ -163,7 +163,7 @@ MACRO(KDE4_ADD_UI_FILES _sources ) -P ${KDE4_MODULE_DIR}/kde4uic.cmake DEPENDS ${_tmp_FILE} ) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE4_ADD_UI_FILES) @@ -173,14 +173,14 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) QT4_GET_MOC_INC_DIRS(_moc_INCS) - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_header} COMMAND ${CMAKE_COMMAND} @@ -215,21 +215,21 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) ARGS ${_moc_INCS} ${_header} -o ${_moc} DEPENDS ${_header} ) - SET(${_sources} ${${_sources}} ${_src} ${_moc} ) + set(${_sources} ${${_sources}} ${_src} ${_moc} ) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) ENDMACRO(KDE4_ADD_UI3_FILES) MACRO(KDE4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) - SET(_matching_FILES ) - FOREACH (_current_FILE ${ARGN}) + set(_matching_FILES ) + foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - IF (EXISTS ${_tmp_FILE}) + if (EXISTS ${_tmp_FILE}) FILE(READ ${_tmp_FILE} _contents) @@ -237,14 +237,14 @@ MACRO(KDE4_AUTOMOC) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) - FOREACH (_current_MOC_INC ${_match}) + if(_match) + foreach (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) -# SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) +# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + set(_header ${_abs_PATH}/${_basename}.h) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} @@ -253,86 +253,86 @@ MACRO(KDE4_AUTOMOC) MACRO_ADD_FILE_DEPENDENCIES(${_tmp_FILE} ${_moc}) - ENDFOREACH (_current_MOC_INC) - ENDIF(_match) + endforeach (_current_MOC_INC) + endif(_match) - ENDIF (EXISTS ${_tmp_FILE}) - ENDFOREACH (_current_FILE) + endif (EXISTS ${_tmp_FILE}) + endforeach (_current_FILE) ENDMACRO(KDE4_AUTOMOC) MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) ADD_CUSTOM_TARGET(install_icons ) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") FILE(GLOB _icons *.png) - FOREACH(_current_ICON ${_icons} ) + foreach(_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") # if the string doesn't match the pattern, the result is the full string, so all three have the same content - IF( NOT ${_size} STREQUAL ${_name} ) - SET(_icon_GROUP "actions") + if( not ${_size} STREQUAL ${_name} ) + set(_icon_GROUP "actions") - IF(${_group} STREQUAL "mime") - SET(_icon_GROUP "mimetypes") - ENDIF(${_group} STREQUAL "mime") + if(${_group} STREQUAL "mime") + set(_icon_GROUP "mimetypes") + endif(${_group} STREQUAL "mime") - IF(${_group} STREQUAL "filesys") - SET(_icon_GROUP "filesystems") - ENDIF(${_group} STREQUAL "filesys") + if(${_group} STREQUAL "filesys") + set(_icon_GROUP "filesystems") + endif(${_group} STREQUAL "filesys") - IF(${_group} STREQUAL "device") - SET(_icon_GROUP "devices") - ENDIF(${_group} STREQUAL "device") + if(${_group} STREQUAL "device") + set(_icon_GROUP "devices") + endif(${_group} STREQUAL "device") - IF(${_group} STREQUAL "app") - SET(_icon_GROUP "apps") - ENDIF(${_group} STREQUAL "app") + if(${_group} STREQUAL "app") + set(_icon_GROUP "apps") + endif(${_group} STREQUAL "app") - IF(${_group} STREQUAL "action") - SET(_icon_GROUP "actions") - ENDIF(${_group} STREQUAL "action") + if(${_group} STREQUAL "action") + set(_icon_GROUP "actions") + endif(${_group} STREQUAL "action") -# MESSAGE(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") +# message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) + set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - ENDIF( NOT ${_size} STREQUAL ${_name} ) - ENDFOREACH (_current_ICON) + endif( not ${_size} STREQUAL ${_name} ) + endforeach (_current_ICON) FILE(GLOB _icons *.svgz) - FOREACH(_current_ICON ${_icons} ) + foreach(_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") - SET(_icon_GROUP "actions") + set(_icon_GROUP "actions") - IF(${_group} STREQUAL "mime") - SET(_icon_GROUP "mimetypes") - ENDIF(${_group} STREQUAL "mime") + if(${_group} STREQUAL "mime") + set(_icon_GROUP "mimetypes") + endif(${_group} STREQUAL "mime") - IF(${_group} STREQUAL "filesys") - SET(_icon_GROUP "filesystems") - ENDIF(${_group} STREQUAL "filesys") + if(${_group} STREQUAL "filesys") + set(_icon_GROUP "filesystems") + endif(${_group} STREQUAL "filesys") - IF(${_group} STREQUAL "device") - SET(_icon_GROUP "devices") - ENDIF(${_group} STREQUAL "device") + if(${_group} STREQUAL "device") + set(_icon_GROUP "devices") + endif(${_group} STREQUAL "device") - IF(${_group} STREQUAL "app") - SET(_icon_GROUP "apps") - ENDIF(${_group} STREQUAL "app") + if(${_group} STREQUAL "app") + set(_icon_GROUP "apps") + endif(${_group} STREQUAL "app") - IF(${_group} STREQUAL "action") - SET(_icon_GROUP "actions") - ENDIF(${_group} STREQUAL "action") + if(${_group} STREQUAL "action") + set(_icon_GROUP "actions") + endif(${_group} STREQUAL "action") - SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/scalable/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/scalable/${_icon_GROUP}/${_name}) + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - ENDFOREACH (_current_ICON) + endforeach (_current_ICON) INSTALL(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) ENDMACRO(KDE4_INSTALL_ICONS _theme _defaultpath) @@ -353,7 +353,7 @@ MACRO(KDE4_INSTALL_LIBTOOL_FILE _subdir _target) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) - SET(_laname ${LIBRARY_OUTPUT_PATH}/${_laname}.la) + set(_laname ${LIBRARY_OUTPUT_PATH}/${_laname}.la) FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") @@ -380,14 +380,14 @@ ENDMACRO(KDE4_INSTALL_LIBTOOL_FILE) MACRO(KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) FILE(WRITE ${_filenameCPP} "//autogenerated file\n") FILE(WRITE ${_filenameC} "/*autogenerated file*/\n") - FOREACH (_current_FILE ${ARGN}) + foreach (_current_FILE ${ARGN}) STRING(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE}) - IF(_isCFile) + if(_isCFile) FILE(APPEND ${_filenameC} "#include \"${_current_FILE}\"\n") - ELSE(_isCFile) + else(_isCFile) FILE(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n") - ENDIF(_isCFile) - ENDFOREACH (_current_FILE) + endif(_isCFile) + endforeach (_current_FILE) ENDMACRO(KDE4_CREATE_FINAL_FILES) @@ -398,27 +398,27 @@ OPTION(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty - IF (${_with_PREFIX} STREQUAL "WITH_PREFIX") - SET(_first_SRC) - ELSE (${_with_PREFIX} STREQUAL "WITH_PREFIX") - SET(_first_SRC ${_with_PREFIX}) - ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + if (${_with_PREFIX} STREQUAL "WITH_PREFIX") + set(_first_SRC) + else (${_with_PREFIX} STREQUAL "WITH_PREFIX") + set(_first_SRC ${_with_PREFIX}) + endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") - IF (KDE4_ENABLE_FINAL) + if (KDE4_ENABLE_FINAL) KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - ELSE (KDE4_ENABLE_FINAL) + else (KDE4_ENABLE_FINAL) ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) - ENDIF (KDE4_ENABLE_FINAL) + endif (KDE4_ENABLE_FINAL) - IF(_first_SRC) + if(_first_SRC) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") - ENDIF(_first_SRC) + endif(_first_SRC) -# IF (UNIX) +# if (UNIX) # I guess under windows the libtool file are not required #KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) -# ENDIF (UNIX) +# endif (UNIX) ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) @@ -428,35 +428,35 @@ MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) MACRO_ADDITIONAL_CLEAN_FILES( ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) -# IF (WIN32) +# if (WIN32) # # under windows, just build a normal executable # KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) -# ELSE (WIN32) +# else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library - IF (KDE4_ENABLE_FINAL) + if (KDE4_ENABLE_FINAL) KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - ELSE (KDE4_ENABLE_FINAL) + else (KDE4_ENABLE_FINAL) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) -# MESSAGE(STATUS "klm: kdeinit_${_target_NAME}") - ENDIF (KDE4_ENABLE_FINAL) +# message(STATUS "klm: kdeinit_${_target_NAME}") + endif (KDE4_ENABLE_FINAL) ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) -# ENDIF (WIN32) +# endif (WIN32) ENDMACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) - IF (KDE4_ENABLE_FINAL) + if (KDE4_ENABLE_FINAL) KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - ELSE (KDE4_ENABLE_FINAL) + else (KDE4_ENABLE_FINAL) ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) - ENDIF (KDE4_ENABLE_FINAL) + endif (KDE4_ENABLE_FINAL) ENDMACRO(KDE4_ADD_EXECUTABLE _target_NAME) @@ -464,35 +464,35 @@ ENDMACRO(KDE4_ADD_EXECUTABLE _target_NAME) MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty - SET(_first_SRC ${_lib_TYPE}) - SET(_add_lib_param) - - IF (${_lib_TYPE} STREQUAL "STATIC") - SET(_first_SRC) - SET(_add_lib_param STATIC) - ENDIF (${_lib_TYPE} STREQUAL "STATIC") - IF (${_lib_TYPE} STREQUAL "SHARED") - SET(_first_SRC) - SET(_add_lib_param SHARED) - ENDIF (${_lib_TYPE} STREQUAL "SHARED") - IF (${_lib_TYPE} STREQUAL "MODULE") - SET(_first_SRC) - SET(_add_lib_param MODULE) - ENDIF (${_lib_TYPE} STREQUAL "MODULE") - - IF (KDE4_ENABLE_FINAL) + set(_first_SRC ${_lib_TYPE}) + set(_add_lib_param) + + if (${_lib_TYPE} STREQUAL "STATIC") + set(_first_SRC) + set(_add_lib_param STATIC) + endif (${_lib_TYPE} STREQUAL "STATIC") + if (${_lib_TYPE} STREQUAL "SHARED") + set(_first_SRC) + set(_add_lib_param SHARED) + endif (${_lib_TYPE} STREQUAL "SHARED") + if (${_lib_TYPE} STREQUAL "MODULE") + set(_first_SRC) + set(_add_lib_param MODULE) + endif (${_lib_TYPE} STREQUAL "MODULE") + + if (KDE4_ENABLE_FINAL) KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - ELSE (KDE4_ENABLE_FINAL) + else (KDE4_ENABLE_FINAL) ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) - ENDIF (KDE4_ENABLE_FINAL) + endif (KDE4_ENABLE_FINAL) - IF (WIN32) + if (WIN32) # for shared libraries a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) - ENDIF (WIN32) + endif (WIN32) ENDMACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) diff --git a/modules/MacroAddFileDependencies.cmake b/modules/MacroAddFileDependencies.cmake index e263c6b8..0025a13e 100644 --- a/modules/MacroAddFileDependencies.cmake +++ b/modules/MacroAddFileDependencies.cmake @@ -4,11 +4,11 @@ MACRO(MACRO_ADD_FILE_DEPENDENCIES _file) GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS) - IF (_deps) - SET(_deps ${_deps} ${ARGN}) - ELSE (_deps) - SET(_deps ${ARGN}) - ENDIF (_deps) + if (_deps) + set(_deps ${_deps} ${ARGN}) + else (_deps) + set(_deps ${ARGN}) + endif (_deps) SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}") diff --git a/modules/MacroAdditionalCleanFiles.cmake b/modules/MacroAdditionalCleanFiles.cmake index a3d930dc..5f1725ea 100644 --- a/modules/MacroAdditionalCleanFiles.cmake +++ b/modules/MacroAdditionalCleanFiles.cmake @@ -4,11 +4,11 @@ MACRO(MACRO_ADDITIONAL_CLEAN_FILES) GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ADDITIONAL_MAKE_CLEAN_FILES ) - IF (_tmp_DIR_PROPS) - SET(_tmp_DIR_PROPS ${_tmp_DIR_PROPS} ${ARGN}) - ELSE (_tmp_DIR_PROPS) - SET(_tmp_DIR_PROPS ${ARGN}) - ENDIF (_tmp_DIR_PROPS) + if (_tmp_DIR_PROPS) + set(_tmp_DIR_PROPS ${_tmp_DIR_PROPS} ${ARGN}) + else (_tmp_DIR_PROPS) + set(_tmp_DIR_PROPS ${ARGN}) + endif (_tmp_DIR_PROPS) SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${_tmp_DIR_PROPS}") ENDMACRO(MACRO_ADDITIONAL_CLEAN_FILES) diff --git a/modules/MacroGetenvWinPath.cmake b/modules/MacroGetenvWinPath.cmake index 9c8efaf3..6df21e04 100644 --- a/modules/MacroGetenvWinPath.cmake +++ b/modules/MacroGetenvWinPath.cmake @@ -1,5 +1,5 @@ MACRO(MACRO_GETENV_WIN_PATH var name) - SET(${var} $ENV{${name}}) + set(${var} $ENV{${name}}) STRING( REGEX REPLACE "\\\\" "/" ${var} "${${var}}" ) ENDMACRO(MACRO_GETENV_WIN_PATH var name) diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake index 1b0cf1e7..c7a05cf0 100644 --- a/modules/MacroOptionalFindPackage.cmake +++ b/modules/MacroOptionalFindPackage.cmake @@ -9,14 +9,14 @@ MACRO(MACRO_OPTIONAL_FIND_PACKAGE _name ) OPTION(WITH_${_name} "Search for ${_name} package" ON) - IF (WITH_${_name}) + if (WITH_${_name}) FIND_PACKAGE(${_name} ${ARGN}) - ELSE (WITH_${_name}) - SET(${_name}_FOUND) - SET(${_name}_INCLUDE_DIR) - SET(${_name}_INCLUDES) - SET(${_name}_LIBRARY) - SET(${_name}_LIBRARIES) - ENDIF (WITH_${_name}) + else (WITH_${_name}) + set(${_name}_FOUND) + set(${_name}_INCLUDE_DIR) + set(${_name}_INCLUDES) + set(${_name}_LIBRARY) + set(${_name}_LIBRARIES) + endif (WITH_${_name}) ENDMACRO(MACRO_OPTIONAL_FIND_PACKAGE) diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index e810d572..2deba4d7 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -10,18 +10,18 @@ FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) # reset the variables at the beginning - SET(${_include_DIR}) - SET(${_link_DIR}) - SET(${_link_FLAGS}) - SET(${_cflags}) + set(${_include_DIR}) + set(${_link_DIR}) + set(${_link_FLAGS}) + set(${_cflags}) # if pkg-config has been found - IF(PKGCONFIG_EXECUTABLE) + if(PKGCONFIG_EXECUTABLE) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) # and if the package of interest also exists for pkg-config, then get the information - IF(NOT _return_VALUE) + if(not _return_VALUE) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) @@ -31,9 +31,9 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) - ENDIF(NOT _return_VALUE) + endif(not _return_VALUE) - ENDIF(PKGCONFIG_EXECUTABLE) + endif(PKGCONFIG_EXECUTABLE) ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 4d33e60d..a39be0a2 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -1,6 +1,6 @@ #using a ui3 file with uic3 -IF(KDE3_IMPL) +if(KDE3_IMPL) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -nounload -tr tr2i18n @@ -9,10 +9,10 @@ IF(KDE3_IMPL) OUTPUT_VARIABLE _uic_CONTENTS ERROR_QUIET ) -ENDIF(KDE3_IMPL) +endif(KDE3_IMPL) -IF(KDE3_HEADER) +if(KDE3_HEADER) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -nounload -tr tr2i18n @@ -20,11 +20,11 @@ IF(KDE3_HEADER) OUTPUT_VARIABLE _uic_CONTENTS ERROR_QUIET ) - SET(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) -ENDIF(KDE3_HEADER) + set(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) +endif(KDE3_HEADER) # the kde4 branch -IF (KDE4_HEADER) +if (KDE4_HEADER) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -tr tr2i18n @@ -33,8 +33,8 @@ IF (KDE4_HEADER) ERROR_QUIET ) - SET(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) -ENDIF (KDE4_HEADER) + set(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) +endif (KDE4_HEADER) #replace tr218n("") with QString::null to avoid waring from KLocale -- cgit v1.2.1 From eaad615ee85800bedbf2088326399027c95d0740 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 15 Feb 2006 10:49:53 +0000 Subject: Hmm, "NOT" can't be lowercased. I tested before lowercasing that last one, of course... svn path=/trunk/KDE/kdelibs/; revision=509625 --- modules/CheckTypeSize.cmake | 2 +- modules/FindAGG.cmake | 6 ++--- modules/FindASPELL.cmake | 6 ++--- modules/FindBZip2.cmake | 6 ++--- modules/FindCups.cmake | 6 ++--- modules/FindDNSSD.cmake | 6 ++--- modules/FindFAM.cmake | 6 ++--- modules/FindGIF.cmake | 6 ++--- modules/FindGNUWIN32.cmake | 6 ++--- modules/FindHSPELL.cmake | 6 ++--- modules/FindJasper.cmake | 6 ++--- modules/FindKDE3.cmake | 12 ++++----- modules/FindKDE4.cmake | 24 +++++++++--------- modules/FindKDEWIN32.cmake | 6 ++--- modules/FindLibArt.cmake | 6 ++--- modules/FindLibXml2.cmake | 6 ++--- modules/FindLibXslt.cmake | 6 ++--- modules/FindOpenEXR.cmake | 6 ++--- modules/FindOpenSSL.cmake | 6 ++--- modules/FindPCRE.cmake | 6 ++--- modules/FindQt4.cmake | 60 ++++++++++++++++++++++----------------------- modules/FindTIFF.cmake | 4 +-- modules/FindX11.cmake | 20 +++++++-------- modules/KDE3Macros.cmake | 16 ++++++------ modules/KDE4Macros.cmake | 23 ++++++++--------- modules/README | 2 +- modules/UsePkgConfig.cmake | 6 ++--- 27 files changed, 136 insertions(+), 135 deletions(-) (limited to 'modules') diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake index ec1af0ab..10fcfcd7 100755 --- a/modules/CheckTypeSize.cmake +++ b/modules/CheckTypeSize.cmake @@ -4,7 +4,7 @@ # exists, the size will be stored to the variable. # # VARIABLE - variable to store size if the type exists. -# HAVE_${VARIABLE} - does the variable exists or not +# HAVE_${VARIABLE} - does the variable exists or NOT MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) set(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 2ea1ead5..18b39654 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -34,12 +34,12 @@ if(AGG_INCLUDE_DIR AND AGG_LIBRARIES) endif(AGG_INCLUDE_DIR AND AGG_LIBRARIES) if(AGG_FOUND) - if(not AGG_FIND_QUIETLY) + if(NOT AGG_FIND_QUIETLY) message(STATUS "Found AGG: ${AGG_LIBRARIES}") - endif(not AGG_FIND_QUIETLY) + endif(NOT AGG_FIND_QUIETLY) else(AGG_FOUND) if(AGG_FIND_REQUIRED) - message(FATAL_ERROR "Could not find AGG") + message(FATAL_ERROR "Could NOT find AGG") endif(AGG_FIND_REQUIRED) endif(AGG_FOUND) diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index f2ca068c..855f55c7 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -24,12 +24,12 @@ if(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) endif(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) if(ASPELL_FOUND) - if(not ASPELL_FIND_QUIETLY) + if(NOT ASPELL_FIND_QUIETLY) message(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") - endif(not ASPELL_FIND_QUIETLY) + endif(NOT ASPELL_FIND_QUIETLY) else(ASPELL_FOUND) if(ASPELL_FIND_REQUIRED) - message(FATAL_ERROR "Could not find ASPELL") + message(FATAL_ERROR "Could NOT find ASPELL") endif(ASPELL_FIND_REQUIRED) endif(ASPELL_FOUND) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 5e9faad9..0dd14f3c 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -27,12 +27,12 @@ if(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) endif(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) if(BZIP2_FOUND) - if(not BZip2_FIND_QUIETLY) + if(NOT BZip2_FIND_QUIETLY) message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - endif(not BZip2_FIND_QUIETLY) + endif(NOT BZip2_FIND_QUIETLY) else(BZIP2_FOUND) if(BZip2_FIND_REQUIRED) - message(FATAL_ERROR "Could not find BZip2") + message(FATAL_ERROR "Could NOT find BZip2") endif(BZip2_FIND_REQUIRED) endif(BZIP2_FOUND) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index f0689036..4d069336 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -24,12 +24,12 @@ if(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) endif(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) if(CUPS_FOUND) - if(not Cups_FIND_QUIETLY) + if(NOT Cups_FIND_QUIETLY) message(STATUS "Found Cups: ${CUPS_LIBRARIES}") - endif(not Cups_FIND_QUIETLY) + endif(NOT Cups_FIND_QUIETLY) else(CUPS_FOUND) if(Cups_FIND_REQUIRED) - message(FATAL_ERROR "Could not find Cups") + message(FATAL_ERROR "Could NOT find Cups") endif(Cups_FIND_REQUIRED) endif(CUPS_FOUND) diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index e13956f1..cf6c5a0b 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -25,12 +25,12 @@ if(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) endif(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) if(DNSSD_FOUND) - if(not DNSSD_FIND_QUIETLY) + if(NOT DNSSD_FIND_QUIETLY) message(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") - endif(not DNSSD_FIND_QUIETLY) + endif(NOT DNSSD_FIND_QUIETLY) else(DNSSD_FOUND) if(DNSSD_FIND_REQUIRED) - message(FATAL_ERROR "Could not find DNSSD") + message(FATAL_ERROR "Could NOT find DNSSD") endif(DNSSD_FIND_REQUIRED) endif(DNSSD_FOUND) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index b61fc4e7..225a2e29 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -23,12 +23,12 @@ endif(FAM_INCLUDE_DIR AND FAM_LIBRARIES) if(FAM_FOUND) - if(not FAM_FIND_QUIETLY) + if(NOT FAM_FIND_QUIETLY) message(STATUS "Found fam: ${FAM_LIBRARIES}") - endif(not FAM_FIND_QUIETLY) + endif(NOT FAM_FIND_QUIETLY) else(FAM_FOUND) if(FAM_FIND_REQUIRED) - message(FATAL_ERROR "Could not find fam library") + message(FATAL_ERROR "Could NOT find fam library") endif(FAM_FIND_REQUIRED) endif(FAM_FOUND) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index 6222b0d8..17097160 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -24,12 +24,12 @@ if(GIF_INCLUDE_DIR AND GIF_LIBRARIES) endif(GIF_INCLUDE_DIR AND GIF_LIBRARIES) if(GIF_FOUND) - if(not GIF_FIND_QUIETLY) + if(NOT GIF_FIND_QUIETLY) message(STATUS "Found GIF: ${GIF_LIBRARIES}") - endif(not GIF_FIND_QUIETLY) + endif(NOT GIF_FIND_QUIETLY) else(GIF_FOUND) if(GIF_FIND_REQUIRED) - message(FATAL_ERROR "Could not find GIF") + message(FATAL_ERROR "Could NOT find GIF") endif(GIF_FIND_REQUIRED) endif(GIF_FOUND) diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index d1c2422f..11a11672 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -19,12 +19,12 @@ else(GNUWIN32_DIRECTORY) endif(GNUWIN32_DIRECTORY) if(GNUWIN32_FOUND) - if(not GNUWIN32_FIND_QUIETLY) + if(NOT GNUWIN32_FIND_QUIETLY) message(STATUS "Found GNUWIN32: ${GNUWIN32_DIR}") - endif(not GNUWIN32_FIND_QUIETLY) + endif(NOT GNUWIN32_FIND_QUIETLY) else(GNUWIN32_FOUND) if(GNUWIN32_FIND_REQUIRED) - message(SEND_ERROR "Could not find GNUWIN32") + message(SEND_ERROR "Could NOT find GNUWIN32") endif(GNUWIN32_FIND_REQUIRED) endif(GNUWIN32_FOUND) diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake index b0681d43..45475e9a 100644 --- a/modules/FindHSPELL.cmake +++ b/modules/FindHSPELL.cmake @@ -24,12 +24,12 @@ if(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) endif(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) if(HSPELL_FOUND) - if(not HSPELL_FIND_QUIETLY) + if(NOT HSPELL_FIND_QUIETLY) message(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") - endif(not HSPELL_FIND_QUIETLY) + endif(NOT HSPELL_FIND_QUIETLY) else(HSPELL_FOUND) if(HSPELL_FIND_REQUIRED) - message(FATAL_ERROR "Could not find HSPELL") + message(FATAL_ERROR "Could NOT find HSPELL") endif(HSPELL_FIND_REQUIRED) endif(HSPELL_FOUND) diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 4de93039..268d71bf 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -25,12 +25,12 @@ endif(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) if(JASPER_FOUND) - if(not Jasper_FIND_QUIETLY) + if(NOT Jasper_FIND_QUIETLY) message(STATUS "Found jasper: ${JASPER_LIBRARIES}") - endif(not Jasper_FIND_QUIETLY) + endif(NOT Jasper_FIND_QUIETLY) else(JASPER_FOUND) if(Jasper_FIND_REQUIRED) - message(FATAL_ERROR "Could not find jasper library") + message(FATAL_ERROR "Could NOT find jasper library") endif(Jasper_FIND_REQUIRED) endif(JASPER_FOUND) diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index 498dffec..828ca056 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -42,7 +42,7 @@ set(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) #add some KDE specific stuff set(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common) -#only on linux, but not e.g. on FreeBSD: +#only on linux, but NOT e.g. on FreeBSD: if(CMAKE_SYSTEM_NAME MATCHES "Linux") set(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) endif(CMAKE_SYSTEM_NAME MATCHES "Linux") @@ -143,16 +143,16 @@ MACRO (KDE3_PRINT_RESULTS) ENDMACRO (KDE3_PRINT_RESULTS) -if (KDE3_FIND_REQUIRED AND not KDE3_FOUND) +if (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) #bail out if something wasn't found KDE3_PRINT_RESULTS() - message(FATAL_ERROR "Could not find everything required for compiling KDE 3 programs") + message(FATAL_ERROR "Could NOT find everything required for compiling KDE 3 programs") -endif (KDE3_FIND_REQUIRED AND not KDE3_FOUND) +endif (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) -if (not KDE3_FIND_QUIETLY) +if (NOT KDE3_FIND_QUIETLY) KDE3_PRINT_RESULTS() -endif (not KDE3_FIND_QUIETLY) +endif (NOT KDE3_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path set(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 6a81de18..9d808f76 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -111,7 +111,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - # ... but not otherwise + # ... but NOT otherwise set( _KDE4_DCOPIDL2CPP_DEP ) set( _KDE4_KCONFIG_COMPILER_DEP) @@ -178,10 +178,10 @@ endif (WIN32) ##################### and now the platform specific stuff ############################ -if(UNIX AND not APPLE) +if(UNIX AND NOT APPLE) FIND_PACKAGE(X11 REQUIRED) set(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) -endif(UNIX AND not APPLE) +endif(UNIX AND NOT APPLE) @@ -190,7 +190,7 @@ if (WIN32) if(CYGWIN) - message(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it") + message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") endif(CYGWIN) FIND_PACKAGE(KDEWIN32 REQUIRED) @@ -211,7 +211,7 @@ if (WIN32) endif (WIN32) -# only on linux, but not e.g. on FreeBSD: +# only on linux, but NOT e.g. on FreeBSD: if(CMAKE_SYSTEM_NAME MATCHES Linux) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") @@ -221,7 +221,7 @@ if(CMAKE_SYSTEM_NAME MATCHES Linux) endif(CMAKE_SYSTEM_NAME MATCHES Linux) -# works on FreeBSD, not tested on NetBSD and OpenBSD +# works on FreeBSD, NOT tested on NetBSD and OpenBSD if(CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") @@ -302,19 +302,19 @@ MACRO (KDE4_PRINT_RESULTS) ENDMACRO (KDE4_PRINT_RESULTS) -if (KDE4_FIND_REQUIRED AND not KDE4_FOUND) +if (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) #bail out if something wasn't found KDE4_PRINT_RESULTS() - message(FATAL_ERROR "Could not find everything required for compiling KDE 4 programs") -endif (KDE4_FIND_REQUIRED AND not KDE4_FOUND) + message(FATAL_ERROR "Could NOT find everything required for compiling KDE 4 programs") +endif (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) -if (not KDE4_FIND_QUIETLY) +if (NOT KDE4_FIND_QUIETLY) KDE4_PRINT_RESULTS() -endif (not KDE4_FIND_QUIETLY) +endif (NOT KDE4_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) -# not used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT +# NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS ) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 0cf90ffd..2c981cc0 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -46,12 +46,12 @@ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) if (KDEWIN32_FOUND) - if (not KDEWIN32_FIND_QUIETLY) + if (NOT KDEWIN32_FIND_QUIETLY) message(STATUS "Found KDEWIN32: ${KDEWIN32_LIBRARY}") - endif (not KDEWIN32_FIND_QUIETLY) + endif (NOT KDEWIN32_FIND_QUIETLY) else (KDEWIN32_FOUND) if (KDEWIN32_FIND_REQUIRED) - message(FATAL_ERROR "Could not find KDEWIN32 library\nPlease build and install kdelibs/win/ first") + message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease build and install kdelibs/win/ first") endif (KDEWIN32_FIND_REQUIRED) endif (KDEWIN32_FOUND) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index e0226d6c..a04495ca 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -42,12 +42,12 @@ endif(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) if(LIBART_FOUND) - if(not LibArt_FIND_QUIETLY) + if(NOT LibArt_FIND_QUIETLY) message(STATUS "Found libart: ${LIBART_LIBRARIES}") - endif(not LibArt_FIND_QUIETLY) + endif(NOT LibArt_FIND_QUIETLY) else(LIBART_FOUND) if(LibArt_FIND_REQUIRED) - message(FATAL_ERROR "Could not find libart") + message(FATAL_ERROR "Could NOT find libart") endif(LibArt_FIND_REQUIRED) endif(LIBART_FOUND) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 89737bb6..c25cc7e2 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -38,12 +38,12 @@ if(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) endif(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) if(LIBXML2_FOUND) - if(not LibXml2_FIND_QUIETLY) + if(NOT LibXml2_FIND_QUIETLY) message(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") - endif(not LibXml2_FIND_QUIETLY) + endif(NOT LibXml2_FIND_QUIETLY) else(LIBXML2_FOUND) if(LibXml2_FIND_REQUIRED) - message(SEND_ERROR "Could not find LibXml2") + message(SEND_ERROR "Could NOT find LibXml2") endif(LibXml2_FIND_REQUIRED) endif(LIBXML2_FOUND) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 2efe52f2..44d24605 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -34,12 +34,12 @@ if(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) endif(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) if(LIBXSLT_FOUND) - if(not LibXslt_FIND_QUIETLY) + if(NOT LibXslt_FIND_QUIETLY) message(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") - endif(not LibXslt_FIND_QUIETLY) + endif(NOT LibXslt_FIND_QUIETLY) else(LIBXSLT_FOUND) if(LibXslt_FIND_REQUIRED) - message(FATAL_ERROR "Could not find LibXslt") + message(FATAL_ERROR "Could NOT find LibXslt") endif(LibXslt_FIND_REQUIRED) endif(LIBXSLT_FOUND) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 23ae39a5..5539fa59 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -58,12 +58,12 @@ endif(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY A if (OPENEXR_FOUND) - if (not OpenEXR_FIND_QUIETLY) + if (NOT OpenEXR_FIND_QUIETLY) message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") - endif (not OpenEXR_FIND_QUIETLY) + endif (NOT OpenEXR_FIND_QUIETLY) else (OPENEXR_FOUND) if (OpenEXR_FIND_REQUIRED) - message(FATAL_ERROR "Could not find OPENEXR") + message(FATAL_ERROR "Could NOT find OPENEXR") endif (OpenEXR_FIND_REQUIRED) endif (OPENEXR_FOUND) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 766cbc58..7b9f7d55 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -22,12 +22,12 @@ endif(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) if(OPENSSL_FOUND) - if(not OpenSSL_FIND_QUIETLY) + if(NOT OpenSSL_FIND_QUIETLY) message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") - endif(not OpenSSL_FIND_QUIETLY) + endif(NOT OpenSSL_FIND_QUIETLY) else(OPENSSL_FOUND) if(OpenSSL_FIND_REQUIRED) - message(FATAL_ERROR "Could not find OpenSSL") + message(FATAL_ERROR "Could NOT find OpenSSL") endif(OpenSSL_FIND_REQUIRED) endif(OPENSSL_FOUND) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index fbca4eb8..b7935d26 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -40,12 +40,12 @@ endif(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) if(PCRE_FOUND) - if(not PCRE_FIND_QUIETLY) + if(NOT PCRE_FIND_QUIETLY) message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") - endif(not PCRE_FIND_QUIETLY) + endif(NOT PCRE_FIND_QUIETLY) else(PCRE_FOUND) if(PCRE_FIND_REQUIRED) - message(FATAL_ERROR "Could not find PCRE") + message(FATAL_ERROR "Could NOT find PCRE") endif(PCRE_FIND_REQUIRED) endif(PCRE_FOUND) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2012c753..4259b648 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -95,7 +95,7 @@ # QT_QTSVG_LIBRARY_DEBUG Fullpath to QtSvg_debug # QT_QTTEST_LIBRARY_DEBUG Fullpath to QtTest_debug # -# also defined, but not for general use are +# also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. # QT_UIC_EXECUTABLE Where to find the uic tool. # QT_UIC3_EXECUTABLE Where to find the uic3 tool. @@ -145,9 +145,9 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS NO_SYSTEM_PATH ) -if (not QT_QMAKE_EXECUTABLE) +if (NOT QT_QMAKE_EXECUTABLE) FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake) -endif (not QT_QMAKE_EXECUTABLE) +endif (NOT QT_QMAKE_EXECUTABLE) if (QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" @@ -159,7 +159,7 @@ endif (QT_QMAKE_EXECUTABLE) if(QT4_QMAKE_FOUND) # Set QT_LIBRARY_DIR - if(not QT_LIBRARY_DIR) + if(NOT QT_LIBRARY_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_LIBS" OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) @@ -167,9 +167,9 @@ if(QT4_QMAKE_FOUND) set(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") else(EXISTS "${QT_LIBRARY_DIR_TMP}") message("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - message("Warning: ${QT_LIBRARY_DIR_TMP} does not exist, Qt must not be installed correctly.") + message("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") endif(EXISTS "${QT_LIBRARY_DIR_TMP}") - endif(not QT_LIBRARY_DIR) + endif(NOT QT_LIBRARY_DIR) if (APPLE) if (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) @@ -188,7 +188,7 @@ if(QT4_QMAKE_FOUND) # Setting the INCLUDE-Variables # ######################################## - if (not QT_HEADERS_DIR) + if (NOT QT_HEADERS_DIR) # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header if(QT_QMAKE_EXECUTABLE) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} @@ -196,7 +196,7 @@ if(QT4_QMAKE_FOUND) OUTPUT_VARIABLE qt_headers ) set(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") endif(QT_QMAKE_EXECUTABLE) - endif (not QT_HEADERS_DIR) + endif (NOT QT_HEADERS_DIR) FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-3*/include/Qt/) set(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) @@ -218,20 +218,20 @@ if(QT4_QMAKE_FOUND) /usr/include/qt4/QtCore) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - if( QT_QTCORE_INCLUDE_DIR AND not QT_INCLUDE_DIR) + if( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) if (QT_USE_FRAMEWORKS) set(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) else (QT_USE_FRAMEWORKS) STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) set( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") endif (QT_USE_FRAMEWORKS) - endif( QT_QTCORE_INCLUDE_DIR AND not QT_INCLUDE_DIR) + endif( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - if( not QT_INCLUDE_DIR) - if( not Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - message( FATAL_ERROR "Could not find QtGlobal header") - endif( not Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - endif( not QT_INCLUDE_DIR) + if( NOT QT_INCLUDE_DIR) + if( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + message( FATAL_ERROR "Could NOT find QtGlobal header") + endif( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + endif( NOT QT_INCLUDE_DIR) FIND_PATH( QT_DOC_DIR /html/qcoreapplication.html @@ -337,7 +337,7 @@ if(QT4_QMAKE_FOUND) ######################################## if (QT_USE_FRAMEWORKS) - # If FIND_LIBRARY found libraries in Apple frameworks, we would not have + # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have # to jump through these hoops. set(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") @@ -470,14 +470,14 @@ if(QT4_QMAKE_FOUND) if (QT_${basename}_INCLUDE_DIR) # if only the release version was found, set the debug variable also to the release version - if (QT_${basename}_LIBRARY AND not QT_${basename}_LIBRARY_DEBUG) + if (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) set(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) - endif (QT_${basename}_LIBRARY AND not QT_${basename}_LIBRARY_DEBUG) + endif (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) # if only the debug version was found, set the release variable also to the debug version - if (QT_${basename}_LIBRARY_DEBUG AND not QT_${basename}_LIBRARY) + if (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) set(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - endif (QT_${basename}_LIBRARY_DEBUG AND not QT_${basename}_LIBRARY) + endif (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) if (QT_${basename}_LIBRARY) set(QT_${basename}_FOUND 1) @@ -511,12 +511,12 @@ if(QT4_QMAKE_FOUND) # ( moc, uic, rcc ) # ####################################### - if (not QT_BINARY_DIR) + if (NOT QT_BINARY_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_BINS" OUTPUT_VARIABLE qt_bins ) set(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - endif (not QT_BINARY_DIR) + endif (NOT QT_BINARY_DIR) # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, # which might be a Qt3 qmake @@ -536,9 +536,9 @@ if(QT4_QMAKE_FOUND) ) # if qmake wasn't found in the specific dirs, now check the system path - if (not QT_MOC_EXECUTABLE) + if (NOT QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) - endif (not QT_MOC_EXECUTABLE) + endif (NOT QT_MOC_EXECUTABLE) if (QT_MOC_EXECUTABLE) set ( QT_WRAP_CPP "YES") @@ -574,9 +574,9 @@ if(QT4_QMAKE_FOUND) NO_SYSTEM_PATH ) - if (not QT_UIC_EXECUTABLE) + if (NOT QT_UIC_EXECUTABLE) FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic ) - endif (not QT_UIC_EXECUTABLE) + endif (NOT QT_UIC_EXECUTABLE) if (QT_UIC_EXECUTABLE) set ( QT_WRAP_UI "YES") @@ -697,14 +697,14 @@ if(QT4_QMAKE_FOUND) # if the includes,libraries,moc,uic and rcc are found then we have it if( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) set( QT4_FOUND "YES" ) - if( not Qt4_FIND_QUIETLY) + if( NOT Qt4_FIND_QUIETLY) message(STATUS "Found Qt-Version ${QTVERSION}") # message(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") - endif( not Qt4_FIND_QUIETLY) + endif( NOT Qt4_FIND_QUIETLY) else( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) set( QT4_FOUND "NO") if( Qt4_FIND_REQUIRED) - message( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc not found!") + message( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") endif( Qt4_FIND_REQUIRED) endif( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) set(QT_FOUND ${QT4_FOUND}) @@ -739,7 +739,7 @@ else(QT4_QMAKE_FOUND) message("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") endif(QT_QMAKE_EXECUTABLE) if( Qt4_FIND_REQUIRED) - message( FATAL_ERROR "Qt qmake not found!") + message( FATAL_ERROR "Qt qmake NOT found!") endif( Qt4_FIND_REQUIRED) endif(QT4_QMAKE_FOUND) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 463fcc25..49934fd3 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -3,8 +3,8 @@ # This module defines # TIFF_INCLUDE_DIR, where to find tiff.h, etc. # TIFF_LIBRARIES, libraries to link against to use TIFF. -# TIFF_FOUND, If false, do not try to use TIFF. -# also defined, but not for general use are +# TIFF_FOUND, If false, do NOT try to use TIFF. +# also defined, but NOT for general use are # TIFF_LIBRARY, where to find the TIFF library. FIND_PATH(TIFF_INCLUDE_DIR tiff.h diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index f0e61210..19c85804 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -75,7 +75,7 @@ if (UNIX) # See if XOpenDisplay in X11 works by itself. CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) - if(not X11_LIB_X11_SOLO) + if(NOT X11_LIB_X11_SOLO) # Find library needed for dnet_ntoa. CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) if (X11_LIB_DNET_HAS_DNET_NTOA) @@ -86,11 +86,11 @@ if (UNIX) set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) endif (X11_LIB_DNET_STUB_HAS_DNET_NTOA) endif (X11_LIB_DNET_HAS_DNET_NTOA) - endif(not X11_LIB_X11_SOLO) + endif(NOT X11_LIB_X11_SOLO) # Find library needed for gethostbyname. CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) - if(not CMAKE_HAVE_GETHOSTBYNAME) + if(NOT CMAKE_HAVE_GETHOSTBYNAME) CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) @@ -100,34 +100,34 @@ if (UNIX) set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) endif (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) endif (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - endif(not CMAKE_HAVE_GETHOSTBYNAME) + endif(NOT CMAKE_HAVE_GETHOSTBYNAME) # Find library needed for connect. CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT) - if(not CMAKE_HAVE_CONNECT) + if(NOT CMAKE_HAVE_CONNECT) CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) if (CMAKE_LIB_SOCKET_HAS_CONNECT) set (X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) endif (CMAKE_LIB_SOCKET_HAS_CONNECT) - endif(not CMAKE_HAVE_CONNECT) + endif(NOT CMAKE_HAVE_CONNECT) # Find library needed for remove. CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE) - if(not CMAKE_HAVE_REMOVE) + if(NOT CMAKE_HAVE_REMOVE) CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) if (CMAKE_LIB_POSIX_HAS_REMOVE) set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) endif (CMAKE_LIB_POSIX_HAS_REMOVE) - endif(not CMAKE_HAVE_REMOVE) + endif(NOT CMAKE_HAVE_REMOVE) # Find library needed for shmat. CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT) - if(not CMAKE_HAVE_SHMAT) + if(NOT CMAKE_HAVE_SHMAT) CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) if (CMAKE_LIB_IPS_HAS_SHMAT) set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) endif (CMAKE_LIB_IPS_HAS_SHMAT) - endif(not CMAKE_HAVE_SHMAT) + endif(NOT CMAKE_HAVE_SHMAT) endif($ENV{ISC} MATCHES "^yes$") CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index 7411ed00..c7da385a 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -51,7 +51,7 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) set(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - if (not HAVE_${_basename}_KIDL_RULE) + if (NOT HAVE_${_basename}_KIDL_RULE) set(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} @@ -59,9 +59,9 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} DEPENDS ${_tmp_FILE} ) - endif (not HAVE_${_basename}_KIDL_RULE) + endif (NOT HAVE_${_basename}_KIDL_RULE) - if (not HAVE_${_basename}_SKEL_RULE) + if (NOT HAVE_${_basename}_SKEL_RULE) set(HAVE_${_basename}_SKEL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} @@ -70,7 +70,7 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) DEPENDS ${_kidl} ) - endif (not HAVE_${_basename}_SKEL_RULE) + endif (NOT HAVE_${_basename}_SKEL_RULE) set(${_sources} ${${_sources}} ${_skel}) @@ -88,7 +88,7 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) set(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - if (not HAVE_${_basename}_KIDL_RULE) + if (NOT HAVE_${_basename}_KIDL_RULE) set(HAVE_${_basename}_KIDL_RULE ON) @@ -98,10 +98,10 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) DEPENDS ${tmp_FILE} ) - endif (not HAVE_${_basename}_KIDL_RULE) + endif (NOT HAVE_${_basename}_KIDL_RULE) - if (not HAVE_${_basename}_STUB_RULE) + if (NOT HAVE_${_basename}_STUB_RULE) set(HAVE_${_basename}_STUB_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} @@ -110,7 +110,7 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) DEPENDS ${_kidl} ) - endif (not HAVE_${_basename}_STUB_RULE) + endif (NOT HAVE_${_basename}_STUB_RULE) set(${_sources} ${${_sources}} ${_stub_CPP}) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index fbf58ba1..35d915f3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -28,7 +28,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) set(_skel_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.h) set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - if (not HAVE_${_basename}_KIDL_RULE) + if (NOT HAVE_${_basename}_KIDL_RULE) set(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} @@ -36,9 +36,9 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ) - endif (not HAVE_${_basename}_KIDL_RULE) + endif (NOT HAVE_${_basename}_KIDL_RULE) - if (not HAVE_${_basename}_SKEL_RULE) + if (NOT HAVE_${_basename}_SKEL_RULE) set(HAVE_${_basename}_SKEL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} @@ -48,7 +48,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) MACRO_ADDITIONAL_CLEAN_FILES( ${_skel_H}) - endif (not HAVE_${_basename}_SKEL_RULE) + endif (NOT HAVE_${_basename}_SKEL_RULE) set(${_sources} ${${_sources}} ${_skel}) @@ -68,7 +68,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) set(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - if (not HAVE_${_basename}_KIDL_RULE) + if (NOT HAVE_${_basename}_KIDL_RULE) set(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} @@ -76,9 +76,9 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ) - endif (not HAVE_${_basename}_KIDL_RULE) + endif (NOT HAVE_${_basename}_KIDL_RULE) - if (not HAVE_${_basename}_STUB_RULE) + if (NOT HAVE_${_basename}_STUB_RULE) set(HAVE_${_basename}_STUB_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} @@ -88,7 +88,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) MACRO_ADDITIONAL_CLEAN_FILES( ${_stub_H}) - endif (not HAVE_${_basename}_STUB_RULE) + endif (NOT HAVE_${_basename}_STUB_RULE) set(${_sources} ${${_sources}} ${_stub_CPP}) @@ -238,6 +238,7 @@ MACRO(KDE4_AUTOMOC) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") if(_match) +message("For ${_tmp_FILE} (${_current_FILE}) : found moc include") foreach (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") @@ -272,7 +273,7 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") # if the string doesn't match the pattern, the result is the full string, so all three have the same content - if( not ${_size} STREQUAL ${_name} ) + if( NOT ${_size} STREQUAL ${_name} ) set(_icon_GROUP "actions") if(${_group} STREQUAL "mime") @@ -299,7 +300,7 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - endif( not ${_size} STREQUAL ${_name} ) + endif( NOT ${_size} STREQUAL ${_name} ) endforeach (_current_ICON) FILE(GLOB _icons *.svgz) foreach(_current_ICON ${_icons} ) @@ -416,7 +417,7 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif(_first_SRC) # if (UNIX) - # I guess under windows the libtool file are not required + # I guess under windows the libtool file are NOT required #KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) # endif (UNIX) diff --git a/modules/README b/modules/README index e13ffafd..14fab742 100644 --- a/modules/README +++ b/modules/README @@ -1,6 +1,6 @@ these are additional cmake modules required for compiling KDE3 or KDE4 applications with cmake. Some of them are enhanced versions of the files -coming with cmake, some of them are not yet part of cmake. +coming with cmake, some of them are NOT yet part of cmake. To use them, copy them into the cmake Module directory or run "cmake ." followed by "make install" diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index 2deba4d7..aafe7942 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -3,7 +3,7 @@ # PKGCONFIG(package includedir libdir linkflags cflags) # - Calling PKGCONFIG will fill the desired information into the 4 given arguments, # e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS) -# if pkg-config was not found or the specified software package doesn't exist, the +# if pkg-config was NOT found or the specified software package doesn't exist, the # variable will be empty when the function returns, otherwise they will contain the respective information FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) @@ -21,7 +21,7 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) # and if the package of interest also exists for pkg-config, then get the information - if(not _return_VALUE) + if(NOT _return_VALUE) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) @@ -31,7 +31,7 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) - endif(not _return_VALUE) + endif(NOT _return_VALUE) endif(PKGCONFIG_EXECUTABLE) -- cgit v1.2.1 From 43ff2c4d0173b80f72b09798fd84293479477e3b Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 15 Feb 2006 10:51:07 +0000 Subject: not my day svn path=/trunk/KDE/kdelibs/; revision=509626 --- modules/KDE4Macros.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 35d915f3..1a2da1f4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -238,7 +238,6 @@ MACRO(KDE4_AUTOMOC) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") if(_match) -message("For ${_tmp_FILE} (${_current_FILE}) : found moc include") foreach (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") @@ -417,7 +416,7 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif(_first_SRC) # if (UNIX) - # I guess under windows the libtool file are NOT required + # I guess under windows the libtool file are not required #KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) # endif (UNIX) -- cgit v1.2.1 From 491fa62d29b93219cfefcf4891a31095a9b9087b Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 15 Feb 2006 11:18:51 +0000 Subject: When creating a moc file for foo/bar.h, create it as foo/bar.moc This solves a problem in kabc which has addressbook.h and kab/addressbook.h, and looks more logical in e.g. kio with all its subdirs. svn path=/trunk/KDE/kdelibs/; revision=509637 --- modules/KDE4Macros.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1a2da1f4..f11644dd 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -242,9 +242,11 @@ MACRO(KDE4_AUTOMOC) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) -# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) set(_header ${_abs_PATH}/${_basename}.h) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + # Determine relative path to the header, so that foo/bar.h becomes foo/bar.moc + file(RELATIVE_PATH _relative_path ${CMAKE_CURRENT_SOURCE_DIR} ${_abs_PATH}) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_relative_path}/${_current_MOC}) + # ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} -- cgit v1.2.1 From 53829e9233c98e57d7f8bbe8a08a941068b2f323 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 15 Feb 2006 11:46:32 +0000 Subject: Reverting - generating moc files in subdirs worked, but this broke compilation because the subdir (in the builddir) is missing from the -I. How could we add it? (E.g. kdelibs/kio/kfile/kopenwith.cpp is compiled from kdelibs/kio, so the relative path to the header is kfile/kopenwith.h, and this created a kfile/kopenwith.moc, but it's included as "kopenwith.moc" from kopenwith.h so we need -Ikfile in the compilation line. This is necessary for the kabc/addressbook.h vs kabc/kab/addressbook.h case) CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=509646 --- modules/KDE4Macros.cmake | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f11644dd..1a2da1f4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -242,11 +242,9 @@ MACRO(KDE4_AUTOMOC) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) +# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) set(_header ${_abs_PATH}/${_basename}.h) - # Determine relative path to the header, so that foo/bar.h becomes foo/bar.moc - file(RELATIVE_PATH _relative_path ${CMAKE_CURRENT_SOURCE_DIR} ${_abs_PATH}) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_relative_path}/${_current_MOC}) - # + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} -- cgit v1.2.1 From d63bfccdcee965b20bb74442919432399127ee93 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 15 Feb 2006 14:38:29 +0000 Subject: add two defines for msvc2005 svn path=/trunk/KDE/kdelibs/; revision=509677 --- modules/FindKDE4.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 9d808f76..632bdd21 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -206,6 +206,9 @@ if (WIN32) # windows, microsoft compiler if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + IF(CMAKE_COMPILER_2005) + ADD_DEFINITIONS( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) + ENDIF(CMAKE_COMPILER_2005) endif(MSVC) endif (WIN32) -- cgit v1.2.1 From 195fe53dcd4a7121f6932ec7262495a3ca07f59c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Wed, 15 Feb 2006 15:47:05 +0000 Subject: on windows the plugins also need the MAKE_X_LIB macro CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=509782 --- modules/KDE4Macros.cmake | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1a2da1f4..3a88d033 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -416,10 +416,17 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif(_first_SRC) # if (UNIX) - # I guess under windows the libtool file are not required - #KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) +# I guess under windows the libtool file are not required +# KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) # endif (UNIX) + IF (WIN32) + # for shared libraries/plugins a -DMAKE_target_LIB is required + string(TOUPPER ${_target_NAME} _symbol) + set(_symbol "MAKE_${_symbol}_LIB") + set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) + ENDIF (WIN32) + ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -- cgit v1.2.1 From dd6f99e06906fa58d4767c20d94747ac8ecc2032 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 15 Feb 2006 16:35:43 +0000 Subject: set LD_LIBRARY_PATH to make sure we use the just compiled libraries, not the installed ones. svn path=/trunk/KDE/kdelibs/; revision=509806 --- modules/FindKDE4.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 632bdd21..9cc6b397 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -95,14 +95,15 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) else (WIN32) set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH}) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) -- cgit v1.2.1 From 001e9abc40788b7fb5b7639c972a9b7eab449324 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 15 Feb 2006 20:36:22 +0000 Subject: find libraries in previously detected gnuwin32 package location svn path=/trunk/KDE/kdelibs/; revision=509911 --- modules/FindGIF.cmake | 2 ++ modules/FindJPEG.cmake | 36 ++++++++++++++++++++++++++++++++++++ modules/FindLibXslt.cmake | 2 ++ modules/FindOpenSSL.cmake | 2 ++ modules/FindZLIB.cmake | 29 +++++++++++++++++++++++++++++ 5 files changed, 71 insertions(+) create mode 100644 modules/FindJPEG.cmake create mode 100644 modules/FindZLIB.cmake (limited to 'modules') diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index 17097160..d26c942b 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -11,12 +11,14 @@ FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/include /usr/local/include + ${GNUWIN32_DIR}/include ) FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib PATHS /usr/lib /usr/local/lib + ${GNUWIN32_DIR}/lib ) if(GIF_INCLUDE_DIR AND GIF_LIBRARIES) diff --git a/modules/FindJPEG.cmake b/modules/FindJPEG.cmake new file mode 100644 index 00000000..ba3d4f0b --- /dev/null +++ b/modules/FindJPEG.cmake @@ -0,0 +1,36 @@ +# - Find JPEG +# Find the native JPEG includes and library +# This module defines +# JPEG_INCLUDE_DIR, where to find jpeglib.h, etc. +# JPEG_LIBRARIES, the libraries needed to use JPEG. +# JPEG_FOUND, If false, do not try to use JPEG. +# also defined, but not for general use are +# JPEG_LIBRARY, where to find the JPEG library. + +FIND_PATH(JPEG_INCLUDE_DIR jpeglib.h +/usr/local/include +/usr/include +${GNUWIN32_DIR}/include +) + +SET(JPEG_NAMES ${JPEG_NAMES} jpeg) +FIND_LIBRARY(JPEG_LIBRARY + NAMES ${JPEG_NAMES} + PATHS /usr/lib /usr/local/lib ${GNUWIN32_DIR}/lib + ) + +IF (JPEG_LIBRARY) + IF (JPEG_INCLUDE_DIR) + SET(JPEG_LIBRARIES ${JPEG_LIBRARY}) + SET(JPEG_FOUND "YES") + ENDIF (JPEG_INCLUDE_DIR) +ENDIF (JPEG_LIBRARY) + +# Deprecated declarations. +SET (NATIVE_JPEG_INCLUDE_PATH ${JPEG_INCLUDE_DIR} ) +GET_FILENAME_COMPONENT (NATIVE_JPEG_LIB_PATH ${JPEG_LIBRARY} PATH) + +MARK_AS_ADVANCED( + JPEG_LIBRARY + JPEG_INCLUDE_DIR + ) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 44d24605..67f3ea24 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -20,6 +20,7 @@ FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h ${_LibXsltIncDir} /usr/include /usr/local/include + ${GNUWIN32_DIR}/include ) FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt @@ -27,6 +28,7 @@ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt ${_LibXsltLinkDir} /usr/lib /usr/local/lib + ${GNUWIN32_DIR}/lib ) if(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 7b9f7d55..9192924a 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -8,12 +8,14 @@ FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/include/ /usr/local/include/ + ${GNUWIN32_DIR}/include ) FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 PATHS /usr/lib /usr/local/lib + ${GNUWIN32_DIR}/lib ) if(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake new file mode 100644 index 00000000..7fb8f25f --- /dev/null +++ b/modules/FindZLIB.cmake @@ -0,0 +1,29 @@ + +FIND_PATH(ZLIB_INCLUDE_DIR zlib.h +/usr/include +/usr/local/include +${GNUWIN32_DIR}/include +) + +FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib +PATHS +/usr/lib +/usr/local/lib +${GNUWIN32_DIR}/lib +) + + +IF(ZLIB_INCLUDE_DIR) + SET(ZLIB_FOUND TRUE) +ENDIF(ZLIB_INCLUDE_DIR) + + +IF(ZLIB_FOUND) + IF(NOT ZLIB_FIND_QUIETLY) + MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}") + ENDIF(NOT ZLIB_FIND_QUIETLY) +ELSE(ZLIB_FOUND) + IF(ZLIB_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find z library") + ENDIF(ZLIB_FIND_REQUIRED) +ENDIF(ZLIB_FOUND) -- cgit v1.2.1 From 088cfc6d44e9297e37ffdd5817aa2f62b4afbafb Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 16 Feb 2006 09:01:40 +0000 Subject: using GNUWIN32_DIR requires detecting of gnuwin32 package dir before svn path=/trunk/KDE/kdelibs/; revision=510062 --- modules/FindBZip2.cmake | 4 +++- modules/FindGIF.cmake | 1 + modules/FindJPEG.cmake | 4 ++++ modules/FindLibXslt.cmake | 2 ++ modules/FindOpenSSL.cmake | 1 + modules/FindZLIB.cmake | 1 + 6 files changed, 12 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 0dd14f3c..4a6fae71 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -7,17 +7,19 @@ # BZIP2_DEFINITIONS - Compiler switches required for using BZip2 # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ # - +FIND_PACKAGE(GNUWIN32) FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h /usr/include /usr/local/include + ${GNUWIN32_DIR}/include ) FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 PATHS /usr/lib /usr/local/lib + ${GNUWIN32_DIR}/lib ) if(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index d26c942b..b7bb1b8b 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -6,6 +6,7 @@ # GIF_LIBRARIES - Libraries needed to use GIF # GIF_DEFINITIONS - Compiler switches required for using GIF # +FIND_PACKAGE(GNUWIN32) FIND_PATH(GIF_INCLUDE_DIR gif_lib.h diff --git a/modules/FindJPEG.cmake b/modules/FindJPEG.cmake index ba3d4f0b..63111377 100644 --- a/modules/FindJPEG.cmake +++ b/modules/FindJPEG.cmake @@ -7,6 +7,10 @@ # also defined, but not for general use are # JPEG_LIBRARY, where to find the JPEG library. +# under windows, try to find the base gnuwin32 directory, do nothing under UNIX +FIND_PACKAGE(GNUWIN32) + + FIND_PATH(JPEG_INCLUDE_DIR jpeglib.h /usr/local/include /usr/include diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 67f3ea24..4abb6f9f 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -16,6 +16,8 @@ PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflag set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) +FIND_PACKAGE(GNUWIN32) + FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h ${_LibXsltIncDir} /usr/include diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 9192924a..952d4c20 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -4,6 +4,7 @@ # OPENSSL_FOUND - system has the OpenSSL library # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL +FIND_PACKAGE(GNUWIN32) FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/include/ diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index 7fb8f25f..e114d450 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,3 +1,4 @@ +FIND_PACKAGE(GNUWIN32) FIND_PATH(ZLIB_INCLUDE_DIR zlib.h /usr/include -- cgit v1.2.1 From ea2ead5dd6634cdc05757af0730216b3d7e03232 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 16 Feb 2006 21:50:11 +0000 Subject: -replace -fexceptions with ${KDE4_ENABLE_EXCEPTIONS} (I'm not sure this is a good name for the variable) -add install rules for the cmake files in kdelibs/cmake/modules/ -remove debug output and fix typo in FindOpenEXR.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=510319 --- modules/CMakeLists.txt | 10 +++------- modules/FindKDE4.cmake | 43 ++++++++++++++++++++++++++----------------- modules/FindOpenEXR.cmake | 20 ++++++++------------ modules/FindQt4.cmake | 26 +++++++++++++------------- 4 files changed, 50 insertions(+), 49 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 8ccb8c3b..892940d5 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,10 +1,6 @@ -set(CMAKE_INSTALL_PREFIX ${CMAKE_ROOT} ) +# install the cmake files -FILE(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") +file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") -INSTALL_FILES(/Modules FILES -kde3init_dummy.cpp.in -kde4init_dummy.cpp.in -${cmakeFiles} -) +install_files(/share/apps/cmake/modules FILES kde3init_dummy.cpp.in kde4init_dummy.cpp.in ${cmakeFiles} ) diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 9cc6b397..1b8afbe6 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -55,7 +55,7 @@ set(KDE4_SERVICETYPES_DIR /share/servicetypes) set(KDE4_SOUND_DIR /share/sounds) set(KDE4_TEMPLATES_DIR /share/templates) set(KDE4_WALLPAPER_DIR /share/wallpapers) -set(KDE4_KCONF_UPDATE_DIR /share/apps/kconf_update/ ) +set(KDE4_KCONF_UPDATE_DIR /share/apps/kconf_update/ ) set(XDG_APPS_DIR /share/applications/kde) set(XDG_DIRECTORY_DIR /share/desktop-directories) @@ -188,8 +188,6 @@ endif(UNIX AND NOT APPLE) if (WIN32) - - if(CYGWIN) message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") endif(CYGWIN) @@ -216,23 +214,23 @@ endif (WIN32) # only on linux, but NOT e.g. on FreeBSD: -if(CMAKE_SYSTEM_NAME MATCHES Linux) - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") -endif(CMAKE_SYSTEM_NAME MATCHES Linux) +if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") +endif (CMAKE_SYSTEM_NAME MATCHES Linux) # works on FreeBSD, NOT tested on NetBSD and OpenBSD -if(CMAKE_SYSTEM_NAME MATCHES BSD) - set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -endif(CMAKE_SYSTEM_NAME MATCHES BSD) +if (CMAKE_SYSTEM_NAME MATCHES BSD) + set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) + set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") +endif (CMAKE_SYSTEM_NAME MATCHES BSD) # This will need to be modified later to support either Qt/X11 or Qt/Mac builds @@ -258,6 +256,17 @@ if(APPLE) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") endif(APPLE) + +# compiler specific stuff, maybe this should be done differently, Alex + +if (MSVC) + set (KDE4_ENABLE_EXCEPTIONS -EHsc) +endif(MSVC) + +if (CMAKE_COMPILER_IS_GNUCXX) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) +endif (CMAKE_COMPILER_IS_GNUCXX) + ########### end of platform specific stuff ########################## diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 5539fa59..91ca3621 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -8,14 +8,12 @@ PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflag #PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h -${_OpenEXRIncDir} -${_OpenEXRIncDir}/OpenEXR/ -/usr/include -/usr/local/include + ${_OpenEXRIncDir} + ${_OpenEXRIncDir}/OpenEXR/ + /usr/include + /usr/local/include ) -message(STATUS "OPENEXR_INCLUDE_DIR :${OPENEXR_INCLUDE_DIR}") - FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half PATHS ${_OPENEXRLinkDir} @@ -46,14 +44,12 @@ FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf /usr/local/lib ) -message(STATUS "OPENEXR_IMATH_LIBRARIES: ${OPENEXR_IMATH_LIBRARY}, OPENEXR_ILMIMF_LIBRARY: ${OPENEXR_ILMIMF_LIBRARY}, OPENEXR_IEX_LIBRARY: ${OPENEXR_IEX_LIBRARY}, OPENEXR_HALF_LIBRARY: ${OPENEXR_HALF_LIBRARY}") +set( OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) -set( OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} - ${OPENEXR_IMATH__LIBRARY}...) -if(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - set(OPENEXR_FOUND TRUE) +if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + set( OPENEXR_FOUND TRUE) set( OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) -endif(OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) +endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 4259b648..fb9dbf35 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -637,16 +637,16 @@ if(QT4_QMAKE_FOUND) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) - foreach(it ${ARGN}) + FOREACH(it ${ARGN}) GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - set(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${it} MAIN_DEPENDENCY ${it}) - set(${outfiles} ${${outfiles}} ${outfile}) + SET(${outfiles} ${${outfiles}} ${outfile}) endforeach(it) ENDMACRO(QT4_WRAP_CPP) @@ -656,16 +656,16 @@ if(QT4_QMAKE_FOUND) MACRO(QT4_WRAP_UI outfiles ) - foreach(it ${ARGN}) + FOREACH(it ${ARGN}) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - set(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) - set(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_UIC_EXECUTABLE} ARGS -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile}) - set(${outfiles} ${${outfiles}} ${outfile}) - endforeach(it) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) ENDMACRO(QT4_WRAP_UI) @@ -674,16 +674,16 @@ if(QT4_QMAKE_FOUND) MACRO(QT4_ADD_RESOURCES outfiles ) - foreach(it ${ARGN}) + FOREACH(it ${ARGN}) GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - set(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) - set(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_RCC_EXECUTABLE} ARGS -name ${outfilename} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile} ) - set(${outfiles} ${${outfiles}} ${outfile}) - endforeach(it) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) ENDMACRO(QT4_ADD_RESOURCES) -- cgit v1.2.1 From e0f9d000f61a36aac107ff17a4e3838aa82ed770 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 17 Feb 2006 09:15:41 +0000 Subject: For the future (in kdebase don't duplicate search directory) svn path=/trunk/KDE/kdelibs/; revision=510422 --- modules/FindX11.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 19c85804..2e1095ac 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -27,6 +27,7 @@ if (UNIX) FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xaccess_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) @@ -50,6 +51,10 @@ if (UNIX) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) endif(X11_Xext_LIB) + if(X11_Xaccess_INCLUDE_PATH) + set(X11_Xaccess_FOUND TRUE) + endif(X11_Xaccess_INCLUDE_PATH) + # Deprecated variable for backwards compatibility with CMake 1.4 if(X11_X11_INCLUDE_PATH) if(X11_LIBRARIES) -- cgit v1.2.1 From f4dc9185d276557ffec05c6287aa2b9383f558c2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 17 Feb 2006 17:23:48 +0000 Subject: -give kdelibs a project name ("kdelibs") -remove the unused "install_icon" targets -mark more variables as "ADVANCED" Alex svn path=/trunk/KDE/kdelibs/; revision=510649 --- modules/FindOpenEXR.cmake | 8 +++++++- modules/FindTIFF.cmake | 23 +++++++++++++++++------ modules/KDE4Macros.cmake | 43 +++++++++++++++++++++---------------------- 3 files changed, 45 insertions(+), 29 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 91ca3621..80a1445f 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -63,6 +63,12 @@ else (OPENEXR_FOUND) endif (OpenEXR_FIND_REQUIRED) endif (OPENEXR_FOUND) -MARK_AS_ADVANCED(OPENEXR_INCLUDE_DIR OPENEXR_LIBRARIES) +MARK_AS_ADVANCED( + OPENEXR_INCLUDE_DIR + OPENEXR_LIBRARIES + OPENEXR_ILMIMF_LIBRARY + OPENEXR_IMATH_LIBRARY + OPENEXR_IEX_LIBRARY + OPENEXR_HALF_LIBRARY ) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 49934fd3..28286f94 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -18,10 +18,21 @@ FIND_LIBRARY(TIFF_LIBRARY PATHS /usr/lib /usr/local/lib ) -if(TIFF_INCLUDE_DIR) - if(TIFF_LIBRARY) - set( TIFF_FOUND "YES" ) - set( TIFF_LIBRARIES ${TIFF_LIBRARY} ) - endif(TIFF_LIBRARY) -endif(TIFF_INCLUDE_DIR) +if(TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + set(TIFF_FOUND "YES") + set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) +endif(TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + + +if (TIFF_FOUND) + if (NOT TIFF_FIND_QUIETLY) + message(STATUS "Found TIFF: ${TIFF_LIBRARY}") + endif (NOT TIFF_FIND_QUIETLY) +else (TIFF_FOUND) + if (TIFF_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find TIFF") + endif (TIFF_FIND_REQUIRED) +endif (TIFF_FOUND) + +MARK_AS_ADVANCED( TIFF_INCLUDE_DIR TIFF_LIBRARY ) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 3a88d033..6b485cba 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -262,7 +262,6 @@ ENDMACRO(KDE4_AUTOMOC) MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) - ADD_CUSTOM_TARGET(install_icons ) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") @@ -272,34 +271,34 @@ MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") # if the string doesn't match the pattern, the result is the full string, so all three have the same content - if( NOT ${_size} STREQUAL ${_name} ) - set(_icon_GROUP "actions") + if( NOT ${_size} STREQUAL ${_name} ) + set(_icon_GROUP "actions") - if(${_group} STREQUAL "mime") - set(_icon_GROUP "mimetypes") - endif(${_group} STREQUAL "mime") + if(${_group} STREQUAL "mime") + set(_icon_GROUP "mimetypes") + endif(${_group} STREQUAL "mime") - if(${_group} STREQUAL "filesys") - set(_icon_GROUP "filesystems") - endif(${_group} STREQUAL "filesys") + if(${_group} STREQUAL "filesys") + set(_icon_GROUP "filesystems") + endif(${_group} STREQUAL "filesys") - if(${_group} STREQUAL "device") - set(_icon_GROUP "devices") - endif(${_group} STREQUAL "device") + if(${_group} STREQUAL "device") + set(_icon_GROUP "devices") + endif(${_group} STREQUAL "device") - if(${_group} STREQUAL "app") - set(_icon_GROUP "apps") - endif(${_group} STREQUAL "app") + if(${_group} STREQUAL "app") + set(_icon_GROUP "apps") + endif(${_group} STREQUAL "app") - if(${_group} STREQUAL "action") - set(_icon_GROUP "actions") - endif(${_group} STREQUAL "action") + if(${_group} STREQUAL "action") + set(_icon_GROUP "actions") + endif(${_group} STREQUAL "action") # message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - endif( NOT ${_size} STREQUAL ${_name} ) + set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + endif( NOT ${_size} STREQUAL ${_name} ) endforeach (_current_ICON) FILE(GLOB _icons *.svgz) foreach(_current_ICON ${_icons} ) -- cgit v1.2.1 From 590106d0c8ee50cec2b570e1c10e49275f081f16 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 17 Feb 2006 18:53:29 +0000 Subject: after discussion with David: -renamed KDE4_ICON_DIR to ICON_INSTALL_DIR -changed KDE4_INSTALL_ICONS(theme dir) to KDE4_INSTALL_ICONS( dir theme) and dir now has to contain the "/icons" subdir, it is NOT appended anymore in the KDE4_INSTALL_ICONS() macro CCMAIL: montel@kde.org Alex svn path=/trunk/KDE/kdelibs/; revision=510673 The following changes were in SVN, but were removed from git: M pics/crystalsvg/CMakeLists.txt M pics/hicolor/CMakeLists.txt --- modules/FindKDE4.cmake | 2 +- modules/KDE4Macros.cmake | 108 +++++++++++++++++++++-------------------------- 2 files changed, 50 insertions(+), 60 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 1b8afbe6..71f35d94 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -45,7 +45,6 @@ set(KDE4_APPS_DIR /share/applnk) set(KDE4_CONFIG_DIR /share/config) set(KDE4_DATA_DIR /share/apps) set(KDE4_HTML_DIR /share/doc/HTML) -set(KDE4_ICON_DIR /share/icons) set(KDE4_KCFG_DIR /share/config.kcfg) set(KDE4_LIBS_HTML_DIR /share/doc/HTML) set(KDE4_LOCALE_DIR /share/locale) @@ -62,6 +61,7 @@ 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(ICON_INSTALL_DIR "/share/icons" CACHE STRING "The icon install dir (default prefix/share/icons/)") 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)") diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6b485cba..613cc359 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -261,80 +261,69 @@ MACRO(KDE4_AUTOMOC) ENDMACRO(KDE4_AUTOMOC) -MACRO(KDE4_INSTALL_ICONS _theme _defaultpath ) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") +# only used internally by KDE4_INSTALL_ICONS +MACRO( _KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) - FILE(GLOB _icons *.png) - foreach(_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") - # if the string doesn't match the pattern, the result is the full string, so all three have the same content - if( NOT ${_size} STREQUAL ${_name} ) - set(_icon_GROUP "actions") + # if the string doesn't match the pattern, the result is the full string, so all three have the same content + IF( NOT ${_group} STREQUAL ${_install_NAME} ) + SET(_icon_GROUP "actions") - if(${_group} STREQUAL "mime") - set(_icon_GROUP "mimetypes") - endif(${_group} STREQUAL "mime") + IF(${_group} STREQUAL "mime") + SET(_icon_GROUP "mimetypes") + ENDIF(${_group} STREQUAL "mime") - if(${_group} STREQUAL "filesys") - set(_icon_GROUP "filesystems") - endif(${_group} STREQUAL "filesys") + IF(${_group} STREQUAL "filesys") + SET(_icon_GROUP "filesystems") + ENDIF(${_group} STREQUAL "filesys") - if(${_group} STREQUAL "device") - set(_icon_GROUP "devices") - endif(${_group} STREQUAL "device") + IF(${_group} STREQUAL "device") + SET(_icon_GROUP "devices") + ENDIF(${_group} STREQUAL "device") - if(${_group} STREQUAL "app") - set(_icon_GROUP "apps") - endif(${_group} STREQUAL "app") + IF(${_group} STREQUAL "app") + SET(_icon_GROUP "apps") + ENDIF(${_group} STREQUAL "app") - if(${_group} STREQUAL "action") - set(_icon_GROUP "actions") - endif(${_group} STREQUAL "action") + IF(${_group} STREQUAL "action") + SET(_icon_GROUP "actions") + ENDIF(${_group} STREQUAL "action") # message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - endif( NOT ${_size} STREQUAL ${_name} ) - endforeach (_current_ICON) - FILE(GLOB _icons *.svgz) - foreach(_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") - - set(_icon_GROUP "actions") - - if(${_group} STREQUAL "mime") - set(_icon_GROUP "mimetypes") - endif(${_group} STREQUAL "mime") + SET(_ICON_INSTALL_NAME ${_install_PATH}/${_icon_GROUP}/${_install_NAME}) + FILE(APPEND ${_install_SCRIPT} "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") + FILE(APPEND ${_install_SCRIPT} "CONFIGURE_FILE( ${_orig_NAME} ${_ICON_INSTALL_NAME} COPYONLY) \n") + ENDIF ( NOT ${_group} STREQUAL ${_install_NAME} ) - if(${_group} STREQUAL "filesys") - set(_icon_GROUP "filesystems") - endif(${_group} STREQUAL "filesys") +ENDMACRO( _KDE4_ADD_ICON_INSTALL_RULE ) - if(${_group} STREQUAL "device") - set(_icon_GROUP "devices") - endif(${_group} STREQUAL "device") - if(${_group} STREQUAL "app") - set(_icon_GROUP "apps") - endif(${_group} STREQUAL "app") - - if(${_group} STREQUAL "action") - set(_icon_GROUP "actions") - endif(${_group} STREQUAL "action") +MACRO(KDE4_INSTALL_ICONS _defaultpath _theme ) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") - set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/icons/${_theme}/scalable/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + # first the png icons + FILE(GLOB _icons *.png) + FOREACH(_current_ICON ${_icons} ) + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/${_theme}/${_size}x${_size} + ${_group} ${_current_ICON} ${_name}) + ENDFOREACH (_current_ICON) - endforeach (_current_ICON) + # and now the svg icons + FILE(GLOB _icons *.svgz) + FOREACH (_current_ICON ${_icons} ) + STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/${_theme}/scalable + ${_group} ${_current_ICON} ${_name}) + ENDFOREACH (_current_ICON) INSTALL(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) -ENDMACRO(KDE4_INSTALL_ICONS _theme _defaultpath) +ENDMACRO(KDE4_INSTALL_ICONS) # for the case that something should be added to every CMakeLists.txt at the top @@ -395,6 +384,7 @@ OPTION(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") OPTION(KDE4_BUILD_TESTS "Build the tests") OPTION(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") + MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty if (${_with_PREFIX} STREQUAL "WITH_PREFIX") -- cgit v1.2.1 From 877e4bdedab9045e55cd182a9442c348ac8769ee Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Feb 2006 09:20:03 +0000 Subject: -apply patch from Andreas Beckermann -rename KDE3_CREATE_LIBTOOL_FILE to KDE3_INSTALL_LIBTOOL_FILE -require cmake 2.3.3: http://www.cmake.org/files/v2.3/cmake-2.3.3-20060210.tar.gz -use GET_FILENAME_COMPONENT(...ABSOLUTE ) -the Macro*.cmake files are now required too Alex If you use these files, please test that they work for you. CCMAIL: b_mann@gmx.de CCMAIL: christian.loose@hamburg.de svn path=/trunk/KDE/kdelibs/; revision=510821 --- modules/FindKDE3.cmake | 19 ++++++--- modules/KDE3Macros.cmake | 106 ++++++++++++++++++++--------------------------- 2 files changed, 60 insertions(+), 65 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index 828ca056..d6945cdb 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -18,14 +18,14 @@ # KDE3_ADD_KCFG_FILES # KDE3_AUTOMOC # KDE3_PLACEHOLDER -# KDE3_CREATE_LIBTOOL_FILE +# KDE3_INSTALL_LIBTOOL_FILE # KDE3_CREATE_FINAL_FILE # KDE3_ADD_KPART # KDE3_ADD_KLM # KDE3_ADD_EXECUTABLE -CMAKE_MINIMUM_REQUIRED(VERSION 2.2) +CMAKE_MINIMUM_REQUIRED(VERSION "2.3.3") set(QT_MT_REQUIRED TRUE) #set(QT_MIN_VERSION "3.0.0") @@ -40,13 +40,21 @@ FIND_PACKAGE(X11 REQUIRED) set(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) #add some KDE specific stuff -set(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common) +set(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -D_GNU_SOURCE) #only on linux, but NOT e.g. on FreeBSD: if(CMAKE_SYSTEM_NAME MATCHES "Linux") - set(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set (KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE) + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") endif(CMAKE_SYSTEM_NAME MATCHES "Linux") +# works on FreeBSD, NOT tested on NetBSD and OpenBSD +if (CMAKE_SYSTEM_NAME MATCHES BSD) + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") +endif (CMAKE_SYSTEM_NAME MATCHES BSD) + #set(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") #set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") @@ -55,7 +63,8 @@ endif(CMAKE_SYSTEM_NAME MATCHES "Linux") #now try to find some kde stuff #at first the KDE include direcory -FIND_PATH(KDE3_INCLUDE_DIR kurl.h +# kpassdlg.h comes from kdeui and doesn't exist in KDE4 anymore +FIND_PATH(KDE3_INCLUDE_DIR kpassdlg.h $ENV{KDEDIR}/include /opt/kde/include /opt/kde3/include diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index c7da385a..f21b6dcb 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -6,7 +6,7 @@ # KDE3_ADD_UI_FILES # KDE3_ADD_KCFG_FILES # KDE3_AUTOMOC -# KDE3_CREATE_LIBTOOL_FILE +# KDE3_INSTALL_LIBTOOL_FILE # KDE3_PLACEHOLDER # KDE3_CREATE_FINAL_FILE # KDE3_ADD_KPART @@ -16,36 +16,14 @@ #neundorf@kde.org -#this should better be part of cmake: -#add an additional file to the list of files a source file depends on -MACRO(KDE3_ADD_FILE_DEPENDANCY file) - - GET_SOURCE_FILE_PROPERTY(_deps ${file} OBJECT_DEPENDS) - if (_deps) - set(_deps ${_deps} ${ARGN}) - else (_deps) - set(_deps ${ARGN}) - endif (_deps) - - SET_SOURCE_FILES_PROPERTIES(${file} PROPERTIES OBJECT_DEPENDS "${_deps}") - -ENDMACRO(KDE3_ADD_FILE_DEPENDANCY) - -MACRO(KDE3_GET_ABS_PATH _abs_filename _filename) - if(${_filename} MATCHES "^/.+") - set(${_abs_filename} ${_filename}) - else(${_filename} MATCHES "^/.+") - set(${_abs_filename} ${CMAKE_CURRENT_SOURCE_DIR}/${_filename}) - endif(${_filename} MATCHES "^/.+") -ENDMACRO(KDE3_GET_ABS_PATH) +INCLUDE(MacroLibrary) #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) MACRO(KDE3_ADD_DCOP_SKELS _sources) - foreach (_current_FILE ${ARGN}) - - KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) set(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) @@ -74,14 +52,15 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) set(${_sources} ${${_sources}} ${_skel}) - endforeach (_current_FILE) + ENDFOREACH (_current_FILE) ENDMACRO(KDE3_ADD_DCOP_SKELS) + MACRO(KDE3_ADD_DCOP_STUBS _sources) - foreach (_current_FILE ${ARGN}) + FOREACH (_current_FILE ${ARGN}) - KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) @@ -114,14 +93,15 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) set(${_sources} ${${_sources}} ${_stub_CPP}) - endforeach (_current_FILE) + ENDFOREACH (_current_FILE) ENDMACRO(KDE3_ADD_DCOP_STUBS) + MACRO(KDE3_ADD_KCFG_FILES _sources) - foreach (_current_FILE ${ARGN}) + FOREACH (_current_FILE ${ARGN}) - KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) @@ -138,7 +118,7 @@ MACRO(KDE3_ADD_KCFG_FILES _sources) set(${_sources} ${${_sources}} ${_src_FILE}) - endforeach (_current_FILE) + ENDFOREACH (_current_FILE) ENDMACRO(KDE3_ADD_KCFG_FILES) @@ -146,9 +126,9 @@ ENDMACRO(KDE3_ADD_KCFG_FILES) #create the moc files and add them to the list of sources #usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) MACRO(KDE3_ADD_MOC_FILES _sources) - foreach (_current_FILE ${ARGN}) + FOREACH (_current_FILE ${ARGN}) - KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) @@ -161,17 +141,18 @@ MACRO(KDE3_ADD_MOC_FILES _sources) set(${_sources} ${${_sources}} ${_moc}) - endforeach (_current_FILE) + ENDFOREACH (_current_FILE) ENDMACRO(KDE3_ADD_MOC_FILES) +GET_FILENAME_COMPONENT( KDE3_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) + #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) MACRO(KDE3_ADD_UI_FILES _sources ) - foreach (_current_FILE ${ARGN}) - - KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) @@ -196,7 +177,7 @@ MACRO(KDE3_ADD_UI_FILES _sources ) -DKDE_UIC_FILE:STRING=${_tmp_FILE} -DKDE_UIC_CPP_FILE:STRING=${_src} -DKDE_UIC_H_FILE:STRING=${_header} - -P ${CMAKE_ROOT}/Modules/kde3uic.cmake + -P ${KDE3_MODULE_DIR}/kde3uic.cmake DEPENDS ${_header} ) @@ -208,14 +189,15 @@ MACRO(KDE3_ADD_UI_FILES _sources ) set(${_sources} ${${_sources}} ${_src} ${_moc} ) - endforeach (_current_FILE) + ENDFOREACH (_current_FILE) ENDMACRO(KDE3_ADD_UI_FILES) + MACRO(KDE3_AUTOMOC) set(_matching_FILES ) - foreach (_current_FILE ${ARGN}) + FOREACH (_current_FILE ${ARGN}) - KDE3_GET_ABS_PATH(_tmp_FILE ${_current_FILE}) + GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) if (EXISTS ${_tmp_FILE}) @@ -226,7 +208,7 @@ MACRO(KDE3_AUTOMOC) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") if(_match) - foreach (_current_MOC_INC ${_match}) + FOREACH (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) @@ -240,15 +222,16 @@ MACRO(KDE3_AUTOMOC) DEPENDS ${_header} ) - KDE3_ADD_FILE_DEPENDANCY(${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_tmp_FILE} ${_moc}) - endforeach (_current_MOC_INC) + ENDFOREACH (_current_MOC_INC) endif(_match) endif (EXISTS ${_tmp_FILE}) - endforeach (_current_FILE) + ENDFOREACH (_current_FILE) ENDMACRO(KDE3_AUTOMOC) + MACRO(KDE3_INSTALL_ICONS _theme) ADD_CUSTOM_TARGET(install_icons ) SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) @@ -256,7 +239,7 @@ MACRO(KDE3_INSTALL_ICONS _theme) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") FILE(GLOB _icons *.png) - foreach(_current_ICON ${_icons} ) + FOREACH(_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") @@ -288,15 +271,16 @@ MACRO(KDE3_INSTALL_ICONS _theme) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - endforeach (_current_ICON) -ENDMACRO(KDE3_INSTALL_ICONS _theme) + ENDFOREACH (_current_ICON) +ENDMACRO(KDE3_INSTALL_ICONS) -MACRO(KDE3_CREATE_LIBTOOL_FILE _target) + +MACRO(KDE3_INSTALL_LIBTOOL_FILE _target) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) - set(_laname ${_laname}.la) + set(_laname ${CMAKE_CURRENT_BINARY_DIR}/${_laname}.la) FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") @@ -316,21 +300,22 @@ MACRO(KDE3_CREATE_LIBTOOL_FILE _target) FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/lib/kde3'\n") INSTALL_FILES(/lib/kde3 FILES ${_laname}) -ENDMACRO(KDE3_CREATE_LIBTOOL_FILE) +ENDMACRO(KDE3_INSTALL_LIBTOOL_FILE) MACRO(KDE3_CREATE_FINAL_FILE _filename) FILE(WRITE ${_filename} "//autogenerated file\n") - foreach (_current_FILE ${ARGN}) + FOREACH (_current_FILE ${ARGN}) FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n") - endforeach (_current_FILE) + ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_CREATE_FINAL_FILE _filename) +ENDMACRO(KDE3_CREATE_FINAL_FILE) OPTION(KDE3_ENABLE_FINAL "Enable final all-in-one compilation") OPTION(KDE3_BUILD_TESTS "Build the tests") + MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty if (${_with_PREFIX} STREQUAL "WITH_PREFIX") @@ -352,7 +337,8 @@ MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) KDE3_CREATE_LIBTOOL_FILE(${_target_NAME}) -ENDMACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) +ENDMACRO(KDE3_ADD_KPART) + MACRO(KDE3_ADD_KLM _target_NAME ) @@ -363,12 +349,12 @@ MACRO(KDE3_ADD_KLM _target_NAME ) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) endif (KDE3_ENABLE_FINAL) - CONFIGURE_FILE(${CMAKE_ROOT}/Modules/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + CONFIGURE_FILE(${KDE3_MODULE_DIR}/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) -ENDMACRO(KDE3_ADD_KLM _target_NAME) +ENDMACRO(KDE3_ADD_KLM) MACRO(KDE3_ADD_EXECUTABLE _target_NAME ) @@ -380,6 +366,6 @@ MACRO(KDE3_ADD_EXECUTABLE _target_NAME ) ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) endif (KDE3_ENABLE_FINAL) -ENDMACRO(KDE3_ADD_EXECUTABLE _target_NAME) +ENDMACRO(KDE3_ADD_EXECUTABLE) -- cgit v1.2.1 From c8cfc66d8bb19de0848bf475651b34d07b093b97 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Feb 2006 09:39:00 +0000 Subject: -renamed the KDE4_something_DIR to something_INSTALL_DIR except KDE4_INCLUDE_DIR, since this is used for compiling and not for installing -change the detection of KDE4_MODULE_DIR to use CMAKE_CURRENT_LIST_FILE I could not commit to kio/kssl/kssl/, so this may break installing there Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=510826 --- modules/FindKDE4.cmake | 59 ++++++++++++++++++++++++------------------------ modules/KDE4Macros.cmake | 6 +---- 2 files changed, 30 insertions(+), 35 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 71f35d94..7ab12b18 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -40,33 +40,32 @@ INCLUDE (MacroLibrary) #add some KDE specific stuff -set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) -set(KDE4_APPS_DIR /share/applnk) -set(KDE4_CONFIG_DIR /share/config) -set(KDE4_DATA_DIR /share/apps) -set(KDE4_HTML_DIR /share/doc/HTML) -set(KDE4_KCFG_DIR /share/config.kcfg) -set(KDE4_LIBS_HTML_DIR /share/doc/HTML) -set(KDE4_LOCALE_DIR /share/locale) -set(KDE4_MIME_DIR /share/mimelnk) -set(KDE4_SERVICES_DIR /share/services) -set(KDE4_SERVICETYPES_DIR /share/servicetypes) -set(KDE4_SOUND_DIR /share/sounds) -set(KDE4_TEMPLATES_DIR /share/templates) -set(KDE4_WALLPAPER_DIR /share/wallpapers) -set(KDE4_KCONF_UPDATE_DIR /share/apps/kconf_update/ ) -set(XDG_APPS_DIR /share/applications/kde) -set(XDG_DIRECTORY_DIR /share/desktop-directories) - - # the following are directories where stuff will be installed to +set(CONFIG_INSTALL_DIR /share/config CACHE STRING "The config file install dir") +set(DATA_INSTALL_DIR /share/apps CACHE STRING "The parent directory where applications can install their data") +set(HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "The HTML install dir for documentation") +set(ICON_INSTALL_DIR /share/icons CACHE STRING "The icon install dir (default prefix/share/icons/)") +set(INFO_INSTALL_DIR /info CACHE STRING "The kde info install dir (default prefix/info)") +set(KCFG_INSTALL_DIR /share/config.kcfg CACHE STRING "The install dir for kconfig files") +set(LIB_INSTALL_DIR /lib CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +set(LOCALE_INSTALL_DIR /share/locale CACHE STRING "The install dir for translations") +set(MAN_INSTALL_DIR /man CACHE STRING "The kde man install dir (default prefix/man/)") +set(MIME_INSTALL_DIR /share/mimelnk CACHE STRING "The install dir for the mimetype desktop files") +set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") +set(SERVICES_INSTALL_DIR /share/services CACHE STRING "The install dir for service (desktop, protocol, ...) files") +set(SERVICETYPES_INSTALL_DIR /share/servicetypes CACHE STRING "The install dir for servicestypes desktop files") +set(SOUND_INSTALL_DIR /share/sounds CACHE STRING "The install dir for sound files") +set(TEMPLATES_INSTALL_DIR /share/templates CACHE STRING "The install dir for templates (Create new file...)") +set(WALLPAPER_INSTALL_DIR /share/wallpapers CACHE STRING "The install dir for wallpapers") +set(KCONF_UPDATE_INSTALL_DIR /share/apps/kconf_update/ CACHE STRING "The kconf_update install dir") +set(XDG_APPS_DIR /share/applications/kde CACHE STRING "The XDG apps dir") +set(XDG_DIRECTORY_DIR /share/desktop-directories CACHE STRING "The XDG directory") + +# seem to be unused: +set(LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") +set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") #set(KDE4_SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") -set(ICON_INSTALL_DIR "/share/icons" CACHE STRING "The icon install dir (default prefix/share/icons/)") -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 "${KDE4_LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") - +# set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) @@ -117,8 +116,8 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set( _KDE4_KCONFIG_COMPILER_DEP) # at first the KDE include direcory - # this should better check for a header which didn't exist in KDE < 4 - FIND_PATH(KDE4_INCLUDE_DIR kurl.h + # kpassworddialog.h is new with KDE4 + FIND_PATH(KDE4_INCLUDE_DIR kpassworddialog.h $ENV{KDEDIR}/include /opt/kde/include /opt/kde4/include @@ -275,11 +274,11 @@ INCLUDE(KDE4Macros) # decide whether KDE4 has been found -if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) set(KDE4_FOUND TRUE) -else (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) +else (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) set(KDE4_FOUND FALSE) -endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_SERVICETYPES_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) MACRO (KDE4_PRINT_RESULTS) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 613cc359..fcbb874b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -133,12 +133,8 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) ENDMACRO(KDE4_ADD_KCFG_FILES) -if(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") - set(KDE4_MODULE_DIR "${CMAKE_ROOT}/Modules") -else(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") - set(KDE4_MODULE_DIR "${CMAKE_SOURCE_DIR}/cmake/modules") -endif(EXISTS "${CMAKE_ROOT}/Modules/kde4init_dummy.cpp.in") +GET_FILENAME_COMPONENT( KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) -- cgit v1.2.1 From 17010337046e0cf4ee8ab0208132ff39459550f6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 19 Feb 2006 21:23:16 +0000 Subject: -add basic support for different buildtypes with gcc, see FindKDE4.cmake (search for CMAKE_CXX_FLAGS_DEBUG) by default "ReleaseWithDebugInfo"==RelWithDebInfo is used, which means "-O2 -g" release means "-O2" debug means "-O0 -g" Are these flags ok ? If not, which should be used instead ? Creating debug libs and linking to the debug libs of Qt will come later, when I'm back Was there a special reason why -Os instead of -O2 was used on the Mac ? If so, it has to be resotred. Also, use the new names for the install directories in kio/kssl/kssl/ Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: rangerrick@gmail.com svn path=/trunk/KDE/kdelibs/; revision=511435 --- modules/FindKDE4.cmake | 37 +++++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 7ab12b18..b3e71214 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -8,6 +8,7 @@ # KDE4_DCOPIDL_EXECUTABLE # KDE4_DCOPIDL2CPP_EXECUTABLE # KDE4_KCFGC_EXECUTABLE +# KDE4_MEINPROC_EXECUTABLE # KDE4_FOUND # it also adds the following macros (from KDE4Macros.cmake) # ADD_FILE_DEPENDANCY @@ -103,6 +104,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) @@ -164,6 +166,12 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) /opt/kde4/bin ) + FIND_PROGRAM(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) @@ -184,6 +192,12 @@ if(UNIX AND NOT APPLE) endif(UNIX AND NOT APPLE) +# Set a default build type for single-configuration +# CMake generators if no build type is set. +IF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + SET(CMAKE_BUILD_TYPE RelWithDebInfo) +ENDIF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + if (WIN32) @@ -217,8 +231,9 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") + # optimization flags are set further below for the various build types + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES Linux) @@ -227,8 +242,9 @@ if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") + # optimization flags are set further below for the various build types + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES BSD) @@ -251,8 +267,10 @@ if(APPLE) #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") - set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common -Os") - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common -Os") + # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex + # optimization flags are set below for the various build types + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") endif(APPLE) @@ -264,6 +282,13 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + # Select flags. + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_DEBUG "-O0 -g") endif (CMAKE_COMPILER_IS_GNUCXX) ########### end of platform specific stuff ########################## -- cgit v1.2.1 From 92d4f57a20e1fde9539371cbcd537e6bd6a9c6de Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 23 Feb 2006 09:43:02 +0000 Subject: Search X11 extension module svn path=/trunk/KDE/kdelibs/; revision=512668 --- modules/FindX11.cmake | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 2e1095ac..95ad6a6e 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -28,8 +28,12 @@ if (UNIX) FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xaccess_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -54,7 +58,15 @@ if (UNIX) if(X11_Xaccess_INCLUDE_PATH) set(X11_Xaccess_FOUND TRUE) endif(X11_Xaccess_INCLUDE_PATH) - + + if(X11_Xcomposite_INCLUDE_PATH) + set(X11_Xcomposite_FOUND TRUE) + endif(X11_Xcomposite_INCLUDE_PATH) + + if(X11_Xfixes_INCLUDE_PATH) + set(X11_Xfixes_FOUND TRUE) + endif(X11_Xfixes_INCLUDE_PATH) + # Deprecated variable for backwards compatibility with CMake 1.4 if(X11_X11_INCLUDE_PATH) if(X11_LIBRARIES) @@ -150,6 +162,11 @@ if (UNIX) X11_Xext_LIB X11_Xlib_INCLUDE_PATH X11_Xutil_INCLUDE_PATH + X11_Xcomposite_INCLUDE_PATH + X11_Xcomposite_LIB + X11_Xaccess_INCLUDE_PATH + X11_Xfixes_LIB + X11_Xfixes_INCLUDE_PATH X11_LIBRARIES ) -- cgit v1.2.1 From 017f409c18a2c7e0f741261e8cfc10f1b2c7c559 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 23 Feb 2006 09:54:57 +0000 Subject: Search other x11 extension svn path=/trunk/KDE/kdelibs/; revision=512674 --- modules/FindX11.cmake | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 95ad6a6e..83eafc8c 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -30,10 +30,15 @@ if (UNIX) FIND_PATH(X11_Xaccess_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -67,6 +72,14 @@ if (UNIX) set(X11_Xfixes_FOUND TRUE) endif(X11_Xfixes_INCLUDE_PATH) + if(X11_Xrandr_INCLUDE_PATH) + set(X11_Xrandr_FOUND TRUE) + endif(X11_Xrandr_INCLUDE_PATH) + + if(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) + set(X11_kompmgr_FOUND TRUE) + endif(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) + # Deprecated variable for backwards compatibility with CMake 1.4 if(X11_X11_INCLUDE_PATH) if(X11_LIBRARIES) @@ -167,6 +180,12 @@ if (UNIX) X11_Xaccess_INCLUDE_PATH X11_Xfixes_LIB X11_Xfixes_INCLUDE_PATH + X11_Xrandr_LIB + X11_Xrandr_INCLUDE_PATH + X11_Xdamage_LIB + X11_Xdamage_INCLUDE_PATH + X11_Xrender_LIB + X11_Xrender_INCLUDE_PATH X11_LIBRARIES ) -- cgit v1.2.1 From f9aeebbc8f6aafa913b75bca4aef70f89883376e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 23 Feb 2006 10:06:58 +0000 Subject: Again other X11 extension (need for future) svn path=/trunk/KDE/kdelibs/; revision=512677 --- modules/FindX11.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 83eafc8c..13451fa2 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -33,12 +33,14 @@ if (UNIX) FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -76,6 +78,10 @@ if (UNIX) set(X11_Xrandr_FOUND TRUE) endif(X11_Xrandr_INCLUDE_PATH) + if(X11_Xxf86misc_INCLUDE_PATH) + set(X11_Xxf86misc_FOUND TRUE) + endif(X11_Xxf86misc_INCLUDE_PATH) + if(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) set(X11_kompmgr_FOUND TRUE) endif(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) @@ -186,6 +192,8 @@ if (UNIX) X11_Xdamage_INCLUDE_PATH X11_Xrender_LIB X11_Xrender_INCLUDE_PATH + X11_Xxf86misc_LIB + X11_Xxf86misc_INCLUDE_PATH X11_LIBRARIES ) -- cgit v1.2.1 From 18ef27a380f366e9afa8aea2df116171eb547b30 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 23 Feb 2006 13:34:35 +0000 Subject: Fix search xkb extension svn path=/trunk/KDE/kdelibs/; revision=512735 --- modules/FindX11.cmake | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 13451fa2..facc99e4 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -27,7 +27,9 @@ if (UNIX) FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xaccess_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) +#Solaris lacks this file, so we should skip kxkbd here + FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) @@ -62,9 +64,10 @@ if (UNIX) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) endif(X11_Xext_LIB) - if(X11_Xaccess_INCLUDE_PATH) + if(X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) set(X11_Xaccess_FOUND TRUE) - endif(X11_Xaccess_INCLUDE_PATH) + set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) + endif(X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) if(X11_Xcomposite_INCLUDE_PATH) set(X11_Xcomposite_FOUND TRUE) -- cgit v1.2.1 From 5afaf55ab9625215b2237215d6b7003aa91d5739 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 23 Feb 2006 14:20:16 +0000 Subject: Search xinerama extension svn path=/trunk/KDE/kdelibs/; revision=512744 --- modules/FindX11.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index facc99e4..3adfe510 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -36,6 +36,7 @@ if (UNIX) FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) @@ -43,6 +44,7 @@ if (UNIX) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -73,6 +75,10 @@ if (UNIX) set(X11_Xcomposite_FOUND TRUE) endif(X11_Xcomposite_INCLUDE_PATH) + if(X11_Xinerama_INCLUDE_PATH) + set(X11_Xinerama_FOUND TRUE) + endif(X11_Xinerama_INCLUDE_PATH) + if(X11_Xfixes_INCLUDE_PATH) set(X11_Xfixes_FOUND TRUE) endif(X11_Xfixes_INCLUDE_PATH) @@ -197,6 +203,8 @@ if (UNIX) X11_Xrender_INCLUDE_PATH X11_Xxf86misc_LIB X11_Xxf86misc_INCLUDE_PATH + X11_Xinerama_LIB + X11_Xinerama_INCLUDE_PATH X11_LIBRARIES ) -- cgit v1.2.1 From c07e6dee7fc8796271e8697ed742e7e0514d643f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 25 Feb 2006 15:43:23 +0000 Subject: Add other X11 test (Xcursor/XTest) svn path=/trunk/KDE/kdelibs/; revision=513554 --- modules/FindX11.cmake | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 3adfe510..79e43bf4 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -37,6 +37,8 @@ if (UNIX) FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) @@ -45,6 +47,8 @@ if (UNIX) FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -75,6 +79,10 @@ if (UNIX) set(X11_Xcomposite_FOUND TRUE) endif(X11_Xcomposite_INCLUDE_PATH) + if(X11_XTest_INCLUDE_PATH) + set(X11_XTest_FOUND TRUE) + endif(X11_XTest_INCLUDE_PATH) + if(X11_Xinerama_INCLUDE_PATH) set(X11_Xinerama_FOUND TRUE) endif(X11_Xinerama_INCLUDE_PATH) @@ -91,6 +99,10 @@ if (UNIX) set(X11_Xxf86misc_FOUND TRUE) endif(X11_Xxf86misc_INCLUDE_PATH) + if(X11_Xcursor_INCLUDE_PATH) + set(X11_Xcursor_FOUND TRUE) + endif(X11_Xcursor_INCLUDE_PATH) + if(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) set(X11_kompmgr_FOUND TRUE) endif(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) @@ -205,6 +217,10 @@ if (UNIX) X11_Xxf86misc_INCLUDE_PATH X11_Xinerama_LIB X11_Xinerama_INCLUDE_PATH + X11_XTest_LIB + X11_XTest_INCLUDE_PATH + X11_Xcursor_LIB + X11_Xcursor_INCLUDE_PATH X11_LIBRARIES ) -- cgit v1.2.1 From b9483a2e423aa599612e6af5b78952d7afd7b1e9 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 27 Feb 2006 16:26:28 +0000 Subject: Fix LIBRARY_OUTPUT_PATH when we build other module as kdelibs svn path=/trunk/KDE/kdelibs/; revision=514219 --- modules/FindKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index b3e71214..caa0846d 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -116,7 +116,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # ... but NOT otherwise set( _KDE4_DCOPIDL2CPP_DEP ) set( _KDE4_KCONFIG_COMPILER_DEP) - + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) # at first the KDE include direcory # kpassworddialog.h is new with KDE4 FIND_PATH(KDE4_INCLUDE_DIR kpassworddialog.h -- cgit v1.2.1 From f398b408547ed405de0b3afc61766fcf8d6d054b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 27 Feb 2006 17:34:41 +0000 Subject: Use "TRUE" as for other check module svn path=/trunk/KDE/kdelibs/; revision=514232 --- modules/FindJPEG.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindJPEG.cmake b/modules/FindJPEG.cmake index 63111377..dfda592c 100644 --- a/modules/FindJPEG.cmake +++ b/modules/FindJPEG.cmake @@ -26,7 +26,7 @@ FIND_LIBRARY(JPEG_LIBRARY IF (JPEG_LIBRARY) IF (JPEG_INCLUDE_DIR) SET(JPEG_LIBRARIES ${JPEG_LIBRARY}) - SET(JPEG_FOUND "YES") + SET(JPEG_FOUND TRUE) ENDIF (JPEG_INCLUDE_DIR) ENDIF (JPEG_LIBRARY) -- cgit v1.2.1 From bedb867ceeb8c4f3c43659abca990abe1f9068d3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 28 Feb 2006 18:23:12 +0000 Subject: -set CMAKE_DEBUG_POSTFIX to "_debug", this has the effect that when doing a debug build e.g. kdecore will be named "libkdecore_debug.so" Alex svn path=/trunk/KDE/kdelibs/; revision=514550 --- modules/FindKDE4.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index caa0846d..989cfc65 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -291,6 +291,8 @@ if (CMAKE_COMPILER_IS_GNUCXX) set(CMAKE_C_FLAGS_DEBUG "-O0 -g") endif (CMAKE_COMPILER_IS_GNUCXX) +SET(CMAKE_DEBUG_POSTFIX "_debug") + ########### end of platform specific stuff ########################## -- cgit v1.2.1 From 47b7f56e42979af21aa5d17e6d9d71523438b64d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 1 Mar 2006 16:58:28 +0000 Subject: Mark as advanced svn path=/trunk/KDE/kdelibs/; revision=514843 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index fb9dbf35..1c337188 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -377,7 +377,7 @@ if(QT4_QMAKE_FOUND) CACHE STRING "The QtTest library.") set(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") - + MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) else (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of @@ -449,7 +449,7 @@ if(QT4_QMAKE_FOUND) # Set QT_QTTEST_LIBRARY FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR}) - + MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) endif (QT_USE_FRAMEWORKS) # Set QT_QTASSISTANT_LIBRARY -- cgit v1.2.1 From 6720cb6b1131c507512cc9219905c54ce3de1f80 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Mar 2006 18:45:57 +0000 Subject: -remove the manual definition of "MSVC", this is now done in cmake -remove the "_debug" postfix for debug libs Alex svn path=/trunk/KDE/kdelibs/; revision=514866 --- modules/FindKDE4.cmake | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 989cfc65..7af6485a 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -175,14 +175,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) -# this is already in cmake cvs and can be removed once we require it -if (WIN32) - GET_FILENAME_COMPONENT(_tmp_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME_WE) - if ( _tmp_COMPILER_NAME MATCHES cl ) - set(MSVC TRUE) - endif ( _tmp_COMPILER_NAME MATCHES cl ) -endif (WIN32) - ##################### and now the platform specific stuff ############################ @@ -291,7 +283,8 @@ if (CMAKE_COMPILER_IS_GNUCXX) set(CMAKE_C_FLAGS_DEBUG "-O0 -g") endif (CMAKE_COMPILER_IS_GNUCXX) -SET(CMAKE_DEBUG_POSTFIX "_debug") +# it seems we prefer not to use a different postfix for debug libs, Alex +# SET(CMAKE_DEBUG_POSTFIX "_debug") ########### end of platform specific stuff ########################## -- cgit v1.2.1 From cbbd8b92d40297ed286a965c9b53f8013555dd15 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Mar 2006 20:08:10 +0000 Subject: -changes in preparation of the renaming to FindKDE4Internal.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=514887 --- modules/FindKDE4.cmake | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake index 7af6485a..55bfdb74 100644 --- a/modules/FindKDE4.cmake +++ b/modules/FindKDE4.cmake @@ -217,6 +217,12 @@ if (WIN32) endif (WIN32) +# also use /usr/local by default under UNIX, including Mac OS X +if (UNIX) + link_directories(/usr/local/lib) + include_directories(/usr/local/include) +endif (UNIX) + # only on linux, but NOT e.g. on FreeBSD: if (CMAKE_SYSTEM_NAME MATCHES Linux) @@ -334,16 +340,16 @@ MACRO (KDE4_PRINT_RESULTS) ENDMACRO (KDE4_PRINT_RESULTS) -if (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) +if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) #bail out if something wasn't found KDE4_PRINT_RESULTS() message(FATAL_ERROR "Could NOT find everything required for compiling KDE 4 programs") -endif (KDE4_FIND_REQUIRED AND NOT KDE4_FOUND) +endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) -if (NOT KDE4_FIND_QUIETLY) +if (NOT KDE4Internal_FIND_QUIETLY) KDE4_PRINT_RESULTS() -endif (NOT KDE4_FIND_QUIETLY) +endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) -- cgit v1.2.1 From 40632f3b0dba9422c52a96c7d5f63c4d4c01e24e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Mar 2006 20:09:33 +0000 Subject: -renamed FindKDE4.cmake to FindKDE4Internal.cmake, so the name FindKDE4.cmake is free for the cmake module which will find the installed kdelibs cmake files -moved the /usr/local/include and /usr/local/lib to FindKDE4Internal.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=514888 --- modules/FindKDE4Internal.cmake | 358 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 358 insertions(+) create mode 100644 modules/FindKDE4Internal.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake new file mode 100644 index 00000000..55bfdb74 --- /dev/null +++ b/modules/FindKDE4Internal.cmake @@ -0,0 +1,358 @@ +# - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros +# +# KDE4_DEFINITIONS +# KDE4_INCLUDE_DIR +# KDE4_INCLUDE_DIRS +# KDE4_LIB_DIR +# KDE4_SERVICETYPES_DIR +# KDE4_DCOPIDL_EXECUTABLE +# KDE4_DCOPIDL2CPP_EXECUTABLE +# KDE4_KCFGC_EXECUTABLE +# KDE4_MEINPROC_EXECUTABLE +# KDE4_FOUND +# it also adds the following macros (from KDE4Macros.cmake) +# ADD_FILE_DEPENDANCY +# KDE4_ADD_DCOP_SKELS +# KDE4_ADD_DCOP_STUBS +# KDE4_ADD_MOC_FILES +# KDE4_ADD_UI_FILES +# KDE4_ADD_KCFG_FILES +# KDE4_AUTOMOC +# KDE4_PLACEHOLDER +# KDE4_INSTALL_LIBTOOL_FILE +# KDE4_CREATE_FINAL_FILE +# KDE4_ADD_KPART +# KDE4_ADD_KLM +# KDE4_ADD_EXECUTABLE +# +# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally +# _KDE4_PLATFORM_DEFINITIONS is used only internally + + +CMAKE_MINIMUM_REQUIRED(VERSION 2.3.3) + +#this line includes FindQt.cmake, which searches the Qt library and headers +FIND_PACKAGE(Qt4 REQUIRED) + +set(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) + +INCLUDE (MacroLibrary) + +#add some KDE specific stuff + + +# the following are directories where stuff will be installed to +set(CONFIG_INSTALL_DIR /share/config CACHE STRING "The config file install dir") +set(DATA_INSTALL_DIR /share/apps CACHE STRING "The parent directory where applications can install their data") +set(HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "The HTML install dir for documentation") +set(ICON_INSTALL_DIR /share/icons CACHE STRING "The icon install dir (default prefix/share/icons/)") +set(INFO_INSTALL_DIR /info CACHE STRING "The kde info install dir (default prefix/info)") +set(KCFG_INSTALL_DIR /share/config.kcfg CACHE STRING "The install dir for kconfig files") +set(LIB_INSTALL_DIR /lib CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +set(LOCALE_INSTALL_DIR /share/locale CACHE STRING "The install dir for translations") +set(MAN_INSTALL_DIR /man CACHE STRING "The kde man install dir (default prefix/man/)") +set(MIME_INSTALL_DIR /share/mimelnk CACHE STRING "The install dir for the mimetype desktop files") +set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") +set(SERVICES_INSTALL_DIR /share/services CACHE STRING "The install dir for service (desktop, protocol, ...) files") +set(SERVICETYPES_INSTALL_DIR /share/servicetypes CACHE STRING "The install dir for servicestypes desktop files") +set(SOUND_INSTALL_DIR /share/sounds CACHE STRING "The install dir for sound files") +set(TEMPLATES_INSTALL_DIR /share/templates CACHE STRING "The install dir for templates (Create new file...)") +set(WALLPAPER_INSTALL_DIR /share/wallpapers CACHE STRING "The install dir for wallpapers") +set(KCONF_UPDATE_INSTALL_DIR /share/apps/kconf_update/ CACHE STRING "The kconf_update install dir") +set(XDG_APPS_DIR /share/applications/kde CACHE STRING "The XDG apps dir") +set(XDG_DIRECTORY_DIR /share/desktop-directories CACHE STRING "The XDG directory") + +# seem to be unused: +set(LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") +set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") +#set(KDE4_SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") +# set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) + + + +#now try to find some kde stuff + +#are we trying to compile kdelibs ? +#then enter bootstrap mode +if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + message(STATUS "Building kdelibs...") + + set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + + set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + + # adjust dcopidl and the library output path depending on the platform + if (WIN32) + # under windows dcopidl.bat has to be used, except when using MSYS, then the perl script has to be used, Alex + if ("${CMAKE_GENERATOR}" MATCHES "MSYS") + set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + else ("${CMAKE_GENERATOR}" MATCHES "MSYS") + set(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + endif ("${CMAKE_GENERATOR}" MATCHES "MSYS") + + set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + else (WIN32) + set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH}) + endif (WIN32) + + set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) + set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) + + # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + + # when building kdelibs, make the dcop and kcfg rules depend on the binaries... + set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) + set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + + +else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + # ... but NOT otherwise + set( _KDE4_DCOPIDL2CPP_DEP ) + set( _KDE4_KCONFIG_COMPILER_DEP) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + # at first the KDE include direcory + # kpassworddialog.h is new with KDE4 + FIND_PATH(KDE4_INCLUDE_DIR kpassworddialog.h + $ENV{KDEDIR}/include + /opt/kde/include + /opt/kde4/include + /usr/local/include + /usr/include/ + /usr/include/kde + /usr/local/include/kde + ) + + # now the KDE library directory, kxmlcore is new with KDE4 + FIND_LIBRARY(KDE4_XMLCORE_LIBRARY NAMES kxmlcore + PATHS + $ENV{KDEDIR}/lib + /opt/kde/lib + /opt/kde4/lib + /usr/lib + /usr/local/lib + ) + + GET_FILENAME_COMPONENT(KDE4_LIB_DIR ${KDE4_XMLCORE_LIBRARY} PATH ) + + #now search for the dcop utilities + FIND_PROGRAM(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + + FIND_PATH(KDE4_KALYPTUS_DIR kalyptus + $ENV{KDEDIR}/share/apps/dcopidl + /opt/kde/share/apps/dcopidl + /opt/kde4/share/apps/dcopidl + ) + + FIND_PROGRAM(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + + FIND_PROGRAM(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + + FIND_PROGRAM(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + ) + +endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + +##################### and now the platform specific stuff ############################ + + +if(UNIX AND NOT APPLE) + FIND_PACKAGE(X11 REQUIRED) + set(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) +endif(UNIX AND NOT APPLE) + + +# Set a default build type for single-configuration +# CMake generators if no build type is set. +IF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + SET(CMAKE_BUILD_TYPE RelWithDebInfo) +ENDIF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + + +if (WIN32) + + if(CYGWIN) + message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") + endif(CYGWIN) + + FIND_PACKAGE(KDEWIN32 REQUIRED) + + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) + set( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) + + # windows, mingw + if(MINGW) + #hmmm, something special to do here ? + endif(MINGW) + + # windows, microsoft compiler + if(MSVC) + set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + IF(CMAKE_COMPILER_2005) + ADD_DEFINITIONS( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) + ENDIF(CMAKE_COMPILER_2005) + endif(MSVC) + +endif (WIN32) + +# also use /usr/local by default under UNIX, including Mac OS X +if (UNIX) + link_directories(/usr/local/lib) + include_directories(/usr/local/include) +endif (UNIX) + + +# only on linux, but NOT e.g. on FreeBSD: +if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + # optimization flags are set further below for the various build types + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") +endif (CMAKE_SYSTEM_NAME MATCHES Linux) + + +# works on FreeBSD, NOT tested on NetBSD and OpenBSD +if (CMAKE_SYSTEM_NAME MATCHES BSD) + set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) + set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") + # optimization flags are set further below for the various build types + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") +endif (CMAKE_SYSTEM_NAME MATCHES BSD) + + +# This will need to be modified later to support either Qt/X11 or Qt/Mac builds +if(APPLE) + + set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) + + # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow + # -undefined dynamic_lookup; in the future we should do this programmatically + # hmm... why doesn't this work? + set (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) + + # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default + # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented + # or perhaps it already is, and I just don't know where to look ;) + + set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") + set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") + #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") + #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") + + # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex + # optimization flags are set below for the various build types + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") +endif(APPLE) + + +# compiler specific stuff, maybe this should be done differently, Alex + +if (MSVC) + set (KDE4_ENABLE_EXCEPTIONS -EHsc) +endif(MSVC) + +if (CMAKE_COMPILER_IS_GNUCXX) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + # Select flags. + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_DEBUG "-O0 -g") +endif (CMAKE_COMPILER_IS_GNUCXX) + +# it seems we prefer not to use a different postfix for debug libs, Alex +# SET(CMAKE_DEBUG_POSTFIX "_debug") + +########### end of platform specific stuff ########################## + + +# KDE4Macros.cmake contains all the KDE specific macros +INCLUDE(KDE4Macros) + + +# decide whether KDE4 has been found +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + set(KDE4_FOUND TRUE) +else (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + set(KDE4_FOUND FALSE) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) + + +MACRO (KDE4_PRINT_RESULTS) + if(KDE4_INCLUDE_DIR) + message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") + else(KDE4_INCLUDE_DIR) + message(STATUS "Didn't find KDE4 headers") + endif(KDE4_INCLUDE_DIR) + + if(KDE4_LIB_DIR) + message(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") + else(KDE4_LIB_DIR) + message(STATUS "Didn't find KDE4 core library") + endif(KDE4_LIB_DIR) + + if(KDE4_DCOPIDL_EXECUTABLE) + message(STATUS "Found KDE4 dcopidl preprocessor: ${KDE4_DCOPIDL_EXECUTABLE}") + else(KDE4_DCOPIDL_EXECUTABLE) + message(STATUS "Didn't find the KDE4 dcopidl preprocessor") + endif(KDE4_DCOPIDL_EXECUTABLE) + + if(KDE4_DCOPIDL2CPP_EXECUTABLE) + message(STATUS "Found KDE4 dcopidl2cpp preprocessor: ${KDE4_DCOPIDL2CPP_EXECUTABLE}") + else(KDE4_DCOPIDL2CPP_EXECUTABLE) + message(STATUS "Didn't find the KDE4 dcopidl2cpp preprocessor") + endif(KDE4_DCOPIDL2CPP_EXECUTABLE) + + if(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") + else(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") + endif(KDE4_KCFGC_EXECUTABLE) +ENDMACRO (KDE4_PRINT_RESULTS) + + +if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) + #bail out if something wasn't found + KDE4_PRINT_RESULTS() + message(FATAL_ERROR "Could NOT find everything required for compiling KDE 4 programs") +endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) + + +if (NOT KDE4Internal_FIND_QUIETLY) + KDE4_PRINT_RESULTS() +endif (NOT KDE4Internal_FIND_QUIETLY) + +#add the found Qt and KDE include directories to the current include path +set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) + +# NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS ) -- cgit v1.2.1 From 3be623b37c62357a04a505a1b6f5010f25566a2c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 1 Mar 2006 21:05:09 +0000 Subject: -when installing, remove cmake files which may have been installed before, but have become invalid now (because they have been renamed, ort moved to cmake cvs) Alex svn path=/trunk/KDE/kdelibs/; revision=514900 --- modules/CMakeLists.txt | 9 ++ modules/FindKDE4.cmake | 358 ------------------------------------------ modules/remove_files.cmake.in | 2 + 3 files changed, 11 insertions(+), 358 deletions(-) delete mode 100644 modules/FindKDE4.cmake create mode 100644 modules/remove_files.cmake.in (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 892940d5..d08d9abe 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -4,3 +4,12 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") install_files(/share/apps/cmake/modules FILES kde3init_dummy.cpp.in kde4init_dummy.cpp.in ${cmakeFiles} ) +# the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex +set (FILES_TO_REMOVE + ${CMAKE_INSTALL_PREFIX}/share/apps/cmake/modules/FindKDE4.cmake + ) + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/remove_files.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake) + +install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) + diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake deleted file mode 100644 index 55bfdb74..00000000 --- a/modules/FindKDE4.cmake +++ /dev/null @@ -1,358 +0,0 @@ -# - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros -# -# KDE4_DEFINITIONS -# KDE4_INCLUDE_DIR -# KDE4_INCLUDE_DIRS -# KDE4_LIB_DIR -# KDE4_SERVICETYPES_DIR -# KDE4_DCOPIDL_EXECUTABLE -# KDE4_DCOPIDL2CPP_EXECUTABLE -# KDE4_KCFGC_EXECUTABLE -# KDE4_MEINPROC_EXECUTABLE -# KDE4_FOUND -# it also adds the following macros (from KDE4Macros.cmake) -# ADD_FILE_DEPENDANCY -# KDE4_ADD_DCOP_SKELS -# KDE4_ADD_DCOP_STUBS -# KDE4_ADD_MOC_FILES -# KDE4_ADD_UI_FILES -# KDE4_ADD_KCFG_FILES -# KDE4_AUTOMOC -# KDE4_PLACEHOLDER -# KDE4_INSTALL_LIBTOOL_FILE -# KDE4_CREATE_FINAL_FILE -# KDE4_ADD_KPART -# KDE4_ADD_KLM -# KDE4_ADD_EXECUTABLE -# -# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally -# _KDE4_PLATFORM_DEFINITIONS is used only internally - - -CMAKE_MINIMUM_REQUIRED(VERSION 2.3.3) - -#this line includes FindQt.cmake, which searches the Qt library and headers -FIND_PACKAGE(Qt4 REQUIRED) - -set(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) - -INCLUDE (MacroLibrary) - -#add some KDE specific stuff - - -# the following are directories where stuff will be installed to -set(CONFIG_INSTALL_DIR /share/config CACHE STRING "The config file install dir") -set(DATA_INSTALL_DIR /share/apps CACHE STRING "The parent directory where applications can install their data") -set(HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "The HTML install dir for documentation") -set(ICON_INSTALL_DIR /share/icons CACHE STRING "The icon install dir (default prefix/share/icons/)") -set(INFO_INSTALL_DIR /info CACHE STRING "The kde info install dir (default prefix/info)") -set(KCFG_INSTALL_DIR /share/config.kcfg CACHE STRING "The install dir for kconfig files") -set(LIB_INSTALL_DIR /lib CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") -set(LOCALE_INSTALL_DIR /share/locale CACHE STRING "The install dir for translations") -set(MAN_INSTALL_DIR /man CACHE STRING "The kde man install dir (default prefix/man/)") -set(MIME_INSTALL_DIR /share/mimelnk CACHE STRING "The install dir for the mimetype desktop files") -set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") -set(SERVICES_INSTALL_DIR /share/services CACHE STRING "The install dir for service (desktop, protocol, ...) files") -set(SERVICETYPES_INSTALL_DIR /share/servicetypes CACHE STRING "The install dir for servicestypes desktop files") -set(SOUND_INSTALL_DIR /share/sounds CACHE STRING "The install dir for sound files") -set(TEMPLATES_INSTALL_DIR /share/templates CACHE STRING "The install dir for templates (Create new file...)") -set(WALLPAPER_INSTALL_DIR /share/wallpapers CACHE STRING "The install dir for wallpapers") -set(KCONF_UPDATE_INSTALL_DIR /share/apps/kconf_update/ CACHE STRING "The kconf_update install dir") -set(XDG_APPS_DIR /share/applications/kde CACHE STRING "The XDG apps dir") -set(XDG_DIRECTORY_DIR /share/desktop-directories CACHE STRING "The XDG directory") - -# seem to be unused: -set(LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") -set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") -#set(KDE4_SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") -# set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) - - - -#now try to find some kde stuff - -#are we trying to compile kdelibs ? -#then enter bootstrap mode -if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - - message(STATUS "Building kdelibs...") - - set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) - - set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - - # adjust dcopidl and the library output path depending on the platform - if (WIN32) - # under windows dcopidl.bat has to be used, except when using MSYS, then the perl script has to be used, Alex - if ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - else ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) - endif ("${CMAKE_GENERATOR}" MATCHES "MSYS") - - set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) - else (WIN32) - set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH}) - endif (WIN32) - - set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) - set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) - - # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) - - # when building kdelibs, make the dcop and kcfg rules depend on the binaries... - set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) - set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) - - -else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - - # ... but NOT otherwise - set( _KDE4_DCOPIDL2CPP_DEP ) - set( _KDE4_KCONFIG_COMPILER_DEP) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - # at first the KDE include direcory - # kpassworddialog.h is new with KDE4 - FIND_PATH(KDE4_INCLUDE_DIR kpassworddialog.h - $ENV{KDEDIR}/include - /opt/kde/include - /opt/kde4/include - /usr/local/include - /usr/include/ - /usr/include/kde - /usr/local/include/kde - ) - - # now the KDE library directory, kxmlcore is new with KDE4 - FIND_LIBRARY(KDE4_XMLCORE_LIBRARY NAMES kxmlcore - PATHS - $ENV{KDEDIR}/lib - /opt/kde/lib - /opt/kde4/lib - /usr/lib - /usr/local/lib - ) - - GET_FILENAME_COMPONENT(KDE4_LIB_DIR ${KDE4_XMLCORE_LIBRARY} PATH ) - - #now search for the dcop utilities - FIND_PROGRAM(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - ) - - FIND_PATH(KDE4_KALYPTUS_DIR kalyptus - $ENV{KDEDIR}/share/apps/dcopidl - /opt/kde/share/apps/dcopidl - /opt/kde4/share/apps/dcopidl - ) - - FIND_PROGRAM(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - ) - - FIND_PROGRAM(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - ) - - FIND_PROGRAM(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - ) - -endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - - -##################### and now the platform specific stuff ############################ - - -if(UNIX AND NOT APPLE) - FIND_PACKAGE(X11 REQUIRED) - set(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) -endif(UNIX AND NOT APPLE) - - -# Set a default build type for single-configuration -# CMake generators if no build type is set. -IF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) - SET(CMAKE_BUILD_TYPE RelWithDebInfo) -ENDIF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) - - -if (WIN32) - - if(CYGWIN) - message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") - endif(CYGWIN) - - FIND_PACKAGE(KDEWIN32 REQUIRED) - - set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) - set( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) - - # windows, mingw - if(MINGW) - #hmmm, something special to do here ? - endif(MINGW) - - # windows, microsoft compiler - if(MSVC) - set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) - IF(CMAKE_COMPILER_2005) - ADD_DEFINITIONS( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) - ENDIF(CMAKE_COMPILER_2005) - endif(MSVC) - -endif (WIN32) - -# also use /usr/local by default under UNIX, including Mac OS X -if (UNIX) - link_directories(/usr/local/lib) - include_directories(/usr/local/include) -endif (UNIX) - - -# only on linux, but NOT e.g. on FreeBSD: -if (CMAKE_SYSTEM_NAME MATCHES Linux) - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - # optimization flags are set further below for the various build types - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") -endif (CMAKE_SYSTEM_NAME MATCHES Linux) - - -# works on FreeBSD, NOT tested on NetBSD and OpenBSD -if (CMAKE_SYSTEM_NAME MATCHES BSD) - set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") - # optimization flags are set further below for the various build types - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -endif (CMAKE_SYSTEM_NAME MATCHES BSD) - - -# This will need to be modified later to support either Qt/X11 or Qt/Mac builds -if(APPLE) - - set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) - - # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow - # -undefined dynamic_lookup; in the future we should do this programmatically - # hmm... why doesn't this work? - set (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) - - # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default - # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented - # or perhaps it already is, and I just don't know where to look ;) - - set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") - set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") - #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") - #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") - - # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex - # optimization flags are set below for the various build types - set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") -endif(APPLE) - - -# compiler specific stuff, maybe this should be done differently, Alex - -if (MSVC) - set (KDE4_ENABLE_EXCEPTIONS -EHsc) -endif(MSVC) - -if (CMAKE_COMPILER_IS_GNUCXX) - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) - # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-O0 -g") -endif (CMAKE_COMPILER_IS_GNUCXX) - -# it seems we prefer not to use a different postfix for debug libs, Alex -# SET(CMAKE_DEBUG_POSTFIX "_debug") - -########### end of platform specific stuff ########################## - - -# KDE4Macros.cmake contains all the KDE specific macros -INCLUDE(KDE4Macros) - - -# decide whether KDE4 has been found -if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) - set(KDE4_FOUND TRUE) -else (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) - set(KDE4_FOUND FALSE) -endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) - - -MACRO (KDE4_PRINT_RESULTS) - if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") - else(KDE4_INCLUDE_DIR) - message(STATUS "Didn't find KDE4 headers") - endif(KDE4_INCLUDE_DIR) - - if(KDE4_LIB_DIR) - message(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") - else(KDE4_LIB_DIR) - message(STATUS "Didn't find KDE4 core library") - endif(KDE4_LIB_DIR) - - if(KDE4_DCOPIDL_EXECUTABLE) - message(STATUS "Found KDE4 dcopidl preprocessor: ${KDE4_DCOPIDL_EXECUTABLE}") - else(KDE4_DCOPIDL_EXECUTABLE) - message(STATUS "Didn't find the KDE4 dcopidl preprocessor") - endif(KDE4_DCOPIDL_EXECUTABLE) - - if(KDE4_DCOPIDL2CPP_EXECUTABLE) - message(STATUS "Found KDE4 dcopidl2cpp preprocessor: ${KDE4_DCOPIDL2CPP_EXECUTABLE}") - else(KDE4_DCOPIDL2CPP_EXECUTABLE) - message(STATUS "Didn't find the KDE4 dcopidl2cpp preprocessor") - endif(KDE4_DCOPIDL2CPP_EXECUTABLE) - - if(KDE4_KCFGC_EXECUTABLE) - message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") - else(KDE4_KCFGC_EXECUTABLE) - message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") - endif(KDE4_KCFGC_EXECUTABLE) -ENDMACRO (KDE4_PRINT_RESULTS) - - -if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) - #bail out if something wasn't found - KDE4_PRINT_RESULTS() - message(FATAL_ERROR "Could NOT find everything required for compiling KDE 4 programs") -endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) - - -if (NOT KDE4Internal_FIND_QUIETLY) - KDE4_PRINT_RESULTS() -endif (NOT KDE4Internal_FIND_QUIETLY) - -#add the found Qt and KDE include directories to the current include path -set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) - -# NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS ) diff --git a/modules/remove_files.cmake.in b/modules/remove_files.cmake.in new file mode 100644 index 00000000..41cfcdb7 --- /dev/null +++ b/modules/remove_files.cmake.in @@ -0,0 +1,2 @@ + +exec_program( ${CMAKE_COMMAND} ARGS -E remove ${FILES_TO_REMOVE} ) -- cgit v1.2.1 From 11073b50b46982ba2507e0dafe33d9af2bf1bc99 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 2 Mar 2006 14:50:35 +0000 Subject: Search libXt svn path=/trunk/KDE/kdelibs/; revision=515065 --- modules/FindX11.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 79e43bf4..02f5d43c 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -49,6 +49,7 @@ if (UNIX) FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -221,6 +222,7 @@ if (UNIX) X11_XTest_INCLUDE_PATH X11_Xcursor_LIB X11_Xcursor_INCLUDE_PATH + X11_Xt_LIB X11_LIBRARIES ) -- cgit v1.2.1 From 1f92c73dba4b55d9f2306aeb7ba4de540151dbc8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 2 Mar 2006 22:03:54 +0000 Subject: -prepare the KDE3 files for moving to cmake cvs -added the variables formerly sitting in kdebase/cmake/modules/FindKDE4.cmake -added export_library_dependencies(KDELibsDependencies.cmake) command to kdelibs/CMakeLists.txt, this file will be installed and used later on by FindKDE4Internal.cmake when stuff != kdelibs is compiled Please have a look at KDELibsDependencies.cmake to see what it contains. The variables set there still have to be used in FindKDE4Internal.cmake for setting the KDE4_FOO_LIBRARIES() varaibles, I only did it unitl now for kdeui. Alex CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=515162 --- modules/FindKDE3.cmake | 114 ++++++++++++++++---------------- modules/FindKDE4Internal.cmake | 24 +++++++ modules/KDE3Macros.cmake | 144 ++++++++++++++++++++--------------------- 3 files changed, 153 insertions(+), 129 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index d6945cdb..68dd62e2 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -27,8 +27,8 @@ CMAKE_MINIMUM_REQUIRED(VERSION "2.3.3") -set(QT_MT_REQUIRED TRUE) -#set(QT_MIN_VERSION "3.0.0") +SET(QT_MT_REQUIRED TRUE) +#SET(QT_MIN_VERSION "3.0.0") #this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt3 REQUIRED) @@ -37,28 +37,28 @@ FIND_PACKAGE(X11 REQUIRED) #add the definitions found by FindQt to the current definitions #ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) -set(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) +SET(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) #add some KDE specific stuff -set(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -D_GNU_SOURCE) +SET(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -D_GNU_SOURCE) #only on linux, but NOT e.g. on FreeBSD: -if(CMAKE_SYSTEM_NAME MATCHES "Linux") - set (KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE) - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") -endif(CMAKE_SYSTEM_NAME MATCHES "Linux") +IF(CMAKE_SYSTEM_NAME MATCHES "Linux") + SET (KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE) + SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") +ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux") # works on FreeBSD, NOT tested on NetBSD and OpenBSD -if (CMAKE_SYSTEM_NAME MATCHES BSD) - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -endif (CMAKE_SYSTEM_NAME MATCHES BSD) +IF (CMAKE_SYSTEM_NAME MATCHES BSD) + SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") +ENDIF (CMAKE_SYSTEM_NAME MATCHES BSD) -#set(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") -#set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") -#set(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") +#SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") +#SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") +#SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") #now try to find some kde stuff @@ -111,60 +111,60 @@ FIND_PROGRAM(KDE3_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS # KDE3Macros.cmake contains all the KDE specific macros INCLUDE(KDE3Macros) -#set KDE3_FOUND -if (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) - set(KDE3_FOUND TRUE) -else (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) - set(KDE3_FOUND FALSE) -endif (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) +#SET KDE3_FOUND +IF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) + SET(KDE3_FOUND TRUE) +ELSE (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) + SET(KDE3_FOUND FALSE) +ENDIF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) MACRO (KDE3_PRINT_RESULTS) - if(KDE3_INCLUDE_DIR) - message(STATUS "Found KDE3 include dir: ${KDE3_INCLUDE_DIR}") - else(KDE3_INCLUDE_DIR) - message(STATUS "Didn't find KDE3 headers") - endif(KDE3_INCLUDE_DIR) - - if(KDE3_LIB_DIR) - message(STATUS "Found KDE3 library dir: ${KDE3_LIB_DIR}") - else(KDE3_LIB_DIR) - message(STATUS "Didn't find KDE3 core library") - endif(KDE3_LIB_DIR) - - if(KDE3_DCOPIDL_EXECUTABLE) - message(STATUS "Found KDE3 dcopidl preprocessor: ${KDE3_DCOPIDL_EXECUTABLE}") - else(KDE3_DCOPIDL_EXECUTABLE) - message(STATUS "Didn't find the KDE3 dcopidl preprocessor") - endif(KDE3_DCOPIDL_EXECUTABLE) - - if(KDE3_DCOPIDL2CPP_EXECUTABLE) - message(STATUS "Found KDE3 dcopidl2cpp preprocessor: ${KDE3_DCOPIDL2CPP_EXECUTABLE}") - else(KDE3_DCOPIDL2CPP_EXECUTABLE) - message(STATUS "Didn't find the KDE3 dcopidl2cpp preprocessor") - endif(KDE3_DCOPIDL2CPP_EXECUTABLE) - - if(KDE3_KCFGC_EXECUTABLE) - message(STATUS "Found KDE3 kconfig_compiler preprocessor: ${KDE3_KCFGC_EXECUTABLE}") - else(KDE3_KCFGC_EXECUTABLE) - message(STATUS "Didn't find the KDE3 kconfig_compiler preprocessor") - endif(KDE3_KCFGC_EXECUTABLE) + IF(KDE3_INCLUDE_DIR) + MESSAGE(STATUS "Found KDE3 include dir: ${KDE3_INCLUDE_DIR}") + ELSE(KDE3_INCLUDE_DIR) + MESSAGE(STATUS "Didn't find KDE3 headers") + ENDIF(KDE3_INCLUDE_DIR) + + IF(KDE3_LIB_DIR) + MESSAGE(STATUS "Found KDE3 library dir: ${KDE3_LIB_DIR}") + ELSE(KDE3_LIB_DIR) + MESSAGE(STATUS "Didn't find KDE3 core library") + ENDIF(KDE3_LIB_DIR) + + IF(KDE3_DCOPIDL_EXECUTABLE) + MESSAGE(STATUS "Found KDE3 dcopidl preprocessor: ${KDE3_DCOPIDL_EXECUTABLE}") + ELSE(KDE3_DCOPIDL_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE3 dcopidl preprocessor") + ENDIF(KDE3_DCOPIDL_EXECUTABLE) + + IF(KDE3_DCOPIDL2CPP_EXECUTABLE) + MESSAGE(STATUS "Found KDE3 dcopidl2cpp preprocessor: ${KDE3_DCOPIDL2CPP_EXECUTABLE}") + ELSE(KDE3_DCOPIDL2CPP_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE3 dcopidl2cpp preprocessor") + ENDIF(KDE3_DCOPIDL2CPP_EXECUTABLE) + + IF(KDE3_KCFGC_EXECUTABLE) + MESSAGE(STATUS "Found KDE3 kconfig_compiler preprocessor: ${KDE3_KCFGC_EXECUTABLE}") + ELSE(KDE3_KCFGC_EXECUTABLE) + MESSAGE(STATUS "Didn't find the KDE3 kconfig_compiler preprocessor") + ENDIF(KDE3_KCFGC_EXECUTABLE) ENDMACRO (KDE3_PRINT_RESULTS) -if (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) +IF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) #bail out if something wasn't found KDE3_PRINT_RESULTS() - message(FATAL_ERROR "Could NOT find everything required for compiling KDE 3 programs") + MESSAGE(FATAL_ERROR "Could NOT find everything required for compiling KDE 3 programs") -endif (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) +ENDIF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) -if (NOT KDE3_FIND_QUIETLY) +IF (NOT KDE3_FIND_QUIETLY) KDE3_PRINT_RESULTS() -endif (NOT KDE3_FIND_QUIETLY) +ENDIF (NOT KDE3_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path -set(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) +SET(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) #INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR} .) #LINK_DIRECTORIES(${KDE3_LIB_DIR}) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 55bfdb74..8c2fd266 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -113,6 +113,30 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) + # this file contains all dependencies of all libraries of kdelibs, Alex + include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + +# the following variables should be named KDE4_KIO_LIBRARIES etc +# Alex + + set(LIB_KDECORE ${QT_AND_KDECORE_LIBS} ${QT_QTGUI_LIBRARY} ${X11_X11_LIB} DCOP ${ZLIB_LIBRARY}) + + # kdeui_LIB_DEPENDS comes from KDELibsDependencies.cmake, Alex + set(LIB_KDEUI ${kdeui_LIB_DEPENDS} kdeui) + +message(STATUS "kdeui: ${LIB_KDEUI}") + + set(LIB_KIO ${LIB_KDEUI} kio) + + set(LIB_KPARTS ${LIB_KIO} kparts) + + set(LIB_KUTILS ${LIB_KPARTS} kutils) + + set(LIB_KDE3SUPPORT ${QT_QT3SUPPORT_LIBRARY} ${LIB_KUTILS} kde3support) + + + # ... but NOT otherwise set( _KDE4_DCOPIDL2CPP_DEP ) set( _KDE4_KCONFIG_COMPILER_DEP) diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index f21b6dcb..da2a0625 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -26,21 +26,21 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) - set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - if (NOT HAVE_${_basename}_KIDL_RULE) - set(HAVE_${_basename}_KIDL_RULE ON) + IF (NOT HAVE_${_basename}_KIDL_RULE) + SET(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE3_DCOPIDL_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} DEPENDS ${_tmp_FILE} ) - endif (NOT HAVE_${_basename}_KIDL_RULE) + ENDIF (NOT HAVE_${_basename}_KIDL_RULE) - if (NOT HAVE_${_basename}_SKEL_RULE) - set(HAVE_${_basename}_SKEL_RULE ON) + IF (NOT HAVE_${_basename}_SKEL_RULE) + SET(HAVE_${_basename}_SKEL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} @@ -48,9 +48,9 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) DEPENDS ${_kidl} ) - endif (NOT HAVE_${_basename}_SKEL_RULE) + ENDIF (NOT HAVE_${_basename}_SKEL_RULE) - set(${_sources} ${${_sources}} ${_skel}) + SET(${_sources} ${${_sources}} ${_skel}) ENDFOREACH (_current_FILE) @@ -64,11 +64,11 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) - set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) + SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) + SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - if (NOT HAVE_${_basename}_KIDL_RULE) - set(HAVE_${_basename}_KIDL_RULE ON) + IF (NOT HAVE_${_basename}_KIDL_RULE) + SET(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} @@ -77,11 +77,11 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) DEPENDS ${tmp_FILE} ) - endif (NOT HAVE_${_basename}_KIDL_RULE) + ENDIF (NOT HAVE_${_basename}_KIDL_RULE) - if (NOT HAVE_${_basename}_STUB_RULE) - set(HAVE_${_basename}_STUB_RULE ON) + IF (NOT HAVE_${_basename}_STUB_RULE) + SET(HAVE_${_basename}_STUB_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} @@ -89,9 +89,9 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) DEPENDS ${_kidl} ) - endif (NOT HAVE_${_basename}_STUB_RULE) + ENDIF (NOT HAVE_${_basename}_STUB_RULE) - set(${_sources} ${${_sources}} ${_stub_CPP}) + SET(${_sources} ${${_sources}} ${_stub_CPP}) ENDFOREACH (_current_FILE) @@ -108,15 +108,15 @@ MACRO(KDE3_ADD_KCFG_FILES _sources) FILE(READ ${_tmp_FILE} _contents) STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+)\n.*$" "\\2" _kcfg_FILE "${_contents}") - set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE3_KCFGC_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ) - set(${_sources} ${${_sources}} ${_src_FILE}) + SET(${_sources} ${${_sources}} ${_src_FILE}) ENDFOREACH (_current_FILE) @@ -131,7 +131,7 @@ MACRO(KDE3_ADD_MOC_FILES _sources) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} @@ -139,7 +139,7 @@ MACRO(KDE3_ADD_MOC_FILES _sources) DEPENDS ${_tmp_FILE} ) - set(${_sources} ${${_sources}} ${_moc}) + SET(${_sources} ${${_sources}} ${_moc}) ENDFOREACH (_current_FILE) ENDMACRO(KDE3_ADD_MOC_FILES) @@ -155,9 +155,9 @@ MACRO(KDE3_ADD_UI_FILES _sources ) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - set(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_header} COMMAND ${QT_UIC_EXECUTABLE} @@ -187,19 +187,19 @@ MACRO(KDE3_ADD_UI_FILES _sources ) DEPENDS ${_header} ) - set(${_sources} ${${_sources}} ${_src} ${_moc} ) + SET(${_sources} ${${_sources}} ${_src} ${_moc} ) ENDFOREACH (_current_FILE) ENDMACRO(KDE3_ADD_UI_FILES) MACRO(KDE3_AUTOMOC) - set(_matching_FILES ) + SET(_matching_FILES ) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - if (EXISTS ${_tmp_FILE}) + IF (EXISTS ${_tmp_FILE}) FILE(READ ${_tmp_FILE} _contents) @@ -207,14 +207,14 @@ MACRO(KDE3_AUTOMOC) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - if(_match) + IF(_match) FOREACH (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) -# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - set(_header ${_abs_PATH}/${_basename}.h) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) +# SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} @@ -225,9 +225,9 @@ MACRO(KDE3_AUTOMOC) MACRO_ADD_FILE_DEPENDENCIES(${_tmp_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) - endif(_match) + ENDIF(_match) - endif (EXISTS ${_tmp_FILE}) + ENDIF (EXISTS ${_tmp_FILE}) ENDFOREACH (_current_FILE) ENDMACRO(KDE3_AUTOMOC) @@ -236,7 +236,7 @@ MACRO(KDE3_INSTALL_ICONS _theme) ADD_CUSTOM_TARGET(install_icons ) SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") FILE(GLOB _icons *.png) FOREACH(_current_ICON ${_icons} ) @@ -244,30 +244,30 @@ MACRO(KDE3_INSTALL_ICONS _theme) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") - set(_icon_GROUP "actions") + SET(_icon_GROUP "actions") - if(${_group} STREQUAL "mime") - set(_icon_GROUP "mimetypes") - endif(${_group} STREQUAL "mime") + IF(${_group} STREQUAL "mime") + SET(_icon_GROUP "mimetypes") + ENDIF(${_group} STREQUAL "mime") - if(${_group} STREQUAL "filesys") - set(_icon_GROUP "filesystems") - endif(${_group} STREQUAL "filesys") + IF(${_group} STREQUAL "filesys") + SET(_icon_GROUP "filesystems") + ENDIF(${_group} STREQUAL "filesys") - if(${_group} STREQUAL "device") - set(_icon_GROUP "devices") - endif(${_group} STREQUAL "device") + IF(${_group} STREQUAL "device") + SET(_icon_GROUP "devices") + ENDIF(${_group} STREQUAL "device") - if(${_group} STREQUAL "app") - set(_icon_GROUP "apps") - endif(${_group} STREQUAL "app") + IF(${_group} STREQUAL "app") + SET(_icon_GROUP "apps") + ENDIF(${_group} STREQUAL "app") - if(${_group} STREQUAL "action") - set(_icon_GROUP "actions") - endif(${_group} STREQUAL "action") + IF(${_group} STREQUAL "action") + SET(_icon_GROUP "actions") + ENDIF(${_group} STREQUAL "action") # message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - set(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) + SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") @@ -280,7 +280,7 @@ MACRO(KDE3_INSTALL_LIBTOOL_FILE _target) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) - set(_laname ${CMAKE_CURRENT_BINARY_DIR}/${_laname}.la) + SET(_laname ${CMAKE_CURRENT_BINARY_DIR}/${_laname}.la) FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") @@ -317,23 +317,23 @@ OPTION(KDE3_BUILD_TESTS "Build the tests") MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) -#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty - if (${_with_PREFIX} STREQUAL "WITH_PREFIX") - set(_first_SRC) - else (${_with_PREFIX} STREQUAL "WITH_PREFIX") - set(_first_SRC ${_with_PREFIX}) - endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") - - if (KDE3_ENABLE_FINAL) +#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise SET the prefix empty + IF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + SET(_first_SRC) + ELSE (${_with_PREFIX} STREQUAL "WITH_PREFIX") + SET(_first_SRC ${_with_PREFIX}) + ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX") + + IF (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final.cpp) - else (KDE3_ENABLE_FINAL) + ELSE (KDE3_ENABLE_FINAL) ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) - endif (KDE3_ENABLE_FINAL) + ENDIF (KDE3_ENABLE_FINAL) - if(_first_SRC) + IF(_first_SRC) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") - endif(_first_SRC) + ENDIF(_first_SRC) KDE3_CREATE_LIBTOOL_FILE(${_target_NAME}) @@ -342,12 +342,12 @@ ENDMACRO(KDE3_ADD_KPART) MACRO(KDE3_ADD_KLM _target_NAME ) - if (KDE3_ENABLE_FINAL) + IF (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) - else (KDE3_ENABLE_FINAL) + ELSE (KDE3_ENABLE_FINAL) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) - endif (KDE3_ENABLE_FINAL) + ENDIF (KDE3_ENABLE_FINAL) CONFIGURE_FILE(${KDE3_MODULE_DIR}/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) @@ -359,12 +359,12 @@ ENDMACRO(KDE3_ADD_KLM) MACRO(KDE3_ADD_EXECUTABLE _target_NAME ) - if (KDE3_ENABLE_FINAL) + IF (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp) - else (KDE3_ENABLE_FINAL) + ELSE (KDE3_ENABLE_FINAL) ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) - endif (KDE3_ENABLE_FINAL) + ENDIF (KDE3_ENABLE_FINAL) ENDMACRO(KDE3_ADD_EXECUTABLE) -- cgit v1.2.1 From e74de06077769fde12ace460d1043ad233f68c36 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 3 Mar 2006 11:04:50 +0000 Subject: Detect Xscreensaver extension svn path=/trunk/KDE/kdelibs/; revision=515293 --- modules/FindX11.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 02f5d43c..a14a1904 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -39,6 +39,7 @@ if (UNIX) FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) @@ -104,6 +105,10 @@ if (UNIX) set(X11_Xcursor_FOUND TRUE) endif(X11_Xcursor_INCLUDE_PATH) + if(X11_Xscreensaver_INCLUDE_PATH) + set(X11_Xscreensaver_FOUND TRUE) + endif(X11_Xscreensaver_INCLUDE_PATH) + if(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) set(X11_kompmgr_FOUND TRUE) endif(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) -- cgit v1.2.1 From 8b05e84f1cd212fe8101ee7ad56a495bca107941 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 3 Mar 2006 16:26:07 +0000 Subject: Search dpms extension (need to improve it) svn path=/trunk/KDE/kdelibs/; revision=515395 --- modules/FindX11.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index a14a1904..a558c982 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -40,6 +40,7 @@ if (UNIX) FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) @@ -109,6 +110,10 @@ if (UNIX) set(X11_Xscreensaver_FOUND TRUE) endif(X11_Xscreensaver_INCLUDE_PATH) + if(X11_dpms_INCLUDE_PATH) + set(X11_dpms_FOUND TRUE) + endif(X11_dpms_INCLUDE_PATH) + if(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) set(X11_kompmgr_FOUND TRUE) endif(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) @@ -227,6 +232,7 @@ if (UNIX) X11_XTest_INCLUDE_PATH X11_Xcursor_LIB X11_Xcursor_INCLUDE_PATH + X11_dpms_INCLUDE_PATH X11_Xt_LIB X11_LIBRARIES ) -- cgit v1.2.1 From d4f021430870dba87944a646295116a81d90e852 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 4 Mar 2006 16:07:49 +0000 Subject: disable warning 4661 for msvc (A member of the template class is not defined) svn path=/trunk/KDE/kdelibs/; revision=515685 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8c2fd266..11252ac1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -236,6 +236,7 @@ if (WIN32) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) IF(CMAKE_COMPILER_2005) ADD_DEFINITIONS( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) + SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) ENDIF(CMAKE_COMPILER_2005) endif(MSVC) -- cgit v1.2.1 From 200f848a4b2964fabe89192b8fd05d300f08af31 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 5 Mar 2006 10:10:28 +0000 Subject: Search Xss extension (not perfect) svn path=/trunk/KDE/kdelibs/; revision=515896 --- modules/FindX11.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index a558c982..6e7e4c7c 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -43,6 +43,7 @@ if (UNIX) FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) @@ -234,6 +235,7 @@ if (UNIX) X11_Xcursor_INCLUDE_PATH X11_dpms_INCLUDE_PATH X11_Xt_LIB + X11_Xss_LIB X11_LIBRARIES ) -- cgit v1.2.1 From 196aae84d9e0dda2dd9aecdf64e809ab447eface Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 6 Mar 2006 12:55:50 +0000 Subject: Search Xkb svn path=/trunk/KDE/kdelibs/; revision=516249 --- modules/FindX11.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 6e7e4c7c..b1ae0b0f 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -41,9 +41,11 @@ if (UNIX) FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) + FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) @@ -115,6 +117,10 @@ if (UNIX) set(X11_dpms_FOUND TRUE) endif(X11_dpms_INCLUDE_PATH) + if( X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) + set(X11_Xkb_FOUND TRUE) + endif( X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) + if(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) set(X11_kompmgr_FOUND TRUE) endif(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) -- cgit v1.2.1 From db97f53b0e6ddc1b603c350b8c6817ef1d1add24 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 6 Mar 2006 23:10:09 +0000 Subject: -shell wrapper script which sets (DY)LD_LIBRARYPATH for executables without RPATH. Alex svn path=/trunk/KDE/kdelibs/; revision=516382 --- modules/kde4_exec_via_sh.cmake | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100755 modules/kde4_exec_via_sh.cmake (limited to 'modules') diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake new file mode 100755 index 00000000..8616322e --- /dev/null +++ b/modules/kde4_exec_via_sh.cmake @@ -0,0 +1,6 @@ +#!/bin/sh +# created by cmake, don't edit, changes will be lost + + +${_library_path_variable}=${_ld_library_path}:$${_library_path_variable} ${_executable} $@ + -- cgit v1.2.1 From 37e7931251c36b4c195b08be14864926a02276ac Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 7 Mar 2006 12:41:37 +0000 Subject: Search Xau lib svn path=/trunk/KDE/kdelibs/; revision=516496 --- modules/FindX11.cmake | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index b1ae0b0f..5f956ea9 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -52,9 +52,10 @@ if (UNIX) FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -62,7 +63,7 @@ if (UNIX) if(X11_Xlib_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH}) - endif(X11_Xlib_INCLUDE_PATH) + endif(X11_Xlib_INCLUDE_PATH) if(X11_Xutil_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) @@ -76,6 +77,11 @@ if (UNIX) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) endif(X11_Xext_LIB) + if(X11_Xau_LIB) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) + set(X11_Xau_FOUND TRUE) + endif(X11_Xau_LIB) + if(X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) set(X11_Xaccess_FOUND TRUE) set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) @@ -218,6 +224,7 @@ if (UNIX) X11_X11_INCLUDE_PATH X11_X11_LIB X11_Xext_LIB + X11_Xau_LIB X11_Xlib_INCLUDE_PATH X11_Xutil_INCLUDE_PATH X11_Xcomposite_INCLUDE_PATH -- cgit v1.2.1 From b06955eeb4d577da65b52c8a0d68602be790571f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 7 Mar 2006 12:46:04 +0000 Subject: oops typo svn path=/trunk/KDE/kdelibs/; revision=516499 --- modules/FindX11.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 5f956ea9..c86e7b56 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -52,7 +52,7 @@ if (UNIX) FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) -- cgit v1.2.1 From c93f4903f1b3daa7f4fa6aa12430f19efa79703a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 7 Mar 2006 13:36:00 +0000 Subject: Search Xdmcp svn path=/trunk/KDE/kdelibs/; revision=516520 --- modules/FindX11.cmake | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index c86e7b56..d936f8af 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -43,6 +43,7 @@ if (UNIX) FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) @@ -56,6 +57,7 @@ if (UNIX) FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) if(X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -81,7 +83,12 @@ if (UNIX) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) set(X11_Xau_FOUND TRUE) endif(X11_Xau_LIB) - + + if(X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xdmcp_LIB}) + set(X11_Xdmcp_FOUND TRUE) + endif(X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) + if(X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) set(X11_Xaccess_FOUND TRUE) set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) @@ -249,6 +256,7 @@ if (UNIX) X11_dpms_INCLUDE_PATH X11_Xt_LIB X11_Xss_LIB + X11_Xdmcp_LIB X11_LIBRARIES ) -- cgit v1.2.1 From 82184ad81cb8de626f765c07432fdab1b5f6dd0a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Mar 2006 22:51:17 +0000 Subject: -implemented RPATH handling, but disabled for now to enable it again, remove the line 104, where KDE4_NEED_WRAPPER_SCRIPTS is set to false again If you have current cmake cvs, you can then: -enable CMAKE_SKIP_RPATH using ccmake, then everything will be built without RPATH -disable CMAKE_SKIP_RPATH and enable KDE4_RPATH_TO_BUILD_DIR, then everything will be built with RPATH pointing to both the build and the install dir -disable CMAKE_SKIP_RPATH and disable KDE4_RPATH_TO_BUILD_DIR, then everything will be built with RPATH pointing to the install dir In all three cases no relinking will happen during install. If built without RPATH to the builddir, the executables are executed using wrapper scripts named .sh, e.g. kconfig_compiler.sh. some changes to the kde3 stuff: -renamed KDE3_ADD_KLM to KDE3_ADD_KDEINIT_EXECUTABLE -removed KDE3_PLACEHOLDER -removed KDE3_CREATE_LIBTOOL_FILE to KDE3_INSTALL_LIBTOOL_FILE Please check whether it still works for you and let me know. I plan to move the KDE3 related files to cmake RSN. CCMAIL: kde-buildsystem@kde.org CCMAIL: b_mann@gmx.de CCMAIL: christian.loose@hamburg.de Alex svn path=/trunk/KDE/kdelibs/; revision=516642 --- modules/CMakeLists.txt | 4 + modules/FindKDE3.cmake | 115 ++++++++++++++++++--------- modules/FindKDE4Internal.cmake | 174 +++++++++++++++++++++++++++-------------- modules/KDE3Macros.cmake | 16 +--- modules/KDE4Macros.cmake | 31 +++++--- 5 files changed, 223 insertions(+), 117 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index d08d9abe..8f50adc8 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -13,3 +13,7 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/remove_files.cmake.in ${CMAKE_CURRENT install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) +#file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") +#foreach( _current_FILE ${FILES_TO_REMOVE}) +# file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} ) +#endforeach( _current_FILE) diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index 68dd62e2..5b2bd104 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -1,31 +1,70 @@ # - Find the KDE3 include and library dirs, KDE preprocessors and define a some macros # -# KDE3_DEFINITIONS -# KDE3_INCLUDE_DIR -# KDE3_INCLUDE_DIRS -# KDE3_LIB_DIR -# KDE3_SERVICETYPES_DIR -# KDE3_DCOPIDL_EXECUTABLE -# KDE3_DCOPIDL2CPP_EXECUTABLE -# KDE3_KCFGC_EXECUTABLE -# KDE3_FOUND -# it also adds the following macros (from KDE3Macros.cmake) -# ADD_FILE_DEPENDANCY -# KDE3_ADD_DCOP_SKELS -# KDE3_ADD_DCOP_STUBS -# KDE3_ADD_MOC_FILES -# KDE3_ADD_UI_FILES -# KDE3_ADD_KCFG_FILES -# KDE3_AUTOMOC -# KDE3_PLACEHOLDER -# KDE3_INSTALL_LIBTOOL_FILE -# KDE3_CREATE_FINAL_FILE -# KDE3_ADD_KPART -# KDE3_ADD_KLM -# KDE3_ADD_EXECUTABLE - - -CMAKE_MINIMUM_REQUIRED(VERSION "2.3.3") +# This module defines the following variables: +# KDE3_DEFINITIONS - compiler definitions required for compiling KDE software +# KDE3_INCLUDE_DIR - the KDE include directory +# KDE3_INCLUDE_DIRS - the KDE and the Qt include directory, for use with INCLUDE_DIRECTORIES() +# KDE3_LIB_DIR - the directory where the KDE libraries are installed, for use with LINK_DIR() +# QT_AND_KDECORE_LIBRARIES - this contains both the Qt and the kdecore library +# KDE3_DCOPIDL_EXECUTABLE - the dcopidl executable +# KDE3_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable +# KDE3_KCFGC_EXECUTABLE - the kconfig_compiler executable +# KDE3_FOUND - set to TRUE if all of the above has been found +# +# The following user adjustable options are provided: +# +# KDE3_ENABLE_FINAL - enable this for KDE-style enable-final all-in-one compilation +# KDE3_BUILD_TESTS - enable this to build KDE testcases +# +# +# It also adds the following macros (from KDE3Macros.cmake) +# SRCS_VAR is always the variable which contains the list of source files for your application or library. +# +# KDE3_AUTOMOC(file1 ... fileN) +# Call this if you want to have automatic moc file handling. +# This means if you include "foo.moc" in the source file foo.cpp +# a moc file for the header foo.h will be created automatically. +# +# KDE3_ADD_MOC_FILES(SRCS_VAR file1 ... fileN ) +# If you don't use the KDE3_AUTOMOC() macro, for the files +# listed here moc files will be created (named "foo.moc.cpp") +# +# KDE3_ADD_DCOP_SKELS(SRCS_VAR header1.h ... headerN.h ) +# Use this to generate DCOP skeletions from the listed headers. +# +# KDE3_ADD_DCOP_STUBS(SRCS_VAR header1.h ... headerN.h ) +# Use this to generate DCOP stubs from the listed headers. +# +# KDE3_ADD_UI_FILES(SRCS_VAR file1.ui ... fileN.ui ) +# Use this to add the Qt designer ui files to your application/library. +# +# KDE3_ADD_KCFG_FILES(SRCS_VAR file1.kcfgc ... fileN.kcfgc ) +# Use this to add KDE kconfig compiler files to your application/library. +# +# KDE3_INSTALL_LIBTOOL_FILE(target) +# This will create and install a simple libtool file for the given target. +# +# KDE3_ADD_EXECUTABLE(name file1 ... fileN ) +# Equivalent to ADD_EXECUTABLE(), but additionally supports KDE3_ENABLE_FINAL +# +# KDE3_ADD_KPART(name [WITH_PREFIX] file1 ... fileN ) +# Create a KDE plugin (KPart, kioslave, etc.) from the given source files. +# It supports KDE3_ENABLE_FINAL +# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. +# It creates and install an appropriate libtool la-file. +# +# KDE3_ADD_KDEINIT_EXECUTABLE(name file1 ... fileN ) +# Create a KDE application in the form of a module loadable via kdeinit. +# It supports KDE3_ENABLE_FINAL. +# A library named kdeinit_ will be created and a small executable which links to it. +# Supports KDE3_ENABLE_FINAL +# +# Author: Alexander Neundorf + +IF(NOT UNIX) + MESSAGE(FATAL_ERROR "Compiling KDE3 applications and libraries under Windows is not supported") +ENDIF(NOT UNIX) + SET(QT_MT_REQUIRED TRUE) #SET(QT_MIN_VERSION "3.0.0") @@ -34,8 +73,6 @@ SET(QT_MT_REQUIRED TRUE) FIND_PACKAGE(Qt3 REQUIRED) FIND_PACKAGE(X11 REQUIRED) -#add the definitions found by FindQt to the current definitions -#ADD_DEFINITIONS(${QT_DEFINITIONS} -DQT_CLEAN_NAMESPACE) SET(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) @@ -85,11 +122,11 @@ FIND_LIBRARY(KDE3_LIB_DIR NAMES kdecore ) #now the KDE service types directory -FIND_PATH(KDE3_SERVICETYPES_DIR ktexteditor.desktop - $ENV{KDEDIR}/share/servicetypes/ - /opt/kde/share/servicetypes/ - /opt/kde3/share/servicetypes/ -) +#FIND_PATH(KDE3_SERVICETYPES_DIR ktexteditor.desktop +# $ENV{KDEDIR}/share/servicetypes/ +# /opt/kde/share/servicetypes/ +# /opt/kde3/share/servicetypes/ +#) #now search for the dcop utilities FIND_PROGRAM(KDE3_DCOPIDL_EXECUTABLE NAME dcopidl PATHS @@ -108,15 +145,17 @@ FIND_PROGRAM(KDE3_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS /opt/kde/bin /opt/kde3/bin) + # KDE3Macros.cmake contains all the KDE specific macros INCLUDE(KDE3Macros) + #SET KDE3_FOUND -IF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) +IF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) SET(KDE3_FOUND TRUE) -ELSE (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) +ELSE (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) SET(KDE3_FOUND FALSE) -ENDIF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_SERVICETYPES_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) +ENDIF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) MACRO (KDE3_PRINT_RESULTS) @@ -152,6 +191,7 @@ MACRO (KDE3_PRINT_RESULTS) ENDMACRO (KDE3_PRINT_RESULTS) + IF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) #bail out if something wasn't found KDE3_PRINT_RESULTS() @@ -159,12 +199,11 @@ IF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) ENDIF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) + IF (NOT KDE3_FIND_QUIETLY) KDE3_PRINT_RESULTS() ENDIF (NOT KDE3_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path SET(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) -#INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR} .) -#LINK_DIRECTORIES(${KDE3_LIB_DIR}) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 11252ac1..65e215b3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -69,6 +69,40 @@ set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this st # set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) +option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") +option(KDE4_BUILD_TESTS "Build the tests") +option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") + + +# RPATH handling +set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) +if (UNIX) + + set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) + + # to disable RPATH completely, set CMAKE_SKIP_RPATH to TRUE + + option(KDE4_RPATH_TO_BUILD_DIR "Compile executables with RPATH set to both the builddir and the installdir, otherwise RPATH will be set to the install dir. You can disable RPATH completely by setting CMAKE_SKIP_RPATH to ON" ON) + + # this avoids relinking during installation + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_SKIP_BUILD_RPATH TRUE) + # this is the list of RPATHs, start empty + + # optionally add the builddir + if (KDE4_RPATH_TO_BUILD_DIR) + set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) + endif (KDE4_RPATH_TO_BUILD_DIR) + + if (CMAKE_SKIP_RPATH) + set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) + endif (CMAKE_SKIP_RPATH) + +endif (UNIX) + +# set it to false again until the next kde release of cmake is required +set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) + #now try to find some kde stuff @@ -76,41 +110,45 @@ set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this st #then enter bootstrap mode if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - message(STATUS "Building kdelibs...") + message(STATUS "Building kdelibs...") - set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) - set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - # adjust dcopidl and the library output path depending on the platform - if (WIN32) - # under windows dcopidl.bat has to be used, except when using MSYS, then the perl script has to be used, Alex - if ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - else ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) - endif ("${CMAKE_GENERATOR}" MATCHES "MSYS") + # adjust dcopidl and the library output path depending on the platform + if (WIN32) + # under windows dcopidl.bat has to be used, except when using MSYS, then the perl script has to be used, Alex + if ("${CMAKE_GENERATOR}" MATCHES "MSYS") + set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + else ("${CMAKE_GENERATOR}" MATCHES "MSYS") + set(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) + endif ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) - else (WIN32) - set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH}) - endif (WIN32) - - set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}) - set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) + set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + else (WIN32) + set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + endif (WIN32) + + set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) + set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) - # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) - - # when building kdelibs, make the dcop and kcfg rules depend on the binaries... - set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) - set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC + if (KDE4_NEED_WRAPPER_SCRIPTS) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) + else (KDE4_NEED_WRAPPER_SCRIPTS) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + endif (KDE4_NEED_WRAPPER_SCRIPTS) + + # when building kdelibs, make the dcop and kcfg rules depend on the binaries... + set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) + set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) - else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) @@ -141,6 +179,7 @@ message(STATUS "kdeui: ${LIB_KDEUI}") set( _KDE4_DCOPIDL2CPP_DEP ) set( _KDE4_KCONFIG_COMPILER_DEP) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + # at first the KDE include direcory # kpassworddialog.h is new with KDE4 FIND_PATH(KDE4_INCLUDE_DIR kpassworddialog.h @@ -201,13 +240,6 @@ endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ##################### and now the platform specific stuff ############################ - -if(UNIX AND NOT APPLE) - FIND_PACKAGE(X11 REQUIRED) - set(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) -endif(UNIX AND NOT APPLE) - - # Set a default build type for single-configuration # CMake generators if no build type is set. IF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) @@ -242,37 +274,43 @@ if (WIN32) endif (WIN32) + # also use /usr/local by default under UNIX, including Mac OS X if (UNIX) link_directories(/usr/local/lib) include_directories(/usr/local/include) -endif (UNIX) + # build the install RPATH + set(CMAKE_INSTALL_RPATH) -# only on linux, but NOT e.g. on FreeBSD: -if (CMAKE_SYSTEM_NAME MATCHES Linux) - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - # optimization flags are set further below for the various build types - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") -endif (CMAKE_SYSTEM_NAME MATCHES Linux) + # optionally add the builddir + if (KDE4_RPATH_TO_BUILD_DIR) + set(CMAKE_INSTALL_RPATH ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/ ) + endif (KDE4_RPATH_TO_BUILD_DIR) + # add the library install dir + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}) + # add the Qt library dir + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${QT_LIBRARY_DIR}) -# works on FreeBSD, NOT tested on NetBSD and OpenBSD -if (CMAKE_SYSTEM_NAME MATCHES BSD) - set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") - # optimization flags are set further below for the various build types - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -endif (CMAKE_SYSTEM_NAME MATCHES BSD) + # building something else than kdelibs/ ? + # then add the dir where the kde libraries are installed + if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) + endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + +endif (UNIX) + + +# UNIX, except OS X +if (UNIX AND NOT APPLE) + find_package(X11 REQUIRED) + set(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) +endif (UNIX AND NOT APPLE) # This will need to be modified later to support either Qt/X11 or Qt/Mac builds -if(APPLE) +if (APPLE) set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) @@ -294,7 +332,29 @@ if(APPLE) # optimization flags are set below for the various build types set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") -endif(APPLE) +endif (APPLE) + + +# only on linux, but NOT e.g. on FreeBSD: +if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + # optimization flags are set further below for the various build types + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") +endif (CMAKE_SYSTEM_NAME MATCHES Linux) + + +# works on FreeBSD, NOT tested on NetBSD and OpenBSD +if (CMAKE_SYSTEM_NAME MATCHES BSD) + set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) + set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") + # optimization flags are set further below for the various build types + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") +endif (CMAKE_SYSTEM_NAME MATCHES BSD) # compiler specific stuff, maybe this should be done differently, Alex diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index da2a0625..eb3f2c01 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -1,5 +1,4 @@ # this file contains the following macros: -# ADD_FILE_DEPENDANCY # KDE3_ADD_DCOP_SKELS # KDE3_ADD_DCOP_STUBS # KDE3_ADD_MOC_FILES @@ -7,10 +6,9 @@ # KDE3_ADD_KCFG_FILES # KDE3_AUTOMOC # KDE3_INSTALL_LIBTOOL_FILE -# KDE3_PLACEHOLDER # KDE3_CREATE_FINAL_FILE # KDE3_ADD_KPART -# KDE3_ADD_KLM +# KDE3_ADD_KDEINIT_EXECUTABLE # KDE3_ADD_EXECUTABLE @@ -165,12 +163,6 @@ MACRO(KDE3_ADD_UI_FILES _sources ) DEPENDS ${_tmp_FILE} ) -# ADD_CUSTOM_COMMAND(OUTPUT ${_src} -# COMMAND uic -# ARGS -nounload -tr tr2i18n -o ${_src} -impl ${_header} ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -# DEPENDS ${_header} -# ) - ADD_CUSTOM_COMMAND(OUTPUT ${_src} COMMAND ${CMAKE_COMMAND} ARGS @@ -335,12 +327,12 @@ MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") ENDIF(_first_SRC) - KDE3_CREATE_LIBTOOL_FILE(${_target_NAME}) + KDE3_INSTALL_LIBTOOL_FILE(${_target_NAME}) ENDMACRO(KDE3_ADD_KPART) -MACRO(KDE3_ADD_KLM _target_NAME ) +MACRO(KDE3_ADD_KDEINIT_EXECUTABLE _target_NAME ) IF (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) @@ -354,7 +346,7 @@ MACRO(KDE3_ADD_KLM _target_NAME ) ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) -ENDMACRO(KDE3_ADD_KLM) +ENDMACRO(KDE3_ADD_KDEINIT_EXECUTABLE) MACRO(KDE3_ADD_EXECUTABLE _target_NAME ) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index fcbb874b..b34c021d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -299,24 +299,24 @@ MACRO(KDE4_INSTALL_ICONS _defaultpath _theme ) # first the png icons FILE(GLOB _icons *.png) - FOREACH(_current_ICON ${_icons} ) + foreach(_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/${_theme}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) - ENDFOREACH (_current_ICON) + ENDforeach (_current_ICON) # and now the svg icons FILE(GLOB _icons *.svgz) - FOREACH (_current_ICON ${_icons} ) + foreach (_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/${_theme}/scalable ${_group} ${_current_ICON} ${_name}) - ENDFOREACH (_current_ICON) + ENDforeach (_current_ICON) INSTALL(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) ENDMACRO(KDE4_INSTALL_ICONS) @@ -376,9 +376,18 @@ MACRO(KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) ENDMACRO(KDE4_CREATE_FINAL_FILES) -OPTION(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") -OPTION(KDE4_BUILD_TESTS "Build the tests") -OPTION(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") +MACRO(KDE4_HANDLE_RPATH _target_NAME) + if (KDE4_NEED_WRAPPER_SCRIPTS) + if (APPLE) + set(_library_path_variable "DYLD_LIBRARY_PATH") + else (APPLE) + set(_library_path_variable "LD_LIBRARY_PATH") + endif (APPLE) + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") + get_target_property(_executable ${_target_NAME} LOCATION ) + configure_file(${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/${_target_NAME}.sh) + endif (KDE4_NEED_WRAPPER_SCRIPTS) +ENDMACRO(KDE4_HANDLE_RPATH) MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) @@ -435,6 +444,7 @@ MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) + KDE4_HANDLE_RPATH(${_target_NAME}) TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) # endif (WIN32) @@ -443,12 +453,13 @@ ENDMACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) - if (KDE4_ENABLE_FINAL) + IF (KDE4_ENABLE_FINAL) KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - else (KDE4_ENABLE_FINAL) + ELSE (KDE4_ENABLE_FINAL) ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) - endif (KDE4_ENABLE_FINAL) + ENDIF (KDE4_ENABLE_FINAL) + KDE4_HANDLE_RPATH(${_target_NAME}) ENDMACRO(KDE4_ADD_EXECUTABLE _target_NAME) -- cgit v1.2.1 From bdb2d72ddf5a343bb16e0f6ce7ab28eb4fa0bfc4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Mar 2006 22:57:00 +0000 Subject: use EXECUTE_PROCESS instead of EXEC_PROGRAM Alex svn path=/trunk/KDE/kdelibs/; revision=516643 --- modules/kde3uic.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/kde3uic.cmake b/modules/kde3uic.cmake index 64751b2e..9aeb7d23 100644 --- a/modules/kde3uic.cmake +++ b/modules/kde3uic.cmake @@ -1,10 +1,11 @@ -EXEC_PROGRAM(uic ARGS +EXECUTE_PROCESS(COMMAND uic -nounload -tr tr2i18n -impl ${KDE_UIC_H_FILE} ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS -) + ERROR_QUIET + ) STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) -- cgit v1.2.1 From f4363cbf7f33cb4f448ec09602bcf3f2ba019b77 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Mar 2006 23:39:26 +0000 Subject: -prepare these two files for moving to cmake Alex svn path=/trunk/KDE/kdelibs/; revision=516651 --- modules/CheckPrototypeExists.cmake | 16 +++++++---- modules/CheckTypeSize.cmake | 57 +++++++++++++++++++------------------- 2 files changed, 39 insertions(+), 34 deletions(-) (limited to 'modules') diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index 1c994ed4..ed0945df 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -5,16 +5,22 @@ # HEADER - the header(s) where the prototype should be declared # VARIABLE - variable to store the result # +# The following variables may be set before calling this macro to +# modify the way the check is run: +# +# CMAKE_REQUIRED_FLAGS = string of compile command line flags +# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) +# CMAKE_REQUIRED_INCLUDES = list of include directories INCLUDE(CheckCXXSourceCompiles) MACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) - set(_INCLUDE_FILES) - foreach(it ${_HEADER}) - set(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") - endforeach(it) + SET(_INCLUDE_FILES) + FOREACH(it ${_HEADER}) + SET(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") + ENDFOREACH(it) - set(_CHECK_PROTO_EXISTS_SOURCE_CODE " + SET(_CHECK_PROTO_EXISTS_SOURCE_CODE " ${_INCLUDE_FILES} int main() { diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake index 10fcfcd7..f907d311 100755 --- a/modules/CheckTypeSize.cmake +++ b/modules/CheckTypeSize.cmake @@ -2,41 +2,40 @@ # CHECK_TYPE_SIZE(TYPE VARIABLE) # Check if the type exists and determine size of type. if the type # exists, the size will be stored to the variable. -# # VARIABLE - variable to store size if the type exists. # HAVE_${VARIABLE} - does the variable exists or NOT MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) - set(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) - if("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - set(CHECK_TYPE_SIZE_TYPE "${TYPE}") - set(MACRO_CHECK_TYPE_SIZE_FLAGS + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) + IF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS "${CMAKE_REQUIRED_FLAGS}") - foreach(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) - if("${def}") - set(MACRO_CHECK_TYPE_SIZE_FLAGS + FOREACH(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) + IF("${def}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") - endif("${def}") - endforeach(def) - set(CHECK_TYPE_SIZE_PREINCLUDE) - set(CHECK_TYPE_SIZE_PREMAIN) - foreach(def ${CMAKE_EXTRA_INCLUDE_FILES}) - set(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") - endforeach(def) + ENDIF("${def}") + ENDFOREACH(def) + SET(CHECK_TYPE_SIZE_PREINCLUDE) + SET(CHECK_TYPE_SIZE_PREMAIN) + FOREACH(def ${CMAKE_EXTRA_INCLUDE_FILES}) + SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") + ENDFOREACH(def) CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" CHECK_TYPE_SIZE_FILE_CONTENT) - message(STATUS "Check size of ${TYPE}") - if(CMAKE_REQUIRED_LIBRARIES) - set(CHECK_TYPE_SIZE_ADD_LIBRARIES + MESSAGE(STATUS "Check size of ${TYPE}") + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_TYPE_SIZE_ADD_LIBRARIES "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - endif(CMAKE_REQUIRED_LIBRARIES) + ENDIF(CMAKE_REQUIRED_LIBRARIES) - if(CMAKE_REQUIRED_INCLUDES) - set(CHECK_TYPE_SIZE_ADD_INCLUDES + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_TYPE_SIZE_ADD_INCLUDES "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - endif(CMAKE_REQUIRED_INCLUDES) + ENDIF(CMAKE_REQUIRED_INCLUDES) TRY_RUN(${VARIABLE} HAVE_${VARIABLE} ${CMAKE_BINARY_DIR} @@ -45,15 +44,15 @@ MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) "${CHECK_TYPE_SIZE_ADD_INCLUDES}" "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" OUTPUT_VARIABLE OUTPUT) - if(HAVE_${VARIABLE}) - message(STATUS "Check size of ${TYPE} - done") + IF(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - done") FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") - else(HAVE_${VARIABLE}) - message(STATUS "Check size of ${TYPE} - failed") + ELSE(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - failed") FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") - endif(HAVE_${VARIABLE}) - endif("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - set(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) + ENDIF(HAVE_${VARIABLE}) + ENDIF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) ENDMACRO(CHECK_TYPE_SIZE) -- cgit v1.2.1 From 8f14220ea8b606ca278e1b790aed9908efe330cc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 8 Mar 2006 21:57:21 +0000 Subject: -apply patch by Andreas Beckermann for KDE 3 stuff -prepare UsePkgconfig for moving to cmake Alex svn path=/trunk/KDE/kdelibs/; revision=516854 --- modules/KDE3Macros.cmake | 20 ++++++++++++++------ modules/KDE4Macros.cmake | 11 +++++------ modules/UsePkgConfig.cmake | 20 ++++++++++---------- 3 files changed, 29 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index eb3f2c01..5924b39d 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -189,13 +189,21 @@ MACRO(KDE3_AUTOMOC) SET(_matching_FILES ) FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # here. this is required to make bouic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - IF (EXISTS ${_tmp_FILE}) + IF (EXISTS ${_abs_FILE} AND NOT _skip) - FILE(READ ${_tmp_FILE} _contents) + FILE(READ ${_abs_FILE} _contents) - GET_FILENAME_COMPONENT(_abs_FILE ${_tmp_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") @@ -214,12 +222,12 @@ MACRO(KDE3_AUTOMOC) DEPENDS ${_header} ) - MACRO_ADD_FILE_DEPENDENCIES(${_tmp_FILE} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) ENDIF(_match) - ENDIF (EXISTS ${_tmp_FILE}) + ENDIF (EXISTS ${_abs_FILE} AND NOT _skip) ENDFOREACH (_current_FILE) ENDMACRO(KDE3_AUTOMOC) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b34c021d..b6933d26 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -223,13 +223,12 @@ MACRO(KDE4_AUTOMOC) set(_matching_FILES ) foreach (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - if (EXISTS ${_tmp_FILE}) + if (EXISTS ${_abs_FILE}) - FILE(READ ${_tmp_FILE} _contents) + FILE(READ ${_abs_FILE} _contents) - GET_FILENAME_COMPONENT(_abs_FILE ${_tmp_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") @@ -247,12 +246,12 @@ MACRO(KDE4_AUTOMOC) DEPENDS ${_header} ) - MACRO_ADD_FILE_DEPENDENCIES(${_tmp_FILE} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) endforeach (_current_MOC_INC) endif(_match) - endif (EXISTS ${_tmp_FILE}) + endif (EXISTS ${_abs_FILE}) endforeach (_current_FILE) ENDMACRO(KDE4_AUTOMOC) diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index aafe7942..4490d2c1 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -10,18 +10,18 @@ FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) # reset the variables at the beginning - set(${_include_DIR}) - set(${_link_DIR}) - set(${_link_FLAGS}) - set(${_cflags}) + SET(${_include_DIR}) + SET(${_link_DIR}) + SET(${_link_FLAGS}) + SET(${_cflags}) -# if pkg-config has been found - if(PKGCONFIG_EXECUTABLE) + # if pkg-config has been found + IF(PKGCONFIG_EXECUTABLE) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) -# and if the package of interest also exists for pkg-config, then get the information - if(NOT _return_VALUE) + # and if the package of interest also exists for pkg-config, then get the information + IF(NOT _return_VALUE) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) @@ -31,9 +31,9 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) - endif(NOT _return_VALUE) + ENDIF(NOT _return_VALUE) - endif(PKGCONFIG_EXECUTABLE) + ENDIF(PKGCONFIG_EXECUTABLE) ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) -- cgit v1.2.1 From 6d1ec2fb2eb45952ecdc8077a6472a9b391c8580 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 8 Mar 2006 22:52:50 +0000 Subject: -some files will be obsoleted by the next cmakw release Alex svn path=/trunk/KDE/kdelibs/; revision=516863 --- modules/CMakeLists.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 8f50adc8..74816f2f 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -8,6 +8,12 @@ install_files(/share/apps/cmake/modules FILES kde3init_dummy.cpp.in kde4init_d set (FILES_TO_REMOVE ${CMAKE_INSTALL_PREFIX}/share/apps/cmake/modules/FindKDE4.cmake ) +# files to remove once we depend on the cmake release: +# UsePkgconfig.cmake +# FindKDE3.cmake +# KDE3Macros.cmake +# kde3uic.cmake +# kde3init_dummy.cpp.in configure_file(${CMAKE_CURRENT_SOURCE_DIR}/remove_files.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake) -- cgit v1.2.1 From 3c808b6e38193b9c679ecdd02d93eded036d889f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 9 Mar 2006 09:33:43 +0000 Subject: Move here (need by kdepim too) svn path=/trunk/KDE/kdelibs/; revision=516932 --- modules/FindSasl2.cmake | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 modules/FindSasl2.cmake (limited to 'modules') diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake new file mode 100644 index 00000000..4684735c --- /dev/null +++ b/modules/FindSasl2.cmake @@ -0,0 +1,32 @@ +# - Try to find the sasl2 directory library +# Once done this will define +# +# SASL2_FOUND - system has SASL2 +# SASL2_INCLUDE_DIR - the SASL2 include directory +# SASL2_LIBRARIES - The libraries needed to use SASL2 + +FIND_PATH(SASL2_INCLUDE_DIR sasl/sasl.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(SASL2_LIBRARIES NAMES sasl2 + PATHS + /usr/lib + /usr/local/lib +) + + +if(SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) + set(SASL2_FOUND TRUE) +endif(SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) + + +if(SASL2_FOUND) + if(NOT SASL2_FIND_QUIETLY) + message(STATUS "Found sasl2: ${SASL2_LIBRARIES}") + endif(NOT SASL2_FIND_QUIETLY) +endif(SASL2_FOUND) + +MARK_AS_ADVANCED(SASL2_INCLUDE_DIR SASL2_LIBRARIES) + -- cgit v1.2.1 From d674846fdc13846f81d7688248f7b43d51863fa1 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 9 Mar 2006 22:35:02 +0000 Subject: Detect and enable the ACL support. svn path=/trunk/KDE/kdelibs/; revision=517103 --- modules/FindACL.cmake | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 modules/FindACL.cmake (limited to 'modules') diff --git a/modules/FindACL.cmake b/modules/FindACL.cmake new file mode 100644 index 00000000..cb606495 --- /dev/null +++ b/modules/FindACL.cmake @@ -0,0 +1,37 @@ +# - Try to find the ACL library +# Once done this will define +# +# ACL_FOUND - system has the ACL library +# ACL_LIBS - The libraries needed to use ACL + +check_include_files(attr/libattr.h HAVE_ATTR_LIBATTR_H) +check_include_files(sys/xattr.h HAVE_SYS_XATTR_H) +check_include_files(sys/acl.h HAVE_SYS_ACL_H) +check_include_files(acl/libacl.h HAVE_ACL_LIBACL_H) + +if(HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) + set(ACL_HEADERS_FOUND TRUE) +endif(HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) + +if(ACL_HEADERS_FOUND) + FIND_LIBRARY(ACL_LIBS NAMES acl + PATHS + /usr/lib + /usr/local/lib + ) + + FIND_LIBRARY(ATTR_LIBS NAMES attr + PATHS + /usr/lib + /usr/local/lib + ) +endif(ACL_HEADERS_FOUND) + +if(ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) + set(ACL_FOUND TRUE) + set(ACL_LIBS ${ACL_LIBS} ${ATTR_LIBS}) + message(STATUS "Found ACL support: ${ACL_LIBS}") +endif(ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) + +MARK_AS_ADVANCED(ACL_LIBS) + -- cgit v1.2.1 From 60c92113499723ec2571965f6ecee02d3b035151 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Fri, 10 Mar 2006 22:48:09 +0000 Subject: First attempt to find aKode. aKode seems to be found correctly, the issue is to add the include path to the inclues of knotify. svn path=/trunk/KDE/kdelibs/; revision=517416 --- modules/FindAkode.cmake | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 modules/FindAkode.cmake (limited to 'modules') diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake new file mode 100644 index 00000000..b0b90aa1 --- /dev/null +++ b/modules/FindAkode.cmake @@ -0,0 +1,31 @@ +# - Try to find the aKode library +# Once done this will define +# +# AKODE_FOUND - system has the aKode library +# AKODE_INCLUDE_DIR - the aKode include directory +# AKODE_LIBRARIES - The libraries needed to use aKode + +FIND_PROGRAM(AKODECONFIG_EXECUTABLE NAMES akode-config PATHS + /usr/bin + /usr/local/bin +) + +#reset vars +set(AKODE_LIBRARIES) +set(AKODE_INCLUDE_DIR) + +# if akode-config has been found +IF(AKODECONFIG_EXECUTABLE) + + EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_LIBRARIES) + + EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_INCLUDE_DIR) + + IF(AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + SET(AKODE_FOUND TRUE) + message(STATUS "Found aKode: ${AKODE_LIBRARIES}") + ENDIF(AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + + MARK_AS_ADVANCED(AKODE_INCLUDE_DIR AKODE_LIBRARIES) + +ENDIF(AKODECONFIG_EXECUTABLE) -- cgit v1.2.1 From 9dc075ccb23652fe7e40d293122bd518245f7dd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sat, 11 Mar 2006 11:32:54 +0000 Subject: include used check_include_files macro svn path=/trunk/KDE/kdelibs/; revision=517536 --- modules/FindACL.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindACL.cmake b/modules/FindACL.cmake index cb606495..d8d83e53 100644 --- a/modules/FindACL.cmake +++ b/modules/FindACL.cmake @@ -4,6 +4,8 @@ # ACL_FOUND - system has the ACL library # ACL_LIBS - The libraries needed to use ACL +INCLUDE(CheckIncludeFiles) + check_include_files(attr/libattr.h HAVE_ATTR_LIBATTR_H) check_include_files(sys/xattr.h HAVE_SYS_XATTR_H) check_include_files(sys/acl.h HAVE_SYS_ACL_H) -- cgit v1.2.1 From e8969d72788ffd65c262d15a787f3338674ae367 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 11 Mar 2006 12:56:54 +0000 Subject: Fix generate file space into "kcfg" file svn path=/trunk/KDE/kdelibs/; revision=517557 --- modules/KDE4Macros.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b6933d26..d36a654c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -105,8 +105,7 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) FILE(READ ${_tmp_FILE} _contents) - STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+)\n.*$" "\\2" _kcfg_FILE "${_contents}") - + STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) -- cgit v1.2.1 From 3c049f4f6d977ef407c29cd8818504a48f325de6 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Mon, 13 Mar 2006 11:43:04 +0000 Subject: really make the akode detection work svn path=/trunk/KDE/kdelibs/; revision=518191 --- modules/FindAkode.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index b0b90aa1..a90fdc0b 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -23,6 +23,7 @@ IF(AKODECONFIG_EXECUTABLE) IF(AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) SET(AKODE_FOUND TRUE) + STRING(REGEX REPLACE "-I(.+)" "\\1" AKODE_INCLUDE_DIR "${AKODE_INCLUDE_DIR}") message(STATUS "Found aKode: ${AKODE_LIBRARIES}") ENDIF(AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) -- cgit v1.2.1 From 9eca0c25eabb36f0cda865562473590342a53a99 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 14 Mar 2006 16:31:45 +0000 Subject: reapply r509806 which got reverted in the fancy RPATH rewrite svn path=/trunk/KDE/kdelibs/; revision=518600 --- modules/FindKDE4Internal.cmake | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 65e215b3..d34d2e51 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -128,7 +128,8 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) else (WIN32) set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -136,13 +137,13 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC if (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) + set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) + set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) else (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) endif (KDE4_NEED_WRAPPER_SCRIPTS) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... -- cgit v1.2.1 From ccc8c0bac3d0a118e6f5497c72582eb2e9ff6095 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 16 Mar 2006 10:18:01 +0000 Subject: Generate moc file into own directory Fix some bug when we lonk with no-install lib svn path=/trunk/KDE/kdelibs/; revision=519125 --- modules/KDE4Macros.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d36a654c..01d5ac54 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -238,7 +238,8 @@ MACRO(KDE4_AUTOMOC) GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) # set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) set(_header ${_abs_PATH}/${_basename}.h) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + #set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + set(_moc ${_abs_PATH}/${_current_MOC}) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} -- cgit v1.2.1 From 7416515eaefe190f442d86df5fff42ecee4d315d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 16 Mar 2006 10:34:18 +0000 Subject: Generate files from ui3 into own directory svn path=/trunk/KDE/kdelibs/; revision=519127 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 01d5ac54..fb4b684d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -171,11 +171,11 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - + GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - set(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) + set(_header ${_abs_PATH}/${_basename}.h) + set(_src ${_abs_PATH}/${_basename}.cpp) + set(_moc ${_abs_PATH}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_header} COMMAND ${CMAKE_COMMAND} -- cgit v1.2.1 From 8e8d825a0203381639f8a9a94713ad9fb985ff7b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 16 Mar 2006 10:45:56 +0000 Subject: Generate file into own directory svn path=/trunk/KDE/kdelibs/; revision=519132 --- modules/KDE4Macros.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index fb4b684d..1e09283d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -101,14 +101,14 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - + GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) FILE(READ ${_tmp_FILE} _contents) STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") - set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + set(_src_FILE ${_abs_PATH}/${_basename}.cpp) + set(_header_FILE ${_abs_PATH}/${_basename}.h) + set(_moc_FILE ${_abs_PATH}/${_basename}.moc) # the command for creating the source file from the kcfg file ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} @@ -141,9 +141,9 @@ MACRO(KDE4_ADD_UI_FILES _sources ) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - + GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_header ${_abs_PATH}/${_basename}.h) # we need to run uic and replace some things in the generated file # this is done by executing the cmake script kde4uic.cmake -- cgit v1.2.1 From 6cd467abc28098e7c0f75bc4e5ba3017abb01ff7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 16 Mar 2006 20:39:34 +0000 Subject: -implemented RPATH handling, set RPATH_STYLE to one of the following: default: compile with RPATH to the builddir, when installing link again with RPATH to the install dir, the kde lib dir and the Qt lib dir none: no RPATH at all install: compile with RPATH to the install dir, the kde lib dir and the Qt lib dir both: compiel with RPATH to the build dir, the install dir, the kde lib dir and the Qt lib dir -sync kde3 stuff with cmake cvs -fix building if kdewidgets and kstyles (get_target_properties doesn't work before the target is defined) Alex svn path=/trunk/KDE/kdelibs/; revision=519312 --- modules/FindKDE3.cmake | 2 + modules/FindKDE4Internal.cmake | 302 ++++++++++++++++++++++++++--------------- modules/FindQt4.cmake | 3 + modules/KDE3Macros.cmake | 4 + modules/KDE4Macros.cmake | 30 ++-- modules/kde3init_dummy.cpp.in | 3 + modules/kde3uic.cmake | 5 + 7 files changed, 229 insertions(+), 120 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index 5b2bd104..51e2ced5 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -24,6 +24,8 @@ # Call this if you want to have automatic moc file handling. # This means if you include "foo.moc" in the source file foo.cpp # a moc file for the header foo.h will be created automatically. +# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() +# to exclude some files in the list from being processed. # # KDE3_ADD_MOC_FILES(SRCS_VAR file1 ... fileN ) # If you don't use the KDE3_AUTOMOC() macro, for the files diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d34d2e51..9bc628b1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -29,14 +29,14 @@ # _KDE4_PLATFORM_DEFINITIONS is used only internally -CMAKE_MINIMUM_REQUIRED(VERSION 2.3.3) +cmake_minimum_required(VERSION 2.3.3) #this line includes FindQt.cmake, which searches the Qt library and headers -FIND_PACKAGE(Qt4 REQUIRED) +find_package(Qt4 REQUIRED) set(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) -INCLUDE (MacroLibrary) +include (MacroLibrary) #add some KDE specific stuff @@ -78,30 +78,30 @@ option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) if (UNIX) - set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) - - # to disable RPATH completely, set CMAKE_SKIP_RPATH to TRUE + if ("${RPATH_STYLE}" MATCHES "none") + set(RPATH_STYLE_MATCHED TRUE) + set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) + endif ("${RPATH_STYLE}" MATCHES "none") - option(KDE4_RPATH_TO_BUILD_DIR "Compile executables with RPATH set to both the builddir and the installdir, otherwise RPATH will be set to the install dir. You can disable RPATH completely by setting CMAKE_SKIP_RPATH to ON" ON) + if (NOT APPLE) + if ("${RPATH_STYLE}" MATCHES "install") + set(RPATH_STYLE_MATCHED TRUE) + set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) + endif ("${RPATH_STYLE}" MATCHES "install") - # this avoids relinking during installation - set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) - set(CMAKE_SKIP_BUILD_RPATH TRUE) - # this is the list of RPATHs, start empty + if ("${RPATH_STYLE}" MATCHES "both") + set(RPATH_STYLE_MATCHED TRUE) + endif ("${RPATH_STYLE}" MATCHES "both") - # optionally add the builddir - if (KDE4_RPATH_TO_BUILD_DIR) - set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) - endif (KDE4_RPATH_TO_BUILD_DIR) - - if (CMAKE_SKIP_RPATH) - set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) - endif (CMAKE_SKIP_RPATH) + endif (NOT APPLE) + if(NOT RPATH_STYLE_MATCHED) + set(RPATH_STYLE_MATCHED TRUE) + endif(NOT RPATH_STYLE_MATCHED) endif (UNIX) # set it to false again until the next kde release of cmake is required -set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) +# set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) #now try to find some kde stuff @@ -129,7 +129,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) else (WIN32) set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) +# set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -137,13 +137,13 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC if (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) - set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) - set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) else (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) endif (KDE4_NEED_WRAPPER_SCRIPTS) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... @@ -152,38 +152,68 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + # ... but NOT otherwise + set( _KDE4_DCOPIDL2CPP_DEP ) + set( _KDE4_KCONFIG_COMPILER_DEP) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) -# the following variables should be named KDE4_KIO_LIBRARIES etc -# Alex + find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KDECORE_LIBRARIES ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - set(LIB_KDECORE ${QT_AND_KDECORE_LIBS} ${QT_QTGUI_LIBRARY} ${X11_X11_LIB} DCOP ${ZLIB_LIBRARY}) + find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KDEUI_LIBRARIES ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) - # kdeui_LIB_DEPENDS comes from KDELibsDependencies.cmake, Alex - set(LIB_KDEUI ${kdeui_LIB_DEPENDS} kdeui) + find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KIO_LIBRARIES ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) -message(STATUS "kdeui: ${LIB_KDEUI}") + find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KPARTS_LIBRARIES ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) - set(LIB_KIO ${LIB_KDEUI} kio) + find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KUTILS_LIBRARIES ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) - set(LIB_KPARTS ${LIB_KIO} kparts) + find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KDE3SUPPORT_LIBRARIES ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) - set(LIB_KUTILS ${LIB_KPARTS} kutils) - set(LIB_KDE3SUPPORT ${QT_QT3SUPPORT_LIBRARY} ${LIB_KUTILS} kde3support) + # now the KDE library directory, kxmlcore is new with KDE4 + find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore + PATHS + ${KDE4_LIB_INSTALL_DIR} + $ENV{KDEDIR}/lib + /opt/kde/lib + /opt/kde4/lib + /usr/lib + /usr/local/lib) + set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) + get_filename_component(KDE4_LIB_DIR ${KDE4_KXMLCORE_LIBRARY} PATH ) - # ... but NOT otherwise - set( _KDE4_DCOPIDL2CPP_DEP ) - set( _KDE4_KCONFIG_COMPILER_DEP) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + + set(LIB_KDECORE ${KDE4_KDECORE_LIBRARIES}) + set(LIB_KDEUI ${KDE4_KDEUI_LIBRARIES}) + set(LIB_KIO ${KDE4_KIO_LIBRARIES}) + set(LIB_KPARTS ${KDE4_KPARTS_LIBRARIES}) + set(LIB_KUTILS ${KDE4_KUTILS_LIBRARIES}) + set(LIB_KDE3SUPPORT ${KDE4_KDE3SUPPORT_LIBRARIES}) + +# set(LIB_KDECORE ${QT_AND_KDECORE_LIBS} ${QT_QTGUI_LIBRARY} ${X11_X11_LIB} DCOP ${ZLIB_LIBRARY}) +# set(LIB_KDEUI ${kdeui_LIB_DEPENDS} kdeui) +# set(LIB_KIO ${LIB_KDEUI} kio) +# set(LIB_KPARTS ${LIB_KIO} kparts) +# set(LIB_KUTILS ${LIB_KPARTS} kutils) +# set(LIB_KDE3SUPPORT ${QT_QT3SUPPORT_LIBRARY} ${LIB_KUTILS} kde3support) + # at first the KDE include direcory # kpassworddialog.h is new with KDE4 - FIND_PATH(KDE4_INCLUDE_DIR kpassworddialog.h + find_path(KDE4_INCLUDE_DIR kpassworddialog.h + ${KDE4_INCLUDE_INSTALL_DIR} $ENV{KDEDIR}/include /opt/kde/include /opt/kde4/include @@ -193,48 +223,66 @@ message(STATUS "kdeui: ${LIB_KDEUI}") /usr/local/include/kde ) - # now the KDE library directory, kxmlcore is new with KDE4 - FIND_LIBRARY(KDE4_XMLCORE_LIBRARY NAMES kxmlcore - PATHS - $ENV{KDEDIR}/lib - /opt/kde/lib - /opt/kde4/lib - /usr/lib - /usr/local/lib - ) - - GET_FILENAME_COMPONENT(KDE4_LIB_DIR ${KDE4_XMLCORE_LIBRARY} PATH ) - #now search for the dcop utilities - FIND_PROGRAM(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS + find_program(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS + ${KDE4_BIN_INSTALL_DIR} $ENV{KDEDIR}/bin /opt/kde/bin /opt/kde4/bin + NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH ) - FIND_PATH(KDE4_KALYPTUS_DIR kalyptus - $ENV{KDEDIR}/share/apps/dcopidl - /opt/kde/share/apps/dcopidl - /opt/kde4/share/apps/dcopidl - ) - - FIND_PROGRAM(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - ) - - FIND_PROGRAM(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - ) - - FIND_PROGRAM(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - ) + if (NOT KDE4_DCOPIDL_EXECUTABLE) + find_program(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl ) + endif (NOT KDE4_DCOPIDL_EXECUTABLE) + + + find_path(KDE4_KALYPTUS_DIR kalyptus + ${KDE4_DATA_INSTALL_DIR}/dcopidl + $ENV{KDEDIR}/share/apps/dcopidl + /opt/kde/share/apps/dcopidl + /opt/kde4/share/apps/dcopidl + ) + + find_program(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS + ${KDE4_BIN_INSTALL_DIR} + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH + ) + + if (NOT KDE4_DCOPIDL2CPP_EXECUTABLE) + find_program(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp ) + endif (NOT KDE4_DCOPIDL2CPP_EXECUTABLE) + + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS + ${KDE4_BIN_INSTALL_DIR} + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH + ) + + if (NOT KDE4_KCFGC_EXECUTABLE) + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) + endif (NOT KDE4_KCFGC_EXECUTABLE) + + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS + ${KDE4_BIN_INSTALL_DIR} + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH + ) + + if (NOT KDE4_MEINPROC_EXECUTABLE) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) + endif (NOT KDE4_MEINPROC_EXECUTABLE) endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) @@ -243,9 +291,9 @@ endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # Set a default build type for single-configuration # CMake generators if no build type is set. -IF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) - SET(CMAKE_BUILD_TYPE RelWithDebInfo) -ENDIF (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) +if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE RelWithDebInfo) +endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) if (WIN32) @@ -254,7 +302,7 @@ if (WIN32) message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") endif(CYGWIN) - FIND_PACKAGE(KDEWIN32 REQUIRED) + find_package(KDEWIN32 REQUIRED) set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) set( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) @@ -267,10 +315,10 @@ if (WIN32) # windows, microsoft compiler if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) - IF(CMAKE_COMPILER_2005) - ADD_DEFINITIONS( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) - SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) - ENDIF(CMAKE_COMPILER_2005) + if(CMAKE_COMPILER_2005) + add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) + endif(CMAKE_COMPILER_2005) endif(MSVC) endif (WIN32) @@ -281,24 +329,60 @@ if (UNIX) link_directories(/usr/local/lib) include_directories(/usr/local/include) - # build the install RPATH - set(CMAKE_INSTALL_RPATH) - - # optionally add the builddir - if (KDE4_RPATH_TO_BUILD_DIR) - set(CMAKE_INSTALL_RPATH ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/ ) - endif (KDE4_RPATH_TO_BUILD_DIR) - - # add the library install dir - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}) - # add the Qt library dir - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${QT_LIBRARY_DIR}) - - # building something else than kdelibs/ ? - # then add the dir where the kde libraries are installed - if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) - endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + # the rest is RPATH handling + set(RPATH_STYLE_MATCHED FALSE) + + if ("${RPATH_STYLE}" MATCHES "none") + # no relinking, needs LD_LIBRARY_PATH + set(RPATH_STYLE_MATCHED TRUE) + set(CMAKE_SKIP_RPATH TRUE) + endif ("${RPATH_STYLE}" MATCHES "none") + + if (NOT APPLE) + if ("${RPATH_STYLE}" MATCHES "install") + # no relinking, needs LD_LIBRARY_PATH from the builddir + set(RPATH_STYLE_MATCHED TRUE) + set(CMAKE_SKIP_BUILD_RPATH TRUE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) + # building something else than kdelibs/ ? + # then add the dir where the kde libraries are installed + if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) + endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + endif ("${RPATH_STYLE}" MATCHES "install") + + if ("${RPATH_STYLE}" MATCHES "both") + # no relinking, prefers the lib in the builddir over the installed one + set(RPATH_STYLE_MATCHED TRUE) + set(CMAKE_SKIP_BUILD_RPATH TRUE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_INSTALL_RPATH ${LIBRARY_OUTPUT_PATH} ${CMAKE_INSTALL_PREFIX}/lib ) + + set(CMAKE_INSTALL_RPATH ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR} ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) + # building something else than kdelibs/ ? + # then add the dir where the kde libraries are installed + if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) + endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + endif ("${RPATH_STYLE}" MATCHES "both") + + endif (NOT APPLE) + + if(NOT RPATH_STYLE_MATCHED) + # rpath to the builddir, relinking to the install dir + + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) + # building something else than kdelibs/ ? + # then add the dir where the kde libraries are installed + if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) + endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}) + endif(NOT RPATH_STYLE_MATCHED) endif (UNIX) @@ -382,7 +466,7 @@ endif (CMAKE_COMPILER_IS_GNUCXX) # KDE4Macros.cmake contains all the KDE specific macros -INCLUDE(KDE4Macros) +include(KDE4Macros) # decide whether KDE4 has been found @@ -393,7 +477,7 @@ else (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCO endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) -MACRO (KDE4_PRINT_RESULTS) +macro (KDE4_PRINT_RESULTS) if(KDE4_INCLUDE_DIR) message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) @@ -423,18 +507,18 @@ MACRO (KDE4_PRINT_RESULTS) else(KDE4_KCFGC_EXECUTABLE) message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") endif(KDE4_KCFGC_EXECUTABLE) -ENDMACRO (KDE4_PRINT_RESULTS) +endmacro (KDE4_PRINT_RESULTS) if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) #bail out if something wasn't found - KDE4_PRINT_RESULTS() + kde4_print_results() message(FATAL_ERROR "Could NOT find everything required for compiling KDE 4 programs") endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) if (NOT KDE4Internal_FIND_QUIETLY) - KDE4_PRINT_RESULTS() + kde4_print_results() endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 1c337188..96db6164 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -143,6 +143,7 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS $ENV{QTDIR}/bin ${QT4_PATHS} NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH ) if (NOT QT_QMAKE_EXECUTABLE) @@ -533,6 +534,7 @@ if(QT4_QMAKE_FOUND) C:/Progra~1/qt/bin /usr/bin/qt4 NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH ) # if qmake wasn't found in the specific dirs, now check the system path @@ -572,6 +574,7 @@ if(QT4_QMAKE_FOUND) C:/Progra~1/qt/bin /usr/bin/qt4 NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH ) if (NOT QT_UIC_EXECUTABLE) diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index 5924b39d..99dfb5f7 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -1,3 +1,7 @@ + + +# See FindKDE3.cmake for documentation. +# # this file contains the following macros: # KDE3_ADD_DCOP_SKELS # KDE3_ADD_DCOP_STUBS diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1e09283d..ca6edc04 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -222,38 +222,46 @@ MACRO(KDE4_AUTOMOC) set(_matching_FILES ) foreach (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE) + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # here. this is required to make bouic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + get_source_file_property(_skip ${_abs_FILE} SKIP_AUTOMOC) - if (EXISTS ${_abs_FILE}) + if (EXISTS ${_abs_FILE} AND NOT _skip) - FILE(READ ${_abs_FILE} _contents) + file(READ ${_abs_FILE} _contents) - GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + get_filename_component(_abs_PATH ${_abs_FILE} PATH) - STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") if(_match) foreach (_current_MOC_INC ${_match}) - STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) + get_filename_component(_basename ${_current_MOC} NAME_WE) # set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) set(_header ${_abs_PATH}/${_basename}.h) #set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) set(_moc ${_abs_PATH}/${_current_MOC}) - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + add_custom_command(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} DEPENDS ${_header} ) - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + macro_add_file_dependencies(${_abs_FILE} ${_moc}) endforeach (_current_MOC_INC) endif(_match) - endif (EXISTS ${_abs_FILE}) + endif (EXISTS ${_abs_FILE} AND NOT _skip) endforeach (_current_FILE) -ENDMACRO(KDE4_AUTOMOC) +endmacro(KDE4_AUTOMOC) # only used internally by KDE4_INSTALL_ICONS diff --git a/modules/kde3init_dummy.cpp.in b/modules/kde3init_dummy.cpp.in index f0cd3488..7135c73a 100644 --- a/modules/kde3init_dummy.cpp.in +++ b/modules/kde3init_dummy.cpp.in @@ -1,3 +1,6 @@ + +/* used by KDE3Macros.cmake */ + extern "C" int kdemain(int argc, char* argv[]); extern "C" int kdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); } int main(int argc, char* argv[]) { return kdemain(argc,argv); } diff --git a/modules/kde3uic.cmake b/modules/kde3uic.cmake index 9aeb7d23..83920b40 100644 --- a/modules/kde3uic.cmake +++ b/modules/kde3uic.cmake @@ -1,4 +1,9 @@ + +# used internally by KDE3Macros.cmake +# neundorf@kde.org + + EXECUTE_PROCESS(COMMAND uic -nounload -tr tr2i18n -impl ${KDE_UIC_H_FILE} -- cgit v1.2.1 From 0d23993a1839f3e2e603d9791a6d5d5b08586911 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Larouche?= Date: Fri, 17 Mar 2006 13:38:43 +0000 Subject: Forward port of: Actually set X11_Xrender_LIB correctly svn path=/trunk/KDE/kdelibs/; revision=519550 --- modules/FindX11.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index d936f8af..958f7659 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -50,6 +50,7 @@ if (UNIX) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) @@ -110,6 +111,10 @@ if (UNIX) set(X11_Xfixes_FOUND TRUE) endif(X11_Xfixes_INCLUDE_PATH) + if(X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) + set(X11_Xrender_FOUND TRUE) + endif(X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) + if(X11_Xrandr_INCLUDE_PATH) set(X11_Xrandr_FOUND TRUE) endif(X11_Xrandr_INCLUDE_PATH) -- cgit v1.2.1 From 733e6a461b8b610fe7a88e838087c2013f03123f Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 17 Mar 2006 14:28:05 +0000 Subject: add KDE_DEPREACTED_WARNINGS and disable deprecated warnings for kde3support until we know what to to with it svn path=/trunk/KDE/kdelibs/; revision=519568 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9bc628b1..47e1ee1a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -525,4 +525,4 @@ endif (NOT KDE4Internal_FIND_QUIETLY) set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS ) +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPREACTED_WARNINGS ) -- cgit v1.2.1 From 1baaa167eab722507371def0cb40f9b4462914ec Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Mar 2006 13:42:30 +0000 Subject: fix typos Alex svn path=/trunk/KDE/kdelibs/; revision=519989 --- modules/FindKDE3.cmake | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index 51e2ced5..63a7d239 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -53,13 +53,12 @@ # Create a KDE plugin (KPart, kioslave, etc.) from the given source files. # It supports KDE3_ENABLE_FINAL # If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. -# It creates and install an appropriate libtool la-file. +# It creates and installs an appropriate libtool la-file. # # KDE3_ADD_KDEINIT_EXECUTABLE(name file1 ... fileN ) # Create a KDE application in the form of a module loadable via kdeinit. -# It supports KDE3_ENABLE_FINAL. # A library named kdeinit_ will be created and a small executable which links to it. -# Supports KDE3_ENABLE_FINAL +# It supports KDE3_ENABLE_FINAL # # Author: Alexander Neundorf -- cgit v1.2.1 From c3e54160c928f6d32f58929bd0da31bc110e9cc3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Mar 2006 13:58:59 +0000 Subject: one more typo Alex svn path=/trunk/KDE/kdelibs/; revision=519995 --- modules/FindKDE3.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index 63a7d239..e43c7db1 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -4,7 +4,7 @@ # KDE3_DEFINITIONS - compiler definitions required for compiling KDE software # KDE3_INCLUDE_DIR - the KDE include directory # KDE3_INCLUDE_DIRS - the KDE and the Qt include directory, for use with INCLUDE_DIRECTORIES() -# KDE3_LIB_DIR - the directory where the KDE libraries are installed, for use with LINK_DIR() +# KDE3_LIB_DIR - the directory where the KDE libraries are installed, for use with LINK_DIRECTORIES() # QT_AND_KDECORE_LIBRARIES - this contains both the Qt and the kdecore library # KDE3_DCOPIDL_EXECUTABLE - the dcopidl executable # KDE3_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable -- cgit v1.2.1 From ecf012bb6d0fc2551bb638b931d84ef3e4c1ede5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Mar 2006 14:47:12 +0000 Subject: add documentation Alex svn path=/trunk/KDE/kdelibs/; revision=520009 --- modules/FindKDE4Internal.cmake | 174 +++++++++++++++++++++++++++++++++++------ 1 file changed, 149 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 47e1ee1a..8906ae8d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1,29 +1,152 @@ # - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros # -# KDE4_DEFINITIONS -# KDE4_INCLUDE_DIR -# KDE4_INCLUDE_DIRS -# KDE4_LIB_DIR -# KDE4_SERVICETYPES_DIR -# KDE4_DCOPIDL_EXECUTABLE -# KDE4_DCOPIDL2CPP_EXECUTABLE -# KDE4_KCFGC_EXECUTABLE -# KDE4_MEINPROC_EXECUTABLE -# KDE4_FOUND -# it also adds the following macros (from KDE4Macros.cmake) -# ADD_FILE_DEPENDANCY -# KDE4_ADD_DCOP_SKELS -# KDE4_ADD_DCOP_STUBS -# KDE4_ADD_MOC_FILES -# KDE4_ADD_UI_FILES -# KDE4_ADD_KCFG_FILES -# KDE4_AUTOMOC -# KDE4_PLACEHOLDER -# KDE4_INSTALL_LIBTOOL_FILE -# KDE4_CREATE_FINAL_FILE -# KDE4_ADD_KPART -# KDE4_ADD_KLM -# KDE4_ADD_EXECUTABLE +# This module defines the following variables: +# +# KDE4_FOUND - set to TRUE if everything required for building KDE software has been found +# +# KDE4_DEFINITIONS - compiler definitions required for compiling KDE software +# KDE4_INCLUDE_DIR - the KDE 4 include directory +# KDE4_INCLUDE_DIRS - all include directories required for KDE, i.e. +# KDE4_INCLUDE_DIR, but also the Qt4 include directories +# and other platform specific include directories +# KDE4_LIB_DIR - the directory where the KDE libraries are installed, +# intended to be used with LINK_DIRECTORIES() +# +# The following variables are defined for the various tools required to +# compile KDE software: +# +# KDE4_DCOPIDL_EXECUTABLE - the dcopidl executable +# KDE4_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable +# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable +# KDE4_MEINPROC_EXECUTABLE - the meinproc executable +# +# The following variables point to the location of the KDE libraries, +# but shouldn't be used directly: +# +# KDE4_KDECORE_LIBRARY - the kdecore library +# KDE4_KDEUI_LIBRARY - the kdeui library +# KDE4_KIO_LIBRARY - the kio library +# KDE4_KPARTS_LIBRARY - the kparts library +# KDE4_KUTILS_LIBRARY - the kutils library +# KDE4_KDE3SUPPORT_LIBRARY - the kde3support library +# KDE4_KXMLCORE_LIBRARY - the kxmlcore library +# +# Compared to the variables above, the following variables +# also contain all of the depending libraries, so the variables below +# should be used instead of the ones above: +# +# KDE4_KDECORE_LIBRARIES - the kdecore library and all depending libraries +# KDE4_KDEUI_LIBRARIES - the kdeui library and all depending libraries +# KDE4_KIO_LIBRARIES - the kio library and all depending libraries +# KDE4_KPARTS_LIBRARIES - the kparts library and all depending libraries +# KDE4_KUTILS_LIBRARIES - the kutils library and all depending libraries +# KDE4_KDE3SUPPORT_LIBRARIES - the kde3support library and all depending libraries +# KDE4_KXMLCORE_LIBRARIES - the kxmlcore library and all depending libraries +# +# This module defines a bunch of variables used as locations +# for install directories. They are all interpreted relative +# to CMAKE_INSTALL_PREFIX +# +# CONFIG_INSTALL_DIR - the config file install dir +# DATA_INSTALL_DIR - the parent directory where applications can install their data +# HTML_INSTALL_DIR - the HTML install dir for documentation +# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) +# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) +# KCFG_INSTALL_DIR - the install dir for kconfig files +# LIB_INSTALL_DIR - the subdirectory relative to the install prefix where libraries will be installed (default is /lib) +# LOCALE_INSTALL_DIR - the install dir for translations +# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) +# MIME_INSTALL_DIR - the install dir for the mimetype desktop files +# PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) +# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files +# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files +# SOUND_INSTALL_DIR - the install dir for sound files +# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) +# WALLPAPER_INSTALL_DIR - the install dir for wallpapers +# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir +# XDG_APPS_DIR - the XDG apps dir +# XDG_DIRECTORY_DIR - the XDG directory +# +# The following variables are provided, but are seem to be unused: +# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") +# APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") +# +# The following user adjustable options are provided: +# +# RPATH_STYLE - select the style in which RPATH is handled, one of "none", "install", "both" and "default" +# KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation +# KDE4_BUILD_TESTS - enable this to build the testcases +# +# It also adds the following macros (from KDE4Macros.cmake) +# KDE4_ADD_DCOP_SKELS (SRCS_VAR file1.h ... fileN.h) +# Use this to generate DCOP skeletons from the listed headers. +# +# KDE4_ADD_DCOP_STUBS (SRCS_VAR file1.h ... fileN.h) +# Use this to generate DCOP stubs from the listed headers. +# +# KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) +# Use this to add Qt designer ui files to your application/library. +# +# KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) +# Use this to add Qt designer ui files from Qt version 3 to your application/library. +# +# KDE4_ADD_KCFG_FILES (SRCS_VAR file1.kcfgc ... fileN.kcfgc) +# Use this to add KDE config compiler files to your application/library. +# +# KDE4_AUTOMOC(file1 ... fileN) +# Call this if you want to have automatic moc file handling. +# This means if you include "foo.moc" in the source file foo.cpp +# a moc file for the header foo.h will be created automatically. +# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() +# to exclude some files in the list from being processed. +# If you don't want automoc, you can also use QT4_WRAP_CPP() or QT4_GENERATE_MOC() +# from FindQt4.cmake to have the moc files generated. This will be faster +# but require more manual work. +# +# KDE4_HEADER() +# This is a macro which is currently empty. +# It is automatically inserted by the am2cmake script at the top +# of each converted CMakeLists.txt +# +# KDE4_FOOTER() +# This is a macro which is currently empty. +# It is automatically inserted by the am2cmake script at the end +# of each converted CMakeLists.txt +# +# KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) +# This will create and install a simple libtool file for the +# given target. This might be required for other software. +# The libtool file will be install in subdir, relative to CMAKE_INSTALL_PREFIX . +# +# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) +# This macro is intended mainly for internal uses. +# It is used for enable-final. It will generate two source files, +# one for the C files and one for the C++ files. +# These files will have the names given in filename_CXX and filename_C. +# +# KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN ) +# Create a KDE plugin (KPart, kioslave, etc.) from the given source files. +# It supports KDE4_ENABLE_FINAL. +# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. +# It creates and installs an appropriate libtool la-file. +# +# KDE4_ADD_KDEINIT_EXECUTABLE (name file1 ... fileN) +# Create a KDE application in the form of a module loadable via kdeinit. +# A library named kdeinit_ will be created and a small executable which links to it. +# It supports KDE3_ENABLE_FINAL +# +# KDE4_ADD_EXECUTABLE (name file1 ... fileN) +# Equivalent to ADD_EXECUTABLE(), but additionally adds support for KDE4_ENABLE_FINAL. +# If you don't need support for KDE4_ENABLE_FINAL, you can just use the +# normal ADD_EXECUTABLE(). +# +# KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) +# Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL +# and under Windows it adds a -DMAKE__LIB definition to the compilation. +# +# KDE4_INSTALL_ICONS( path theme) +# Installs all png and svgz files in the current directory to the icon +# directoy given in path, in the subdirectory for the given icon theme. # # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally @@ -32,7 +155,7 @@ cmake_minimum_required(VERSION 2.3.3) #this line includes FindQt.cmake, which searches the Qt library and headers -find_package(Qt4 REQUIRED) +find_package(Qt4 REQUIRED) set(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) @@ -75,6 +198,7 @@ option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") # RPATH handling +set(RPATH_STYLE "default" CACHE STRING "Determine RAPTH handling") set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) if (UNIX) -- cgit v1.2.1 From 1da5e248e7cb198bf97c55f5b66b3158c94adeeb Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Sat, 18 Mar 2006 15:18:02 +0000 Subject: CMake configure check for Gettext, rudimentary only. svn path=/trunk/KDE/kdelibs/; revision=520012 --- modules/FindGettext.cmake | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 modules/FindGettext.cmake (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake new file mode 100644 index 00000000..b6dd3de5 --- /dev/null +++ b/modules/FindGettext.cmake @@ -0,0 +1,35 @@ +# Try to find Gettext functionality +# Once done this will define +# +# GETTEXT_FOUND - system has Gettext +# GETTEXT_INCLUDE_DIR - Gettext include directory +# GETTEXT_LIBRARIES - Libraries needed to use Gettext + +# TODO: This will enable translations only if Gettext functionality is +# present in libc. Must have more robust system for release, where Gettext +# functionality can also reside in standalone Gettext library, or the one +# embedded within kdelibs (cf. gettext.m4 from Gettext source). + +INCLUDE(CheckIncludeFiles) +check_include_files(libintl.h HAVE_LIBINTL_H) + +set(GETTEXT_INCLUDE_DIR) +set(GETTEXT_LIBRARIES) + +if(HAVE_LIBINTL_H) + set(GETTEXT_FOUND TRUE) + set(GETTEXT_SOURCE "libintl.h") +endif(HAVE_LIBINTL_H) + +if(GETTEXT_FOUND) + if(NOT Gettext_FIND_QUIETLY) + message(STATUS "Gettext functionality present (${GETTEXT_SOURCE})") + endif(NOT Gettext_FIND_QUIETLY) +else(GETTEXT_FOUND) + if(NOT Gettext_FIND_QUIETLY) + message(STATUS "Gettext functionality NOT present, " + "translations will not be available") + endif(NOT Gettext_FIND_QUIETLY) +endif(GETTEXT_FOUND) + +MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) -- cgit v1.2.1 From 59f760108e06726ee40cecd4956fc6b41b5490de Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 18 Mar 2006 16:54:51 +0000 Subject: Generate file into own directory svn path=/trunk/KDE/kdelibs/; revision=520043 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ca6edc04..4450a734 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -109,12 +109,12 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) set(_src_FILE ${_abs_PATH}/${_basename}.cpp) set(_header_FILE ${_abs_PATH}/${_basename}.h) set(_moc_FILE ${_abs_PATH}/${_basename}.moc) - - # the command for creating the source file from the kcfg file + + # the command for creating the source file from the kcfg file ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} - ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) + ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${_abs_PATH} + DEPENDS ${_tmp_FILE} ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) # for the case that the header contains signals or slots, it has to be processed by moc # since the generated header isn't listed as OUTPUT in the ADD_CUSTOM_COMMAND above, we -- cgit v1.2.1 From 749af63f54c38a6aa03aa5240b8746aeed799507 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Mar 2006 17:06:38 +0000 Subject: -don't generate any files in the source tree, but only in the build tree Laurent, where did this cause problems ? Was this with the files where source files with the same base names are now compiled to the same target, and beforfe with libtool one of them was part of a convenience libs ? Now that we don't use convenience libs anymore, this means that if two source files have the same basename, they will generate moc files with the same name, also for ui-files. What can we do about this ? If two files have the same names, maybe the name is too generic, so let's rename one of them to a more specialized name, especially now that we have svn. But generating files is the source-tree is a no-no. CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=520047 --- modules/KDE4Macros.cmake | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4450a734..6846dba5 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1,3 +1,6 @@ + +# for documentation look at FindKDE4Internal.cmake +# # this file contains the following macros: # KDE4_ADD_FILE_DEPENDANCY # KDE4_ADD_DCOP_SKELS @@ -106,9 +109,9 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) FILE(READ ${_tmp_FILE} _contents) STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") - set(_src_FILE ${_abs_PATH}/${_basename}.cpp) - set(_header_FILE ${_abs_PATH}/${_basename}.h) - set(_moc_FILE ${_abs_PATH}/${_basename}.moc) + set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) # the command for creating the source file from the kcfg file ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} @@ -171,11 +174,11 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) +# GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_header ${_abs_PATH}/${_basename}.h) - set(_src ${_abs_PATH}/${_basename}.cpp) - set(_moc ${_abs_PATH}/${_basename}.moc.cpp) + set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) ADD_CUSTOM_COMMAND(OUTPUT ${_header} COMMAND ${CMAKE_COMMAND} @@ -246,8 +249,8 @@ MACRO(KDE4_AUTOMOC) get_filename_component(_basename ${_current_MOC} NAME_WE) # set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) set(_header ${_abs_PATH}/${_basename}.h) - #set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - set(_moc ${_abs_PATH}/${_current_MOC}) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + #set(_moc ${_abs_PATH}/${_current_MOC}) add_custom_command(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} -- cgit v1.2.1 From fa505bcd71b8cf027f02d90c6cd52a8853cd7c22 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Mar 2006 17:42:49 +0000 Subject: -mark more variables as advanced, so that they don't clutter the default ccmake display Alex svn path=/trunk/KDE/kdelibs/; revision=520056 --- modules/FindJasper.cmake | 2 +- modules/FindX11.cmake | 27 +++++++++++++++++---------- modules/FindZLIB.cmake | 2 ++ 3 files changed, 20 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 268d71bf..f5835276 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -34,4 +34,4 @@ else(JASPER_FOUND) endif(Jasper_FIND_REQUIRED) endif(JASPER_FOUND) -MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES) +MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES JASPER_LIBRARY) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 958f7659..867761b2 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -236,11 +236,11 @@ if (UNIX) X11_X11_INCLUDE_PATH X11_X11_LIB X11_Xext_LIB - X11_Xau_LIB + X11_Xau_LIB X11_Xlib_INCLUDE_PATH X11_Xutil_INCLUDE_PATH X11_Xcomposite_INCLUDE_PATH - X11_Xcomposite_LIB + X11_Xcomposite_LIB X11_Xaccess_INCLUDE_PATH X11_Xfixes_LIB X11_Xfixes_INCLUDE_PATH @@ -250,19 +250,26 @@ if (UNIX) X11_Xdamage_INCLUDE_PATH X11_Xrender_LIB X11_Xrender_INCLUDE_PATH - X11_Xxf86misc_LIB - X11_Xxf86misc_INCLUDE_PATH - X11_Xinerama_LIB - X11_Xinerama_INCLUDE_PATH + X11_Xxf86misc_LIB + X11_Xxf86misc_INCLUDE_PATH + X11_Xinerama_LIB + X11_Xinerama_INCLUDE_PATH X11_XTest_LIB X11_XTest_INCLUDE_PATH X11_Xcursor_LIB X11_Xcursor_INCLUDE_PATH - X11_dpms_INCLUDE_PATH - X11_Xt_LIB - X11_Xss_LIB - X11_Xdmcp_LIB + X11_dpms_INCLUDE_PATH + X11_Xt_LIB + X11_Xss_LIB + X11_Xdmcp_LIB X11_LIBRARIES + X11_Xaccessrules_INCLUDE_PATH + X11_Xaccessstr_INCLUDE_PATH + X11_Xdmcp_INCLUDE_PATH + X11_Xf86misc_INCLUDE_PATH + X11_Xkb_INCLUDE_PATH + X11_Xkblib_INCLUDE_PATH + X11_Xscreensaver_INCLUDE_PATH ) endif (UNIX) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index e114d450..777c47ef 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -28,3 +28,5 @@ ELSE(ZLIB_FOUND) MESSAGE(FATAL_ERROR "Could not find z library") ENDIF(ZLIB_FIND_REQUIRED) ENDIF(ZLIB_FOUND) + +MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) \ No newline at end of file -- cgit v1.2.1 From d7ac18a0704fbc236fa572a9e21b82de7177fa7b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Mar 2006 17:49:45 +0000 Subject: use kdecore instead of kxmlcore for determining kde4_lib_dir, since currently there is no kxmlcore.lib on windows CCMAIL: ch.ehrlicher@gmx.de Christian, does it work this way better for you ? Alex svn path=/trunk/KDE/kdelibs/; revision=520059 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8906ae8d..c0956a41 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -315,7 +315,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) /usr/local/lib) set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) - get_filename_component(KDE4_LIB_DIR ${KDE4_KXMLCORE_LIBRARY} PATH ) + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From af8adb651822d2383024655a3ecb6436495461e6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 18 Mar 2006 18:36:39 +0000 Subject: generate the files in CURRENT_BINARY_DIR again Alex svn path=/trunk/KDE/kdelibs/; revision=520067 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6846dba5..e7d0d643 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -116,7 +116,7 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) # the command for creating the source file from the kcfg file ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} - ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${_abs_PATH} + ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} DEPENDS ${_tmp_FILE} ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) # for the case that the header contains signals or slots, it has to be processed by moc -- cgit v1.2.1 From 4528118dd86e9ea7992b0bcb2341a01e8bf91cee Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 18 Mar 2006 21:43:13 +0000 Subject: As before with auto* tools, we now have the following configure option cmake option gcc arguments =============================================================================== --enable-debug=yes -DCMAKE_BUILD_TYPE=debug -g -O2 -fno-reorder-blocks\ -fno-schedule-insns -fno-inline --enable-debug=full -DCMAKE_BUILD_TYPE=debugfull -g3 -fno-inline --enable-final -DCMAKE_BUILD_TYPE=release -O2 In other words, developers should be using cmake -DCMAKE_BUILD_TYPE=debugfull svn path=/trunk/KDE/kdelibs/; revision=520087 --- modules/FindKDE4Internal.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c0956a41..29d47e5f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -577,10 +577,12 @@ if (CMAKE_COMPILER_IS_GNUCXX) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") + set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-O0 -g") + set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") endif (CMAKE_COMPILER_IS_GNUCXX) # it seems we prefer not to use a different postfix for debug libs, Alex -- cgit v1.2.1 From 15d2153c1b6cbc89e00a7b43df2d69678babc93a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 19 Mar 2006 17:56:45 +0000 Subject: Fix install icons now use install(FILES... RENAME...) => make install DESTDIR= works svn path=/trunk/KDE/kdelibs/; revision=520364 --- modules/KDE4Macros.cmake | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e7d0d643..314526c0 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -295,17 +295,13 @@ MACRO( _KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NA ENDIF(${_group} STREQUAL "action") # message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - SET(_ICON_INSTALL_NAME ${_install_PATH}/${_icon_GROUP}/${_install_NAME}) - FILE(APPEND ${_install_SCRIPT} "MESSAGE(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND ${_install_SCRIPT} "CONFIGURE_FILE( ${_orig_NAME} ${_ICON_INSTALL_NAME} COPYONLY) \n") + INSTALL(FILES ${_orig_NAME} DESTINATION ${_install_PATH}/${_icon_GROUP}/ RENAME ${_install_NAME} ) ENDIF ( NOT ${_group} STREQUAL ${_install_NAME} ) ENDMACRO( _KDE4_ADD_ICON_INSTALL_RULE ) MACRO(KDE4_INSTALL_ICONS _defaultpath _theme ) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "set(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") # first the png icons FILE(GLOB _icons *.png) @@ -327,7 +323,6 @@ MACRO(KDE4_INSTALL_ICONS _defaultpath _theme ) ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/${_theme}/scalable ${_group} ${_current_ICON} ${_name}) ENDforeach (_current_ICON) - INSTALL(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) ENDMACRO(KDE4_INSTALL_ICONS) -- cgit v1.2.1 From 13e0a7dab6a997b0cb87c823cfb084f1ded269d2 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 19 Mar 2006 22:23:22 +0000 Subject: Support the KDEDIR environment variable for the installation prefix. So you don't have to add -DCMAKE_INSTALL_PREFIX to the cmake command line if you'd rather use good old reliable $KDEDIR. Now to document this on the wiki. CCMAIL: kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=520422 --- modules/FindKDE4Internal.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 29d47e5f..c0bf8b54 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -152,7 +152,7 @@ # _KDE4_PLATFORM_DEFINITIONS is used only internally -cmake_minimum_required(VERSION 2.3.3) +cmake_minimum_required(VERSION 2.3.4) #this line includes FindQt.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) @@ -163,6 +163,12 @@ include (MacroLibrary) #add some KDE specific stuff +# set CMAKE_INSTALL_PREFIX to $KDEDIR, +if ($ENV{KDEDIR} MATCHES "[:print:]") + set(CMAKE_INSTALL_PREFIX $ENV{KDEDIR}) +endif ($ENV{KDEDIR} MATCHES "[:print:]") +message(STATUS "Setting installation dir: ${CMAKE_INSTALL_PREFIX}") + # the following are directories where stuff will be installed to set(CONFIG_INSTALL_DIR /share/config CACHE STRING "The config file install dir") -- cgit v1.2.1 From 1720f0ae036c00a5e5722b0e0fe8ad4074e3b395 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 20 Mar 2006 11:11:23 +0000 Subject: first try the include dir from qmake, and only use /usr/local/Trolltech/Qt-4*/include/Qt/ after the QTDIR environment variable (before cmake always picked up /usr/local/Trolltech/Qt-4.0.1/...) svn path=/trunk/KDE/kdelibs/; revision=520562 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 96db6164..533e1ed1 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -206,10 +206,10 @@ if(QT4_QMAKE_FOUND) FIND_PATH( QT_QTCORE_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" - ${QT_PATH_INCLUDE} ${QT_HEADERS_DIR}/QtCore ${QT_LIBRARY_DIR}/QtCore.framework/Headers $ENV{QTDIR}/include/QtCore + ${QT_PATH_INCLUDE} /usr/local/qt/include/QtCore /usr/local/include/QtCore /usr/lib/qt/include/QtCore -- cgit v1.2.1 From 659abe0d63dd8d5a979d6584fdf9dfb7b9b6c6ff Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 20 Mar 2006 15:05:33 +0000 Subject: remove code that sets CMAKE_INSTALL_PREFIX from $KDEDIR svn path=/trunk/KDE/kdelibs/; revision=520623 --- modules/FindKDE4Internal.cmake | 4 ---- 1 file changed, 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c0bf8b54..1eaf4f02 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -163,10 +163,6 @@ include (MacroLibrary) #add some KDE specific stuff -# set CMAKE_INSTALL_PREFIX to $KDEDIR, -if ($ENV{KDEDIR} MATCHES "[:print:]") - set(CMAKE_INSTALL_PREFIX $ENV{KDEDIR}) -endif ($ENV{KDEDIR} MATCHES "[:print:]") message(STATUS "Setting installation dir: ${CMAKE_INSTALL_PREFIX}") -- cgit v1.2.1 From 191846e3e21c697c28bd5c8a166edeb4072161e3 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 20 Mar 2006 21:05:37 +0000 Subject: minor cleanups: indenting, adding newline to end of file, etc. svn path=/trunk/KDE/kdelibs/; revision=520790 --- modules/CMakeLists.txt | 6 +- modules/CheckPrototypeExists.cmake | 8 +- modules/CheckTypeSize.cmake | 116 ++++++++++---------- modules/FindACL.cmake | 12 +-- modules/FindAGG.cmake | 18 ++-- modules/FindASPELL.cmake | 18 ++-- modules/FindAkode.cmake | 8 +- modules/FindBZip2.cmake | 18 ++-- modules/FindCarbon.cmake | 8 +- modules/FindCups.cmake | 18 ++-- modules/FindDNSSD.cmake | 18 ++-- modules/FindFAM.cmake | 18 ++-- modules/FindGIF.cmake | 18 ++-- modules/FindGNUWIN32.cmake | 20 ++-- modules/FindGettext.cmake | 18 ++-- modules/FindHSPELL.cmake | 18 ++-- modules/FindJPEG.cmake | 2 +- modules/FindJasper.cmake | 18 ++-- modules/FindLibArt.cmake | 18 ++-- modules/FindLibXml2.cmake | 20 ++-- modules/FindLibXslt.cmake | 18 ++-- modules/FindOpenEXR.cmake | 6 +- modules/FindOpenSSL.cmake | 18 ++-- modules/FindPCRE.cmake | 18 ++-- modules/FindQt4.cmake | 182 ++++++++++++++++---------------- modules/FindSasl2.cmake | 12 +-- modules/FindTIFF.cmake | 76 ++++++------- modules/FindX11.cmake | 146 ++++++++++++------------- modules/FindZLIB.cmake | 32 +++--- modules/MacroAddFileDependencies.cmake | 4 +- modules/MacroAdditionalCleanFiles.cmake | 4 +- modules/MacroGetenvWinPath.cmake | 6 +- modules/MacroLibrary.cmake | 8 +- modules/MacroOptionalFindPackage.cmake | 4 +- modules/UsePkgConfig.cmake | 24 ++--- modules/kde4uic.cmake | 8 +- modules/remove_files.cmake.in | 2 +- 37 files changed, 484 insertions(+), 482 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 74816f2f..9c5f4952 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -5,7 +5,7 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") install_files(/share/apps/cmake/modules FILES kde3init_dummy.cpp.in kde4init_dummy.cpp.in ${cmakeFiles} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex -set (FILES_TO_REMOVE +set(FILES_TO_REMOVE ${CMAKE_INSTALL_PREFIX}/share/apps/cmake/modules/FindKDE4.cmake ) # files to remove once we depend on the cmake release: @@ -20,6 +20,6 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/remove_files.cmake.in ${CMAKE_CURRENT install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) #file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") -#foreach( _current_FILE ${FILES_TO_REMOVE}) +#foreach ( _current_FILE ${FILES_TO_REMOVE}) # file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} ) -#endforeach( _current_FILE) +#endforeach ( _current_FILE) diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index ed0945df..da319f13 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -14,11 +14,11 @@ INCLUDE(CheckCXXSourceCompiles) -MACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) +MACRO (CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) SET(_INCLUDE_FILES) - FOREACH(it ${_HEADER}) + FOREACH (it ${_HEADER}) SET(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") - ENDFOREACH(it) + ENDFOREACH (it) SET(_CHECK_PROTO_EXISTS_SOURCE_CODE " ${_INCLUDE_FILES} @@ -31,5 +31,5 @@ int main() } ") CHECK_CXX_SOURCE_COMPILES("${_CHECK_PROTO_EXISTS_SOURCE_CODE}" ${_RESULT}) -ENDMACRO(CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) +ENDMACRO (CHECK_PROTOTYPE_EXISTS _SYMBOL _HEADER _RESULT) diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake index f907d311..87de1a76 100755 --- a/modules/CheckTypeSize.cmake +++ b/modules/CheckTypeSize.cmake @@ -1,58 +1,58 @@ -# - Check sizeof a type -# CHECK_TYPE_SIZE(TYPE VARIABLE) -# Check if the type exists and determine size of type. if the type -# exists, the size will be stored to the variable. -# VARIABLE - variable to store size if the type exists. -# HAVE_${VARIABLE} - does the variable exists or NOT - -MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) - IF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS - "${CMAKE_REQUIRED_FLAGS}") - FOREACH(def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) - IF("${def}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS - "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") - ENDIF("${def}") - ENDFOREACH(def) - SET(CHECK_TYPE_SIZE_PREINCLUDE) - SET(CHECK_TYPE_SIZE_PREMAIN) - FOREACH(def ${CMAKE_EXTRA_INCLUDE_FILES}) - SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") - ENDFOREACH(def) - CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" - "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) - FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" - CHECK_TYPE_SIZE_FILE_CONTENT) - MESSAGE(STATUS "Check size of ${TYPE}") - IF(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_TYPE_SIZE_ADD_LIBRARIES - "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ENDIF(CMAKE_REQUIRED_LIBRARIES) - - IF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_TYPE_SIZE_ADD_INCLUDES - "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - ENDIF(CMAKE_REQUIRED_INCLUDES) - - TRY_RUN(${VARIABLE} HAVE_${VARIABLE} - ${CMAKE_BINARY_DIR} - "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" - CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} - "${CHECK_TYPE_SIZE_ADD_INCLUDES}" - "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" - OUTPUT_VARIABLE OUTPUT) - IF(HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - done") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log - "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") - ELSE(HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - failed") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") - ENDIF(HAVE_${VARIABLE}) - ENDIF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) -ENDMACRO(CHECK_TYPE_SIZE) +# - Check sizeof a type +# CHECK_TYPE_SIZE(TYPE VARIABLE) +# Check if the type exists and determine size of type. if the type +# exists, the size will be stored to the variable. +# VARIABLE - variable to store size if the type exists. +# HAVE_${VARIABLE} - does the variable exists or NOT + +MACRO (CHECK_TYPE_SIZE TYPE VARIABLE) + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) + IF ("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS + "${CMAKE_REQUIRED_FLAGS}") + FOREACH (def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) + IF ("${def}") + SET(MACRO_CHECK_TYPE_SIZE_FLAGS + "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") + ENDIF ("${def}") + ENDFOREACH (def) + SET(CHECK_TYPE_SIZE_PREINCLUDE) + SET(CHECK_TYPE_SIZE_PREMAIN) + FOREACH (def ${CMAKE_EXTRA_INCLUDE_FILES}) + SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") + ENDFOREACH (def) + CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" + "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) + FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" + CHECK_TYPE_SIZE_FILE_CONTENT) + MESSAGE(STATUS "Check size of ${TYPE}") + IF (CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_TYPE_SIZE_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ENDIF (CMAKE_REQUIRED_LIBRARIES) + + IF (CMAKE_REQUIRED_INCLUDES) + SET(CHECK_TYPE_SIZE_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ENDIF (CMAKE_REQUIRED_INCLUDES) + + TRY_RUN(${VARIABLE} HAVE_${VARIABLE} + ${CMAKE_BINARY_DIR} + "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} + "${CHECK_TYPE_SIZE_ADD_INCLUDES}" + "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" + OUTPUT_VARIABLE OUTPUT) + IF (HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - done") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log + "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") + ELSE (HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - failed") + FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") + ENDIF (HAVE_${VARIABLE}) + ENDIF ("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") + SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) +ENDMACRO (CHECK_TYPE_SIZE) diff --git a/modules/FindACL.cmake b/modules/FindACL.cmake index d8d83e53..ada94c32 100644 --- a/modules/FindACL.cmake +++ b/modules/FindACL.cmake @@ -11,11 +11,11 @@ check_include_files(sys/xattr.h HAVE_SYS_XATTR_H) check_include_files(sys/acl.h HAVE_SYS_ACL_H) check_include_files(acl/libacl.h HAVE_ACL_LIBACL_H) -if(HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) +if (HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) set(ACL_HEADERS_FOUND TRUE) -endif(HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) +endif (HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) -if(ACL_HEADERS_FOUND) +if (ACL_HEADERS_FOUND) FIND_LIBRARY(ACL_LIBS NAMES acl PATHS /usr/lib @@ -27,13 +27,13 @@ if(ACL_HEADERS_FOUND) /usr/lib /usr/local/lib ) -endif(ACL_HEADERS_FOUND) +endif (ACL_HEADERS_FOUND) -if(ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) +if (ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) set(ACL_FOUND TRUE) set(ACL_LIBS ${ACL_LIBS} ${ATTR_LIBS}) message(STATUS "Found ACL support: ${ACL_LIBS}") -endif(ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) +endif (ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) MARK_AS_ADVANCED(ACL_LIBS) diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 18b39654..2e92ad31 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -29,18 +29,18 @@ FIND_LIBRARY(AGG_LIBRARIES NAMES agg /usr/local/lib ) -if(AGG_INCLUDE_DIR AND AGG_LIBRARIES) +if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) set(AGG_FOUND TRUE) -endif(AGG_INCLUDE_DIR AND AGG_LIBRARIES) +endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) -if(AGG_FOUND) - if(NOT AGG_FIND_QUIETLY) +if (AGG_FOUND) + if (NOT AGG_FIND_QUIETLY) message(STATUS "Found AGG: ${AGG_LIBRARIES}") - endif(NOT AGG_FIND_QUIETLY) -else(AGG_FOUND) - if(AGG_FIND_REQUIRED) + endif (NOT AGG_FIND_QUIETLY) +else (AGG_FOUND) + if (AGG_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find AGG") - endif(AGG_FIND_REQUIRED) -endif(AGG_FOUND) + endif (AGG_FIND_REQUIRED) +endif (AGG_FOUND) MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index 855f55c7..9d856c60 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -19,18 +19,18 @@ FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15 /usr/local/lib ) -if(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) +if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) set(ASPELL_FOUND TRUE) -endif(ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) +endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) -if(ASPELL_FOUND) - if(NOT ASPELL_FIND_QUIETLY) +if (ASPELL_FOUND) + if (NOT ASPELL_FIND_QUIETLY) message(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") - endif(NOT ASPELL_FIND_QUIETLY) -else(ASPELL_FOUND) - if(ASPELL_FIND_REQUIRED) + endif (NOT ASPELL_FIND_QUIETLY) +else (ASPELL_FOUND) + if (ASPELL_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find ASPELL") - endif(ASPELL_FIND_REQUIRED) -endif(ASPELL_FOUND) + endif (ASPELL_FIND_REQUIRED) +endif (ASPELL_FOUND) MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index a90fdc0b..47efe871 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -15,18 +15,18 @@ set(AKODE_LIBRARIES) set(AKODE_INCLUDE_DIR) # if akode-config has been found -IF(AKODECONFIG_EXECUTABLE) +IF (AKODECONFIG_EXECUTABLE) EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_LIBRARIES) EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_INCLUDE_DIR) - IF(AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + IF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) SET(AKODE_FOUND TRUE) STRING(REGEX REPLACE "-I(.+)" "\\1" AKODE_INCLUDE_DIR "${AKODE_INCLUDE_DIR}") message(STATUS "Found aKode: ${AKODE_LIBRARIES}") - ENDIF(AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + ENDIF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) MARK_AS_ADVANCED(AKODE_INCLUDE_DIR AKODE_LIBRARIES) -ENDIF(AKODECONFIG_EXECUTABLE) +ENDIF (AKODECONFIG_EXECUTABLE) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 4a6fae71..3bcc1748 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -22,20 +22,20 @@ FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 ${GNUWIN32_DIR}/lib ) -if(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) +if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) set(BZIP2_FOUND TRUE) INCLUDE(CheckLibraryExists) CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) -endif(BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) +endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) -if(BZIP2_FOUND) - if(NOT BZip2_FIND_QUIETLY) +if (BZIP2_FOUND) + if (NOT BZip2_FIND_QUIETLY) message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - endif(NOT BZip2_FIND_QUIETLY) -else(BZIP2_FOUND) - if(BZip2_FIND_REQUIRED) + endif (NOT BZip2_FIND_QUIETLY) +else (BZIP2_FOUND) + if (BZip2_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find BZip2") - endif(BZip2_FIND_REQUIRED) -endif(BZIP2_FOUND) + endif (BZip2_FIND_REQUIRED) +endif (BZIP2_FOUND) MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) diff --git a/modules/FindCarbon.cmake b/modules/FindCarbon.cmake index f2fa376b..94e81509 100644 --- a/modules/FindCarbon.cmake +++ b/modules/FindCarbon.cmake @@ -2,7 +2,7 @@ INCLUDE(CMakeFindFrameworks) CMAKE_FIND_FRAMEWORKS(Carbon) -if(Carbon_FRAMEWORKS) - set (CARBON_LIBRARY "-framework Carbon" CACHE FILEPATH "Carbon framework" FORCE) - set (CARBON_FOUND 1) -endif(Carbon_FRAMEWORKS) +if (Carbon_FRAMEWORKS) + set(CARBON_LIBRARY "-framework Carbon" CACHE FILEPATH "Carbon framework" FORCE) + set(CARBON_FOUND 1) +endif (Carbon_FRAMEWORKS) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 4d069336..cf2c46be 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -19,18 +19,18 @@ FIND_LIBRARY(CUPS_LIBRARIES NAMES cups /usr/local/lib ) -if(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) +if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) set(CUPS_FOUND TRUE) -endif(CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) +endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) -if(CUPS_FOUND) - if(NOT Cups_FIND_QUIETLY) +if (CUPS_FOUND) + if (NOT Cups_FIND_QUIETLY) message(STATUS "Found Cups: ${CUPS_LIBRARIES}") - endif(NOT Cups_FIND_QUIETLY) -else(CUPS_FOUND) - if(Cups_FIND_REQUIRED) + endif (NOT Cups_FIND_QUIETLY) +else (CUPS_FOUND) + if (Cups_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find Cups") - endif(Cups_FIND_REQUIRED) -endif(CUPS_FOUND) + endif (Cups_FIND_REQUIRED) +endif (CUPS_FOUND) MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index cf6c5a0b..56b2f7f5 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -20,18 +20,18 @@ FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd /usr/local/lib ) -if(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) +if (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) set(DNSSD_FOUND TRUE) -endif(DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) +endif (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) -if(DNSSD_FOUND) - if(NOT DNSSD_FIND_QUIETLY) +if (DNSSD_FOUND) + if (NOT DNSSD_FIND_QUIETLY) message(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") - endif(NOT DNSSD_FIND_QUIETLY) -else(DNSSD_FOUND) - if(DNSSD_FIND_REQUIRED) + endif (NOT DNSSD_FIND_QUIETLY) +else (DNSSD_FOUND) + if (DNSSD_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find DNSSD") - endif(DNSSD_FIND_REQUIRED) -endif(DNSSD_FOUND) + endif (DNSSD_FIND_REQUIRED) +endif (DNSSD_FOUND) MARK_AS_ADVANCED(DNSSD_INCLUDE_DIR DNSSD_LIBRARIES) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index 225a2e29..164841c8 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -17,20 +17,20 @@ FIND_LIBRARY(FAM_LIBRARIES NAMES fam ) -if(FAM_INCLUDE_DIR AND FAM_LIBRARIES) +if (FAM_INCLUDE_DIR AND FAM_LIBRARIES) set(FAM_FOUND TRUE) -endif(FAM_INCLUDE_DIR AND FAM_LIBRARIES) +endif (FAM_INCLUDE_DIR AND FAM_LIBRARIES) -if(FAM_FOUND) - if(NOT FAM_FIND_QUIETLY) +if (FAM_FOUND) + if (NOT FAM_FIND_QUIETLY) message(STATUS "Found fam: ${FAM_LIBRARIES}") - endif(NOT FAM_FIND_QUIETLY) -else(FAM_FOUND) - if(FAM_FIND_REQUIRED) + endif (NOT FAM_FIND_QUIETLY) +else (FAM_FOUND) + if (FAM_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find fam library") - endif(FAM_FIND_REQUIRED) -endif(FAM_FOUND) + endif (FAM_FIND_REQUIRED) +endif (FAM_FOUND) MARK_AS_ADVANCED(FAM_INCLUDE_DIR FAM_LIBRARIES) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index b7bb1b8b..f8b40d48 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -22,18 +22,18 @@ FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib ${GNUWIN32_DIR}/lib ) -if(GIF_INCLUDE_DIR AND GIF_LIBRARIES) +if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) set(GIF_FOUND TRUE) -endif(GIF_INCLUDE_DIR AND GIF_LIBRARIES) +endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) -if(GIF_FOUND) - if(NOT GIF_FIND_QUIETLY) +if (GIF_FOUND) + if (NOT GIF_FIND_QUIETLY) message(STATUS "Found GIF: ${GIF_LIBRARIES}") - endif(NOT GIF_FIND_QUIETLY) -else(GIF_FOUND) - if(GIF_FIND_REQUIRED) + endif (NOT GIF_FIND_QUIETLY) +else (GIF_FOUND) + if (GIF_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find GIF") - endif(GIF_FIND_REQUIRED) -endif(GIF_FOUND) + endif (GIF_FIND_REQUIRED) +endif (GIF_FOUND) MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 11a11672..ebd27bba 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -9,24 +9,24 @@ FIND_FILE(GNUWIN32_DIR GNUWIN32 "C:/" ) -if(GNUWIN32_DIRECTORY) +if (GNUWIN32_DIRECTORY) set(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) set(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) set(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) set(GNUWIN32_FOUND TRUE) -else(GNUWIN32_DIRECTORY) +else (GNUWIN32_DIRECTORY) set(GNUWIN32_FOUND) -endif(GNUWIN32_DIRECTORY) +endif (GNUWIN32_DIRECTORY) -if(GNUWIN32_FOUND) - if(NOT GNUWIN32_FIND_QUIETLY) +if (GNUWIN32_FOUND) + if (NOT GNUWIN32_FIND_QUIETLY) message(STATUS "Found GNUWIN32: ${GNUWIN32_DIR}") - endif(NOT GNUWIN32_FIND_QUIETLY) -else(GNUWIN32_FOUND) - if(GNUWIN32_FIND_REQUIRED) + endif (NOT GNUWIN32_FIND_QUIETLY) +else (GNUWIN32_FOUND) + if (GNUWIN32_FIND_REQUIRED) message(SEND_ERROR "Could NOT find GNUWIN32") - endif(GNUWIN32_FIND_REQUIRED) -endif(GNUWIN32_FOUND) + endif (GNUWIN32_FIND_REQUIRED) +endif (GNUWIN32_FOUND) endif (WIN32) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index b6dd3de5..2244b742 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -16,20 +16,20 @@ check_include_files(libintl.h HAVE_LIBINTL_H) set(GETTEXT_INCLUDE_DIR) set(GETTEXT_LIBRARIES) -if(HAVE_LIBINTL_H) +if (HAVE_LIBINTL_H) set(GETTEXT_FOUND TRUE) set(GETTEXT_SOURCE "libintl.h") -endif(HAVE_LIBINTL_H) +endif (HAVE_LIBINTL_H) -if(GETTEXT_FOUND) - if(NOT Gettext_FIND_QUIETLY) +if (GETTEXT_FOUND) + if (NOT Gettext_FIND_QUIETLY) message(STATUS "Gettext functionality present (${GETTEXT_SOURCE})") - endif(NOT Gettext_FIND_QUIETLY) -else(GETTEXT_FOUND) - if(NOT Gettext_FIND_QUIETLY) + endif (NOT Gettext_FIND_QUIETLY) +else (GETTEXT_FOUND) + if (NOT Gettext_FIND_QUIETLY) message(STATUS "Gettext functionality NOT present, " "translations will not be available") - endif(NOT Gettext_FIND_QUIETLY) -endif(GETTEXT_FOUND) + endif (NOT Gettext_FIND_QUIETLY) +endif (GETTEXT_FOUND) MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake index 45475e9a..ba8b21aa 100644 --- a/modules/FindHSPELL.cmake +++ b/modules/FindHSPELL.cmake @@ -19,19 +19,19 @@ FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell /usr/local/lib ) -if(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) +if (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) set(HSPELL_FOUND TRUE) -endif(HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) +endif (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) -if(HSPELL_FOUND) - if(NOT HSPELL_FIND_QUIETLY) +if (HSPELL_FOUND) + if (NOT HSPELL_FIND_QUIETLY) message(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") - endif(NOT HSPELL_FIND_QUIETLY) -else(HSPELL_FOUND) - if(HSPELL_FIND_REQUIRED) + endif (NOT HSPELL_FIND_QUIETLY) +else (HSPELL_FOUND) + if (HSPELL_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find HSPELL") - endif(HSPELL_FIND_REQUIRED) -endif(HSPELL_FOUND) + endif (HSPELL_FIND_REQUIRED) +endif (HSPELL_FOUND) MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) diff --git a/modules/FindJPEG.cmake b/modules/FindJPEG.cmake index dfda592c..9113df28 100644 --- a/modules/FindJPEG.cmake +++ b/modules/FindJPEG.cmake @@ -31,7 +31,7 @@ IF (JPEG_LIBRARY) ENDIF (JPEG_LIBRARY) # Deprecated declarations. -SET (NATIVE_JPEG_INCLUDE_PATH ${JPEG_INCLUDE_DIR} ) +SET(NATIVE_JPEG_INCLUDE_PATH ${JPEG_INCLUDE_DIR} ) GET_FILENAME_COMPONENT (NATIVE_JPEG_LIB_PATH ${JPEG_LIBRARY} PATH) MARK_AS_ADVANCED( diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index f5835276..9e876fec 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -18,20 +18,20 @@ FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper FIND_PACKAGE(JPEG) -if(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) +if (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) set(JASPER_FOUND TRUE) set(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) -endif(JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) +endif (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) -if(JASPER_FOUND) - if(NOT Jasper_FIND_QUIETLY) +if (JASPER_FOUND) + if (NOT Jasper_FIND_QUIETLY) message(STATUS "Found jasper: ${JASPER_LIBRARIES}") - endif(NOT Jasper_FIND_QUIETLY) -else(JASPER_FOUND) - if(Jasper_FIND_REQUIRED) + endif (NOT Jasper_FIND_QUIETLY) +else (JASPER_FOUND) + if (Jasper_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find jasper library") - endif(Jasper_FIND_REQUIRED) -endif(JASPER_FOUND) + endif (Jasper_FIND_REQUIRED) +endif (JASPER_FOUND) MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES JASPER_LIBRARY) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index a04495ca..05d278b1 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -36,20 +36,20 @@ FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 ) -if(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) +if (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) set(LIBART_FOUND TRUE) -endif(LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) +endif (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) -if(LIBART_FOUND) - if(NOT LibArt_FIND_QUIETLY) +if (LIBART_FOUND) + if (NOT LibArt_FIND_QUIETLY) message(STATUS "Found libart: ${LIBART_LIBRARIES}") - endif(NOT LibArt_FIND_QUIETLY) -else(LIBART_FOUND) - if(LibArt_FIND_REQUIRED) + endif (NOT LibArt_FIND_QUIETLY) +else (LIBART_FOUND) + if (LibArt_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find libart") - endif(LibArt_FIND_REQUIRED) -endif(LIBART_FOUND) + endif (LibArt_FIND_REQUIRED) +endif (LIBART_FOUND) MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index c25cc7e2..d6214d76 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -33,18 +33,18 @@ FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 ${GNUWIN32_DIR}/lib ) -if(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) +if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) set(LIBXML2_FOUND TRUE) -endif(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) +endif (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) -if(LIBXML2_FOUND) - if(NOT LibXml2_FIND_QUIETLY) +if (LIBXML2_FOUND) + if (NOT LibXml2_FIND_QUIETLY) message(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") - endif(NOT LibXml2_FIND_QUIETLY) -else(LIBXML2_FOUND) - if(LibXml2_FIND_REQUIRED) + endif (NOT LibXml2_FIND_QUIETLY) +else (LIBXML2_FOUND) + if (LibXml2_FIND_REQUIRED) message(SEND_ERROR "Could NOT find LibXml2") - endif(LibXml2_FIND_REQUIRED) -endif(LIBXML2_FOUND) + endif (LibXml2_FIND_REQUIRED) +endif (LIBXML2_FOUND) -MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) \ No newline at end of file +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 4abb6f9f..be9cd16f 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -33,19 +33,19 @@ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt ${GNUWIN32_DIR}/lib ) -if(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) +if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) set(LIBXSLT_FOUND TRUE) -endif(LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) +endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) -if(LIBXSLT_FOUND) - if(NOT LibXslt_FIND_QUIETLY) +if (LIBXSLT_FOUND) + if (NOT LibXslt_FIND_QUIETLY) message(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") - endif(NOT LibXslt_FIND_QUIETLY) -else(LIBXSLT_FOUND) - if(LibXslt_FIND_REQUIRED) + endif (NOT LibXslt_FIND_QUIETLY) +else (LIBXSLT_FOUND) + if (LibXslt_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find LibXslt") - endif(LibXslt_FIND_REQUIRED) -endif(LIBXSLT_FOUND) + endif (LibXslt_FIND_REQUIRED) +endif (LIBXSLT_FOUND) MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 80a1445f..db0aa3be 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -44,11 +44,11 @@ FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf /usr/local/lib ) -set( OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) +set(OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - set( OPENEXR_FOUND TRUE) - set( OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) + set(OPENEXR_FOUND TRUE) + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 952d4c20..ada33cf0 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -19,20 +19,20 @@ FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ${GNUWIN32_DIR}/lib ) -if(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) set(OPENSSL_FOUND TRUE) -endif(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) -if(OPENSSL_FOUND) - if(NOT OpenSSL_FIND_QUIETLY) +if (OPENSSL_FOUND) + if (NOT OpenSSL_FIND_QUIETLY) message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") - endif(NOT OpenSSL_FIND_QUIETLY) -else(OPENSSL_FOUND) - if(OpenSSL_FIND_REQUIRED) + endif (NOT OpenSSL_FIND_QUIETLY) +else (OPENSSL_FOUND) + if (OpenSSL_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find OpenSSL") - endif(OpenSSL_FIND_REQUIRED) -endif(OPENSSL_FOUND) + endif (OpenSSL_FIND_REQUIRED) +endif (OPENSSL_FOUND) MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index b7935d26..d3a84023 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -34,19 +34,19 @@ FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") -if(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) +if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) set(PCRE_FOUND TRUE) -endif(PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) +endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) -if(PCRE_FOUND) - if(NOT PCRE_FIND_QUIETLY) +if (PCRE_FOUND) + if (NOT PCRE_FIND_QUIETLY) message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") - endif(NOT PCRE_FIND_QUIETLY) -else(PCRE_FOUND) - if(PCRE_FIND_REQUIRED) + endif (NOT PCRE_FIND_QUIETLY) +else (PCRE_FOUND) + if (PCRE_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find PCRE") - endif(PCRE_FIND_REQUIRED) -endif(PCRE_FOUND) + endif (PCRE_FIND_REQUIRED) +endif (PCRE_FOUND) MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 533e1ed1..f5b9a7b0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -119,11 +119,11 @@ set(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) -set( QT_DEFINITIONS "") +set(QT_DEFINITIONS "") if (WIN32) set(QT_DEFINITIONS -DQT_DLL) -endif(WIN32) +endif (WIN32) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/) set(GLOB_TEMP_VAR) @@ -153,24 +153,24 @@ endif (NOT QT_QMAKE_EXECUTABLE) if (QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - if(QTVERSION MATCHES "4.*") + if (QTVERSION MATCHES "4.*") set(QT4_QMAKE_FOUND TRUE) - endif(QTVERSION MATCHES "4.*") + endif (QTVERSION MATCHES "4.*") endif (QT_QMAKE_EXECUTABLE) -if(QT4_QMAKE_FOUND) +if (QT4_QMAKE_FOUND) # Set QT_LIBRARY_DIR - if(NOT QT_LIBRARY_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + if (NOT QT_LIBRARY_DIR) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_LIBS" OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - if(EXISTS "${QT_LIBRARY_DIR_TMP}") + if (EXISTS "${QT_LIBRARY_DIR_TMP}") set(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") - else(EXISTS "${QT_LIBRARY_DIR_TMP}") + else (EXISTS "${QT_LIBRARY_DIR_TMP}") message("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") message("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") - endif(EXISTS "${QT_LIBRARY_DIR_TMP}") - endif(NOT QT_LIBRARY_DIR) + endif (EXISTS "${QT_LIBRARY_DIR_TMP}") + endif (NOT QT_LIBRARY_DIR) if (APPLE) if (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) @@ -191,12 +191,12 @@ if(QT4_QMAKE_FOUND) ######################################## if (NOT QT_HEADERS_DIR) # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header - if(QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + if (QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" OUTPUT_VARIABLE qt_headers ) set(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - endif(QT_QMAKE_EXECUTABLE) + endif (QT_QMAKE_EXECUTABLE) endif (NOT QT_HEADERS_DIR) FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-3*/include/Qt/) @@ -204,7 +204,7 @@ if(QT4_QMAKE_FOUND) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) set(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) - FIND_PATH( QT_QTCORE_INCLUDE_DIR QtGlobal + FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" ${QT_HEADERS_DIR}/QtCore ${QT_LIBRARY_DIR}/QtCore.framework/Headers @@ -219,23 +219,23 @@ if(QT4_QMAKE_FOUND) /usr/include/qt4/QtCore) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - if( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + if (QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) if (QT_USE_FRAMEWORKS) set(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) else (QT_USE_FRAMEWORKS) - STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) - set( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + STRING(REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) + set(QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") endif (QT_USE_FRAMEWORKS) - endif( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + endif (QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - if( NOT QT_INCLUDE_DIR) - if( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - message( FATAL_ERROR "Could NOT find QtGlobal header") - endif( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - endif( NOT QT_INCLUDE_DIR) + if (NOT QT_INCLUDE_DIR) + if (NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find QtGlobal header") + endif (NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + endif (NOT QT_INCLUDE_DIR) - FIND_PATH( QT_DOC_DIR /html/qcoreapplication.html + FIND_PATH(QT_DOC_DIR /html/qcoreapplication.html ${QT_PATH_INCLUDE} $ENV{QTDIR}/doc /usr/local/qt/doc @@ -249,86 +249,86 @@ if(QT4_QMAKE_FOUND) endif (QT_USE_FRAMEWORKS) # Set QT_QT3SUPPORT_INCLUDE_DIR - FIND_PATH( QT_QT3SUPPORT_INCLUDE_DIR Qt3Support + FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support ${QT_INCLUDE_DIR}/Qt3Support ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers ) # Set QT_QT_INCLUDE_DIR - FIND_PATH( QT_QT_INCLUDE_DIR qglobal.h + FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h ${QT_INCLUDE_DIR}/Qt ${QT_LIBRARY_DIR}/QtCore.framework/Headers ) # Set QT_QTGUI_INCLUDE_DIR - FIND_PATH( QT_QTGUI_INCLUDE_DIR QtGui + FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui ${QT_INCLUDE_DIR}/QtGui ${QT_LIBRARY_DIR}/QtGui.framework/Headers ) # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH( QT_QTSVG_INCLUDE_DIR QtSvg + FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg ${QT_INCLUDE_DIR}/QtSvg ${QT_LIBRARY_DIR}/QtSvg.framework/Headers ) # Set QT_QTTEST_INCLUDE_DIR - FIND_PATH( QT_QTTEST_INCLUDE_DIR QtTest + FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest ${QT_INCLUDE_DIR}/QtTest ${QT_LIBRARY_DIR}/QtTest.framework/Headers ) # Set QT_QTMOTIF_INCLUDE_DIR - FIND_PATH( QT_QTMOTIF_INCLUDE_DIR QtMotif ${QT_INCLUDE_DIR}/QtMotif) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif ${QT_INCLUDE_DIR}/QtMotif) # Set QT_QTNETWORK_INCLUDE_DIR - FIND_PATH( QT_QTNETWORK_INCLUDE_DIR QtNetwork + FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork ${QT_INCLUDE_DIR}/QtNetwork ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers ) # Set QT_QTNSPLUGIN_INCLUDE_DIR - FIND_PATH( QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin + FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin ${QT_INCLUDE_DIR}/QtNsPlugin ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers ) # Set QT_QTOPENGL_INCLUDE_DIR - FIND_PATH( QT_QTOPENGL_INCLUDE_DIR QtOpenGL + FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL ${QT_INCLUDE_DIR}/QtOpenGL ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers ) # Set QT_QTSQL_INCLUDE_DIR - FIND_PATH( QT_QTSQL_INCLUDE_DIR QtSql + FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql ${QT_INCLUDE_DIR}/QtSql ${QT_LIBRARY_DIR}/QtSql.framework/Headers ) # Set QT_QTXML_INCLUDE_DIR - FIND_PATH( QT_QTXML_INCLUDE_DIR QtXml + FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml ${QT_INCLUDE_DIR}/QtXml ${QT_LIBRARY_DIR}/QtXml.framework/Headers ) # Set QT_QTASSISTANT_INCLUDE_DIR - FIND_PATH( QT_QTASSISTANT_INCLUDE_DIR QtAssistant + FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant ${QT_INCLUDE_DIR}/QtAssistant ${QT_HEADERS_DIR}/QtAssistant ) # Set QT_QTDESIGNER_INCLUDE_DIR - FIND_PATH( QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents + FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents ${QT_INCLUDE_DIR}/QtDesigner ${QT_HEADERS_DIR}/QtDesigner ) # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR ) + MARK_AS_ADVANCED(QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR ) # Set QT_INCLUDES - set( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) + set(QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) ######################################## @@ -383,7 +383,7 @@ if(QT4_QMAKE_FOUND) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of # the filename - FIND_LIBRARY( QT_QTCORE_LIBRARY + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} @@ -394,11 +394,12 @@ if(QT4_QMAKE_FOUND) /usr/lib /usr/share/qt4/lib C:/Progra~1/qt/lib - /usr/lib/qt4 ) + /usr/lib/qt4 + ) # Set QT_QTCORE_LIBRARY_DEBUG by searching for a lib with "QtCore_debug" # as part of the filename - FIND_LIBRARY( QT_QTCORE_LIBRARY_DEBUG + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCore_debug QtCored4 PATHS ${QT_LIBRARY_DIR} @@ -409,7 +410,8 @@ if(QT4_QMAKE_FOUND) /usr/lib /usr/share/qt4/lib C:/Progra~1/qt/lib - /usr/lib/qt4 ) + /usr/lib/qt4 + ) # Set QT_QT3SUPPORT_LIBRARY FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR}) @@ -467,7 +469,7 @@ if(QT4_QMAKE_FOUND) # ############################################ - MACRO(_QT4_ADJUST_LIB_VARS basename) + MACRO (_QT4_ADJUST_LIB_VARS basename) if (QT_${basename}_INCLUDE_DIR) # if only the release version was found, set the debug variable also to the release version @@ -490,7 +492,7 @@ if(QT4_QMAKE_FOUND) # Make variables changeble to the advanced user MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) - ENDMACRO(_QT4_ADJUST_LIB_VARS) + ENDMACRO (_QT4_ADJUST_LIB_VARS) _QT4_ADJUST_LIB_VARS(QTCORE) _QT4_ADJUST_LIB_VARS(QTGUI) @@ -513,7 +515,7 @@ if(QT4_QMAKE_FOUND) # ####################################### if (NOT QT_BINARY_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_BINS" OUTPUT_VARIABLE qt_bins ) set(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") @@ -543,7 +545,7 @@ if(QT4_QMAKE_FOUND) endif (NOT QT_MOC_EXECUTABLE) if (QT_MOC_EXECUTABLE) - set ( QT_WRAP_CPP "YES") + set(QT_WRAP_CPP "YES") endif (QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_UIC3_EXECUTABLE @@ -582,7 +584,7 @@ if(QT4_QMAKE_FOUND) endif (NOT QT_UIC_EXECUTABLE) if (QT_UIC_EXECUTABLE) - set ( QT_WRAP_UI "YES") + set(QT_WRAP_UI "YES") endif (QT_UIC_EXECUTABLE) FIND_PROGRAM(QT_RCC_EXECUTABLE @@ -611,16 +613,16 @@ if(QT4_QMAKE_FOUND) # ###################################### - MACRO(QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) + MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) set(${_moc_INC_DIRS}) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - foreach(_current ${_inc_DIRS}) + foreach (_current ${_inc_DIRS}) set(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - endforeach(_current ${_inc_DIRS}) - ENDMACRO(QT4_GET_MOC_INC_DIRS) + endforeach (_current ${_inc_DIRS}) + ENDMACRO (QT4_GET_MOC_INC_DIRS) - MACRO(QT4_GENERATE_MOC infile outfile ) + MACRO (QT4_GENERATE_MOC infile outfile ) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) @@ -630,17 +632,17 @@ if(QT4_QMAKE_FOUND) COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile}) - ENDMACRO(QT4_GENERATE_MOC) + ENDMACRO (QT4_GENERATE_MOC) # QT4_WRAP_CPP(outfiles inputfile ... ) # TODO perhaps add support for -D, -U and other minor options - MACRO(QT4_WRAP_CPP outfiles ) + MACRO (QT4_WRAP_CPP outfiles ) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) - FOREACH(it ${ARGN}) + FOREACH (it ${ARGN}) GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) @@ -650,16 +652,16 @@ if(QT4_QMAKE_FOUND) ARGS ${moc_includes} -o ${outfile} ${it} MAIN_DEPENDENCY ${it}) SET(${outfiles} ${${outfiles}} ${outfile}) - endforeach(it) + endforeach (it) - ENDMACRO(QT4_WRAP_CPP) + ENDMACRO (QT4_WRAP_CPP) # QT4_WRAP_UI(outfiles inputfile ... ) - MACRO(QT4_WRAP_UI outfiles ) + MACRO (QT4_WRAP_UI outfiles ) - FOREACH(it ${ARGN}) + FOREACH (it ${ARGN}) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) @@ -668,16 +670,16 @@ if(QT4_QMAKE_FOUND) ARGS -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile}) SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) + ENDFOREACH (it) - ENDMACRO(QT4_WRAP_UI) + ENDMACRO (QT4_WRAP_UI) # QT4_ADD_RESOURCE(outfiles inputfile ... ) # TODO perhaps consider adding support for compression and root options to rcc - MACRO(QT4_ADD_RESOURCES outfiles ) + MACRO (QT4_ADD_RESOURCES outfiles ) - FOREACH(it ${ARGN}) + FOREACH (it ${ARGN}) GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) @@ -686,9 +688,9 @@ if(QT4_QMAKE_FOUND) ARGS -name ${outfilename} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile} ) SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) + ENDFOREACH (it) - ENDMACRO(QT4_ADD_RESOURCES) + ENDMACRO (QT4_ADD_RESOURCES) @@ -698,18 +700,18 @@ if(QT4_QMAKE_FOUND) # ###################################### # if the includes,libraries,moc,uic and rcc are found then we have it - if( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - set( QT4_FOUND "YES" ) - if( NOT Qt4_FIND_QUIETLY) + if (QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + set(QT4_FOUND "YES" ) + if (NOT Qt4_FIND_QUIETLY) message(STATUS "Found Qt-Version ${QTVERSION}") # message(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") - endif( NOT Qt4_FIND_QUIETLY) - else( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - set( QT4_FOUND "NO") - if( Qt4_FIND_REQUIRED) - message( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") - endif( Qt4_FIND_REQUIRED) - endif( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + endif (NOT Qt4_FIND_QUIETLY) + else (QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + set(QT4_FOUND "NO") + if (Qt4_FIND_REQUIRED) + message(FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + endif (Qt4_FIND_REQUIRED) + endif (QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) set(QT_FOUND ${QT4_FOUND}) @@ -719,11 +721,11 @@ if(QT4_QMAKE_FOUND) # ####################################### # for unix add X11 stuff - if(UNIX) + if (UNIX) FIND_PACKAGE(X11) FIND_PACKAGE(Threads) set(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - endif(UNIX) + endif (UNIX) ####################################### @@ -732,17 +734,17 @@ if(QT4_QMAKE_FOUND) # ####################################### # Backwards compatibility for CMake1.4 and 1.2 - set (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) - set (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + set(QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + set(QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) - set( QT_QT_LIBRARY "") - set( QT_QTMAIN_LIBRARY "") -else(QT4_QMAKE_FOUND) - if(QT_QMAKE_EXECUTABLE) + set(QT_QT_LIBRARY "") + set(QT_QTMAIN_LIBRARY "") +else (QT4_QMAKE_FOUND) + if (QT_QMAKE_EXECUTABLE) message("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") - endif(QT_QMAKE_EXECUTABLE) - if( Qt4_FIND_REQUIRED) - message( FATAL_ERROR "Qt qmake NOT found!") - endif( Qt4_FIND_REQUIRED) + endif (QT_QMAKE_EXECUTABLE) + if (Qt4_FIND_REQUIRED) + message(FATAL_ERROR "Qt qmake NOT found!") + endif (Qt4_FIND_REQUIRED) -endif(QT4_QMAKE_FOUND) +endif (QT4_QMAKE_FOUND) diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index 4684735c..4d941806 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -17,16 +17,16 @@ FIND_LIBRARY(SASL2_LIBRARIES NAMES sasl2 ) -if(SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) +if (SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) set(SASL2_FOUND TRUE) -endif(SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) +endif (SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) -if(SASL2_FOUND) - if(NOT SASL2_FIND_QUIETLY) +if (SASL2_FOUND) + if (NOT SASL2_FIND_QUIETLY) message(STATUS "Found sasl2: ${SASL2_LIBRARIES}") - endif(NOT SASL2_FIND_QUIETLY) -endif(SASL2_FOUND) + endif (NOT SASL2_FIND_QUIETLY) +endif (SASL2_FOUND) MARK_AS_ADVANCED(SASL2_INCLUDE_DIR SASL2_LIBRARIES) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 28286f94..d0c13d67 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -1,38 +1,38 @@ -# - Find TIFF library -# Find the native TIFF includes and library -# This module defines -# TIFF_INCLUDE_DIR, where to find tiff.h, etc. -# TIFF_LIBRARIES, libraries to link against to use TIFF. -# TIFF_FOUND, If false, do NOT try to use TIFF. -# also defined, but NOT for general use are -# TIFF_LIBRARY, where to find the TIFF library. - -FIND_PATH(TIFF_INCLUDE_DIR tiff.h - /usr/local/include - /usr/include -) - -set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) -FIND_LIBRARY(TIFF_LIBRARY - NAMES ${TIFF_NAMES} - PATHS /usr/lib /usr/local/lib - ) - - -if(TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - set(TIFF_FOUND "YES") - set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) -endif(TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - - -if (TIFF_FOUND) - if (NOT TIFF_FIND_QUIETLY) - message(STATUS "Found TIFF: ${TIFF_LIBRARY}") - endif (NOT TIFF_FIND_QUIETLY) -else (TIFF_FOUND) - if (TIFF_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find TIFF") - endif (TIFF_FIND_REQUIRED) -endif (TIFF_FOUND) - -MARK_AS_ADVANCED( TIFF_INCLUDE_DIR TIFF_LIBRARY ) +# - Find TIFF library +# Find the native TIFF includes and library +# This module defines +# TIFF_INCLUDE_DIR, where to find tiff.h, etc. +# TIFF_LIBRARIES, libraries to link against to use TIFF. +# TIFF_FOUND, If false, do NOT try to use TIFF. +# also defined, but NOT for general use are +# TIFF_LIBRARY, where to find the TIFF library. + +FIND_PATH(TIFF_INCLUDE_DIR tiff.h + /usr/local/include + /usr/include +) + +set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) +FIND_LIBRARY(TIFF_LIBRARY + NAMES ${TIFF_NAMES} + PATHS /usr/lib /usr/local/lib +) + + +if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + set(TIFF_FOUND "YES") + set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) +endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + + +if (TIFF_FOUND) + if (NOT TIFF_FIND_QUIETLY) + message(STATUS "Found TIFF: ${TIFF_LIBRARY}") + endif (NOT TIFF_FIND_QUIETLY) +else (TIFF_FOUND) + if (TIFF_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find TIFF") + endif (TIFF_FIND_REQUIRED) +endif (TIFF_FOUND) + +MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY ) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 867761b2..9c6b1803 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -60,177 +60,177 @@ if (UNIX) FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) - if(X11_X11_INCLUDE_PATH) + if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) - endif(X11_X11_INCLUDE_PATH) + endif (X11_X11_INCLUDE_PATH) - if(X11_Xlib_INCLUDE_PATH) + if (X11_Xlib_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH}) - endif(X11_Xlib_INCLUDE_PATH) + endif (X11_Xlib_INCLUDE_PATH) - if(X11_Xutil_INCLUDE_PATH) + if (X11_Xutil_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) - endif(X11_Xutil_INCLUDE_PATH) + endif (X11_Xutil_INCLUDE_PATH) - if(X11_X11_LIB) + if (X11_X11_LIB) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) - endif(X11_X11_LIB) + endif (X11_X11_LIB) - if(X11_Xext_LIB) + if (X11_Xext_LIB) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) - endif(X11_Xext_LIB) + endif (X11_Xext_LIB) - if(X11_Xau_LIB) + if (X11_Xau_LIB) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) set(X11_Xau_FOUND TRUE) - endif(X11_Xau_LIB) + endif (X11_Xau_LIB) - if(X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) + if (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xdmcp_LIB}) set(X11_Xdmcp_FOUND TRUE) - endif(X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) + endif (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) - if(X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) + if (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) set(X11_Xaccess_FOUND TRUE) set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) - endif(X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) + endif (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) - if(X11_Xcomposite_INCLUDE_PATH) + if (X11_Xcomposite_INCLUDE_PATH) set(X11_Xcomposite_FOUND TRUE) - endif(X11_Xcomposite_INCLUDE_PATH) + endif (X11_Xcomposite_INCLUDE_PATH) - if(X11_XTest_INCLUDE_PATH) + if (X11_XTest_INCLUDE_PATH) set(X11_XTest_FOUND TRUE) - endif(X11_XTest_INCLUDE_PATH) + endif (X11_XTest_INCLUDE_PATH) - if(X11_Xinerama_INCLUDE_PATH) + if (X11_Xinerama_INCLUDE_PATH) set(X11_Xinerama_FOUND TRUE) - endif(X11_Xinerama_INCLUDE_PATH) + endif (X11_Xinerama_INCLUDE_PATH) - if(X11_Xfixes_INCLUDE_PATH) + if (X11_Xfixes_INCLUDE_PATH) set(X11_Xfixes_FOUND TRUE) - endif(X11_Xfixes_INCLUDE_PATH) + endif (X11_Xfixes_INCLUDE_PATH) - if(X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) + if (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) set(X11_Xrender_FOUND TRUE) - endif(X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) + endif (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) - if(X11_Xrandr_INCLUDE_PATH) + if (X11_Xrandr_INCLUDE_PATH) set(X11_Xrandr_FOUND TRUE) - endif(X11_Xrandr_INCLUDE_PATH) + endif (X11_Xrandr_INCLUDE_PATH) - if(X11_Xxf86misc_INCLUDE_PATH) + if (X11_Xxf86misc_INCLUDE_PATH) set(X11_Xxf86misc_FOUND TRUE) - endif(X11_Xxf86misc_INCLUDE_PATH) + endif (X11_Xxf86misc_INCLUDE_PATH) - if(X11_Xcursor_INCLUDE_PATH) + if (X11_Xcursor_INCLUDE_PATH) set(X11_Xcursor_FOUND TRUE) - endif(X11_Xcursor_INCLUDE_PATH) + endif (X11_Xcursor_INCLUDE_PATH) - if(X11_Xscreensaver_INCLUDE_PATH) + if (X11_Xscreensaver_INCLUDE_PATH) set(X11_Xscreensaver_FOUND TRUE) - endif(X11_Xscreensaver_INCLUDE_PATH) + endif (X11_Xscreensaver_INCLUDE_PATH) - if(X11_dpms_INCLUDE_PATH) + if (X11_dpms_INCLUDE_PATH) set(X11_dpms_FOUND TRUE) - endif(X11_dpms_INCLUDE_PATH) + endif (X11_dpms_INCLUDE_PATH) - if( X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) + if (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) set(X11_Xkb_FOUND TRUE) - endif( X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) + endif (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) - if(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) + if (X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) set(X11_kompmgr_FOUND TRUE) - endif(X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) + endif (X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) # Deprecated variable for backwards compatibility with CMake 1.4 - if(X11_X11_INCLUDE_PATH) - if(X11_LIBRARIES) + if (X11_X11_INCLUDE_PATH) + if (X11_LIBRARIES) set(X11_FOUND 1) - endif(X11_LIBRARIES) - endif(X11_X11_INCLUDE_PATH) + endif (X11_LIBRARIES) + endif (X11_X11_INCLUDE_PATH) set(X11_LIBRARY_DIR "") - if(X11_X11_LIB) + if (X11_X11_LIB) GET_FILENAME_COMPONENT(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) - endif(X11_X11_LIB) + endif (X11_X11_LIB) - if(X11_FOUND) + if (X11_FOUND) INCLUDE(CheckFunctionExists) INCLUDE(CheckLibraryExists) # Translated from an autoconf-generated configure script. # See libs.m4 in autoconf's m4 directory. - if($ENV{ISC} MATCHES "^yes$") + if ($ENV{ISC} MATCHES "^yes$") set(X11_X_EXTRA_LIBS -lnsl_s -linet) - else($ENV{ISC} MATCHES "^yes$") + else ($ENV{ISC} MATCHES "^yes$") set(X11_X_EXTRA_LIBS "") # See if XOpenDisplay in X11 works by itself. CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) - if(NOT X11_LIB_X11_SOLO) + if (NOT X11_LIB_X11_SOLO) # Find library needed for dnet_ntoa. CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) if (X11_LIB_DNET_HAS_DNET_NTOA) - set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) + set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) else (X11_LIB_DNET_HAS_DNET_NTOA) CHECK_LIBRARY_EXISTS("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) if (X11_LIB_DNET_STUB_HAS_DNET_NTOA) - set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) + set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) endif (X11_LIB_DNET_STUB_HAS_DNET_NTOA) endif (X11_LIB_DNET_HAS_DNET_NTOA) - endif(NOT X11_LIB_X11_SOLO) + endif (NOT X11_LIB_X11_SOLO) # Find library needed for gethostbyname. CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) - if(NOT CMAKE_HAVE_GETHOSTBYNAME) + if (NOT CMAKE_HAVE_GETHOSTBYNAME) CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) + set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) else (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) CHECK_LIBRARY_EXISTS("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) if (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) - set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) + set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) endif (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) endif (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - endif(NOT CMAKE_HAVE_GETHOSTBYNAME) + endif (NOT CMAKE_HAVE_GETHOSTBYNAME) # Find library needed for connect. CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT) - if(NOT CMAKE_HAVE_CONNECT) + if (NOT CMAKE_HAVE_CONNECT) CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) if (CMAKE_LIB_SOCKET_HAS_CONNECT) - set (X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) + set(X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) endif (CMAKE_LIB_SOCKET_HAS_CONNECT) - endif(NOT CMAKE_HAVE_CONNECT) + endif (NOT CMAKE_HAVE_CONNECT) # Find library needed for remove. CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE) - if(NOT CMAKE_HAVE_REMOVE) + if (NOT CMAKE_HAVE_REMOVE) CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) if (CMAKE_LIB_POSIX_HAS_REMOVE) - set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) + set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) endif (CMAKE_LIB_POSIX_HAS_REMOVE) - endif(NOT CMAKE_HAVE_REMOVE) + endif (NOT CMAKE_HAVE_REMOVE) # Find library needed for shmat. CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT) - if(NOT CMAKE_HAVE_SHMAT) + if (NOT CMAKE_HAVE_SHMAT) CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) if (CMAKE_LIB_IPS_HAS_SHMAT) - set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) + set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) endif (CMAKE_LIB_IPS_HAS_SHMAT) - endif(NOT CMAKE_HAVE_SHMAT) - endif($ENV{ISC} MATCHES "^yes$") + endif (NOT CMAKE_HAVE_SHMAT) + endif ($ENV{ISC} MATCHES "^yes$") CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - if(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - set (X11_X_PRE_LIBS -lSM -lICE) - endif(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + if (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + set(X11_X_PRE_LIBS -lSM -lICE) + endif (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) # Build the final list of libraries. - set (X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) - endif(X11_FOUND) + set(X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) + endif (X11_FOUND) MARK_AS_ADVANCED( X11_X11_INCLUDE_PATH @@ -270,6 +270,6 @@ if (UNIX) X11_Xkb_INCLUDE_PATH X11_Xkblib_INCLUDE_PATH X11_Xscreensaver_INCLUDE_PATH - ) + ) endif (UNIX) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index 777c47ef..1e01a4da 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,32 +1,32 @@ FIND_PACKAGE(GNUWIN32) FIND_PATH(ZLIB_INCLUDE_DIR zlib.h -/usr/include -/usr/local/include -${GNUWIN32_DIR}/include + /usr/include + /usr/local/include + ${GNUWIN32_DIR}/include ) FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib PATHS -/usr/lib -/usr/local/lib -${GNUWIN32_DIR}/lib + /usr/lib + /usr/local/lib + ${GNUWIN32_DIR}/lib ) -IF(ZLIB_INCLUDE_DIR) +IF (ZLIB_INCLUDE_DIR) SET(ZLIB_FOUND TRUE) -ENDIF(ZLIB_INCLUDE_DIR) +ENDIF (ZLIB_INCLUDE_DIR) -IF(ZLIB_FOUND) - IF(NOT ZLIB_FIND_QUIETLY) +IF (ZLIB_FOUND) + IF (NOT ZLIB_FIND_QUIETLY) MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}") - ENDIF(NOT ZLIB_FIND_QUIETLY) -ELSE(ZLIB_FOUND) - IF(ZLIB_FIND_REQUIRED) + ENDIF (NOT ZLIB_FIND_QUIETLY) +ELSE (ZLIB_FOUND) + IF (ZLIB_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find z library") - ENDIF(ZLIB_FIND_REQUIRED) -ENDIF(ZLIB_FOUND) + ENDIF (ZLIB_FIND_REQUIRED) +ENDIF (ZLIB_FOUND) -MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) \ No newline at end of file +MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) diff --git a/modules/MacroAddFileDependencies.cmake b/modules/MacroAddFileDependencies.cmake index 0025a13e..13596912 100644 --- a/modules/MacroAddFileDependencies.cmake +++ b/modules/MacroAddFileDependencies.cmake @@ -1,7 +1,7 @@ # - MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) # MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) -MACRO(MACRO_ADD_FILE_DEPENDENCIES _file) +MACRO (MACRO_ADD_FILE_DEPENDENCIES _file) GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS) if (_deps) @@ -12,4 +12,4 @@ MACRO(MACRO_ADD_FILE_DEPENDENCIES _file) SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}") -ENDMACRO(MACRO_ADD_FILE_DEPENDENCIES) +ENDMACRO (MACRO_ADD_FILE_DEPENDENCIES) diff --git a/modules/MacroAdditionalCleanFiles.cmake b/modules/MacroAdditionalCleanFiles.cmake index 5f1725ea..0da79c73 100644 --- a/modules/MacroAdditionalCleanFiles.cmake +++ b/modules/MacroAdditionalCleanFiles.cmake @@ -1,7 +1,7 @@ # - MACRO_ADDITIONAL_CLEAN_FILES(files...) # MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) -MACRO(MACRO_ADDITIONAL_CLEAN_FILES) +MACRO (MACRO_ADDITIONAL_CLEAN_FILES) GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ADDITIONAL_MAKE_CLEAN_FILES ) if (_tmp_DIR_PROPS) @@ -11,5 +11,5 @@ MACRO(MACRO_ADDITIONAL_CLEAN_FILES) endif (_tmp_DIR_PROPS) SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${_tmp_DIR_PROPS}") -ENDMACRO(MACRO_ADDITIONAL_CLEAN_FILES) +ENDMACRO (MACRO_ADDITIONAL_CLEAN_FILES) diff --git a/modules/MacroGetenvWinPath.cmake b/modules/MacroGetenvWinPath.cmake index 6df21e04..b18f7f63 100644 --- a/modules/MacroGetenvWinPath.cmake +++ b/modules/MacroGetenvWinPath.cmake @@ -1,5 +1,5 @@ -MACRO(MACRO_GETENV_WIN_PATH var name) +MACRO (MACRO_GETENV_WIN_PATH var name) set(${var} $ENV{${name}}) - STRING( REGEX REPLACE "\\\\" "/" ${var} "${${var}}" ) -ENDMACRO(MACRO_GETENV_WIN_PATH var name) + STRING(REGEX REPLACE "\\\\" "/" ${var} "${${var}}") +ENDMACRO (MACRO_GETENV_WIN_PATH var name) diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 7da67217..fb953d85 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -1,8 +1,8 @@ # - include MacroLibrary offers a collection of macros which extend the built-in cmake commands # OPTIONAL_FIND_PACKAGE( [QUIT] ) -INCLUDE (MacroOptionalFindPackage) -INCLUDE (MacroAdditionalCleanFiles) -INCLUDE (MacroAddFileDependencies) -INCLUDE (MacroGetenvWinPath) +INCLUDE(MacroOptionalFindPackage) +INCLUDE(MacroAdditionalCleanFiles) +INCLUDE(MacroAddFileDependencies) +INCLUDE(MacroGetenvWinPath) diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake index c7a05cf0..70681312 100644 --- a/modules/MacroOptionalFindPackage.cmake +++ b/modules/MacroOptionalFindPackage.cmake @@ -7,7 +7,7 @@ # The standard _FOUND variables can be used in the same way # as when using the normal FIND_PACKAGE() -MACRO(MACRO_OPTIONAL_FIND_PACKAGE _name ) +MACRO (MACRO_OPTIONAL_FIND_PACKAGE _name ) OPTION(WITH_${_name} "Search for ${_name} package" ON) if (WITH_${_name}) FIND_PACKAGE(${_name} ${ARGN}) @@ -18,5 +18,5 @@ MACRO(MACRO_OPTIONAL_FIND_PACKAGE _name ) set(${_name}_LIBRARY) set(${_name}_LIBRARIES) endif (WITH_${_name}) -ENDMACRO(MACRO_OPTIONAL_FIND_PACKAGE) +ENDMACRO (MACRO_OPTIONAL_FIND_PACKAGE) diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index 4490d2c1..f39ec148 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -6,9 +6,9 @@ # if pkg-config was NOT found or the specified software package doesn't exist, the # variable will be empty when the function returns, otherwise they will contain the respective information -FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) +FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin) -MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) +MACRO (PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) # reset the variables at the beginning SET(${_include_DIR}) SET(${_link_DIR}) @@ -16,25 +16,25 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) SET(${_cflags}) # if pkg-config has been found - IF(PKGCONFIG_EXECUTABLE) + IF (PKGCONFIG_EXECUTABLE) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull) # and if the package of interest also exists for pkg-config, then get the information - IF(NOT _return_VALUE) + IF (NOT _return_VALUE) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR}) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir OUTPUT_VARIABLE ${_link_DIR} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir OUTPUT_VARIABLE ${_link_DIR}) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs OUTPUT_VARIABLE ${_link_FLAGS} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs OUTPUT_VARIABLE ${_link_FLAGS}) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags}) - ENDIF(NOT _return_VALUE) + ENDIF (NOT _return_VALUE) - ENDIF(PKGCONFIG_EXECUTABLE) + ENDIF (PKGCONFIG_EXECUTABLE) -ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) +ENDMACRO (PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index a39be0a2..19fb10aa 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -1,6 +1,6 @@ #using a ui3 file with uic3 -if(KDE3_IMPL) +if (KDE3_IMPL) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -nounload -tr tr2i18n @@ -9,10 +9,10 @@ if(KDE3_IMPL) OUTPUT_VARIABLE _uic_CONTENTS ERROR_QUIET ) -endif(KDE3_IMPL) +endif (KDE3_IMPL) -if(KDE3_HEADER) +if (KDE3_HEADER) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} -nounload -tr tr2i18n @@ -21,7 +21,7 @@ if(KDE3_HEADER) ERROR_QUIET ) set(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) -endif(KDE3_HEADER) +endif (KDE3_HEADER) # the kde4 branch if (KDE4_HEADER) diff --git a/modules/remove_files.cmake.in b/modules/remove_files.cmake.in index 41cfcdb7..8594d5f2 100644 --- a/modules/remove_files.cmake.in +++ b/modules/remove_files.cmake.in @@ -1,2 +1,2 @@ -exec_program( ${CMAKE_COMMAND} ARGS -E remove ${FILES_TO_REMOVE} ) +exec_program(${CMAKE_COMMAND} ARGS -E remove ${FILES_TO_REMOVE}) -- cgit v1.2.1 From 0154f664ebf11b8a698d94a4fd417cbff97be81a Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 20 Mar 2006 21:09:34 +0000 Subject: minor cleanups: indenting, adding newline to end of file, etc. svn path=/trunk/KDE/kdelibs/; revision=520791 --- modules/FindKDE3.cmake | 57 +++++++++++----------- modules/FindKDEWIN32.cmake | 6 +-- modules/KDE3Macros.cmake | 118 ++++++++++++++++++++++----------------------- 3 files changed, 91 insertions(+), 90 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake index e43c7db1..cbe41546 100644 --- a/modules/FindKDE3.cmake +++ b/modules/FindKDE3.cmake @@ -62,9 +62,9 @@ # # Author: Alexander Neundorf -IF(NOT UNIX) +IF (NOT UNIX) MESSAGE(FATAL_ERROR "Compiling KDE3 applications and libraries under Windows is not supported") -ENDIF(NOT UNIX) +ENDIF (NOT UNIX) SET(QT_MT_REQUIRED TRUE) @@ -81,16 +81,16 @@ SET(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) SET(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -D_GNU_SOURCE) #only on linux, but NOT e.g. on FreeBSD: -IF(CMAKE_SYSTEM_NAME MATCHES "Linux") - SET (KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE) - SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") -ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux") +IF (CMAKE_SYSTEM_NAME MATCHES "Linux") + SET(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") +ENDIF (CMAKE_SYSTEM_NAME MATCHES "Linux") # works on FreeBSD, NOT tested on NetBSD and OpenBSD IF (CMAKE_SYSTEM_NAME MATCHES BSD) - SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") ENDIF (CMAKE_SYSTEM_NAME MATCHES BSD) @@ -134,18 +134,19 @@ FIND_PROGRAM(KDE3_DCOPIDL_EXECUTABLE NAME dcopidl PATHS $ENV{KDEDIR}/bin /opt/kde/bin /opt/kde3/bin - ) +) FIND_PROGRAM(KDE3_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS $ENV{KDEDIR}/bin /opt/kde/bin - /opt/kde3/bin) + /opt/kde3/bin +) FIND_PROGRAM(KDE3_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS $ENV{KDEDIR}/bin /opt/kde/bin - /opt/kde3/bin) - + /opt/kde3/bin +) # KDE3Macros.cmake contains all the KDE specific macros INCLUDE(KDE3Macros) @@ -160,35 +161,35 @@ ENDIF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DC MACRO (KDE3_PRINT_RESULTS) - IF(KDE3_INCLUDE_DIR) + IF (KDE3_INCLUDE_DIR) MESSAGE(STATUS "Found KDE3 include dir: ${KDE3_INCLUDE_DIR}") - ELSE(KDE3_INCLUDE_DIR) + ELSE (KDE3_INCLUDE_DIR) MESSAGE(STATUS "Didn't find KDE3 headers") - ENDIF(KDE3_INCLUDE_DIR) + ENDIF (KDE3_INCLUDE_DIR) - IF(KDE3_LIB_DIR) + IF (KDE3_LIB_DIR) MESSAGE(STATUS "Found KDE3 library dir: ${KDE3_LIB_DIR}") - ELSE(KDE3_LIB_DIR) + ELSE (KDE3_LIB_DIR) MESSAGE(STATUS "Didn't find KDE3 core library") - ENDIF(KDE3_LIB_DIR) + ENDIF (KDE3_LIB_DIR) - IF(KDE3_DCOPIDL_EXECUTABLE) + IF (KDE3_DCOPIDL_EXECUTABLE) MESSAGE(STATUS "Found KDE3 dcopidl preprocessor: ${KDE3_DCOPIDL_EXECUTABLE}") - ELSE(KDE3_DCOPIDL_EXECUTABLE) + ELSE (KDE3_DCOPIDL_EXECUTABLE) MESSAGE(STATUS "Didn't find the KDE3 dcopidl preprocessor") - ENDIF(KDE3_DCOPIDL_EXECUTABLE) + ENDIF (KDE3_DCOPIDL_EXECUTABLE) - IF(KDE3_DCOPIDL2CPP_EXECUTABLE) + IF (KDE3_DCOPIDL2CPP_EXECUTABLE) MESSAGE(STATUS "Found KDE3 dcopidl2cpp preprocessor: ${KDE3_DCOPIDL2CPP_EXECUTABLE}") - ELSE(KDE3_DCOPIDL2CPP_EXECUTABLE) + ELSE (KDE3_DCOPIDL2CPP_EXECUTABLE) MESSAGE(STATUS "Didn't find the KDE3 dcopidl2cpp preprocessor") - ENDIF(KDE3_DCOPIDL2CPP_EXECUTABLE) + ENDIF (KDE3_DCOPIDL2CPP_EXECUTABLE) - IF(KDE3_KCFGC_EXECUTABLE) + IF (KDE3_KCFGC_EXECUTABLE) MESSAGE(STATUS "Found KDE3 kconfig_compiler preprocessor: ${KDE3_KCFGC_EXECUTABLE}") - ELSE(KDE3_KCFGC_EXECUTABLE) + ELSE (KDE3_KCFGC_EXECUTABLE) MESSAGE(STATUS "Didn't find the KDE3 kconfig_compiler preprocessor") - ENDIF(KDE3_KCFGC_EXECUTABLE) + ENDIF (KDE3_KCFGC_EXECUTABLE) ENDMACRO (KDE3_PRINT_RESULTS) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 2c981cc0..301f756f 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -33,15 +33,15 @@ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) # add the winsock2 library, using find_library or something like this would probably be better set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) - if(MINGW) + if (MINGW) #mingw compiler set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - else(MINGW) + else (MINGW) # msvc compiler # add the MS SDK include directory if available MACRO_GETENV_WIN_PATH(MSSDK_DIR MSSDK) set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) - endif(MINGW) + endif (MINGW) endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake index 99dfb5f7..b8ff129f 100644 --- a/modules/KDE3Macros.cmake +++ b/modules/KDE3Macros.cmake @@ -22,7 +22,7 @@ INCLUDE(MacroLibrary) #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) -MACRO(KDE3_ADD_DCOP_SKELS _sources) +MACRO (KDE3_ADD_DCOP_SKELS _sources) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -35,11 +35,11 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) SET(HAVE_${_basename}_KIDL_RULE ON) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} - COMMAND ${KDE3_DCOPIDL_EXECUTABLE} - ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} - DEPENDS ${_tmp_FILE} - ) - ENDIF (NOT HAVE_${_basename}_KIDL_RULE) + COMMAND ${KDE3_DCOPIDL_EXECUTABLE} + ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} + DEPENDS ${_tmp_FILE} + ) + ENDIF (NOT HAVE_${_basename}_KIDL_RULE) IF (NOT HAVE_${_basename}_SKEL_RULE) SET(HAVE_${_basename}_SKEL_RULE ON) @@ -48,7 +48,7 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} DEPENDS ${_kidl} - ) + ) ENDIF (NOT HAVE_${_basename}_SKEL_RULE) @@ -56,10 +56,10 @@ MACRO(KDE3_ADD_DCOP_SKELS _sources) ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_ADD_DCOP_SKELS) +ENDMACRO (KDE3_ADD_DCOP_SKELS) -MACRO(KDE3_ADD_DCOP_STUBS _sources) +MACRO (KDE3_ADD_DCOP_STUBS _sources) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -77,7 +77,7 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) COMMAND ${KDE3_DCOPIDL_EXECUTABLE} ARGS ${tmp_FILE} > ${_kidl} DEPENDS ${tmp_FILE} - ) + ) ENDIF (NOT HAVE_${_basename}_KIDL_RULE) @@ -89,7 +89,7 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} DEPENDS ${_kidl} - ) + ) ENDIF (NOT HAVE_${_basename}_STUB_RULE) @@ -97,10 +97,10 @@ MACRO(KDE3_ADD_DCOP_STUBS _sources) ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_ADD_DCOP_STUBS) +ENDMACRO (KDE3_ADD_DCOP_STUBS) -MACRO(KDE3_ADD_KCFG_FILES _sources) +MACRO (KDE3_ADD_KCFG_FILES _sources) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -116,18 +116,18 @@ MACRO(KDE3_ADD_KCFG_FILES _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE3_KCFGC_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ) + DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE}) SET(${_sources} ${${_sources}} ${_src_FILE}) ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_ADD_KCFG_FILES) +ENDMACRO (KDE3_ADD_KCFG_FILES) #create the moc files and add them to the list of sources #usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) -MACRO(KDE3_ADD_MOC_FILES _sources) +MACRO (KDE3_ADD_MOC_FILES _sources) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -144,14 +144,14 @@ MACRO(KDE3_ADD_MOC_FILES _sources) SET(${_sources} ${${_sources}} ${_moc}) ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_ADD_MOC_FILES) +ENDMACRO (KDE3_ADD_MOC_FILES) -GET_FILENAME_COMPONENT( KDE3_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) +GET_FILENAME_COMPONENT(KDE3_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) -MACRO(KDE3_ADD_UI_FILES _sources ) +MACRO (KDE3_ADD_UI_FILES _sources) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -183,14 +183,14 @@ MACRO(KDE3_ADD_UI_FILES _sources ) DEPENDS ${_header} ) - SET(${_sources} ${${_sources}} ${_src} ${_moc} ) + SET(${_sources} ${${_sources}} ${_src} ${_moc}) ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_ADD_UI_FILES) +ENDMACRO (KDE3_ADD_UI_FILES) -MACRO(KDE3_AUTOMOC) - SET(_matching_FILES ) +MACRO (KDE3_AUTOMOC) + SET(_matching_FILES) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) @@ -211,7 +211,7 @@ MACRO(KDE3_AUTOMOC) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) + IF (_match) FOREACH (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") @@ -229,57 +229,57 @@ MACRO(KDE3_AUTOMOC) MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) - ENDIF(_match) + ENDIF (_match) ENDIF (EXISTS ${_abs_FILE} AND NOT _skip) ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_AUTOMOC) +ENDMACRO (KDE3_AUTOMOC) -MACRO(KDE3_INSTALL_ICONS _theme) - ADD_CUSTOM_TARGET(install_icons ) - SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ) +MACRO (KDE3_INSTALL_ICONS _theme) + ADD_CUSTOM_TARGET(install_icons) + SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") FILE(GLOB _icons *.png) - FOREACH(_current_ICON ${_icons} ) + FOREACH (_current_ICON ${_icons}) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") SET(_icon_GROUP "actions") - IF(${_group} STREQUAL "mime") + IF (${_group} STREQUAL "mime") SET(_icon_GROUP "mimetypes") - ENDIF(${_group} STREQUAL "mime") + ENDIF (${_group} STREQUAL "mime") - IF(${_group} STREQUAL "filesys") + IF (${_group} STREQUAL "filesys") SET(_icon_GROUP "filesystems") - ENDIF(${_group} STREQUAL "filesys") + ENDIF (${_group} STREQUAL "filesys") - IF(${_group} STREQUAL "device") + IF (${_group} STREQUAL "device") SET(_icon_GROUP "devices") - ENDIF(${_group} STREQUAL "device") + ENDIF (${_group} STREQUAL "device") - IF(${_group} STREQUAL "app") + IF (${_group} STREQUAL "app") SET(_icon_GROUP "apps") - ENDIF(${_group} STREQUAL "app") + ENDIF (${_group} STREQUAL "app") - IF(${_group} STREQUAL "action") + IF (${_group} STREQUAL "action") SET(_icon_GROUP "actions") - ENDIF(${_group} STREQUAL "action") + ENDIF (${_group} STREQUAL "action") -# message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) +# message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}") SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE( ${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") + FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE(${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") ENDFOREACH (_current_ICON) -ENDMACRO(KDE3_INSTALL_ICONS) +ENDMACRO (KDE3_INSTALL_ICONS) -MACRO(KDE3_INSTALL_LIBTOOL_FILE _target) +MACRO (KDE3_INSTALL_LIBTOOL_FILE _target) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) @@ -304,23 +304,23 @@ MACRO(KDE3_INSTALL_LIBTOOL_FILE _target) FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/lib/kde3'\n") INSTALL_FILES(/lib/kde3 FILES ${_laname}) -ENDMACRO(KDE3_INSTALL_LIBTOOL_FILE) +ENDMACRO (KDE3_INSTALL_LIBTOOL_FILE) -MACRO(KDE3_CREATE_FINAL_FILE _filename) +MACRO (KDE3_CREATE_FINAL_FILE _filename) FILE(WRITE ${_filename} "//autogenerated file\n") FOREACH (_current_FILE ${ARGN}) FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n") ENDFOREACH (_current_FILE) -ENDMACRO(KDE3_CREATE_FINAL_FILE) +ENDMACRO (KDE3_CREATE_FINAL_FILE) OPTION(KDE3_ENABLE_FINAL "Enable final all-in-one compilation") OPTION(KDE3_BUILD_TESTS "Build the tests") -MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) +MACRO (KDE3_ADD_KPART _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise SET the prefix empty IF (${_with_PREFIX} STREQUAL "WITH_PREFIX") SET(_first_SRC) @@ -335,41 +335,41 @@ MACRO(KDE3_ADD_KPART _target_NAME _with_PREFIX) ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) ENDIF (KDE3_ENABLE_FINAL) - IF(_first_SRC) + IF (_first_SRC) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") - ENDIF(_first_SRC) + ENDIF (_first_SRC) KDE3_INSTALL_LIBTOOL_FILE(${_target_NAME}) -ENDMACRO(KDE3_ADD_KPART) +ENDMACRO (KDE3_ADD_KPART) -MACRO(KDE3_ADD_KDEINIT_EXECUTABLE _target_NAME ) +MACRO (KDE3_ADD_KDEINIT_EXECUTABLE _target_NAME) IF (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) ELSE (KDE3_ENABLE_FINAL) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) + ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN}) ENDIF (KDE3_ENABLE_FINAL) CONFIGURE_FILE(${KDE3_MODULE_DIR}/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) - TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) + ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + TARGET_LINK_LIBRARIES(${_target_NAME} kdeinit_${_target_NAME}) -ENDMACRO(KDE3_ADD_KDEINIT_EXECUTABLE) +ENDMACRO (KDE3_ADD_KDEINIT_EXECUTABLE) -MACRO(KDE3_ADD_EXECUTABLE _target_NAME ) +MACRO (KDE3_ADD_EXECUTABLE _target_NAME) IF (KDE3_ENABLE_FINAL) KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp) ELSE (KDE3_ENABLE_FINAL) - ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) + ADD_EXECUTABLE(${_target_NAME} ${ARGN}) ENDIF (KDE3_ENABLE_FINAL) -ENDMACRO(KDE3_ADD_EXECUTABLE) +ENDMACRO (KDE3_ADD_EXECUTABLE) -- cgit v1.2.1 From d50825bde682346a691237912d3afb35232b02ac Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 20 Mar 2006 21:10:45 +0000 Subject: minor cleanups: indenting, adding newline to end of file, etc. svn path=/trunk/KDE/kdelibs/; revision=520793 --- modules/KDE4Macros.cmake | 126 +++++++++++++++++++++++------------------------ 1 file changed, 63 insertions(+), 63 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 314526c0..f9c0566f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -20,7 +20,7 @@ #create the kidl and skeletion file for dcop stuff #usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) -MACRO(KDE4_ADD_DCOP_SKELS _sources) +MACRO (KDE4_ADD_DCOP_SKELS _sources) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -49,7 +49,7 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) - MACRO_ADDITIONAL_CLEAN_FILES( ${_skel_H}) + MACRO_ADDITIONAL_CLEAN_FILES(${_skel_H}) endif (NOT HAVE_${_basename}_SKEL_RULE) @@ -57,10 +57,10 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources) endforeach (_current_FILE) -ENDMACRO(KDE4_ADD_DCOP_SKELS) +ENDMACRO (KDE4_ADD_DCOP_SKELS) -MACRO(KDE4_ADD_DCOP_STUBS _sources) +MACRO (KDE4_ADD_DCOP_STUBS _sources) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -89,7 +89,7 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) - MACRO_ADDITIONAL_CLEAN_FILES( ${_stub_H}) + MACRO_ADDITIONAL_CLEAN_FILES(${_stub_H}) endif (NOT HAVE_${_basename}_STUB_RULE) @@ -97,10 +97,10 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources) endforeach (_current_FILE) -ENDMACRO(KDE4_ADD_DCOP_STUBS) +ENDMACRO (KDE4_ADD_DCOP_STUBS) -MACRO(KDE4_ADD_KCFG_FILES _sources) +MACRO (KDE4_ADD_KCFG_FILES _sources) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -133,14 +133,14 @@ MACRO(KDE4_ADD_KCFG_FILES _sources) endforeach (_current_FILE) -ENDMACRO(KDE4_ADD_KCFG_FILES) +ENDMACRO (KDE4_ADD_KCFG_FILES) -GET_FILENAME_COMPONENT( KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) +GET_FILENAME_COMPONENT(KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) -MACRO(KDE4_ADD_UI_FILES _sources ) +MACRO (KDE4_ADD_UI_FILES _sources ) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -162,12 +162,12 @@ MACRO(KDE4_ADD_UI_FILES _sources ) DEPENDS ${_tmp_FILE} ) endforeach (_current_FILE) -ENDMACRO(KDE4_ADD_UI_FILES) +ENDMACRO (KDE4_ADD_UI_FILES) #create the implementation files from the ui files and add them to the list of sources #usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) -MACRO(KDE4_ADD_UI3_FILES _sources ) +MACRO (KDE4_ADD_UI3_FILES _sources ) QT4_GET_MOC_INC_DIRS(_moc_INCS) @@ -216,10 +216,10 @@ MACRO(KDE4_ADD_UI3_FILES _sources ) set(${_sources} ${${_sources}} ${_src} ${_moc} ) endforeach (_current_FILE) -ENDMACRO(KDE4_ADD_UI3_FILES) +ENDMACRO (KDE4_ADD_UI3_FILES) -MACRO(KDE4_AUTOMOC) +MACRO (KDE4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) set(_matching_FILES ) @@ -242,7 +242,7 @@ MACRO(KDE4_AUTOMOC) get_filename_component(_abs_PATH ${_abs_FILE} PATH) string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - if(_match) + if (_match) foreach (_current_MOC_INC ${_match}) string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") @@ -260,52 +260,52 @@ MACRO(KDE4_AUTOMOC) macro_add_file_dependencies(${_abs_FILE} ${_moc}) endforeach (_current_MOC_INC) - endif(_match) + endif (_match) endif (EXISTS ${_abs_FILE} AND NOT _skip) endforeach (_current_FILE) -endmacro(KDE4_AUTOMOC) +endmacro (KDE4_AUTOMOC) # only used internally by KDE4_INSTALL_ICONS -MACRO( _KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) +MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) # if the string doesn't match the pattern, the result is the full string, so all three have the same content - IF( NOT ${_group} STREQUAL ${_install_NAME} ) + IF (NOT ${_group} STREQUAL ${_install_NAME} ) SET(_icon_GROUP "actions") - IF(${_group} STREQUAL "mime") + IF (${_group} STREQUAL "mime") SET(_icon_GROUP "mimetypes") - ENDIF(${_group} STREQUAL "mime") + ENDIF (${_group} STREQUAL "mime") - IF(${_group} STREQUAL "filesys") + IF (${_group} STREQUAL "filesys") SET(_icon_GROUP "filesystems") - ENDIF(${_group} STREQUAL "filesys") + ENDIF (${_group} STREQUAL "filesys") - IF(${_group} STREQUAL "device") + IF (${_group} STREQUAL "device") SET(_icon_GROUP "devices") - ENDIF(${_group} STREQUAL "device") + ENDIF (${_group} STREQUAL "device") - IF(${_group} STREQUAL "app") + IF (${_group} STREQUAL "app") SET(_icon_GROUP "apps") - ENDIF(${_group} STREQUAL "app") + ENDIF (${_group} STREQUAL "app") - IF(${_group} STREQUAL "action") + IF (${_group} STREQUAL "action") SET(_icon_GROUP "actions") - ENDIF(${_group} STREQUAL "action") + ENDIF (${_group} STREQUAL "action") # message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) INSTALL(FILES ${_orig_NAME} DESTINATION ${_install_PATH}/${_icon_GROUP}/ RENAME ${_install_NAME} ) - ENDIF ( NOT ${_group} STREQUAL ${_install_NAME} ) + ENDIF (NOT ${_group} STREQUAL ${_install_NAME} ) -ENDMACRO( _KDE4_ADD_ICON_INSTALL_RULE ) +ENDMACRO (_KDE4_ADD_ICON_INSTALL_RULE) -MACRO(KDE4_INSTALL_ICONS _defaultpath _theme ) +MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) # first the png icons FILE(GLOB _icons *.png) - foreach(_current_ICON ${_icons} ) + foreach (_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") @@ -324,20 +324,20 @@ MACRO(KDE4_INSTALL_ICONS _defaultpath _theme ) ${_group} ${_current_ICON} ${_name}) ENDforeach (_current_ICON) -ENDMACRO(KDE4_INSTALL_ICONS) +ENDMACRO (KDE4_INSTALL_ICONS) # for the case that something should be added to every CMakeLists.txt at the top -MACRO(KDE4_HEADER) -ENDMACRO(KDE4_HEADER) +MACRO (KDE4_HEADER) +ENDMACRO (KDE4_HEADER) # same as above, but at the end -MACRO(KDE4_FOOTER) -ENDMACRO(KDE4_FOOTER) +MACRO (KDE4_FOOTER) +ENDMACRO (KDE4_FOOTER) -MACRO(KDE4_INSTALL_LIBTOOL_FILE _subdir _target) +MACRO (KDE4_INSTALL_LIBTOOL_FILE _subdir _target) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) @@ -362,26 +362,26 @@ MACRO(KDE4_INSTALL_LIBTOOL_FILE _subdir _target) FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${_subdir}'\n") INSTALL_FILES(${_subdir} FILES ${_laname}) - MACRO_ADDITIONAL_CLEAN_FILES( ${_laname}) -ENDMACRO(KDE4_INSTALL_LIBTOOL_FILE) + MACRO_ADDITIONAL_CLEAN_FILES(${_laname}) +ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) -MACRO(KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) +MACRO (KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) FILE(WRITE ${_filenameCPP} "//autogenerated file\n") FILE(WRITE ${_filenameC} "/*autogenerated file*/\n") foreach (_current_FILE ${ARGN}) STRING(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE}) - if(_isCFile) + if (_isCFile) FILE(APPEND ${_filenameC} "#include \"${_current_FILE}\"\n") - else(_isCFile) + else (_isCFile) FILE(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n") - endif(_isCFile) + endif (_isCFile) endforeach (_current_FILE) -ENDMACRO(KDE4_CREATE_FINAL_FILES) +ENDMACRO (KDE4_CREATE_FINAL_FILES) -MACRO(KDE4_HANDLE_RPATH _target_NAME) +MACRO (KDE4_HANDLE_RPATH _target_NAME) if (KDE4_NEED_WRAPPER_SCRIPTS) if (APPLE) set(_library_path_variable "DYLD_LIBRARY_PATH") @@ -392,10 +392,10 @@ MACRO(KDE4_HANDLE_RPATH _target_NAME) get_target_property(_executable ${_target_NAME} LOCATION ) configure_file(${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/${_target_NAME}.sh) endif (KDE4_NEED_WRAPPER_SCRIPTS) -ENDMACRO(KDE4_HANDLE_RPATH) +ENDMACRO (KDE4_HANDLE_RPATH) -MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) +MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty if (${_with_PREFIX} STREQUAL "WITH_PREFIX") set(_first_SRC) @@ -410,9 +410,9 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) endif (KDE4_ENABLE_FINAL) - if(_first_SRC) + if (_first_SRC) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") - endif(_first_SRC) + endif (_first_SRC) # if (UNIX) # I guess under windows the libtool file are not required @@ -426,13 +426,13 @@ MACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) ENDIF (WIN32) -ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) +ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) +MACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - MACRO_ADDITIONAL_CLEAN_FILES( ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) + MACRO_ADDITIONAL_CLEAN_FILES(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) # if (WIN32) # # under windows, just build a normal executable @@ -448,15 +448,15 @@ MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) endif (KDE4_ENABLE_FINAL) - ADD_EXECUTABLE( ${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ) + ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) KDE4_HANDLE_RPATH(${_target_NAME}) - TARGET_LINK_LIBRARIES( ${_target_NAME} kdeinit_${_target_NAME} ) + TARGET_LINK_LIBRARIES(${_target_NAME} kdeinit_${_target_NAME}) # endif (WIN32) -ENDMACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) +ENDMACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) -MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) +MACRO (KDE4_ADD_EXECUTABLE _target_NAME ) IF (KDE4_ENABLE_FINAL) KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) @@ -466,10 +466,10 @@ MACRO(KDE4_ADD_EXECUTABLE _target_NAME ) ENDIF (KDE4_ENABLE_FINAL) KDE4_HANDLE_RPATH(${_target_NAME}) -ENDMACRO(KDE4_ADD_EXECUTABLE _target_NAME) +ENDMACRO (KDE4_ADD_EXECUTABLE _target_NAME) -MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty set(_first_SRC ${_lib_TYPE}) @@ -502,9 +502,9 @@ MACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) -ENDMACRO(KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +ENDMACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -MACRO(KDE4_CREATE_DOXYGEN_DOCS) -ENDMACRO(KDE4_CREATE_DOXYGEN_DOCS) +MACRO (KDE4_CREATE_DOXYGEN_DOCS) +ENDMACRO (KDE4_CREATE_DOXYGEN_DOCS) -- cgit v1.2.1 From 5922c8fb6eee3c4b048a1fc9b2f40e8ae7704eea Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 20 Mar 2006 22:07:04 +0000 Subject: -rename QT_AND_KDECORE_LIBS to KDE4_KDECORE_LIBS -rename KDE4_xxx_LIBRARIES to KDE4_xxx_LIBS for less typing -find more KDE4_xxx_LIBS -add QT_QTFOO_LIBRARY_RELEASE to FindQt4.cmake the LIBKFOO vars should be replaced ASAP with KDE4_KFOO_LIBS Alex CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=520815 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/FindKDE4Internal.cmake | 107 ++++++--- modules/FindQt4.cmake | 530 +++++++++++++++++++++++------------------ 2 files changed, 374 insertions(+), 263 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1eaf4f02..887ed493 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -30,18 +30,33 @@ # KDE4_KUTILS_LIBRARY - the kutils library # KDE4_KDE3SUPPORT_LIBRARY - the kde3support library # KDE4_KXMLCORE_LIBRARY - the kxmlcore library +# KDE4_KHTML_LIBRARY - the khtml library +# KDE4_KJS_LIBRARY - the kjs library +# KDE4_KNEWSTUFF_LIBRARY - the knewstuff library +# KDE4_DCOP_LIBRARY - the DCOP library +# KDE4_KDEPRINT_LIBRARY - the kdeprint library +# KDE4_KSPELL2_LIBRARY - the kspell2 library +# KDE4_KDNSSD_LIBRARY - the kdnssd library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below # should be used instead of the ones above: # -# KDE4_KDECORE_LIBRARIES - the kdecore library and all depending libraries -# KDE4_KDEUI_LIBRARIES - the kdeui library and all depending libraries -# KDE4_KIO_LIBRARIES - the kio library and all depending libraries -# KDE4_KPARTS_LIBRARIES - the kparts library and all depending libraries -# KDE4_KUTILS_LIBRARIES - the kutils library and all depending libraries -# KDE4_KDE3SUPPORT_LIBRARIES - the kde3support library and all depending libraries -# KDE4_KXMLCORE_LIBRARIES - the kxmlcore library and all depending libraries +# KDE4_KDECORE_LIBS - the kdecore library and all depending libraries +# KDE4_KDEUI_LIBS - the kdeui library and all depending libraries +# KDE4_KIO_LIBS - the kio library and all depending libraries +# KDE4_KPARTS_LIBS - the kparts library and all depending libraries +# KDE4_KUTILS_LIBS - the kutils library and all depending libraries +# KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries +# KDE4_KXMLCORE_LIBS - the kxmlcore library and all depending libraries +# KDE4_KHTML_LIBS - the khtml library and all depending libraries +# KDE4_KJS_LIBS - the kjs library and all depending libraries +# KDE4_KNEWSTUFF_LIBS - the knewstuff library and all depending libraries +# KDE4_DCOP_LIBS - the DCOP library and all depending libraries +# KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries +# KDE4_KSPELL2_LIBS - the kspell2 library and all depending libraries +# KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries +# # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -152,20 +167,15 @@ # _KDE4_PLATFORM_DEFINITIONS is used only internally -cmake_minimum_required(VERSION 2.3.4) +cmake_minimum_required(VERSION 2.3.4 FATAL_ERROR) #this line includes FindQt.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -set(QT_AND_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) - include (MacroLibrary) #add some KDE specific stuff -message(STATUS "Setting installation dir: ${CMAKE_INSTALL_PREFIX}") - - # the following are directories where stuff will be installed to set(CONFIG_INSTALL_DIR /share/config CACHE STRING "The config file install dir") set(DATA_INSTALL_DIR /share/apps CACHE STRING "The parent directory where applications can install their data") @@ -239,6 +249,8 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) message(STATUS "Building kdelibs...") set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) + set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) @@ -288,23 +300,43 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_KDECORE_LIBRARIES ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) + set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_KDEUI_LIBRARIES ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) + set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_KIO_LIBRARIES ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) + set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_KPARTS_LIBRARIES ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) + set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_KUTILS_LIBRARIES ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) + set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_KDE3SUPPORT_LIBRARIES ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) + set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) + + find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) + + find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) + + find_library(KDE4_KNEWSTUFF_LIBRARY NAMES knewstuff PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KNEWSTUFF_LIBS ${knewstuff_LIB_DEPENDS} ${KDE4_KNEWSTUFF_LIBRARY} ) + find_library(KDE4_DCOP_LIBRARY NAMES DCOP PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_DCOP_LIBS ${DCOP_LIB_DEPENDS} ${KDE4_DCOP_LIBRARY} ) + + find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) + + find_library(KDE4_KSPELL2_LIBRARY NAMES kspell2 PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KSPELL2_LIBS ${kspell2_LIB_DEPENDS} ${KDE4_KSPELL2_LIBRARY} ) + + find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) # now the KDE library directory, kxmlcore is new with KDE4 find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore @@ -320,22 +352,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) - - set(LIB_KDECORE ${KDE4_KDECORE_LIBRARIES}) - set(LIB_KDEUI ${KDE4_KDEUI_LIBRARIES}) - set(LIB_KIO ${KDE4_KIO_LIBRARIES}) - set(LIB_KPARTS ${KDE4_KPARTS_LIBRARIES}) - set(LIB_KUTILS ${KDE4_KUTILS_LIBRARIES}) - set(LIB_KDE3SUPPORT ${KDE4_KDE3SUPPORT_LIBRARIES}) - -# set(LIB_KDECORE ${QT_AND_KDECORE_LIBS} ${QT_QTGUI_LIBRARY} ${X11_X11_LIB} DCOP ${ZLIB_LIBRARY}) -# set(LIB_KDEUI ${kdeui_LIB_DEPENDS} kdeui) -# set(LIB_KIO ${LIB_KDEUI} kio) -# set(LIB_KPARTS ${LIB_KIO} kparts) -# set(LIB_KUTILS ${LIB_KPARTS} kutils) -# set(LIB_KDE3SUPPORT ${QT_QT3SUPPORT_LIBRARY} ${LIB_KUTILS} kde3support) - - # at first the KDE include direcory # kpassworddialog.h is new with KDE4 find_path(KDE4_INCLUDE_DIR kpassworddialog.h @@ -410,6 +426,17 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) endif (NOT KDE4_MEINPROC_EXECUTABLE) + +# all the following are deprecated and should be changed to the KDE4_..._LIBRARIES ASAP, Alex + set(LIB_KDECORE ${KDE4_KDECORE_LIBS}) + set(QT_AND_KDECORE_LIBS ${KDE4_KDECORE_LIBS}) + set(LIB_KDEUI ${KDE4_KDEUI_LIBRARIES}) + set(LIB_KIO ${KDE4_KIO_LIBRARIES}) + set(LIB_KPARTS ${KDE4_KPARTS_LIBRARIES}) + set(LIB_KUTILS ${KDE4_KUTILS_LIBRARIES}) + set(LIB_KDE3SUPPORT ${KDE4_KDE3SUPPORT_LIBRARIES}) + + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) @@ -431,7 +458,12 @@ if (WIN32) find_package(KDEWIN32 REQUIRED) set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) - set( QT_AND_KDECORE_LIBS ${QT_AND_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) + + # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, + # otherwise they come from KDELibsDependencies.cmake, Alex + if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # windows, mingw if(MINGW) @@ -654,3 +686,6 @@ set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUD # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPREACTED_WARNINGS ) + +# always add CMAKE_CCURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR to the include path to save some typing, Alex +set(CMAKE_INCLUDE_CURRENT_DIR TRUE) \ No newline at end of file diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f5b9a7b0..0d579867 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -16,12 +16,15 @@ # QT_USE_QTOPENGL # QT_USE_QTSQL # QT_USE_QTXML +# # All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. # # macro QT4_WRAP_CPP(outfiles inputfile ... ) # macro QT4_WRAP_UI(outfiles inputfile ... ) # macro QT4_ADD_RESOURCE(outfiles inputfile ... ) +# macro QT4_AUTOMOC(inputfile ... ) +# macro QT4_GENERATE_MOC(inputfile outputfile ) # # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. @@ -40,8 +43,7 @@ # QT_QTSVG_FOUND True if QtSvg was found. # QT_QTTEST_FOUND True if QtTest was found. # -# QT_DEFINITIONS Definitions to use when compiling code that -# uses Qt. +# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. # # QT_INCLUDES List of paths to all include directories of # Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are @@ -67,33 +69,63 @@ # # QT_LIBRARY_DIR Path to "lib" of Qt4 # -# QT_QT3SUPPORT_LIBRARY Fullpath to Qt3Support library -# QT_QTASSISTANT_LIBRARY Fullpath to QtAssistant library -# QT_QTCORE_LIBRARY Fullpath to QtCore library -# QT_QTDESIGNER_LIBRARY Fullpath to QtDesigner library -# QT_QTGUI_LIBRARY Fullpath to QtGui library -# QT_QTMOTIF_LIBRARY Fullpath to QtMotif library -# QT_QTNETWORK_LIBRARY Fullpath to QtNetwork library -# QT_QTNSPLUGIN_LIBRARY Fullpath to QtNsPlugin library -# QT_QTOPENGL_LIBRARY Fullpath to QtOpenGL library -# QT_QTSQL_LIBRARY Fullpath to QtSql library -# QT_QTXML_LIBRARY Fullpath to QtXml library -# QT_QTSVG_LIBRARY Fullpath to QtSvg library -# QT_QTTEST_LIBRARY Fullpath to QtTest library +# For every library of Qt there are three variables: +# QT_QTFOO_LIBRARY_RELEASE, which contains the full path to the release version +# QT_QTFOO_LIBRARY_DEBUG, which contains the full path to the debug version +# QT_QTFOO_LIBRARY, the full path to the release version if available, otherwise to the debug version +# +# So there are the following variables: +# The Qt3Support library: QT_QT3SUPPORT_LIBRARY +# QT_QT3SUPPORT_LIBRARY_RELEASE +# QT_QT3SUPPORT_DEBUG +# +# The QtAssistant library: QT_QTASSISTANT_LIBRARY +# QT_QTASSISTANT_LIBRARY_RELEASE +# QT_QTASSISTANT_LIBRARY_DEBUG +# +# The QtCore library: QT_QTCORE_LIBRARY +# QT_QTCORE_LIBRARY_RELEASE +# QT_QTCORE_LIBRARY_DEBUG +# +# The QtDesigner library: QT_QTDESIGNER_LIBRARY +# QT_QTDESIGNER_LIBRARY_RELEASE +# QT_QTDESIGNER_LIBRARY_DEBUG +# +# The QtGui library: QT_QTGUI_LIBRARY +# QT_QTGUI_LIBRARY_RELEASE +# QT_QTGUI_LIBRARY_DEBUG +# +# The QtMotif library: QT_QTMOTIF_LIBRARY +# QT_QTMOTIF_LIBRARY_RELEASE +# QT_QTMOTIF_LIBRARY_DEBUG +# +# The QtNetwork library: QT_QTNETWORK_LIBRARY +# QT_QTNETWORK_LIBRARY_RELEASE +# QT_QTNETWORK_LIBRARY_DEBUG +# +# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY +# QT_QTNSPLUGIN_LIBRARY_RELEASE +# QT_QTNSPLUGIN_LIBRARY_DEBUG +# +# The QtOpenGL library: QT_QTOPENGL_LIBRARY +# QT_QTOPENGL_LIBRARY_RELEASE +# QT_QTOPENGL_LIBRARY_DEBUG # -# QT_QT3SUPPORT_LIBRARY_DEBUG Fullpath to Qt3Support_debug library -# QT_QTASSISTANT_LIBRARY_DEBUG Fullpath to QtAssistant_debug library -# QT_QTCORE_LIBRARY_DEBUG Fullpath to QtCore_debug -# QT_QTDESIGNER_LIBRARY_DEBUG Fullpath to QtDesigner_debug -# QT_QTGUI_LIBRARY_DEBUG Fullpath to QtGui_debug -# QT_QTMOTIF_LIBRARY_DEBUG Fullpath to QtMotif_debug -# QT_QTNETWORK_LIBRARY_DEBUG Fullpath to QtNetwork_debug -# QT_QTNSPLUGIN_LIBRARY_DEBUG Fullpath to QtNsPlugin_debug -# QT_QTOPENGL_LIBRARY_DEBUG Fullpath to QtOpenGL_debug -# QT_QTSQL_LIBRARY_DEBUG Fullpath to QtSql_debug -# QT_QTXML_LIBRARY_DEBUG Fullpath to QtXml_debug -# QT_QTSVG_LIBRARY_DEBUG Fullpath to QtSvg_debug -# QT_QTTEST_LIBRARY_DEBUG Fullpath to QtTest_debug +# The QtSql library: QT_QTSQL_LIBRARY +# QT_QTSQL_LIBRARY_RELEASE +# QT_QTSQL_LIBRARY_DEBUG +# +# The QtXml library: QT_QTXML_LIBRARY +# QT_QTXML_LIBRARY_RELEASE +# QT_QTXML_LIBRARY_DEBUG +# +# The QtSvg library: QT_QTSVG_LIBRARY +# QT_QTSVG_LIBRARY_RELEASE +# QT_QTSVG_LIBRARY_DEBUG +# +#The QtTest library: QT_QTTEST_LIBRARY +# QT_QTTEST_LIBRARY_RELEASE +# QT_QTTEST_LIBRARY_DEBUG # # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. @@ -114,30 +146,30 @@ # # These variables are set to "" Because Qt structure changed # (They make no sense in Qt4) -# QT_QT_LIBRARY Qt-Library is now splitt -# QT_QTMAIN_LIBRARY Qt-Library is now splitt +# QT_QT_LIBRARY Qt-Library is now split +# QT_QTMAIN_LIBRARY Qt-Library is now split -set(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) +SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) -set(QT_DEFINITIONS "") +SET( QT_DEFINITIONS "") -if (WIN32) - set(QT_DEFINITIONS -DQT_DLL) -endif (WIN32) +IF (WIN32) + SET(QT_DEFINITIONS -DQT_DLL) +ENDIF(WIN32) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/) -set(GLOB_TEMP_VAR) -if (GLOB_TEMP_VAR) - set(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -endif (GLOB_TEMP_VAR) -set(GLOB_TEMP_VAR) +SET(GLOB_TEMP_VAR) +IF (GLOB_TEMP_VAR) + SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) +ENDIF (GLOB_TEMP_VAR) +SET(GLOB_TEMP_VAR) FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-4*/bin/) -if (GLOB_TEMP_VAR) - set(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -endif (GLOB_TEMP_VAR) +IF (GLOB_TEMP_VAR) + SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) +ENDIF (GLOB_TEMP_VAR) # check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin @@ -146,63 +178,63 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS NO_CMAKE_SYSTEM_PATH ) -if (NOT QT_QMAKE_EXECUTABLE) - FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake) -endif (NOT QT_QMAKE_EXECUTABLE) +IF (NOT QT_QMAKE_EXECUTABLE) + FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake) +ENDIF (NOT QT_QMAKE_EXECUTABLE) -if (QT_QMAKE_EXECUTABLE) +IF (QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - if (QTVERSION MATCHES "4.*") - set(QT4_QMAKE_FOUND TRUE) - endif (QTVERSION MATCHES "4.*") -endif (QT_QMAKE_EXECUTABLE) + IF(QTVERSION MATCHES "4.*") + SET(QT4_QMAKE_FOUND TRUE) + ENDIF(QTVERSION MATCHES "4.*") +ENDIF (QT_QMAKE_EXECUTABLE) -if (QT4_QMAKE_FOUND) +IF (QT4_QMAKE_FOUND) # Set QT_LIBRARY_DIR - if (NOT QT_LIBRARY_DIR) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + IF (NOT QT_LIBRARY_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_LIBS" OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - if (EXISTS "${QT_LIBRARY_DIR_TMP}") - set(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") - else (EXISTS "${QT_LIBRARY_DIR_TMP}") - message("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - message("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") - endif (EXISTS "${QT_LIBRARY_DIR_TMP}") - endif (NOT QT_LIBRARY_DIR) - - if (APPLE) - if (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - set(QT_USE_FRAMEWORKS ON + IF(EXISTS "${QT_LIBRARY_DIR_TMP}") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") + ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") + ENDIF(NOT QT_LIBRARY_DIR) + + IF (APPLE) + IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS ON CACHE BOOL "Set to ON if Qt build uses frameworks.") - else (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - set(QT_USE_FRAMEWORKS OFF + ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS OFF CACHE BOOL "Set to ON if Qt build uses frameworks.") - endif (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) - endif (APPLE) + ENDIF (APPLE) ######################################## # # Setting the INCLUDE-Variables # ######################################## - if (NOT QT_HEADERS_DIR) + IF (NOT QT_HEADERS_DIR) # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header - if (QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + IF (QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" OUTPUT_VARIABLE qt_headers ) - set(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - endif (QT_QMAKE_EXECUTABLE) - endif (NOT QT_HEADERS_DIR) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + ENDIF(QT_QMAKE_EXECUTABLE) + ENDIF (NOT QT_HEADERS_DIR) FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-3*/include/Qt/) - set(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) + SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) - set(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) + SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" @@ -215,24 +247,25 @@ if (QT4_QMAKE_FOUND) /usr/lib/qt/include/QtCore /usr/include/QtCore /usr/share/qt4/include/QtCore + "$ENV{ProgramFiles}/qt/include/Qt" "C:/Program Files/qt/include/QtCore" /usr/include/qt4/QtCore) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - if (QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - if (QT_USE_FRAMEWORKS) - set(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) - else (QT_USE_FRAMEWORKS) - STRING(REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) - set(QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") - endif (QT_USE_FRAMEWORKS) - endif (QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF (QT_USE_FRAMEWORKS) + SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) + ELSE (QT_USE_FRAMEWORKS) + STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) + SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + ENDIF (QT_USE_FRAMEWORKS) + ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - if (NOT QT_INCLUDE_DIR) - if (NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find QtGlobal header") - endif (NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - endif (NOT QT_INCLUDE_DIR) + IF( NOT QT_INCLUDE_DIR) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_INCLUDE_DIR) FIND_PATH(QT_DOC_DIR /html/qcoreapplication.html @@ -244,9 +277,9 @@ if (QT4_QMAKE_FOUND) "C:/Program Files/qt/doc" ) - if (QT_USE_FRAMEWORKS) - set(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) - endif (QT_USE_FRAMEWORKS) + IF (QT_USE_FRAMEWORKS) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) + ENDIF (QT_USE_FRAMEWORKS) # Set QT_QT3SUPPORT_INCLUDE_DIR FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support @@ -325,10 +358,10 @@ if (QT4_QMAKE_FOUND) ) # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR ) + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR) # Set QT_INCLUDES - set(QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) + SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) ######################################## @@ -337,53 +370,36 @@ if (QT4_QMAKE_FOUND) # ######################################## - if (QT_USE_FRAMEWORKS) + IF (QT_USE_FRAMEWORKS) # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have # to jump through these hoops. - set(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" - CACHE STRING "The QtCore library.") - set(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" - CACHE STRING "The QtCore library.") - set(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" - CACHE STRING "The Qt3Support library.") - set(QT_QT3SUPPORT_LIBRARY_DEBUG "-framework Qt3Support" - CACHE STRING "The Qt3Support library.") - set(QT_QTGUI_LIBRARY "-framework QtGui" - CACHE STRING "The QtGui library.") - set(QT_QTGUI_LIBRARY_DEBUG "-framework QtGui" - CACHE STRING "The QtGui library.") - set(QT_QTNETWORK_LIBRARY "-framework QtNetwork" - CACHE STRING "The QtNetwork library.") - set(QT_QTNETWORK_LIBRARY_DEBUG "-framework QtNetwork" - CACHE STRING "The QtNetwork library.") - set(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" - CACHE STRING "The QtOpenGL library.") - set(QT_QTOPENGL_LIBRARY_DEBUG "-framework QtOpenGL" - CACHE STRING "The QtOpenGL library.") - set(QT_QTSQL_LIBRARY "-framework QtSql" - CACHE STRING "The QtSql library.") - set(QT_QTSQL_LIBRARY_DEBUG "-framework QtSql" - CACHE STRING "The QtSql library.") - set(QT_QTXML_LIBRARY "-framework QtXml" - CACHE STRING "The QtXml library.") - set(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" - CACHE STRING "The QtXml library.") - set(QT_QTSVG_LIBRARY "-framework QtSvg" - CACHE STRING "The QtSvg library.") - set(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" - CACHE STRING "The QtSvg library.") + SET(QT_QTCORE_LIBRARY_RELEASE "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + SET(QT_QT3SUPPORT_LIBRARY_RELEASE "-framework Qt3Support" CACHE STRING "The Qt3Support library.") + SET(QT_QT3SUPPORT_LIBRARY_DEBUG "-framework Qt3Support" CACHE STRING "The Qt3Support library.") + SET(QT_QTGUI_LIBRARY_RELEASE "-framework QtGui" CACHE STRING "The QtGui library.") + SET(QT_QTGUI_LIBRARY_DEBUG "-framework QtGui" CACHE STRING "The QtGui library.") + SET(QT_QTNETWORK_LIBRARY_RELEASE "-framework QtNetwork" CACHE STRING "The QtNetwork library.") + SET(QT_QTNETWORK_LIBRARY_DEBUG "-framework QtNetwork" CACHE STRING "The QtNetwork library.") + SET(QT_QTOPENGL_LIBRARY_RELEASE "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + SET(QT_QTOPENGL_LIBRARY_DEBUG "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + SET(QT_QTSQL_LIBRARY_RELEASE "-framework QtSql" CACHE STRING "The QtSql library.") + SET(QT_QTSQL_LIBRARY_DEBUG "-framework QtSql" CACHE STRING "The QtSql library.") + SET(QT_QTXML_LIBRARY_RELEASE "-framework QtXml" CACHE STRING "The QtXml library.") + SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") + SET(QT_QTSVG_LIBRARY_RELEASE "-framework QtSvg" CACHE STRING "The QtSvg library.") + SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") # WTF? why don't we have frameworks? :P - set(QT_QTTEST_LIBRARY "-L${QT_LIBRARY_DIR} -lQtTest" - CACHE STRING "The QtTest library.") - set(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" - CACHE STRING "The QtTest library.") - MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) - else (QT_USE_FRAMEWORKS) + SET(QT_QTTEST_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") + SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") + MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) + + ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of # the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY + FIND_LIBRARY( QT_QTCORE_LIBRARY_RELEASE NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} @@ -414,54 +430,56 @@ if (QT4_QMAKE_FOUND) ) # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Support_debug Qt3Supportd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Support_debug Qt3Supportd4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTMOTIF_LIBRARY - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY_RELEASE NAMES QtMotif PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR}) # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetwork_debug QtNetworkd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetwork_debug QtNetworkd4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_DEBUG NAMES QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_RELEASE NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_DEBUG NAMES QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR}) # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGL_debug QtOpenGLd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGL_debug QtOpenGLd4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSql_debug QtSqld4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSql_debug QtSqld4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR}) - MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) - endif (QT_USE_FRAMEWORKS) + FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR}) + + MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) + + ENDIF (QT_USE_FRAMEWORKS) # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR}) # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR}) ############################################ # @@ -470,28 +488,36 @@ if (QT4_QMAKE_FOUND) ############################################ MACRO (_QT4_ADJUST_LIB_VARS basename) - if (QT_${basename}_INCLUDE_DIR) + IF (QT_${basename}_INCLUDE_DIR) # if only the release version was found, set the debug variable also to the release version - if (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) - set(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) - endif (QT_${basename}_LIBRARY AND NOT QT_${basename}_LIBRARY_DEBUG) + IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY}) + ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) # if only the debug version was found, set the release variable also to the debug version - if (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) - set(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - endif (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY) + IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) + SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) + + IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") - if (QT_${basename}_LIBRARY) - set(QT_${basename}_FOUND 1) - endif (QT_${basename}_LIBRARY) + IF (QT_${basename}_LIBRARY) + SET(QT_${basename}_FOUND 1) + ENDIF (QT_${basename}_LIBRARY) #add the include directory to QT_INCLUDES - set(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") - endif (QT_${basename}_INCLUDE_DIR ) + SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + ENDIF (QT_${basename}_INCLUDE_DIR ) # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_RELEASE QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) ENDMACRO (_QT4_ADJUST_LIB_VARS) _QT4_ADJUST_LIB_VARS(QTCORE) @@ -514,12 +540,12 @@ if (QT4_QMAKE_FOUND) # ( moc, uic, rcc ) # ####################################### - if (NOT QT_BINARY_DIR) + IF (NOT QT_BINARY_DIR) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_BINS" OUTPUT_VARIABLE qt_bins ) - set(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - endif (NOT QT_BINARY_DIR) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + ENDIF (NOT QT_BINARY_DIR) # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, # which might be a Qt3 qmake @@ -540,13 +566,13 @@ if (QT4_QMAKE_FOUND) ) # if qmake wasn't found in the specific dirs, now check the system path - if (NOT QT_MOC_EXECUTABLE) + IF (NOT QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) - endif (NOT QT_MOC_EXECUTABLE) + ENDIF (NOT QT_MOC_EXECUTABLE) - if (QT_MOC_EXECUTABLE) + IF (QT_MOC_EXECUTABLE) set(QT_WRAP_CPP "YES") - endif (QT_MOC_EXECUTABLE) + ENDIF (QT_MOC_EXECUTABLE) FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 @@ -579,13 +605,13 @@ if (QT4_QMAKE_FOUND) NO_CMAKE_SYSTEM_PATH ) - if (NOT QT_UIC_EXECUTABLE) + IF (NOT QT_UIC_EXECUTABLE) FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic ) - endif (NOT QT_UIC_EXECUTABLE) + ENDIF (NOT QT_UIC_EXECUTABLE) - if (QT_UIC_EXECUTABLE) + IF (QT_UIC_EXECUTABLE) set(QT_WRAP_UI "YES") - endif (QT_UIC_EXECUTABLE) + ENDIF (QT_UIC_EXECUTABLE) FIND_PROGRAM(QT_RCC_EXECUTABLE NAMES rcc @@ -601,11 +627,7 @@ if (QT4_QMAKE_FOUND) /usr/bin/qt4 ) - MARK_AS_ADVANCED( - QT_UIC_EXECUTABLE - QT_UIC3_EXECUTABLE - QT_MOC_EXECUTABLE - QT_RCC_EXECUTABLE ) + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE ) ###################################### # @@ -614,13 +636,13 @@ if (QT4_QMAKE_FOUND) ###################################### MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - set(${_moc_INC_DIRS}) + SET(${_moc_INC_DIRS}) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - foreach (_current ${_inc_DIRS}) - set(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - endforeach (_current ${_inc_DIRS}) - ENDMACRO (QT4_GET_MOC_INC_DIRS) + FOREACH(_current ${_inc_DIRS}) + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) MACRO (QT4_GENERATE_MOC infile outfile ) # get include dirs @@ -652,7 +674,7 @@ if (QT4_QMAKE_FOUND) ARGS ${moc_includes} -o ${outfile} ${it} MAIN_DEPENDENCY ${it}) SET(${outfiles} ${${outfiles}} ${outfile}) - endforeach (it) + ENDFOREACH(it) ENDMACRO (QT4_WRAP_CPP) @@ -693,6 +715,61 @@ if (QT4_QMAKE_FOUND) ENDMACRO (QT4_ADD_RESOURCES) + MACRO(_QT4_ADD_FILE_DEPENDENCIES _file) + GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS) + IF (_deps) + SET(_deps ${_deps} ${ARGN}) + ELSE (_deps) + SET(_deps ${ARGN}) + ENDIF (_deps) + SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}") + ENDMACRO(_QT4_ADD_FILE_DEPENDENCIES) + + MACRO(QT4_AUTOMOC) + QT4_GET_MOC_INC_DIRS(_moc_INCS) + + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # here. this is required to make bouic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) + + IF (EXISTS ${_abs_FILE} AND NOT _skip) + + FILE(READ ${_abs_FILE} _contents) + + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_filename_component(_basename ${_current_MOC} NAME_WE) + # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + _QT4_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + ENDIF (EXISTS ${_abs_FILE} AND NOT _skip) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_AUTOMOC) + + ###################################### # @@ -700,19 +777,18 @@ if (QT4_QMAKE_FOUND) # ###################################### # if the includes,libraries,moc,uic and rcc are found then we have it - if (QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - set(QT4_FOUND "YES" ) - if (NOT Qt4_FIND_QUIETLY) - message(STATUS "Found Qt-Version ${QTVERSION}") -# message(STATUS "Found Qt-Version ${QT_INST_MAJOR_VERSION}.${QT_INST_MINOR_VERSION}.${QT_INST_PATCH_VERSION}") - endif (NOT Qt4_FIND_QUIETLY) - else (QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - set(QT4_FOUND "NO") - if (Qt4_FIND_REQUIRED) - message(FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") - endif (Qt4_FIND_REQUIRED) - endif (QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - set(QT_FOUND ${QT4_FOUND}) + IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "YES" ) + IF( NOT Qt4_FIND_QUIETLY) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") + ENDIF( NOT Qt4_FIND_QUIETLY) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "NO") + IF( Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + ENDIF( Qt4_FIND_REQUIRED) + ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET(QT_FOUND ${QT4_FOUND}) ####################################### @@ -721,11 +797,11 @@ if (QT4_QMAKE_FOUND) # ####################################### # for unix add X11 stuff - if (UNIX) + IF(UNIX) FIND_PACKAGE(X11) FIND_PACKAGE(Threads) - set(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - endif (UNIX) + SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + ENDIF(UNIX) ####################################### @@ -734,17 +810,17 @@ if (QT4_QMAKE_FOUND) # ####################################### # Backwards compatibility for CMake1.4 and 1.2 - set(QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) - set(QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) - - set(QT_QT_LIBRARY "") - set(QT_QTMAIN_LIBRARY "") -else (QT4_QMAKE_FOUND) - if (QT_QMAKE_EXECUTABLE) - message("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") - endif (QT_QMAKE_EXECUTABLE) - if (Qt4_FIND_REQUIRED) - message(FATAL_ERROR "Qt qmake NOT found!") - endif (Qt4_FIND_REQUIRED) - -endif (QT4_QMAKE_FOUND) + SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + + SET( QT_QT_LIBRARY "") + SET( QT_QTMAIN_LIBRARY "") +ELSE(QT4_QMAKE_FOUND) + IF(QT_QMAKE_EXECUTABLE) + MESSAGE("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") + ENDIF(QT_QMAKE_EXECUTABLE) + IF( Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Qt qmake not found!") + ENDIF( Qt4_FIND_REQUIRED) + +ENDIF (QT4_QMAKE_FOUND) -- cgit v1.2.1 From 402025260c2a8fddfabd642c979deac99b8cdf60 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 21 Mar 2006 20:11:33 +0000 Subject: -change FindLibXml2.cmake to the new enhanced cmake style by using PATH_SUFFIXES for linux/bsd/OS X developers this shouldn't change anything ...but for the windows developers it should ! So: for the stuff which comes from gnuwin32: set the environment variable CMAKE_LIBRARY_PATH to the directory where the gnuwin32 libs are located and set CMAKE_INCLUDE_PATH to the directory where the gnuwin32 headers are installed to. Please let me know whether this works for. So, don't set CMAKE_INCLUDE_PATH to the directory which contains libxml/xpath.h, but to the one which contains libxml2/libxml/xpath.h This should make writing the FindSomething.cmake modules much easier. CCMAIL: kde-buildsystem@kde.org CCMAIL: Ch.Ehrlicher@gmx.de CCMAIL: ralf.habacker@freenet.de CCMAIL: syntheticpp@gmx.net Alex svn path=/trunk/KDE/kdelibs/; revision=521183 --- modules/FindLibXml2.cmake | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index d6214d76..7bc10d79 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -16,21 +16,15 @@ PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cf set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) -FIND_PACKAGE(GNUWIN32) - FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h - ${_LibXml2IncDir}/libxml2 - /usr/include/libxml2 - /usr/local/include/libxml2 - ${GNUWIN32_DIR}/include/libxml2 + PATHS + ${_LibXml2IncDir} + PATH_SUFFIXES libxml2 ) FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 PATHS ${_LibXml2LinkDir} - /usr/lib - /usr/local/lib - ${GNUWIN32_DIR}/lib ) if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) -- cgit v1.2.1 From 63aacc4e98710e556db8defca1892e46f612453f Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 21 Mar 2006 21:28:16 +0000 Subject: once again apply LIBRARY_PATH setting which AGAIN got reverted svn path=/trunk/KDE/kdelibs/; revision=521199 --- modules/FindKDE4Internal.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 887ed493..8bac034e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -267,7 +267,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) else (WIN32) set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) -# set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) + set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -275,13 +275,13 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC if (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) + set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) + set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) else (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) endif (KDE4_NEED_WRAPPER_SCRIPTS) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... @@ -688,4 +688,4 @@ set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUD set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPREACTED_WARNINGS ) # always add CMAKE_CCURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR to the include path to save some typing, Alex -set(CMAKE_INCLUDE_CURRENT_DIR TRUE) \ No newline at end of file +set(CMAKE_INCLUDE_CURRENT_DIR TRUE) -- cgit v1.2.1 From fbab97f4ca86b780d8351e063672dda8cf84bd04 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Tue, 21 Mar 2006 21:47:55 +0000 Subject: Messages for Gettext configure check more in line with others. svn path=/trunk/KDE/kdelibs/; revision=521204 --- modules/FindGettext.cmake | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 2244b742..cc29f0c1 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -18,18 +18,17 @@ set(GETTEXT_LIBRARIES) if (HAVE_LIBINTL_H) set(GETTEXT_FOUND TRUE) - set(GETTEXT_SOURCE "libintl.h") + set(GETTEXT_SOURCE "built in libc (libintl.h present)") endif (HAVE_LIBINTL_H) if (GETTEXT_FOUND) if (NOT Gettext_FIND_QUIETLY) - message(STATUS "Gettext functionality present (${GETTEXT_SOURCE})") + message(STATUS "Found Gettext: ${GETTEXT_SOURCE}") endif (NOT Gettext_FIND_QUIETLY) else (GETTEXT_FOUND) - if (NOT Gettext_FIND_QUIETLY) - message(STATUS "Gettext functionality NOT present, " - "translations will not be available") - endif (NOT Gettext_FIND_QUIETLY) + if (Gettext_FIND_REQUIRED) + message(STATUS "Could NOT find Gettext") + endif (Gettext_FIND_REQUIRED) endif (GETTEXT_FOUND) MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) -- cgit v1.2.1 From a3b02d20e895f32771ebde746d4d40b9677bcd38 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 21 Mar 2006 22:16:36 +0000 Subject: -don't prefer QTDIR over the system path for searching qmake, as QTDIR is obsoleted by Qt 4 also don't search for Qt4 directories under /usr/local Alex svn path=/trunk/KDE/kdelibs/; revision=521210 --- modules/FindQt4.cmake | 109 ++++++++------------------------------------------ 1 file changed, 17 insertions(+), 92 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0d579867..2246907f 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -157,31 +157,13 @@ IF (WIN32) SET(QT_DEFINITIONS -DQT_DLL) ENDIF(WIN32) -FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/) -SET(GLOB_TEMP_VAR) -IF (GLOB_TEMP_VAR) - SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -ENDIF (GLOB_TEMP_VAR) -SET(GLOB_TEMP_VAR) -FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-4*/bin/) -IF (GLOB_TEMP_VAR) - SET(QT4_PATHS ${QT4_PATHS} ${GLOB_TEMP_VAR}) -ENDIF (GLOB_TEMP_VAR) - # check for qmake FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin - ${QT4_PATHS} - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH ) -IF (NOT QT_QMAKE_EXECUTABLE) - FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake) -ENDIF (NOT QT_QMAKE_EXECUTABLE) - IF (QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) @@ -221,35 +203,21 @@ IF (QT4_QMAKE_FOUND) # Setting the INCLUDE-Variables # ######################################## + # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header IF (NOT QT_HEADERS_DIR) - # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header - IF (QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(QT_QMAKE_EXECUTABLE) - ENDIF (NOT QT_HEADERS_DIR) - - FILE(GLOB GLOB_TEMP_VAR /usr/local/qt-x11-commercial-3*/include/Qt/) - SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) - FILE(GLOB GLOB_TEMP_VAR /usr/local/Trolltech/Qt-4*/include/Qt/) - SET(QT_PATH_INCLUDE ${GLOB_TEMP_VAR}) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_HEADERS" + OUTPUT_VARIABLE qt_headers ) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + ENDIF(NOT QT_HEADERS_DIR) FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" ${QT_HEADERS_DIR}/QtCore ${QT_LIBRARY_DIR}/QtCore.framework/Headers $ENV{QTDIR}/include/QtCore - ${QT_PATH_INCLUDE} - /usr/local/qt/include/QtCore - /usr/local/include/QtCore - /usr/lib/qt/include/QtCore - /usr/include/QtCore - /usr/share/qt4/include/QtCore - "$ENV{ProgramFiles}/qt/include/Qt" - "C:/Program Files/qt/include/QtCore" - /usr/include/qt4/QtCore) + "$ENV{ProgramFiles}/qt/include/Qt" + ) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) @@ -268,14 +236,10 @@ IF (QT4_QMAKE_FOUND) ENDIF( NOT QT_INCLUDE_DIR) - FIND_PATH(QT_DOC_DIR /html/qcoreapplication.html - ${QT_PATH_INCLUDE} - $ENV{QTDIR}/doc - /usr/local/qt/doc - /usr/lib/qt/doc - /usr/share/qt4/doc - "C:/Program Files/qt/doc" - ) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_DOCS" + OUTPUT_VARIABLE qt_doc_dir ) + SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") IF (QT_USE_FRAMEWORKS) SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) @@ -404,13 +368,6 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_LIBRARY_DIR} $ENV{QTDIR}/lib - /usr/local/qt/lib - /usr/local/lib - /usr/lib/qt/lib - /usr/lib - /usr/share/qt4/lib - C:/Progra~1/qt/lib - /usr/lib/qt4 ) # Set QT_QTCORE_LIBRARY_DEBUG by searching for a lib with "QtCore_debug" @@ -420,13 +377,6 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_LIBRARY_DIR} $ENV{QTDIR}/lib - /usr/local/qt/lib - /usr/local/lib - /usr/lib/qt/lib - /usr/lib - /usr/share/qt4/lib - C:/Progra~1/qt/lib - /usr/lib/qt4 ) # Set QT_QT3SUPPORT_LIBRARY @@ -492,18 +442,21 @@ IF (QT4_QMAKE_FOUND) # if only the release version was found, set the debug variable also to the release version IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY}) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY}) + SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_RELEASE}) ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) # if only the debug version was found, set the release variable also to the debug version IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG}) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") @@ -554,13 +507,6 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_BINARY_DIR} $ENV{QTDIR}/bin - /usr/local/qt/bin - /usr/local/bin - /usr/lib/qt/bin - /usr/bin - /usr/share/qt4/bin - C:/Progra~1/qt/bin - /usr/bin/qt4 NO_SYSTEM_PATH NO_CMAKE_SYSTEM_PATH ) @@ -579,13 +525,6 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_BINARY_DIR} $ENV{QTDIR}/bin - /usr/local/qt/bin - /usr/local/bin - /usr/lib/qt/bin - /usr/bin - /usr/share/qt4/bin - C:/Progra~1/qt/bin - /usr/bin/qt4 ) # first the specific paths, then the system path, same as with qmake @@ -594,13 +533,6 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_BINARY_DIR} $ENV{QTDIR}/bin - /usr/local/qt/bin - /usr/local/bin - /usr/lib/qt/bin - /usr/bin - /usr/share/qt4/bin - C:/Progra~1/qt/bin - /usr/bin/qt4 NO_SYSTEM_PATH NO_CMAKE_SYSTEM_PATH ) @@ -618,13 +550,6 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_BINARY_DIR} $ENV{QTDIR}/bin - /usr/local/qt/bin - /usr/local/bin - /usr/lib/qt/bin - /usr/bin - /usr/share/qt4/bin - C:/Progra~1/qt/bin - /usr/bin/qt4 ) MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE ) -- cgit v1.2.1 From 6059e6c2471477fccf24d5054f9f62b71672345b Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Tue, 21 Mar 2006 23:32:31 +0000 Subject: Preliminary module for the GSSAPI configuration. It seems to work nicely, altough some thing are still missing. svn path=/trunk/KDE/kdelibs/; revision=521231 --- modules/FindGSSAPI.cmake | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 modules/FindGSSAPI.cmake (limited to 'modules') diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake new file mode 100644 index 00000000..f574602e --- /dev/null +++ b/modules/FindGSSAPI.cmake @@ -0,0 +1,48 @@ +# - Try to detect the GSSAPI support +# Once done this will define +# +# GSSAPI_FOUND - system supports GSSAPI +# GSSAPI_INCS - the CSSAPI include directory +# GSSAPI_LIBS - the libraries needed to use GSSAPI +# GSSAPI_RPATH - the rpath for GSSAPI + +# TODO: RPATH + +FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS + /usr/bin + /usr/local/bin + /opt/local/bin +) + +#reset vars +set(GSSAPI_INCS) +set(GSSAPI_LIBS) +set(GSSAPI_FLAVOR) + +IF(KRB5_CONFIG) + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) + STRING(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) + set(GSSAPI_FLAVOR_MIT) + IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + SET(GSSAPI_FLAVOR "MIT") + ELSE(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + SET(GSSAPI_FLAVOR "HEIMDAL") + ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + + IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that + SET(GSSAPI_FOUND TRUE) + message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") + ENDIF(GSSAPI_LIBS) + +#ELSE(KRB5_CONFIG) + +# TODO... + +ENDIF(KRB5_CONFIG) + +MARK_AS_ADVANCED(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) -- cgit v1.2.1 From 52859673a5572bf58945fc024b93f3f8edfc052c Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 21 Mar 2006 23:49:38 +0000 Subject: GETTEXT_LIBRARIES was used, but never actually set to anything. This is necessary for me on the Mac (not sure why it linked on linux...) svn path=/trunk/KDE/kdelibs/; revision=521236 --- modules/FindGettext.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index cc29f0c1..be931d80 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -21,6 +21,14 @@ if (HAVE_LIBINTL_H) set(GETTEXT_SOURCE "built in libc (libintl.h present)") endif (HAVE_LIBINTL_H) +# Check for libintl, and check that it provides libintl_dgettext. +FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl + PATHS + /usr/lib + /usr/local/lib +) +CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "libintl_dgettext" "" GETTEXT_LIBRARIES) + if (GETTEXT_FOUND) if (NOT Gettext_FIND_QUIETLY) message(STATUS "Found Gettext: ${GETTEXT_SOURCE}") -- cgit v1.2.1 From 96a39d352efa62c1ab64cf412b1893288b970b97 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 22 Mar 2006 00:10:50 +0000 Subject: Works better this way (still for Mac OS X). OK, on Linux it comes from glibc. So instead of always looking for a libintl, maybe we should first check do a "check if this call links without linking to anything else than the libc"... svn path=/trunk/KDE/kdelibs/; revision=521239 --- modules/FindGettext.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index be931d80..8b3b078d 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -21,13 +21,17 @@ if (HAVE_LIBINTL_H) set(GETTEXT_SOURCE "built in libc (libintl.h present)") endif (HAVE_LIBINTL_H) -# Check for libintl, and check that it provides libintl_dgettext. +# Check for libintl, and check that it provides libintl_dgettext. Needed on BSD systems (e.g. Mac OS X) FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl PATHS /usr/lib /usr/local/lib ) -CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "libintl_dgettext" "" GETTEXT_LIBRARIES) +CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT) +if (LIBINTL_HAS_DGETTEXT) + set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") + set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) +endif (LIBINTL_HAS_DGETTEXT) if (GETTEXT_FOUND) if (NOT Gettext_FIND_QUIETLY) -- cgit v1.2.1 From d51dbe7b9a0864fa536a80bb898d4bfecd308221 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Wed, 22 Mar 2006 11:02:32 +0000 Subject: Gettext check updated. svn path=/trunk/KDE/kdelibs/; revision=521323 --- modules/FindGettext.cmake | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 8b3b078d..3eae44a0 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -18,7 +18,7 @@ set(GETTEXT_LIBRARIES) if (HAVE_LIBINTL_H) set(GETTEXT_FOUND TRUE) - set(GETTEXT_SOURCE "built in libc (libintl.h present)") + set(GETTEXT_SOURCE "built in libc") endif (HAVE_LIBINTL_H) # Check for libintl, and check that it provides libintl_dgettext. Needed on BSD systems (e.g. Mac OS X) @@ -27,11 +27,14 @@ FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl /usr/lib /usr/local/lib ) -CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT) -if (LIBINTL_HAS_DGETTEXT) - set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") - set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) -endif (LIBINTL_HAS_DGETTEXT) + +if (LIBINTL_LIBRARY) + CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT) + if (LIBINTL_HAS_DGETTEXT) + set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") + set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) + endif (LIBINTL_HAS_DGETTEXT) +endif (LIBINTL_LIBRARY) if (GETTEXT_FOUND) if (NOT Gettext_FIND_QUIETLY) -- cgit v1.2.1 From e68dbc077d76f0f79750fc0627c8e0e4794998b2 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 22 Mar 2006 11:06:23 +0000 Subject: Add here (need by kdemultimedia/kdeutils) svn path=/trunk/KDE/kdelibs/; revision=521328 --- modules/FindXmms.cmake | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 modules/FindXmms.cmake (limited to 'modules') diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake new file mode 100644 index 00000000..33f9f395 --- /dev/null +++ b/modules/FindXmms.cmake @@ -0,0 +1,26 @@ +# Search xmms +# Laurent Montel 2006 + +OPTION(KDE4_XMMS "enable support for XMMS") + +if(KDE4_XMMS) + FIND_PROGRAM(XMMSCONFIG_EXECUTABLE NAMES xmms-config PATHS + /usr/bin + /usr/local/bin + ) + #reset vars + set(XMMS_LIBRARIES) + set(XMMS_INCLUDE_DIR) + if(XMMSCONFIG_EXECUTABLE) + EXEC_PROGRAM(${XMMSCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XMMS_LIBRARIES) + + EXEC_PROGRAM(${XMMSCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XMMS_INCLUDE_DIR) + set(XMMS_DEFINITIONS ${XMMS_INCLUDE_DIR}) + IF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) + SET(XMMS_FOUND TRUE) + ENDIF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) + + MARK_AS_ADVANCED(XMMS_INCLUDE_DIR XMMS_LIBRARIES) + endif(XMMSCONFIG_EXECUTABLE) +endif(KDE4_XMMS) + -- cgit v1.2.1 From 7787b27ca96ad46b2b3cef47e93b3bd04e19c160 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 22 Mar 2006 17:42:03 +0000 Subject: again revert the KDE4_LD_LIBRARY_PATH change Dirk, why is this required for you ? It really shouldn't. Either you compile with RPATH, then everything should be found via RPATH and no LD_LIBRARY_PATH is required. Or you set RPATH_STYLE e.g. to "none", then the generated wrapper scripts (like dcopidl2cpp.sh) should set LD_LIBRARY_PATH correctly. I tested this here on Slackware and on FreeBSD. What doesn't work for you ? Let's discuss this on kde-buildsystem@kde.org CCMAIL:mueller@kde.org Alex svn path=/trunk/KDE/kdelibs/; revision=521485 --- modules/FindKDE4Internal.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8bac034e..887ed493 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -267,7 +267,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) else (WIN32) set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) +# set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -275,13 +275,13 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC if (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) - set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) - set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) else (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${KDE4_LD_LIBRARY_PATH} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) endif (KDE4_NEED_WRAPPER_SCRIPTS) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... @@ -688,4 +688,4 @@ set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUD set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPREACTED_WARNINGS ) # always add CMAKE_CCURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR to the include path to save some typing, Alex -set(CMAKE_INCLUDE_CURRENT_DIR TRUE) +set(CMAKE_INCLUDE_CURRENT_DIR TRUE) \ No newline at end of file -- cgit v1.2.1 From 7f6e63dc8dcc33fb0ab5c0bff8d500fca0346188 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 22 Mar 2006 18:49:11 +0000 Subject: don't generate files in the source-tree Alex svn path=/trunk/KDE/kdelibs/; revision=521514 --- modules/KDE4Macros.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f9c0566f..05c707d3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -144,9 +144,8 @@ MACRO (KDE4_ADD_UI_FILES _sources ) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - set(_header ${_abs_PATH}/${_basename}.h) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) # we need to run uic and replace some things in the generated file # this is done by executing the cmake script kde4uic.cmake @@ -174,7 +173,6 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) foreach (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) -# GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) set(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) -- cgit v1.2.1 From 2761044f193b57a45caa2f8b17b42fd2e2ee18ce Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 22 Mar 2006 19:04:54 +0000 Subject: prefer moc-qt4, uic-qt4 and qmake-qt4 over moc, uic and qmake Alex svn path=/trunk/KDE/kdelibs/; revision=521522 --- modules/FindQt4.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2246907f..8f02f4e1 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -503,7 +503,7 @@ IF (QT4_QMAKE_FOUND) # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, # which might be a Qt3 qmake FIND_PROGRAM(QT_MOC_EXECUTABLE - NAMES moc + NAMES moc-qt4 moc PATHS ${QT_BINARY_DIR} $ENV{QTDIR}/bin @@ -513,7 +513,7 @@ IF (QT4_QMAKE_FOUND) # if qmake wasn't found in the specific dirs, now check the system path IF (NOT QT_MOC_EXECUTABLE) - FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc ) + FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc-qt4 moc ) ENDIF (NOT QT_MOC_EXECUTABLE) IF (QT_MOC_EXECUTABLE) @@ -529,7 +529,7 @@ IF (QT4_QMAKE_FOUND) # first the specific paths, then the system path, same as with qmake FIND_PROGRAM(QT_UIC_EXECUTABLE - NAMES uic + NAMES uic-qt4 uic PATHS ${QT_BINARY_DIR} $ENV{QTDIR}/bin @@ -538,7 +538,7 @@ IF (QT4_QMAKE_FOUND) ) IF (NOT QT_UIC_EXECUTABLE) - FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic ) + FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic-qt4 uic ) ENDIF (NOT QT_UIC_EXECUTABLE) IF (QT_UIC_EXECUTABLE) -- cgit v1.2.1 From a87518d9cc32131127f51acd3221403c0e981764 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 22 Mar 2006 20:32:02 +0000 Subject: -these files come with cmake since 2.3.4, which we depend on, uninstall them if they were installed before Alex svn path=/trunk/KDE/kdelibs/; revision=521555 --- modules/CMakeLists.txt | 29 ++-- modules/FindKDE3.cmake | 211 ------------------------ modules/KDE3Macros.cmake | 375 ------------------------------------------ modules/UsePkgConfig.cmake | 40 ----- modules/kde3init_dummy.cpp.in | 6 - modules/kde3uic.cmake | 23 --- modules/remove_files.cmake.in | 2 - 7 files changed, 14 insertions(+), 672 deletions(-) delete mode 100644 modules/FindKDE3.cmake delete mode 100644 modules/KDE3Macros.cmake delete mode 100644 modules/UsePkgConfig.cmake delete mode 100644 modules/kde3init_dummy.cpp.in delete mode 100644 modules/kde3uic.cmake delete mode 100644 modules/remove_files.cmake.in (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 9c5f4952..c99d6edb 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -2,24 +2,23 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") -install_files(/share/apps/cmake/modules FILES kde3init_dummy.cpp.in kde4init_dummy.cpp.in ${cmakeFiles} ) +set(module_install_dir /share/apps/cmake/modules ) + +install_files(${module_install_dir} FILES kde3init_dummy.cpp.in kde4init_dummy.cpp.in ${cmakeFiles} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE - ${CMAKE_INSTALL_PREFIX}/share/apps/cmake/modules/FindKDE4.cmake - ) -# files to remove once we depend on the cmake release: -# UsePkgconfig.cmake -# FindKDE3.cmake -# KDE3Macros.cmake -# kde3uic.cmake -# kde3init_dummy.cpp.in - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/remove_files.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake) + ${CMAKE_INSTALL_PREFIX}${module_install_dir}/FindKDE4.cmake + ${CMAKE_INSTALL_PREFIX}${module_install_dir}/UsePkgconfig.cmake + ${CMAKE_INSTALL_PREFIX}${module_install_dir}/FindKDE3.cmake + ${CMAKE_INSTALL_PREFIX}${module_install_dir}/KDE3Macros.cmake + ${CMAKE_INSTALL_PREFIX}${module_install_dir}/kde3uic.cmake + ${CMAKE_INSTALL_PREFIX}${module_install_dir}/kde3init_dummy.cpp.in ) install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) -#file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") -#foreach ( _current_FILE ${FILES_TO_REMOVE}) -# file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} ) -#endforeach ( _current_FILE) +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") +foreach ( _current_FILE ${FILES_TO_REMOVE}) + file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "message(STATUS \"Removing ${_current_FILE}\" )\n" ) + file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) +endforeach ( _current_FILE) diff --git a/modules/FindKDE3.cmake b/modules/FindKDE3.cmake deleted file mode 100644 index cbe41546..00000000 --- a/modules/FindKDE3.cmake +++ /dev/null @@ -1,211 +0,0 @@ -# - Find the KDE3 include and library dirs, KDE preprocessors and define a some macros -# -# This module defines the following variables: -# KDE3_DEFINITIONS - compiler definitions required for compiling KDE software -# KDE3_INCLUDE_DIR - the KDE include directory -# KDE3_INCLUDE_DIRS - the KDE and the Qt include directory, for use with INCLUDE_DIRECTORIES() -# KDE3_LIB_DIR - the directory where the KDE libraries are installed, for use with LINK_DIRECTORIES() -# QT_AND_KDECORE_LIBRARIES - this contains both the Qt and the kdecore library -# KDE3_DCOPIDL_EXECUTABLE - the dcopidl executable -# KDE3_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable -# KDE3_KCFGC_EXECUTABLE - the kconfig_compiler executable -# KDE3_FOUND - set to TRUE if all of the above has been found -# -# The following user adjustable options are provided: -# -# KDE3_ENABLE_FINAL - enable this for KDE-style enable-final all-in-one compilation -# KDE3_BUILD_TESTS - enable this to build KDE testcases -# -# -# It also adds the following macros (from KDE3Macros.cmake) -# SRCS_VAR is always the variable which contains the list of source files for your application or library. -# -# KDE3_AUTOMOC(file1 ... fileN) -# Call this if you want to have automatic moc file handling. -# This means if you include "foo.moc" in the source file foo.cpp -# a moc file for the header foo.h will be created automatically. -# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() -# to exclude some files in the list from being processed. -# -# KDE3_ADD_MOC_FILES(SRCS_VAR file1 ... fileN ) -# If you don't use the KDE3_AUTOMOC() macro, for the files -# listed here moc files will be created (named "foo.moc.cpp") -# -# KDE3_ADD_DCOP_SKELS(SRCS_VAR header1.h ... headerN.h ) -# Use this to generate DCOP skeletions from the listed headers. -# -# KDE3_ADD_DCOP_STUBS(SRCS_VAR header1.h ... headerN.h ) -# Use this to generate DCOP stubs from the listed headers. -# -# KDE3_ADD_UI_FILES(SRCS_VAR file1.ui ... fileN.ui ) -# Use this to add the Qt designer ui files to your application/library. -# -# KDE3_ADD_KCFG_FILES(SRCS_VAR file1.kcfgc ... fileN.kcfgc ) -# Use this to add KDE kconfig compiler files to your application/library. -# -# KDE3_INSTALL_LIBTOOL_FILE(target) -# This will create and install a simple libtool file for the given target. -# -# KDE3_ADD_EXECUTABLE(name file1 ... fileN ) -# Equivalent to ADD_EXECUTABLE(), but additionally supports KDE3_ENABLE_FINAL -# -# KDE3_ADD_KPART(name [WITH_PREFIX] file1 ... fileN ) -# Create a KDE plugin (KPart, kioslave, etc.) from the given source files. -# It supports KDE3_ENABLE_FINAL -# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. -# It creates and installs an appropriate libtool la-file. -# -# KDE3_ADD_KDEINIT_EXECUTABLE(name file1 ... fileN ) -# Create a KDE application in the form of a module loadable via kdeinit. -# A library named kdeinit_ will be created and a small executable which links to it. -# It supports KDE3_ENABLE_FINAL -# -# Author: Alexander Neundorf - -IF (NOT UNIX) - MESSAGE(FATAL_ERROR "Compiling KDE3 applications and libraries under Windows is not supported") -ENDIF (NOT UNIX) - - -SET(QT_MT_REQUIRED TRUE) -#SET(QT_MIN_VERSION "3.0.0") - -#this line includes FindQt.cmake, which searches the Qt library and headers -FIND_PACKAGE(Qt3 REQUIRED) -FIND_PACKAGE(X11 REQUIRED) - - -SET(QT_AND_KDECORE_LIBS ${QT_LIBRARIES} kdecore) - -#add some KDE specific stuff -SET(KDE3_DEFINITIONS -DQT_CLEAN_NAMESPACE -D_GNU_SOURCE) - -#only on linux, but NOT e.g. on FreeBSD: -IF (CMAKE_SYSTEM_NAME MATCHES "Linux") - SET(KDE3_DEFINITIONS ${KDE3_DEFINITIONS} -D_XOPEN_SOURCE=500 -D_BSD_SOURCE) - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -fno-exceptions -fno-check-new -fno-common") -ENDIF (CMAKE_SYSTEM_NAME MATCHES "Linux") - -# works on FreeBSD, NOT tested on NetBSD and OpenBSD -IF (CMAKE_SYSTEM_NAME MATCHES BSD) - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-common") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") -ENDIF (CMAKE_SYSTEM_NAME MATCHES BSD) - - -#SET(CMAKE_SHARED_LINKER_FLAGS "-avoid-version -module -Wl,--no-undefined -Wl,--allow-shlib-undefined") -#SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") -#SET(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - -#now try to find some kde stuff - -#at first the KDE include direcory -# kpassdlg.h comes from kdeui and doesn't exist in KDE4 anymore -FIND_PATH(KDE3_INCLUDE_DIR kpassdlg.h - $ENV{KDEDIR}/include - /opt/kde/include - /opt/kde3/include - /usr/local/include - /usr/include/ - /usr/include/kde - /usr/local/include/kde -) - -#now the KDE library directory -FIND_LIBRARY(KDE3_LIB_DIR NAMES kdecore - PATHS - $ENV{KDEDIR}/lib - /opt/kde/lib - /opt/kde3/lib - /usr/lib - /usr/local/lib -) - -#now the KDE service types directory -#FIND_PATH(KDE3_SERVICETYPES_DIR ktexteditor.desktop -# $ENV{KDEDIR}/share/servicetypes/ -# /opt/kde/share/servicetypes/ -# /opt/kde3/share/servicetypes/ -#) - -#now search for the dcop utilities -FIND_PROGRAM(KDE3_DCOPIDL_EXECUTABLE NAME dcopidl PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde3/bin -) - -FIND_PROGRAM(KDE3_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde3/bin -) - -FIND_PROGRAM(KDE3_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde3/bin -) - -# KDE3Macros.cmake contains all the KDE specific macros -INCLUDE(KDE3Macros) - - -#SET KDE3_FOUND -IF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) - SET(KDE3_FOUND TRUE) -ELSE (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) - SET(KDE3_FOUND FALSE) -ENDIF (KDE3_INCLUDE_DIR AND KDE3_LIB_DIR AND KDE3_DCOPIDL_EXECUTABLE AND KDE3_DCOPIDL2CPP_EXECUTABLE AND KDE3_KCFGC_EXECUTABLE) - - -MACRO (KDE3_PRINT_RESULTS) - IF (KDE3_INCLUDE_DIR) - MESSAGE(STATUS "Found KDE3 include dir: ${KDE3_INCLUDE_DIR}") - ELSE (KDE3_INCLUDE_DIR) - MESSAGE(STATUS "Didn't find KDE3 headers") - ENDIF (KDE3_INCLUDE_DIR) - - IF (KDE3_LIB_DIR) - MESSAGE(STATUS "Found KDE3 library dir: ${KDE3_LIB_DIR}") - ELSE (KDE3_LIB_DIR) - MESSAGE(STATUS "Didn't find KDE3 core library") - ENDIF (KDE3_LIB_DIR) - - IF (KDE3_DCOPIDL_EXECUTABLE) - MESSAGE(STATUS "Found KDE3 dcopidl preprocessor: ${KDE3_DCOPIDL_EXECUTABLE}") - ELSE (KDE3_DCOPIDL_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE3 dcopidl preprocessor") - ENDIF (KDE3_DCOPIDL_EXECUTABLE) - - IF (KDE3_DCOPIDL2CPP_EXECUTABLE) - MESSAGE(STATUS "Found KDE3 dcopidl2cpp preprocessor: ${KDE3_DCOPIDL2CPP_EXECUTABLE}") - ELSE (KDE3_DCOPIDL2CPP_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE3 dcopidl2cpp preprocessor") - ENDIF (KDE3_DCOPIDL2CPP_EXECUTABLE) - - IF (KDE3_KCFGC_EXECUTABLE) - MESSAGE(STATUS "Found KDE3 kconfig_compiler preprocessor: ${KDE3_KCFGC_EXECUTABLE}") - ELSE (KDE3_KCFGC_EXECUTABLE) - MESSAGE(STATUS "Didn't find the KDE3 kconfig_compiler preprocessor") - ENDIF (KDE3_KCFGC_EXECUTABLE) - -ENDMACRO (KDE3_PRINT_RESULTS) - - -IF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) - #bail out if something wasn't found - KDE3_PRINT_RESULTS() - MESSAGE(FATAL_ERROR "Could NOT find everything required for compiling KDE 3 programs") - -ENDIF (KDE3_FIND_REQUIRED AND NOT KDE3_FOUND) - - -IF (NOT KDE3_FIND_QUIETLY) - KDE3_PRINT_RESULTS() -ENDIF (NOT KDE3_FIND_QUIETLY) - -#add the found Qt and KDE include directories to the current include path -SET(KDE3_INCLUDE_DIRS ${QT_INCLUDE_DIR} ${KDE3_INCLUDE_DIR}) - diff --git a/modules/KDE3Macros.cmake b/modules/KDE3Macros.cmake deleted file mode 100644 index b8ff129f..00000000 --- a/modules/KDE3Macros.cmake +++ /dev/null @@ -1,375 +0,0 @@ - - -# See FindKDE3.cmake for documentation. -# -# this file contains the following macros: -# KDE3_ADD_DCOP_SKELS -# KDE3_ADD_DCOP_STUBS -# KDE3_ADD_MOC_FILES -# KDE3_ADD_UI_FILES -# KDE3_ADD_KCFG_FILES -# KDE3_AUTOMOC -# KDE3_INSTALL_LIBTOOL_FILE -# KDE3_CREATE_FINAL_FILE -# KDE3_ADD_KPART -# KDE3_ADD_KDEINIT_EXECUTABLE -# KDE3_ADD_EXECUTABLE - - -#neundorf@kde.org - -INCLUDE(MacroLibrary) - -#create the kidl and skeletion file for dcop stuff -#usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) -MACRO (KDE3_ADD_DCOP_SKELS _sources) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - - SET(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - - IF (NOT HAVE_${_basename}_KIDL_RULE) - SET(HAVE_${_basename}_KIDL_RULE ON) - - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} - COMMAND ${KDE3_DCOPIDL_EXECUTABLE} - ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} > ${_kidl} - DEPENDS ${_tmp_FILE} - ) - ENDIF (NOT HAVE_${_basename}_KIDL_RULE) - - IF (NOT HAVE_${_basename}_SKEL_RULE) - SET(HAVE_${_basename}_SKEL_RULE ON) - - ADD_CUSTOM_COMMAND(OUTPUT ${_skel} - COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} - DEPENDS ${_kidl} - ) - - ENDIF (NOT HAVE_${_basename}_SKEL_RULE) - - SET(${_sources} ${${_sources}} ${_skel}) - - ENDFOREACH (_current_FILE) - -ENDMACRO (KDE3_ADD_DCOP_SKELS) - - -MACRO (KDE3_ADD_DCOP_STUBS _sources) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - - SET(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) - SET(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - - IF (NOT HAVE_${_basename}_KIDL_RULE) - SET(HAVE_${_basename}_KIDL_RULE ON) - - - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} - COMMAND ${KDE3_DCOPIDL_EXECUTABLE} - ARGS ${tmp_FILE} > ${_kidl} - DEPENDS ${tmp_FILE} - ) - - ENDIF (NOT HAVE_${_basename}_KIDL_RULE) - - - IF (NOT HAVE_${_basename}_STUB_RULE) - SET(HAVE_${_basename}_STUB_RULE ON) - - ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} - COMMAND ${KDE3_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} - DEPENDS ${_kidl} - ) - - ENDIF (NOT HAVE_${_basename}_STUB_RULE) - - SET(${_sources} ${${_sources}} ${_stub_CPP}) - - ENDFOREACH (_current_FILE) - -ENDMACRO (KDE3_ADD_DCOP_STUBS) - - -MACRO (KDE3_ADD_KCFG_FILES _sources) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - - FILE(READ ${_tmp_FILE} _contents) - STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+)\n.*$" "\\2" _kcfg_FILE "${_contents}") - - SET(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - - ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} - COMMAND ${KDE3_KCFGC_EXECUTABLE} - ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE}) - - SET(${_sources} ${${_sources}} ${_src_FILE}) - - ENDFOREACH (_current_FILE) - -ENDMACRO (KDE3_ADD_KCFG_FILES) - - -#create the moc files and add them to the list of sources -#usage: KDE_ADD_MOC_FILES(foo_SRCS ${moc_headers}) -MACRO (KDE3_ADD_MOC_FILES _sources) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) - - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_tmp_FILE} -o ${_moc} - DEPENDS ${_tmp_FILE} - ) - - SET(${_sources} ${${_sources}} ${_moc}) - - ENDFOREACH (_current_FILE) -ENDMACRO (KDE3_ADD_MOC_FILES) - - -GET_FILENAME_COMPONENT(KDE3_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) - -#create the implementation files from the ui files and add them to the list of sources -#usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) -MACRO (KDE3_ADD_UI_FILES _sources) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) - - ADD_CUSTOM_COMMAND(OUTPUT ${_header} - COMMAND ${QT_UIC_EXECUTABLE} - ARGS -nounload -o ${_header} ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} - DEPENDS ${_tmp_FILE} - ) - - ADD_CUSTOM_COMMAND(OUTPUT ${_src} - COMMAND ${CMAKE_COMMAND} - ARGS - -DKDE_UIC_FILE:STRING=${_tmp_FILE} - -DKDE_UIC_CPP_FILE:STRING=${_src} - -DKDE_UIC_H_FILE:STRING=${_header} - -P ${KDE3_MODULE_DIR}/kde3uic.cmake - DEPENDS ${_header} - ) - - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_header} -o ${_moc} - DEPENDS ${_header} - ) - - SET(${_sources} ${${_sources}} ${_src} ${_moc}) - - ENDFOREACH (_current_FILE) -ENDMACRO (KDE3_ADD_UI_FILES) - - -MACRO (KDE3_AUTOMOC) - SET(_matching_FILES) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - - # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # here. this is required to make bouic work correctly: - # we need to add generated .cpp files to the sources (to compile them), - # but we cannot let automoc handle them, as the .cpp files don't exist yet when - # cmake is run for the very first time on them -> however the .cpp files might - # exist at a later run. at that time we need to skip them, so that we don't add two - # different rules for the same moc file - GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - - IF (EXISTS ${_abs_FILE} AND NOT _skip) - - FILE(READ ${_abs_FILE} _contents) - - GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - - STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF (_match) - FOREACH (_current_MOC_INC ${_match}) - STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - - GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) -# SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_header} -o ${_moc} - DEPENDS ${_header} - ) - - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) - - ENDFOREACH (_current_MOC_INC) - ENDIF (_match) - - ENDIF (EXISTS ${_abs_FILE} AND NOT _skip) - ENDFOREACH (_current_FILE) -ENDMACRO (KDE3_AUTOMOC) - - -MACRO (KDE3_INSTALL_ICONS _theme) - ADD_CUSTOM_TARGET(install_icons) - SET_TARGET_PROPERTIES(install_icons PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "# icon installations rules\n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "SET(CMAKE_BACKWARDS_COMPATIBILITY \"2.2\") \n") - - FILE(GLOB _icons *.png) - FOREACH (_current_ICON ${_icons}) - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") - - SET(_icon_GROUP "actions") - - IF (${_group} STREQUAL "mime") - SET(_icon_GROUP "mimetypes") - ENDIF (${_group} STREQUAL "mime") - - IF (${_group} STREQUAL "filesys") - SET(_icon_GROUP "filesystems") - ENDIF (${_group} STREQUAL "filesys") - - IF (${_group} STREQUAL "device") - SET(_icon_GROUP "devices") - ENDIF (${_group} STREQUAL "device") - - IF (${_group} STREQUAL "app") - SET(_icon_GROUP "apps") - ENDIF (${_group} STREQUAL "app") - - IF (${_group} STREQUAL "action") - SET(_icon_GROUP "actions") - ENDIF (${_group} STREQUAL "action") - -# message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}") - SET(_ICON_INSTALL_NAME ${CMAKE_INSTALL_PREFIX}/share/icons/${_theme}/${_size}x${_size}/${_icon_GROUP}/${_name}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "message(STATUS \"Installing ${_ICON_INSTALL_NAME}\") \n") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake "CONFIGURE_FILE(${_current_ICON} ${_ICON_INSTALL_NAME} COPYONLY) \n") - - ENDFOREACH (_current_ICON) -ENDMACRO (KDE3_INSTALL_ICONS) - - -MACRO (KDE3_INSTALL_LIBTOOL_FILE _target) - GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) - - GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) - GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) - SET(_laname ${CMAKE_CURRENT_BINARY_DIR}/${_laname}.la) - - FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") - FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") - FILE(APPEND ${_laname} "dlname='${_soname}'\n") - FILE(APPEND ${_laname} "# Names of this library\n") - FILE(APPEND ${_laname} "library_names='${_soname} ${_soname} ${_soname}'\n") - FILE(APPEND ${_laname} "# The name of the static archive\n") - FILE(APPEND ${_laname} "old_library=''\n") - FILE(APPEND ${_laname} "# Libraries that this one depends upon.\n") - FILE(APPEND ${_laname} "dependency_libs=''\n") -# FILE(APPEND ${_laname} "dependency_libs='${${_target}_LIB_DEPENDS}'\n") - FILE(APPEND ${_laname} "# Version information.\ncurrent=0\nage=0\nrevision=0\n") - FILE(APPEND ${_laname} "# Is this an already installed library?\ninstalled=yes\n") - 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}/lib/kde3'\n") - - INSTALL_FILES(/lib/kde3 FILES ${_laname}) -ENDMACRO (KDE3_INSTALL_LIBTOOL_FILE) - - -MACRO (KDE3_CREATE_FINAL_FILE _filename) - FILE(WRITE ${_filename} "//autogenerated file\n") - FOREACH (_current_FILE ${ARGN}) - FILE(APPEND ${_filename} "#include \"${_current_FILE}\"\n") - ENDFOREACH (_current_FILE) - -ENDMACRO (KDE3_CREATE_FINAL_FILE) - - -OPTION(KDE3_ENABLE_FINAL "Enable final all-in-one compilation") -OPTION(KDE3_BUILD_TESTS "Build the tests") - - -MACRO (KDE3_ADD_KPART _target_NAME _with_PREFIX) -#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise SET the prefix empty - IF (${_with_PREFIX} STREQUAL "WITH_PREFIX") - SET(_first_SRC) - ELSE (${_with_PREFIX} STREQUAL "WITH_PREFIX") - SET(_first_SRC ${_with_PREFIX}) - ENDIF (${_with_PREFIX} STREQUAL "WITH_PREFIX") - - IF (KDE3_ENABLE_FINAL) - KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${_first_SRC} ${ARGN}) - ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final.cpp) - ELSE (KDE3_ENABLE_FINAL) - ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) - ENDIF (KDE3_ENABLE_FINAL) - - IF (_first_SRC) - SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") - ENDIF (_first_SRC) - - KDE3_INSTALL_LIBTOOL_FILE(${_target_NAME}) - -ENDMACRO (KDE3_ADD_KPART) - - -MACRO (KDE3_ADD_KDEINIT_EXECUTABLE _target_NAME) - - IF (KDE3_ENABLE_FINAL) - KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final.cpp) - ELSE (KDE3_ENABLE_FINAL) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN}) - ENDIF (KDE3_ENABLE_FINAL) - - CONFIGURE_FILE(${KDE3_MODULE_DIR}/kde3init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - - ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - TARGET_LINK_LIBRARIES(${_target_NAME} kdeinit_${_target_NAME}) - -ENDMACRO (KDE3_ADD_KDEINIT_EXECUTABLE) - - -MACRO (KDE3_ADD_EXECUTABLE _target_NAME) - - IF (KDE3_ENABLE_FINAL) - KDE3_CREATE_FINAL_FILE(${_target_NAME}_final.cpp ${ARGN}) - ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final.cpp) - ELSE (KDE3_ENABLE_FINAL) - ADD_EXECUTABLE(${_target_NAME} ${ARGN}) - ENDIF (KDE3_ENABLE_FINAL) - -ENDMACRO (KDE3_ADD_EXECUTABLE) - - diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake deleted file mode 100644 index f39ec148..00000000 --- a/modules/UsePkgConfig.cmake +++ /dev/null @@ -1,40 +0,0 @@ -# - pkg-config module for CMake -# Defines the following macros: -# PKGCONFIG(package includedir libdir linkflags cflags) -# - Calling PKGCONFIG will fill the desired information into the 4 given arguments, -# e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS) -# if pkg-config was NOT found or the specified software package doesn't exist, the -# variable will be empty when the function returns, otherwise they will contain the respective information - -FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin) - -MACRO (PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) -# reset the variables at the beginning - SET(${_include_DIR}) - SET(${_link_DIR}) - SET(${_link_FLAGS}) - SET(${_cflags}) - - # if pkg-config has been found - IF (PKGCONFIG_EXECUTABLE) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull) - - # and if the package of interest also exists for pkg-config, then get the information - IF (NOT _return_VALUE) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR}) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir OUTPUT_VARIABLE ${_link_DIR}) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs OUTPUT_VARIABLE ${_link_FLAGS}) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags}) - - ENDIF (NOT _return_VALUE) - - ENDIF (PKGCONFIG_EXECUTABLE) - -ENDMACRO (PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) - -MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) diff --git a/modules/kde3init_dummy.cpp.in b/modules/kde3init_dummy.cpp.in deleted file mode 100644 index 7135c73a..00000000 --- a/modules/kde3init_dummy.cpp.in +++ /dev/null @@ -1,6 +0,0 @@ - -/* used by KDE3Macros.cmake */ - -extern "C" int kdemain(int argc, char* argv[]); -extern "C" int kdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); } -int main(int argc, char* argv[]) { return kdemain(argc,argv); } diff --git a/modules/kde3uic.cmake b/modules/kde3uic.cmake deleted file mode 100644 index 83920b40..00000000 --- a/modules/kde3uic.cmake +++ /dev/null @@ -1,23 +0,0 @@ - - -# used internally by KDE3Macros.cmake -# neundorf@kde.org - - -EXECUTE_PROCESS(COMMAND uic - -nounload -tr tr2i18n - -impl ${KDE_UIC_H_FILE} - ${KDE_UIC_FILE} - OUTPUT_VARIABLE _uic_CONTENTS - ERROR_QUIET - ) - -STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) -STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) - -# $(PERL) -pe "s,image([0-9][0-9]*)_data,img\$$1_editbookmarkdlg,g" >> editbookmarkdlg.cpp ;\ -# rm -f editbookmarkdlg.cpp.temp ;\ - -FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n") -FILE(APPEND ${KDE_UIC_CPP_FILE} "${_uic_CONTENTS}") - diff --git a/modules/remove_files.cmake.in b/modules/remove_files.cmake.in deleted file mode 100644 index 8594d5f2..00000000 --- a/modules/remove_files.cmake.in +++ /dev/null @@ -1,2 +0,0 @@ - -exec_program(${CMAKE_COMMAND} ARGS -E remove ${FILES_TO_REMOVE}) -- cgit v1.2.1 From 040888d87ea7de31f4f9b3fb2250acb9ae170690 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 22 Mar 2006 20:41:56 +0000 Subject: -remove the LIB_SOMETHING variables Alex svn path=/trunk/KDE/kdelibs/; revision=521561 --- modules/FindKDE4Internal.cmake | 64 +++++++++++++++--------------------------- 1 file changed, 23 insertions(+), 41 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 887ed493..5742b055 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -339,41 +339,34 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) # now the KDE library directory, kxmlcore is new with KDE4 - find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore - PATHS - ${KDE4_LIB_INSTALL_DIR} - $ENV{KDEDIR}/lib - /opt/kde/lib - /opt/kde4/lib - /usr/lib - /usr/local/lib) + find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) - # at first the KDE include direcory - # kpassworddialog.h is new with KDE4 - find_path(KDE4_INCLUDE_DIR kpassworddialog.h - ${KDE4_INCLUDE_INSTALL_DIR} - $ENV{KDEDIR}/include - /opt/kde/include - /opt/kde4/include - /usr/local/include - /usr/include/ - /usr/include/kde - /usr/local/include/kde - ) - - #now search for the dcop utilities - find_program(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS - ${KDE4_BIN_INSTALL_DIR} - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH - ) + # at first the KDE include direcory + # kpassworddialog.h is new with KDE4 + find_path(KDE4_INCLUDE_DIR kpassworddialog.h + ${KDE4_INCLUDE_INSTALL_DIR} + $ENV{KDEDIR}/include + /opt/kde/include + /opt/kde4/include + /usr/local/include + /usr/include/ + /usr/include/kde + /usr/local/include/kde + ) + + #now search for the dcop utilities + find_program(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS + ${KDE4_BIN_INSTALL_DIR} + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH + ) if (NOT KDE4_DCOPIDL_EXECUTABLE) find_program(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl ) @@ -426,17 +419,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) endif (NOT KDE4_MEINPROC_EXECUTABLE) - -# all the following are deprecated and should be changed to the KDE4_..._LIBRARIES ASAP, Alex - set(LIB_KDECORE ${KDE4_KDECORE_LIBS}) - set(QT_AND_KDECORE_LIBS ${KDE4_KDECORE_LIBS}) - set(LIB_KDEUI ${KDE4_KDEUI_LIBRARIES}) - set(LIB_KIO ${KDE4_KIO_LIBRARIES}) - set(LIB_KPARTS ${KDE4_KPARTS_LIBRARIES}) - set(LIB_KUTILS ${KDE4_KUTILS_LIBRARIES}) - set(LIB_KDE3SUPPORT ${KDE4_KDE3SUPPORT_LIBRARIES}) - - endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) -- cgit v1.2.1 From 3ab8e96c20513aec35830eb3a081cabb48f8236f Mon Sep 17 00:00:00 2001 From: Gary Cramblitt Date: Thu, 23 Mar 2006 00:16:51 +0000 Subject: CCMAIL:Alexander Neundorf No such file. My first cmake related fix. Hope this is right. svn path=/trunk/KDE/kdelibs/; revision=521619 --- modules/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index c99d6edb..f9c7c45a 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -4,7 +4,7 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir /share/apps/cmake/modules ) -install_files(${module_install_dir} FILES kde3init_dummy.cpp.in kde4init_dummy.cpp.in ${cmakeFiles} ) +install_files(${module_install_dir} FILES kde4init_dummy.cpp.in ${cmakeFiles} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE -- cgit v1.2.1 From b1d89a489da918d73b8836f524e02b7830e2f864 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 23 Mar 2006 13:01:39 +0000 Subject: DEPREACTED won't do much good :) svn path=/trunk/KDE/kdelibs/; revision=521726 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5742b055..13df85d0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -667,7 +667,7 @@ endif (NOT KDE4Internal_FIND_QUIETLY) set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPREACTED_WARNINGS ) +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) # always add CMAKE_CCURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR to the include path to save some typing, Alex set(CMAKE_INCLUDE_CURRENT_DIR TRUE) \ No newline at end of file -- cgit v1.2.1 From 5e1f287d89cfac8f668b4474f48b1175629cbff5 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 23 Mar 2006 13:12:03 +0000 Subject: add a newline to the end of file. svn path=/trunk/KDE/kdelibs/; revision=521729 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 13df85d0..720361a1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -670,4 +670,4 @@ set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUD set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) # always add CMAKE_CCURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR to the include path to save some typing, Alex -set(CMAKE_INCLUDE_CURRENT_DIR TRUE) \ No newline at end of file +set(CMAKE_INCLUDE_CURRENT_DIR TRUE) -- cgit v1.2.1 From 341219afc6524c41755b981c45e593a30dc9da5a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 24 Mar 2006 10:24:44 +0000 Subject: Search for xpm svn path=/trunk/KDE/kdelibs/; revision=522055 --- modules/FindX11.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 9c6b1803..167019fc 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -44,6 +44,7 @@ if (UNIX) FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) @@ -59,6 +60,7 @@ if (UNIX) FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -95,6 +97,13 @@ if (UNIX) set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) endif (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) + if (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xpm_LIB}) + set(X11_Xpm_FOUND TRUE) + endif (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) + + + if (X11_Xcomposite_INCLUDE_PATH) set(X11_Xcomposite_FOUND TRUE) endif (X11_Xcomposite_INCLUDE_PATH) @@ -270,6 +279,8 @@ if (UNIX) X11_Xkb_INCLUDE_PATH X11_Xkblib_INCLUDE_PATH X11_Xscreensaver_INCLUDE_PATH + X11_Xpm_INCLUDE_PATH + X11_Xpm_LIB ) endif (UNIX) -- cgit v1.2.1 From 93865589e6a0c86a722c55a87ef7103362b10b2d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Mar 2006 14:29:35 +0000 Subject: -rename KDE4_INCLUDE_DIRS to KDE4_INCLUDES (but still keep it in the snapshot for compat) Bye Alex CCMAIL: montel@kde.org CCMAIL: faure@kde.org CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=522713 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 720361a1..f184ae6e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -6,7 +6,7 @@ # # KDE4_DEFINITIONS - compiler definitions required for compiling KDE software # KDE4_INCLUDE_DIR - the KDE 4 include directory -# KDE4_INCLUDE_DIRS - all include directories required for KDE, i.e. +# KDE4_INCLUDES - all include directories required for KDE, i.e. # KDE4_INCLUDE_DIR, but also the Qt4 include directories # and other platform specific include directories # KDE4_LIB_DIR - the directory where the KDE libraries are installed, @@ -664,7 +664,7 @@ if (NOT KDE4Internal_FIND_QUIETLY) endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path -set(KDE4_INCLUDE_DIRS ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) +set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) -- cgit v1.2.1 From 85e1345e3d601acea512de6f60abb058eebd1c76 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 27 Mar 2006 14:03:58 +0000 Subject: It's not unused, see kded/CMakeLists.txt svn path=/trunk/KDE/kdelibs/; revision=523140 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f184ae6e..a3e5c03f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -196,11 +196,11 @@ set(WALLPAPER_INSTALL_DIR /share/wallpapers CACHE STRING "The instal set(KCONF_UPDATE_INSTALL_DIR /share/apps/kconf_update/ CACHE STRING "The kconf_update install dir") set(XDG_APPS_DIR /share/applications/kde CACHE STRING "The XDG apps dir") set(XDG_DIRECTORY_DIR /share/desktop-directories CACHE STRING "The XDG directory") +set(KDE4_SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") # seem to be unused: set(LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") -#set(KDE4_SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") # set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) -- cgit v1.2.1 From eec44594b5f49e655dd14fd2aeb6deb05d2f3c0c Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 27 Mar 2006 14:51:49 +0000 Subject: The other vars don't have KDE4_ as prefix (for some reason) svn path=/trunk/KDE/kdelibs/; revision=523162 --- modules/FindKDE4Internal.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a3e5c03f..445ee5a8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -196,12 +196,11 @@ set(WALLPAPER_INSTALL_DIR /share/wallpapers CACHE STRING "The instal set(KCONF_UPDATE_INSTALL_DIR /share/apps/kconf_update/ CACHE STRING "The kconf_update install dir") set(XDG_APPS_DIR /share/applications/kde CACHE STRING "The XDG apps dir") set(XDG_DIRECTORY_DIR /share/desktop-directories CACHE STRING "The XDG directory") -set(KDE4_SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") +set(SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") # seem to be unused: set(LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") -# set(KDE4_DIR ${CMAKE_INSTALL_PREFIX}) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") -- cgit v1.2.1 From c80ebd38d8cb1d02dbd5a94fcca60c8bffd51404 Mon Sep 17 00:00:00 2001 From: Hasso Tepper Date: Mon, 27 Mar 2006 16:05:59 +0000 Subject: Better gettext find test. Tested with Linux and NetBSD. svn path=/trunk/KDE/kdelibs/; revision=523195 --- modules/FindGettext.cmake | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 3eae44a0..26bab048 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -11,31 +11,33 @@ # embedded within kdelibs (cf. gettext.m4 from Gettext source). INCLUDE(CheckIncludeFiles) +include(CheckFunctionExists) + check_include_files(libintl.h HAVE_LIBINTL_H) set(GETTEXT_INCLUDE_DIR) set(GETTEXT_LIBRARIES) if (HAVE_LIBINTL_H) - set(GETTEXT_FOUND TRUE) - set(GETTEXT_SOURCE "built in libc") + check_function_exists(dgettext LIBC_HAS_DGETTEXT) + if (LIBC_HAS_DGETTEXT) + set(GETTEXT_SOURCE "built in libc") + set(GETTEXT_FOUND TRUE) + else (LIBC_HAS_DGETTEXT) + FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl + PATHS + /usr/lib + /usr/local/lib + ) + CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT) + if (LIBINTL_HAS_DGETTEXT) + set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") + set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) + set(GETTEXT_FOUND TRUE) + endif (LIBINTL_HAS_DGETTEXT) + endif (LIBC_HAS_DGETTEXT) endif (HAVE_LIBINTL_H) -# Check for libintl, and check that it provides libintl_dgettext. Needed on BSD systems (e.g. Mac OS X) -FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl - PATHS - /usr/lib - /usr/local/lib -) - -if (LIBINTL_LIBRARY) - CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT) - if (LIBINTL_HAS_DGETTEXT) - set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") - set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) - endif (LIBINTL_HAS_DGETTEXT) -endif (LIBINTL_LIBRARY) - if (GETTEXT_FOUND) if (NOT Gettext_FIND_QUIETLY) message(STATUS "Found Gettext: ${GETTEXT_SOURCE}") -- cgit v1.2.1 From 6d988ec089174f821a4cb97c93aed7b2cb0b5d02 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 27 Mar 2006 19:58:17 +0000 Subject: -apply patch from Tanner Lovelace: only check for X11 if Q_WS_X11 is defined Alex svn path=/trunk/KDE/kdelibs/; revision=523302 --- modules/FindQt4.cmake | 42 +++++++++++++++++++++++++++++------------- 1 file changed, 29 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8f02f4e1..19a54072 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -210,13 +210,13 @@ IF (QT4_QMAKE_FOUND) OUTPUT_VARIABLE qt_headers ) SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") ENDIF(NOT QT_HEADERS_DIR) - + FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" ${QT_HEADERS_DIR}/QtCore ${QT_LIBRARY_DIR}/QtCore.framework/Headers $ENV{QTDIR}/include/QtCore - "$ENV{ProgramFiles}/qt/include/Qt" + "$ENV{ProgramFiles}/qt/include/Qt" ) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} @@ -228,7 +228,7 @@ IF (QT4_QMAKE_FOUND) SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") ENDIF (QT_USE_FRAMEWORKS) ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - + IF( NOT QT_INCLUDE_DIR) IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") @@ -574,7 +574,7 @@ IF (QT4_QMAKE_FOUND) QT4_GET_MOC_INC_DIRS(moc_includes) GET_FILENAME_COMPONENT(infile ${infile} ABSOLUTE) - + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${infile} @@ -652,10 +652,10 @@ IF (QT4_QMAKE_FOUND) MACRO(QT4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) - + SET(_matching_FILES ) FOREACH (_current_FILE ${ARGN}) - + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. # here. this is required to make bouic work correctly: @@ -665,18 +665,18 @@ IF (QT4_QMAKE_FOUND) # exist at a later run. at that time we need to skip them, so that we don't add two # different rules for the same moc file GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - + IF (EXISTS ${_abs_FILE} AND NOT _skip) - + FILE(READ ${_abs_FILE} _contents) - + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") IF(_match) FOREACH (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - + GET_filename_component(_basename ${_current_MOC} NAME_WE) # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) SET(_header ${_abs_PATH}/${_basename}.h) @@ -686,7 +686,7 @@ IF (QT4_QMAKE_FOUND) ARGS ${_moc_INCS} ${_header} -o ${_moc} DEPENDS ${_header} ) - + _QT4_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) ENDIF(_match) @@ -716,6 +716,19 @@ IF (QT4_QMAKE_FOUND) SET(QT_FOUND ${QT4_FOUND}) + INCLUDE(CheckSymbolExists) + # Save required includes variable + SET(CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) + # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES + SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") + # Check for Window system symbols (note: only one should end up being set) + CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + CHECK_SYMBOL_EXISTS(Q_WS_WIN32 "QtCore/qglobal.h" Q_WS_WIN32) + CHECK_SYMBOL_EXISTS(Q_WS_WIN64 "QtCore/qglobal.h" Q_WS_WIN64) + # Restore CMAKE_REQUIRED_INCLUDES variable + SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE}) + ####################################### # # System dependent settings @@ -723,7 +736,10 @@ IF (QT4_QMAKE_FOUND) ####################################### # for unix add X11 stuff IF(UNIX) - FIND_PACKAGE(X11) + # on OS X X11 may not be required + IF (Q_WS_X11) + FIND_PACKAGE(X11) + ENDIF (Q_WS_X11) FIND_PACKAGE(Threads) SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) ENDIF(UNIX) -- cgit v1.2.1 From 3fedea31173e32997a9343eade18872966c03977 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 29 Mar 2006 13:53:50 +0000 Subject: Those aliases seem quite useful when building kdelibs itself, too... svn path=/trunk/KDE/kdelibs/; revision=523923 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 445ee5a8..dc8263c8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -249,6 +249,10 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) + set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) + set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) + set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) + set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) -- cgit v1.2.1 From 4947881ecfe66c7662c16e9294139cdf2fe28cde Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 29 Mar 2006 14:16:10 +0000 Subject: * Moved kmanagerselection.* to kdeui (it is X11-based and isn't needed by anything in kdecore) * Moved HAVE_PTHREAD_ATTR_GET_NP/HAVE_PTHREAD_GETATTR_NP check to kjs since it's only used there (a small step towards modular configuration, and hopefully faster re-configure when editing a CMakeList.txt in a subdir?) svn path=/trunk/KDE/kdelibs/; revision=523933 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/kde4uic.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 19fb10aa..5c9e4dae 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -37,7 +37,7 @@ if (KDE4_HEADER) endif (KDE4_HEADER) -#replace tr218n("") with QString::null to avoid waring from KLocale +#replace tr218n("") with QString::null to avoid warning from KLocale STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) #replace image15_data with img15_filename to make enable_final work -- cgit v1.2.1 From 749954b40e3c24ce379cf9511bb8162c2ac92239 Mon Sep 17 00:00:00 2001 From: Tanner Lovelace Date: Wed, 29 Mar 2006 16:50:10 +0000 Subject: Consolidate checks for the Microsoft Windows windowing system into one line instead of specifically checking for win32 or win64. (Thanks to Thiago for the info about this.) svn path=/trunk/KDE/kdelibs/; revision=524072 --- modules/FindQt4.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 19a54072..0b53efce 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -724,8 +724,7 @@ IF (QT4_QMAKE_FOUND) # Check for Window system symbols (note: only one should end up being set) CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) - CHECK_SYMBOL_EXISTS(Q_WS_WIN32 "QtCore/qglobal.h" Q_WS_WIN32) - CHECK_SYMBOL_EXISTS(Q_WS_WIN64 "QtCore/qglobal.h" Q_WS_WIN64) + CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) # Restore CMAKE_REQUIRED_INCLUDES variable SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE}) -- cgit v1.2.1 From 2e1b01f98b2956c1d61ab4af9789bd93df66c7b3 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Wed, 29 Mar 2006 20:01:38 +0000 Subject: only look at the path we want it to look Aproved by AleXXX svn path=/trunk/KDE/kdelibs/; revision=524129 --- modules/FindKDE4Internal.cmake | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dc8263c8..6d928bf0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -302,43 +302,43 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) - find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) - find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) - find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) - find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) - find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) - find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) - find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) - find_library(KDE4_KNEWSTUFF_LIBRARY NAMES knewstuff PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KNEWSTUFF_LIBRARY NAMES knewstuff PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KNEWSTUFF_LIBS ${knewstuff_LIB_DEPENDS} ${KDE4_KNEWSTUFF_LIBRARY} ) - find_library(KDE4_DCOP_LIBRARY NAMES DCOP PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_DCOP_LIBRARY NAMES DCOP PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_DCOP_LIBS ${DCOP_LIB_DEPENDS} ${KDE4_DCOP_LIBRARY} ) - find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) - find_library(KDE4_KSPELL2_LIBRARY NAMES kspell2 PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KSPELL2_LIBRARY NAMES kspell2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KSPELL2_LIBS ${kspell2_LIB_DEPENDS} ${KDE4_KSPELL2_LIBRARY} ) - find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) # now the KDE library directory, kxmlcore is new with KDE4 -- cgit v1.2.1 From ce8afbfbf1904657e9beb12f817c1d38724e89a6 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 29 Mar 2006 20:24:41 +0000 Subject: don't mark it executable svn path=/trunk/KDE/kdelibs/; revision=524147 --- modules/CheckTypeSize.cmake | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 modules/CheckTypeSize.cmake (limited to 'modules') diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake old mode 100755 new mode 100644 -- cgit v1.2.1 From 4a357c445c9a8103fccb30e1f9fd48cd259d4a5e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 29 Mar 2006 20:33:10 +0000 Subject: -add the include paths of all X11 extensions to X11_INCLUDE_PATH, so they don't have to be added everywhere manually X11_INCLUDE_PATH is part of KDE4_INCLUDES on UNIX != OS X CCMAIL: montel@kde.org Alex svn path=/trunk/KDE/kdelibs/; revision=524151 --- modules/FindX11.cmake | 56 ++++++++++++++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 167019fc..da103933 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -83,73 +83,87 @@ if (UNIX) endif (X11_Xext_LIB) if (X11_Xau_LIB) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) - set(X11_Xau_FOUND TRUE) + set(X11_Xau_FOUND TRUE) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) endif (X11_Xau_LIB) if (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xdmcp_LIB}) - set(X11_Xdmcp_FOUND TRUE) + set(X11_Xdmcp_FOUND TRUE) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xdmcp_LIB}) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdmcp_INCLUDE_PATH}) endif (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) if (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) - set(X11_Xaccess_FOUND TRUE) - set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) + set(X11_Xaccess_FOUND TRUE) + set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xaccess_INCLUDE_PATH}) endif (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) if (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xpm_LIB}) - set(X11_Xpm_FOUND TRUE) + set(X11_Xpm_FOUND TRUE) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xpm_LIB}) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xpm_INCLUDE_PATH}) endif (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) - if (X11_Xcomposite_INCLUDE_PATH) - set(X11_Xcomposite_FOUND TRUE) + set(X11_Xcomposite_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) endif (X11_Xcomposite_INCLUDE_PATH) if (X11_XTest_INCLUDE_PATH) - set(X11_XTest_FOUND TRUE) + set(X11_XTest_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH}) endif (X11_XTest_INCLUDE_PATH) if (X11_Xinerama_INCLUDE_PATH) - set(X11_Xinerama_FOUND TRUE) + set(X11_Xinerama_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinerama_INCLUDE_PATH}) endif (X11_Xinerama_INCLUDE_PATH) if (X11_Xfixes_INCLUDE_PATH) - set(X11_Xfixes_FOUND TRUE) + set(X11_Xfixes_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xfixes_INCLUDE_PATH}) endif (X11_Xfixes_INCLUDE_PATH) if (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) - set(X11_Xrender_FOUND TRUE) + set(X11_Xrender_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrender_INCLUDE_PATH}) endif (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) if (X11_Xrandr_INCLUDE_PATH) - set(X11_Xrandr_FOUND TRUE) + set(X11_Xrandr_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrandr_INCLUDE_PATH}) endif (X11_Xrandr_INCLUDE_PATH) if (X11_Xxf86misc_INCLUDE_PATH) - set(X11_Xxf86misc_FOUND TRUE) + set(X11_Xxf86misc_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xxf86misc_INCLUDE_PATH}) endif (X11_Xxf86misc_INCLUDE_PATH) if (X11_Xcursor_INCLUDE_PATH) - set(X11_Xcursor_FOUND TRUE) + set(X11_Xcursor_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcursor_INCLUDE_PATH}) endif (X11_Xcursor_INCLUDE_PATH) if (X11_Xscreensaver_INCLUDE_PATH) - set(X11_Xscreensaver_FOUND TRUE) + set(X11_Xscreensaver_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xscreensaver_INCLUDE_PATH}) endif (X11_Xscreensaver_INCLUDE_PATH) if (X11_dpms_INCLUDE_PATH) - set(X11_dpms_FOUND TRUE) + set(X11_dpms_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_dpms_INCLUDE_PATH}) endif (X11_dpms_INCLUDE_PATH) if (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) - set(X11_Xkb_FOUND TRUE) + set(X11_Xkb_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkb_INCLUDE_PATH} ) endif (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) if (X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) - set(X11_kompmgr_FOUND TRUE) + set(X11_kompmgr_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) endif (X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) # Deprecated variable for backwards compatibility with CMake 1.4 -- cgit v1.2.1 From a5091f13bb9eb0a7a08539be8f4f2445ba14c778 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 30 Mar 2006 17:25:59 +0000 Subject: Don't remove this file on make clean, it won't be re-generated by "make". svn path=/trunk/KDE/kdelibs/; revision=524571 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 05c707d3..c8fe0032 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -430,7 +430,7 @@ ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) MACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - MACRO_ADDITIONAL_CLEAN_FILES(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + #MACRO_ADDITIONAL_CLEAN_FILES(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) # if (WIN32) # # under windows, just build a normal executable -- cgit v1.2.1 From cfda42b6f7bcea9c6adbedb9de584049b384afb6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 30 Mar 2006 20:02:53 +0000 Subject: bigger changes in FindQt4.cmake: -new variable QT_MIN_VERSION (as in FindQt3.cmake): set it to the minimum required version -prefer qmake over qmake-qt4 -find uic and moc by grepping the qmake spec file -search for the libs, headers and binaries only in the directories reported by qmake -set the minimum required Qt version to 4.1.1 svn path=/trunk/KDE/kdelibs/; revision=524621 --- modules/FindKDE4Internal.cmake | 1 + modules/FindQt4.cmake | 282 ++++++++++++++++++++++++++--------------- 2 files changed, 180 insertions(+), 103 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6d928bf0..ce4dc08e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -169,6 +169,7 @@ cmake_minimum_required(VERSION 2.3.4 FATAL_ERROR) +set(QT_MIN_VERSION "4.1.1") #this line includes FindQt.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0b53efce..d8dd53e1 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1,5 +1,7 @@ # - Find QT 4 # This module can be used to find Qt4. +# The most important issue is that the Qt4 qmake is available via the system path. +# This qmake is then used to detect basically everything else. # This module defines a number of key variables and macros. First is # QT_USE_FILE which is the path to a CMake file that can be included to compile # Qt 4 applications and libraries. By default, the QtCore and QtGui @@ -158,21 +160,59 @@ IF (WIN32) ENDIF(WIN32) # check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake PATHS +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake-qt4 PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin ) IF (QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" - OUTPUT_VARIABLE QTVERSION) - IF(QTVERSION MATCHES "4.*") - SET(QT4_QMAKE_FOUND TRUE) - ENDIF(QTVERSION MATCHES "4.*") + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + + # we need at least version 4.0.0 + IF (NOT QT_MIN_VERSION) + SET(QT_MIN_VERSION "4.0.0") + ENDIF (NOT QT_MIN_VERSION) + + SET(QT4_QMAKE_FOUND TRUE) + IF (QT_MIN_VERSION) + #now parse the parts of the user given version string into variables + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+$" req_qt_major_vers "${QT_MIN_VERSION}") + IF (NOT req_qt_major_vers) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers) + + + # now parse the parts of the user given version string into variables + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + + IF (NOT req_qt_major_vers EQUAL 4) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers EQUAL 4) + + # and now the version string given by qmake + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" found_qt_major_vers "${QTVERSION}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" found_qt_minor_vers "${QTVERSION}") + STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" found_qt_patch_vers "${QTVERSION}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") + MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") + + IF (found_vers LESS req_vers) + SET(Qt4_QMAKE_FOUND NO) + ELSE (found_vers LESS req_vers) + SET(Qt4_QMAKE_FOUND YES) + ENDIF (found_vers LESS req_vers) + + ENDIF (QT_MIN_VERSION) ENDIF (QT_QMAKE_EXECUTABLE) IF (QT4_QMAKE_FOUND) + + # ask qmake for the library dir # Set QT_LIBRARY_DIR IF (NOT QT_LIBRARY_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} @@ -198,12 +238,15 @@ IF (QT4_QMAKE_FOUND) MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) ENDIF (APPLE) - ######################################## - # - # Setting the INCLUDE-Variables - # - ######################################## - # Set QT_QTCORE_INCLUDE_DIR by searching for the QtGlobal header + # ask qmake for the binary dir + IF (NOT QT_BINARY_DIR) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + ENDIF (NOT QT_BINARY_DIR) + + # ask qmake for the include dir IF (NOT QT_HEADERS_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" @@ -211,6 +254,21 @@ IF (QT4_QMAKE_FOUND) SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") ENDIF(NOT QT_HEADERS_DIR) + + # ask qmake for the documentation directory + IF (NOT QT_DOC_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_DOCS" + OUTPUT_VARIABLE qt_doc_dir ) + SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") + ENDIF (NOT QT_DOC_DIR) + + ######################################## + # + # Setting the INCLUDE-Variables + # + ######################################## + FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" ${QT_HEADERS_DIR}/QtCore @@ -235,90 +293,108 @@ IF (QT4_QMAKE_FOUND) ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) - - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_DOCS" - OUTPUT_VARIABLE qt_doc_dir ) - SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") - IF (QT_USE_FRAMEWORKS) SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) ENDIF (QT_USE_FRAMEWORKS) # Set QT_QT3SUPPORT_INCLUDE_DIR FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support + PATHS ${QT_INCLUDE_DIR}/Qt3Support ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QT_INCLUDE_DIR FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h + PATHS ${QT_INCLUDE_DIR}/Qt ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTGUI_INCLUDE_DIR FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui + PATHS ${QT_INCLUDE_DIR}/QtGui ${QT_LIBRARY_DIR}/QtGui.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTSVG_INCLUDE_DIR FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg + PATHS ${QT_INCLUDE_DIR}/QtSvg ${QT_LIBRARY_DIR}/QtSvg.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTTEST_INCLUDE_DIR FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest + PATHS ${QT_INCLUDE_DIR}/QtTest ${QT_LIBRARY_DIR}/QtTest.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTMOTIF_INCLUDE_DIR - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif ${QT_INCLUDE_DIR}/QtMotif) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) # Set QT_QTNETWORK_INCLUDE_DIR FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork + PATHS ${QT_INCLUDE_DIR}/QtNetwork ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTNSPLUGIN_INCLUDE_DIR FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin + PATHS ${QT_INCLUDE_DIR}/QtNsPlugin ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTOPENGL_INCLUDE_DIR FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL + PATHS ${QT_INCLUDE_DIR}/QtOpenGL ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTSQL_INCLUDE_DIR FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql + PATHS ${QT_INCLUDE_DIR}/QtSql ${QT_LIBRARY_DIR}/QtSql.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTXML_INCLUDE_DIR FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml + PATHS ${QT_INCLUDE_DIR}/QtXml ${QT_LIBRARY_DIR}/QtXml.framework/Headers + NO_DEFAULT_PATH ) # Set QT_QTASSISTANT_INCLUDE_DIR FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant + PATHS ${QT_INCLUDE_DIR}/QtAssistant ${QT_HEADERS_DIR}/QtAssistant + NO_DEFAULT_PATH ) # Set QT_QTDESIGNER_INCLUDE_DIR FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents + PATHS ${QT_INCLUDE_DIR}/QtDesigner ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH ) # Make variables changeble to the advanced user @@ -361,75 +437,61 @@ IF (QT4_QMAKE_FOUND) ELSE (QT_USE_FRAMEWORKS) - # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of - # the filename - FIND_LIBRARY( QT_QTCORE_LIBRARY_RELEASE - NAMES QtCore QtCore4 - PATHS - ${QT_LIBRARY_DIR} - $ENV{QTDIR}/lib - ) - - # Set QT_QTCORE_LIBRARY_DEBUG by searching for a lib with "QtCore_debug" - # as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG - NAMES QtCore_debug QtCored4 - PATHS - ${QT_LIBRARY_DIR} - $ENV{QTDIR}/lib - ) + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename + FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCore_debug QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Support_debug Qt3Supportd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Support_debug Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMOTIF_LIBRARY - FIND_LIBRARY(QT_QTMOTIF_LIBRARY_RELEASE NAMES QtMotif PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY_RELEASE NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetwork_debug QtNetworkd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetwork_debug QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_RELEASE NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_DEBUG NAMES QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_RELEASE NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_DEBUG NAMES QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGL_debug QtOpenGLd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGL_debug QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSql_debug QtSqld4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSql_debug QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) ENDIF (QT_USE_FRAMEWORKS) # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR}) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR}) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ############################################ # @@ -493,64 +555,64 @@ IF (QT4_QMAKE_FOUND) # ( moc, uic, rcc ) # ####################################### - IF (NOT QT_BINARY_DIR) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (NOT QT_BINARY_DIR) - # at first without the system paths, in order to prefer e.g. ${QTDIR}/bin/qmake over /usr/bin/qmake, - # which might be a Qt3 qmake - FIND_PROGRAM(QT_MOC_EXECUTABLE - NAMES moc-qt4 moc - PATHS - ${QT_BINARY_DIR} - $ENV{QTDIR}/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH - ) +# try to find the qmake.conf file + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QMAKE_MKSPECS" OUTPUT_VARIABLE QT_MKSPECS_DIR ) + # get location of preferred qmake.conf file if QMAKESPEC is set + SET(QMAKESPEC "$ENV{QMAKESPEC}") + IF(NOT QMAKESPEC) + IF(NOT WIN32) + # Unix platforms have 'default' softlink going to the default qmake.conf file + SET(QMAKESPEC "default") + ELSE(NOT WIN32) + # Randomly get this qmkspec since we are only checking for uic/moc names + SET(QMAKESPEC "win32-msvc.net") + ENDIF(NOT WIN32) + ENDIF(NOT QMAKESPEC) + + # if we can find the qmake.conf file, let's inspect it for possible names of moc and uic + IF(EXISTS "${QT_MKSPECS_DIR}/${QMAKESPEC}/qmake.conf") + FILE(READ "${QT_MKSPECS_DIR}/${QMAKESPEC}/qmake.conf" QMAKE_CONF_FILE) + STRING(REGEX MATCH "(QMAKE_MOC)[ \t]*=[^\n]*" QMAKE_MOC_NAME "${QMAKE_CONF_FILE}") + STRING(REGEX REPLACE "(QMAKE_MOC)[ \t=\$]*\\[(QT_INSTALL_BINS)\\][\\/]" "" QMAKE_MOC_NAME "${QMAKE_MOC_NAME}") + STRING(REGEX MATCH "(QMAKE_UIC)[ \t]*=[^\n]*" QMAKE_UIC_NAME "${QMAKE_CONF_FILE}") + STRING(REGEX REPLACE "(QMAKE_UIC)[ \t=\$]*\\[(QT_INSTALL_BINS)\\][\\/]" "" QMAKE_UIC_NAME "${QMAKE_UIC_NAME}") + ENDIF(EXISTS "${QT_MKSPECS_DIR}/${QMAKESPEC}/qmake.conf") - # if qmake wasn't found in the specific dirs, now check the system path - IF (NOT QT_MOC_EXECUTABLE) - FIND_PROGRAM(QT_MOC_EXECUTABLE NAMES moc-qt4 moc ) - ENDIF (NOT QT_MOC_EXECUTABLE) - IF (QT_MOC_EXECUTABLE) - set(QT_WRAP_CPP "YES") - ENDIF (QT_MOC_EXECUTABLE) + FIND_PROGRAM(QT_MOC_EXECUTABLE + NAMES ${QMAKE_MOC_NAME} + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 - PATHS - ${QT_BINARY_DIR} - $ENV{QTDIR}/bin + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH ) - # first the specific paths, then the system path, same as with qmake FIND_PROGRAM(QT_UIC_EXECUTABLE - NAMES uic-qt4 uic - PATHS - ${QT_BINARY_DIR} - $ENV{QTDIR}/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH + NAMES ${QMAKE_UIC_NAME} + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_RCC_EXECUTABLE + NAMES rcc + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH ) - IF (NOT QT_UIC_EXECUTABLE) - FIND_PROGRAM(QT_UIC_EXECUTABLE NAMES uic-qt4 uic ) - ENDIF (NOT QT_UIC_EXECUTABLE) + IF (QT_MOC_EXECUTABLE) + SET(QT_WRAP_CPP "YES") + ENDIF (QT_MOC_EXECUTABLE) IF (QT_UIC_EXECUTABLE) - set(QT_WRAP_UI "YES") + SET(QT_WRAP_UI "YES") ENDIF (QT_UIC_EXECUTABLE) - FIND_PROGRAM(QT_RCC_EXECUTABLE - NAMES rcc - PATHS - ${QT_BINARY_DIR} - $ENV{QTDIR}/bin - ) + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE ) @@ -569,6 +631,7 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH(_current ${_inc_DIRS}) ENDMACRO(QT4_GET_MOC_INC_DIRS) + MACRO (QT4_GENERATE_MOC infile outfile ) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) @@ -621,6 +684,7 @@ IF (QT4_QMAKE_FOUND) ENDMACRO (QT4_WRAP_UI) + # QT4_ADD_RESOURCE(outfiles inputfile ... ) # TODO perhaps consider adding support for compression and root options to rcc @@ -650,6 +714,7 @@ IF (QT4_QMAKE_FOUND) SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}") ENDMACRO(_QT4_ADD_FILE_DEPENDENCIES) + MACRO(QT4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) @@ -701,6 +766,7 @@ IF (QT4_QMAKE_FOUND) # decide if Qt got found # ###################################### + # if the includes,libraries,moc,uic and rcc are found then we have it IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "YES" ) @@ -725,6 +791,14 @@ IF (QT4_QMAKE_FOUND) CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + + IF (QT_QTCOPY_REQUIRED) + CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) + IF (NOT QT_IS_QTCOPY) + MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") + ENDIF (NOT QT_IS_QTCOPY) + ENDIF (QT_QTCOPY_REQUIRED) + # Restore CMAKE_REQUIRED_INCLUDES variable SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE}) @@ -755,7 +829,9 @@ IF (QT4_QMAKE_FOUND) SET( QT_QT_LIBRARY "") SET( QT_QTMAIN_LIBRARY "") + ELSE(QT4_QMAKE_FOUND) + IF(QT_QMAKE_EXECUTABLE) MESSAGE("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") ENDIF(QT_QMAKE_EXECUTABLE) -- cgit v1.2.1 From f62fa7129e2c19a99602b4a527529355acaf1069 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 31 Mar 2006 09:50:21 +0000 Subject: Complain about specific files in a non-clean srcdir; don't insert /usr/local/include too early; move X11 includes into DCOP_INCLUDES in a clean fashion (I hope). svn path=/trunk/KDE/kdelibs/; revision=524801 --- modules/FindKDE4Internal.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ce4dc08e..ef3ca780 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -471,7 +471,7 @@ endif (WIN32) # also use /usr/local by default under UNIX, including Mac OS X if (UNIX) link_directories(/usr/local/lib) - include_directories(/usr/local/include) + set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) # the rest is RPATH handling set(RPATH_STYLE_MATCHED FALSE) @@ -534,7 +534,8 @@ endif (UNIX) # UNIX, except OS X if (UNIX AND NOT APPLE) find_package(X11 REQUIRED) - set(_KDE4_PLATFORM_INCLUDE_DIRS ${X11_INCLUDE_DIR} ) + # UNIX has already set _KDE4_PLATFORM_INCLUDE_DIRS, so append + set(_KDE4_PLATFORM_INCLUDE_DIRS ${_KDE4_PLATFORM_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) endif (UNIX AND NOT APPLE) -- cgit v1.2.1 From 66b366b5cae0ba743fb242c54eb994821e5b8255 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 31 Mar 2006 10:05:30 +0000 Subject: EXISTS() seems to eat the NOT _skip part, at least with cmake 2.3-20060317; reversing the terms works better. svn path=/trunk/KDE/kdelibs/; revision=524807 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d8dd53e1..c07498e9 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -731,7 +731,7 @@ IF (QT4_QMAKE_FOUND) # different rules for the same moc file GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - IF (EXISTS ${_abs_FILE} AND NOT _skip) + IF ( NOT _skip AND EXISTS ${_abs_FILE} ) FILE(READ ${_abs_FILE} _contents) @@ -755,7 +755,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) ENDIF(_match) - ENDIF (EXISTS ${_abs_FILE} AND NOT _skip) + ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) ENDFOREACH (_current_FILE) ENDMACRO(QT4_AUTOMOC) -- cgit v1.2.1 From 829588a28fa7abfe8f48de145621d53b1cf79953 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 31 Mar 2006 15:42:49 +0000 Subject: -revert to not grepping the qmake spec file, since this is unreliable and breaks the build on several systems Alex svn path=/trunk/KDE/kdelibs/; revision=525015 --- modules/FindQt4.cmake | 33 +++++---------------------------- 1 file changed, 5 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index c07498e9..2d585c25 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -556,44 +556,21 @@ IF (QT4_QMAKE_FOUND) # ####################################### -# try to find the qmake.conf file - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QMAKE_MKSPECS" OUTPUT_VARIABLE QT_MKSPECS_DIR ) - # get location of preferred qmake.conf file if QMAKESPEC is set - SET(QMAKESPEC "$ENV{QMAKESPEC}") - IF(NOT QMAKESPEC) - IF(NOT WIN32) - # Unix platforms have 'default' softlink going to the default qmake.conf file - SET(QMAKESPEC "default") - ELSE(NOT WIN32) - # Randomly get this qmkspec since we are only checking for uic/moc names - SET(QMAKESPEC "win32-msvc.net") - ENDIF(NOT WIN32) - ENDIF(NOT QMAKESPEC) - - # if we can find the qmake.conf file, let's inspect it for possible names of moc and uic - IF(EXISTS "${QT_MKSPECS_DIR}/${QMAKESPEC}/qmake.conf") - FILE(READ "${QT_MKSPECS_DIR}/${QMAKESPEC}/qmake.conf" QMAKE_CONF_FILE) - STRING(REGEX MATCH "(QMAKE_MOC)[ \t]*=[^\n]*" QMAKE_MOC_NAME "${QMAKE_CONF_FILE}") - STRING(REGEX REPLACE "(QMAKE_MOC)[ \t=\$]*\\[(QT_INSTALL_BINS)\\][\\/]" "" QMAKE_MOC_NAME "${QMAKE_MOC_NAME}") - STRING(REGEX MATCH "(QMAKE_UIC)[ \t]*=[^\n]*" QMAKE_UIC_NAME "${QMAKE_CONF_FILE}") - STRING(REGEX REPLACE "(QMAKE_UIC)[ \t=\$]*\\[(QT_INSTALL_BINS)\\][\\/]" "" QMAKE_UIC_NAME "${QMAKE_UIC_NAME}") - ENDIF(EXISTS "${QT_MKSPECS_DIR}/${QMAKESPEC}/qmake.conf") - FIND_PROGRAM(QT_MOC_EXECUTABLE - NAMES ${QMAKE_MOC_NAME} + NAMES moc moc-qt4 PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) - FIND_PROGRAM(QT_UIC3_EXECUTABLE - NAMES uic3 + FIND_PROGRAM(QT_UIC_EXECUTABLE + NAMES uic uic-qt4 PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) - FIND_PROGRAM(QT_UIC_EXECUTABLE - NAMES ${QMAKE_UIC_NAME} + FIND_PROGRAM(QT_UIC3_EXECUTABLE + NAMES uic3 PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) -- cgit v1.2.1 From 7125c6eb7164a8ab94f829094ff92c948722415e Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 1 Apr 2006 12:11:08 +0000 Subject: add QT_MKSPECS_DIR svn path=/trunk/KDE/kdelibs/; revision=525241 --- modules/FindQt4.cmake | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2d585c25..d137c1d8 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -136,6 +136,7 @@ # QT_RCC_EXECUTABLE Where to find the rcc tool # # QT_DOC_DIR Path to "doc" of Qt4 +# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 # # # These are around for backwards compatibility @@ -263,6 +264,14 @@ IF (QT4_QMAKE_FOUND) SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") ENDIF (NOT QT_DOC_DIR) + # ask qmake for the mkspecs directory + IF (NOT QT_MKSPECS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QMAKE_MKSPECS" + OUTPUT_VARIABLE qt_mkspecs_dir ) + SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") + ENDIF (NOT QT_MKSPECS_DIR) + ######################################## # # Setting the INCLUDE-Variables @@ -401,7 +410,7 @@ IF (QT4_QMAKE_FOUND) MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR) # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ) + SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) ######################################## -- cgit v1.2.1 From bd1ee12c6454751db3a3d0229cf8632c4e5f1de8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 3 Apr 2006 20:08:01 +0000 Subject: -add a KDE4_KDESU_LIBS variables, so we have a full path and it can't be mixed up with the kdesu target Alex svn path=/trunk/KDE/kdelibs/; revision=526087 --- modules/FindKDE4Internal.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ef3ca780..83e53d9c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -56,6 +56,7 @@ # KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries # KDE4_KSPELL2_LIBS - the kspell2 library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries +# KDE4_KDESU_LIBS - the kdesu library and all depending libraries # # # This module defines a bunch of variables used as locations @@ -210,7 +211,7 @@ option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") # RPATH handling -set(RPATH_STYLE "default" CACHE STRING "Determine RAPTH handling") +set(RPATH_STYLE "default" CACHE STRING "Determine RPATH handling") set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) if (UNIX) @@ -339,6 +340,9 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KSPELL2_LIBRARY NAMES kspell2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KSPELL2_LIBS ${kspell2_LIB_DEPENDS} ${KDE4_KSPELL2_LIBRARY} ) + find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) -- cgit v1.2.1 From 899ef0d8818227a4155f51874d97cf71d91c26b6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 3 Apr 2006 21:07:18 +0000 Subject: -prepare for the different executable types: default, "NOGUI" and "BUILDTOOL" Alex svn path=/trunk/KDE/kdelibs/; revision=526097 --- modules/KDE4Macros.cmake | 50 +++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 41 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c8fe0032..ad36bfd8 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -454,15 +454,47 @@ MACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) ENDMACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) -MACRO (KDE4_ADD_EXECUTABLE _target_NAME ) - - IF (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) - ADD_EXECUTABLE(${_target_NAME} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - ELSE (KDE4_ENABLE_FINAL) - ADD_EXECUTABLE(${_target_NAME} ${ARGN} ) - ENDIF (KDE4_ENABLE_FINAL) - KDE4_HANDLE_RPATH(${_target_NAME}) +MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) + + set(_first_SRC ${_first_ARG} ) + set(_add_executable_param) + set(_type "GUI") + + # determine additional parameters for add_executable() + if (APPLE) +# set(_add_executable_param MACOSX_BUNDLE) + endif (APPLE) + if (WIN32) +# set(_add_executable_param WIN32) + endif (WIN32) + + + if (${_first_ARG} STREQUAL "NOGUI") + set(_type "NOGUI") + set(_first_SRC) + endif (${_first_ARG} STREQUAL "NOGUI") + if (${_first_ARG} STREQUAL "BUILDTOOL") + set(_type "BUILDTOOL") + set(_first_SRC) + endif (${_first_ARG} STREQUAL "BUILDTOOL") + + if (KDE4_ENABLE_FINAL) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) + add_executable(${_target_NAME} ${_add_executable_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + else (KDE4_ENABLE_FINAL) + add_executable(${_target_NAME} ${_add_executable_param} ${_first_SRC} ${ARGN} ) + endif (KDE4_ENABLE_FINAL) + + # and now the RPATH handling... + if (${_type} STREQUAL "GUI") + endif (${_type} STREQUAL "GUI") + if (${_type} STREQUAL "NOGUI") + endif (${_type} STREQUAL "NOGUI") + if (${_type} STREQUAL "BUILDTOOL") +# set_target_properties(${_target_NAME} SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) + endif (${_type} STREQUAL "BUILDTOOL") + + kde4_handle_rpath(${_target_NAME}) ENDMACRO (KDE4_ADD_EXECUTABLE _target_NAME) -- cgit v1.2.1 From 862d6eb43b459f485b8eb3dc25067a9fc53698d7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Apr 2006 18:52:31 +0000 Subject: -tell cmake that kconfig_compiler produces both a header and an implementation files, this should fix parallel builds Alex svn path=/trunk/KDE/kdelibs/; revision=526472 --- modules/KDE4Macros.cmake | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ad36bfd8..0585e9c7 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -103,29 +103,26 @@ ENDMACRO (KDE4_ADD_DCOP_STUBS) MACRO (KDE4_ADD_KCFG_FILES _sources) foreach (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_abs_PATH ${_tmp_FILE} PATH) - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_abs_PATH ${_tmp_FILE} PATH) + get_filename_component(_basename ${_tmp_FILE} NAME_WE) - FILE(READ ${_tmp_FILE} _contents) - STRING(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") + file(READ ${_tmp_FILE} _contents) + string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - # the command for creating the source file from the kcfg file + # the command for creating the source file from the kcfg file ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} DEPENDS ${_tmp_FILE} ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) - # for the case that the header contains signals or slots, it has to be processed by moc - # since the generated header isn't listed as OUTPUT in the ADD_CUSTOM_COMMAND above, we - # have to tell cmake explicitly that it is generated, otherwise it will complain that it doesn't - # exist at cmake time - # the generated source will then include the moc file, but since the source doesn't exist - # yet at cmake time, this can't be recognized by KDE4_AUTOMOC, so we have to set the depedency explicitely - SET_SOURCE_FILES_PROPERTIES(${_header_FILE} PROPERTIES GENERATED TRUE) + # the above command generates both the source and the header files + # this custom command creates the appropriate dependency + ADD_CUSTOM_COMMAND(OUTPUT ${_header_FILE} DEPENDS ${_src_FILE} ) + QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) -- cgit v1.2.1 From d7562bace6216eadb0d1549cde3453ac4c3b796a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Apr 2006 19:08:23 +0000 Subject: -listing the generated header file also in the list of sources can't hurt Alex svn path=/trunk/KDE/kdelibs/; revision=526481 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0585e9c7..915781b1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -126,7 +126,7 @@ MACRO (KDE4_ADD_KCFG_FILES _sources) QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) - set(${_sources} ${${_sources}} ${_src_FILE}) + set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) endforeach (_current_FILE) -- cgit v1.2.1 From 79a8b2a2abd4b2957b3b7ad72368f967d660fd71 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Apr 2006 20:46:27 +0000 Subject: -fix detection of Qt4 qmake Alex svn path=/trunk/KDE/kdelibs/; revision=526524 --- modules/FindQt4.cmake | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d137c1d8..b4622f9f 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -168,47 +168,52 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake-qt4 PATHS ) IF (QT_QMAKE_EXECUTABLE) + + SET(QT4_QMAKE_FOUND FALSE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - # we need at least version 4.0.0 - IF (NOT QT_MIN_VERSION) - SET(QT_MIN_VERSION "4.0.0") - ENDIF (NOT QT_MIN_VERSION) + # check that we found the Qt4 qmake, Qt3 qmake output won't match here + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+$" qt_version_tmp "${QTVERSION}") + IF (qt_version_tmp) - SET(QT4_QMAKE_FOUND TRUE) - IF (QT_MIN_VERSION) + # we need at least version 4.0.0 + IF (NOT QT_MIN_VERSION) + SET(QT_MIN_VERSION "4.0.0") + ENDIF (NOT QT_MIN_VERSION) + #now parse the parts of the user given version string into variables STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+$" req_qt_major_vers "${QT_MIN_VERSION}") IF (NOT req_qt_major_vers) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") ENDIF (NOT req_qt_major_vers) - - + # now parse the parts of the user given version string into variables STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") - + IF (NOT req_qt_major_vers EQUAL 4) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") ENDIF (NOT req_qt_major_vers EQUAL 4) - + # and now the version string given by qmake STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" found_qt_major_vers "${QTVERSION}") STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" found_qt_minor_vers "${QTVERSION}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" found_qt_patch_vers "${QTVERSION}") - + # compute an overall version number which can be compared at once MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") - + IF (found_vers LESS req_vers) - SET(Qt4_QMAKE_FOUND NO) + SET(QT4_QMAKE_FOUND FALSE) ELSE (found_vers LESS req_vers) - SET(Qt4_QMAKE_FOUND YES) + SET(QT4_QMAKE_FOUND TRUE) ENDIF (found_vers LESS req_vers) - ENDIF (QT_MIN_VERSION) + ENDIF (qt_version_tmp) + ENDIF (QT_QMAKE_EXECUTABLE) IF (QT4_QMAKE_FOUND) -- cgit v1.2.1 From e96dd292b29ccd52117ad5b334bdec83c6491ca1 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 4 Apr 2006 21:47:15 +0000 Subject: Fix docu svn path=/trunk/KDE/kdelibs/; revision=526548 --- modules/KDE4Macros.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 915781b1..b2ab8f29 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -19,7 +19,7 @@ #neundorf@kde.org #create the kidl and skeletion file for dcop stuff -#usage: KDE_ADD_COP_SKELS(foo_SRCS ${dcop_headers}) +#usage: KDE4_ADD_DCOP_SKELS(foo_SRCS ${dcop_headers}) MACRO (KDE4_ADD_DCOP_SKELS _sources) foreach (_current_FILE ${ARGN}) @@ -125,6 +125,7 @@ MACRO (KDE4_ADD_KCFG_FILES _sources) QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) + MACRO_ADD_FILE_DEPENDENCIES(${_moc_FILE} ${_header_FILE} ) set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) @@ -136,7 +137,7 @@ ENDMACRO (KDE4_ADD_KCFG_FILES) GET_FILENAME_COMPONENT(KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) #create the implementation files from the ui files and add them to the list of sources -#usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) +#usage: KDE4_ADD_UI_FILES(foo_SRCS ${ui_files}) MACRO (KDE4_ADD_UI_FILES _sources ) foreach (_current_FILE ${ARGN}) @@ -162,7 +163,7 @@ ENDMACRO (KDE4_ADD_UI_FILES) #create the implementation files from the ui files and add them to the list of sources -#usage: KDE_ADD_UI_FILES(foo_SRCS ${ui_files}) +#usage: KDE4_ADD_UI3_FILES(foo_SRCS ${ui_files}) MACRO (KDE4_ADD_UI3_FILES _sources ) QT4_GET_MOC_INC_DIRS(_moc_INCS) -- cgit v1.2.1 From 43f8e522a6b47e3c4415244aa7d4dc343b0f46c2 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 4 Apr 2006 21:52:03 +0000 Subject: Ooops remove line that got committed by mistake; more docu updates. svn path=/trunk/KDE/kdelibs/; revision=526552 --- modules/KDE4Macros.cmake | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b2ab8f29..fd60354e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -2,17 +2,13 @@ # for documentation look at FindKDE4Internal.cmake # # this file contains the following macros: -# KDE4_ADD_FILE_DEPENDANCY # KDE4_ADD_DCOP_SKELS # KDE4_ADD_DCOP_STUBS -# KDE4_ADD_MOC_FILES # KDE4_ADD_UI_FILES # KDE4_ADD_KCFG_FILES # KDE4_AUTOMOC # KDE4_INSTALL_LIBTOOL_FILE -# KDE4_PLACEHOLDER -# KDE4_CREATE_FINAL_FILE -# KDE4_ADD_KPART +# KDE4_CREATE_FINAL_FILES # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_EXECUTABLE @@ -125,7 +121,6 @@ MACRO (KDE4_ADD_KCFG_FILES _sources) QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) - MACRO_ADD_FILE_DEPENDENCIES(${_moc_FILE} ${_header_FILE} ) set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) -- cgit v1.2.1 From 82635764bbf799b2bc99178761bd39d420726746 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 5 Apr 2006 19:55:16 +0000 Subject: -add a KDE4Defaults.cmake to set default values and use this one in kdelibs/CMakeLists.txt Alex svn path=/trunk/KDE/kdelibs/; revision=526864 --- modules/FindKDE4Internal.cmake | 2 -- modules/KDE4Defaults.cmake | 11 +++++++++++ modules/KDE4Macros.cmake | 17 ++++++++++------- 3 files changed, 21 insertions(+), 9 deletions(-) create mode 100644 modules/KDE4Defaults.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 83e53d9c..372e4ee2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -678,5 +678,3 @@ set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DI # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) -# always add CMAKE_CCURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR to the include path to save some typing, Alex -set(CMAKE_INCLUDE_CURRENT_DIR TRUE) diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake new file mode 100644 index 00000000..d019258d --- /dev/null +++ b/modules/KDE4Defaults.cmake @@ -0,0 +1,11 @@ + +# support for Dart: http://public.kitware.com/dashboard.php?name=kde +enable_testing() +include(CTest) + +# Always include srcdir and builddir in include path +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +# Use colors +set(CMAKE_COLOR_MAKEFILE ON) + diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index fd60354e..e9d36fd4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -457,19 +457,20 @@ MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) if (APPLE) # set(_add_executable_param MACOSX_BUNDLE) endif (APPLE) - if (WIN32) +# should this be enabled on windows ? Alex +# if (WIN32) # set(_add_executable_param WIN32) - endif (WIN32) +# endif (WIN32) if (${_first_ARG} STREQUAL "NOGUI") set(_type "NOGUI") set(_first_SRC) endif (${_first_ARG} STREQUAL "NOGUI") - if (${_first_ARG} STREQUAL "BUILDTOOL") - set(_type "BUILDTOOL") + if (${_first_ARG} STREQUAL "TOOL") + set(_type "TOOL") set(_first_SRC) - endif (${_first_ARG} STREQUAL "BUILDTOOL") + endif (${_first_ARG} STREQUAL "TOOL") if (KDE4_ENABLE_FINAL) kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) @@ -481,11 +482,13 @@ MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) # and now the RPATH handling... if (${_type} STREQUAL "GUI") endif (${_type} STREQUAL "GUI") + if (${_type} STREQUAL "NOGUI") endif (${_type} STREQUAL "NOGUI") - if (${_type} STREQUAL "BUILDTOOL") + + if (${_type} STREQUAL "TOOL") # set_target_properties(${_target_NAME} SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) - endif (${_type} STREQUAL "BUILDTOOL") + endif (${_type} STREQUAL "TOOL") kde4_handle_rpath(${_target_NAME}) -- cgit v1.2.1 From f5ff2b2a995c43f2a62b128ab461ce515fa31ee5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 5 Apr 2006 21:23:39 +0000 Subject: -add the NOGUI keyword to the KDE4_ADD_EXECUTABLE_CALLS() right now this only affects OS X: without the NOGUI keyword, now application bundles should be created I will add RPATH handling later. kdelibs/kabc/: add a dependency of addressee.h to addressee.cpp, this works partly (i.e. it works if none of both exists, but doesn't work if addressee.cpp exists and addressee.h doesn't) Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=526894 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/FindKDE4Internal.cmake | 2 +- modules/KDE4Macros.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 372e4ee2..ba1c0394 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -492,7 +492,7 @@ if (UNIX) set(RPATH_STYLE_MATCHED TRUE) set(CMAKE_SKIP_BUILD_RPATH TRUE) set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) + set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) # building something else than kdelibs/ ? # then add the dir where the kde libraries are installed if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e9d36fd4..f05d10d3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -455,7 +455,7 @@ MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) # determine additional parameters for add_executable() if (APPLE) -# set(_add_executable_param MACOSX_BUNDLE) + set(_add_executable_param MACOSX_BUNDLE) endif (APPLE) # should this be enabled on windows ? Alex # if (WIN32) -- cgit v1.2.1 From da6e4bab60f1eb24fc612e98266c85697d4167d4 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 5 Apr 2006 21:41:58 +0000 Subject: Prefix generated header files with ui_ for designer4 ui files. Adjust the includes accordingly (I hope I found all of them, at least kdelibs compiles here - except for kate/tests/arbitraryhighlighttest.cpp) Be careful when using foo.ui, foo.h, foo.cpp now, though because uic puts a very general include guard macro in the generated file: FOO_H Most people (and kde-devel-vim.vim's ,i) will use the same macro for foo.h. This will hopefully be fixable when Trolltech extends uic so that we don't have to postprocess the output anymore. (The -o option of uic creates the include guard from the name of the output file.) svn path=/trunk/KDE/kdelibs/; revision=526900 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f05d10d3..023f552b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -138,7 +138,7 @@ MACRO (KDE4_ADD_UI_FILES _sources ) GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/ui_${_basename}.h) # we need to run uic and replace some things in the generated file # this is done by executing the cmake script kde4uic.cmake -- cgit v1.2.1 From de8d4542e858ae8b9d74e1a6c2a502bd2340517c Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Thu, 6 Apr 2006 17:17:40 +0000 Subject: unset the bundle param if it is non-gui svn path=/trunk/KDE/kdelibs/; revision=527038 --- modules/KDE4Macros.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 023f552b..0422e5e6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -466,10 +466,12 @@ MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) if (${_first_ARG} STREQUAL "NOGUI") set(_type "NOGUI") set(_first_SRC) + set(_add_executable_param) endif (${_first_ARG} STREQUAL "NOGUI") if (${_first_ARG} STREQUAL "TOOL") set(_type "TOOL") set(_first_SRC) + set(_add_executable_param) endif (${_first_ARG} STREQUAL "TOOL") if (KDE4_ENABLE_FINAL) -- cgit v1.2.1 From d285c4fe4c037ecf7b74242c43eb6adf55f6c602 Mon Sep 17 00:00:00 2001 From: Jakub Stachowski Date: Thu, 6 Apr 2006 18:28:44 +0000 Subject: If libdns_sd or includes are not found, build libkdnssd anyway as stub. svn path=/trunk/KDE/kdelibs/; revision=527060 --- modules/FindDNSSD.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index 56b2f7f5..ba7f1f57 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -29,6 +29,8 @@ if (DNSSD_FOUND) message(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") endif (NOT DNSSD_FIND_QUIETLY) else (DNSSD_FOUND) + set(DNSSD_INCLUDE_DIR "") + set(DNSSD_LIBRARIES "") if (DNSSD_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find DNSSD") endif (DNSSD_FIND_REQUIRED) -- cgit v1.2.1 From bec897efa6e8c7327f52e2262e9c8e66699a3422 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 6 Apr 2006 21:15:23 +0000 Subject: -use the TOOL keyword for kconfig_compiler, genembed and makekdewidgets ideally the keywords would be: one of RUN_FROM_BUILDTREE, RUN_UNINSTALLED, NOINST, BUILDTOO, TOOL - has to run from the buildtree without being installed NOGUI - bascially means "no bundle on OS X", so e.g. also for maybe kwin default (no keyword): build a bundle on OS X, compile with RPATH to the install dir Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=527103 --- modules/KDE4Macros.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0422e5e6..c8a544ec 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -483,9 +483,11 @@ MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) # and now the RPATH handling... if (${_type} STREQUAL "GUI") +# set_target_properties(${_target_NAME} SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) endif (${_type} STREQUAL "GUI") if (${_type} STREQUAL "NOGUI") +# set_target_properties(${_target_NAME} SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) endif (${_type} STREQUAL "NOGUI") if (${_type} STREQUAL "TOOL") -- cgit v1.2.1 From fecb3eb2efb021bd6d385eaadd5665e3394ddf13 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 7 Apr 2006 20:45:23 +0000 Subject: -in ADD_CUSTOM_COMMAND: use MAIN_DEPENDENCY, where the depend file is a file which will not be compiled by the C/C++ compiler and use DEPENDS for everything else and where it's unsure whether it's a header or an implementation file this fixes the build in kdelibs/kdewidgets/ partly, now it breaks with "unknown interface" :-/ Alex svn path=/trunk/KDE/kdelibs/; revision=527355 --- modules/FindQt4.cmake | 4 ++-- modules/KDE4Macros.cmake | 25 ++++++++++++++----------- 2 files changed, 16 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b4622f9f..ba692d8e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -632,7 +632,7 @@ IF (QT4_QMAKE_FOUND) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) + DEPENDS ${infile}) ENDMACRO (QT4_GENERATE_MOC) @@ -651,7 +651,7 @@ IF (QT4_QMAKE_FOUND) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${it} - MAIN_DEPENDENCY ${it}) + DEPENDS ${it}) SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH(it) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c8a544ec..606be87b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -14,7 +14,7 @@ #neundorf@kde.org -#create the kidl and skeletion file for dcop stuff +#create the kidl and skeleton file for dcop stuff #usage: KDE4_ADD_DCOP_SKELS(foo_SRCS ${dcop_headers}) MACRO (KDE4_ADD_DCOP_SKELS _sources) foreach (_current_FILE ${ARGN}) @@ -33,7 +33,7 @@ MACRO (KDE4_ADD_DCOP_SKELS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} + MAIN_DEPENDENCY ${_tmp_FILE} ) endif (NOT HAVE_${_basename}_KIDL_RULE) @@ -43,7 +43,8 @@ MACRO (KDE4_ADD_DCOP_SKELS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_skel} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} - DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) + MAIN_DEPENDENCY ${_kidl} + DEPENDS ${_KDE4_DCOPIDL2CPP_DEP} ) MACRO_ADDITIONAL_CLEAN_FILES(${_skel_H}) @@ -73,7 +74,7 @@ MACRO (KDE4_ADD_DCOP_STUBS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} - DEPENDS ${_tmp_FILE} + MAIN_DEPENDENCY ${_tmp_FILE} ) endif (NOT HAVE_${_basename}_KIDL_RULE) @@ -83,7 +84,8 @@ MACRO (KDE4_ADD_DCOP_STUBS _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} - DEPENDS ${_kidl} ${_KDE4_DCOPIDL2CPP_DEP} ) + MAIN_DEPENDENCY ${_kidl} + DEPENDS ${_KDE4_DCOPIDL2CPP_DEP} ) MACRO_ADDITIONAL_CLEAN_FILES(${_stub_H}) @@ -113,7 +115,8 @@ MACRO (KDE4_ADD_KCFG_FILES _sources) ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} - DEPENDS ${_tmp_FILE} ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) + MAIN_DEPENDENCY ${_tmp_FILE} + DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) # the above command generates both the source and the header files # this custom command creates the appropriate dependency @@ -151,7 +154,7 @@ MACRO (KDE4_ADD_UI_FILES _sources ) -DKDE_UIC_H_FILE:FILEPATH=${_header} -DKDE_UIC_BASENAME:STRING=${_basename} -P ${KDE4_MODULE_DIR}/kde4uic.cmake - DEPENDS ${_tmp_FILE} + MAIN_DEPENDENCY ${_tmp_FILE} ) endforeach (_current_FILE) ENDMACRO (KDE4_ADD_UI_FILES) @@ -180,7 +183,7 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) -DKDE_UIC_BASENAME:STRING=${_basename} -DKDE_UIC_PLUGIN_DIR:FILEPATH="." -P ${KDE4_MODULE_DIR}/kde4uic.cmake - DEPENDS ${_tmp_FILE} + MAIN_DEPENDENCY ${_tmp_FILE} ) # we need to run uic3 and replace some things in the generated file @@ -196,13 +199,13 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) -DKDE_UIC_BASENAME:STRING=${_basename} -DKDE_UIC_PLUGIN_DIR:FILEPATH="." -P ${KDE4_MODULE_DIR}/kde4uic.cmake - DEPENDS ${_header} + MAIN_DEPENDENCY ${_header} ) ADD_CUSTOM_COMMAND(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} - DEPENDS ${_header} + MAIN_DEPENDENCY ${_header} ) set(${_sources} ${${_sources}} ${_src} ${_moc} ) @@ -245,7 +248,7 @@ MACRO (KDE4_AUTOMOC) add_custom_command(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} - DEPENDS ${_header} + MAIN_DEPENDENCY ${_header} ) macro_add_file_dependencies(${_abs_FILE} ${_moc}) -- cgit v1.2.1 From deae55ead451379ee6da03832987a840de8900d4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 7 Apr 2006 23:24:44 +0000 Subject: -fix link error in kdewidgets -fix error in kate (the ui_ prefix was missing) -change RPATH handling once again: -renamed "TOOL" to "RUN_UNINSTALLED" RPATH_STYLE is gone if CMAKE_SKIP_RPATH is enabled, no RPATH will be used if it is enabled, all except the RUN_UNINSTALLED apps will be built with RPATH to the install dir, apps with RUN_UNINSTALLED set will be built with RPATH to the build dir, and relinked during make install Alex svn path=/trunk/KDE/kdelibs/; revision=527381 --- modules/FindKDE4Internal.cmake | 104 ++++++----------------------------------- modules/KDE4Macros.cmake | 57 +++++++++++----------- 2 files changed, 44 insertions(+), 117 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ba1c0394..4a18ffe0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -210,37 +210,6 @@ option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") -# RPATH handling -set(RPATH_STYLE "default" CACHE STRING "Determine RPATH handling") -set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) -if (UNIX) - - if ("${RPATH_STYLE}" MATCHES "none") - set(RPATH_STYLE_MATCHED TRUE) - set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) - endif ("${RPATH_STYLE}" MATCHES "none") - - if (NOT APPLE) - if ("${RPATH_STYLE}" MATCHES "install") - set(RPATH_STYLE_MATCHED TRUE) - set(KDE4_NEED_WRAPPER_SCRIPTS TRUE) - endif ("${RPATH_STYLE}" MATCHES "install") - - if ("${RPATH_STYLE}" MATCHES "both") - set(RPATH_STYLE_MATCHED TRUE) - endif ("${RPATH_STYLE}" MATCHES "both") - - endif (NOT APPLE) - - if(NOT RPATH_STYLE_MATCHED) - set(RPATH_STYLE_MATCHED TRUE) - endif(NOT RPATH_STYLE_MATCHED) -endif (UNIX) - -# set it to false again until the next kde release of cmake is required -# set(KDE4_NEED_WRAPPER_SCRIPTS FALSE) - - #now try to find some kde stuff #are we trying to compile kdelibs ? @@ -269,26 +238,21 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) endif ("${CMAKE_GENERATOR}" MATCHES "MSYS") set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) else (WIN32) set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) -# set(KDE4_LD_LIBRARY_PATH LD_LIBRARY_PATH=${LIBRARY_OUTPUT_PATH}\$\${LD_LIBRARY_PATH+:\$\$LD_LIBRARY_PATH} ) + set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) - # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - if (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) - else (KDE4_NEED_WRAPPER_SCRIPTS) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) - endif (KDE4_NEED_WRAPPER_SCRIPTS) - # when building kdelibs, make the dcop and kcfg rules depend on the binaries... set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) @@ -478,60 +442,20 @@ if (UNIX) set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) # the rest is RPATH handling - set(RPATH_STYLE_MATCHED FALSE) - - if ("${RPATH_STYLE}" MATCHES "none") - # no relinking, needs LD_LIBRARY_PATH - set(RPATH_STYLE_MATCHED TRUE) - set(CMAKE_SKIP_RPATH TRUE) - endif ("${RPATH_STYLE}" MATCHES "none") - - if (NOT APPLE) - if ("${RPATH_STYLE}" MATCHES "install") - # no relinking, needs LD_LIBRARY_PATH from the builddir - set(RPATH_STYLE_MATCHED TRUE) - set(CMAKE_SKIP_BUILD_RPATH TRUE) - set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) - # building something else than kdelibs/ ? - # then add the dir where the kde libraries are installed - if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) - endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - - endif ("${RPATH_STYLE}" MATCHES "install") - - if ("${RPATH_STYLE}" MATCHES "both") - # no relinking, prefers the lib in the builddir over the installed one - set(RPATH_STYLE_MATCHED TRUE) - set(CMAKE_SKIP_BUILD_RPATH TRUE) - set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) - set(CMAKE_INSTALL_RPATH ${LIBRARY_OUTPUT_PATH} ${CMAKE_INSTALL_PREFIX}/lib ) - - set(CMAKE_INSTALL_RPATH ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR} ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) - # building something else than kdelibs/ ? - # then add the dir where the kde libraries are installed - if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) - endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - - endif ("${RPATH_STYLE}" MATCHES "both") - - endif (NOT APPLE) - - if(NOT RPATH_STYLE_MATCHED) - # rpath to the builddir, relinking to the install dir + if (APPLE) + set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}) + else (APPLE) set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) # building something else than kdelibs/ ? # then add the dir where the kde libraries are installed if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} ${KDE4_LIB_DIR} ) + set(CMAKE_INSTALL_RPATH ${KDE4_LIB_DIR} ${CMAKE_INSTALL_RPATH} ) endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}) - endif(NOT RPATH_STYLE_MATCHED) - + set(CMAKE_SKIP_BUILD_RPATH TRUE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) + endif (APPLE) endif (UNIX) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 606be87b..03504cfc 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -366,27 +366,44 @@ MACRO (KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) foreach (_current_FILE ${ARGN}) STRING(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE}) if (_isCFile) - FILE(APPEND ${_filenameC} "#include \"${_current_FILE}\"\n") + file(APPEND ${_filenameC} "#include \"${_current_FILE}\"\n") else (_isCFile) - FILE(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n") + file(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n") endif (_isCFile) endforeach (_current_FILE) ENDMACRO (KDE4_CREATE_FINAL_FILES) -MACRO (KDE4_HANDLE_RPATH _target_NAME) - if (KDE4_NEED_WRAPPER_SCRIPTS) +macro (KDE4_HANDLE_RPATH _target_NAME _type) + if (UNIX) + + # set the RPATH related properties + if (NOT CMAKE_SKIP_RPATH) + if (${_type} STREQUAL "GUI") + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) + endif (${_type} STREQUAL "GUI") + + if (${_type} STREQUAL "NOGUI") + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) + endif (${_type} STREQUAL "NOGUI") + + if (${_type} STREQUAL "RUN_UNINSTALLED") + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) + endif (${_type} STREQUAL "RUN_UNINSTALLED") + endif (NOT CMAKE_SKIP_RPATH) + if (APPLE) set(_library_path_variable "DYLD_LIBRARY_PATH") else (APPLE) set(_library_path_variable "LD_LIBRARY_PATH") endif (APPLE) + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") get_target_property(_executable ${_target_NAME} LOCATION ) configure_file(${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/${_target_NAME}.sh) - endif (KDE4_NEED_WRAPPER_SCRIPTS) -ENDMACRO (KDE4_HANDLE_RPATH) + endif (UNIX) +endmacro (KDE4_HANDLE_RPATH) MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) @@ -443,14 +460,13 @@ MACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - KDE4_HANDLE_RPATH(${_target_NAME}) + KDE4_HANDLE_RPATH(${_target_NAME} GUI) TARGET_LINK_LIBRARIES(${_target_NAME} kdeinit_${_target_NAME}) # endif (WIN32) ENDMACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) - -MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) +macro (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) set(_first_SRC ${_first_ARG} ) set(_add_executable_param) @@ -471,11 +487,11 @@ MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) set(_first_SRC) set(_add_executable_param) endif (${_first_ARG} STREQUAL "NOGUI") - if (${_first_ARG} STREQUAL "TOOL") - set(_type "TOOL") + if (${_first_ARG} STREQUAL "RUN_UNINSTALLED") + set(_type "RUN_UNINSTALLED") set(_first_SRC) set(_add_executable_param) - endif (${_first_ARG} STREQUAL "TOOL") + endif (${_first_ARG} STREQUAL "RUN_UNINSTALLED") if (KDE4_ENABLE_FINAL) kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) @@ -484,22 +500,9 @@ MACRO (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) add_executable(${_target_NAME} ${_add_executable_param} ${_first_SRC} ${ARGN} ) endif (KDE4_ENABLE_FINAL) - # and now the RPATH handling... - if (${_type} STREQUAL "GUI") -# set_target_properties(${_target_NAME} SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) - endif (${_type} STREQUAL "GUI") - - if (${_type} STREQUAL "NOGUI") -# set_target_properties(${_target_NAME} SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) - endif (${_type} STREQUAL "NOGUI") - - if (${_type} STREQUAL "TOOL") -# set_target_properties(${_target_NAME} SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) - endif (${_type} STREQUAL "TOOL") - - kde4_handle_rpath(${_target_NAME}) + kde4_handle_rpath(${_target_NAME} ${_type}) -ENDMACRO (KDE4_ADD_EXECUTABLE _target_NAME) +endmacro (KDE4_ADD_EXECUTABLE _target_NAME) MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -- cgit v1.2.1 From ebe2508a1246baf8f550f18caff0852b90d47195 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 8 Apr 2006 08:08:29 +0000 Subject: -creating of the sh-wrappers now also works with empty EXECUTABLE_OUTPUT_PATH Alex svn path=/trunk/KDE/kdelibs/; revision=527424 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 03504cfc..2fe4dc33 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -401,7 +401,7 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") get_target_property(_executable ${_target_NAME} LOCATION ) - configure_file(${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/${_target_NAME}.sh) + configure_file(${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ${_executable}.sh) endif (UNIX) endmacro (KDE4_HANDLE_RPATH) -- cgit v1.2.1 From 1e0c87f062f076101762defc239585597bc7cf36 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 8 Apr 2006 12:03:57 +0000 Subject: -add GENERIC_LIB_VERSION and GENERIC_LIB_SOVERSION in KDE4Defaults.cmake, so we can easily adjust the version number of our libs for each release Alex svn path=/trunk/KDE/kdelibs/; revision=527474 --- modules/KDE4Defaults.cmake | 5 +++++ modules/MacroLibrary.cmake | 1 + 2 files changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index d019258d..8f9e30c1 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -9,3 +9,8 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) # Use colors set(CMAKE_COLOR_MAKEFILE ON) +# define the generic version of the libraries here +# this makes it easy to advance it when the next release comes +set(GENERIC_LIB_VERSION "5.0.0") +set(GENERIC_LIB_SOVERSION "5") + diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index fb953d85..8a4e52e4 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -5,4 +5,5 @@ INCLUDE(MacroOptionalFindPackage) INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroGetenvWinPath) +INCLUDE(MacroEnsureOutOfSourceBuild) -- cgit v1.2.1 From b3389e6dba49823c71faa20fb168897422c1df50 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sat, 8 Apr 2006 12:54:55 +0000 Subject: limit gnuwin32 package to windows svn path=/trunk/KDE/kdelibs/; revision=527490 --- modules/FindLibXml2.cmake | 16 ++++++++++------ modules/FindLibXslt.cmake | 19 ++++++++++--------- 2 files changed, 20 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 7bc10d79..a5d8ab17 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -6,13 +6,17 @@ # LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 # -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls - -INCLUDE(UsePkgConfig) - -PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) +IF (WIN32) + FIND_PACKAGE(GNUWIN32) + SET(_LibXml2IncDir ${GNUWIN32_DIR}/include) + SET(_LibXml2LinkDir ${GNUWIN32_DIR}/lib) +ELSE (WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) +ENDIF (WIN32) set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index be9cd16f..aae6310d 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -7,22 +7,24 @@ # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # - -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls -INCLUDE(UsePkgConfig) - -PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) +IF (WIN32) + FIND_PACKAGE(GNUWIN32) + SET(_LibXsltIncDir ${GNUWIN32_DIR}/include) + SET(_LibXsltLinkDir ${GNUWIN32_DIR}/lib) +ELSE (WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) +ENDIF (WIN32) set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) -FIND_PACKAGE(GNUWIN32) FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h ${_LibXsltIncDir} /usr/include /usr/local/include - ${GNUWIN32_DIR}/include ) FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt @@ -30,7 +32,6 @@ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt ${_LibXsltLinkDir} /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) -- cgit v1.2.1 From 39b237f5e525f294a43c1be7aa7aa1127486bc38 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sat, 8 Apr 2006 12:58:00 +0000 Subject: abort configuring if installed used qt version is to old svn path=/trunk/KDE/kdelibs/; revision=527493 --- modules/FindQt4.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index ba692d8e..cedcdb3c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -208,6 +208,7 @@ IF (QT_QMAKE_EXECUTABLE) IF (found_vers LESS req_vers) SET(QT4_QMAKE_FOUND FALSE) + MESSAGE(FATAL_ERROR "The installed QT version (${QTVERSION}) is to old , at least version (${QT_MIN_VERSION}) is required") ELSE (found_vers LESS req_vers) SET(QT4_QMAKE_FOUND TRUE) ENDIF (found_vers LESS req_vers) @@ -826,8 +827,8 @@ ELSE(QT4_QMAKE_FOUND) IF(QT_QMAKE_EXECUTABLE) MESSAGE("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") ENDIF(QT_QMAKE_EXECUTABLE) - IF( Qt4_FIND_REQUIRED) + IF(Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Qt qmake not found!") - ENDIF( Qt4_FIND_REQUIRED) - + ENDIF(Qt4_FIND_REQUIRED) + ENDIF (QT4_QMAKE_FOUND) -- cgit v1.2.1 From 32346f28bf41f261db6ca3b27272b6660b0f3aa8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 8 Apr 2006 15:22:18 +0000 Subject: forgot to add this file :-/ Alex svn path=/trunk/KDE/kdelibs/; revision=527541 --- modules/MacroEnsureOutOfSourceBuild.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 modules/MacroEnsureOutOfSourceBuild.cmake (limited to 'modules') diff --git a/modules/MacroEnsureOutOfSourceBuild.cmake b/modules/MacroEnsureOutOfSourceBuild.cmake new file mode 100644 index 00000000..c2e2c862 --- /dev/null +++ b/modules/MacroEnsureOutOfSourceBuild.cmake @@ -0,0 +1,11 @@ +# - MACRO_ENSURE_OUT_OF_SOURCE_BUILD() +# MACRO_ENSURE_OUT_OF_SOURCE_BUILD() + +MACRO (MACRO_ENSURE_OUT_OF_SOURCE_BUILD _errorMessage) + + STRING(COMPARE EQUAL "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" insource) + IF(insource) + MESSAGE(FATAL_ERROR "${_errorMessage}") + ENDIF(insource) + +ENDMACRO (MACRO_ENSURE_OUT_OF_SOURCE_BUILD) -- cgit v1.2.1 From abdca3e2a38cf7e8fe615823ced9b194478948b7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 8 Apr 2006 18:09:04 +0000 Subject: -try to make it work with paths which contain spaces Alex svn path=/trunk/KDE/kdelibs/; revision=527571 --- modules/kde4_exec_via_sh.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index 8616322e..148f87e7 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -2,5 +2,5 @@ # created by cmake, don't edit, changes will be lost -${_library_path_variable}=${_ld_library_path}:$${_library_path_variable} ${_executable} $@ +${_library_path_variable}="${_ld_library_path}":$${_library_path_variable} ${_executable} $@ -- cgit v1.2.1 From 708473aa3339b90f03c8f774b5067dba64cc92f1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 8 Apr 2006 20:05:12 +0000 Subject: -generate the shell-wrappers for the executables during buildtime instead of cmake time, and remove them when "cleaning" Alex svn path=/trunk/KDE/kdelibs/; revision=527599 --- modules/KDE4Macros.cmake | 13 ++++++++++++- modules/kde4_exec_via_sh.cmake | 11 ++++++++--- 2 files changed, 20 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2fe4dc33..1a6a356f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -401,7 +401,18 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") get_target_property(_executable ${_target_NAME} LOCATION ) - configure_file(${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ${_executable}.sh) + + # use add_custom_target() to have the sh-wrapper generated during build time instead of cmake time + add_custom_target(${_target_NAME}sh_target + COMMAND ${CMAKE_COMMAND} + -D_filename=${_executable}.sh -D_library_path_variable=${_library_path_variable} + -D_ld_library_path="${_ld_library_path}" -D_executable=${_executable} + -P ${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake + ) + + add_dependencies(${_target_NAME} ${_target_NAME}sh_target) + macro_additional_clean_files(${_executable}.sh) + endif (UNIX) endmacro (KDE4_HANDLE_RPATH) diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index 148f87e7..e3eb8328 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -1,6 +1,11 @@ -#!/bin/sh -# created by cmake, don't edit, changes will be lost +file(WRITE "${_filename}" +"#!/bin/sh +# created by cmake, don't edit, changes will be lost -${_library_path_variable}="${_ld_library_path}":$${_library_path_variable} ${_executable} $@ +${_library_path_variable}=\"${_ld_library_path}\":$${_library_path_variable} ${_executable} $@ +") +# make it executable +# since this is only executed on UNIX, it is safe to call chmod +exec_program(chmod ARGS 755 "${_filename}" OUTPUT_VARIABLE _dummy ) -- cgit v1.2.1 From e9e6c0db0f483f2cdbceb69cbb76974189e15cde Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sat, 8 Apr 2006 22:25:22 +0000 Subject: fixed gnuwin32 detection svn path=/trunk/KDE/kdelibs/; revision=527629 --- modules/FindGNUWIN32.cmake | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index ebd27bba..622fd3cf 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -4,19 +4,21 @@ INCLUDE(MacroGetenvWinPath) MACRO_GETENV_WIN_PATH(_progFiles PROGRAMFILES) -FIND_FILE(GNUWIN32_DIR GNUWIN32 +FIND_FILE(GNUWIN32_DIR gnuwin32 ${_progFiles} "C:/" ) -if (GNUWIN32_DIRECTORY) +if (GNUWIN32_DIR) set(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) set(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) set(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) + set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${GNUWIN32_INCLUDE_DIR}) + set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${GNUWIN32_LIBRARY_DIR}) set(GNUWIN32_FOUND TRUE) -else (GNUWIN32_DIRECTORY) +else (GNUWIN32_DIR) set(GNUWIN32_FOUND) -endif (GNUWIN32_DIRECTORY) +endif (GNUWIN32_DIR) if (GNUWIN32_FOUND) if (NOT GNUWIN32_FIND_QUIETLY) -- cgit v1.2.1 From cba8933a83c2e96698b85b980438f30385f8420e Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sat, 8 Apr 2006 22:43:16 +0000 Subject: optimized gnuwin32 detection on windows - find gnuwin32 package location very early - removed GNUWIN32_INCLUDE_DIR/GNUWIN32_LIBRARY_DIR macros, because FindGNUWIN32.cmake sets now CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH - don't use pkgconfig on windows svn path=/trunk/KDE/kdelibs/; revision=527634 --- modules/FindBZip2.cmake | 3 --- modules/FindGIF.cmake | 4 ---- modules/FindJPEG.cmake | 7 +------ modules/FindLibArt.cmake | 23 +++++++---------------- modules/FindLibXml2.cmake | 11 +++-------- modules/FindLibXslt.cmake | 12 +++--------- modules/FindOpenSSL.cmake | 3 --- modules/FindPCRE.cmake | 10 ---------- modules/FindZLIB.cmake | 4 ---- 9 files changed, 14 insertions(+), 63 deletions(-) (limited to 'modules') diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 3bcc1748..a51662b8 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -7,19 +7,16 @@ # BZIP2_DEFINITIONS - Compiler switches required for using BZip2 # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ # -FIND_PACKAGE(GNUWIN32) FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h /usr/include /usr/local/include - ${GNUWIN32_DIR}/include ) FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 PATHS /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index f8b40d48..e3ffdaf1 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -6,20 +6,16 @@ # GIF_LIBRARIES - Libraries needed to use GIF # GIF_DEFINITIONS - Compiler switches required for using GIF # -FIND_PACKAGE(GNUWIN32) - FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/include /usr/local/include - ${GNUWIN32_DIR}/include ) FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib PATHS /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) diff --git a/modules/FindJPEG.cmake b/modules/FindJPEG.cmake index 9113df28..7d624b30 100644 --- a/modules/FindJPEG.cmake +++ b/modules/FindJPEG.cmake @@ -7,20 +7,15 @@ # also defined, but not for general use are # JPEG_LIBRARY, where to find the JPEG library. -# under windows, try to find the base gnuwin32 directory, do nothing under UNIX -FIND_PACKAGE(GNUWIN32) - - FIND_PATH(JPEG_INCLUDE_DIR jpeglib.h /usr/local/include /usr/include -${GNUWIN32_DIR}/include ) SET(JPEG_NAMES ${JPEG_NAMES} jpeg) FIND_LIBRARY(JPEG_LIBRARY NAMES ${JPEG_NAMES} - PATHS /usr/lib /usr/local/lib ${GNUWIN32_DIR}/lib + PATHS /usr/lib /usr/local/lib ) IF (JPEG_LIBRARY) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 05d278b1..c1528bb3 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -4,27 +4,19 @@ # LIBART_FOUND - system has the LibArt # LIBART_INCLUDE_DIR - the LibArt include directory # LIBART_LIBRARIES - The libraries needed to use LibArt -# under Windows this also checks in the GNUWIN32 directory, so make -# sure that the GNUWIN32 directory gets found if you use the GNUWIN32 version of PCRE -# under UNIX pkgconfig among others pkg-config is used to find the directories - -INCLUDE(UsePkgConfig) - -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls -PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags) - -set(LIBART_DEFINITIONS ${_libArtCflags}) - -# under windows, try to find the base gnuwin32 directory, do nothing under UNIX -FIND_PACKAGE(GNUWIN32) +IF (NOT WIN32) + INCLUDE(UsePkgConfig) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags) + set(LIBART_DEFINITIONS ${_libArtCflags}) +ENDIF (NOT WIN32) FIND_PATH(LIBART_INCLUDE_DIR libart_lgpl/libart.h ${_libArtIncDir}/libart-2.0 /usr/include/libart-2.0 /usr/local/include/libart-2.0 - ${GNUWIN32_DIR}/include ) FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 @@ -32,7 +24,6 @@ FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 ${_libArtLinkDir} /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index a5d8ab17..deb09c65 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -7,18 +7,13 @@ # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 # -IF (WIN32) - FIND_PACKAGE(GNUWIN32) - SET(_LibXml2IncDir ${GNUWIN32_DIR}/include) - SET(_LibXml2LinkDir ${GNUWIN32_DIR}/lib) -ELSE (WIN32) +IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) -ENDIF (WIN32) - -set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) + set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) +ENDIF (NOT WIN32) FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h PATHS diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index aae6310d..d33fca26 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -7,19 +7,13 @@ # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # -IF (WIN32) - FIND_PACKAGE(GNUWIN32) - SET(_LibXsltIncDir ${GNUWIN32_DIR}/include) - SET(_LibXsltLinkDir ${GNUWIN32_DIR}/lib) -ELSE (WIN32) +IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) -ENDIF (WIN32) - -set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) - + set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) +ENDIF (NOT WIN32) FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h ${_LibXsltIncDir} diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index ada33cf0..5449f1f6 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -4,19 +4,16 @@ # OPENSSL_FOUND - system has the OpenSSL library # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL -FIND_PACKAGE(GNUWIN32) FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/include/ /usr/local/include/ - ${GNUWIN32_DIR}/include ) FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 PATHS /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index d3a84023..c5301316 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -4,32 +4,22 @@ # PCRE_FOUND - system has the PCRE library # PCRE_INCLUDE_DIR - the PCRE include directory # PCRE_LIBRARIES - The libraries needed to use PCRE -# under Windows this also checks in the GNUWIN32 directory, so make -# sure that the GNUWIN32 directory gets found if you use the GNUWIN32 version of PCRE -# - - -# under windows, try to find the base gnuwin32 directory, do nothing under UNIX -FIND_PACKAGE(GNUWIN32) FIND_PATH(PCRE_INCLUDE_DIR pcre.h /usr/include/ /usr/local/include/ - ${GNUWIN32_DIR}/include ) FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre PATHS /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index 1e01a4da..b3df2bae 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,19 +1,15 @@ -FIND_PACKAGE(GNUWIN32) FIND_PATH(ZLIB_INCLUDE_DIR zlib.h /usr/include /usr/local/include - ${GNUWIN32_DIR}/include ) FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib PATHS /usr/lib /usr/local/lib - ${GNUWIN32_DIR}/lib ) - IF (ZLIB_INCLUDE_DIR) SET(ZLIB_FOUND TRUE) ENDIF (ZLIB_INCLUDE_DIR) -- cgit v1.2.1 From a1d53a7b0e72fc911d69c7225ae62cfc1f5d25bf Mon Sep 17 00:00:00 2001 From: Adrian Page Date: Sat, 8 Apr 2006 23:41:15 +0000 Subject: Add a check for Xinput. svn path=/trunk/KDE/kdelibs/; revision=527638 --- modules/FindX11.cmake | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index da103933..d6198f54 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -45,6 +45,7 @@ if (UNIX) FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) @@ -61,6 +62,7 @@ if (UNIX) FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH}) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -166,6 +168,11 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) endif (X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) + if (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) + set(X11_Xinput_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) + endif (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) + # Deprecated variable for backwards compatibility with CMake 1.4 if (X11_X11_INCLUDE_PATH) if (X11_LIBRARIES) @@ -295,6 +302,8 @@ if (UNIX) X11_Xscreensaver_INCLUDE_PATH X11_Xpm_INCLUDE_PATH X11_Xpm_LIB + X11_Xinput_LIB + X11_Xinput_INCLUDE_PATH ) endif (UNIX) -- cgit v1.2.1 From c19deb1e9c1d2009b1cbf8eb53fa2f09c215506e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 9 Apr 2006 17:21:55 +0000 Subject: -better error handling in FindQt4.cmake -use add_custom_command instead of add_custom_target(), saves one line of code Alex svn path=/trunk/KDE/kdelibs/; revision=527955 --- modules/FindQt4.cmake | 22 +++++++++++++++------- modules/KDE4Macros.cmake | 3 +-- 2 files changed, 16 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index cedcdb3c..b73ed284 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -167,6 +167,9 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake-qt4 PATHS $ENV{QTDIR}/bin ) +SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) + + IF (QT_QMAKE_EXECUTABLE) SET(QT4_QMAKE_FOUND FALSE) @@ -208,7 +211,7 @@ IF (QT_QMAKE_EXECUTABLE) IF (found_vers LESS req_vers) SET(QT4_QMAKE_FOUND FALSE) - MESSAGE(FATAL_ERROR "The installed QT version (${QTVERSION}) is to old , at least version (${QT_MIN_VERSION}) is required") + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) ELSE (found_vers LESS req_vers) SET(QT4_QMAKE_FOUND TRUE) ENDIF (found_vers LESS req_vers) @@ -824,11 +827,16 @@ IF (QT4_QMAKE_FOUND) ELSE(QT4_QMAKE_FOUND) - IF(QT_QMAKE_EXECUTABLE) - MESSAGE("QT_QMAKE_EXECUTABLE set to qmake version: QTVERSION = ${QTVERSION}\nQT_QMAKE_EXECUTABLE = ${QT_QMAKE_EXECUTABLE}, please set to path to qmake from qt4.") - ENDIF(QT_QMAKE_EXECUTABLE) - IF(Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Qt qmake not found!") - ENDIF(Qt4_FIND_REQUIRED) + IF(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ELSE(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE( FATAL_ERROR "Qt qmake not found!") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) + ELSE(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + ENDIF(Qt4_FIND_REQUIRED) ENDIF (QT4_QMAKE_FOUND) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1a6a356f..716d6379 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -403,14 +403,13 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) get_target_property(_executable ${_target_NAME} LOCATION ) # use add_custom_target() to have the sh-wrapper generated during build time instead of cmake time - add_custom_target(${_target_NAME}sh_target + add_custom_command(TARGET ${_target_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -D_filename=${_executable}.sh -D_library_path_variable=${_library_path_variable} -D_ld_library_path="${_ld_library_path}" -D_executable=${_executable} -P ${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ) - add_dependencies(${_target_NAME} ${_target_NAME}sh_target) macro_additional_clean_files(${_executable}.sh) endif (UNIX) -- cgit v1.2.1 From 37e97e7ae605fdff2aa7b1beda154ba0ae015555 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 10 Apr 2006 08:54:08 +0000 Subject: Reported to fix compilation with msvc. svn path=/trunk/KDE/kdelibs/; revision=528134 --- modules/FindGettext.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 26bab048..a117ebf7 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -10,7 +10,8 @@ # functionality can also reside in standalone Gettext library, or the one # embedded within kdelibs (cf. gettext.m4 from Gettext source). -INCLUDE(CheckIncludeFiles) +include(CheckIncludeFiles) +include(CheckLibraryExists) include(CheckFunctionExists) check_include_files(libintl.h HAVE_LIBINTL_H) -- cgit v1.2.1 From ecb102a1f8944fecd1555fb4f98a04f4c1f7ff1b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 10 Apr 2006 21:42:33 +0000 Subject: -handling paths containing spaces seems to be a major problem, at least here on FreeBSD without the double qoutes LD_LIBRARY_PATH works at least, and the added double qoutes help in finding the executable, but now dcopidl2cpp complains about the space in the path to the kidl file, and no qoutes and no backslashes help :-/ Alex P.S. if this breaks the build on other systems, feel free to revert CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=528380 --- modules/kde4_exec_via_sh.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index e3eb8328..14d2eca7 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -3,9 +3,9 @@ file(WRITE "${_filename}" "#!/bin/sh # created by cmake, don't edit, changes will be lost -${_library_path_variable}=\"${_ld_library_path}\":$${_library_path_variable} ${_executable} $@ +${_library_path_variable}=${_ld_library_path}:$${_library_path_variable} \"${_executable}\" $@ ") # make it executable # since this is only executed on UNIX, it is safe to call chmod -exec_program(chmod ARGS 755 "${_filename}" OUTPUT_VARIABLE _dummy ) +exec_program(chmod ARGS 755 \"${_filename}\" OUTPUT_VARIABLE _dummy ) -- cgit v1.2.1 From e501bce2a9bed00d3730739c1ba558f302169065 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 11 Apr 2006 21:07:25 +0000 Subject: cups >= 1.1.19 is required by kdeprint. Should that check be added here, or in kdeprint? svn path=/trunk/KDE/kdelibs/; revision=528855 --- modules/FindCups.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index cf2c46be..0be87208 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -20,7 +20,8 @@ FIND_LIBRARY(CUPS_LIBRARIES NAMES cups ) if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - set(CUPS_FOUND TRUE) + # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) + check_library_exists(cups ippDeleteAttribute "" CUPS_FOUND) endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) if (CUPS_FOUND) -- cgit v1.2.1 From e13a70a79582b8dbe37f979ee4516558877ece48 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 11 Apr 2006 23:48:23 +0000 Subject: the usual security fixes: - add proper quoting - add proper LD_LIBRARY_PATH export's - don't make world executable. Ok, it would be better to honor umask, but I don't know how to do that.. svn path=/trunk/KDE/kdelibs/; revision=528894 --- modules/kde4_exec_via_sh.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index 14d2eca7..c8060b9a 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -3,9 +3,9 @@ file(WRITE "${_filename}" "#!/bin/sh # created by cmake, don't edit, changes will be lost -${_library_path_variable}=${_ld_library_path}:$${_library_path_variable} \"${_executable}\" $@ +${_library_path_variable}=${_ld_library_path}\${${_library_path_variable}+:${_library_path_variable}} \"${_executable}\" \"$@\" ") # make it executable # since this is only executed on UNIX, it is safe to call chmod -exec_program(chmod ARGS 755 \"${_filename}\" OUTPUT_VARIABLE _dummy ) +exec_program(chmod ARGS ug+x \"${_filename}\" OUTPUT_VARIABLE _dummy ) -- cgit v1.2.1 From 4959e3f61366c6b027fe4a0f6e4329cbc10d3f9b Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Wed, 12 Apr 2006 08:25:42 +0000 Subject: Make it user friendly: - Qt qmake not found! + The installed Qt version 4.1.0-rc1 is too old, at least version 4.1.1 is required svn path=/trunk/KDE/kdelibs/; revision=528959 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b73ed284..40af6e24 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -177,7 +177,7 @@ IF (QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) # check that we found the Qt4 qmake, Qt3 qmake output won't match here - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+$" qt_version_tmp "${QTVERSION}") + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") IF (qt_version_tmp) # we need at least version 4.0.0 @@ -186,7 +186,7 @@ IF (QT_QMAKE_EXECUTABLE) ENDIF (NOT QT_MIN_VERSION) #now parse the parts of the user given version string into variables - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+$" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") IF (NOT req_qt_major_vers) MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") ENDIF (NOT req_qt_major_vers) -- cgit v1.2.1 From 387a0c0abdf017075b0369d33a482634af492a04 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 12 Apr 2006 10:36:33 +0000 Subject: Actually use the cache so that every call to cmake doesn't call akode-config. The same needs to be done in many other checks... svn path=/trunk/KDE/kdelibs/; revision=528992 --- modules/FindAkode.cmake | 43 +++++++++++++++++++++++++------------------ 1 file changed, 25 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index 47efe871..5c1bab29 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -5,28 +5,35 @@ # AKODE_INCLUDE_DIR - the aKode include directory # AKODE_LIBRARIES - The libraries needed to use aKode -FIND_PROGRAM(AKODECONFIG_EXECUTABLE NAMES akode-config PATHS - /usr/bin - /usr/local/bin -) +IF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) -#reset vars -set(AKODE_LIBRARIES) -set(AKODE_INCLUDE_DIR) + # in cache already + SET(AKODE_FOUND TRUE) -# if akode-config has been found -IF (AKODECONFIG_EXECUTABLE) +ELSE (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) - EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_LIBRARIES) + FIND_PROGRAM(AKODECONFIG_EXECUTABLE NAMES akode-config PATHS + /usr/bin + /usr/local/bin + ) - EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_INCLUDE_DIR) + # if akode-config has been found + IF (AKODECONFIG_EXECUTABLE) - IF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) - SET(AKODE_FOUND TRUE) - STRING(REGEX REPLACE "-I(.+)" "\\1" AKODE_INCLUDE_DIR "${AKODE_INCLUDE_DIR}") - message(STATUS "Found aKode: ${AKODE_LIBRARIES}") - ENDIF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_LIBRARIES) - MARK_AS_ADVANCED(AKODE_INCLUDE_DIR AKODE_LIBRARIES) + EXEC_PROGRAM(${AKODECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE AKODE_INCLUDE_DIR) -ENDIF (AKODECONFIG_EXECUTABLE) + IF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + SET(AKODE_FOUND TRUE) + STRING(REGEX REPLACE "-I(.+)" "\\1" AKODE_INCLUDE_DIR "${AKODE_INCLUDE_DIR}") + message(STATUS "Found aKode: ${AKODE_LIBRARIES}") + ENDIF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + + # ensure that they are cached + set(AKODE_INCLUDE_DIR ${AKODE_INCLUDE_DIR} CACHE INTERNAL "The akode include path") + set(AKODE_LIBRARIES ${AKODE_LIBRARIES} CACHE INTERNAL "The libraries needed to use libraries") + + ENDIF (AKODECONFIG_EXECUTABLE) + +ENDIF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) -- cgit v1.2.1 From 1b770c6a81663a38476c63b959e5671e519df654 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 12 Apr 2006 16:45:04 +0000 Subject: Moved out the 4 values from config.h that depend on the installation prefix, so that changing the prefix doesn't mean recompiling -all- of kdelibs, only a few files. One more step towards modular config-foo.h files. svn path=/trunk/KDE/kdelibs/; revision=529149 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 40af6e24..41ab699a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -450,7 +450,7 @@ IF (QT4_QMAKE_FOUND) # WTF? why don't we have frameworks? :P SET(QT_QTTEST_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") - SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") + SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest_debug" CACHE STRING "The QtTest library.") MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From 32af729d84260c97a8274842cf74f53fd6206577 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 13 Apr 2006 06:48:39 +0000 Subject: Search Xft include lib svn path=/trunk/KDE/kdelibs/; revision=529324 --- modules/FindX11.cmake | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index d6198f54..ce9962cb 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -46,6 +46,7 @@ if (UNIX) FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) @@ -63,7 +64,11 @@ if (UNIX) FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH}) - + FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH}) + if( X11_Xft_INCLUDE_PATH) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) + endif (X11_Xft_INCLUDE_PATH) + if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) endif (X11_X11_INCLUDE_PATH) @@ -84,6 +89,9 @@ if (UNIX) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) endif (X11_Xext_LIB) + if(X11_Xft_LIB) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) + endif(X11_Xft_LIB) if (X11_Xau_LIB) set(X11_Xau_FOUND TRUE) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) @@ -304,6 +312,8 @@ if (UNIX) X11_Xpm_LIB X11_Xinput_LIB X11_Xinput_INCLUDE_PATH + X11_Xft_LIB + X11_Xft_INCLUDE_PATH ) endif (UNIX) -- cgit v1.2.1 From fd304842c000b155260bd22c2723b36fab4ccd20 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 13 Apr 2006 06:54:57 +0000 Subject: Add X11_XFT_FOUND svn path=/trunk/KDE/kdelibs/; revision=529328 --- modules/FindX11.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index ce9962cb..b3ba8af4 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -65,9 +65,6 @@ if (UNIX) FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH}) - if( X11_Xft_INCLUDE_PATH) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) - endif (X11_Xft_INCLUDE_PATH) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -89,9 +86,12 @@ if (UNIX) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) endif (X11_Xext_LIB) - if(X11_Xft_LIB) + if(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + set(X11_XFT_FOUND TRUE) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) - endif(X11_Xft_LIB) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) + endif(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + if (X11_Xau_LIB) set(X11_Xau_FOUND TRUE) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) -- cgit v1.2.1 From 7d381d23c0fd7bc9f444880c8a5fb0c7cff1bc6a Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 13 Apr 2006 16:07:18 +0000 Subject: Fix up include guard since it's missing UI_ currently svn path=/trunk/KDE/kdelibs/; revision=529505 --- modules/kde4uic.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 5c9e4dae..3cdcafcd 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -42,6 +42,9 @@ STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_C STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) #replace image15_data with img15_filename to make enable_final work STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") +#fixup include guard +STRING(REGEX REPLACE "#ifndef " "#ifndef UI_" _uic_CONTENTS "${_uic_CONTENTS}") +STRING(REGEX REPLACE "#define " "#define UI_" _uic_CONTENTS "${_uic_CONTENTS}") FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n${_uic_CONTENTS}\n") -- cgit v1.2.1 From b00b040aa62ce0331b5cf533efcdfaa89c697d94 Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 14 Apr 2006 11:41:25 +0000 Subject: -- Found KDE4 include dir: /Users/dfaure/kde/trunk/KDE/kdelibs -- Found KDE4 library dir: /Users/dfaure/kde/trunk/KDE/build/kdelibs/lib/. is a strange way of saying "I'm setting those vars internally", when building kdelibs. svn path=/trunk/KDE/kdelibs/; revision=529757 --- modules/FindKDE4Internal.cmake | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4a18ffe0..663678f1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -553,18 +553,22 @@ endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DC macro (KDE4_PRINT_RESULTS) - if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") - else(KDE4_INCLUDE_DIR) - message(STATUS "Didn't find KDE4 headers") - endif(KDE4_INCLUDE_DIR) - - if(KDE4_LIB_DIR) - message(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") - else(KDE4_LIB_DIR) - message(STATUS "Didn't find KDE4 core library") - endif(KDE4_LIB_DIR) + # inside kdelibs the include dir and lib dir are internal, not "found" + if(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + if(KDE4_INCLUDE_DIR) + message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") + else(KDE4_INCLUDE_DIR) + message(STATUS "Didn't find KDE4 headers") + endif(KDE4_INCLUDE_DIR) + + if(KDE4_LIB_DIR) + message(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") + else(KDE4_LIB_DIR) + message(STATUS "Didn't find KDE4 core library") + endif(KDE4_LIB_DIR) + endif(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + if(KDE4_DCOPIDL_EXECUTABLE) message(STATUS "Found KDE4 dcopidl preprocessor: ${KDE4_DCOPIDL_EXECUTABLE}") else(KDE4_DCOPIDL_EXECUTABLE) -- cgit v1.2.1 From 968fec0a7b604bb1c463aae6ff7bb9726407af72 Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 14 Apr 2006 11:49:02 +0000 Subject: Actually use the cache whenever possible. Should speed up the re-configuring that happens so often. svn path=/trunk/KDE/kdelibs/; revision=529759 --- modules/FindBZip2.cmake | 65 ++++++++++++++++++++------------- modules/FindGIF.cmake | 61 +++++++++++++++++++------------ modules/FindGettext.cmake | 87 +++++++++++++++++++++++++------------------- modules/FindLibArt.cmake | 92 +++++++++++++++++++++++++++-------------------- modules/FindLibXml2.cmake | 85 +++++++++++++++++++++++++------------------ modules/FindLibXslt.cmake | 76 +++++++++++++++++++++++---------------- modules/FindOpenSSL.cmake | 64 ++++++++++++++++++++------------- modules/FindPCRE.cmake | 64 ++++++++++++++++++++------------- modules/FindTIFF.cmake | 63 +++++++++++++++++++------------- modules/FindZLIB.cmake | 49 +++++++++++++++---------- 10 files changed, 425 insertions(+), 281 deletions(-) (limited to 'modules') diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index a51662b8..d6ade67a 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -6,33 +6,48 @@ # BZIP2_LIBRARIES - Link these to use BZip2 # BZIP2_DEFINITIONS - Compiler switches required for using BZip2 # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ -# -FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h - /usr/include - /usr/local/include -) -FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 - PATHS - /usr/lib - /usr/local/lib -) +IF (CACHED_BZIP2) + + # in cache already + IF ("${CACHED_BZIP2}" STREQUAL "YES") + SET(BZIP2_FOUND TRUE) + ENDIF ("${CACHED_BZIP2}" STREQUAL "YES") -if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - set(BZIP2_FOUND TRUE) - INCLUDE(CheckLibraryExists) - CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) -endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) +ELSE (CACHED_BZIP2) -if (BZIP2_FOUND) - if (NOT BZip2_FIND_QUIETLY) - message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - endif (NOT BZip2_FIND_QUIETLY) -else (BZIP2_FOUND) - if (BZip2_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find BZip2") - endif (BZip2_FIND_REQUIRED) -endif (BZIP2_FOUND) + FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 + PATHS + /usr/lib + /usr/local/lib + ) + + if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + set(BZIP2_FOUND TRUE) + INCLUDE(CheckLibraryExists) + CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) + set(CACHED_BZIP2 "YES") + else (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + set(CACHED_BZIP2 "NO") + endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + + if (BZIP2_FOUND) + if (NOT BZip2_FIND_QUIETLY) + message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") + endif (NOT BZip2_FIND_QUIETLY) + else (BZIP2_FOUND) + if (BZip2_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find BZip2") + endif (BZip2_FIND_REQUIRED) + endif (BZIP2_FOUND) + + set(CACHED_BZIP2 ${CACHED_BZIP2} CACHE INTERNAL "If bzip2 was checked") + MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) -MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) +ENDIF( CACHED_BZIP2 ) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index e3ffdaf1..a4316362 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -7,29 +7,44 @@ # GIF_DEFINITIONS - Compiler switches required for using GIF # -FIND_PATH(GIF_INCLUDE_DIR gif_lib.h - /usr/include - /usr/local/include -) +IF (CACHED_GIF) -FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib - PATHS - /usr/lib - /usr/local/lib -) + # in cache already + IF ("${CACHED_GIF}" STREQUAL "YES") + SET(GIF_FOUND TRUE) + ENDIF ("${CACHED_GIF}" STREQUAL "YES") -if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) - set(GIF_FOUND TRUE) -endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) +ELSE (CACHED_GIF) -if (GIF_FOUND) - if (NOT GIF_FIND_QUIETLY) - message(STATUS "Found GIF: ${GIF_LIBRARIES}") - endif (NOT GIF_FIND_QUIETLY) -else (GIF_FOUND) - if (GIF_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find GIF") - endif (GIF_FIND_REQUIRED) -endif (GIF_FOUND) - -MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) + FIND_PATH(GIF_INCLUDE_DIR gif_lib.h + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib + PATHS + /usr/lib + /usr/local/lib + ) + + if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + set(GIF_FOUND TRUE) + set(CACHED_GIF "YES") + else (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + set(CACHED_GIF "NO") + endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + + if (GIF_FOUND) + if (NOT GIF_FIND_QUIETLY) + message(STATUS "Found GIF: ${GIF_LIBRARIES}") + endif (NOT GIF_FIND_QUIETLY) + else (GIF_FOUND) + if (GIF_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find GIF") + endif (GIF_FIND_REQUIRED) + endif (GIF_FOUND) + + set(CACHED_GIF ${CACHED_GIF} CACHE INTERNAL "If gif was checked") + MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) + +ENDIF (CACHED_GIF) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index a117ebf7..3a3b6902 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -10,43 +10,58 @@ # functionality can also reside in standalone Gettext library, or the one # embedded within kdelibs (cf. gettext.m4 from Gettext source). -include(CheckIncludeFiles) -include(CheckLibraryExists) -include(CheckFunctionExists) +IF (CACHED_GETTEXT) -check_include_files(libintl.h HAVE_LIBINTL_H) + # in cache already + IF ("${CACHED_GETTEXT}" STREQUAL "YES") + SET(GETTEXT_FOUND TRUE) + ENDIF ("${CACHED_GETTEXT}" STREQUAL "YES") -set(GETTEXT_INCLUDE_DIR) -set(GETTEXT_LIBRARIES) +ELSE (CACHED_GETTEXT) -if (HAVE_LIBINTL_H) - check_function_exists(dgettext LIBC_HAS_DGETTEXT) - if (LIBC_HAS_DGETTEXT) - set(GETTEXT_SOURCE "built in libc") - set(GETTEXT_FOUND TRUE) - else (LIBC_HAS_DGETTEXT) - FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl - PATHS - /usr/lib - /usr/local/lib - ) - CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT) - if (LIBINTL_HAS_DGETTEXT) - set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") - set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) - set(GETTEXT_FOUND TRUE) - endif (LIBINTL_HAS_DGETTEXT) - endif (LIBC_HAS_DGETTEXT) -endif (HAVE_LIBINTL_H) + include(CheckIncludeFiles) + include(CheckLibraryExists) + include(CheckFunctionExists) + + check_include_files(libintl.h HAVE_LIBINTL_H) + + set(GETTEXT_INCLUDE_DIR) + set(GETTEXT_LIBRARIES) + + if (HAVE_LIBINTL_H) + check_function_exists(dgettext LIBC_HAS_DGETTEXT) + if (LIBC_HAS_DGETTEXT) + set(GETTEXT_SOURCE "built in libc") + set(GETTEXT_FOUND TRUE) + else (LIBC_HAS_DGETTEXT) + FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl + PATHS + /usr/lib + /usr/local/lib + ) + CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT) + if (LIBINTL_HAS_DGETTEXT) + set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") + set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY} CACHE FILEPATH "path to libintl library, used for gettext") + set(GETTEXT_FOUND TRUE) + endif (LIBINTL_HAS_DGETTEXT) + endif (LIBC_HAS_DGETTEXT) + endif (HAVE_LIBINTL_H) + + if (GETTEXT_FOUND) + set(CACHED_GETTEXT "YES") + if (NOT Gettext_FIND_QUIETLY) + message(STATUS "Found Gettext: ${GETTEXT_SOURCE}") + endif (NOT Gettext_FIND_QUIETLY) + else (GETTEXT_FOUND) + if (Gettext_FIND_REQUIRED) + message(STATUS "Could NOT find Gettext") + else (Gettext_FIND_REQUIRED) + set(CACHED_GETTEXT "NO") + endif (Gettext_FIND_REQUIRED) + endif (GETTEXT_FOUND) + + set(CACHED_GETTEXT ${CACHED_GETTEXT} CACHE INTERNAL "If gettext was checked") + MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) -if (GETTEXT_FOUND) - if (NOT Gettext_FIND_QUIETLY) - message(STATUS "Found Gettext: ${GETTEXT_SOURCE}") - endif (NOT Gettext_FIND_QUIETLY) -else (GETTEXT_FOUND) - if (Gettext_FIND_REQUIRED) - message(STATUS "Could NOT find Gettext") - endif (Gettext_FIND_REQUIRED) -endif (GETTEXT_FOUND) - -MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) +ENDIF( CACHED_GETTEXT ) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index c1528bb3..430facb5 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -5,42 +5,56 @@ # LIBART_INCLUDE_DIR - the LibArt include directory # LIBART_LIBRARIES - The libraries needed to use LibArt -IF (NOT WIN32) - INCLUDE(UsePkgConfig) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags) - set(LIBART_DEFINITIONS ${_libArtCflags}) -ENDIF (NOT WIN32) - -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_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 - PATHS - ${_libArtLinkDir} - /usr/lib - /usr/local/lib -) - - -if (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) - set(LIBART_FOUND TRUE) -endif (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) - - -if (LIBART_FOUND) - if (NOT LibArt_FIND_QUIETLY) - message(STATUS "Found libart: ${LIBART_LIBRARIES}") - endif (NOT LibArt_FIND_QUIETLY) -else (LIBART_FOUND) - if (LibArt_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find libart") - endif (LibArt_FIND_REQUIRED) -endif (LIBART_FOUND) - -MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) - +IF (CACHED_LIBART) + + # in cache already + IF ("${CACHED_LIBART}" STREQUAL "YES") + SET(LIBART_FOUND TRUE) + ENDIF ("${CACHED_LIBART}" STREQUAL "YES") + +ELSE (CACHED_LIBART) + + IF (NOT WIN32) + INCLUDE(UsePkgConfig) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags) + set(LIBART_DEFINITIONS ${_libArtCflags}) + ENDIF (NOT WIN32) + + 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_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 + PATHS + ${_libArtLinkDir} + /usr/lib + /usr/local/lib + ) + + + if (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) + set(LIBART_FOUND TRUE) + set(CACHED_LIBART "YES") + else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) + set(CACHED_LIBART "NO") + endif (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) + + + if (LIBART_FOUND) + if (NOT LibArt_FIND_QUIETLY) + message(STATUS "Found libart: ${LIBART_LIBRARIES}") + endif (NOT LibArt_FIND_QUIETLY) + else (LIBART_FOUND) + if (LibArt_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find libart") + endif (LibArt_FIND_REQUIRED) + endif (LIBART_FOUND) + + set(CACHED_LIBART ${CACHED_LIBART} CACHE INTERNAL "If libart was checked") + MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) + +ENDIF (CACHED_LIBART) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index deb09c65..b7914be1 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -5,39 +5,54 @@ # LIBXML2_INCLUDE_DIR - the LibXml2 include directory # LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 -# -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) - set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) -ENDIF (NOT WIN32) - -FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h - PATHS - ${_LibXml2IncDir} - PATH_SUFFIXES libxml2 -) - -FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 - PATHS - ${_LibXml2LinkDir} -) - -if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - set(LIBXML2_FOUND TRUE) -endif (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - -if (LIBXML2_FOUND) - if (NOT LibXml2_FIND_QUIETLY) - message(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") - endif (NOT LibXml2_FIND_QUIETLY) -else (LIBXML2_FOUND) - if (LibXml2_FIND_REQUIRED) - message(SEND_ERROR "Could NOT find LibXml2") - endif (LibXml2_FIND_REQUIRED) -endif (LIBXML2_FOUND) - -MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) +IF (CACHED_LIBXML2) + + # in cache already + IF ("${CACHED_LIBXML2}" STREQUAL "YES") + SET(LIBXML2_FOUND TRUE) + ENDIF ("${CACHED_LIBXML2}" STREQUAL "YES") + +ELSE (CACHED_LIBXML2) + + IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) + set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) + ENDIF (NOT WIN32) + + FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h + PATHS + ${_LibXml2IncDir} + PATH_SUFFIXES libxml2 + ) + + FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 + PATHS + ${_LibXml2LinkDir} + ) + + if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + set(LIBXML2_FOUND TRUE) + set(CACHED_LIBXML2 "YES") + else (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + set(CACHED_LIBXML2 "NO") + endif (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + + if (LIBXML2_FOUND) + if (NOT LibXml2_FIND_QUIETLY) + message(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") + endif (NOT LibXml2_FIND_QUIETLY) + else (LIBXML2_FOUND) + if (LibXml2_FIND_REQUIRED) + message(SEND_ERROR "Could NOT find LibXml2") + endif (LibXml2_FIND_REQUIRED) + endif (LIBXML2_FOUND) + + MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) + + SET(CACHED_LIBXML2 ${CACHED_LIBXML2} CACHE INTERNAL "If libxml2 was checked") + +ENDIF (CACHED_LIBXML2) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index d33fca26..bf49814d 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -7,40 +7,54 @@ # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) - set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) -ENDIF (NOT WIN32) +IF (CACHED_LIBXSLT) -FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h - ${_LibXsltIncDir} - /usr/include - /usr/local/include -) + # in cache already + IF ("${CACHED_LIBXSLT}" STREQUAL "YES") + SET(LIBXSLT_FOUND TRUE) + ENDIF ("${CACHED_LIBXSLT}" STREQUAL "YES") -FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt - PATHS - ${_LibXsltLinkDir} - /usr/lib - /usr/local/lib -) +ELSE (CACHED_LIBXSLT) -if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - set(LIBXSLT_FOUND TRUE) -endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) + set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) + ENDIF (NOT WIN32) -if (LIBXSLT_FOUND) - if (NOT LibXslt_FIND_QUIETLY) + FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h + ${_LibXsltIncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt + PATHS + ${_LibXsltLinkDir} + /usr/lib + /usr/local/lib + ) + + if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + set(LIBXSLT_FOUND TRUE) + set(CACHED_LIBXSLT "YES") + else (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + set(CACHED_LIBXSLT "NO") + endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + + if (LIBXSLT_FOUND) + if (NOT LibXslt_FIND_QUIETLY) message(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") - endif (NOT LibXslt_FIND_QUIETLY) -else (LIBXSLT_FOUND) - if (LibXslt_FIND_REQUIRED) + endif (NOT LibXslt_FIND_QUIETLY) + else (LIBXSLT_FOUND) + if (LibXslt_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find LibXslt") - endif (LibXslt_FIND_REQUIRED) -endif (LIBXSLT_FOUND) - -MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) - + endif (LibXslt_FIND_REQUIRED) + endif (LIBXSLT_FOUND) + + set(CACHED_LIBXSLT ${CACHED_LIBXSLT} CACHE INTERNAL "If libxslt was checked") + MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) + +ENDIF (CACHED_LIBXSLT) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 5449f1f6..bdc85685 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -5,31 +5,45 @@ # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL -FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h - /usr/include/ - /usr/local/include/ -) +IF (CACHED_OPENSSL) -FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 - PATHS - /usr/lib - /usr/local/lib -) + # in cache already + IF ("${CACHED_OPENSSL}" STREQUAL "YES") + SET(OPENSSL_FOUND TRUE) + ENDIF ("${CACHED_OPENSSL}" STREQUAL "YES") -if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - set(OPENSSL_FOUND TRUE) -endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - - -if (OPENSSL_FOUND) - if (NOT OpenSSL_FIND_QUIETLY) - message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") - endif (NOT OpenSSL_FIND_QUIETLY) -else (OPENSSL_FOUND) - if (OpenSSL_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find OpenSSL") - endif (OpenSSL_FIND_REQUIRED) -endif (OPENSSL_FOUND) - -MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) +ELSE (CACHED_OPENSSL) + FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h + /usr/include/ + /usr/local/include/ + ) + + FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 + PATHS + /usr/lib + /usr/local/lib + ) + + if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + set(OPENSSL_FOUND TRUE) + set(CACHED_OPENSSL "YES") + else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + set(CACHED_OPENSSL "NO") + endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + + + if (OPENSSL_FOUND) + if (NOT OpenSSL_FIND_QUIETLY) + message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") + endif (NOT OpenSSL_FIND_QUIETLY) + else (OPENSSL_FOUND) + if (OpenSSL_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find OpenSSL") + endif (OpenSSL_FIND_REQUIRED) + endif (OPENSSL_FOUND) + + set(CACHED_OPENSSL ${CACHED_OPENSSL} CACHE INTERNAL "If openssl was checked") + MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) + +ENDIF (CACHED_OPENSSL) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index c5301316..2898a7d9 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -5,38 +5,52 @@ # PCRE_INCLUDE_DIR - the PCRE include directory # PCRE_LIBRARIES - The libraries needed to use PCRE -FIND_PATH(PCRE_INCLUDE_DIR pcre.h +IF (CACHED_PCRE) + + # in cache already + IF ("${CACHED_PCRE}" STREQUAL "YES") + SET(PCRE_FOUND TRUE) + ENDIF ("${CACHED_PCRE}" STREQUAL "YES") + +ELSE (CACHED_PCRE) + + FIND_PATH(PCRE_INCLUDE_DIR pcre.h /usr/include/ /usr/local/include/ -) + ) -FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre + FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre PATHS /usr/lib /usr/local/lib -) + ) -FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix + FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS /usr/lib /usr/local/lib -) - -set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") - -if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - set(PCRE_FOUND TRUE) -endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - - -if (PCRE_FOUND) - if (NOT PCRE_FIND_QUIETLY) - message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") - endif (NOT PCRE_FIND_QUIETLY) -else (PCRE_FOUND) - if (PCRE_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find PCRE") - endif (PCRE_FIND_REQUIRED) -endif (PCRE_FOUND) - -MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) + ) + + set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") + + if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + set(PCRE_FOUND TRUE) + set(CACHED_PCRE "YES") + else (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + set(CACHED_PCRE "NO") + endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + + if (PCRE_FOUND) + if (NOT PCRE_FIND_QUIETLY) + message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") + endif (NOT PCRE_FIND_QUIETLY) + else (PCRE_FOUND) + if (PCRE_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find PCRE") + endif (PCRE_FIND_REQUIRED) + endif (PCRE_FOUND) + + set(CACHED_PCRE ${CACHED_PCRE} CACHE INTERNAL "If pcre was checked") + MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) + +ENDIF (CACHED_PCRE) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index d0c13d67..875797fd 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -7,32 +7,47 @@ # also defined, but NOT for general use are # TIFF_LIBRARY, where to find the TIFF library. -FIND_PATH(TIFF_INCLUDE_DIR tiff.h - /usr/local/include - /usr/include -) +IF (CACHED_TIFF) -set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) -FIND_LIBRARY(TIFF_LIBRARY - NAMES ${TIFF_NAMES} - PATHS /usr/lib /usr/local/lib -) + # in cache already + IF ("${CACHED_TIFF}" STREQUAL "YES") + SET(TIFF_FOUND TRUE) + ENDIF ("${CACHED_TIFF}" STREQUAL "YES") +ELSE (CACHED_TIFF) -if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - set(TIFF_FOUND "YES") - set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) -endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + FIND_PATH(TIFF_INCLUDE_DIR tiff.h + /usr/local/include + /usr/include + ) + + set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) + FIND_LIBRARY(TIFF_LIBRARY + NAMES ${TIFF_NAMES} + PATHS /usr/lib /usr/local/lib + ) + + + if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + set(TIFF_FOUND TRUE) + set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) + set(CACHED_TIFF "YES") + else (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + set(CACHED_TIFF "NO") + endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + + + if (TIFF_FOUND) + if (NOT TIFF_FIND_QUIETLY) + message(STATUS "Found TIFF: ${TIFF_LIBRARY}") + endif (NOT TIFF_FIND_QUIETLY) + else (TIFF_FOUND) + if (TIFF_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find TIFF") + endif (TIFF_FIND_REQUIRED) + endif (TIFF_FOUND) + set(CACHED_TIFF ${CACHED_TIFF} CACHE INTERNAL "If tiff was checked") + MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY) -if (TIFF_FOUND) - if (NOT TIFF_FIND_QUIETLY) - message(STATUS "Found TIFF: ${TIFF_LIBRARY}") - endif (NOT TIFF_FIND_QUIETLY) -else (TIFF_FOUND) - if (TIFF_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find TIFF") - endif (TIFF_FIND_REQUIRED) -endif (TIFF_FOUND) - -MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY ) +ENDIF (CACHED_TIFF) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index b3df2bae..0348cdd7 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,28 +1,41 @@ +IF (CACHED_ZLIB) -FIND_PATH(ZLIB_INCLUDE_DIR zlib.h + # in cache already + IF ("${CACHED_ZLIB}" STREQUAL "YES") + SET(ZLIB_FOUND TRUE) + ENDIF ("${CACHED_ZLIB}" STREQUAL "YES") + +ELSE (CACHED_ZLIB) + + FIND_PATH(ZLIB_INCLUDE_DIR zlib.h /usr/include /usr/local/include -) + ) -FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib -PATHS + FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib + PATHS /usr/lib /usr/local/lib -) + ) -IF (ZLIB_INCLUDE_DIR) - SET(ZLIB_FOUND TRUE) -ENDIF (ZLIB_INCLUDE_DIR) + IF (ZLIB_INCLUDE_DIR) + SET(ZLIB_FOUND TRUE) + SET(CACHED_ZLIB "YES") + ELSE (ZLIB_INCLUDE_DIR) + SET(CACHED_ZLIB "NO") + ENDIF (ZLIB_INCLUDE_DIR) + IF (ZLIB_FOUND) + IF (NOT ZLIB_FIND_QUIETLY) + MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}") + ENDIF (NOT ZLIB_FIND_QUIETLY) + ELSE (ZLIB_FOUND) + IF (ZLIB_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find z library") + ENDIF (ZLIB_FIND_REQUIRED) + ENDIF (ZLIB_FOUND) -IF (ZLIB_FOUND) - IF (NOT ZLIB_FIND_QUIETLY) - MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}") - ENDIF (NOT ZLIB_FIND_QUIETLY) -ELSE (ZLIB_FOUND) - IF (ZLIB_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find z library") - ENDIF (ZLIB_FIND_REQUIRED) -ENDIF (ZLIB_FOUND) + SET(CACHED_ZLIB ${CACHED_ZLIB} CACHE INTERNAL "If zlib was checked") + MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) +ENDIF (CACHED_ZLIB) -- cgit v1.2.1 From 5b62e3d0bc6fae79042adf3cf7f6b94612020adc Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Fri, 14 Apr 2006 16:37:11 +0000 Subject: Patch by Frank Osterfeld to find makekdewidgets. svn path=/trunk/KDE/kdelibs/; revision=529864 --- modules/FindKDE4Internal.cmake | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 663678f1..0458bf98 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -19,6 +19,7 @@ # KDE4_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable # KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable # KDE4_MEINPROC_EXECUTABLE - the meinproc executable +# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable # # The following variables point to the location of the KDE libraries, # but shouldn't be used directly: @@ -242,12 +243,14 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.sh ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -391,6 +394,19 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) endif (NOT KDE4_MEINPROC_EXECUTABLE) + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS + ${KDE4_BIN_INSTALL_DIR} + $ENV{KDEDIR}/bin + /opt/kde/bin + /opt/kde4/bin + NO_SYSTEM_PATH + NO_CMAKE_SYSTEM_PATH + ) + + if (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) + endif (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) -- cgit v1.2.1 From 6904aff03eefeb4cef1ba5f64c30e2eae17d22c6 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Sat, 15 Apr 2006 11:03:59 +0000 Subject: Add makekdewidgets macro. svn path=/trunk/KDE/kdelibs/; revision=530095 --- modules/FindKDE4Internal.cmake | 4 ++++ modules/KDE4Macros.cmake | 26 ++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0458bf98..a2f957a3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -110,6 +110,10 @@ # KDE4_ADD_KCFG_FILES (SRCS_VAR file1.kcfgc ... fileN.kcfgc) # Use this to add KDE config compiler files to your application/library. # +# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) +# Use this to add widget description files for the makekdewidgets code generator +# for Qt Designer plugins. +# # KDE4_AUTOMOC(file1 ... fileN) # Call this if you want to have automatic moc file handling. # This means if you include "foo.moc" in the source file foo.cpp diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 716d6379..96c64b9d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -11,6 +11,7 @@ # KDE4_CREATE_FINAL_FILES # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_EXECUTABLE +# KDE4_ADD_WIDGET_FILES #neundorf@kde.org @@ -554,3 +555,28 @@ ENDMACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) MACRO (KDE4_CREATE_DOXYGEN_DOCS) ENDMACRO (KDE4_CREATE_DOXYGEN_DOCS) + +MACRO (KDE4_ADD_WIDGET_FILES _sources) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_input ${_current_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_input} NAME_WE) + SET(_source ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.moc) + + # create source file from the .widgets file + ADD_CUSTOM_COMMAND(OUTPUT ${_source} + COMMAND ${KDE4_MAKEKDEWIDGETS_EXECUTABLE} + ARGS -o ${_source} ${_input} + MAIN_DEPENDENCY ${_input}) + + # create moc file + QT4_GENERATE_MOC(${_source} ${_moc} ) + MACRO_ADD_FILE_DEPENDENCIES(${_source} ${_moc}) + + SET(${_sources} ${${_sources}} ${_source}) + + ENDFOREACH (_current_FILE) + +ENDMACRO (KDE4_ADD_WIDGET_FILES) + -- cgit v1.2.1 From f0436915e149f27532c6aece815e3169794dc72b Mon Sep 17 00:00:00 2001 From: Tanner Lovelace Date: Mon, 17 Apr 2006 20:36:41 +0000 Subject: Move windowsystem check earlier in file and use the result to short circuit checks for Motif on non X11 platforms. svn path=/trunk/KDE/kdelibs/; revision=530857 --- modules/FindQt4.cmake | 62 +++++++++++++++++++++++++++++++-------------------- 1 file changed, 38 insertions(+), 24 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 41ab699a..e7ff49b5 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -152,6 +152,8 @@ # QT_QT_LIBRARY Qt-Library is now split # QT_QTMAIN_LIBRARY Qt-Library is now split +INCLUDE(CheckSymbolExists) + SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) SET( QT_DEFINITIONS "") @@ -311,6 +313,32 @@ IF (QT4_QMAKE_FOUND) ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) + ############################################# + # + # Find out what window system we're using + # + ############################################# + # Save required includes variable + SET(CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) + # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES + SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") + # Check for Window system symbols (note: only one should end up being set) + CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + + IF (QT_QTCOPY_REQUIRED) + CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) + IF (NOT QT_IS_QTCOPY) + MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") + ENDIF (NOT QT_IS_QTCOPY) + ENDIF (QT_QTCOPY_REQUIRED) + + # Restore CMAKE_REQUIRED_INCLUDES variable + SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE}) + # + ############################################# + IF (QT_USE_FRAMEWORKS) SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) ENDIF (QT_USE_FRAMEWORKS) @@ -357,7 +385,9 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTMOTIF_INCLUDE_DIR - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) + IF(Q_WS_X11) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) + ENDIF(Q_WS_X11) # Set QT_QTNETWORK_INCLUDE_DIR FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork @@ -468,8 +498,10 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMOTIF_LIBRARY - FIND_LIBRARY(QT_QTMOTIF_LIBRARY_RELEASE NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + IF(Q_WS_X11) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY_RELEASE NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(Q_WS_X11) # Set QT_QTNETWORK_LIBRARY FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -558,7 +590,9 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QT3SUPPORT) _QT4_ADJUST_LIB_VARS(QTASSISTANT) _QT4_ADJUST_LIB_VARS(QTDESIGNER) - _QT4_ADJUST_LIB_VARS(QTMOTIF) + IF(Q_WS_X11) + _QT4_ADJUST_LIB_VARS(QTMOTIF) + ENDIF(Q_WS_X11) _QT4_ADJUST_LIB_VARS(QTNETWORK) _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) _QT4_ADJUST_LIB_VARS(QTOPENGL) @@ -777,26 +811,6 @@ IF (QT4_QMAKE_FOUND) SET(QT_FOUND ${QT4_FOUND}) - INCLUDE(CheckSymbolExists) - # Save required includes variable - SET(CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) - # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES - SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") - # Check for Window system symbols (note: only one should end up being set) - CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) - CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) - CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) - - IF (QT_QTCOPY_REQUIRED) - CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) - IF (NOT QT_IS_QTCOPY) - MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") - ENDIF (NOT QT_IS_QTCOPY) - ENDIF (QT_QTCOPY_REQUIRED) - - # Restore CMAKE_REQUIRED_INCLUDES variable - SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE}) - ####################################### # # System dependent settings -- cgit v1.2.1 From 2b43aad081d13bdeb2ed8a65f65fbecfb470da0d Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 18 Apr 2006 11:22:38 +0000 Subject: More use of the cache; fixing previous commit to not recheck everytime when something isn't available (e.g. agg for me). svn path=/trunk/KDE/kdelibs/; revision=531000 --- modules/FindAGG.cmake | 88 +++++++++++++++----------- modules/FindBZip2.cmake | 6 +- modules/FindCups.cmake | 63 +++++++++++-------- modules/FindGIF.cmake | 6 +- modules/FindGSSAPI.cmake | 85 +++++++++++++++---------- modules/FindGettext.cmake | 6 +- modules/FindLibArt.cmake | 6 +- modules/FindLibXml2.cmake | 6 +- modules/FindLibXslt.cmake | 6 +- modules/FindOpenEXR.cmake | 156 +++++++++++++++++++++++++--------------------- modules/FindOpenSSL.cmake | 6 +- modules/FindPCRE.cmake | 6 +- modules/FindTIFF.cmake | 6 +- modules/FindZLIB.cmake | 6 +- 14 files changed, 255 insertions(+), 197 deletions(-) (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 2e92ad31..cf336f40 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -7,40 +7,54 @@ # AGG_DEFINITIONS - Compiler switches required for using AGG # - -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls -INCLUDE(UsePkgConfig) - -PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) - -set(AGG_DEFINITIONS ${_AGGCflags}) - -FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h - ${_AGGIncDir} - /usr/include - /usr/local/include -) - -FIND_LIBRARY(AGG_LIBRARIES NAMES agg - PATHS - ${_AGGLinkDir} - /usr/lib - /usr/local/lib -) - -if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) - set(AGG_FOUND TRUE) -endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) - -if (AGG_FOUND) - if (NOT AGG_FIND_QUIETLY) - message(STATUS "Found AGG: ${AGG_LIBRARIES}") - endif (NOT AGG_FIND_QUIETLY) -else (AGG_FOUND) - if (AGG_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find AGG") - endif (AGG_FIND_REQUIRED) -endif (AGG_FOUND) - -MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) +IF (DEFINED CACHED_AGG) + + # in cache already + IF ("${CACHED_AGG}" STREQUAL "YES") + SET(AGG_FOUND TRUE) + ENDIF ("${CACHED_AGG}" STREQUAL "YES") + +ELSE (DEFINED CACHED_AGG) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) + + set(AGG_DEFINITIONS ${_AGGCflags}) + + FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h + ${_AGGIncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(AGG_LIBRARIES NAMES agg + PATHS + ${_AGGLinkDir} + /usr/lib + /usr/local/lib + ) + + if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) + set(AGG_FOUND TRUE) + endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) + + if (AGG_FOUND) + set(CACHED_AGG "YES") + if (NOT AGG_FIND_QUIETLY) + message(STATUS "Found AGG: ${AGG_LIBRARIES}") + endif (NOT AGG_FIND_QUIETLY) + else (AGG_FOUND) + set(CACHED_AGG "NO") + if (AGG_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find AGG") + endif (AGG_FIND_REQUIRED) + endif (AGG_FOUND) + + MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) + + set(CACHED_AGG ${CACHED_AGG} CACHE INTERNAL "If libagg was checked") + +ENDIF (DEFINED CACHED_AGG) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index d6ade67a..0f05e0bf 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -8,14 +8,14 @@ # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ -IF (CACHED_BZIP2) +IF (DEFINED CACHED_BZIP2) # in cache already IF ("${CACHED_BZIP2}" STREQUAL "YES") SET(BZIP2_FOUND TRUE) ENDIF ("${CACHED_BZIP2}" STREQUAL "YES") -ELSE (CACHED_BZIP2) +ELSE (DEFINED CACHED_BZIP2) FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h /usr/include @@ -50,4 +50,4 @@ ELSE (CACHED_BZIP2) set(CACHED_BZIP2 ${CACHED_BZIP2} CACHE INTERNAL "If bzip2 was checked") MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) -ENDIF( CACHED_BZIP2 ) +ENDIF(DEFINED CACHED_BZIP2) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 0be87208..387d82d9 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -7,31 +7,44 @@ # CUPS_DEFINITIONS - Compiler switches required for using Cups # +IF (DEFINED CACHED_CUPS) -FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h - /usr/include - /usr/local/include -) + # in cache already + IF ("${CACHED_CUPS}" STREQUAL "YES") + SET(CUPS_FOUND TRUE) + ENDIF ("${CACHED_CUPS}" STREQUAL "YES") -FIND_LIBRARY(CUPS_LIBRARIES NAMES cups - PATHS - /usr/lib - /usr/local/lib -) +ELSE (DEFINED CACHED_CUPS) -if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) - check_library_exists(cups ippDeleteAttribute "" CUPS_FOUND) -endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - -if (CUPS_FOUND) - if (NOT Cups_FIND_QUIETLY) - message(STATUS "Found Cups: ${CUPS_LIBRARIES}") - endif (NOT Cups_FIND_QUIETLY) -else (CUPS_FOUND) - if (Cups_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Cups") - endif (Cups_FIND_REQUIRED) -endif (CUPS_FOUND) - -MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) + FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(CUPS_LIBRARIES NAMES cups + PATHS + /usr/lib + /usr/local/lib + ) + + if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) + check_library_exists(cups ippDeleteAttribute "" CUPS_FOUND) + endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + + if (CUPS_FOUND) + set (CACHED_CUPS "YES") + if (NOT Cups_FIND_QUIETLY) + message(STATUS "Found Cups: ${CUPS_LIBRARIES}") + endif (NOT Cups_FIND_QUIETLY) + else (CUPS_FOUND) + set (CACHED_CUPS "NO") + if (Cups_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Cups") + endif (Cups_FIND_REQUIRED) + endif (CUPS_FOUND) + + set(CACHED_CUPS ${CACHED_CUPS} CACHE INTERNAL "If cups was checked") + MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) + +ENDIF (DEFINED CACHED_CUPS) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index a4316362..c809b243 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -7,14 +7,14 @@ # GIF_DEFINITIONS - Compiler switches required for using GIF # -IF (CACHED_GIF) +IF (DEFINED CACHED_GIF) # in cache already IF ("${CACHED_GIF}" STREQUAL "YES") SET(GIF_FOUND TRUE) ENDIF ("${CACHED_GIF}" STREQUAL "YES") -ELSE (CACHED_GIF) +ELSE (DEFINED CACHED_GIF) FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/include @@ -47,4 +47,4 @@ ELSE (CACHED_GIF) set(CACHED_GIF ${CACHED_GIF} CACHE INTERNAL "If gif was checked") MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) -ENDIF (CACHED_GIF) +ENDIF (DEFINED CACHED_GIF) diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index f574602e..7ef66a0a 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -2,47 +2,66 @@ # Once done this will define # # GSSAPI_FOUND - system supports GSSAPI -# GSSAPI_INCS - the CSSAPI include directory +# GSSAPI_INCS - the GSSAPI include directory # GSSAPI_LIBS - the libraries needed to use GSSAPI -# GSSAPI_RPATH - the rpath for GSSAPI +# GSSAPI_FLAVOR - the type of API - MIT or HEIMDAL -# TODO: RPATH +IF (DEFINED CACHED_GSSAPI) -FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS - /usr/bin - /usr/local/bin - /opt/local/bin -) - -#reset vars -set(GSSAPI_INCS) -set(GSSAPI_LIBS) -set(GSSAPI_FLAVOR) - -IF(KRB5_CONFIG) + # in cache already + IF ("${CACHED_GSSAPI}" STREQUAL "YES") + SET(GSSAPI_FOUND TRUE) + ENDIF ("${CACHED_GSSAPI}" STREQUAL "YES") - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) +ELSE (DEFINED CACHED_GSSAPI) - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) - STRING(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") + FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS + /usr/bin + /usr/local/bin + /opt/local/bin + ) + + #reset vars + set(GSSAPI_INCS) + set(GSSAPI_LIBS) + set(GSSAPI_FLAVOR) + + IF(KRB5_CONFIG) + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) + STRING(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) + set(GSSAPI_FLAVOR_MIT) + IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + SET(GSSAPI_FLAVOR "MIT") + ELSE(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + SET(GSSAPI_FLAVOR "HEIMDAL") + ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + + IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that + SET(CACHED_GSSAPI "YES") + SET(GSSAPI_FOUND TRUE) + message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) - set(GSSAPI_FLAVOR_MIT) - IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "MIT") - ELSE(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "HEIMDAL") - ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + set(GSSAPI_INCS ${GSSAPI_INCS} CACHE STRING "The GSSAPI include directory" ) + set(GSSAPI_LIBS ${GSSAPI_LIBS} CACHE STRING "The libraries needed to use GSSAPI" ) + set(GSSAPI_FLAVOR ${GSSAPI_FLAVOR} CACHE STRING "The type of gss api, MIT or HEIMDAL") - IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that - SET(GSSAPI_FOUND TRUE) - message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") - ENDIF(GSSAPI_LIBS) + MARK_AS_ADVANCED(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) -#ELSE(KRB5_CONFIG) + ELSE(GSSAPI_LIBS) + SET(CACHED_GSSAPI "NO") + ENDIF(GSSAPI_LIBS) + + ELSE(KRB5_CONFIG) -# TODO... + SET(CACHED_GSSAPI "NO") -ENDIF(KRB5_CONFIG) + ENDIF(KRB5_CONFIG) + + set(CACHED_GSSAPI ${CACHED_GSSAPI} CACHE INTERNAL "If gssapi (krb5) was checked") -MARK_AS_ADVANCED(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) +ENDIF (DEFINED CACHED_GSSAPI) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 3a3b6902..fccd332f 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -10,14 +10,14 @@ # functionality can also reside in standalone Gettext library, or the one # embedded within kdelibs (cf. gettext.m4 from Gettext source). -IF (CACHED_GETTEXT) +IF (DEFINED CACHED_GETTEXT) # in cache already IF ("${CACHED_GETTEXT}" STREQUAL "YES") SET(GETTEXT_FOUND TRUE) ENDIF ("${CACHED_GETTEXT}" STREQUAL "YES") -ELSE (CACHED_GETTEXT) +ELSE (DEFINED CACHED_GETTEXT) include(CheckIncludeFiles) include(CheckLibraryExists) @@ -64,4 +64,4 @@ ELSE (CACHED_GETTEXT) set(CACHED_GETTEXT ${CACHED_GETTEXT} CACHE INTERNAL "If gettext was checked") MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) -ENDIF( CACHED_GETTEXT ) +ENDIF(DEFINED CACHED_GETTEXT) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 430facb5..0ae2c49c 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -5,14 +5,14 @@ # LIBART_INCLUDE_DIR - the LibArt include directory # LIBART_LIBRARIES - The libraries needed to use LibArt -IF (CACHED_LIBART) +IF (DEFINED CACHED_LIBART) # in cache already IF ("${CACHED_LIBART}" STREQUAL "YES") SET(LIBART_FOUND TRUE) ENDIF ("${CACHED_LIBART}" STREQUAL "YES") -ELSE (CACHED_LIBART) +ELSE (DEFINED CACHED_LIBART) IF (NOT WIN32) INCLUDE(UsePkgConfig) @@ -57,4 +57,4 @@ ELSE (CACHED_LIBART) set(CACHED_LIBART ${CACHED_LIBART} CACHE INTERNAL "If libart was checked") MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) -ENDIF (CACHED_LIBART) +ENDIF (DEFINED CACHED_LIBART) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index b7914be1..2e671eea 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -6,14 +6,14 @@ # LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 -IF (CACHED_LIBXML2) +IF (DEFINED CACHED_LIBXML2) # in cache already IF ("${CACHED_LIBXML2}" STREQUAL "YES") SET(LIBXML2_FOUND TRUE) ENDIF ("${CACHED_LIBXML2}" STREQUAL "YES") -ELSE (CACHED_LIBXML2) +ELSE (DEFINED CACHED_LIBXML2) IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -55,4 +55,4 @@ ELSE (CACHED_LIBXML2) SET(CACHED_LIBXML2 ${CACHED_LIBXML2} CACHE INTERNAL "If libxml2 was checked") -ENDIF (CACHED_LIBXML2) +ENDIF (DEFINED CACHED_LIBXML2) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index bf49814d..afac1f2f 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -7,14 +7,14 @@ # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # -IF (CACHED_LIBXSLT) +IF (DEFINED CACHED_LIBXSLT) # in cache already IF ("${CACHED_LIBXSLT}" STREQUAL "YES") SET(LIBXSLT_FOUND TRUE) ENDIF ("${CACHED_LIBXSLT}" STREQUAL "YES") -ELSE (CACHED_LIBXSLT) +ELSE (DEFINED CACHED_LIBXSLT) IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -57,4 +57,4 @@ ELSE (CACHED_LIBXSLT) set(CACHED_LIBXSLT ${CACHED_LIBXSLT} CACHE INTERNAL "If libxslt was checked") MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) -ENDIF (CACHED_LIBXSLT) +ENDIF (DEFINED CACHED_LIBXSLT) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index db0aa3be..a139a430 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -1,74 +1,86 @@ -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls -INCLUDE(UsePkgConfig) - -PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) - -#PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) - -FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h - ${_OpenEXRIncDir} - ${_OpenEXRIncDir}/OpenEXR/ - /usr/include - /usr/local/include -) - -FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - - -FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - -FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - - -FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - -set(OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) - -if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - set(OPENEXR_FOUND TRUE) - set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) -endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - - - -if (OPENEXR_FOUND) - if (NOT OpenEXR_FIND_QUIETLY) - message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") - endif (NOT OpenEXR_FIND_QUIETLY) -else (OPENEXR_FOUND) - if (OpenEXR_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find OPENEXR") - endif (OpenEXR_FIND_REQUIRED) -endif (OPENEXR_FOUND) - -MARK_AS_ADVANCED( - OPENEXR_INCLUDE_DIR - OPENEXR_LIBRARIES - OPENEXR_ILMIMF_LIBRARY - OPENEXR_IMATH_LIBRARY - OPENEXR_IEX_LIBRARY - OPENEXR_HALF_LIBRARY ) - +IF (DEFINED CACHED_OPENEXR) + + # in cache already + IF ("${CACHED_OPENEXR}" STREQUAL "YES") + SET(OPENEXR_FOUND TRUE) + ENDIF ("${CACHED_OPENEXR}" STREQUAL "YES") + +ELSE (DEFINED CACHED_OPENEXR) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) + + FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h + ${_OpenEXRIncDir} + ${_OpenEXRIncDir}/OpenEXR/ + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + + FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + + FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + set(OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) + + if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + set(OPENEXR_FOUND TRUE) + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + + + + if (OPENEXR_FOUND) + set(CACHED_OPENEXR "YES") + if (NOT OpenEXR_FIND_QUIETLY) + message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") + endif (NOT OpenEXR_FIND_QUIETLY) + else (OPENEXR_FOUND) + set(CACHED_OPENEXR "NO") + if (OpenEXR_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find OPENEXR") + endif (OpenEXR_FIND_REQUIRED) + endif (OPENEXR_FOUND) + + MARK_AS_ADVANCED( + OPENEXR_INCLUDE_DIR + OPENEXR_LIBRARIES + OPENEXR_ILMIMF_LIBRARY + OPENEXR_IMATH_LIBRARY + OPENEXR_IEX_LIBRARY + OPENEXR_HALF_LIBRARY ) + + set(CACHED_OPENEXR ${CACHED_OPENEXR} CACHE INTERNAL "If openexr was checked") + +ENDIF (DEFINED CACHED_OPENEXR) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index bdc85685..fde22a84 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -5,14 +5,14 @@ # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL -IF (CACHED_OPENSSL) +IF (DEFINED CACHED_OPENSSL) # in cache already IF ("${CACHED_OPENSSL}" STREQUAL "YES") SET(OPENSSL_FOUND TRUE) ENDIF ("${CACHED_OPENSSL}" STREQUAL "YES") -ELSE (CACHED_OPENSSL) +ELSE (DEFINED CACHED_OPENSSL) FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/include/ @@ -46,4 +46,4 @@ ELSE (CACHED_OPENSSL) set(CACHED_OPENSSL ${CACHED_OPENSSL} CACHE INTERNAL "If openssl was checked") MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) -ENDIF (CACHED_OPENSSL) +ENDIF (DEFINED CACHED_OPENSSL) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 2898a7d9..f7a7e9cc 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -5,14 +5,14 @@ # PCRE_INCLUDE_DIR - the PCRE include directory # PCRE_LIBRARIES - The libraries needed to use PCRE -IF (CACHED_PCRE) +IF (DEFINED CACHED_PCRE) # in cache already IF ("${CACHED_PCRE}" STREQUAL "YES") SET(PCRE_FOUND TRUE) ENDIF ("${CACHED_PCRE}" STREQUAL "YES") -ELSE (CACHED_PCRE) +ELSE (DEFINED CACHED_PCRE) FIND_PATH(PCRE_INCLUDE_DIR pcre.h /usr/include/ @@ -53,4 +53,4 @@ ELSE (CACHED_PCRE) set(CACHED_PCRE ${CACHED_PCRE} CACHE INTERNAL "If pcre was checked") MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) -ENDIF (CACHED_PCRE) +ENDIF (DEFINED CACHED_PCRE) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 875797fd..18e051ba 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -7,14 +7,14 @@ # also defined, but NOT for general use are # TIFF_LIBRARY, where to find the TIFF library. -IF (CACHED_TIFF) +IF (DEFINED CACHED_TIFF) # in cache already IF ("${CACHED_TIFF}" STREQUAL "YES") SET(TIFF_FOUND TRUE) ENDIF ("${CACHED_TIFF}" STREQUAL "YES") -ELSE (CACHED_TIFF) +ELSE (DEFINED CACHED_TIFF) FIND_PATH(TIFF_INCLUDE_DIR tiff.h /usr/local/include @@ -50,4 +50,4 @@ ELSE (CACHED_TIFF) set(CACHED_TIFF ${CACHED_TIFF} CACHE INTERNAL "If tiff was checked") MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY) -ENDIF (CACHED_TIFF) +ENDIF (DEFINED CACHED_TIFF) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index 0348cdd7..ecbca6fc 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,11 +1,11 @@ -IF (CACHED_ZLIB) +IF (DEFINED CACHED_ZLIB) # in cache already IF ("${CACHED_ZLIB}" STREQUAL "YES") SET(ZLIB_FOUND TRUE) ENDIF ("${CACHED_ZLIB}" STREQUAL "YES") -ELSE (CACHED_ZLIB) +ELSE (DEFINED CACHED_ZLIB) FIND_PATH(ZLIB_INCLUDE_DIR zlib.h /usr/include @@ -38,4 +38,4 @@ ELSE (CACHED_ZLIB) SET(CACHED_ZLIB ${CACHED_ZLIB} CACHE INTERNAL "If zlib was checked") MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -ENDIF (CACHED_ZLIB) +ENDIF (DEFINED CACHED_ZLIB) -- cgit v1.2.1 From 322936fe1154a3b632b6b8e2e7bf50c8d9eaf0ed Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 18 Apr 2006 16:17:42 +0000 Subject: -I doesn't belong in _INCS. The other solution would be to use add_definitions instead of include_directories, but then we lose the automatic removal of -I/usr/include for instance. svn path=/trunk/KDE/kdelibs/; revision=531167 --- modules/FindGSSAPI.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 7ef66a0a..2e4e0b74 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -32,6 +32,7 @@ ELSE (DEFINED CACHED_GSSAPI) EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) STRING(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") + STRING(REGEX REPLACE "-I" "" GSSAPI_INCS "${GSSAPI_INCS}") EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) set(GSSAPI_FLAVOR_MIT) -- cgit v1.2.1 From 810cb50e578d060393027c8e5d37ede287b04807 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 18 Apr 2006 20:21:08 +0000 Subject: Turn "-Ifoo -Ibar" into "foo;bar", as expected by include_directories. svn path=/trunk/KDE/kdelibs/; revision=531255 --- modules/FindGSSAPI.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 2e4e0b74..a89d6181 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -31,9 +31,9 @@ ELSE (DEFINED CACHED_GSSAPI) EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) - STRING(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") - STRING(REGEX REPLACE "-I" "" GSSAPI_INCS "${GSSAPI_INCS}") - + string(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") + string(REGEX REPLACE " *-I" ";" GSSAPI_INCS "${GSSAPI_INCS}") + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) set(GSSAPI_FLAVOR_MIT) IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") -- cgit v1.2.1 From 672022196187fa0d0b412c01f70de04b3827bbaf Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 20 Apr 2006 12:04:07 +0000 Subject: This one now looks exactly like the one in cmake itself (even in cmake-2.2.3) svn path=/trunk/KDE/kdelibs/; revision=531833 --- modules/FindJPEG.cmake | 35 ----------------------------------- 1 file changed, 35 deletions(-) delete mode 100644 modules/FindJPEG.cmake (limited to 'modules') diff --git a/modules/FindJPEG.cmake b/modules/FindJPEG.cmake deleted file mode 100644 index 7d624b30..00000000 --- a/modules/FindJPEG.cmake +++ /dev/null @@ -1,35 +0,0 @@ -# - Find JPEG -# Find the native JPEG includes and library -# This module defines -# JPEG_INCLUDE_DIR, where to find jpeglib.h, etc. -# JPEG_LIBRARIES, the libraries needed to use JPEG. -# JPEG_FOUND, If false, do not try to use JPEG. -# also defined, but not for general use are -# JPEG_LIBRARY, where to find the JPEG library. - -FIND_PATH(JPEG_INCLUDE_DIR jpeglib.h -/usr/local/include -/usr/include -) - -SET(JPEG_NAMES ${JPEG_NAMES} jpeg) -FIND_LIBRARY(JPEG_LIBRARY - NAMES ${JPEG_NAMES} - PATHS /usr/lib /usr/local/lib - ) - -IF (JPEG_LIBRARY) - IF (JPEG_INCLUDE_DIR) - SET(JPEG_LIBRARIES ${JPEG_LIBRARY}) - SET(JPEG_FOUND TRUE) - ENDIF (JPEG_INCLUDE_DIR) -ENDIF (JPEG_LIBRARY) - -# Deprecated declarations. -SET(NATIVE_JPEG_INCLUDE_PATH ${JPEG_INCLUDE_DIR} ) -GET_FILENAME_COMPONENT (NATIVE_JPEG_LIB_PATH ${JPEG_LIBRARY} PATH) - -MARK_AS_ADVANCED( - JPEG_LIBRARY - JPEG_INCLUDE_DIR - ) -- cgit v1.2.1 From 9a75f145de53a04eca02dd5da5c2ab092f67d2f0 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 20 Apr 2006 12:25:46 +0000 Subject: OK so FIND_PATH and FIND_LIBRARIES use the cache already, so no need for the CACHED_FOO fast-path when the check only uses those. Instead I used this, to avoid "Found libfoo" in the output when in fact we didn't just look for it, we had it in the cache. +if (TIFF_INCLUDE_DIR) + # Already in cache, be silent + set(TIFF_FIND_QUIETLY TRUE) +endif (TIFF_INCLUDE_DIR) CACHED_FOO remains for the cases where there is more logic to the configure check, like PKGCONFIG, foo-config, or CHECK_LIBRARY_EXISTS (e.g. bzip2) CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=531839 --- modules/FindASPELL.cmake | 4 +++ modules/FindBZip2.cmake | 16 +++------ modules/FindGIF.cmake | 66 +++++++++++++++--------------------- modules/FindHSPELL.cmake | 5 +++ modules/FindJasper.cmake | 9 +++-- modules/FindLibArt.cmake | 2 ++ modules/FindPCRE.cmake | 88 +++++++++++++++++++++--------------------------- modules/FindTIFF.cmake | 66 +++++++++++++++--------------------- modules/FindZLIB.cmake | 72 +++++++++++++++++---------------------- 9 files changed, 148 insertions(+), 180 deletions(-) (limited to 'modules') diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index 9d856c60..0333de0c 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -7,6 +7,10 @@ # ASPELL_DEFINITIONS - Compiler switches required for using ASPELL # +if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + # Already in cache, be silent + set(ASPELL_FIND_QUIETLY TRUE) +endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) FIND_PATH(ASPELL_INCLUDE_DIR aspell.h /usr/include diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 0f05e0bf..9976c282 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -8,14 +8,12 @@ # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ -IF (DEFINED CACHED_BZIP2) +if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - # in cache already - IF ("${CACHED_BZIP2}" STREQUAL "YES") - SET(BZIP2_FOUND TRUE) - ENDIF ("${CACHED_BZIP2}" STREQUAL "YES") + # in cache already, avoid doing the CHECK_LIBRARY_EXISTS again. + SET(BZIP2_FOUND TRUE) -ELSE (DEFINED CACHED_BZIP2) +else (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h /usr/include @@ -32,9 +30,6 @@ ELSE (DEFINED CACHED_BZIP2) set(BZIP2_FOUND TRUE) INCLUDE(CheckLibraryExists) CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) - set(CACHED_BZIP2 "YES") - else (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - set(CACHED_BZIP2 "NO") endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) if (BZIP2_FOUND) @@ -47,7 +42,6 @@ ELSE (DEFINED CACHED_BZIP2) endif (BZip2_FIND_REQUIRED) endif (BZIP2_FOUND) - set(CACHED_BZIP2 ${CACHED_BZIP2} CACHE INTERNAL "If bzip2 was checked") MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) -ENDIF(DEFINED CACHED_BZIP2) +endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index c809b243..8ea3043a 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -7,44 +7,34 @@ # GIF_DEFINITIONS - Compiler switches required for using GIF # -IF (DEFINED CACHED_GIF) +if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + # Already in cache, be silent + set(GIF_FIND_QUIETLY TRUE) +endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) - # in cache already - IF ("${CACHED_GIF}" STREQUAL "YES") - SET(GIF_FOUND TRUE) - ENDIF ("${CACHED_GIF}" STREQUAL "YES") +FIND_PATH(GIF_INCLUDE_DIR gif_lib.h + /usr/include + /usr/local/include +) -ELSE (DEFINED CACHED_GIF) +FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib + PATHS + /usr/lib + /usr/local/lib +) - FIND_PATH(GIF_INCLUDE_DIR gif_lib.h - /usr/include - /usr/local/include - ) - - FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib - PATHS - /usr/lib - /usr/local/lib - ) - - if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) - set(GIF_FOUND TRUE) - set(CACHED_GIF "YES") - else (GIF_INCLUDE_DIR AND GIF_LIBRARIES) - set(CACHED_GIF "NO") - endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) - - if (GIF_FOUND) - if (NOT GIF_FIND_QUIETLY) - message(STATUS "Found GIF: ${GIF_LIBRARIES}") - endif (NOT GIF_FIND_QUIETLY) - else (GIF_FOUND) - if (GIF_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find GIF") - endif (GIF_FIND_REQUIRED) - endif (GIF_FOUND) - - set(CACHED_GIF ${CACHED_GIF} CACHE INTERNAL "If gif was checked") - MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) - -ENDIF (DEFINED CACHED_GIF) +if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + set(GIF_FOUND TRUE) +endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + +if (GIF_FOUND) + if (NOT GIF_FIND_QUIETLY) + message(STATUS "Found GIF: ${GIF_LIBRARIES}") + endif (NOT GIF_FIND_QUIETLY) +else (GIF_FOUND) + if (GIF_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find GIF") + endif (GIF_FIND_REQUIRED) +endif (GIF_FOUND) + +MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake index ba8b21aa..0a029fb8 100644 --- a/modules/FindHSPELL.cmake +++ b/modules/FindHSPELL.cmake @@ -7,6 +7,11 @@ # HSPELL_DEFINITIONS - Compiler switches required for using HSPELL # +if (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + # Already in cache, be silent + set(HSPELL_FIND_QUIETLY TRUE) +endif (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + FIND_PATH(HSPELL_INCLUDE_DIR hspell.h /usr/include diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 9e876fec..9a6f2414 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -5,6 +5,13 @@ # JASPER_INCLUDE_DIR - the Jasper include directory # JASPER_LIBRARIES - The libraries needed to use Jasper +FIND_PACKAGE(JPEG) + +if (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) + # Already in cache, be silent + set(Jasper_FIND_QUIETLY TRUE) +endif (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) + FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h /usr/include /usr/local/include @@ -16,8 +23,6 @@ FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper /usr/local/lib ) -FIND_PACKAGE(JPEG) - if (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) set(JASPER_FOUND TRUE) set(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 0ae2c49c..b74da7ee 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -19,6 +19,8 @@ ELSE (DEFINED CACHED_LIBART) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags) + + ######### ?? where is this used ?? ############### set(LIBART_DEFINITIONS ${_libArtCflags}) ENDIF (NOT WIN32) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index f7a7e9cc..16116867 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -5,52 +5,42 @@ # PCRE_INCLUDE_DIR - the PCRE include directory # PCRE_LIBRARIES - The libraries needed to use PCRE -IF (DEFINED CACHED_PCRE) - - # in cache already - IF ("${CACHED_PCRE}" STREQUAL "YES") - SET(PCRE_FOUND TRUE) - ENDIF ("${CACHED_PCRE}" STREQUAL "YES") - -ELSE (DEFINED CACHED_PCRE) - - FIND_PATH(PCRE_INCLUDE_DIR pcre.h - /usr/include/ - /usr/local/include/ - ) - - FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre - PATHS - /usr/lib - /usr/local/lib - ) - - FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix - PATHS - /usr/lib - /usr/local/lib - ) - - set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") - - if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - set(PCRE_FOUND TRUE) - set(CACHED_PCRE "YES") - else (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - set(CACHED_PCRE "NO") - endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - - if (PCRE_FOUND) - if (NOT PCRE_FIND_QUIETLY) - message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") - endif (NOT PCRE_FIND_QUIETLY) - else (PCRE_FOUND) - if (PCRE_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find PCRE") - endif (PCRE_FIND_REQUIRED) - endif (PCRE_FOUND) - - set(CACHED_PCRE ${CACHED_PCRE} CACHE INTERNAL "If pcre was checked") - MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) - -ENDIF (DEFINED CACHED_PCRE) +if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + # Already in cache, be silent + set(PCRE_FIND_QUIETLY TRUE) +endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + +FIND_PATH(PCRE_INCLUDE_DIR pcre.h + /usr/include/ + /usr/local/include/ +) + +FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre + PATHS + /usr/lib + /usr/local/lib +) + +FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix + PATHS + /usr/lib + /usr/local/lib +) + +set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") + +if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + set(PCRE_FOUND TRUE) +endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) + +if (PCRE_FOUND) + if (NOT PCRE_FIND_QUIETLY) + message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") + endif (NOT PCRE_FIND_QUIETLY) +else (PCRE_FOUND) + if (PCRE_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find PCRE") + endif (PCRE_FIND_REQUIRED) +endif (PCRE_FOUND) + +MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 18e051ba..7c6cfd91 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -7,47 +7,35 @@ # also defined, but NOT for general use are # TIFF_LIBRARY, where to find the TIFF library. -IF (DEFINED CACHED_TIFF) +if (TIFF_INCLUDE_DIR) + # Already in cache, be silent + set(TIFF_FIND_QUIETLY TRUE) +endif (TIFF_INCLUDE_DIR) - # in cache already - IF ("${CACHED_TIFF}" STREQUAL "YES") - SET(TIFF_FOUND TRUE) - ENDIF ("${CACHED_TIFF}" STREQUAL "YES") +FIND_PATH(TIFF_INCLUDE_DIR tiff.h + /usr/local/include + /usr/include +) -ELSE (DEFINED CACHED_TIFF) +set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) +FIND_LIBRARY(TIFF_LIBRARY + NAMES ${TIFF_NAMES} + PATHS /usr/lib /usr/local/lib +) - FIND_PATH(TIFF_INCLUDE_DIR tiff.h - /usr/local/include - /usr/include - ) - - set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) - FIND_LIBRARY(TIFF_LIBRARY - NAMES ${TIFF_NAMES} - PATHS /usr/lib /usr/local/lib - ) - - - if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - set(TIFF_FOUND TRUE) - set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) - set(CACHED_TIFF "YES") - else (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - set(CACHED_TIFF "NO") - endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - - - if (TIFF_FOUND) - if (NOT TIFF_FIND_QUIETLY) - message(STATUS "Found TIFF: ${TIFF_LIBRARY}") - endif (NOT TIFF_FIND_QUIETLY) - else (TIFF_FOUND) - if (TIFF_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find TIFF") - endif (TIFF_FIND_REQUIRED) - endif (TIFF_FOUND) +if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + set(TIFF_FOUND TRUE) + set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) +endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - set(CACHED_TIFF ${CACHED_TIFF} CACHE INTERNAL "If tiff was checked") - MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY) +if (TIFF_FOUND) + if (NOT TIFF_FIND_QUIETLY) + message(STATUS "Found TIFF: ${TIFF_LIBRARY}") + endif (NOT TIFF_FIND_QUIETLY) +else (TIFF_FOUND) + if (TIFF_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find TIFF") + endif (TIFF_FIND_REQUIRED) +endif (TIFF_FOUND) -ENDIF (DEFINED CACHED_TIFF) +MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index ecbca6fc..2fcfdd15 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,41 +1,31 @@ -IF (DEFINED CACHED_ZLIB) - - # in cache already - IF ("${CACHED_ZLIB}" STREQUAL "YES") - SET(ZLIB_FOUND TRUE) - ENDIF ("${CACHED_ZLIB}" STREQUAL "YES") - -ELSE (DEFINED CACHED_ZLIB) - - FIND_PATH(ZLIB_INCLUDE_DIR zlib.h - /usr/include - /usr/local/include - ) - - FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib - PATHS - /usr/lib - /usr/local/lib - ) - - IF (ZLIB_INCLUDE_DIR) - SET(ZLIB_FOUND TRUE) - SET(CACHED_ZLIB "YES") - ELSE (ZLIB_INCLUDE_DIR) - SET(CACHED_ZLIB "NO") - ENDIF (ZLIB_INCLUDE_DIR) - - IF (ZLIB_FOUND) - IF (NOT ZLIB_FIND_QUIETLY) - MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}") - ENDIF (NOT ZLIB_FIND_QUIETLY) - ELSE (ZLIB_FOUND) - IF (ZLIB_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find z library") - ENDIF (ZLIB_FIND_REQUIRED) - ENDIF (ZLIB_FOUND) - - SET(CACHED_ZLIB ${CACHED_ZLIB} CACHE INTERNAL "If zlib was checked") - MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) - -ENDIF (DEFINED CACHED_ZLIB) +if (ZLIB_INCLUDE_DIR) + # Already in cache, be silent + set(ZLIB_FIND_QUIETLY TRUE) +endif (ZLIB_INCLUDE_DIR) + +FIND_PATH(ZLIB_INCLUDE_DIR zlib.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib +PATHS + /usr/lib + /usr/local/lib +) + +IF (ZLIB_INCLUDE_DIR) + SET(ZLIB_FOUND TRUE) +ENDIF (ZLIB_INCLUDE_DIR) + +IF (ZLIB_FOUND) + IF (NOT ZLIB_FIND_QUIETLY) + MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}") + ENDIF (NOT ZLIB_FIND_QUIETLY) +ELSE (ZLIB_FOUND) + IF (ZLIB_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find z library") + ENDIF (ZLIB_FIND_REQUIRED) +ENDIF (ZLIB_FOUND) + +MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -- cgit v1.2.1 From a509f4a028b822285e7c1f693d27131fd646ee3e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 22 Apr 2006 20:51:51 +0000 Subject: -add docs for the NOGUI and RUN_UNINSTALLED options for KDE4_ADD_EXECUTABLE() -use the new multiple-output syntax for KDE4_ADD_KCFG_FILES() -introduce a new target property WRAPPER_SCRIPT, which is set to the created wrapper script (or the executable if none is generated), which can then be easily queried and used e.g. in add_custom_command Alex Adriaan, does this fix your RPATH problem ? CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=532800 --- modules/FindKDE4Internal.cmake | 7 ++++++- modules/KDE4Macros.cmake | 19 ++++++++++++------- 2 files changed, 18 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a2f957a3..5366970d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -156,10 +156,15 @@ # A library named kdeinit_ will be created and a small executable which links to it. # It supports KDE3_ENABLE_FINAL # -# KDE4_ADD_EXECUTABLE (name file1 ... fileN) +# KDE4_ADD_EXECUTABLE (name [ NOGUI | RUN_UNINSTALLED] file1 ... fileN) # Equivalent to ADD_EXECUTABLE(), but additionally adds support for KDE4_ENABLE_FINAL. # If you don't need support for KDE4_ENABLE_FINAL, you can just use the # normal ADD_EXECUTABLE(). +# If the executable has to be run from the buildtree (e.g. unit tests and code generators +# used later on when compiling), set the option RUN_UNINSTALLED. +# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X +# application bundles are created, with the NOGUI option no bundles but simple executables +# are created. Currently it doesn't have any effect on other platforms. # # KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) # Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 96c64b9d..60ae50c0 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -99,7 +99,7 @@ MACRO (KDE4_ADD_DCOP_STUBS _sources) ENDMACRO (KDE4_ADD_DCOP_STUBS) -MACRO (KDE4_ADD_KCFG_FILES _sources) +macro (KDE4_ADD_KCFG_FILES _sources) foreach (_current_FILE ${ARGN}) get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) @@ -113,16 +113,12 @@ MACRO (KDE4_ADD_KCFG_FILES _sources) set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) # the command for creating the source file from the kcfg file - ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE} + add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} MAIN_DEPENDENCY ${_tmp_FILE} DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) - # the above command generates both the source and the header files - # this custom command creates the appropriate dependency - ADD_CUSTOM_COMMAND(OUTPUT ${_header_FILE} DEPENDS ${_src_FILE} ) - QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) @@ -130,7 +126,7 @@ MACRO (KDE4_ADD_KCFG_FILES _sources) endforeach (_current_FILE) -ENDMACRO (KDE4_ADD_KCFG_FILES) +endmacro (KDE4_ADD_KCFG_FILES) GET_FILENAME_COMPONENT(KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) @@ -413,6 +409,15 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) macro_additional_clean_files(${_executable}.sh) + # under UNIX, set the property WRAPPER_SCRIPT to the name of the generated shell script + # so it can be queried and used later on easily + set_target_properties(${_target_NAME} PROPERTIES WRAPPER_SCRIPT ${_executable}.sh) + + else (UNIX) + # under windows, set the property WRAPPER_SCRIPT just to the name of the executable + # maybe later this will change to a generated batch file (for setting the PATH so that the Qt libs are found) + get_target_property(_executable ${_target_NAME} LOCATION ) + set_target_properties(${_target_NAME} PROPERTIES WRAPPER_SCRIPT ${_executable}) endif (UNIX) endmacro (KDE4_HANDLE_RPATH) -- cgit v1.2.1 From 17cf3330acfb74ea087ac6926eb936e4b530c7dd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 23 Apr 2006 10:19:26 +0000 Subject: -remove KDE4_INCLUDE_DIRS, it doesn't exist -include MacroLibrary in the top level CMakeLists.txt instead of the separate macro files Alex svn path=/trunk/KDE/kdelibs/; revision=532921 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5366970d..f588639d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -268,12 +268,15 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # when building kdelibs, make the dcop and kcfg rules depend on the binaries... set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # ... but NOT otherwise set( _KDE4_DCOPIDL2CPP_DEP ) set( _KDE4_KCONFIG_COMPILER_DEP) + set( _KDE4_MAKEKDEWIDGETS_DEP) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) -- cgit v1.2.1 From 729b46a8a2a05b73c304ac3f4ae9f839570d0bdc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 23 Apr 2006 16:02:13 +0000 Subject: -make the kdewidgets rule depend on makekdewidgets inside kdelibs Alex svn path=/trunk/KDE/kdelibs/; revision=533083 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 60ae50c0..6d8f89c8 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -571,9 +571,9 @@ MACRO (KDE4_ADD_WIDGET_FILES _sources) # create source file from the .widgets file ADD_CUSTOM_COMMAND(OUTPUT ${_source} - COMMAND ${KDE4_MAKEKDEWIDGETS_EXECUTABLE} + COMMAND ${KDE4_MAKEKDEWIDGETS_EXECUTABLE} ARGS -o ${_source} ${_input} - MAIN_DEPENDENCY ${_input}) + MAIN_DEPENDENCY ${_input} DEPENDS ${_KDE4_MAKEKDEWIDGETS_DEP}) # create moc file QT4_GENERATE_MOC(${_source} ${_moc} ) -- cgit v1.2.1 From e42a4bed2af911c31674044249a01043d07cc013 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 24 Apr 2006 16:58:54 +0000 Subject: -add the generated ui-headers to the list of sources, this helps with creating the desired rules Alex svn path=/trunk/KDE/kdelibs/; revision=533383 --- modules/KDE4Macros.cmake | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6d8f89c8..f1171704 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -133,16 +133,16 @@ GET_FILENAME_COMPONENT(KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) #create the implementation files from the ui files and add them to the list of sources #usage: KDE4_ADD_UI_FILES(foo_SRCS ${ui_files}) -MACRO (KDE4_ADD_UI_FILES _sources ) +macro (KDE4_ADD_UI_FILES _sources ) foreach (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/ui_${_basename}.h) + get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_basename ${_tmp_FILE} NAME_WE) + set(_header ${CMAKE_CURRENT_BINARY_DIR}/ui_${_basename}.h) # we need to run uic and replace some things in the generated file # this is done by executing the cmake script kde4uic.cmake - ADD_CUSTOM_COMMAND(OUTPUT ${_header} + add_custom_command(OUTPUT ${_header} COMMAND ${CMAKE_COMMAND} ARGS -DKDE4_HEADER:BOOL=ON @@ -153,8 +153,9 @@ MACRO (KDE4_ADD_UI_FILES _sources ) -P ${KDE4_MODULE_DIR}/kde4uic.cmake MAIN_DEPENDENCY ${_tmp_FILE} ) + set(${_sources} ${${_sources}} ${_header}) endforeach (_current_FILE) -ENDMACRO (KDE4_ADD_UI_FILES) +endmacro (KDE4_ADD_UI_FILES) #create the implementation files from the ui files and add them to the list of sources -- cgit v1.2.1 From e9a477bcfa7553bded8d7cb750a802d0d79915bf Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 25 Apr 2006 20:43:22 +0000 Subject: -add the new option to put source-local include dirs first, won't have any effect befor we require cmake 2.4.1 (we're still at 2.3.4) Alex svn path=/trunk/KDE/kdelibs/; revision=533904 --- modules/KDE4Defaults.cmake | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 8f9e30c1..582e44c0 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -4,13 +4,22 @@ enable_testing() include(CTest) # Always include srcdir and builddir in include path +# This saves typing ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY} in about every subdir +# since cmake 2.4.0 set(CMAKE_INCLUDE_CURRENT_DIR ON) -# Use colors +# put the include dirs which are in the source or build tree +# before all other include dirs, so the headers in the sources +# are prefered over the already installed ones +# since cmake 2.4.1 +set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) + +# Use colored output +# since cmake 2.4.0 set(CMAKE_COLOR_MAKEFILE ON) # define the generic version of the libraries here -# this makes it easy to advance it when the next release comes +# this makes it easy to advance it when the next KDE release comes set(GENERIC_LIB_VERSION "5.0.0") set(GENERIC_LIB_SOVERSION "5") -- cgit v1.2.1 From 3862d6ce313b4525242c859645ad13b1047054af Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 26 Apr 2006 15:49:26 +0000 Subject: - some compile flags cleanups - readd visibility support svn path=/trunk/KDE/kdelibs/; revision=534204 --- modules/FindKDE4Internal.cmake | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f588639d..6a3d31fb 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -185,6 +185,7 @@ set(QT_MIN_VERSION "4.1.1") find_package(Qt4 REQUIRED) include (MacroLibrary) +include (CheckCXXSourceCompiles) #add some KDE specific stuff @@ -521,28 +522,18 @@ if (APPLE) endif (APPLE) -# only on linux, but NOT e.g. on FreeBSD: if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - # optimization flags are set further below for the various build types - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES Linux) - -# works on FreeBSD, NOT tested on NetBSD and OpenBSD if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") - # optimization flags are set further below for the various build types - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES BSD) - # compiler specific stuff, maybe this should be done differently, Alex if (MSVC) @@ -560,6 +551,21 @@ if (CMAKE_COMPILER_IS_GNUCXX) set(CMAKE_C_FLAGS_RELEASE "-O2") set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") + + if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") + endif (CMAKE_SYSTEM_NAME MATCHES Linux) + + # visibility support + set (SAFE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}") + set (CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -fvisibility=hidden") + CHECK_CXX_SOURCE_COMPILES("int main() { return 0; }" __KDE_HAVE_GCC_VISIBILITY) + if (__KDE_HAVE_GCC_VISIBILITY) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") + endif (__KDE_HAVE_GCC_VISIBILITY) + set (CMAKE_REQUIRED_FLAGS "${SAFE_CMAKE_REQUIRED_FLAGS}") + endif (CMAKE_COMPILER_IS_GNUCXX) # it seems we prefer not to use a different postfix for debug libs, Alex -- cgit v1.2.1 From 6a3973d0089eb03cf6b56d8cded6441d55a7db1c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 26 Apr 2006 20:34:40 +0000 Subject: -move the test for a compiler flag into an own generic cmake module: CheckCXXCompilerFlag.cmake -add a comment about removing CheckTypeSize.cmake once we require cmake 2.4.1 Alex svn path=/trunk/KDE/kdelibs/; revision=534314 --- modules/CheckCXXCompilerFlag.cmake | 16 ++++++++++++++++ modules/CheckTypeSize.cmake | 2 ++ modules/FindKDE4Internal.cmake | 9 +++------ 3 files changed, 21 insertions(+), 6 deletions(-) create mode 100644 modules/CheckCXXCompilerFlag.cmake (limited to 'modules') diff --git a/modules/CheckCXXCompilerFlag.cmake b/modules/CheckCXXCompilerFlag.cmake new file mode 100644 index 00000000..74af207b --- /dev/null +++ b/modules/CheckCXXCompilerFlag.cmake @@ -0,0 +1,16 @@ +# - Check whether the compiler supports a given flag. +# CHECK_CXX_COMPILER_FLAG(FLAG VARIABLE) +# +# FLAG - the compiler flag +# VARIABLE - variable to store the result +# + +INCLUDE(CheckCXXSourceCompiles) + +MACRO (CHECK_CXX_COMPILER_FLAG _FLAG _RESULT) + SET(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") + SET(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") + CHECK_CXX_SOURCE_COMPILES("int main() { return 0;}" ${_RESULT}) + SET (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") +ENDMACRO (CHECK_CXX_COMPILER_FLAG) + diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake index 87de1a76..46288031 100644 --- a/modules/CheckTypeSize.cmake +++ b/modules/CheckTypeSize.cmake @@ -4,6 +4,8 @@ # exists, the size will be stored to the variable. # VARIABLE - variable to store size if the type exists. # HAVE_${VARIABLE} - does the variable exists or NOT +# +# remove once we require cmake 2.4.1 MACRO (CHECK_TYPE_SIZE TYPE VARIABLE) SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6a3d31fb..d35dc1d1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -185,7 +185,7 @@ set(QT_MIN_VERSION "4.1.1") find_package(Qt4 REQUIRED) include (MacroLibrary) -include (CheckCXXSourceCompiles) +include (CheckCXXCompilerFlag) #add some KDE specific stuff @@ -558,13 +558,10 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (CMAKE_SYSTEM_NAME MATCHES Linux) # visibility support - set (SAFE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}") - set (CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -fvisibility=hidden") - CHECK_CXX_SOURCE_COMPILES("int main() { return 0; }" __KDE_HAVE_GCC_VISIBILITY) + check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) if (__KDE_HAVE_GCC_VISIBILITY) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") endif (__KDE_HAVE_GCC_VISIBILITY) - set (CMAKE_REQUIRED_FLAGS "${SAFE_CMAKE_REQUIRED_FLAGS}") endif (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From 3bf33b72e0a2b124e0a8cd61f6fd891356331881 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 26 Apr 2006 20:57:32 +0000 Subject: -add the multiple output to the dcop macros -some lowercasing Alex svn path=/trunk/KDE/kdelibs/; revision=534320 --- modules/KDE4Macros.cmake | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f1171704..5eb7733a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -31,7 +31,7 @@ MACRO (KDE4_ADD_DCOP_SKELS _sources) if (NOT HAVE_${_basename}_KIDL_RULE) set(HAVE_${_basename}_KIDL_RULE ON) - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + add_custom_command(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} MAIN_DEPENDENCY ${_tmp_FILE} @@ -41,13 +41,13 @@ MACRO (KDE4_ADD_DCOP_SKELS _sources) if (NOT HAVE_${_basename}_SKEL_RULE) set(HAVE_${_basename}_SKEL_RULE ON) - ADD_CUSTOM_COMMAND(OUTPUT ${_skel} + add_custom_command(OUTPUT ${_skel_H} ${_skel} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} MAIN_DEPENDENCY ${_kidl} DEPENDS ${_KDE4_DCOPIDL2CPP_DEP} ) - MACRO_ADDITIONAL_CLEAN_FILES(${_skel_H}) + macro_additional_clean_files(${_skel_H}) endif (NOT HAVE_${_basename}_SKEL_RULE) @@ -61,9 +61,9 @@ ENDMACRO (KDE4_ADD_DCOP_SKELS) MACRO (KDE4_ADD_DCOP_STUBS _sources) foreach (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + get_filename_component(_basename ${_tmp_FILE} NAME_WE) set(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) set(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) @@ -72,7 +72,7 @@ MACRO (KDE4_ADD_DCOP_STUBS _sources) if (NOT HAVE_${_basename}_KIDL_RULE) set(HAVE_${_basename}_KIDL_RULE ON) - ADD_CUSTOM_COMMAND(OUTPUT ${_kidl} + add_custom_command(OUTPUT ${_kidl} COMMAND ${KDE4_DCOPIDL_EXECUTABLE} ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} MAIN_DEPENDENCY ${_tmp_FILE} @@ -82,13 +82,13 @@ MACRO (KDE4_ADD_DCOP_STUBS _sources) if (NOT HAVE_${_basename}_STUB_RULE) set(HAVE_${_basename}_STUB_RULE ON) - ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP} + add_custom_command(OUTPUT ${_stub_H} ${_stub_CPP} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} MAIN_DEPENDENCY ${_kidl} DEPENDS ${_KDE4_DCOPIDL2CPP_DEP} ) - MACRO_ADDITIONAL_CLEAN_FILES(${_stub_H}) + macro_additional_clean_files(${_stub_H}) endif (NOT HAVE_${_basename}_STUB_RULE) @@ -166,13 +166,13 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) foreach (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) + get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_basename ${_tmp_FILE} NAME_WE) set(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) set(_src ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc.cpp) - ADD_CUSTOM_COMMAND(OUTPUT ${_header} + add_custom_command(OUTPUT ${_header} COMMAND ${CMAKE_COMMAND} -DKDE3_HEADER:BOOL=ON -DKDE_UIC_EXECUTABLE:FILEPATH=${QT_UIC3_EXECUTABLE} @@ -186,7 +186,7 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) # we need to run uic3 and replace some things in the generated file # this is done by executing the cmake script kde4uic.cmake - ADD_CUSTOM_COMMAND(OUTPUT ${_src} + add_custom_command(OUTPUT ${_src} COMMAND ${CMAKE_COMMAND} ARGS -DKDE3_IMPL:BOOL=ON -- cgit v1.2.1 From 12b388babac1a3eb4f0d5d8129e2e3bed1b43dd9 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 27 Apr 2006 14:15:47 +0000 Subject: if we call it with --no-stub, then it won't produce a header file. Amazing how long this bug went unnoticed. Fixes everything-constantly-rebuilding when using cmake. svn path=/trunk/KDE/kdelibs/; revision=534598 --- modules/KDE4Macros.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 5eb7733a..36fd3ebc 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -25,7 +25,6 @@ MACRO (KDE4_ADD_DCOP_SKELS _sources) GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) set(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) - set(_skel_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.h) set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) if (NOT HAVE_${_basename}_KIDL_RULE) @@ -41,7 +40,7 @@ MACRO (KDE4_ADD_DCOP_SKELS _sources) if (NOT HAVE_${_basename}_SKEL_RULE) set(HAVE_${_basename}_SKEL_RULE ON) - add_custom_command(OUTPUT ${_skel_H} ${_skel} + add_custom_command(OUTPUT ${_skel} COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} MAIN_DEPENDENCY ${_kidl} -- cgit v1.2.1 From 948bdbe90bbf0267f5df916f655d7bdf55326057 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 27 Apr 2006 17:51:56 +0000 Subject: Add QTUITOOLS macro svn path=/trunk/KDE/kdelibs/; revision=534733 --- modules/FindQt4.cmake | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e7ff49b5..70f6911a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -129,6 +129,10 @@ # QT_QTTEST_LIBRARY_RELEASE # QT_QTTEST_LIBRARY_DEBUG # +#The QtUiTools library: QT_QTUITOOLS_LIBRARY +# QT_QTUITOOLS_LIBRARY_RELEASE +# QT_QTUITOOLS_LIBRARY_DEBUG +# # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. # QT_UIC_EXECUTABLE Where to find the uic tool. @@ -383,6 +387,15 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + # Set QT_QTUITOOLS_INCLUDE_DIR + FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtTest + PATHS + ${QT_INCLUDE_DIR}/QtUiTools + ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTMOTIF_INCLUDE_DIR IF(Q_WS_X11) @@ -477,6 +490,9 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY_RELEASE "-framework QtSvg" CACHE STRING "The QtSvg library.") SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") + SET(QT_QTUITOOLS_LIBRARY_RELEASE "-framework QtUiTools" CACHE STRING "The QtUiTools library.") + SET(QT_QTUITOOLS_LIBRARY_DEBUG "-framework QtUiTools" CACHE STRING "The QtUiTools library.") + # WTF? why don't we have frameworks? :P SET(QT_QTTEST_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") @@ -527,6 +543,10 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTSVG_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiTools_debug QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTTEST_LIBRARY FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -599,6 +619,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTSQL) _QT4_ADJUST_LIB_VARS(QTXML) _QT4_ADJUST_LIB_VARS(QTSVG) + _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) ####################################### -- cgit v1.2.1 From 34d54dc76ccfe2def67523daf7daf00ebfcfe845 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 27 Apr 2006 19:00:13 +0000 Subject: -use qmake to tell us which uic and moc we should use -apply patches from Clinton Stimpson and Kenneth Moreland, fixing some QtMain issues on windows Alex svn path=/trunk/KDE/kdelibs/; revision=534767 --- modules/FindQt4.cmake | 49 +++++++++++++++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 70f6911a..25e99068 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -13,6 +13,7 @@ # QT_USE_QTASSISTANT # QT_USE_QTDESIGNER # QT_USE_QTMOTIF +# QT_USE_QTMAIN # QT_USE_QTNETWORK # QT_USE_QTNSPLUGIN # QT_USE_QTOPENGL @@ -125,11 +126,15 @@ # QT_QTSVG_LIBRARY_RELEASE # QT_QTSVG_LIBRARY_DEBUG # -#The QtTest library: QT_QTTEST_LIBRARY +# The QtTest library: QT_QTTEST_LIBRARY # QT_QTTEST_LIBRARY_RELEASE # QT_QTTEST_LIBRARY_DEBUG # -#The QtUiTools library: QT_QTUITOOLS_LIBRARY +# The qtmain library for Windows QT_QTMAIN_LIBRARY +# QT_QTMAIN_LIBRARY_RELEASE +# QT_QTMAIN_LIBRARY_DEBUG +# +#The QtUiTools library: QT_QTUITOOLS_LIBRARY # QT_QTUITOOLS_LIBRARY_RELEASE # QT_QTUITOOLS_LIBRARY_DEBUG # @@ -154,7 +159,6 @@ # These variables are set to "" Because Qt structure changed # (They make no sense in Qt4) # QT_QT_LIBRARY Qt-Library is now split -# QT_QTMAIN_LIBRARY Qt-Library is now split INCLUDE(CheckSymbolExists) @@ -543,7 +547,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTSVG_LIBRARY + # Set QT_QTUITOOLS_LIBRARY FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiTools_debug QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -562,7 +566,7 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTDESIGNER_LIBRARY FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - + ############################################ # # Check the existence of the libraries. @@ -605,6 +609,11 @@ IF (QT4_QMAKE_FOUND) MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_RELEASE QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) ENDMACRO (_QT4_ADJUST_LIB_VARS) + IF(WIN32) + _QT4_ADJUST_LIB_VARS(QTMAIN) + ENDIF(WIN32) + + _QT4_ADJUST_LIB_VARS(QTCORE) _QT4_ADJUST_LIB_VARS(QTGUI) _QT4_ADJUST_LIB_VARS(QT3SUPPORT) @@ -630,17 +639,25 @@ IF (QT4_QMAKE_FOUND) ####################################### - FIND_PROGRAM(QT_MOC_EXECUTABLE - NAMES moc moc-qt4 - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) + # find moc and uic using qmake + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake/tmp.pro + "message("MOC <$$QMAKE_MOC>") + message("UIC <$$QMAKE_UIC>") + ") + + EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake + OUTPUT_VARIABLE _moc_OUTPUT + ERROR_VARIABLE _moc_OUTPUT ) + + FILE(REMOVE_RECURSE "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake") + + STRING(REGEX REPLACE ".*MOC<([^>]+).*" "\\1" QT_MOC_EXECUTABLE "${_moc_OUTPUT}" ) + STRING(REGEX REPLACE ".*UIC<([^>]+).*" "\\1" QT_UIC_EXECUTABLE "${_moc_OUTPUT}" ) + + SET(QT_MOC_EXECUTABLE ${QT_MOC_EXECUTABLE} CACHE FILEPATH "The moc executable") + SET(QT_UIC_EXECUTABLE ${QT_UIC_EXECUTABLE} CACHE FILEPATH "The uic executable") - FIND_PROGRAM(QT_UIC_EXECUTABLE - NAMES uic uic-qt4 - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 @@ -858,7 +875,6 @@ IF (QT4_QMAKE_FOUND) SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) SET( QT_QT_LIBRARY "") - SET( QT_QTMAIN_LIBRARY "") ELSE(QT4_QMAKE_FOUND) @@ -875,3 +891,4 @@ ELSE(QT4_QMAKE_FOUND) ENDIF(Qt4_FIND_REQUIRED) ENDIF (QT4_QMAKE_FOUND) + -- cgit v1.2.1 From e730a3e51a7aaad64cc1e3cc18c561421db33f73 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 27 Apr 2006 19:15:18 +0000 Subject: -use MACRO_ADD_FILE_DEPENDENCIES() and remove the duplicated _QT4_ADD_FILE_DEPENDENCIES() Alex svn path=/trunk/KDE/kdelibs/; revision=534769 --- modules/FindQt4.cmake | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 25e99068..5edc2efa 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -161,6 +161,7 @@ # QT_QT_LIBRARY Qt-Library is now split INCLUDE(CheckSymbolExists) +INCLUDE(MacroAddFileDependencies) SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) @@ -771,17 +772,6 @@ IF (QT4_QMAKE_FOUND) ENDMACRO (QT4_ADD_RESOURCES) - MACRO(_QT4_ADD_FILE_DEPENDENCIES _file) - GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS) - IF (_deps) - SET(_deps ${_deps} ${ARGN}) - ELSE (_deps) - SET(_deps ${ARGN}) - ENDIF (_deps) - SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}") - ENDMACRO(_QT4_ADD_FILE_DEPENDENCIES) - - MACRO(QT4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) @@ -819,7 +809,7 @@ IF (QT4_QMAKE_FOUND) DEPENDS ${_header} ) - _QT4_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) ENDIF(_match) ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) -- cgit v1.2.1 From dc05a7733224b1fce459fc633d1a952e451803b2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 28 Apr 2006 21:13:57 +0000 Subject: -move the check for Perl into FindKDE4Internal.cmake, so we don't have to put the check in every module Perl is required for building KDe software, e.g. dcopidl Alex svn path=/trunk/KDE/kdelibs/; revision=535221 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d35dc1d1..193eff2a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -184,6 +184,9 @@ set(QT_MIN_VERSION "4.1.1") #this line includes FindQt.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) +# Perl is required for building KDE software, e.g. for dcopidl +find_package(Perl REQUIRED) + include (MacroLibrary) include (CheckCXXCompilerFlag) -- cgit v1.2.1 From 4003d9108c0254fbaafb03b33f011cd63983510f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 30 Apr 2006 21:39:02 +0000 Subject: -two cmake modules to check whether a given struct or pointer has a specified member variable Alex svn path=/trunk/KDE/kdelibs/; revision=535981 --- modules/CheckPointerMember.cmake | 36 ++++++++++++++++++++++++++++++++++++ modules/CheckStructMember.cmake | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100644 modules/CheckPointerMember.cmake create mode 100644 modules/CheckStructMember.cmake (limited to 'modules') diff --git a/modules/CheckPointerMember.cmake b/modules/CheckPointerMember.cmake new file mode 100644 index 00000000..fc6b231d --- /dev/null +++ b/modules/CheckPointerMember.cmake @@ -0,0 +1,36 @@ +# - Check if the given struct or class has the specified member variable +# CHECK_POINTER_MEMBER (POINTER MEMBER HEADER VARIABLE) +# +# POINTER - the name of the struct or class you are interested in +# MEMBER - the member which existence you want to check +# HEADER - the header(s) where the prototype should be declared +# VARIABLE - variable to store the result +# +# The following variables may be set before calling this macro to +# modify the way the check is run: +# +# CMAKE_REQUIRED_FLAGS = string of compile command line flags +# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) +# CMAKE_REQUIRED_INCLUDES = list of include directories + +INCLUDE(CheckCXXSourceCompiles) + +MACRO (CHECK_POINTER_MEMBER _STRUCT _MEMBER _HEADER _RESULT) + SET(_INCLUDE_FILES) + FOREACH (it ${_HEADER}) + SET(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") + ENDFOREACH (it) + + SET(_CHECK_POINTER_MEMBER_SOURCE_CODE " +${_INCLUDE_FILES} +int main() +{ + ${_STRUCT} tmp; + tmp->${_MEMBER}; + return 0; +} +") + CHECK_CXX_SOURCE_COMPILES("${_CHECK_POINTER_MEMBER_SOURCE_CODE}" ${_RESULT}) + +ENDMACRO (CHECK_POINTER_MEMBER) + diff --git a/modules/CheckStructMember.cmake b/modules/CheckStructMember.cmake new file mode 100644 index 00000000..fd5d3461 --- /dev/null +++ b/modules/CheckStructMember.cmake @@ -0,0 +1,36 @@ +# - Check if the given struct or class has the specified member variable +# CHECK_STRUCT_MEMBER (STRUCT MEMBER HEADER VARIABLE) +# +# STRUCT - the name of the struct or class you are interested in +# MEMBER - the member which existence you want to check +# HEADER - the header(s) where the prototype should be declared +# VARIABLE - variable to store the result +# +# The following variables may be set before calling this macro to +# modify the way the check is run: +# +# CMAKE_REQUIRED_FLAGS = string of compile command line flags +# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) +# CMAKE_REQUIRED_INCLUDES = list of include directories + +INCLUDE(CheckCXXSourceCompiles) + +MACRO (CHECK_STRUCT_MEMBER _STRUCT _MEMBER _HEADER _RESULT) + SET(_INCLUDE_FILES) + FOREACH (it ${_HEADER}) + SET(_INCLUDE_FILES "${_INCLUDE_FILES}#include <${it}>\n") + ENDFOREACH (it) + + SET(_CHECK_STRUCT_MEMBER_SOURCE_CODE " +${_INCLUDE_FILES} +int main() +{ + ${_STRUCT}* tmp; + tmp->${_MEMBER}; + return 0; +} +") + CHECK_CXX_SOURCE_COMPILES("${_CHECK_STRUCT_MEMBER_SOURCE_CODE}" ${_RESULT}) + +ENDMACRO (CHECK_STRUCT_MEMBER) + -- cgit v1.2.1 From e3aa5b879ff9339b77532721df7bdc74348b676f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 1 May 2006 11:54:15 +0000 Subject: -add a macro to convert the value of cmake variables to 0 or 1 for use in config.h.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=536102 --- modules/MacroBoolTo01.cmake | 14 ++++++++++++++ modules/MacroLibrary.cmake | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 modules/MacroBoolTo01.cmake (limited to 'modules') diff --git a/modules/MacroBoolTo01.cmake b/modules/MacroBoolTo01.cmake new file mode 100644 index 00000000..7580cce3 --- /dev/null +++ b/modules/MacroBoolTo01.cmake @@ -0,0 +1,14 @@ +# MACRO_BOOL_TO_01( VAR RESULT0 ... RESULTN ) +# This macro evaluates its first argument +# and sets all the given vaiables either to 0 or 1 +# depending on the value of the first one + +MACRO(MACRO_BOOL_TO_01 FOUND_VAR ) + FOREACH (_current_VAR ${ARGN}) + IF(${FOUND_VAR}) + SET(${_current_VAR} 1) + ELSE(${FOUND_VAR}) + SET(${_current_VAR} 0) + ENDIF(${FOUND_VAR}) + ENDFOREACH(_current_VAR) +ENDMACRO(MACRO_BOOL_TO_01) diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 8a4e52e4..517141e9 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -6,4 +6,4 @@ INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroGetenvWinPath) INCLUDE(MacroEnsureOutOfSourceBuild) - +INCLUDE(MacroBoolTo01) -- cgit v1.2.1 From d6a1555c85db0d42158088737188d1c67df9c329 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 1 May 2006 13:34:37 +0000 Subject: If the header is there but not the lib, then we can't use it svn path=/trunk/KDE/kdelibs/; revision=536135 --- modules/FindX11.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index b3ba8af4..e5db8fed 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -121,10 +121,10 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) endif (X11_Xcomposite_INCLUDE_PATH) - if (X11_XTest_INCLUDE_PATH) + if (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) set(X11_XTest_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH}) - endif (X11_XTest_INCLUDE_PATH) + endif (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) if (X11_Xinerama_INCLUDE_PATH) set(X11_Xinerama_FOUND TRUE) -- cgit v1.2.1 From 6c41c0fc9389649b5dd63cbecac639daeff5d4ca Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 1 May 2006 14:19:49 +0000 Subject: It is quite faster when it doesn't search for libXrandr, libXft etc. in all of my $PATH. NO_SYSTEM_PATH disables looking into $PATH and $LIB, I don't see how a X lib could ever be in either of those. Windows uses $PATH for libs - but Windows doesn't have X11 so at least in this file this should be fine; I wonder why FIND_LIBRARY looks into $PATH on unix though, in general... CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=536154 --- modules/FindX11.cmake | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index e5db8fed..95854dc1 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -47,24 +47,24 @@ if (UNIX) FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) - FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH}) - FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) -- cgit v1.2.1 From a36c1147076310a1ace1271dbbff2ed43b1cf8e3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 1 May 2006 19:06:35 +0000 Subject: -cmake 2.4.1 beta is now required -remove CMAKE_CURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR from the INCLUDE_DIRECTORIES() commands, except where it also applies to the subdirectories -remove the "ARGS" keyword from the add_custom_command()s -add the generated files from add_custom_command() always to the list of sources -use the new macro_bool_to_01() in more places -some indenting Alex svn path=/trunk/KDE/kdelibs/; revision=536285 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 193eff2a..f2c74d63 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -178,7 +178,7 @@ # _KDE4_PLATFORM_DEFINITIONS is used only internally -cmake_minimum_required(VERSION 2.3.4 FATAL_ERROR) +cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) set(QT_MIN_VERSION "4.1.1") #this line includes FindQt.cmake, which searches the Qt library and headers -- cgit v1.2.1 From 071f74df5e94d64e0ad7b673238b654517552183 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 1 May 2006 21:20:18 +0000 Subject: -remove the kde4_create_doxygen_docs() command Alex svn path=/trunk/KDE/kdelibs/; revision=536344 --- modules/KDE4Macros.cmake | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 36fd3ebc..4db3809a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -371,7 +371,8 @@ MACRO (KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) ENDMACRO (KDE4_CREATE_FINAL_FILES) - +# this macro sets the RPATH related options for executables +# and creates wrapper shell scripts for the executables macro (KDE4_HANDLE_RPATH _target_NAME _type) if (UNIX) @@ -521,7 +522,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) endmacro (KDE4_ADD_EXECUTABLE _target_NAME) -MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty set(_first_SRC ${_lib_TYPE}) @@ -541,10 +542,10 @@ MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endif (${_lib_TYPE} STREQUAL "MODULE") if (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) - ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) else (KDE4_ENABLE_FINAL) - ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) endif (KDE4_ENABLE_FINAL) if (WIN32) @@ -554,11 +555,7 @@ MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) -ENDMACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) - - -MACRO (KDE4_CREATE_DOXYGEN_DOCS) -ENDMACRO (KDE4_CREATE_DOXYGEN_DOCS) +endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) MACRO (KDE4_ADD_WIDGET_FILES _sources) -- cgit v1.2.1 From da5e0b9c9fbefdfcf051c32258200e523ea6075f Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 2 May 2006 08:13:40 +0000 Subject: downgrade hard requirement again. using 2.4.1 is fine, but it shouldn't be mandatory svn path=/trunk/KDE/kdelibs/; revision=536450 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f2c74d63..94a4db16 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -178,7 +178,7 @@ # _KDE4_PLATFORM_DEFINITIONS is used only internally -cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) +cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR) set(QT_MIN_VERSION "4.1.1") #this line includes FindQt.cmake, which searches the Qt library and headers -- cgit v1.2.1 From 61296af743e161a9a95de7286e0731cb966c3a22 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 2 May 2006 19:03:47 +0000 Subject: Fix Qt version parsing to accept "4.1.3-snapshot-20060502" svn path=/trunk/KDE/kdelibs/; revision=536688 --- modules/FindQt4.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 5edc2efa..cd9924a6 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -203,18 +203,18 @@ IF (QT_QMAKE_EXECUTABLE) ENDIF (NOT req_qt_major_vers) # now parse the parts of the user given version string into variables - STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") IF (NOT req_qt_major_vers EQUAL 4) MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") ENDIF (NOT req_qt_major_vers EQUAL 4) # and now the version string given by qmake - STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" found_qt_major_vers "${QTVERSION}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" found_qt_minor_vers "${QTVERSION}") - STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" found_qt_patch_vers "${QTVERSION}") + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") # compute an overall version number which can be compared at once MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") -- cgit v1.2.1 From 43f64601e1197c1dfc4a7437c98eec67df4aedf5 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 3 May 2006 10:15:12 +0000 Subject: If the lib isn't there, xcursor isn't useable. This should probably be done for all others... svn path=/trunk/KDE/kdelibs/; revision=536875 --- modules/FindX11.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 95854dc1..aea1a5f7 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -151,10 +151,10 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xxf86misc_INCLUDE_PATH}) endif (X11_Xxf86misc_INCLUDE_PATH) - if (X11_Xcursor_INCLUDE_PATH) + if (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) set(X11_Xcursor_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcursor_INCLUDE_PATH}) - endif (X11_Xcursor_INCLUDE_PATH) + endif (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) if (X11_Xscreensaver_INCLUDE_PATH) set(X11_Xscreensaver_FOUND TRUE) -- cgit v1.2.1 From c9ed51d92f43326244b3cfdc3a63eae3e0c2c4a0 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Wed, 3 May 2006 11:36:59 +0000 Subject: Port the DONTPORT check. svn path=/trunk/KDE/kdelibs/; revision=536897 --- modules/FindKDE4Internal.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 94a4db16..62185afd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -423,6 +423,13 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) endif (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) + # avoid porting against kdelibs trunk + file(READ ${KDE4_INCLUDE_DIR}/kdeversion.h _contents) + string(REGEX MATCHALL "DONTPORT" _match "${_contents}") + if (_match) + message ( FATAL_ERROR "Don't port against this version of kdelibs! Use /branches/work/kdelibs4_snapshot instead!!" ) + endif (_match) + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) -- cgit v1.2.1 From cbad9fd217b1afa224fa9dc073739ad008d80384 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 3 May 2006 15:35:41 +0000 Subject: Added support for KDE_MIN_VERSION (modelled after QT_MIN_VERSION), and ported the "kdelibs trunk" check to use the same data, i.e. the output of kde-config. svn path=/trunk/KDE/kdelibs/; revision=536962 --- modules/FindKDE4Internal.cmake | 65 +++++++++++++++++++++++++++++++++--------- 1 file changed, 52 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 62185afd..b02b1324 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -177,7 +177,6 @@ # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally - cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR) set(QT_MIN_VERSION "4.1.1") @@ -281,6 +280,50 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set( _KDE4_KCONFIG_COMPILER_DEP) set( _KDE4_MAKEKDEWIDGETS_DEP) + # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 + EXEC_PROGRAM(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) + + STRING(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") + IF (KDEVERSION) + + # avoid porting against kdelibs trunk + string(REGEX MATCH "DONTPORT" _match "${kdeconfig_output}") + if (_match) + message ( FATAL_ERROR "ERROR: don't port against this version of kdelibs! Use /branches/work/kdelibs4_snapshot instead!!" ) + endif (_match) + + + # we need at least this version: + IF (NOT KDE_MIN_VERSION) + SET(KDE_MIN_VERSION "3.9.0") + ENDIF (NOT KDE_MIN_VERSION) + + #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") + + # now parse the parts of the user given version string into variables + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_kde_major_vers "${KDE_MIN_VERSION}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_kde_minor_vers "${KDE_MIN_VERSION}") + STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_kde_patch_vers "${KDE_MIN_VERSION}") + + # and now the version string given by kde-config + STRING(REGEX REPLACE "KDE: ([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_kde_major_vers "${KDEVERSION}") + STRING(REGEX REPLACE "KDE: [0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_kde_minor_vers "${KDEVERSION}") + STRING(REGEX REPLACE "KDE: [0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_kde_patch_vers "${KDEVERSION}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers "${req_kde_major_vers}*10000 + ${req_kde_minor_vers}*100 + ${req_kde_patch_vers}") + MATH(EXPR found_vers "${found_kde_major_vers}*10000 + ${found_kde_minor_vers}*100 + ${found_kde_patch_vers}") + + IF (found_vers LESS req_vers) + SET(KDE4_FOUND FALSE) + SET(KDE4_INSTALLED_VERSION_TOO_OLD TRUE) + ENDIF (found_vers LESS req_vers) + + ELSE (KDEVERSION) + message(FATAL_ERROR "Couldn't parse KDE version string from the kde-config output:\n${kdeconfig_output}") + ENDIF (KDEVERSION) + + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) @@ -423,13 +466,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) endif (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) - # avoid porting against kdelibs trunk - file(READ ${KDE4_INCLUDE_DIR}/kdeversion.h _contents) - string(REGEX MATCHALL "DONTPORT" _match "${_contents}") - if (_match) - message ( FATAL_ERROR "Don't port against this version of kdelibs! Use /branches/work/kdelibs4_snapshot instead!!" ) - endif (_match) - endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) @@ -586,11 +622,10 @@ include(KDE4Macros) # decide whether KDE4 has been found -if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) +set(KDE4_FOUND FALSE) +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) set(KDE4_FOUND TRUE) -else (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) - set(KDE4_FOUND FALSE) -endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) macro (KDE4_PRINT_RESULTS) @@ -633,7 +668,11 @@ endmacro (KDE4_PRINT_RESULTS) if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) #bail out if something wasn't found kde4_print_results() - message(FATAL_ERROR "Could NOT find everything required for compiling KDE 4 programs") + if (KDE4_INSTALLED_VERSION_TOO_OLD) + message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") + else (KDE4_INSTALLED_VERSION_TOO_OLD) + message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") + endif (KDE4_INSTALLED_VERSION_TOO_OLD) endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) -- cgit v1.2.1 From d1c21115c194859e484c2cba410adae1cbcb06b1 Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Wed, 3 May 2006 19:41:44 +0000 Subject: there is no single kcfg file in our SVN that needs signals. So don't create tons of invalid .moc files. For someone with more experience it would be cool to generate a flag as soon as there is a .kcfg file needing it svn path=/trunk/KDE/kdelibs/; revision=537048 --- modules/KDE4Macros.cmake | 4 ---- 1 file changed, 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4db3809a..5b899963 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -109,7 +109,6 @@ macro (KDE4_ADD_KCFG_FILES _sources) string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) # the command for creating the source file from the kcfg file add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} @@ -118,9 +117,6 @@ macro (KDE4_ADD_KCFG_FILES _sources) MAIN_DEPENDENCY ${_tmp_FILE} DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) - QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) - MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) - set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) endforeach (_current_FILE) -- cgit v1.2.1 From 435e8137197f589c92d61fd98f0b2b5600274aef Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Wed, 3 May 2006 20:20:18 +0000 Subject: I was told kopeteappearancesettings.kcfg has signals ;( Either we grep for it or we introduce a second macro svn path=/trunk/KDE/kdelibs/; revision=537064 --- modules/KDE4Macros.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 5b899963..4db3809a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -109,6 +109,7 @@ macro (KDE4_ADD_KCFG_FILES _sources) string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) # the command for creating the source file from the kcfg file add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} @@ -117,6 +118,9 @@ macro (KDE4_ADD_KCFG_FILES _sources) MAIN_DEPENDENCY ${_tmp_FILE} DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) + QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) + MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) + set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) endforeach (_current_FILE) -- cgit v1.2.1 From 2c551697e775004e287fd902ea53cfd3672dc1cb Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Thu, 4 May 2006 17:16:40 +0000 Subject: "su" just for unixes. svn path=/trunk/KDE/kdelibs/; revision=537389 --- modules/FindKDE4Internal.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b02b1324..ad0ccb80 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -366,8 +366,10 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KSPELL2_LIBRARY NAMES kspell2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KSPELL2_LIBS ${kspell2_LIB_DEPENDS} ${KDE4_KSPELL2_LIBRARY} ) - find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + if (UNIX) + find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + endif (UNIX) find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) -- cgit v1.2.1 From 5abb820acb3f67e5a121b22c428d0b5ab9e9e699 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 4 May 2006 20:40:17 +0000 Subject: ${LD_LIBRARY_PATH+:$LD_LIBRARY_PATH}, not ${LD_LIBRARY_PATH+:LD_LIBRARY_PATH} svn path=/trunk/KDE/kdelibs/; revision=537457 --- modules/kde4_exec_via_sh.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index c8060b9a..b105eb60 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -3,7 +3,7 @@ file(WRITE "${_filename}" "#!/bin/sh # created by cmake, don't edit, changes will be lost -${_library_path_variable}=${_ld_library_path}\${${_library_path_variable}+:${_library_path_variable}} \"${_executable}\" \"$@\" +${_library_path_variable}=${_ld_library_path}\${${_library_path_variable}+:\$${_library_path_variable}} \"${_executable}\" \"$@\" ") # make it executable -- cgit v1.2.1 From 3b050c47ec301264e5d380cf4e19f0fb7f397d1a Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 4 May 2006 21:30:40 +0000 Subject: Factorize the version-number parsing and checking code into a separate macro. Already used by the gpgme version check in kdepim. FindQt4 has similar code, but since it's a fork of a CMake module I'm not sure if I should modify it CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=537476 --- modules/FindKDE4Internal.cmake | 24 +++++------------------- modules/MacroEnsureVersion.cmake | 28 ++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 19 deletions(-) create mode 100644 modules/MacroEnsureVersion.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ad0ccb80..f37cdbb2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -177,6 +177,8 @@ # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally +INCLUDE (MacroEnsureVersion) + cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR) set(QT_MIN_VERSION "4.1.1") @@ -292,6 +294,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) message ( FATAL_ERROR "ERROR: don't port against this version of kdelibs! Use /branches/work/kdelibs4_snapshot instead!!" ) endif (_match) + STRING(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") # we need at least this version: IF (NOT KDE_MIN_VERSION) @@ -299,26 +302,9 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ENDIF (NOT KDE_MIN_VERSION) #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") - - # now parse the parts of the user given version string into variables - STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_kde_major_vers "${KDE_MIN_VERSION}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_kde_minor_vers "${KDE_MIN_VERSION}") - STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_kde_patch_vers "${KDE_MIN_VERSION}") - - # and now the version string given by kde-config - STRING(REGEX REPLACE "KDE: ([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_kde_major_vers "${KDEVERSION}") - STRING(REGEX REPLACE "KDE: [0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_kde_minor_vers "${KDEVERSION}") - STRING(REGEX REPLACE "KDE: [0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_kde_patch_vers "${KDEVERSION}") - - # compute an overall version number which can be compared at once - MATH(EXPR req_vers "${req_kde_major_vers}*10000 + ${req_kde_minor_vers}*100 + ${req_kde_patch_vers}") - MATH(EXPR found_vers "${found_kde_major_vers}*10000 + ${found_kde_minor_vers}*100 + ${found_kde_patch_vers}") - - IF (found_vers LESS req_vers) - SET(KDE4_FOUND FALSE) - SET(KDE4_INSTALLED_VERSION_TOO_OLD TRUE) - ENDIF (found_vers LESS req_vers) + MACRO_ENSURE_VERSION( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_TOO_OLD ) + ELSE (KDEVERSION) message(FATAL_ERROR "Couldn't parse KDE version string from the kde-config output:\n${kdeconfig_output}") ENDIF (KDEVERSION) diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake new file mode 100644 index 00000000..c2bcc448 --- /dev/null +++ b/modules/MacroEnsureVersion.cmake @@ -0,0 +1,28 @@ +# LGPL-v2, David Faure +# +# This macro compares version numbers of the form "x.y.z" +# MACRO_ENSURE_VERSION( ${FOO_MIN_VERSION} ${FOO_VERSION_FOUND} FOO_TOO_OLD) +# will set FOO_TOO_OLD to true if FOO_VERSION_FOUND < FOO_MIN_VERSION +# +MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) + + message(STATUS "requested_version=${requested_version} found_version=${found_version}") + + # parse the parts of the version strings + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_major_vers "${requested_version}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") + STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_patch_vers "${requested_version}") + + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") + STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers_num "${req_major_vers}*10000 + ${req_minor_vers}*100 + ${req_patch_vers}") + MATH(EXPR found_vers_num "${found_major_vers}*10000 + ${found_minor_vers}*100 + ${found_patch_vers}") + + if (found_vers_num LESS req_vers_num) + set( ${var_too_old} TRUE ) + endif (found_vers_num LESS req_vers_num) + +ENDMACRO(MACRO_ENSURE_VERSION) -- cgit v1.2.1 From 362e0eab35a569dbff7ab55555b47a9251118220 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Fri, 5 May 2006 08:56:43 +0000 Subject: Find dcopidl executable also on Windows. svn path=/trunk/KDE/kdelibs/; revision=537589 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f37cdbb2..55df5814 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -381,7 +381,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ) #now search for the dcop utilities - find_program(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl PATHS + find_program(KDE4_DCOPIDL_EXECUTABLE NAMES dcopidl dcopidl.bat PATHS ${KDE4_BIN_INSTALL_DIR} $ENV{KDEDIR}/bin /opt/kde/bin @@ -391,7 +391,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) ) if (NOT KDE4_DCOPIDL_EXECUTABLE) - find_program(KDE4_DCOPIDL_EXECUTABLE NAME dcopidl ) + find_program(KDE4_DCOPIDL_EXECUTABLE NAMES dcopidl dcopidl.bat ) endif (NOT KDE4_DCOPIDL_EXECUTABLE) -- cgit v1.2.1 From 574c77d59652e73a40e182834afcae1a82731502 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 9 May 2006 10:04:35 +0000 Subject: Requires 2.4.1 by default. svn path=/trunk/KDE/kdelibs/; revision=538916 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 55df5814..64964636 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -179,7 +179,7 @@ INCLUDE (MacroEnsureVersion) -cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR) +cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) set(QT_MIN_VERSION "4.1.1") #this line includes FindQt.cmake, which searches the Qt library and headers -- cgit v1.2.1 From 62ee1ad5a43204797c2843a74a6d0ce8c16e4fc7 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 9 May 2006 20:27:47 +0000 Subject: Abort if QtCore couldn't be found - for mikmak and his strange permission problem ;) svn path=/trunk/KDE/kdelibs/; revision=539150 --- modules/FindQt4.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index cd9924a6..a3d282ec 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -560,6 +560,12 @@ IF (QT4_QMAKE_FOUND) ENDIF (QT_USE_FRAMEWORKS) + IF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) + # Set QT_QTASSISTANT_LIBRARY FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From d46f0af3b68dba8e3bb5461c5b5e37862309875d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 11 May 2006 16:55:53 +0000 Subject: -enhanced syntax for KDE4_ADD_EXECUTABLE and KDE4_ADD_KDEINIT_EXECUTABLE: KDE4_ADD_EXECUTABLE(name [NOGUI] [RUN_UNINSTALLED] srcs...) KDE4_ADD_KDEINIT_EXECUTABLE(name [NOGUI] [RUN_UNINSTALLED] srcs...) -> NOGUI and RUN_UNINSTALLED can now be used independently together. This also means that RUN_UNINSTALLED no longer automatically means NOGUI. -build libs and plugins with empty RPATH, so they don't have to be relinked during make install Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=539757 --- modules/FindKDE4Internal.cmake | 30 +++++------ modules/FindQt4.cmake | 2 + modules/KDE4Macros.cmake | 118 +++++++++++++++++++++++++++++++---------- 3 files changed, 106 insertions(+), 44 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 64964636..c1657288 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -151,12 +151,17 @@ # If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. # It creates and installs an appropriate libtool la-file. # -# KDE4_ADD_KDEINIT_EXECUTABLE (name file1 ... fileN) +# KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) # Create a KDE application in the form of a module loadable via kdeinit. # A library named kdeinit_ will be created and a small executable which links to it. -# It supports KDE3_ENABLE_FINAL +# It supports KDE4_ENABLE_FINAL +# If the executable has to be run from the buildtree (e.g. unit tests and code generators +# used later on when compiling), set the option RUN_UNINSTALLED. +# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X +# application bundles are created, with the NOGUI option no bundles but simple executables +# are created. Currently it doesn't have any effect on other platforms. # -# KDE4_ADD_EXECUTABLE (name [ NOGUI | RUN_UNINSTALLED] file1 ... fileN) +# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) # Equivalent to ADD_EXECUTABLE(), but additionally adds support for KDE4_ENABLE_FINAL. # If you don't need support for KDE4_ENABLE_FINAL, you can just use the # normal ADD_EXECUTABLE(). @@ -353,8 +358,8 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_KSPELL2_LIBS ${kspell2_LIB_DEPENDS} ${KDE4_KSPELL2_LIBRARY} ) if (UNIX) - find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) endif (UNIX) find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) @@ -386,8 +391,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) $ENV{KDEDIR}/bin /opt/kde/bin /opt/kde4/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH + NO_DEFAULT_PATH ) if (NOT KDE4_DCOPIDL_EXECUTABLE) @@ -407,8 +411,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) $ENV{KDEDIR}/bin /opt/kde/bin /opt/kde4/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH + NO_DEFAULT_PATH ) if (NOT KDE4_DCOPIDL2CPP_EXECUTABLE) @@ -420,8 +423,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) $ENV{KDEDIR}/bin /opt/kde/bin /opt/kde4/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH + NO_DEFAULT_PATH ) if (NOT KDE4_KCFGC_EXECUTABLE) @@ -433,8 +435,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) $ENV{KDEDIR}/bin /opt/kde/bin /opt/kde4/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH + NO_DEFAULT_PATH ) if (NOT KDE4_MEINPROC_EXECUTABLE) @@ -446,8 +447,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) $ENV{KDEDIR}/bin /opt/kde/bin /opt/kde4/bin - NO_SYSTEM_PATH - NO_CMAKE_SYSTEM_PATH + NO_DEFAULT_PATH ) if (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a3d282ec..c559de44 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -716,6 +716,8 @@ IF (QT4_QMAKE_FOUND) COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${infile} DEPENDS ${infile}) + + MACRO_ADD_FILE_DEPENDENCIES(${infile} ${outfile}) ENDMACRO (QT4_GENERATE_MOC) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4db3809a..7da50edc 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -442,6 +442,10 @@ MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") endif (_first_SRC) + if (NOT CMAKE_SKIP_RPATH) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") + endif (NOT CMAKE_SKIP_RPATH) + # if (UNIX) # I guess under windows the libtool file are not required # KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) @@ -457,9 +461,62 @@ MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -MACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) +# this macro checks is intended to check whether a list of source +# files has the "NOGUI" or "RUN_UNINSTALLED" keywords at the beginning +# in _output_LIST the list of source files is returned with the "NOGUI" +# and "RUN_UNINSTALLED" keywords removed +# if "NOGUI" is in the list of files, the _nogui argument is set to +# "NOGUI" (which evaluates to TRUE in cmake), otherwise it is set empty +# (which evaluates to FALSE in cmake) +# if "RUN_UNINSTALLED" is in the list of files, the _uninst argument is set to +# "RUN_UNINSTALLED" (which evaluates to TRUE in cmake), otherwise it is set empty +# (which evaluates to FALSE in cmake) +MACRO(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) + set(${_nogui}) + set(${_uninst}) + set(${_output_LIST} ${ARGN}) + list(LENGTH ${_output_LIST} count) + + list(GET ${_output_LIST} 0 first_PARAM) + + set(second_PARAM "NOTFOUND") + if (${count} GREATER 1) + list(GET ${_output_LIST} 1 second_PARAM) + endif (${count} GREATER 1) + + set(remove "NOTFOUND") + + if (${first_PARAM} STREQUAL "NOGUI") + set(${_nogui} "NOGUI") + set(remove 0) + endif (${first_PARAM} STREQUAL "NOGUI") + + if (${second_PARAM} STREQUAL "NOGUI") + set(${_nogui} "NOGUI") + set(remove 0;1) + endif (${second_PARAM} STREQUAL "NOGUI") + + if (${first_PARAM} STREQUAL "RUN_UNINSTALLED") + set(${_uninst} "RUN_UNINSTALLED") + set(remove 0) + endif (${first_PARAM} STREQUAL "RUN_UNINSTALLED") + + if (${second_PARAM} STREQUAL "RUN_UNINSTALLED") + set(${_uninst} "RUN_UNINSTALLED") + set(remove 0;1) + endif (${second_PARAM} STREQUAL "RUN_UNINSTALLED") + + if (NOT "${remove}" STREQUAL "NOTFOUND") + list(REMOVE_ITEM ${_output_LIST} ${remove}) + endif (NOT "${remove}" STREQUAL "NOTFOUND") + +ENDMACRO(KDE4_CHECK_EXECUTABLE_PARAMS) + - CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) +macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) + + kde4_check_executable_params(_SRCS _nogui _uninst ${ARGN}) + configure_file(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) #MACRO_ADDITIONAL_CLEAN_FILES(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) # if (WIN32) @@ -468,24 +525,26 @@ MACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library if (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${ARGN}) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + if (NOT CMAKE_SKIP_RPATH) + set_target_properties(kdeinit_${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") + endif (NOT CMAKE_SKIP_RPATH) + else (KDE4_ENABLE_FINAL) - ADD_LIBRARY(kdeinit_${_target_NAME} SHARED ${ARGN} ) -# message(STATUS "klm: kdeinit_${_target_NAME}") + add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ) endif (KDE4_ENABLE_FINAL) - - ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - KDE4_HANDLE_RPATH(${_target_NAME} GUI) - TARGET_LINK_LIBRARIES(${_target_NAME} kdeinit_${_target_NAME}) + kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) # endif (WIN32) -ENDMACRO (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME) +endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) -macro (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) +macro (KDE4_ADD_EXECUTABLE _target_NAME) + + kde4_check_executable_params( _SRCS _nogui _uninst ${ARGN}) - set(_first_SRC ${_first_ARG} ) set(_add_executable_param) set(_type "GUI") @@ -498,31 +557,28 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME _first_ARG) # set(_add_executable_param WIN32) # endif (WIN32) - - if (${_first_ARG} STREQUAL "NOGUI") + if (_nogui) set(_type "NOGUI") - set(_first_SRC) set(_add_executable_param) - endif (${_first_ARG} STREQUAL "NOGUI") - if (${_first_ARG} STREQUAL "RUN_UNINSTALLED") + endif (_nogui) + + if (_uninst) set(_type "RUN_UNINSTALLED") - set(_first_SRC) - set(_add_executable_param) - endif (${_first_ARG} STREQUAL "RUN_UNINSTALLED") + endif (_uninst) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_SRCS}) add_executable(${_target_NAME} ${_add_executable_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) else (KDE4_ENABLE_FINAL) - add_executable(${_target_NAME} ${_add_executable_param} ${_first_SRC} ${ARGN} ) + add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS} ) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath(${_target_NAME} ${_type}) -endmacro (KDE4_ADD_EXECUTABLE _target_NAME) +endmacro (KDE4_ADD_EXECUTABLE) -macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty set(_first_SRC ${_lib_TYPE}) @@ -542,12 +598,16 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endif (${_lib_TYPE} STREQUAL "MODULE") if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) - add_library(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) + ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) else (KDE4_ENABLE_FINAL) - add_library(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) + ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) endif (KDE4_ENABLE_FINAL) + if (NOT CMAKE_SKIP_RPATH) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") + endif (NOT CMAKE_SKIP_RPATH) + if (WIN32) # for shared libraries a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) @@ -555,7 +615,7 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) -endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +ENDMACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) MACRO (KDE4_ADD_WIDGET_FILES _sources) -- cgit v1.2.1 From a1cd53cff402332c1bcf7a625b33d9330a247608 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 11 May 2006 16:56:59 +0000 Subject: Remove my CACHED_ hacks which break when people install libxml2 after seeing the error message about it - only use the cache when the check was previously successful, as discussed. svn path=/trunk/KDE/kdelibs/; revision=539759 --- modules/FindAGG.cmake | 14 ++++---------- modules/FindCups.cmake | 14 +++++--------- modules/FindGSSAPI.cmake | 19 ++++--------------- modules/FindGettext.cmake | 14 ++++---------- modules/FindLibArt.cmake | 14 ++++---------- modules/FindLibXml2.cmake | 15 ++++----------- modules/FindLibXslt.cmake | 14 ++++---------- modules/FindOpenEXR.cmake | 25 +++++++++++-------------- modules/FindOpenSSL.cmake | 15 ++++----------- 9 files changed, 44 insertions(+), 100 deletions(-) (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index cf336f40..6bd92578 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -7,14 +7,12 @@ # AGG_DEFINITIONS - Compiler switches required for using AGG # -IF (DEFINED CACHED_AGG) +if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) # in cache already - IF ("${CACHED_AGG}" STREQUAL "YES") - SET(AGG_FOUND TRUE) - ENDIF ("${CACHED_AGG}" STREQUAL "YES") + SET(AGG_FOUND TRUE) -ELSE (DEFINED CACHED_AGG) +else (AGG_INCLUDE_DIR AND AGG_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls @@ -42,12 +40,10 @@ ELSE (DEFINED CACHED_AGG) endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) if (AGG_FOUND) - set(CACHED_AGG "YES") if (NOT AGG_FIND_QUIETLY) message(STATUS "Found AGG: ${AGG_LIBRARIES}") endif (NOT AGG_FIND_QUIETLY) else (AGG_FOUND) - set(CACHED_AGG "NO") if (AGG_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find AGG") endif (AGG_FIND_REQUIRED) @@ -55,6 +51,4 @@ ELSE (DEFINED CACHED_AGG) MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) - set(CACHED_AGG ${CACHED_AGG} CACHE INTERNAL "If libagg was checked") - -ENDIF (DEFINED CACHED_AGG) +endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 387d82d9..5f63870a 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -7,14 +7,12 @@ # CUPS_DEFINITIONS - Compiler switches required for using Cups # -IF (DEFINED CACHED_CUPS) +if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) # in cache already - IF ("${CACHED_CUPS}" STREQUAL "YES") - SET(CUPS_FOUND TRUE) - ENDIF ("${CACHED_CUPS}" STREQUAL "YES") + SET(CUPS_FOUND TRUE) -ELSE (DEFINED CACHED_CUPS) +else (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h /usr/include @@ -33,18 +31,16 @@ ELSE (DEFINED CACHED_CUPS) endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) if (CUPS_FOUND) - set (CACHED_CUPS "YES") if (NOT Cups_FIND_QUIETLY) message(STATUS "Found Cups: ${CUPS_LIBRARIES}") endif (NOT Cups_FIND_QUIETLY) else (CUPS_FOUND) - set (CACHED_CUPS "NO") + set(CUPS_LIBRARIES ) if (Cups_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find Cups") endif (Cups_FIND_REQUIRED) endif (CUPS_FOUND) - set(CACHED_CUPS ${CACHED_CUPS} CACHE INTERNAL "If cups was checked") MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) -ENDIF (DEFINED CACHED_CUPS) +endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index a89d6181..8fd65a18 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -6,14 +6,12 @@ # GSSAPI_LIBS - the libraries needed to use GSSAPI # GSSAPI_FLAVOR - the type of API - MIT or HEIMDAL -IF (DEFINED CACHED_GSSAPI) +IF(GSSAPI_LIBS AND GSSAPI_FLAVOR) # in cache already - IF ("${CACHED_GSSAPI}" STREQUAL "YES") - SET(GSSAPI_FOUND TRUE) - ENDIF ("${CACHED_GSSAPI}" STREQUAL "YES") + SET(GSSAPI_FOUND TRUE) -ELSE (DEFINED CACHED_GSSAPI) +ELSE(GSSAPI_LIBS AND GSSAPI_FLAVOR) FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS /usr/bin @@ -43,7 +41,6 @@ ELSE (DEFINED CACHED_GSSAPI) ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that - SET(CACHED_GSSAPI "YES") SET(GSSAPI_FOUND TRUE) message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") @@ -53,16 +50,8 @@ ELSE (DEFINED CACHED_GSSAPI) MARK_AS_ADVANCED(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) - ELSE(GSSAPI_LIBS) - SET(CACHED_GSSAPI "NO") ENDIF(GSSAPI_LIBS) - ELSE(KRB5_CONFIG) - - SET(CACHED_GSSAPI "NO") - ENDIF(KRB5_CONFIG) - - set(CACHED_GSSAPI ${CACHED_GSSAPI} CACHE INTERNAL "If gssapi (krb5) was checked") -ENDIF (DEFINED CACHED_GSSAPI) +ENDIF(GSSAPI_LIBS AND GSSAPI_FLAVOR) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index fccd332f..e4dda701 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -10,14 +10,12 @@ # functionality can also reside in standalone Gettext library, or the one # embedded within kdelibs (cf. gettext.m4 from Gettext source). -IF (DEFINED CACHED_GETTEXT) +if (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) # in cache already - IF ("${CACHED_GETTEXT}" STREQUAL "YES") - SET(GETTEXT_FOUND TRUE) - ENDIF ("${CACHED_GETTEXT}" STREQUAL "YES") + SET(GETTEXT_FOUND TRUE) -ELSE (DEFINED CACHED_GETTEXT) +else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) include(CheckIncludeFiles) include(CheckLibraryExists) @@ -49,19 +47,15 @@ ELSE (DEFINED CACHED_GETTEXT) endif (HAVE_LIBINTL_H) if (GETTEXT_FOUND) - set(CACHED_GETTEXT "YES") if (NOT Gettext_FIND_QUIETLY) message(STATUS "Found Gettext: ${GETTEXT_SOURCE}") endif (NOT Gettext_FIND_QUIETLY) else (GETTEXT_FOUND) if (Gettext_FIND_REQUIRED) message(STATUS "Could NOT find Gettext") - else (Gettext_FIND_REQUIRED) - set(CACHED_GETTEXT "NO") endif (Gettext_FIND_REQUIRED) endif (GETTEXT_FOUND) - set(CACHED_GETTEXT ${CACHED_GETTEXT} CACHE INTERNAL "If gettext was checked") MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) -ENDIF(DEFINED CACHED_GETTEXT) +endif (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index b74da7ee..38f43e5d 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -5,14 +5,12 @@ # LIBART_INCLUDE_DIR - the LibArt include directory # LIBART_LIBRARIES - The libraries needed to use LibArt -IF (DEFINED CACHED_LIBART) +if (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) # in cache already - IF ("${CACHED_LIBART}" STREQUAL "YES") - SET(LIBART_FOUND TRUE) - ENDIF ("${CACHED_LIBART}" STREQUAL "YES") + SET(LIBART_FOUND TRUE) -ELSE (DEFINED CACHED_LIBART) +else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) IF (NOT WIN32) INCLUDE(UsePkgConfig) @@ -40,9 +38,6 @@ ELSE (DEFINED CACHED_LIBART) if (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) set(LIBART_FOUND TRUE) - set(CACHED_LIBART "YES") - else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) - set(CACHED_LIBART "NO") endif (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) @@ -56,7 +51,6 @@ ELSE (DEFINED CACHED_LIBART) endif (LibArt_FIND_REQUIRED) endif (LIBART_FOUND) - set(CACHED_LIBART ${CACHED_LIBART} CACHE INTERNAL "If libart was checked") MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) -ENDIF (DEFINED CACHED_LIBART) +endif (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 2e671eea..29682e07 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -6,14 +6,12 @@ # LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 -IF (DEFINED CACHED_LIBXML2) +if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) # in cache already - IF ("${CACHED_LIBXML2}" STREQUAL "YES") - SET(LIBXML2_FOUND TRUE) - ENDIF ("${CACHED_LIBXML2}" STREQUAL "YES") + SET(LIBXML2_FOUND TRUE) -ELSE (DEFINED CACHED_LIBXML2) +else (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -36,9 +34,6 @@ ELSE (DEFINED CACHED_LIBXML2) if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) set(LIBXML2_FOUND TRUE) - set(CACHED_LIBXML2 "YES") - else (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - set(CACHED_LIBXML2 "NO") endif (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) if (LIBXML2_FOUND) @@ -53,6 +48,4 @@ ELSE (DEFINED CACHED_LIBXML2) MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) - SET(CACHED_LIBXML2 ${CACHED_LIBXML2} CACHE INTERNAL "If libxml2 was checked") - -ENDIF (DEFINED CACHED_LIBXML2) +endif (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index afac1f2f..d71cca22 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -7,14 +7,12 @@ # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # -IF (DEFINED CACHED_LIBXSLT) +if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) # in cache already - IF ("${CACHED_LIBXSLT}" STREQUAL "YES") - SET(LIBXSLT_FOUND TRUE) - ENDIF ("${CACHED_LIBXSLT}" STREQUAL "YES") + SET(LIBXSLT_FOUND TRUE) -ELSE (DEFINED CACHED_LIBXSLT) +else (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -39,9 +37,6 @@ ELSE (DEFINED CACHED_LIBXSLT) if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) set(LIBXSLT_FOUND TRUE) - set(CACHED_LIBXSLT "YES") - else (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - set(CACHED_LIBXSLT "NO") endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) if (LIBXSLT_FOUND) @@ -54,7 +49,6 @@ ELSE (DEFINED CACHED_LIBXSLT) endif (LibXslt_FIND_REQUIRED) endif (LIBXSLT_FOUND) - set(CACHED_LIBXSLT ${CACHED_LIBXSLT} CACHE INTERNAL "If libxslt was checked") MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) -ENDIF (DEFINED CACHED_LIBXSLT) +endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index a139a430..34620674 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -1,13 +1,16 @@ +# Try to find the OpenEXR libraries +# This check defines: +# +# OPENEXR_FOUND - system has OpenEXR +# OPENEXR_INCLUDE_DIR - OpenEXR include directory +# OPENEXR_LIBRARIES - Libraries needed to use OpenEXR -IF (DEFINED CACHED_OPENEXR) - +if (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) # in cache already - IF ("${CACHED_OPENEXR}" STREQUAL "YES") - SET(OPENEXR_FOUND TRUE) - ENDIF ("${CACHED_OPENEXR}" STREQUAL "YES") + SET(OPENEXR_FOUND TRUE) -ELSE (DEFINED CACHED_OPENEXR) +else (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls @@ -52,9 +55,7 @@ ELSE (DEFINED CACHED_OPENEXR) /usr/local/lib ) - set(OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) - - if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) set(OPENEXR_FOUND TRUE) set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) @@ -62,12 +63,10 @@ ELSE (DEFINED CACHED_OPENEXR) if (OPENEXR_FOUND) - set(CACHED_OPENEXR "YES") if (NOT OpenEXR_FIND_QUIETLY) message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") endif (NOT OpenEXR_FIND_QUIETLY) else (OPENEXR_FOUND) - set(CACHED_OPENEXR "NO") if (OpenEXR_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find OPENEXR") endif (OpenEXR_FIND_REQUIRED) @@ -81,6 +80,4 @@ ELSE (DEFINED CACHED_OPENEXR) OPENEXR_IEX_LIBRARY OPENEXR_HALF_LIBRARY ) - set(CACHED_OPENEXR ${CACHED_OPENEXR} CACHE INTERNAL "If openexr was checked") - -ENDIF (DEFINED CACHED_OPENEXR) +endif (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index fde22a84..ed2f4045 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -5,14 +5,12 @@ # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL -IF (DEFINED CACHED_OPENSSL) +if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) # in cache already - IF ("${CACHED_OPENSSL}" STREQUAL "YES") - SET(OPENSSL_FOUND TRUE) - ENDIF ("${CACHED_OPENSSL}" STREQUAL "YES") + SET(OPENSSL_FOUND TRUE) -ELSE (DEFINED CACHED_OPENSSL) +else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/include/ @@ -27,12 +25,8 @@ ELSE (DEFINED CACHED_OPENSSL) if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) set(OPENSSL_FOUND TRUE) - set(CACHED_OPENSSL "YES") - else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - set(CACHED_OPENSSL "NO") endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - if (OPENSSL_FOUND) if (NOT OpenSSL_FIND_QUIETLY) message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") @@ -43,7 +37,6 @@ ELSE (DEFINED CACHED_OPENSSL) endif (OpenSSL_FIND_REQUIRED) endif (OPENSSL_FOUND) - set(CACHED_OPENSSL ${CACHED_OPENSSL} CACHE INTERNAL "If openssl was checked") MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) -ENDIF (DEFINED CACHED_OPENSSL) +endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) -- cgit v1.2.1 From 35a85527e19dcfbc67bea3774bd6ac0383a2f7ff Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 11 May 2006 20:44:24 +0000 Subject: remove debugging message. aleXXX said it was ok. svn path=/trunk/KDE/kdelibs/; revision=539852 --- modules/MacroEnsureVersion.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index c2bcc448..89047307 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -6,8 +6,6 @@ # MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) - message(STATUS "requested_version=${requested_version} found_version=${found_version}") - # parse the parts of the version strings STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_major_vers "${requested_version}") STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") -- cgit v1.2.1 From 85021f2518dceb4b6bfbd8e184431027af671836 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 12 May 2006 18:46:21 +0000 Subject: -kde4_header() and footer are gone Alex svn path=/trunk/KDE/kdelibs/; revision=540234 --- modules/FindKDE4Internal.cmake | 10 ---------- modules/KDE4Macros.cmake | 10 ---------- 2 files changed, 20 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c1657288..418541df 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -124,16 +124,6 @@ # from FindQt4.cmake to have the moc files generated. This will be faster # but require more manual work. # -# KDE4_HEADER() -# This is a macro which is currently empty. -# It is automatically inserted by the am2cmake script at the top -# of each converted CMakeLists.txt -# -# KDE4_FOOTER() -# This is a macro which is currently empty. -# It is automatically inserted by the am2cmake script at the end -# of each converted CMakeLists.txt -# # KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) # This will create and install a simple libtool file for the # given target. This might be required for other software. diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7da50edc..75a8e8db 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -318,16 +318,6 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) ENDMACRO (KDE4_INSTALL_ICONS) -# for the case that something should be added to every CMakeLists.txt at the top -MACRO (KDE4_HEADER) -ENDMACRO (KDE4_HEADER) - - -# same as above, but at the end -MACRO (KDE4_FOOTER) -ENDMACRO (KDE4_FOOTER) - - MACRO (KDE4_INSTALL_LIBTOOL_FILE _subdir _target) GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) -- cgit v1.2.1 From f6f5908cfe66fbfe3264ff49654d4cc2cea8fd6d Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Fri, 12 May 2006 18:51:17 +0000 Subject: use 4.0.0 (KDE 4.0) as a default library version svn path=/trunk/KDE/kdelibs/; revision=540239 --- modules/KDE4Defaults.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 582e44c0..cfec6756 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -20,6 +20,6 @@ set(CMAKE_COLOR_MAKEFILE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes -set(GENERIC_LIB_VERSION "5.0.0") -set(GENERIC_LIB_SOVERSION "5") +set(GENERIC_LIB_VERSION "4.0.0") +set(GENERIC_LIB_SOVERSION "4") -- cgit v1.2.1 From cf37d2b2f602910dbd5ad7bf3e4532e90a009840 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 13 May 2006 02:58:18 +0000 Subject: shhh! if FAM found in cache. svn path=/trunk/KDE/kdelibs/; revision=540331 --- modules/FindFAM.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index 164841c8..e0a92b72 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -5,6 +5,11 @@ # FAM_INCLUDE_DIR - the FAM include directory # FAM_LIBRARIES - The libraries needed to use FAM +if (FAM_INCLUDE_DIR) + # Already in cache, be silent + set(FAM_FIND_QUIETLY TRUE) +endif (FAM_INCLUDE_DIR) + FIND_PATH(FAM_INCLUDE_DIR fam.h /usr/include /usr/local/include -- cgit v1.2.1 From b8e571ba8a53bc1c6f63e06deaa1f1db16b2fcb7 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 13 May 2006 03:02:56 +0000 Subject: First attempt at support for the Intel C/C++ compilers. Still to-do: - shared and module linker flags - visibility support - shutup lots of harmless, annoying remarks To play with this: - install Intel C/C++ compilers. - set $PATH and $LD_LIBRARY_PATH correctly for the new stuff - export CC=icc; export CXX=icpc - mkdir kdelibs/build-icpc - cd kdelibs/build-icpc - cmake .. svn path=/trunk/KDE/kdelibs/; revision=540332 --- modules/FindKDE4Internal.cmake | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 418541df..4a22d1c2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -547,9 +547,18 @@ endif (APPLE) if (CMAKE_SYSTEM_NAME MATCHES Linux) - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + if (CMAKE_COMPILER_IS_GNUCXX) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + endif (CMAKE_COMPILER_IS_GNUCXX) + if (CMAKE_C_COMPILER MATCHES "icc") + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) +# set ( CMAKE_SHARED_LINKER_FLAGS "-Qoption,ld,--fatal-warnings -avoid-version --no-undefined -lc") +# set ( CMAKE_MODULE_LINKER_FLAGS "-Qoption,ld,--fatal-warnings -avoid-version --no-undefined -lc") + set ( CMAKE_SHARED_LINKER_FLAGS "") + set ( CMAKE_MODULE_LINKER_FLAGS "") + endif (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_SYSTEM_NAME MATCHES BSD) @@ -589,6 +598,31 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (CMAKE_COMPILER_IS_GNUCXX) +if (CMAKE_C_COMPILER MATCHES "icc") + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + # Select flags. + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") + + if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wall -Wpointer-arith") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wall -Wpointer-arith -fno-exceptions") + endif (CMAKE_SYSTEM_NAME MATCHES Linux) + + # visibility support +# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) +# if (__KDE_HAVE_GCC_VISIBILITY) +# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") +# endif (__KDE_HAVE_GCC_VISIBILITY) + +endif (CMAKE_C_COMPILER MATCHES "icc") + # it seems we prefer not to use a different postfix for debug libs, Alex # SET(CMAKE_DEBUG_POSTFIX "_debug") -- cgit v1.2.1 From 5122b9d5277cf5a0ad6cd20eace8db8c40902be2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 14 May 2006 20:41:44 +0000 Subject: search for debug version (kdewin32d.lib) when compiling with msvc CCMAIL:neundorf@kde.org CCMAIL:Ch.Ehrlicher@gmx.de svn path=/trunk/KDE/kdelibs/; revision=540864 --- modules/FindKDEWIN32.cmake | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 301f756f..f9fa2aec 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -20,9 +20,15 @@ FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) -FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 - PATHS - ${_program_FILES_DIR}/kdewin32/lib +if (MSVC) + set(_KDEWIN32_POSTFIX d) +else (MSVC) + set(_KDEWIN32_POSTFIX ) +endif (MSVC) + +FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32${_KDEWIN32_POSTFIX} + PATHS + ${_program_FILES_DIR}/kdewin32/lib ) -- cgit v1.2.1 From b5acfca94192e6e438221edd4c70eab4741f359e Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Mon, 15 May 2006 12:41:06 +0000 Subject: Have build type in consideration. CCMAIL: Peter Kummel [syntheticpp@gmx.net] svn path=/trunk/KDE/kdelibs/; revision=541049 --- modules/FindKDEWIN32.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index f9fa2aec..6bd8b9d3 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -20,11 +20,11 @@ FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) -if (MSVC) +if (MSVC AND CMAKE_BUILD_TYPE MATCHES Debug) set(_KDEWIN32_POSTFIX d) -else (MSVC) +else (MSVC AND CMAKE_BUILD_TYPE MATCHES Debug) set(_KDEWIN32_POSTFIX ) -endif (MSVC) +endif (MSVC AND CMAKE_BUILD_TYPE MATCHES Debug) FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32${_KDEWIN32_POSTFIX} PATHS -- cgit v1.2.1 From 14f067d7391b81094423fd71eb0b57920036eccf Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Mon, 15 May 2006 15:21:32 +0000 Subject: This is valid not only for msvc. CCMAIL: Peter Kummel [syntheticpp@gmx.net] svn path=/trunk/KDE/kdelibs/; revision=541109 --- modules/FindKDEWIN32.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 6bd8b9d3..c3e76947 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -20,11 +20,11 @@ FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) -if (MSVC AND CMAKE_BUILD_TYPE MATCHES Debug) +if (CMAKE_BUILD_TYPE MATCHES Debug) set(_KDEWIN32_POSTFIX d) -else (MSVC AND CMAKE_BUILD_TYPE MATCHES Debug) +else (CMAKE_BUILD_TYPE MATCHES Debug) set(_KDEWIN32_POSTFIX ) -endif (MSVC AND CMAKE_BUILD_TYPE MATCHES Debug) +endif (CMAKE_BUILD_TYPE MATCHES Debug) FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32${_KDEWIN32_POSTFIX} PATHS -- cgit v1.2.1 From 7084c97f730e23b18e38ffe0b1ac59246743c4f2 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 15 May 2006 19:33:28 +0000 Subject: Shh! if found in cache. svn path=/trunk/KDE/kdelibs/; revision=541233 --- modules/FindSasl2.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index 4d941806..b790f57d 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -5,6 +5,11 @@ # SASL2_INCLUDE_DIR - the SASL2 include directory # SASL2_LIBRARIES - The libraries needed to use SASL2 +if (SASL2_INCLUDE_DIR) + # Already in cache, be silent + set(SASL2_FIND_QUIETLY TRUE) +endif (SASL2_INCLUDE_DIR) + FIND_PATH(SASL2_INCLUDE_DIR sasl/sasl.h /usr/include /usr/local/include -- cgit v1.2.1 From a05810fcda22bbf60e671398da40159cb670601c Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 15 May 2006 23:12:31 +0000 Subject: -avoid-version was a libtool option, don't pass it to the linker svn path=/trunk/KDE/kdelibs/; revision=541334 --- modules/FindKDE4Internal.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4a22d1c2..d4b31feb 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -549,13 +549,13 @@ endif (APPLE) if (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_COMPILER_IS_GNUCXX) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc") + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings-Wl,--no-undefined -lc") endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) -# set ( CMAKE_SHARED_LINKER_FLAGS "-Qoption,ld,--fatal-warnings -avoid-version --no-undefined -lc") -# set ( CMAKE_MODULE_LINKER_FLAGS "-Qoption,ld,--fatal-warnings -avoid-version --no-undefined -lc") +# set ( CMAKE_SHARED_LINKER_FLAGS "-Qoption,ld,--fatal-warnings --no-undefined -lc") +# set ( CMAKE_MODULE_LINKER_FLAGS "-Qoption,ld,--fatal-warnings --no-undefined -lc") set ( CMAKE_SHARED_LINKER_FLAGS "") set ( CMAKE_MODULE_LINKER_FLAGS "") endif (CMAKE_C_COMPILER MATCHES "icc") @@ -563,8 +563,8 @@ endif (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - set ( CMAKE_SHARED_LINKER_FLAGS "-avoid-version -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-avoid-version -lc") + set ( CMAKE_SHARED_LINKER_FLAGS "-lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-lc") endif (CMAKE_SYSTEM_NAME MATCHES BSD) # compiler specific stuff, maybe this should be done differently, Alex -- cgit v1.2.1 From 85ad9ba5a38f14b3064d5832a8d6e90be3c79c4e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 16 May 2006 00:57:34 +0000 Subject: typo svn path=/trunk/KDE/kdelibs/; revision=541352 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d4b31feb..d42b28fa 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -550,7 +550,7 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_COMPILER_IS_GNUCXX) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings-Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) -- cgit v1.2.1 From bb19c2a64367b530e5c6f55d07da5c7fc4149823 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Tue, 16 May 2006 08:10:44 +0000 Subject: Better. Only msvc requires same build type (release/debug). CCMAIL: Peter Kummel [syntheticpp@gmx.net] svn path=/trunk/KDE/kdelibs/; revision=541416 --- modules/FindKDEWIN32.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index c3e76947..a71ba499 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -31,6 +31,13 @@ FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32${_KDEWIN32_POSTFIX} ${_program_FILES_DIR}/kdewin32/lib ) +if (NOT KDEWIN32_LIBRARY AND NOT MSVC) + # We can mix release/debug builds + FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 kdewin32d + PATHS + ${_program_FILES_DIR}/kdewin32/lib + ) +endif (NOT KDEWIN32_LIBRARY AND NOT MSVC) # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ -- cgit v1.2.1 From ca1a3bc8885a44fec51e8fb2b3d53bc1fc9dda35 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Tue, 16 May 2006 11:48:43 +0000 Subject: Even better. Suggested by Peter. CCMAIL: Peter Kummel [syntheticpp@gmx.net] svn path=/trunk/KDE/kdelibs/; revision=541478 --- modules/FindKDEWIN32.cmake | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index a71ba499..98c4f5db 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -20,24 +20,21 @@ FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) -if (CMAKE_BUILD_TYPE MATCHES Debug) - set(_KDEWIN32_POSTFIX d) -else (CMAKE_BUILD_TYPE MATCHES Debug) - set(_KDEWIN32_POSTFIX ) -endif (CMAKE_BUILD_TYPE MATCHES Debug) +set(_KDEWIN32_SEARCHNAMES kdewin32 kdewin32d) -FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32${_KDEWIN32_POSTFIX} - PATHS - ${_program_FILES_DIR}/kdewin32/lib -) +#overwrite when using msvc, which cannot mix debug/release libraries +if(MSVC) + if(CMAKE_BUILD_TYPE MATCHES Debug) + set(_KDEWIN32_SEARCHNAMES kdewin32d ) + else(CMAKE_BUILD_TYPE MATCHES Debug) + set(_KDEWIN32_SEARCHNAMES kdewin32 ) + endif(CMAKE_BUILD_TYPE MATCHES Debug) +endif(MSVC) -if (NOT KDEWIN32_LIBRARY AND NOT MSVC) - # We can mix release/debug builds - FIND_LIBRARY(KDEWIN32_LIBRARY NAMES kdewin32 kdewin32d - PATHS - ${_program_FILES_DIR}/kdewin32/lib - ) -endif (NOT KDEWIN32_LIBRARY AND NOT MSVC) +FIND_LIBRARY(KDEWIN32_LIBRARY NAMES ${_KDEWIN32_SEARCHNAMES} + PATHS + ${_program_FILES_DIR}/kdewin32/lib +) # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ -- cgit v1.2.1 From 17bafed3abdc05904daed120fc22baf262dd16a3 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Tue, 16 May 2006 11:55:39 +0000 Subject: Taken from cmake cvs. This fixes moc and uic for msys. svn path=/trunk/KDE/kdelibs/; revision=541480 --- modules/FindQt4.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index c559de44..2ae35870 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -648,8 +648,8 @@ IF (QT4_QMAKE_FOUND) # find moc and uic using qmake FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake/tmp.pro - "message("MOC <$$QMAKE_MOC>") - message("UIC <$$QMAKE_UIC>") + "message("MOC <$$QMAKE_MOC>") + message("UIC <$$QMAKE_UIC>") ") EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} @@ -662,6 +662,9 @@ IF (QT4_QMAKE_FOUND) STRING(REGEX REPLACE ".*MOC<([^>]+).*" "\\1" QT_MOC_EXECUTABLE "${_moc_OUTPUT}" ) STRING(REGEX REPLACE ".*UIC<([^>]+).*" "\\1" QT_UIC_EXECUTABLE "${_moc_OUTPUT}" ) + FILE(TO_CMAKE_PATH "${QT_MOC_EXECUTABLE}" QT_MOC_EXECUTABLE) + FILE(TO_CMAKE_PATH "${QT_UIC_EXECUTABLE}" QT_UIC_EXECUTABLE) + SET(QT_MOC_EXECUTABLE ${QT_MOC_EXECUTABLE} CACHE FILEPATH "The moc executable") SET(QT_UIC_EXECUTABLE ${QT_UIC_EXECUTABLE} CACHE FILEPATH "The uic executable") -- cgit v1.2.1 From bd90de050a89ae64b0f38b2f263d8d00196988ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Tue, 16 May 2006 14:06:59 +0000 Subject: fix install Date: Tue, 16 May 2006 16:11:04 +0000 Subject: more work to get the Intel compilers fully supported. still not all the way done, but getting closer. svn path=/trunk/KDE/kdelibs/; revision=541571 --- modules/FindKDE4Internal.cmake | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5fe2dca0..e2490b0e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -557,10 +557,8 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) -# set ( CMAKE_SHARED_LINKER_FLAGS "-Qoption,ld,--fatal-warnings --no-undefined -lc") -# set ( CMAKE_MODULE_LINKER_FLAGS "-Qoption,ld,--fatal-warnings --no-undefined -lc") - set ( CMAKE_SHARED_LINKER_FLAGS "") - set ( CMAKE_MODULE_LINKER_FLAGS "") + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") endif (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_SYSTEM_NAME MATCHES Linux) @@ -606,23 +604,21 @@ if (CMAKE_C_COMPILER MATCHES "icc") # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") + set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - if (CMAKE_SYSTEM_NAME MATCHES Linux) - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wall -Wpointer-arith") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wall -Wpointer-arith -fno-exceptions") - endif (CMAKE_SYSTEM_NAME MATCHES Linux) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -no-gcc -Wpointer-arith -fno-common") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -no-gcc -Wpointer-arith -fno-exceptions -fno-common") # visibility support -# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) -# if (__KDE_HAVE_GCC_VISIBILITY) +# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_ICC_VISIBILITY) +# if (__KDE_HAVE_ICC_VISIBILITY) # set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") -# endif (__KDE_HAVE_GCC_VISIBILITY) +# endif (__KDE_HAVE_ICC_VISIBILITY) endif (CMAKE_C_COMPILER MATCHES "icc") -- cgit v1.2.1 From 6647ff1200e2493e4dffd898c17c953fec3483a6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 16 May 2006 16:54:31 +0000 Subject: -a new cmake module which contains two macros: MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL) Logs the information so that it can be displayed at the end of the configure run VAR : variable which is TRUE or FALSE indicating whether the feature is supported FEATURE: name of the feature, e.g. "libjpeg" DESCRIPTION: description what this feature provides URL: home page MACRO_DISPLAY_FEATURE_LOG() Call this at the end of the toplevel CMakeLists.txt to display the collected results Example: INCLUDE(MacroLogFeature) FIND_PACKAGE(JPEG) MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org") ... MACRO_DISPLAY_FEATURE_LOG() Alex CCMAIL:kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=541576 --- modules/MacroLogFeature.cmake | 58 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 modules/MacroLogFeature.cmake (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake new file mode 100644 index 00000000..dcb3c731 --- /dev/null +++ b/modules/MacroLogFeature.cmake @@ -0,0 +1,58 @@ +# This file defines two macros: +# MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL) +# Logs the information so that it can be displayed at the end +# of the configure run +# VAR : variable which is TRUE or FALSE indicating whether the feature is supported +# FEATURE: name of the feature, e.g. "libjpeg" +# DESCRIPTION: description what this feature provides +# URL: home page +# +# MACRO_DISPLAY_FEATURE_LOG() +# Call this at the end of the toplevel CMakeLists.txt to display the collected results +# +# Example: +# +# INCLUDE(MacroLogFeature) +# +# FIND_PACKAGE(JPEG) +# MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org") +# ... +# MACRO_DISPLAY_FEATURE_LOG() + + + +MACRO(MACRO_LOG_FEATURE _var _package _description _url) + + IF (NOT EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") + FILE(WRITE "${CMAKE_BINARY_DIR}/EnabledFeatures.txt" "\n") + ENDIF (NOT EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") + + IF (NOT EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") + FILE(WRITE "${CMAKE_BINARY_DIR}/DisabledFeatures.txt" "\n") + ENDIF (NOT EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") + + + IF (${_var}) + SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + ELSE (${_var}) + SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) + ENDIF (${_var}) + + FILE(APPEND "${_LOGFILENAME}" "PACKAGE: ${_package}\nDESCRIPTION: ${_description}\nURL: ${_url}\n\n") + +ENDMACRO(MACRO_LOG_FEATURE) + + +MACRO(MACRO_DISPLAY_FEATURE_LOG) + IF (EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") + FILE(READ ${CMAKE_BINARY_DIR}/EnabledFeatures.txt _features) + MESSAGE(STATUS "Enabled features:\n${_features}") + FILE(REMOVE ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) + ENDIF (EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") + + IF (EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") + FILE(READ ${CMAKE_BINARY_DIR}/DisabledFeatures.txt _features) + MESSAGE(STATUS "Disabled features:\n${_features}") + FILE(REMOVE ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) + ENDIF (EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") +ENDMACRO(MACRO_DISPLAY_FEATURE_LOG) -- cgit v1.2.1 From 69d8e15bf7382504853bfd30eaaea457e0dbcb61 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Tue, 16 May 2006 20:03:28 +0000 Subject: If we are building kdelibs with debug build type then choose the debug Qt libraries. Before, if both were available, the release Qt libs were always chosen, which makes msvc apps crash. I think this finnishes the build-system cycle for the win32 port, for now :) CCMAIL: kde-buildsystem@kde.org CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=541628 --- modules/FindQt4.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2ae35870..e8c7235a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -598,8 +598,13 @@ IF (QT4_QMAKE_FOUND) ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + IF(CMAKE_BUILD_TYPE MATCHES Debug) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) + ELSE(CMAKE_BUILD_TYPE MATCHES Debug) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF(CMAKE_BUILD_TYPE MATCHES Debug) ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") -- cgit v1.2.1 From b69c0d30a452aecd3d4a1eb1535f26fdad9619aa Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Tue, 16 May 2006 20:46:27 +0000 Subject: Optimization: don't look twice for Qt 4. This is usually already done before in FindKDE4Internal.cmake. svn path=/trunk/KDE/kdelibs/; revision=541637 --- modules/FindKDEWIN32.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 98c4f5db..c9017602 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -11,7 +11,9 @@ INCLUDE(MacroGetenvWinPath) MACRO_GETENV_WIN_PATH(_program_FILES_DIR PROGRAMFILES) +IF(NOT QT4_FOUND) FIND_PACKAGE(Qt4 REQUIRED) +ENDIF(NOT QT4_FOUND) FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h ${_program_FILES_DIR}/kdewin32/include -- cgit v1.2.1 From a5089afc9d4e98d5bf2d7b39cf94a8953cbc56af Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 17 May 2006 19:43:11 +0000 Subject: -the behaviour of LIST(REMOVE_ITEM ...) changed from cmake 2.4.1 beta to cmake 2.4.2, add a check to work with both (2.4.1 was only a beta and so not to be considered stable, and I was even one of the people who wanted this change) This hack can be removed once we require a cmake version >= 2.4.2 Alex svn path=/trunk/KDE/kdelibs/; revision=541957 --- modules/KDE4Macros.cmake | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 75a8e8db..1fafbcf9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -451,6 +451,24 @@ MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) +# hmm this is a hack +# the behaviour of LIST(REMOVE_ITEM ... ) changed from 2.4.1 beta to 2.4.2 stable +# detect this here +# this can be removed once we require cmake >= 2.4.2 +set(remove_item_test_list one two) +# with cmake 2.4.1 this means remove index 0, +# with >= 2.4.2 this means remove the items which have the value "0" +list(REMOVE_ITEM remove_item_test_list 0) +list(LENGTH remove_item_test_list _test_list_length) +# so with 2.4.1 the list will have only one item left, with 2.4.2 two +if (${_test_list_length} EQUAL 2) + set(_REMOVE_AT_INDEX_KEYWORD REMOVE_AT) +else (${_test_list_length} EQUAL 2) + set(_REMOVE_AT_INDEX_KEYWORD REMOVE_ITEM) +endif (${_test_list_length} EQUAL 2) + + + # this macro checks is intended to check whether a list of source # files has the "NOGUI" or "RUN_UNINSTALLED" keywords at the beginning # in _output_LIST the list of source files is returned with the "NOGUI" @@ -497,7 +515,7 @@ MACRO(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) endif (${second_PARAM} STREQUAL "RUN_UNINSTALLED") if (NOT "${remove}" STREQUAL "NOTFOUND") - list(REMOVE_ITEM ${_output_LIST} ${remove}) + list(${_REMOVE_AT_INDEX_KEYWORD} ${_output_LIST} ${remove}) endif (NOT "${remove}" STREQUAL "NOTFOUND") ENDMACRO(KDE4_CHECK_EXECUTABLE_PARAMS) -- cgit v1.2.1 From f3a9780171e0b99fdefd7d6723f6da0d5cf40b7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Thu, 18 May 2006 14:38:29 +0000 Subject: handle all msvc generators correct: debug/release, nmake/project generators svn path=/trunk/KDE/kdelibs/; revision=542175 --- modules/FindKDEWIN32.cmake | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index c9017602..bec51304 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -22,22 +22,36 @@ FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) -set(_KDEWIN32_SEARCHNAMES kdewin32 kdewin32d) -#overwrite when using msvc, which cannot mix debug/release libraries -if(MSVC) - if(CMAKE_BUILD_TYPE MATCHES Debug) - set(_KDEWIN32_SEARCHNAMES kdewin32d ) - else(CMAKE_BUILD_TYPE MATCHES Debug) - set(_KDEWIN32_SEARCHNAMES kdewin32 ) - endif(CMAKE_BUILD_TYPE MATCHES Debug) -endif(MSVC) - -FIND_LIBRARY(KDEWIN32_LIBRARY NAMES ${_KDEWIN32_SEARCHNAMES} +FIND_LIBRARY(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 PATHS ${_program_FILES_DIR}/kdewin32/lib ) +# msvc makes a difference between debug and release +if(MSVC) + FIND_LIBRARY(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d + PATHS + ${_program_FILES_DIR}/kdewin32/lib + ) + if(MSVC_IDE) + # the ide needs the debug and release version + if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + message(FATAL_ERROR "Could NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first:\nUse a project generator or the cmake parameter\n-DCMAKE_BUILD_TYPE=release for building the release version nmake makefiles.") + endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) + else(MSVC_IDE) + STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + endif(MSVC_IDE) +else(MSVC) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) +endif(MSVC) + # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) -- cgit v1.2.1 From 629745908dbb7203d356cae1798e28dbd34a0f65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Thu, 18 May 2006 15:49:30 +0000 Subject: change error message svn path=/trunk/KDE/kdelibs/; revision=542209 --- modules/FindKDEWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index bec51304..eb0bfbbf 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -37,7 +37,7 @@ if(MSVC) if(MSVC_IDE) # the ide needs the debug and release version if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - message(FATAL_ERROR "Could NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first:\nUse a project generator or the cmake parameter\n-DCMAKE_BUILD_TYPE=release for building the release version nmake makefiles.") + message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) else(MSVC_IDE) -- cgit v1.2.1 From cb5c1d9679c303b34367d3cef2ba83258fb6c00c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Thu, 18 May 2006 16:03:36 +0000 Subject: Fix debug/release link problem for msvc. Make two steps to be more clear: 1. revert to cmake's cvs version. 2. add changes for msvc this is step 1. CCMAIL:Paulo.Guedes@artelecom.pt CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=542211 --- modules/FindQt4.cmake | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e8c7235a..2ae35870 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -598,13 +598,8 @@ IF (QT4_QMAKE_FOUND) ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - IF(CMAKE_BUILD_TYPE MATCHES Debug) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) - ELSE(CMAKE_BUILD_TYPE MATCHES Debug) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF(CMAKE_BUILD_TYPE MATCHES Debug) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") -- cgit v1.2.1 From 3ba9a9978013acb1e14de68399ec66a5893762ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Thu, 18 May 2006 16:08:55 +0000 Subject: Fix debug/release link problem for msvc. Make two steps to be more clear: 1. revert to cmake's cvs version. 2. add changes for msvc this is step 2. CCMAIL:Paulo.Guedes@artelecom.pt CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=542213 --- modules/FindQt4.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2ae35870..659faf19 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -598,7 +598,11 @@ IF (QT4_QMAKE_FOUND) ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + IF(NOT MSVC) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + ELSE(NOT MSVC) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF(NOT MSVC) SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) -- cgit v1.2.1 From 51ab25a2a39fba465cff7dea130571dc5bbd1b2e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 18 May 2006 22:48:00 +0000 Subject: visibility for the Intel C/C++ compiler. it works (as in compiles and links), but I don't know for sure if it *really* works.. if you know what I mean :> svn path=/trunk/KDE/kdelibs/; revision=542311 --- modules/FindKDE4Internal.cmake | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e2490b0e..86125b13 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -611,14 +611,11 @@ if (CMAKE_C_COMPILER MATCHES "icc") set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -no-gcc -Wpointer-arith -fno-common") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -no-gcc -Wpointer-arith -fno-exceptions -fno-common") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wpointer-arith -fno-common") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wpointer-arith -fno-exceptions -fno-common") # visibility support -# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_ICC_VISIBILITY) -# if (__KDE_HAVE_ICC_VISIBILITY) -# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") -# endif (__KDE_HAVE_ICC_VISIBILITY) + set (__KDE_HAVE_ICC_VISIBILITY) endif (CMAKE_C_COMPILER MATCHES "icc") -- cgit v1.2.1 From 37e7995d824175b1ed44d5ef1ea0d8f75f67d8b6 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 18 May 2006 23:14:12 +0000 Subject: eh. another attempt. don't think this is quite working. maybe Dirk would be willing to give it a try? svn path=/trunk/KDE/kdelibs/; revision=542316 --- modules/FindKDE4Internal.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 86125b13..b616d8b2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -615,7 +615,11 @@ if (CMAKE_C_COMPILER MATCHES "icc") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wpointer-arith -fno-exceptions -fno-common") # visibility support - set (__KDE_HAVE_ICC_VISIBILITY) + set(__KDE_HAVE_ICC_VISIBILITY) +# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_ICC_VISIBILITY) +# if (__KDE_HAVE_ICC_VISIBILITY) +# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") +# endif (__KDE_HAVE_ICC_VISIBILITY) endif (CMAKE_C_COMPILER MATCHES "icc") -- cgit v1.2.1 From 3e1bfc25990c7f96bba4cddee9b8351c84af579a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 19 May 2006 20:40:39 +0000 Subject: -merge some fixes from cmake cvs: the macros for ui and rcc files now also work with absolute paths correct qouting for the qmake file Alex svn path=/trunk/KDE/kdelibs/; revision=542628 --- modules/FindQt4.cmake | 134 +++++++++++++++++++++++++------------------------- 1 file changed, 66 insertions(+), 68 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 659faf19..82260528 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -2,10 +2,10 @@ # This module can be used to find Qt4. # The most important issue is that the Qt4 qmake is available via the system path. # This qmake is then used to detect basically everything else. -# This module defines a number of key variables and macros. First is +# This module defines a number of key variables and macros. First is # QT_USE_FILE which is the path to a CMake file that can be included to compile -# Qt 4 applications and libraries. By default, the QtCore and QtGui -# libraries are loaded. This behavior can be changed by setting one or more +# Qt 4 applications and libraries. By default, the QtCore and QtGui +# libraries are loaded. This behavior can be changed by setting one or more # of the following variables to true: # QT_DONT_USE_QTCORE # QT_DONT_USE_QTGUI @@ -20,18 +20,18 @@ # QT_USE_QTSQL # QT_USE_QTXML # -# All the libraries required are stored in a variable called QT_LIBRARIES. +# All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. -# +# # macro QT4_WRAP_CPP(outfiles inputfile ... ) # macro QT4_WRAP_UI(outfiles inputfile ... ) # macro QT4_ADD_RESOURCE(outfiles inputfile ... ) # macro QT4_AUTOMOC(inputfile ... ) # macro QT4_GENERATE_MOC(inputfile outputfile ) -# +# # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. -# +# # QT_QTCORE_FOUND True if QtCore was found. # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. @@ -45,33 +45,33 @@ # QT_QTXML_FOUND True if QtXml was found. # QT_QTSVG_FOUND True if QtSvg was found. # QT_QTTEST_FOUND True if QtTest was found. -# +# # QT_DEFINITIONS Definitions to use when compiling code that uses Qt. -# -# QT_INCLUDES List of paths to all include directories of +# +# QT_INCLUDES List of paths to all include directories of # Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are # always in this variable even if NOTFOUND, # all other INCLUDE_DIRS are # only added if they are found. -# +# # QT_INCLUDE_DIR Path to "include" of Qt4 -# QT_QT_INCLUDE_DIR Path to "include/Qt" -# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" -# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" -# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" -# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" -# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" -# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" -# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" -# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" -# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" +# QT_QT_INCLUDE_DIR Path to "include/Qt" +# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" +# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" +# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" +# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" +# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" +# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" +# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" +# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" +# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" # QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# +# # QT_LIBRARY_DIR Path to "lib" of Qt4 -# +# # For every library of Qt there are three variables: # QT_QTFOO_LIBRARY_RELEASE, which contains the full path to the release version # QT_QTFOO_LIBRARY_DEBUG, which contains the full path to the debug version @@ -137,26 +137,26 @@ #The QtUiTools library: QT_QTUITOOLS_LIBRARY # QT_QTUITOOLS_LIBRARY_RELEASE # QT_QTUITOOLS_LIBRARY_DEBUG -# +# # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. # QT_UIC_EXECUTABLE Where to find the uic tool. # QT_UIC3_EXECUTABLE Where to find the uic3 tool. # QT_RCC_EXECUTABLE Where to find the rcc tool -# +# # QT_DOC_DIR Path to "doc" of Qt4 # QT_MKSPECS_DIR Path to "mkspecs" of Qt4 # # -# These are around for backwards compatibility +# These are around for backwards compatibility # they will be set # QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found # QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found -# +# # These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) # QT_MT_REQUIRED Qt4 is now always multithreaded -# -# These variables are set to "" Because Qt structure changed +# +# These variables are set to "" Because Qt structure changed # (They make no sense in Qt4) # QT_QT_LIBRARY Qt-Library is now split @@ -224,7 +224,7 @@ IF (QT_QMAKE_EXECUTABLE) SET(QT4_QMAKE_FOUND FALSE) SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) ELSE (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND TRUE) + SET(QT4_QMAKE_FOUND TRUE) ENDIF (found_vers LESS req_vers) ENDIF (qt_version_tmp) @@ -237,28 +237,28 @@ IF (QT4_QMAKE_FOUND) # Set QT_LIBRARY_DIR IF (NOT QT_LIBRARY_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_LIBS" - OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + ARGS "-query QT_INSTALL_LIBS" + OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") ENDIF(NOT QT_LIBRARY_DIR) - + IF (APPLE) IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) SET(QT_USE_FRAMEWORKS ON - CACHE BOOL "Set to ON if Qt build uses frameworks.") + CACHE BOOL "Set to ON if Qt build uses frameworks.") ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS OFF - CACHE BOOL "Set to ON if Qt build uses frameworks.") + SET(QT_USE_FRAMEWORKS OFF + CACHE BOOL "Set to ON if Qt build uses frameworks.") ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - + MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) ENDIF (APPLE) - + # ask qmake for the binary dir IF (NOT QT_BINARY_DIR) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} @@ -269,10 +269,10 @@ IF (QT4_QMAKE_FOUND) # ask qmake for the include dir IF (NOT QT_HEADERS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_HEADERS" + OUTPUT_VARIABLE qt_headers ) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") ENDIF(NOT QT_HEADERS_DIR) @@ -303,7 +303,7 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtCore ${QT_LIBRARY_DIR}/QtCore.framework/Headers $ENV{QTDIR}/include/QtCore - "$ENV{ProgramFiles}/qt/include/Qt" + "$ENV{ProgramFiles}/qt/include/Qt" ) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} @@ -505,7 +505,7 @@ IF (QT4_QMAKE_FOUND) MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) ELSE (QT_USE_FRAMEWORKS) - + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCore_debug QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -573,7 +573,7 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTDESIGNER_LIBRARY FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - + ############################################ # # Check the existence of the libraries. @@ -599,7 +599,7 @@ IF (QT4_QMAKE_FOUND) IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) IF(NOT MSVC) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) ELSE(NOT MSVC) SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) ENDIF(NOT MSVC) @@ -644,7 +644,7 @@ IF (QT4_QMAKE_FOUND) ####################################### # - # Check the executables of Qt + # Check the executables of Qt # ( moc, uic, rcc ) # ####################################### @@ -652,26 +652,24 @@ IF (QT4_QMAKE_FOUND) # find moc and uic using qmake FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake/tmp.pro - "message("MOC <$$QMAKE_MOC>") - message("UIC <$$QMAKE_UIC>") + "message(MOC<$$QMAKE_MOC>) + message(UIC<$$QMAKE_UIC>) ") EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake OUTPUT_VARIABLE _moc_OUTPUT ERROR_VARIABLE _moc_OUTPUT ) - FILE(REMOVE_RECURSE "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake") - STRING(REGEX REPLACE ".*MOC<([^>]+).*" "\\1" QT_MOC_EXECUTABLE "${_moc_OUTPUT}" ) - STRING(REGEX REPLACE ".*UIC<([^>]+).*" "\\1" QT_UIC_EXECUTABLE "${_moc_OUTPUT}" ) - - FILE(TO_CMAKE_PATH "${QT_MOC_EXECUTABLE}" QT_MOC_EXECUTABLE) - FILE(TO_CMAKE_PATH "${QT_UIC_EXECUTABLE}" QT_UIC_EXECUTABLE) + STRING(REGEX REPLACE ".*MOC<([^>]+).*" "\\1" QT_MOC_EXECUTABLE_INTERNAL "${_moc_OUTPUT}" ) + STRING(REGEX REPLACE ".*UIC<([^>]+).*" "\\1" QT_UIC_EXECUTABLE_INTERNAL "${_moc_OUTPUT}" ) - SET(QT_MOC_EXECUTABLE ${QT_MOC_EXECUTABLE} CACHE FILEPATH "The moc executable") - SET(QT_UIC_EXECUTABLE ${QT_UIC_EXECUTABLE} CACHE FILEPATH "The uic executable") + FILE(TO_CMAKE_PATH "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) + FILE(TO_CMAKE_PATH "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) + SET(QT_MOC_EXECUTABLE ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") + SET(QT_UIC_EXECUTABLE ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 @@ -679,7 +677,7 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) - FIND_PROGRAM(QT_RCC_EXECUTABLE + FIND_PROGRAM(QT_RCC_EXECUTABLE NAMES rcc PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH @@ -756,7 +754,7 @@ IF (QT4_QMAKE_FOUND) FOREACH (it ${ARGN}) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_UIC_EXECUTABLE} @@ -775,7 +773,7 @@ IF (QT4_QMAKE_FOUND) FOREACH (it ${ARGN}) GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - SET(infile ${CMAKE_CURRENT_SOURCE_DIR}/${it}) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_RCC_EXECUTABLE} @@ -856,14 +854,14 @@ IF (QT4_QMAKE_FOUND) ####################################### # - # System dependent settings + # System dependent settings # ####################################### # for unix add X11 stuff IF(UNIX) # on OS X X11 may not be required IF (Q_WS_X11) - FIND_PACKAGE(X11) + FIND_PACKAGE(X11) ENDIF (Q_WS_X11) FIND_PACKAGE(Threads) SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) @@ -872,7 +870,7 @@ IF (QT4_QMAKE_FOUND) ####################################### # - # compatibility settings + # compatibility settings # ####################################### # Backwards compatibility for CMake1.4 and 1.2 @@ -887,7 +885,7 @@ ELSE(QT4_QMAKE_FOUND) IF(QT4_INSTALLED_VERSION_TOO_OLD) MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") ELSE(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE( FATAL_ERROR "Qt qmake not found!") + MESSAGE( FATAL_ERROR "Qt qmake not found!") ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) ELSE(Qt4_FIND_REQUIRED) IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) -- cgit v1.2.1 From 2594b8f6ce971342f4f5b6ca4abe13c6acf05636 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 23 May 2006 17:28:42 +0000 Subject: Search shape for ksnapshot svn path=/trunk/KDE/kdelibs/; revision=544133 --- modules/FindX11.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index aea1a5f7..e9c3a3c0 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -42,6 +42,7 @@ if (UNIX) FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) @@ -65,7 +66,7 @@ if (UNIX) FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - + if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) endif (X11_X11_INCLUDE_PATH) @@ -78,6 +79,11 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) endif (X11_Xutil_INCLUDE_PATH) + if(X11_Xshape_INCLUDE_PATH) + set(X11_Xshape_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) + endif(X11_Xshape_INCLUDE_PATH) + if (X11_X11_LIB) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) endif (X11_X11_LIB) @@ -314,6 +320,7 @@ if (UNIX) X11_Xinput_INCLUDE_PATH X11_Xft_LIB X11_Xft_INCLUDE_PATH + X11_Xshape_INCLUDE_PATH ) endif (UNIX) -- cgit v1.2.1 From 820a0a79c092957b4711043ec6c4c3e6362919fd Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Tue, 23 May 2006 20:21:04 +0000 Subject: Be just a *tad* more informative on the command-line when an essential dependency is missing (this shows up under a stock Kubuntu install). Tell the user what was missing. This touches on the idea agai nthat we want a standard macro for informing users of missing dependencies. svn path=/trunk/KDE/kdelibs/; revision=544165 --- modules/FindGIF.cmake | 5 ++++- modules/FindZLIB.cmake | 7 +++++-- 2 files changed, 9 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index 8ea3043a..0fc4b102 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -17,7 +17,8 @@ FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/local/include ) -FIND_LIBRARY(GIF_LIBRARIES NAMES gif libgif ungif libungif giflib +set(POTENTIAL_GIF_LIBS gif libgif ungif libungif giflib) +FIND_LIBRARY(GIF_LIBRARIES NAMES ${POTENTIAL_GIF_LIBS} PATHS /usr/lib /usr/local/lib @@ -33,6 +34,8 @@ if (GIF_FOUND) endif (NOT GIF_FIND_QUIETLY) else (GIF_FOUND) if (GIF_FIND_REQUIRED) + message(STATUS "Looked for GIF libraries named ${POTENTIAL_GIF_LIBS}.") + message(STATUS "Found no acceptable GIF library. This is fatal.") message(FATAL_ERROR "Could NOT find GIF") endif (GIF_FIND_REQUIRED) endif (GIF_FOUND) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index 2fcfdd15..b1d6d098 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -8,7 +8,8 @@ FIND_PATH(ZLIB_INCLUDE_DIR zlib.h /usr/local/include ) -FIND_LIBRARY(ZLIB_LIBRARY NAMES z zlib +set(POTENTIAL_Z_LIBS z zlib) +FIND_LIBRARY(ZLIB_LIBRARY NAMES ${POTENTIAL_Z_LIBS} PATHS /usr/lib /usr/local/lib @@ -24,7 +25,9 @@ IF (ZLIB_FOUND) ENDIF (NOT ZLIB_FIND_QUIETLY) ELSE (ZLIB_FOUND) IF (ZLIB_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find z library") + MESSAGE(STATUS "Looked for Z libraries named ${POTENTIAL_Z_LIBS}.") + MESSAGE(STATUS "Found no acceptable Z library. This is fatal.") + MESSAGE(FATAL_ERROR "Could NOT find z library") ENDIF (ZLIB_FIND_REQUIRED) ENDIF (ZLIB_FOUND) -- cgit v1.2.1 From 6d56dd479fa8266d183088b8aaf23468389045fd Mon Sep 17 00:00:00 2001 From: Simon Perreault Date: Thu, 25 May 2006 19:03:30 +0000 Subject: Check for qmake-qt4 before qmake. Doing otherwise would fail on Debian because qmake comes from Qt 3. svn path=/trunk/KDE/kdelibs/; revision=544680 --- modules/FindQt4.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 82260528..d65de15d 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -172,7 +172,7 @@ IF (WIN32) ENDIF(WIN32) # check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake-qt4 PATHS +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin @@ -183,6 +183,7 @@ SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) IF (QT_QMAKE_EXECUTABLE) + MESSAGE( STATUS "Found qmake: ${QT_QMAKE_EXECUTABLE}" ) SET(QT4_QMAKE_FOUND FALSE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) -- cgit v1.2.1 From 3b33868ffcec8ad2753a4747b9beaa3f9b4d1772 Mon Sep 17 00:00:00 2001 From: Simon Perreault Date: Thu, 25 May 2006 19:04:42 +0000 Subject: Oops, forgot to remove that debugging message before committing. svn path=/trunk/KDE/kdelibs/; revision=544681 --- modules/FindQt4.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d65de15d..98471763 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -183,7 +183,6 @@ SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) IF (QT_QMAKE_EXECUTABLE) - MESSAGE( STATUS "Found qmake: ${QT_QMAKE_EXECUTABLE}" ) SET(QT4_QMAKE_FOUND FALSE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) -- cgit v1.2.1 From eb62676c22b4f2c3b5810e05fd99dfa5ab02d8d6 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Sun, 28 May 2006 09:51:17 +0000 Subject: Check for UserData member of GifFileType so it bails with giflib (and not libgif) during compile. svn path=/trunk/KDE/kdelibs/; revision=545738 --- modules/FindGIF.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index 0fc4b102..c191d784 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -25,7 +25,7 @@ FIND_LIBRARY(GIF_LIBRARIES NAMES ${POTENTIAL_GIF_LIBS} ) if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) - set(GIF_FOUND TRUE) + CHECK_STRUCT_MEMBER(GifFileType UserData gif_lib.h GIF_FOUND) endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) if (GIF_FOUND) -- cgit v1.2.1 From 13b769c326f2087c87cdb78ab2fae47ec17e4b18 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 30 May 2006 09:02:38 +0000 Subject: Move cmake duplicate check here: -> FindTagLib: need by kdemultimedia/amarok -> FindPostgreSQL: need by koffice-kexi/amarok -> FindMySQL: need by koffice-kexi/amarok -> FindMusicBrainz: need by amarok/kdemultimedia -> FindUSB: need by kdebase/amarok -> FindBerkeleyDB: need by kbabel/kdevelop -> FindRUBY: need by koffice-kross/amarok I will remove them from kde module after new snapshot (next monday) svn path=/trunk/KDE/kdelibs/; revision=546487 --- modules/FindBerkeleyDB.cmake | 39 +++++++++++++++++++++++++++++++ modules/FindMusicBrainz.cmake | 17 ++++++++++++++ modules/FindMySQL.cmake | 28 +++++++++++++++++++++++ modules/FindPostgreSQL.cmake | 28 +++++++++++++++++++++++ modules/FindRUBY.cmake | 43 +++++++++++++++++++++++++++++++++++ modules/FindTaglib.cmake | 33 +++++++++++++++++++++++++++ modules/FindUSB.cmake | 53 +++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 241 insertions(+) create mode 100644 modules/FindBerkeleyDB.cmake create mode 100644 modules/FindMusicBrainz.cmake create mode 100644 modules/FindMySQL.cmake create mode 100644 modules/FindPostgreSQL.cmake create mode 100644 modules/FindRUBY.cmake create mode 100644 modules/FindTaglib.cmake create mode 100644 modules/FindUSB.cmake (limited to 'modules') diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake new file mode 100644 index 00000000..640e6cf3 --- /dev/null +++ b/modules/FindBerkeleyDB.cmake @@ -0,0 +1,39 @@ +# - Try to find Berkeley DB +# Once done this will define +# +# BERKELEY_DB_FOUND - system has Berkeley DB +# BERKELEY_DB_INCLUDE_DIR - the Berkeley DB include directory +# BERKELEY_DB_LIBRARIES - Link these to use Berkeley DB +# BERKELEY_DB_DEFINITIONS - Compiler switches required for using Berkeley DB +# + + +FIND_PATH(BERKELEY_DB_INCLUDE_DIR db.h + /usr/include/ + /usr/include/db4 + /usr/local/include/db4 +) + +FIND_LIBRARY(BERKELEY_DB_LIBRARIES NAMES db + PATHS + /usr/lib + /usr/local/lib +) + +IF(BERKELEY_DB_INCLUDE_DIR AND BERKELEY_DB_LIBRARIES) + SET(BERKELEY_DB_FOUND TRUE) +ENDIF(BERKELEY_DB_INCLUDE_DIR AND BERKELEY_DB_LIBRARIES) + +IF(BERKELEY_DB_FOUND) + IF(NOT Berkeley_DB_FIND_QUIETLY) + MESSAGE(STATUS "Found Berkeley DB: ${BERKELEY_DB_LIBRARIES}") + ENDIF(NOT Berkeley_DB_FIND_QUIETLY) +ELSE(BERKELEY_DB_FOUND) + IF(Berkeley_DB_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Berkeley DB >= 4.1") + ENDIF(Berkeley_DB_FIND_REQUIRED) +ENDIF(BERKELEY_DB_FOUND) + +# show the BERKELEY_DB_INCLUDE_DIR and BERKELEY_DB_LIBRARIES variables only in the advanced view +MARK_AS_ADVANCED(BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES ) + diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake new file mode 100644 index 00000000..0ec56ffc --- /dev/null +++ b/modules/FindMusicBrainz.cmake @@ -0,0 +1,17 @@ +# Option for build or not MusicBrainz +# Laurent Montel 2006 + +FIND_PATH(MUSICBRAINZ_INCLUDE_DIR musicbrainz/musicbrainz.h + /usr/include + /usr/local/include + ) + +if(MUSICBRAINZ_INCLUDE_DIR) + set(MUSICBRAINZ_FOUND TRUE) + MESSAGE( STATUS "music brainz found in <${MUSICBRAINZ_INCLUDE_DIR}>") +else(MUSICBRAINZ_INCLUDE_DIR) + MESSAGE( STATUS "music brainz not found") +endif(MUSICBRAINZ_INCLUDE_DIR) + +MARK_AS_ADVANCED(MUSICBRAINZ_INCLUDE_DIR) + diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake new file mode 100644 index 00000000..151251be --- /dev/null +++ b/modules/FindMySQL.cmake @@ -0,0 +1,28 @@ +# - Find MySQL +# Find the MySQL includes and client library +# This module defines +# MYSQL_INCLUDE_DIR, where to find mysql.h +# MYSQL_LIBRARIES, the libraries needed to use MySQL. +# MYSQL_FOUND, If false, do not try to use MySQL. + +find_path(MYSQL_INCLUDE_DIR mysql.h + /usr/include/mysql + /usr/local/include/mysql +) + +find_library(MYSQL_LIBRARIES NAMES mysqlclient + PATHS + /usr/lib/mysql + /usr/local/lib/mysql +) + +if(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + set(MYSQL_FOUND TRUE) + message(STATUS "Found MySQL: ${MYSQL_INCLUDE_DIR}, ${MYSQL_LIBRARIES}") +else(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + set(MYSQL_FOUND FALSE) + message(STATUS "MySQL not found.") +endif(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + +mark_as_advanced(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES) + diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake new file mode 100644 index 00000000..b5de3a4b --- /dev/null +++ b/modules/FindPostgreSQL.cmake @@ -0,0 +1,28 @@ +# - Find PostgreSQL +# Find the PostgreSQL includes and client library +# This module defines +# POSTGRESQL_INCLUDE_DIR, where to find POSTGRESQL.h +# POSTGRESQL_LIBRARIES, the libraries needed to use POSTGRESQL. +# POSTGRESQL_FOUND, If false, do not try to use PostgreSQL. + +find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h + /usr/include/pgsql + /usr/local/include/pgsql +) + +find_library(POSTGRESQL_LIBRARIES NAMES pq + PATHS + /usr/lib + /usr/local/lib +) + +if(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) + set(POSTGRESQL_FOUND TRUE) + message(STATUS "Found PostgreSQL: ${POSTGRESQL_INCLUDE_DIR}, ${POSTGRESQL_LIBRARIES}") +else(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) + set(POSTGRESQL_FOUND FALSE) + message(STATUS "PostgreSQL not found.") +endif(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) + +mark_as_advanced(POSTGRESQL_INCLUDE_DIR POSTGRESQL_LIBRARIES) + diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake new file mode 100644 index 00000000..8bcfb357 --- /dev/null +++ b/modules/FindRUBY.cmake @@ -0,0 +1,43 @@ +# - Find ruby +# This module finds if RUBY is installed and determines where the include files +# and libraries are. It also determines what the name of the library is. This +# code sets the following variables: +# +# RUBY_INCLUDE_PATH = path to where ruby.h can be found +# RUBY_EXECUTABLE = full path to the ruby binary +# + +if(RUBY_LIBRARY AND RUBY_INCLUDE_PATH) + # Already in cache, be silent + set(RUBY_FIND_QUIETLY TRUE) +endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) + +SET(RUBY_POSSIBLE_INCLUDE_PATHS + /usr/lib/ruby/1.8/i586-linux-gnu/ + ) + +SET(RUBY_POSSIBLE_LIB_PATHS + /usr/lib + ) + +FIND_PATH(RUBY_INCLUDE_PATH ruby.h + ${RUBY_POSSIBLE_INCLUDE_PATHS}) + +FIND_LIBRARY(RUBY_LIBRARY + NAMES ruby + PATHS ${RUBY_POSSIBLE_LIB_PATHS} + ) + +FIND_PROGRAM(RUBY_EXECUTABLE + NAMES ruby + PATHS + /usr/bin + /usr/local/bin +) + +MARK_AS_ADVANCED( + RUBY_EXECUTABLE + RUBY_LIBRARY + RUBY_INCLUDE_PATH + ) + diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake new file mode 100644 index 00000000..7f258785 --- /dev/null +++ b/modules/FindTaglib.cmake @@ -0,0 +1,33 @@ +# - Try to find the Taglib library +# Once done this will define +# +# TAGLIB_FOUND - system has the taglib library +# TAGLIB_CFLAGS - the taglib cflags +# TAGLIB_LIBRARIES - The libraries needed to use taglib + + #KDE_CHECK_HEADER(taglib/mpcfile.h, have_taglib_mpc=yes, have_taglib_mpc=no) + +FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS + /usr/bin + /usr/local/bin +) + +#reset vars +set(TAGLIB_LIBRARIES) +set(TAGLIB_CFLAGS) + +# if taglib-config has been found +IF(TAGLIBCONFIG_EXECUTABLE) + + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) + + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) + + IF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + SET(TAGLIB_FOUND TRUE) + message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") + ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + + MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) + +ENDIF(TAGLIBCONFIG_EXECUTABLE) diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake new file mode 100644 index 00000000..b6c6949e --- /dev/null +++ b/modules/FindUSB.cmake @@ -0,0 +1,53 @@ +# - Try to find the freetype library +# Once done this defines +# +# LIBUSB_FOUND - system has libusb +# LIBUSB_INCLUDE_DIR - the libusb include directory +# LIBUSB_LIBRARIES - Link these to use libusb + +if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + + # in cache already + set(LIBUSB_FOUND TRUE) + +else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libUSB _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) + + FIND_PATH(LIBUSB_INCLUDE_DIR usb.h + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(LIBUSB_LIBRARY NAMES usb + PATHS + ${_libUSBLinkDir} + /usr/lib + /usr/local/lib + ) + + set( LIBUSB_LIBRARIES ${LIBUSB_LIBRARY} CACHE INTERNAL "The libraries for libusb" ) + + if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + set( LIBUSB_FOUND TRUE) + endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + + if (LIBUSB_FOUND) + if (NOT libUSB_FIND_QUIETLY) + message(STATUS "Found LIBUSB: ${LIBUSB_LIBRARIES}") + endif (NOT libUSB_FIND_QUIETLY) + else (LIBUSB_FOUND) + if (libUSB_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find LIBUSB") + endif (libUSB_FIND_REQUIRED) + endif (LIBUSB_FOUND) + + MARK_AS_ADVANCED( + LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES + ) + +endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) -- cgit v1.2.1 From c9c2901bc7e63c402c1e6cb7a154cfb175588c41 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Tue, 30 May 2006 17:21:07 +0000 Subject: Allow cmake to use the gif include dir, necessary for the check. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=546660 --- modules/FindGIF.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index c191d784..cf2324c0 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -25,6 +25,7 @@ FIND_LIBRARY(GIF_LIBRARIES NAMES ${POTENTIAL_GIF_LIBS} ) if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + set(CMAKE_REQUIRED_INCLUDES "${GIF_INCLUDE_DIR}" "${CMAKE_REQUIRED_INCLUDES}") CHECK_STRUCT_MEMBER(GifFileType UserData gif_lib.h GIF_FOUND) endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) -- cgit v1.2.1 From 3e8556ed033a9da40d2469c1f52bda8b54e59d74 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 31 May 2006 07:20:26 +0000 Subject: Since no objections were raised in kde-core-devel, I am merging the kdelibs4-dbus branch back into trunk. KDELibs compiles, links and installs with this, but obviously all other modules will fail to build. Let the porting commence. CCMAIL:kde-core-devel@kde.org,kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=546826 --- modules/FindKDE4Internal.cmake | 89 ++---------------------------------------- modules/FindQtDBus.cmake | 36 +++++++++++++++++ 2 files changed, 40 insertions(+), 85 deletions(-) create mode 100644 modules/FindQtDBus.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b616d8b2..04b9d8ee 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -15,8 +15,6 @@ # The following variables are defined for the various tools required to # compile KDE software: # -# KDE4_DCOPIDL_EXECUTABLE - the dcopidl executable -# KDE4_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable # KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable # KDE4_MEINPROC_EXECUTABLE - the meinproc executable # KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable @@ -34,7 +32,6 @@ # KDE4_KHTML_LIBRARY - the khtml library # KDE4_KJS_LIBRARY - the kjs library # KDE4_KNEWSTUFF_LIBRARY - the knewstuff library -# KDE4_DCOP_LIBRARY - the DCOP library # KDE4_KDEPRINT_LIBRARY - the kdeprint library # KDE4_KSPELL2_LIBRARY - the kspell2 library # KDE4_KDNSSD_LIBRARY - the kdnssd library @@ -53,7 +50,6 @@ # KDE4_KHTML_LIBS - the khtml library and all depending libraries # KDE4_KJS_LIBS - the kjs library and all depending libraries # KDE4_KNEWSTUFF_LIBS - the knewstuff library and all depending libraries -# KDE4_DCOP_LIBS - the DCOP library and all depending libraries # KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries # KDE4_KSPELL2_LIBS - the kspell2 library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries @@ -95,12 +91,6 @@ # KDE4_BUILD_TESTS - enable this to build the testcases # # It also adds the following macros (from KDE4Macros.cmake) -# KDE4_ADD_DCOP_SKELS (SRCS_VAR file1.h ... fileN.h) -# Use this to generate DCOP skeletons from the listed headers. -# -# KDE4_ADD_DCOP_STUBS (SRCS_VAR file1.h ... fileN.h) -# Use this to generate DCOP stubs from the listed headers. -# # KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) # Use this to add Qt designer ui files to your application/library. # @@ -180,7 +170,7 @@ set(QT_MIN_VERSION "4.1.1") #this line includes FindQt.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -# Perl is required for building KDE software, e.g. for dcopidl +# Perl is required for building KDE software, find_package(Perl REQUIRED) include (MacroLibrary) @@ -238,45 +228,28 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - # adjust dcopidl and the library output path depending on the platform if (WIN32) - # under windows dcopidl.bat has to be used, except when using MSYS, then the perl script has to be used, Alex - if ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - set(KDE4_DCOPIDL_EXECUTABLE_INSTALL ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - else ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(KDE4_DCOPIDL_EXECUTABLE call ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) - set(KDE4_DCOPIDL_EXECUTABLE_INSTALL ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl.bat ) - endif ("${CMAKE_GENERATOR}" MATCHES "MSYS") - set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) - set(KDE4_DCOPIDL_EXECUTABLE ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) - set(KDE4_DCOPIDL_EXECUTABLE_INSTALL ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/dcopidl ) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp.sh ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.sh ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) - set(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ ) - # when building kdelibs, make the dcop and kcfg rules depend on the binaries... - set( _KDE4_DCOPIDL2CPP_DEP dcopidl2cpp) + # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # ... but NOT otherwise - set( _KDE4_DCOPIDL2CPP_DEP ) set( _KDE4_KCONFIG_COMPILER_DEP) set( _KDE4_MAKEKDEWIDGETS_DEP) @@ -286,12 +259,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) STRING(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") IF (KDEVERSION) - # avoid porting against kdelibs trunk - string(REGEX MATCH "DONTPORT" _match "${kdeconfig_output}") - if (_match) - message ( FATAL_ERROR "ERROR: don't port against this version of kdelibs! Use /branches/work/kdelibs4_snapshot instead!!" ) - endif (_match) - STRING(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") # we need at least this version: @@ -341,9 +308,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KNEWSTUFF_LIBRARY NAMES knewstuff PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KNEWSTUFF_LIBS ${knewstuff_LIB_DEPENDS} ${KDE4_KNEWSTUFF_LIBRARY} ) - find_library(KDE4_DCOP_LIBRARY NAMES DCOP PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_DCOP_LIBS ${DCOP_LIB_DEPENDS} ${KDE4_DCOP_LIBRARY} ) - find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) @@ -378,39 +342,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) /usr/local/include/kde ) - #now search for the dcop utilities - find_program(KDE4_DCOPIDL_EXECUTABLE NAMES dcopidl dcopidl.bat PATHS - ${KDE4_BIN_INSTALL_DIR} - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - NO_DEFAULT_PATH - ) - - if (NOT KDE4_DCOPIDL_EXECUTABLE) - find_program(KDE4_DCOPIDL_EXECUTABLE NAMES dcopidl dcopidl.bat ) - endif (NOT KDE4_DCOPIDL_EXECUTABLE) - - - find_path(KDE4_KALYPTUS_DIR kalyptus - ${KDE4_DATA_INSTALL_DIR}/dcopidl - $ENV{KDEDIR}/share/apps/dcopidl - /opt/kde/share/apps/dcopidl - /opt/kde4/share/apps/dcopidl - ) - - find_program(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp PATHS - ${KDE4_BIN_INSTALL_DIR} - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - NO_DEFAULT_PATH - ) - - if (NOT KDE4_DCOPIDL2CPP_EXECUTABLE) - find_program(KDE4_DCOPIDL2CPP_EXECUTABLE NAME dcopidl2cpp ) - endif (NOT KDE4_DCOPIDL2CPP_EXECUTABLE) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} $ENV{KDEDIR}/bin @@ -635,9 +566,9 @@ include(KDE4Macros) # decide whether KDE4 has been found set(KDE4_FOUND FALSE) -if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) set(KDE4_FOUND TRUE) -endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_DCOPIDL_EXECUTABLE AND KDE4_DCOPIDL2CPP_EXECUTABLE AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) macro (KDE4_PRINT_RESULTS) @@ -657,18 +588,6 @@ macro (KDE4_PRINT_RESULTS) endif(KDE4_LIB_DIR) endif(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - if(KDE4_DCOPIDL_EXECUTABLE) - message(STATUS "Found KDE4 dcopidl preprocessor: ${KDE4_DCOPIDL_EXECUTABLE}") - else(KDE4_DCOPIDL_EXECUTABLE) - message(STATUS "Didn't find the KDE4 dcopidl preprocessor") - endif(KDE4_DCOPIDL_EXECUTABLE) - - if(KDE4_DCOPIDL2CPP_EXECUTABLE) - message(STATUS "Found KDE4 dcopidl2cpp preprocessor: ${KDE4_DCOPIDL2CPP_EXECUTABLE}") - else(KDE4_DCOPIDL2CPP_EXECUTABLE) - message(STATUS "Didn't find the KDE4 dcopidl2cpp preprocessor") - endif(KDE4_DCOPIDL2CPP_EXECUTABLE) - if(KDE4_KCFGC_EXECUTABLE) message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") else(KDE4_KCFGC_EXECUTABLE) diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake new file mode 100644 index 00000000..396342c5 --- /dev/null +++ b/modules/FindQtDBus.cmake @@ -0,0 +1,36 @@ +# - Try to find the QtDBus module +# Once done this will define +# +# QDBUS_FOUND - system has QtDBus +# QDBUS_INCLUDE_DIR - the QtDBus include directory +# QDBUS_LIBRARIES - Link these to use QtDBus +# QDBUS_DEFINITIONS - Compiler switches required for using QtDBus +# + + +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +INCLUDE(UsePkgConfig) + +PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) +PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) + +set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags}) +set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir}) + +FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 + PATHS ${_qdbusLinkDir} +) + +if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + set(QDBUS_FOUND TRUE) +endif (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + +message(STATUS "QtDBus Results: ${QDBUS_LIBRARIES} ${QDBUS_INCLUDE_DIRS} ${QDBUS_DEFINITIONS}") +if (QDBUS_FOUND) + if (NOT QDBUS_FIND_QUIETLY) + message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") + endif (NOT QDBUS_FIND_QUIETLY) +else (QDBUS_FOUND) + message(FATAL_ERROR "Could NOT find QtDBus") +endif (QDBUS_FOUND) -- cgit v1.2.1 From 453aaa5d727b9f57b9afff2b7f1150b250ac1d38 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 31 May 2006 07:31:21 +0000 Subject: Re-add the DONTPORT check that I had removed in my own version svn path=/trunk/KDE/kdelibs/; revision=546832 --- modules/FindKDE4Internal.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 04b9d8ee..2e4d2810 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -259,6 +259,14 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) STRING(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") IF (KDEVERSION) + # avoid porting against kdelibs trunk + string(REGEX MATCH "DONTPORT" _match "${kdeconfig_output}") + if (_match) + message ( FATAL_ERROR "ERROR: don't port against this + version of kdelibs! Use /branches/work/kdelibs4_snapshot + instead!!" ) + endif (_match) + STRING(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") # we need at least this version: -- cgit v1.2.1 From 1b1eacfe5f3378c3f35974ce1bf7b5a0bbc30baf Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Wed, 31 May 2006 10:45:17 +0000 Subject: Display Thiago's notes on where to get the new dependency so people aren't immediately lost if they don't remember what happened on -core-devel. svn path=/trunk/KDE/kdelibs/; revision=546897 --- modules/FindQtDBus.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 396342c5..a2341792 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -32,5 +32,7 @@ if (QDBUS_FOUND) message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") endif (NOT QDBUS_FIND_QUIETLY) else (QDBUS_FOUND) + message(STATUS "You need the CVS version of D-BUS library. The one that your distribution installed, even if it's 0.61, probably won't be enough to compile QtDBus.") + message(STATUS "You need the Subversion or CVS version of QtDBus. It's official home is now in trunk/kdesupport/") message(FATAL_ERROR "Could NOT find QtDBus") endif (QDBUS_FOUND) -- cgit v1.2.1 From d9f94a32176bb09c5397ca12033c555929ad1acf Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Wed, 31 May 2006 10:56:58 +0000 Subject: Format porting doc nicer, point to it from configure svn path=/trunk/KDE/kdelibs/; revision=546899 --- modules/FindQtDBus.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index a2341792..937ab333 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -34,5 +34,6 @@ if (QDBUS_FOUND) else (QDBUS_FOUND) message(STATUS "You need the CVS version of D-BUS library. The one that your distribution installed, even if it's 0.61, probably won't be enough to compile QtDBus.") message(STATUS "You need the Subversion or CVS version of QtDBus. It's official home is now in trunk/kdesupport/") + message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") message(FATAL_ERROR "Could NOT find QtDBus") endif (QDBUS_FOUND) -- cgit v1.2.1 From 117cb4d48ba9c4618c3bf71f7cb8799e1b189d34 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Wed, 31 May 2006 12:52:30 +0000 Subject: Add macro to generate QDBus interfaces from XML descriptions. svn path=/trunk/KDE/kdelibs/; revision=546931 --- modules/FindQtDBus.cmake | 12 ++++++++++++ modules/QtDBusMacros.cmake | 22 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 modules/QtDBusMacros.cmake (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 937ab333..ae17513e 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -6,6 +6,13 @@ # QDBUS_LIBRARIES - Link these to use QtDBus # QDBUS_DEFINITIONS - Compiler switches required for using QtDBus # +# QDBUS_IDL2CPP_EXECUTABLE - The adaptor/interface code generator +# QDBUS_CPP2XML_EXECUTABLE - The interface parser +# +# Macros (from QtDBusMacros.cmake): +# QDBUS_ADD_INTERFACES(SRC_VAR file1.xml ... fileN.xml) +# Generates interface code from the given XML files. +# # use pkg-config to get the directories and then use these values @@ -37,3 +44,8 @@ else (QDBUS_FOUND) message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") message(FATAL_ERROR "Could NOT find QtDBus") endif (QDBUS_FOUND) + +find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS) +find_program(QDBUS_CPP2XML_EXECUTABLE NAME dbuscpp2xml PATHS) + +include( QtDBusMacros ) diff --git a/modules/QtDBusMacros.cmake b/modules/QtDBusMacros.cmake new file mode 100644 index 00000000..5ee785db --- /dev/null +++ b/modules/QtDBusMacros.cmake @@ -0,0 +1,22 @@ +# +# QtDBus macros, documentation see FindQtDBus.cmake +# + +macro(qdbus_add_interfaces _sources) + foreach (_i ${ARGN}) + get_filename_component(_xml_file ${_i} ABSOLUTE) + get_filename_component(_basename ${_i} NAME_WE) + set(_target_base ${CMAKE_CURRENT_BINARY_DIR}/${_basename}) + + add_custom_command(OUTPUT ${_target_base}.cpp ${_target_base}.h + COMMAND ${QDBUS_IDL2CPP_EXECUTABLE} + ARGS -m -p ${_basename} ${_xml_file} + DEPENDS ${_xml_file} + ) + + qt4_generate_moc(${_target_base}.h ${_target_base}.moc) + macro_add_file_dependencies(${_target_base}.h ${_target_base}.moc ) + + set(${_sources} ${${_sources}} ${_target_base}.cpp) + endforeach (_i ${ARGN}) +endmacro(qdbus_add_interfaces) -- cgit v1.2.1 From 1affb970d8600325503f02bc332719cd249a5fef Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 31 May 2006 13:16:27 +0000 Subject: Put the vars in the cache; useful for debugging and for adding "reuse cache" to this module later on. svn path=/trunk/KDE/kdelibs/; revision=546937 --- modules/FindQtDBus.cmake | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index ae17513e..8a278786 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -2,7 +2,7 @@ # Once done this will define # # QDBUS_FOUND - system has QtDBus -# QDBUS_INCLUDE_DIR - the QtDBus include directory +# QDBUS_INCLUDE_DIRS - the QtDBus include directories # QDBUS_LIBRARIES - Link these to use QtDBus # QDBUS_DEFINITIONS - Compiler switches required for using QtDBus # @@ -14,7 +14,6 @@ # Generates interface code from the given XML files. # - # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) @@ -22,8 +21,8 @@ INCLUDE(UsePkgConfig) PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) -set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags}) -set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir}) +set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") +set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 PATHS ${_qdbusLinkDir} -- cgit v1.2.1 From 1e805f6153cd53bee27b4017e19a90dc26e3f949 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Wed, 31 May 2006 13:31:48 +0000 Subject: Add macros to generate adaptor code from XML and XML from a header file. svn path=/trunk/KDE/kdelibs/; revision=546939 --- modules/FindQtDBus.cmake | 6 ++++++ modules/QtDBusMacros.cmake | 31 +++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 8a278786..f5e2e181 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -13,6 +13,12 @@ # QDBUS_ADD_INTERFACES(SRC_VAR file1.xml ... fileN.xml) # Generates interface code from the given XML files. # +# QDBUS_GENERATE_INTERFACE(file.h) +# Generates the XML interface description from the given header file. +# +# QDBUS_ADD_ADAPTOR(SRC_VAR file1.xml ... fileN.xml) +# Generates adaptor code from the given XML files. +# # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls diff --git a/modules/QtDBusMacros.cmake b/modules/QtDBusMacros.cmake index 5ee785db..a6e4221f 100644 --- a/modules/QtDBusMacros.cmake +++ b/modules/QtDBusMacros.cmake @@ -20,3 +20,34 @@ macro(qdbus_add_interfaces _sources) set(${_sources} ${${_sources}} ${_target_base}.cpp) endforeach (_i ${ARGN}) endmacro(qdbus_add_interfaces) + +macro(qdbus_generate_interface _header) + get_filename_component(_in_file ${_header} ABSOLUTE) + get_filename_component(_basename ${_header} NAME_WE) + set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + + add_custom_command(OUTPUT ${_target} + COMMAND ${QDBUS_CPP2XML_EXECUTABLE} + ARGS ${_in_file} > ${_target} + DEPENDS ${_in_file} + ) +endmacro(qdbus_generate_interface) + +macro(qdbus_add_adaptor _sources) + foreach (_i ${ARGN}) + get_filename_component(_xml_file ${_i} ABSOLUTE) + get_filename_component(_basename ${_i} NAME_WE) + set(_target_base ${CMAKE_CURRENT_BINARY_DIR}/${_basename}adaptor) + + add_custom_command(OUTPUT ${_target_base}.cpp ${_target_base}.h + COMMAND ${QDBUS_IDL2CPP_EXECUTABLE} + ARGS -m -a ${_basename}adaptor ${_xml_file} + DEPENDS ${_xml_file} + ) + + qt4_generate_moc(${_target_base}.h ${_target_base}.moc) + macro_add_file_dependencies(${_target_base}.h ${_target_base}.moc) + + set(${_sources} ${${_sources}} ${_target_base}.cpp) + endforeach (_i ${ARGN}) +endmacro(qdbus_add_adaptor) -- cgit v1.2.1 From 16f77f3ff06a1a5051a0b12d6223aa85a16e7f28 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Wed, 31 May 2006 13:51:06 +0000 Subject: - fix warning when calling automoc after qdbus_add_* - consistent naming svn path=/trunk/KDE/kdelibs/; revision=546947 --- modules/FindQtDBus.cmake | 2 +- modules/QtDBusMacros.cmake | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index f5e2e181..eb3abcff 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -16,7 +16,7 @@ # QDBUS_GENERATE_INTERFACE(file.h) # Generates the XML interface description from the given header file. # -# QDBUS_ADD_ADAPTOR(SRC_VAR file1.xml ... fileN.xml) +# QDBUS_ADD_ADAPTORS(SRC_VAR file1.xml ... fileN.xml) # Generates adaptor code from the given XML files. # diff --git a/modules/QtDBusMacros.cmake b/modules/QtDBusMacros.cmake index a6e4221f..f279f1c4 100644 --- a/modules/QtDBusMacros.cmake +++ b/modules/QtDBusMacros.cmake @@ -16,6 +16,7 @@ macro(qdbus_add_interfaces _sources) qt4_generate_moc(${_target_base}.h ${_target_base}.moc) macro_add_file_dependencies(${_target_base}.h ${_target_base}.moc ) + set_source_files_properties(${_target_base}.cpp PROPERTIES SKIP_AUTOMOC true) set(${_sources} ${${_sources}} ${_target_base}.cpp) endforeach (_i ${ARGN}) @@ -33,7 +34,7 @@ macro(qdbus_generate_interface _header) ) endmacro(qdbus_generate_interface) -macro(qdbus_add_adaptor _sources) +macro(qdbus_add_adaptors _sources) foreach (_i ${ARGN}) get_filename_component(_xml_file ${_i} ABSOLUTE) get_filename_component(_basename ${_i} NAME_WE) @@ -47,7 +48,8 @@ macro(qdbus_add_adaptor _sources) qt4_generate_moc(${_target_base}.h ${_target_base}.moc) macro_add_file_dependencies(${_target_base}.h ${_target_base}.moc) + set_source_files_properties(${_target_base}.cpp PROPERTIES SKIP_AUTOMOC true) set(${_sources} ${${_sources}} ${_target_base}.cpp) endforeach (_i ${ARGN}) -endmacro(qdbus_add_adaptor) +endmacro(qdbus_add_adaptors) -- cgit v1.2.1 From a93dc995227d4ad66b1fb781842276130618b6ff Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 31 May 2006 13:58:32 +0000 Subject: Save 8 calls to pkg-config when reconfiguring and qtdbus is all in the cache already. svn path=/trunk/KDE/kdelibs/; revision=546948 --- modules/FindQtDBus.cmake | 59 ++++++++++++++++++++++++++++-------------------- 1 file changed, 34 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index eb3abcff..28de058d 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -20,35 +20,44 @@ # Generates adaptor code from the given XML files. # -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls -INCLUDE(UsePkgConfig) +if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) -PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) -PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) + # already in cache + set(QDBUS_FOUND TRUE) -set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") -set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") +else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) -FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS ${_qdbusLinkDir} -) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) -if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - set(QDBUS_FOUND TRUE) -endif (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - -message(STATUS "QtDBus Results: ${QDBUS_LIBRARIES} ${QDBUS_INCLUDE_DIRS} ${QDBUS_DEFINITIONS}") -if (QDBUS_FOUND) - if (NOT QDBUS_FIND_QUIETLY) - message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") - endif (NOT QDBUS_FIND_QUIETLY) -else (QDBUS_FOUND) - message(STATUS "You need the CVS version of D-BUS library. The one that your distribution installed, even if it's 0.61, probably won't be enough to compile QtDBus.") - message(STATUS "You need the Subversion or CVS version of QtDBus. It's official home is now in trunk/kdesupport/") - message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") - message(FATAL_ERROR "Could NOT find QtDBus") -endif (QDBUS_FOUND) + PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) + PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) + + set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") + set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") + + FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 + PATHS ${_qdbusLinkDir} + ) + + if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + set(QDBUS_FOUND TRUE) + endif (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + + message(STATUS "QtDBus Results: ${QDBUS_LIBRARIES} ${QDBUS_INCLUDE_DIRS} ${QDBUS_DEFINITIONS}") + if (QDBUS_FOUND) + if (NOT QDBUS_FIND_QUIETLY) + message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") + endif (NOT QDBUS_FIND_QUIETLY) + else (QDBUS_FOUND) + message(STATUS "You need the CVS version of D-BUS library. The one that your distribution installed, even if it's 0.61, probably won't be enough to compile QtDBus.") + message(STATUS "You need the Subversion or CVS version of QtDBus. It's official home is now in trunk/kdesupport/") + message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") + message(FATAL_ERROR "Could NOT find QtDBus") + endif (QDBUS_FOUND) + +endif(QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS) find_program(QDBUS_CPP2XML_EXECUTABLE NAME dbuscpp2xml PATHS) -- cgit v1.2.1 From 74c1e9e453f583f82ee51908309535ab5b8184d3 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 2 Jun 2006 10:07:52 +0000 Subject: Add macro for phononcore/phononui lib svn path=/trunk/KDE/kdelibs/; revision=547477 --- modules/FindKDE4Internal.cmake | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2e4d2810..1fa1809b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -35,6 +35,8 @@ # KDE4_KDEPRINT_LIBRARY - the kdeprint library # KDE4_KSPELL2_LIBRARY - the kspell2 library # KDE4_KDNSSD_LIBRARY - the kdnssd library +# KDE4_PHONONCORE_LIBRARY - the phononcore library +# KDE4_PHONONUI_LIBRARY - the phononui library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -54,7 +56,8 @@ # KDE4_KSPELL2_LIBS - the kspell2 library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries -# +# KDE4_PHONONCORE_LIBS - the phononcore library and all depending librairies +# KDE4_PHONONUI_LIBS - the phononui library and all depending librairies # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -334,6 +337,13 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) + find_library(KDE4_PHONONCORE_LIBRARY NAMES phononcore PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_PHONONUI_LIBRARIES ${phononcore_LIB_DEPENDS} ${KDE4_PHONONCORE_LIBRARY} ) + + find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_PHONONUI_LIBRARIES ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) + + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From dbec5648b3f07bb32d5ded4915ce153a89225ae5 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 5 Jun 2006 11:49:12 +0000 Subject: Fix typo svn path=/trunk/KDE/kdelibs/; revision=548360 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1fa1809b..7f535208 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -338,7 +338,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) find_library(KDE4_PHONONCORE_LIBRARY NAMES phononcore PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_PHONONUI_LIBRARIES ${phononcore_LIB_DEPENDS} ${KDE4_PHONONCORE_LIBRARY} ) + set(KDE4_PHONONCORE_LIBRARIES ${phononcore_LIB_DEPENDS} ${KDE4_PHONONCORE_LIBRARY} ) find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_PHONONUI_LIBRARIES ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) -- cgit v1.2.1 From 700906bdeb7042b1584800877b5d6bc3ba702027 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 5 Jun 2006 16:47:04 +0000 Subject: remove MacroGetenvWinPath.cmake, this is not required anymore since cmake 2.4.1 Alex svn path=/trunk/KDE/kdelibs/; revision=548477 --- modules/CMakeLists.txt | 1 + modules/FindGNUWIN32.cmake | 6 ++---- modules/FindKDEWIN32.cmake | 20 +++++++++----------- modules/MacroGetenvWinPath.cmake | 5 ----- modules/MacroLibrary.cmake | 1 - 5 files changed, 12 insertions(+), 21 deletions(-) delete mode 100644 modules/MacroGetenvWinPath.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index f9c7c45a..2b7a53a2 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -8,6 +8,7 @@ install_files(${module_install_dir} FILES kde4init_dummy.cpp.in ${cmakeFiles} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE + ${CMAKE_INSTALL_PREFIX}${module_install_dir}/MacroGetenvWinPath.cmake ${CMAKE_INSTALL_PREFIX}${module_install_dir}/FindKDE4.cmake ${CMAKE_INSTALL_PREFIX}${module_install_dir}/UsePkgconfig.cmake ${CMAKE_INSTALL_PREFIX}${module_install_dir}/FindKDE3.cmake diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 622fd3cf..8b1b15a6 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -1,10 +1,8 @@ if (WIN32) -INCLUDE(MacroGetenvWinPath) +file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) -MACRO_GETENV_WIN_PATH(_progFiles PROGRAMFILES) - -FIND_FILE(GNUWIN32_DIR gnuwin32 +find_file(GNUWIN32_DIR gnuwin32 ${_progFiles} "C:/" ) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index eb0bfbbf..cf3a7b11 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -7,15 +7,13 @@ if (WIN32) -INCLUDE(MacroGetenvWinPath) +file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) -MACRO_GETENV_WIN_PATH(_program_FILES_DIR PROGRAMFILES) +if(NOT QT4_FOUND) + find_package(Qt4 REQUIRED) +endif(NOT QT4_FOUND) -IF(NOT QT4_FOUND) -FIND_PACKAGE(Qt4 REQUIRED) -ENDIF(NOT QT4_FOUND) - -FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h +find_path(KDEWIN32_INCLUDE_DIR winposix_export.h ${_program_FILES_DIR}/kdewin32/include ) @@ -23,14 +21,14 @@ FIND_PATH(KDEWIN32_INCLUDE_DIR winposix_export.h # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) -FIND_LIBRARY(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 +find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 PATHS ${_program_FILES_DIR}/kdewin32/lib ) # msvc makes a difference between debug and release if(MSVC) - FIND_LIBRARY(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d + find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d PATHS ${_program_FILES_DIR}/kdewin32/lib ) @@ -41,7 +39,7 @@ if(MSVC) endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) else(MSVC_IDE) - STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) @@ -65,7 +63,7 @@ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) else (MINGW) # msvc compiler # add the MS SDK include directory if available - MACRO_GETENV_WIN_PATH(MSSDK_DIR MSSDK) + file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) endif (MINGW) diff --git a/modules/MacroGetenvWinPath.cmake b/modules/MacroGetenvWinPath.cmake deleted file mode 100644 index b18f7f63..00000000 --- a/modules/MacroGetenvWinPath.cmake +++ /dev/null @@ -1,5 +0,0 @@ - -MACRO (MACRO_GETENV_WIN_PATH var name) - set(${var} $ENV{${name}}) - STRING(REGEX REPLACE "\\\\" "/" ${var} "${${var}}") -ENDMACRO (MACRO_GETENV_WIN_PATH var name) diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 517141e9..ce741f7b 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -4,6 +4,5 @@ INCLUDE(MacroOptionalFindPackage) INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) -INCLUDE(MacroGetenvWinPath) INCLUDE(MacroEnsureOutOfSourceBuild) INCLUDE(MacroBoolTo01) -- cgit v1.2.1 From 45ab42fbd2e5aaf08d0fabba2090c65c502f7560 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 6 Jun 2006 20:50:50 +0000 Subject: win32 fixes svn path=/trunk/KDE/kdelibs/; revision=548907 --- modules/FindQtDBus.cmake | 48 ++++++++++++++++++++++++++++++++++-------------- 1 file changed, 34 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 28de058d..079c71b8 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -27,19 +27,38 @@ if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + if (WIN32) + find_file(QDBUS_DIR qt-dbus + ${_progFiles} + "C:/" + ) + set(QDBUS_DEFINITIONS CACHE INTERNAL "Definitions for Qt DBUS") + set(QDBUS_INCLUDE_DIRS ${QDBUS_DIR}/include/dbus-1.0 CACHE INTERNAL "Include dirs for Qt DBUS") - PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) - PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) + FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 + PATHS ${QDBUS_DIR}/lib + ) + # how to add specific pathes to find_program, using PATHS seems not to work on win32 + # find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS ${QDBUS_DIR}/bin) + find_file(QDBUS_IDL2CPP_EXECUTABLE dbusidl2cpp.exe ${QDBUS_DIR}/bin) + find_file(QDBUS_CPP2XML_EXECUTABLE dbuscpp2xml.exe ${QDBUS_DIR}/bin) + + else (WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) + PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) + + set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") + set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") + + FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 + PATHS ${_qdbusLinkDir} + ) - set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") - set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") - - FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS ${_qdbusLinkDir} - ) + endif (WIN32) if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) set(QDBUS_FOUND TRUE) @@ -59,7 +78,8 @@ else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) endif(QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) -find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS) -find_program(QDBUS_CPP2XML_EXECUTABLE NAME dbuscpp2xml PATHS) - +if (NOT WIN32) + find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS ) + find_program(QDBUS_CPP2XML_EXECUTABLE NAME dbuscpp2xml PATHS ) +endif (NOT WIN32) include( QtDBusMacros ) -- cgit v1.2.1 From 8243761c0822e0da20ae4915315c9c3559ad2b30 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Wed, 7 Jun 2006 18:09:47 +0000 Subject: Fix paths with white space. svn path=/trunk/KDE/kdelibs/; revision=549198 --- modules/FindQtDBus.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 079c71b8..2464a68a 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -33,15 +33,15 @@ else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) "C:/" ) set(QDBUS_DEFINITIONS CACHE INTERNAL "Definitions for Qt DBUS") - set(QDBUS_INCLUDE_DIRS ${QDBUS_DIR}/include/dbus-1.0 CACHE INTERNAL "Include dirs for Qt DBUS") + set(QDBUS_INCLUDE_DIRS "${QDBUS_DIR}/include/dbus-1.0" CACHE INTERNAL "Include dirs for Qt DBUS") FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS ${QDBUS_DIR}/lib + PATHS "${QDBUS_DIR}/lib" ) # how to add specific pathes to find_program, using PATHS seems not to work on win32 - # find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS ${QDBUS_DIR}/bin) - find_file(QDBUS_IDL2CPP_EXECUTABLE dbusidl2cpp.exe ${QDBUS_DIR}/bin) - find_file(QDBUS_CPP2XML_EXECUTABLE dbuscpp2xml.exe ${QDBUS_DIR}/bin) + # find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS "${QDBUS_DIR}/bin") + find_file(QDBUS_IDL2CPP_EXECUTABLE dbusidl2cpp.exe "${QDBUS_DIR}/bin") + find_file(QDBUS_CPP2XML_EXECUTABLE dbuscpp2xml.exe "${QDBUS_DIR}/bin") else (WIN32) # use pkg-config to get the directories and then use these values -- cgit v1.2.1 From 19c5aee9339b60621797e8d382e0ea9ed176a424 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 7 Jun 2006 20:09:04 +0000 Subject: -first check for qmake, then for qmake-qt4, this is in sync with cmake's FindQt4.cmake and better for us (as we use qt-copy) Alex svn path=/trunk/KDE/kdelibs/; revision=549218 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 98471763..82260528 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -172,7 +172,7 @@ IF (WIN32) ENDIF(WIN32) # check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake PATHS +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake-qt4 PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin -- cgit v1.2.1 From 2a0a50c67f79208f3b9e85e61c268e63446152fc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 9 Jun 2006 19:03:57 +0000 Subject: rpath_style doesn't exist anymore since several weeks already Alex svn path=/trunk/KDE/kdelibs/; revision=549754 --- modules/FindKDE4Internal.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7f535208..128bdf17 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -89,7 +89,6 @@ # # The following user adjustable options are provided: # -# RPATH_STYLE - select the style in which RPATH is handled, one of "none", "install", "both" and "default" # KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation # KDE4_BUILD_TESTS - enable this to build the testcases # -- cgit v1.2.1 From 771c2ddc90cbf250466c89ee558b884a67b5f615 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 9 Jun 2006 19:33:14 +0000 Subject: apply patch from Peter Kuemmel Alex svn path=/trunk/KDE/kdelibs/; revision=549759 --- modules/FindZLIB.cmake | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index b1d6d098..91cc675e 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,23 +1,34 @@ -if (ZLIB_INCLUDE_DIR) +# - Try to find a z compression library +# under Windows the zlib exists with a variety of slightly different names +# Once done this will define +# +# ZLIB_FOUND - system has zlib +# ZLIB_INCLUDE_DIR - the zlib include directory +# ZLIB_LIBRARY - The libraries needed to use zlib + + +IF (ZLIB_INCLUDE_DIR) # Already in cache, be silent - set(ZLIB_FIND_QUIETLY TRUE) -endif (ZLIB_INCLUDE_DIR) + SET(ZLIB_FIND_QUIETLY TRUE) +ENDIF (ZLIB_INCLUDE_DIR) FIND_PATH(ZLIB_INCLUDE_DIR zlib.h /usr/include /usr/local/include ) -set(POTENTIAL_Z_LIBS z zlib) +SET(POTENTIAL_Z_LIBS z zlib zdll) FIND_LIBRARY(ZLIB_LIBRARY NAMES ${POTENTIAL_Z_LIBS} -PATHS - /usr/lib - /usr/local/lib + PATHS + /usr/lib + /usr/local/lib ) -IF (ZLIB_INCLUDE_DIR) +IF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) SET(ZLIB_FOUND TRUE) -ENDIF (ZLIB_INCLUDE_DIR) +ELSE (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) + SET(ZLIB_FOUND FALSE) +ENDIF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) IF (ZLIB_FOUND) IF (NOT ZLIB_FIND_QUIETLY) -- cgit v1.2.1 From 62180630e416ded01918973edcaf6fe8936fd34d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 9 Jun 2006 21:15:15 +0000 Subject: -also check for zdll on windows, patch from Peter -sync with cmake cvs Alex svn path=/trunk/KDE/kdelibs/; revision=549790 --- modules/FindZLIB.cmake | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index 91cc675e..b2a1a66b 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,10 +1,9 @@ -# - Try to find a z compression library -# under Windows the zlib exists with a variety of slightly different names -# Once done this will define +# - Find zlib +# Find the native ZLIB includes and library # -# ZLIB_FOUND - system has zlib -# ZLIB_INCLUDE_DIR - the zlib include directory -# ZLIB_LIBRARY - The libraries needed to use zlib +# ZLIB_INCLUDE_DIR - where to find zlib.h, etc. +# ZLIB_LIBRARIES - List of libraries when using zlib. +# ZLIB_FOUND - True if zlib found. IF (ZLIB_INCLUDE_DIR) @@ -13,33 +12,36 @@ IF (ZLIB_INCLUDE_DIR) ENDIF (ZLIB_INCLUDE_DIR) FIND_PATH(ZLIB_INCLUDE_DIR zlib.h - /usr/include - /usr/local/include + /usr/local/include + /usr/include ) -SET(POTENTIAL_Z_LIBS z zlib zdll) -FIND_LIBRARY(ZLIB_LIBRARY NAMES ${POTENTIAL_Z_LIBS} - PATHS - /usr/lib - /usr/local/lib +SET(ZLIB_NAMES z zlib zdll) +FIND_LIBRARY(ZLIB_LIBRARY + NAMES ${ZLIB_NAMES} + PATHS /usr/lib /usr/local/lib ) IF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) SET(ZLIB_FOUND TRUE) + SET( ZLIB_LIBRARIES ${ZLIB_LIBRARY} ) ELSE (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) SET(ZLIB_FOUND FALSE) + SET( ZLIB_LIBRARIES ) ENDIF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) IF (ZLIB_FOUND) IF (NOT ZLIB_FIND_QUIETLY) - MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}") + MESSAGE(STATUS "Found ZLIB: ${ZLIB_LIBRARY}") ENDIF (NOT ZLIB_FIND_QUIETLY) ELSE (ZLIB_FOUND) IF (ZLIB_FIND_REQUIRED) - MESSAGE(STATUS "Looked for Z libraries named ${POTENTIAL_Z_LIBS}.") - MESSAGE(STATUS "Found no acceptable Z library. This is fatal.") + MESSAGE(STATUS "Looked for Z libraries named ${ZLIBS_NAMES}.") MESSAGE(FATAL_ERROR "Could NOT find z library") ENDIF (ZLIB_FIND_REQUIRED) ENDIF (ZLIB_FOUND) -MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) +MARK_AS_ADVANCED( + ZLIB_LIBRARY + ZLIB_INCLUDE_DIR + ) -- cgit v1.2.1 From b659701ab253071b46ba755d225853dd896fe0e5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 9 Jun 2006 21:16:31 +0000 Subject: -remove FindZLIB.cmake once we require cmake >= 2.4.3 Alex svn path=/trunk/KDE/kdelibs/; revision=549791 --- modules/CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 2b7a53a2..31d43074 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -16,6 +16,9 @@ set(FILES_TO_REMOVE ${CMAKE_INSTALL_PREFIX}${module_install_dir}/kde3uic.cmake ${CMAKE_INSTALL_PREFIX}${module_install_dir}/kde3init_dummy.cpp.in ) +# remove the following files once we depend on cmake >= 2.4.3 +# FindZLIB.cmake + install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") -- cgit v1.2.1 From b8fac200784db0f09fe52af593f0db336919c123 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 12 Jun 2006 21:51:49 +0000 Subject: use d-bus 0.62 svn path=/trunk/KDE/kdelibs/; revision=550825 --- modules/FindQtDBus.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 2464a68a..aaba1069 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -70,8 +70,7 @@ else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") endif (NOT QDBUS_FIND_QUIETLY) else (QDBUS_FOUND) - message(STATUS "You need the CVS version of D-BUS library. The one that your distribution installed, even if it's 0.61, probably won't be enough to compile QtDBus.") - message(STATUS "You need the Subversion or CVS version of QtDBus. It's official home is now in trunk/kdesupport/") + message(STATUS "You need D-BUS 0.62 or newer with Qt4 bindings enabled.") message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") message(FATAL_ERROR "Could NOT find QtDBus") endif (QDBUS_FOUND) -- cgit v1.2.1 From e2331cb2ac0358b2a2c04d42dd47b0a4407e35b7 Mon Sep 17 00:00:00 2001 From: George Staikos Date: Wed, 14 Jun 2006 02:07:07 +0000 Subject: I can't build without this svn path=/trunk/KDE/kdelibs/; revision=551249 --- modules/FindQtDBus.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index aaba1069..8c5b76c0 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -55,7 +55,7 @@ else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS ${_qdbusLinkDir} + PATHS ${_qdbusLinkDir} ${_dbusLinkDir} ) endif (WIN32) -- cgit v1.2.1 From d3d0ee77c4632dd2ed9f7a8b99ea98b2b2c9f6f6 Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 16 Jun 2006 17:22:44 +0000 Subject: Better error messages when either dbus-1 or dbus-qt4-1 can't be found using pkg-config. svn path=/trunk/KDE/kdelibs/; revision=552127 --- modules/FindQtDBus.cmake | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 8c5b76c0..65604175 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -42,18 +42,32 @@ else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) # find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS "${QDBUS_DIR}/bin") find_file(QDBUS_IDL2CPP_EXECUTABLE dbusidl2cpp.exe "${QDBUS_DIR}/bin") find_file(QDBUS_CPP2XML_EXECUTABLE dbuscpp2xml.exe "${QDBUS_DIR}/bin") - + else (WIN32) + # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) - + PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) + if (NOT _dbusIncDir) + message(STATUS "You need D-BUS 0.62 or newer.") + message(STATUS "If you have dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-1' works") + message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") + message(FATAL_ERROR "Could NOT find DBus") + endif (NOT _dbusIncDir) + PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) - + if (NOT _qdbusIncDir) + message(STATUS "You need the Qt4 bindings for dbus. The current recommendation is to install them from kdesupprt.") + message(STATUS "If you have qt-dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-qt4-1' works") + message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") + message(FATAL_ERROR "Could NOT find qt-dbus") + endif (NOT _qdbusIncDir) + set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") - + FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 PATHS ${_qdbusLinkDir} ${_dbusLinkDir} ) -- cgit v1.2.1 From 918653165c029d8b2aaff79ecbcb6bdc74afc8e8 Mon Sep 17 00:00:00 2001 From: Helge Deller Date: Fri, 16 Jun 2006 20:56:40 +0000 Subject: typo fix - "kdesupport", not "kdesupprt" svn path=/trunk/KDE/kdelibs/; revision=552184 --- modules/FindQtDBus.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 65604175..72c2502d 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -59,7 +59,7 @@ else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) if (NOT _qdbusIncDir) - message(STATUS "You need the Qt4 bindings for dbus. The current recommendation is to install them from kdesupprt.") + message(STATUS "You need the Qt4 bindings for dbus. The current recommendation is to install them from kdesupport.") message(STATUS "If you have qt-dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-qt4-1' works") message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") message(FATAL_ERROR "Could NOT find qt-dbus") -- cgit v1.2.1 From d1502894bdccc2e40ea81aadede9040899c514bb Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Sat, 17 Jun 2006 09:16:29 +0000 Subject: Handle org.foo.Bar.xml correctly, ie. generate barinterface.h/.cpp. svn path=/trunk/KDE/kdelibs/; revision=552266 --- modules/QtDBusMacros.cmake | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/QtDBusMacros.cmake b/modules/QtDBusMacros.cmake index f279f1c4..b7f00f12 100644 --- a/modules/QtDBusMacros.cmake +++ b/modules/QtDBusMacros.cmake @@ -5,12 +5,13 @@ macro(qdbus_add_interfaces _sources) foreach (_i ${ARGN}) get_filename_component(_xml_file ${_i} ABSOLUTE) - get_filename_component(_basename ${_i} NAME_WE) - set(_target_base ${CMAKE_CURRENT_BINARY_DIR}/${_basename}) + string(REGEX REPLACE ".*\\.([^\\.]+)\\.xml$" "\\1" _basename ${_i}) + string(TOLOWER ${_basename} _basename) + set(_target_base ${CMAKE_CURRENT_BINARY_DIR}/${_basename}interface) add_custom_command(OUTPUT ${_target_base}.cpp ${_target_base}.h COMMAND ${QDBUS_IDL2CPP_EXECUTABLE} - ARGS -m -p ${_basename} ${_xml_file} + ARGS -m -p ${_target_base} ${_xml_file} DEPENDS ${_xml_file} ) @@ -37,7 +38,8 @@ endmacro(qdbus_generate_interface) macro(qdbus_add_adaptors _sources) foreach (_i ${ARGN}) get_filename_component(_xml_file ${_i} ABSOLUTE) - get_filename_component(_basename ${_i} NAME_WE) + string(REGEX REPLACE ".*\\.([^\\.]+)\\.xml$" "\\1" _basename ${_i}) + string(TOLOWER ${_basename} _basename) set(_target_base ${CMAKE_CURRENT_BINARY_DIR}/${_basename}adaptor) add_custom_command(OUTPUT ${_target_base}.cpp ${_target_base}.h -- cgit v1.2.1 From f20cd1e4876fe5277f42e54561690495cb24d417 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 18 Jun 2006 18:58:23 +0000 Subject: -macro_push_required_vars() and macro_pop_required_vars() for guarding cmake's check_something_exists() macros Alex svn path=/trunk/KDE/kdelibs/; revision=552675 --- modules/MacroLibrary.cmake | 1 + modules/MacroPushRequiredVars.cmake | 28 ++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 modules/MacroPushRequiredVars.cmake (limited to 'modules') diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index ce741f7b..c4006c27 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -6,3 +6,4 @@ INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroEnsureOutOfSourceBuild) INCLUDE(MacroBoolTo01) +INCLUDE(MacroPushRequiredVars) diff --git a/modules/MacroPushRequiredVars.cmake b/modules/MacroPushRequiredVars.cmake new file mode 100644 index 00000000..34ff0e9f --- /dev/null +++ b/modules/MacroPushRequiredVars.cmake @@ -0,0 +1,28 @@ +# this module defines two macros: +# MACRO_PUSH_REQUIRED_VARS() +# and +# MACRO_POP_REQUIRED_VARS() +# use these if you call cmake macros which use +# any of the CMAKE_REQUIRED_XXX variables +# +# Usage: +# MACRO_PUSH_REQUIRED_VARS() +# SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} -DSOME_MORE_DEF) +# CHECK_FUNCTION_EXISTS(...) +# MACRO_POP_REQUIRED_VARS() +# + +MACRO(MACRO_PUSH_REQUIRED_VARS) + SET(_CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) + SET(_CMAKE_REQUIRED_DEFINITIONS_SAVE ${CMAKE_REQUIRED_DEFINITIONS}) + SET(_CMAKE_REQUIRED_LIBRARIES_SAVE ${CMAKE_REQUIRED_LIBRARIES}) + SET(_CMAKE_REQUIRED_FLAGS_SAVE ${CMAKE_REQUIRED_FLAGS}) +ENDMACRO(MACRO_PUSH_REQUIRED_VARS) + +MACRO(MACRO_POP_REQUIRED_VARS) + SET(CMAKE_REQUIRED_INCLUDES ${_CMAKE_REQUIRED_INCLUDES_SAVE}) + SET(CMAKE_REQUIRED_DEFINITIONS ${_CMAKE_REQUIRED_DEFINITIONS_SAVE}) + SET(CMAKE_REQUIRED_LIBRARIES ${_CMAKE_REQUIRED_LIBRARIES_SAVE}) + SET(CMAKE_REQUIRED_FLAGS ${_CMAKE_REQUIRED_FLAGS_SAVE}) +ENDMACRO(MACRO_POP_REQUIRED_VARS) + -- cgit v1.2.1 From 7bc7eeccff03cc74fa33a4f967158545e8f4ad0f Mon Sep 17 00:00:00 2001 From: David Faure Date: Sun, 18 Jun 2006 22:05:14 +0000 Subject: Don't look for X11 again, FindQt4 did it already (if Q_WS_X11) svn path=/trunk/KDE/kdelibs/; revision=552723 --- modules/FindKDE4Internal.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 128bdf17..1492c855 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -169,7 +169,7 @@ INCLUDE (MacroEnsureVersion) cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) set(QT_MIN_VERSION "4.1.1") -#this line includes FindQt.cmake, which searches the Qt library and headers +#this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) # Perl is required for building KDE software, @@ -465,7 +465,8 @@ endif (UNIX) # UNIX, except OS X if (UNIX AND NOT APPLE) - find_package(X11 REQUIRED) + # Done by FindQt4.cmake already + #find_package(X11 REQUIRED) # UNIX has already set _KDE4_PLATFORM_INCLUDE_DIRS, so append set(_KDE4_PLATFORM_INCLUDE_DIRS ${_KDE4_PLATFORM_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) endif (UNIX AND NOT APPLE) -- cgit v1.2.1 From a695f0c535780b0c91d70c82364d8c6b2e3dc5f0 Mon Sep 17 00:00:00 2001 From: Paulo Moura Guedes Date: Tue, 20 Jun 2006 10:34:01 +0000 Subject: Fix probable copy/paste error. svn path=/trunk/KDE/kdelibs/; revision=553182 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 82260528..6fdea59e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -393,7 +393,7 @@ IF (QT4_QMAKE_FOUND) ) # Set QT_QTUITOOLS_INCLUDE_DIR - FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtTest + FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools PATHS ${QT_INCLUDE_DIR}/QtUiTools ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers -- cgit v1.2.1 From 9193f36cd22756ad1d0f8e65931f0363a20fb9d0 Mon Sep 17 00:00:00 2001 From: Marijn Kruisselbrink Date: Tue, 20 Jun 2006 12:50:03 +0000 Subject: Fix compilation on OSX: QtUiTools also doesn't come as a framework. svn path=/trunk/KDE/kdelibs/; revision=553216 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 6fdea59e..95cd5578 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -495,11 +495,11 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY_RELEASE "-framework QtSvg" CACHE STRING "The QtSvg library.") SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTUITOOLS_LIBRARY_RELEASE "-framework QtUiTools" CACHE STRING "The QtUiTools library.") - SET(QT_QTUITOOLS_LIBRARY_DEBUG "-framework QtUiTools" CACHE STRING "The QtUiTools library.") # WTF? why don't we have frameworks? :P + SET(QT_QTUITOOLS_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") + SET(QT_QTUITOOLS_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") SET(QT_QTTEST_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest_debug" CACHE STRING "The QtTest library.") MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) -- cgit v1.2.1 From 7833b252f1caea1b47cedcd74564fa662cb82618 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 24 Jun 2006 08:47:16 +0000 Subject: Define KDELIBSUFF svn path=/trunk/KDE/kdelibs/; revision=554531 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1492c855..3c4f0939 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -635,3 +635,6 @@ set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DI # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) +string(REGEX REPLACE "/lib" "" KDELIBSUFF ${LIB_INSTALL_DIR} ) +MESSAGE(STATUS "KDELIBSUFF :<${KDELIBSUFF}>") + -- cgit v1.2.1 From 318148f110971cdb1fa9bd303c58804e52b6f9db Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 24 Jun 2006 14:35:39 +0000 Subject: now handles required packages. also supports minimum_version and comments fields. approved by aleXXX. svn path=/trunk/KDE/kdelibs/; revision=554598 --- modules/MacroLogFeature.cmake | 94 ++++++++++++++++++++++++++++--------------- 1 file changed, 61 insertions(+), 33 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index dcb3c731..89c6e0bb 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -1,58 +1,86 @@ # This file defines two macros: -# MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL) -# Logs the information so that it can be displayed at the end -# of the configure run -# VAR : variable which is TRUE or FALSE indicating whether the feature is supported -# FEATURE: name of the feature, e.g. "libjpeg" -# DESCRIPTION: description what this feature provides -# URL: home page +# +# MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL MIN_VERSION COMMENTS) +# Logs the information so that it can be displayed at the end +# of the configure run +# VAR : TRUE or FALSE, indicating whether the feature is supported +# FEATURE: name of the feature, e.g. "libjpeg" +# DESCRIPTION: description what this feature provides +# URL: home page +# REQUIRED: TRUE or FALSE, indicating whether the featue is required +# MIN_VERSION: minimum version number. empty string if unneeded +# COMMENTS: More info you may want to provide. empty string if unnecessary # # MACRO_DISPLAY_FEATURE_LOG() -# Call this at the end of the toplevel CMakeLists.txt to display the collected results +# Call this to display the collected results. +# Exits CMake with a FATAL error message if a required feature is missing # # Example: # # INCLUDE(MacroLogFeature) # # FIND_PACKAGE(JPEG) -# MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org") +# MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org" TRUE "3.2a" "") # ... # MACRO_DISPLAY_FEATURE_LOG() -MACRO(MACRO_LOG_FEATURE _var _package _description _url) - - IF (NOT EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") - FILE(WRITE "${CMAKE_BINARY_DIR}/EnabledFeatures.txt" "\n") - ENDIF (NOT EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") - - IF (NOT EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") - FILE(WRITE "${CMAKE_BINARY_DIR}/DisabledFeatures.txt" "\n") - ENDIF (NOT EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") - +MACRO(MACRO_LOG_FEATURE _var _package _description _url _required _minvers _comments) IF (${_var}) - SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) ELSE (${_var}) - SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) + IF (${_required}) + SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/MissingRequirements.txt) + ELSE (${_required}) + SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) + ENDIF (${_required}) ENDIF (${_var}) - FILE(APPEND "${_LOGFILENAME}" "PACKAGE: ${_package}\nDESCRIPTION: ${_description}\nURL: ${_url}\n\n") + IF (NOT EXISTS ${_LOGFILENAME}) + FILE(WRITE ${_LOGFILENAME} "\n") + ENDIF (NOT EXISTS ${_LOGFILENAME}) + FILE(APPEND "${_LOGFILENAME}" "=======================================\n") + FILE(APPEND "${_LOGFILENAME}" "PACKAGE: ${_package}\n") + FILE(APPEND "${_LOGFILENAME}" "DESCRIPTION: ${_description}\n") + FILE(APPEND "${_LOGFILENAME}" "URL: ${_url}\n") + IF (${_minvers} MATCHES ".*") + FILE(APPEND "${_LOGFILENAME}" "VERSION: ${_minvers}\n") + ENDIF (${_minvers} MATCHES ".*") + IF (${_comments} MATCHES ".*") + FILE(APPEND "${_LOGFILENAME}" "COMMENTS: ${_comments}\n") + ENDIF (${_comments} MATCHES ".*") + ENDMACRO(MACRO_LOG_FEATURE) MACRO(MACRO_DISPLAY_FEATURE_LOG) - IF (EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") - FILE(READ ${CMAKE_BINARY_DIR}/EnabledFeatures.txt _features) - MESSAGE(STATUS "Enabled features:\n${_features}") - FILE(REMOVE ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) - ENDIF (EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt") - - IF (EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") - FILE(READ ${CMAKE_BINARY_DIR}/DisabledFeatures.txt _features) - MESSAGE(STATUS "Disabled features:\n${_features}") - FILE(REMOVE ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) - ENDIF (EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt") + + SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) + IF (EXISTS ${_file}) + FILE(APPEND ${_file} "=======================================") + FILE(READ ${_file} _requirements) + MESSAGE(STATUS "\nMissing Requirements:${_requirements}") + FILE(REMOVE ${_file}) + MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") + ENDIF (EXISTS ${_file}) + + SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + IF (EXISTS ${_file}) + FILE(APPEND ${_file} "=======================================") + FILE(READ ${_file} _enabled) + MESSAGE(STATUS "\nEnabled Features:${_enabled}") + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + + SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt ) + IF (EXISTS ${_file}) + FILE(APPEND ${_file} "=======================================") + FILE(READ ${_file} _disabled) + MESSAGE(STATUS "\nDisabled Features:${_disabled}") + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + ENDMACRO(MACRO_DISPLAY_FEATURE_LOG) -- cgit v1.2.1 From 67ba51a1d6557ed9f66cba9012400b7136e89ce4 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 24 Jun 2006 14:36:02 +0000 Subject: port to new MacroLogFeature() svn path=/trunk/KDE/kdelibs/; revision=554599 --- modules/FindQtDBus.cmake | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 72c2502d..77114bef 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -19,6 +19,7 @@ # QDBUS_ADD_ADAPTORS(SRC_VAR file1.xml ... fileN.xml) # Generates adaptor code from the given XML files. # +INCLUDE(MacroLogFeature) if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) @@ -51,20 +52,17 @@ else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) if (NOT _dbusIncDir) - message(STATUS "You need D-BUS 0.62 or newer.") - message(STATUS "If you have dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-1' works") - message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") - message(FATAL_ERROR "Could NOT find DBus") + MACRO_LOG_FEATURE(0 "D-BUS" "D-BUS message bus system" "http://www.freedesktop.org/wiki/Software_2fdbus" 1 "0.62" "If you have dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") endif (NOT _dbusIncDir) PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) if (NOT _qdbusIncDir) - message(STATUS "You need the Qt4 bindings for dbus. The current recommendation is to install them from kdesupport.") - message(STATUS "If you have qt-dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-qt4-1' works") - message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") - message(FATAL_ERROR "Could NOT find qt-dbus") + MACRO_LOG_FEATURE(0 "QtDBus" "Qt4 D-BUS Bindings" "$SVNROOT/trunk/kdesupport" 1 "SVN" "If you have qt-dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-qt4-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") endif (NOT _qdbusIncDir) + # report and exit here if qbus or qtdbus not found + MACRO_DISPLAY_FEATURE_LOG() + set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") -- cgit v1.2.1 From 77c8d3d6a592f090e281852711bb10c6d7badf1f Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Fri, 30 Jun 2006 10:50:02 +0000 Subject: This is safe to add. svn path=/trunk/KDE/kdelibs/; revision=556460 --- modules/FindQt4.cmake | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 95cd5578..63b636ed 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -463,6 +463,14 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + # Set QT_DBUS_INCLUDE_DIR + FIND_PATH(QT_DBUS_INCLUDE_DIR QtDBus + PATHS + ${QT_INCLUDE_DIR}/QtDBus + ${QT_HEADERS_DIR}/QtDBus + NO_DEFAULT_PATH + ) + # Make variables changeble to the advanced user MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR) @@ -495,6 +503,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY_RELEASE "-framework QtSvg" CACHE STRING "The QtSvg library.") SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") + SET(QT_QTDBUS_LIBRARY_DEBUG "-framework QtDBus" CACHE STRING "The QtBBus library.") # WTF? why don't we have frameworks? :P @@ -556,6 +565,9 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBus_debug QtDBus_debug4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) ENDIF (QT_USE_FRAMEWORKS) @@ -641,6 +653,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTSVG) _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) + _QT4_ADJUST_LIB_VARS(QTDBUS) ####################################### # -- cgit v1.2.1 From 573481bf56939181d1c0fd7f3a1c9408a19385d0 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Fri, 30 Jun 2006 14:06:43 +0000 Subject: Port to the new QtDBus API, including regeneration of the interface and adaptor files. I'm sorry that this breaks the compilation with qt-copy and kdesupport, but I need to commit this since I'm turning off this computer. svn path=/trunk/KDE/kdelibs/; revision=556512 --- modules/FindQtDBus.cmake | 81 ++++-------------------------------------------- 1 file changed, 6 insertions(+), 75 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 77114bef..c0b5e6f7 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -19,78 +19,9 @@ # QDBUS_ADD_ADAPTORS(SRC_VAR file1.xml ... fileN.xml) # Generates adaptor code from the given XML files. # -INCLUDE(MacroLogFeature) - -if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - - # already in cache - set(QDBUS_FOUND TRUE) - -else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - - if (WIN32) - find_file(QDBUS_DIR qt-dbus - ${_progFiles} - "C:/" - ) - set(QDBUS_DEFINITIONS CACHE INTERNAL "Definitions for Qt DBUS") - set(QDBUS_INCLUDE_DIRS "${QDBUS_DIR}/include/dbus-1.0" CACHE INTERNAL "Include dirs for Qt DBUS") - - FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS "${QDBUS_DIR}/lib" - ) - # how to add specific pathes to find_program, using PATHS seems not to work on win32 - # find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS "${QDBUS_DIR}/bin") - find_file(QDBUS_IDL2CPP_EXECUTABLE dbusidl2cpp.exe "${QDBUS_DIR}/bin") - find_file(QDBUS_CPP2XML_EXECUTABLE dbuscpp2xml.exe "${QDBUS_DIR}/bin") - - else (WIN32) - - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) - if (NOT _dbusIncDir) - MACRO_LOG_FEATURE(0 "D-BUS" "D-BUS message bus system" "http://www.freedesktop.org/wiki/Software_2fdbus" 1 "0.62" "If you have dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") - endif (NOT _dbusIncDir) - - PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) - if (NOT _qdbusIncDir) - MACRO_LOG_FEATURE(0 "QtDBus" "Qt4 D-BUS Bindings" "$SVNROOT/trunk/kdesupport" 1 "SVN" "If you have qt-dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-qt4-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") - endif (NOT _qdbusIncDir) - - # report and exit here if qbus or qtdbus not found - MACRO_DISPLAY_FEATURE_LOG() - - set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") - set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") - - FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS ${_qdbusLinkDir} ${_dbusLinkDir} - ) - - endif (WIN32) - - if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - set(QDBUS_FOUND TRUE) - endif (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - - message(STATUS "QtDBus Results: ${QDBUS_LIBRARIES} ${QDBUS_INCLUDE_DIRS} ${QDBUS_DEFINITIONS}") - if (QDBUS_FOUND) - if (NOT QDBUS_FIND_QUIETLY) - message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") - endif (NOT QDBUS_FIND_QUIETLY) - else (QDBUS_FOUND) - message(STATUS "You need D-BUS 0.62 or newer with Qt4 bindings enabled.") - message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") - message(FATAL_ERROR "Could NOT find QtDBus") - endif (QDBUS_FOUND) - -endif(QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - -if (NOT WIN32) - find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS ) - find_program(QDBUS_CPP2XML_EXECUTABLE NAME dbuscpp2xml PATHS ) -endif (NOT WIN32) -include( QtDBusMacros ) +SET(QDBUS_FOUND) +SET(QDBUS_INCLUDE_DIRS ${QT_DBUS_INCLUDE_DIR}) +SET(QDBUS_LIBRARIES ${QT_QTDBUS_LIBRARY_DEBUG}) +SET(QDBUS_DEFINITIONS -I${QDBUS_INCLUDE_DIRS}) +SET(QDBUS_IDL2CPP_EXECUTABLE) +SET(QDBUS_CPP2XML_EXECUTABLE) -- cgit v1.2.1 From ac0eec89d1516949ab8d44f8b9193b337806fbcd Mon Sep 17 00:00:00 2001 From: Michael Pyne Date: Fri, 30 Jun 2006 19:09:42 +0000 Subject: Revert thiago's merge to kdelibs /trunk that broke lotsa stuff for now. svn path=/trunk/KDE/kdelibs/; revision=556588 --- modules/FindQtDBus.cmake | 81 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 75 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index c0b5e6f7..77114bef 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -19,9 +19,78 @@ # QDBUS_ADD_ADAPTORS(SRC_VAR file1.xml ... fileN.xml) # Generates adaptor code from the given XML files. # -SET(QDBUS_FOUND) -SET(QDBUS_INCLUDE_DIRS ${QT_DBUS_INCLUDE_DIR}) -SET(QDBUS_LIBRARIES ${QT_QTDBUS_LIBRARY_DEBUG}) -SET(QDBUS_DEFINITIONS -I${QDBUS_INCLUDE_DIRS}) -SET(QDBUS_IDL2CPP_EXECUTABLE) -SET(QDBUS_CPP2XML_EXECUTABLE) +INCLUDE(MacroLogFeature) + +if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + + # already in cache + set(QDBUS_FOUND TRUE) + +else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + + if (WIN32) + find_file(QDBUS_DIR qt-dbus + ${_progFiles} + "C:/" + ) + set(QDBUS_DEFINITIONS CACHE INTERNAL "Definitions for Qt DBUS") + set(QDBUS_INCLUDE_DIRS "${QDBUS_DIR}/include/dbus-1.0" CACHE INTERNAL "Include dirs for Qt DBUS") + + FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 + PATHS "${QDBUS_DIR}/lib" + ) + # how to add specific pathes to find_program, using PATHS seems not to work on win32 + # find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS "${QDBUS_DIR}/bin") + find_file(QDBUS_IDL2CPP_EXECUTABLE dbusidl2cpp.exe "${QDBUS_DIR}/bin") + find_file(QDBUS_CPP2XML_EXECUTABLE dbuscpp2xml.exe "${QDBUS_DIR}/bin") + + else (WIN32) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) + if (NOT _dbusIncDir) + MACRO_LOG_FEATURE(0 "D-BUS" "D-BUS message bus system" "http://www.freedesktop.org/wiki/Software_2fdbus" 1 "0.62" "If you have dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") + endif (NOT _dbusIncDir) + + PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) + if (NOT _qdbusIncDir) + MACRO_LOG_FEATURE(0 "QtDBus" "Qt4 D-BUS Bindings" "$SVNROOT/trunk/kdesupport" 1 "SVN" "If you have qt-dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-qt4-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") + endif (NOT _qdbusIncDir) + + # report and exit here if qbus or qtdbus not found + MACRO_DISPLAY_FEATURE_LOG() + + set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") + set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") + + FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 + PATHS ${_qdbusLinkDir} ${_dbusLinkDir} + ) + + endif (WIN32) + + if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + set(QDBUS_FOUND TRUE) + endif (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + + message(STATUS "QtDBus Results: ${QDBUS_LIBRARIES} ${QDBUS_INCLUDE_DIRS} ${QDBUS_DEFINITIONS}") + if (QDBUS_FOUND) + if (NOT QDBUS_FIND_QUIETLY) + message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") + endif (NOT QDBUS_FIND_QUIETLY) + else (QDBUS_FOUND) + message(STATUS "You need D-BUS 0.62 or newer with Qt4 bindings enabled.") + message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") + message(FATAL_ERROR "Could NOT find QtDBus") + endif (QDBUS_FOUND) + +endif(QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) + +if (NOT WIN32) + find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS ) + find_program(QDBUS_CPP2XML_EXECUTABLE NAME dbuscpp2xml PATHS ) +endif (NOT WIN32) +include( QtDBusMacros ) -- cgit v1.2.1 From c0ddc6259758bab84aa02bd3dc3f4586a8417331 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Sat, 1 Jul 2006 20:37:17 +0000 Subject: - re-apply Thiago's patch, now that qt-copy is up-to-date with a Qt 4.2 snapshot svn path=/trunk/KDE/kdelibs/; revision=556890 --- modules/FindQtDBus.cmake | 81 ++++-------------------------------------------- 1 file changed, 6 insertions(+), 75 deletions(-) (limited to 'modules') diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake index 77114bef..c0b5e6f7 100644 --- a/modules/FindQtDBus.cmake +++ b/modules/FindQtDBus.cmake @@ -19,78 +19,9 @@ # QDBUS_ADD_ADAPTORS(SRC_VAR file1.xml ... fileN.xml) # Generates adaptor code from the given XML files. # -INCLUDE(MacroLogFeature) - -if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - - # already in cache - set(QDBUS_FOUND TRUE) - -else (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - - if (WIN32) - find_file(QDBUS_DIR qt-dbus - ${_progFiles} - "C:/" - ) - set(QDBUS_DEFINITIONS CACHE INTERNAL "Definitions for Qt DBUS") - set(QDBUS_INCLUDE_DIRS "${QDBUS_DIR}/include/dbus-1.0" CACHE INTERNAL "Include dirs for Qt DBUS") - - FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS "${QDBUS_DIR}/lib" - ) - # how to add specific pathes to find_program, using PATHS seems not to work on win32 - # find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS "${QDBUS_DIR}/bin") - find_file(QDBUS_IDL2CPP_EXECUTABLE dbusidl2cpp.exe "${QDBUS_DIR}/bin") - find_file(QDBUS_CPP2XML_EXECUTABLE dbuscpp2xml.exe "${QDBUS_DIR}/bin") - - else (WIN32) - - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG("dbus-1" _dbusIncDir _dbusLinkDir _dbusLinkFlags _dbusCflags) - if (NOT _dbusIncDir) - MACRO_LOG_FEATURE(0 "D-BUS" "D-BUS message bus system" "http://www.freedesktop.org/wiki/Software_2fdbus" 1 "0.62" "If you have dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") - endif (NOT _dbusIncDir) - - PKGCONFIG("dbus-qt4-1" _qdbusIncDir _qdbusLinkDir _qdbusLinkFlags _qdbusCflags) - if (NOT _qdbusIncDir) - MACRO_LOG_FEATURE(0 "QtDBus" "Qt4 D-BUS Bindings" "$SVNROOT/trunk/kdesupport" 1 "SVN" "If you have qt-dbus installed, check PKG_CONFIG_PATH so that 'pkg-config --libs dbus-qt4-1' works. See also the PORTING-TO-DBUS.txt file in kdelibs/") - endif (NOT _qdbusIncDir) - - # report and exit here if qbus or qtdbus not found - MACRO_DISPLAY_FEATURE_LOG() - - set(QDBUS_DEFINITIONS ${_dbusCflags} ${_qdbusCflags} CACHE INTERNAL "Definitions for Qt DBUS") - set(QDBUS_INCLUDE_DIRS ${_dbusIncDir} ${_qdbusIncDir} CACHE INTERNAL "Include dirs for Qt DBUS") - - FIND_LIBRARY(QDBUS_LIBRARIES NAMES dbus-qt4-1 - PATHS ${_qdbusLinkDir} ${_dbusLinkDir} - ) - - endif (WIN32) - - if (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - set(QDBUS_FOUND TRUE) - endif (QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - - message(STATUS "QtDBus Results: ${QDBUS_LIBRARIES} ${QDBUS_INCLUDE_DIRS} ${QDBUS_DEFINITIONS}") - if (QDBUS_FOUND) - if (NOT QDBUS_FIND_QUIETLY) - message(STATUS "Found QtDBus: ${QDBUS_LIBRARIES}") - endif (NOT QDBUS_FIND_QUIETLY) - else (QDBUS_FOUND) - message(STATUS "You need D-BUS 0.62 or newer with Qt4 bindings enabled.") - message(STATUS "See also the PORTING-TO-DBUS.txt file in kdelibs/") - message(FATAL_ERROR "Could NOT find QtDBus") - endif (QDBUS_FOUND) - -endif(QDBUS_INCLUDE_DIRS AND QDBUS_LIBRARIES) - -if (NOT WIN32) - find_program(QDBUS_IDL2CPP_EXECUTABLE NAME dbusidl2cpp PATHS ) - find_program(QDBUS_CPP2XML_EXECUTABLE NAME dbuscpp2xml PATHS ) -endif (NOT WIN32) -include( QtDBusMacros ) +SET(QDBUS_FOUND) +SET(QDBUS_INCLUDE_DIRS ${QT_DBUS_INCLUDE_DIR}) +SET(QDBUS_LIBRARIES ${QT_QTDBUS_LIBRARY_DEBUG}) +SET(QDBUS_DEFINITIONS -I${QDBUS_INCLUDE_DIRS}) +SET(QDBUS_IDL2CPP_EXECUTABLE) +SET(QDBUS_CPP2XML_EXECUTABLE) -- cgit v1.2.1 From 6c6631969b13a4a364b89a2b4fffb0abf26d9620 Mon Sep 17 00:00:00 2001 From: Tobias Koenig Date: Sat, 1 Jul 2006 21:02:05 +0000 Subject: Make kdelibs compile with current qt4.2 snapshot You have to update qt-copy to get compiled current trunk/kdelibs compiled successfully. CCMAIL:kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=556896 --- modules/FindQt4.cmake | 1 + modules/FindQtDBus.cmake | 27 --------------------------- 2 files changed, 1 insertion(+), 27 deletions(-) delete mode 100644 modules/FindQtDBus.cmake (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 63b636ed..566cc9f5 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -503,6 +503,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY_RELEASE "-framework QtSvg" CACHE STRING "The QtSvg library.") SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") + SET(QT_QTDBUS_LIBRARY_RELEASE "-framework QtDBus" CACHE STRING "The QtBBus library.") SET(QT_QTDBUS_LIBRARY_DEBUG "-framework QtDBus" CACHE STRING "The QtBBus library.") diff --git a/modules/FindQtDBus.cmake b/modules/FindQtDBus.cmake deleted file mode 100644 index c0b5e6f7..00000000 --- a/modules/FindQtDBus.cmake +++ /dev/null @@ -1,27 +0,0 @@ -# - Try to find the QtDBus module -# Once done this will define -# -# QDBUS_FOUND - system has QtDBus -# QDBUS_INCLUDE_DIRS - the QtDBus include directories -# QDBUS_LIBRARIES - Link these to use QtDBus -# QDBUS_DEFINITIONS - Compiler switches required for using QtDBus -# -# QDBUS_IDL2CPP_EXECUTABLE - The adaptor/interface code generator -# QDBUS_CPP2XML_EXECUTABLE - The interface parser -# -# Macros (from QtDBusMacros.cmake): -# QDBUS_ADD_INTERFACES(SRC_VAR file1.xml ... fileN.xml) -# Generates interface code from the given XML files. -# -# QDBUS_GENERATE_INTERFACE(file.h) -# Generates the XML interface description from the given header file. -# -# QDBUS_ADD_ADAPTORS(SRC_VAR file1.xml ... fileN.xml) -# Generates adaptor code from the given XML files. -# -SET(QDBUS_FOUND) -SET(QDBUS_INCLUDE_DIRS ${QT_DBUS_INCLUDE_DIR}) -SET(QDBUS_LIBRARIES ${QT_QTDBUS_LIBRARY_DEBUG}) -SET(QDBUS_DEFINITIONS -I${QDBUS_INCLUDE_DIRS}) -SET(QDBUS_IDL2CPP_EXECUTABLE) -SET(QDBUS_CPP2XML_EXECUTABLE) -- cgit v1.2.1 From 8818afd3899d3a24d1039323c17ea5981bb9418e Mon Sep 17 00:00:00 2001 From: Tobias Koenig Date: Sat, 1 Jul 2006 22:02:09 +0000 Subject: Make kdecore link against QtDBus, thanks to Alex for his help on debugging! svn path=/trunk/KDE/kdelibs/; revision=556914 --- modules/FindKDE4Internal.cmake | 2 +- modules/FindQt4.cmake | 24 ++++++++++++++++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3c4f0939..53722f39 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -168,7 +168,7 @@ INCLUDE (MacroEnsureVersion) cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) -set(QT_MIN_VERSION "4.1.1") +set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 566cc9f5..4bcddef1 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -36,6 +36,7 @@ # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. # QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTDBUS_FOUND True if QtDBus was found. # QT_QTDESIGNER_FOUND True if QtDesigner was found. # QT_QTMOTIF_FOUND True if QtMotif was found. # QT_QTNETWORK_FOUND True if QtNetwork was found. @@ -60,6 +61,7 @@ # QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" # QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" # QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" # QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" # QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" # QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" @@ -90,6 +92,10 @@ # QT_QTCORE_LIBRARY_RELEASE # QT_QTCORE_LIBRARY_DEBUG # +# The QtDBus library: QT_QTDBUS_LIBRARY +# QT_QTDBUS_LIBRARY_RELEASE +# QT_QTDBUS_LIBRARY_DEBUG +# # The QtDesigner library: QT_QTDESIGNER_LIBRARY # QT_QTDESIGNER_LIBRARY_RELEASE # QT_QTDESIGNER_LIBRARY_DEBUG @@ -143,6 +149,8 @@ # QT_UIC_EXECUTABLE Where to find the uic tool. # QT_UIC3_EXECUTABLE Where to find the uic3 tool. # QT_RCC_EXECUTABLE Where to find the rcc tool +# QT_DBUSCPP2XML_EXECUTABLE Where to find the dbuscpp2xml tool. +# QT_DBUSXML2CPP_EXECUTABLE Where to find the dbusxml2cpp tool. # # QT_DOC_DIR Path to "doc" of Qt4 # QT_MKSPECS_DIR Path to "mkspecs" of Qt4 @@ -463,8 +471,8 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) - # Set QT_DBUS_INCLUDE_DIR - FIND_PATH(QT_DBUS_INCLUDE_DIR QtDBus + # Set QT_QTDBUS_INCLUDE_DIR + FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus PATHS ${QT_INCLUDE_DIR}/QtDBus ${QT_HEADERS_DIR}/QtDBus @@ -697,6 +705,18 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE + NAMES dbuscpp2xml + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE + NAMES dbusxml2cpp + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + IF (QT_MOC_EXECUTABLE) SET(QT_WRAP_CPP "YES") ENDIF (QT_MOC_EXECUTABLE) -- cgit v1.2.1 From a1ca06d151d11594b9403904a62e43c1803f7a85 Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Sat, 1 Jul 2006 22:16:07 +0000 Subject: Fix typo. SVN_SILENT svn path=/trunk/KDE/kdelibs/; revision=556920 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 4bcddef1..0761f8f6 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -511,8 +511,8 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY_RELEASE "-framework QtSvg" CACHE STRING "The QtSvg library.") SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTDBUS_LIBRARY_RELEASE "-framework QtDBus" CACHE STRING "The QtBBus library.") - SET(QT_QTDBUS_LIBRARY_DEBUG "-framework QtDBus" CACHE STRING "The QtBBus library.") + SET(QT_QTDBUS_LIBRARY_RELEASE "-framework QtDBus" CACHE STRING "The QtDBus library.") + SET(QT_QTDBUS_LIBRARY_DEBUG "-framework QtDBus" CACHE STRING "The QtDBus library.") # WTF? why don't we have frameworks? :P -- cgit v1.2.1 From 625cdcf8bf06301996e4895649312cf9eba4cc96 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 2 Jul 2006 08:14:42 +0000 Subject: -remove the old makefile.am contents from the cmake files in kdelibs -add MacroLogFeature.cmake to the MacroLibrary Alex svn path=/trunk/KDE/kdelibs/; revision=557030 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt M pics/crystalsvg/CMakeLists.txt M pics/emoticons/CMakeLists.txt M pics/hicolor/CMakeLists.txt --- modules/MacroLibrary.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index c4006c27..c2a3e8d9 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -7,3 +7,4 @@ INCLUDE(MacroAddFileDependencies) INCLUDE(MacroEnsureOutOfSourceBuild) INCLUDE(MacroBoolTo01) INCLUDE(MacroPushRequiredVars) +INCLUDE(MacroLogFeature) -- cgit v1.2.1 From d79f1aa9b6c62c7d05e61b2a9ed2296a49234891 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 2 Jul 2006 08:45:36 +0000 Subject: -remove dcop support from the build system Alex svn path=/trunk/KDE/kdelibs/; revision=557034 --- modules/KDE4Macros.cmake | 85 ------------------------------------------------ 1 file changed, 85 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1fafbcf9..c0613988 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -2,8 +2,6 @@ # for documentation look at FindKDE4Internal.cmake # # this file contains the following macros: -# KDE4_ADD_DCOP_SKELS -# KDE4_ADD_DCOP_STUBS # KDE4_ADD_UI_FILES # KDE4_ADD_KCFG_FILES # KDE4_AUTOMOC @@ -15,89 +13,6 @@ #neundorf@kde.org -#create the kidl and skeleton file for dcop stuff -#usage: KDE4_ADD_DCOP_SKELS(foo_SRCS ${dcop_headers}) -MACRO (KDE4_ADD_DCOP_SKELS _sources) - foreach (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE) - - GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE) - - set(_skel ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_skel.cpp) - set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - - if (NOT HAVE_${_basename}_KIDL_RULE) - set(HAVE_${_basename}_KIDL_RULE ON) - - add_custom_command(OUTPUT ${_kidl} - COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} - MAIN_DEPENDENCY ${_tmp_FILE} - ) - endif (NOT HAVE_${_basename}_KIDL_RULE) - - if (NOT HAVE_${_basename}_SKEL_RULE) - set(HAVE_${_basename}_SKEL_RULE ON) - - add_custom_command(OUTPUT ${_skel} - COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl} - MAIN_DEPENDENCY ${_kidl} - DEPENDS ${_KDE4_DCOPIDL2CPP_DEP} ) - - macro_additional_clean_files(${_skel_H}) - - endif (NOT HAVE_${_basename}_SKEL_RULE) - - set(${_sources} ${${_sources}} ${_skel}) - - endforeach (_current_FILE) - -ENDMACRO (KDE4_ADD_DCOP_SKELS) - - -MACRO (KDE4_ADD_DCOP_STUBS _sources) - foreach (_current_FILE ${ARGN}) - - get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) - - get_filename_component(_basename ${_tmp_FILE} NAME_WE) - - set(_stub_CPP ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.cpp) - set(_stub_H ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_stub.h) - set(_kidl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kidl) - - if (NOT HAVE_${_basename}_KIDL_RULE) - set(HAVE_${_basename}_KIDL_RULE ON) - - add_custom_command(OUTPUT ${_kidl} - COMMAND ${KDE4_DCOPIDL_EXECUTABLE} - ARGS --srcdir ${KDE4_KALYPTUS_DIR} -o ${_kidl} ${_tmp_FILE} - MAIN_DEPENDENCY ${_tmp_FILE} - ) - endif (NOT HAVE_${_basename}_KIDL_RULE) - - if (NOT HAVE_${_basename}_STUB_RULE) - set(HAVE_${_basename}_STUB_RULE ON) - - add_custom_command(OUTPUT ${_stub_H} ${_stub_CPP} - COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE} - ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl} - MAIN_DEPENDENCY ${_kidl} - DEPENDS ${_KDE4_DCOPIDL2CPP_DEP} ) - - macro_additional_clean_files(${_stub_H}) - - endif (NOT HAVE_${_basename}_STUB_RULE) - - set(${_sources} ${${_sources}} ${_stub_CPP}) - - endforeach (_current_FILE) - -ENDMACRO (KDE4_ADD_DCOP_STUBS) - - macro (KDE4_ADD_KCFG_FILES _sources) foreach (_current_FILE ${ARGN}) -- cgit v1.2.1 From 1478579b7e8197f70e4941c8ce4d9660d3e20acd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 2 Jul 2006 09:04:54 +0000 Subject: -add KDE4_ADD_DCOP_SKELS/STUBS again, but make them simply bail out with FATAL_ERROR, this should avoid some frustration about not even the buildsystem working due to the switch to dbus Alex svn path=/trunk/KDE/kdelibs/; revision=557037 --- modules/KDE4Macros.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c0613988..9ec851d7 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -565,3 +565,13 @@ MACRO (KDE4_ADD_WIDGET_FILES _sources) ENDMACRO (KDE4_ADD_WIDGET_FILES) +MACRO(KDE4_ADD_DCOP_SKELS) + MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_SKELS() in one of the CMakeLists.txt, but DCOP is no longer supported by KDE4. + Please remove it and port to DBUS") +ENDMACRO(KDE4_ADD_DCOP_SKELS) + +MACRO(KDE4_ADD_DCOP_STUBS) + MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_STUBS() in one of the CMakeLists.txt, but DCOP is no longer supported by KDE4. + Please remove it and port to DBUS") +ENDMACRO(KDE4_ADD_DCOP_STUBS) + -- cgit v1.2.1 From 399b0cb1979cec7092f65dcbaa4a2e7e4b0a69de Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 2 Jul 2006 09:31:31 +0000 Subject: -new option: KDE4_IGNORE_DONTPORT , which if enabled ignores the "don't port against kdelibs HEAD" error Alex svn path=/trunk/KDE/kdelibs/; revision=557041 --- modules/FindKDE4Internal.cmake | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 53722f39..a148d352 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -210,7 +210,7 @@ set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this st option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") - +option(KDE4_IGNORE_DONTPORT "ignore the \"don't port\" message from kdelisb (not snapshot)" OFF) #now try to find some kde stuff @@ -256,18 +256,21 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set( _KDE4_MAKEKDEWIDGETS_DEP) # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 - EXEC_PROGRAM(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) - - STRING(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") - IF (KDEVERSION) - - # avoid porting against kdelibs trunk - string(REGEX MATCH "DONTPORT" _match "${kdeconfig_output}") - if (_match) - message ( FATAL_ERROR "ERROR: don't port against this - version of kdelibs! Use /branches/work/kdelibs4_snapshot - instead!!" ) - endif (_match) + exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) + + string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") + if (KDEVERSION) + + if (NOT KDE4_IGNORE_DONTPORT) + # avoid porting against kdelibs trunk + string(REGEX MATCH "DONTPORT" _match "${kdeconfig_output}") + if (_match) + message ( FATAL_ERROR "ERROR: don't port against this + version of kdelibs! Use /branches/work/kdelibs4_snapshot instead !" ) + endif (_match) + + endif (NOT KDE4_IGNORE_DONTPORT) + STRING(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") -- cgit v1.2.1 From 9e8ba3300c947ae5df7fbb2d498365e7710e95cd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 2 Jul 2006 13:12:44 +0000 Subject: -add macros for dealing with dbus stuff: QT_ADD_DBUS_INTERFACES( sources xmlfile1 ... xmlfileN) QT_ADD_DBUS_ADAPTORS( sources xmlfile1 ... xmlfileN) Alex svn path=/trunk/KDE/kdelibs/; revision=557126 --- modules/FindQt4.cmake | 100 ++++++++++++++++++++++++++++++++++++++++++++++- modules/KDE4Macros.cmake | 5 ++- 2 files changed, 101 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0761f8f6..69eedc44 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -19,7 +19,6 @@ # QT_USE_QTOPENGL # QT_USE_QTSQL # QT_USE_QTXML -# # All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. # @@ -28,7 +27,30 @@ # macro QT4_ADD_RESOURCE(outfiles inputfile ... ) # macro QT4_AUTOMOC(inputfile ... ) # macro QT4_GENERATE_MOC(inputfile outputfile ) -# +# +# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) +# create a the interface header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) +# create the interface header and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_ADAPTOR(outfiles interface basename ) +# create a the adaptor header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_ADAPTORS(outfiles inputfile ... ) +# create the adaptor header and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_GENERATE_DBUS_INTERFACE( header) +# generate the xml interface file from the given header +# # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. # @@ -819,6 +841,80 @@ IF (QT4_QMAKE_FOUND) ENDMACRO (QT4_ADD_RESOURCES) + MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) + GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -p ${_basename} ${_infile} + DEPENDS ${_infile}) + + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + + QT4_GENERATE_MOC(${_header} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + + ENDMACRO(QT4_ADD_DBUS_INTERFACE) + + + MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE) + + # get the part before the ".xml" suffix + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) + STRING(TOLOWER ${_basename} _basename) + + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES) + + + MACRO(QT4_GENERATE_DBUS_INTERFACE _header) + GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + + ADD_CUSTOM_COMMAND(OUTPUT ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} + DEPENDS ${_in_file} + ) + ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) + + + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _interface _basename) + GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) + + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + ADD_CUSTOM_COMMAND(OUTPUT ${_target_base}.cpp ${_target_base}.h + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} ${_infile} + DEPENDS ${_infile} + ) + + QT4_GENERATE_MOC(${_header} ${_moc}) + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + ENDMACRO(QT4_ADD_DBUS_ADAPTOR) + + + MACRO(QT4_ADD_DBUS_ADAPTORS _sources) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_xml_file ${_current_FILE} ABSOLUTE) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) + STRING(TOLOWER ${_basename} _basename) + + QT4_ADD_DBUS_ADAPTOR(${_sources} ${_xml_file} ${_basename}adaptor) + ENDFOREACH (_current_FILE ${ARGN}) + ENDMACRO(QT4_ADD_DBUS_ADAPTORS) + + MACRO(QT4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9ec851d7..c43ccd2e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -33,8 +33,9 @@ macro (KDE4_ADD_KCFG_FILES _sources) MAIN_DEPENDENCY ${_tmp_FILE} DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) - QT4_GENERATE_MOC(${_header_FILE} ${_moc_FILE} ) - MACRO_ADD_FILE_DEPENDENCIES(${_src_FILE} ${_moc_FILE} ) + qt4_generate_moc(${_header_FILE} ${_moc_FILE} ) + set_source_files_properties(${_src_FILE} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + macro_add_file_dependencies(${_src_FILE} ${_moc_FILE} ) set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) -- cgit v1.2.1 From 26fc70b9c1fd38a4ebb1d1c5e2cd14567048cc16 Mon Sep 17 00:00:00 2001 From: Tobias Koenig Date: Sun, 2 Jul 2006 14:01:32 +0000 Subject: Make it work, thanks to Alex! svn path=/trunk/KDE/kdelibs/; revision=557147 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 69eedc44..7d57156a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -892,7 +892,7 @@ IF (QT4_QMAKE_FOUND) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - ADD_CUSTOM_COMMAND(OUTPUT ${_target_base}.cpp ${_target_base}.h + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} ${_infile} DEPENDS ${_infile} ) -- cgit v1.2.1 From 3dc98425204ebe8dc38e9f9535173a696d932c0e Mon Sep 17 00:00:00 2001 From: Thorsten Roeder Date: Sun, 2 Jul 2006 14:21:24 +0000 Subject: fix typo SVN_SILENT svn path=/trunk/KDE/kdelibs/; revision=557153 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a148d352..78e8d940 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -210,7 +210,7 @@ set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this st option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") -option(KDE4_IGNORE_DONTPORT "ignore the \"don't port\" message from kdelisb (not snapshot)" OFF) +option(KDE4_IGNORE_DONTPORT "ignore the \"don't port\" message from kdelibs (not snapshot)" OFF) #now try to find some kde stuff -- cgit v1.2.1 From 89d143d40654b9afe9a86409da5f559ff849acca Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 2 Jul 2006 19:11:44 +0000 Subject: -fix dependencies for cmake < 2.4.3 Alex svn path=/trunk/KDE/kdelibs/; revision=557241 --- modules/FindQt4.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 7d57156a..804b5169 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -856,6 +856,7 @@ IF (QT4_QMAKE_FOUND) QT4_GENERATE_MOC(${_header} ${_moc}) SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) ENDMACRO(QT4_ADD_DBUS_INTERFACE) @@ -899,6 +900,7 @@ IF (QT4_QMAKE_FOUND) QT4_GENERATE_MOC(${_header} ${_moc}) SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) ENDMACRO(QT4_ADD_DBUS_ADAPTOR) -- cgit v1.2.1 From 4fa74d074cb501931f954d02d5bbac1deafdc905 Mon Sep 17 00:00:00 2001 From: Zack Rusin Date: Sun, 2 Jul 2006 20:27:11 +0000 Subject: adding Enchant plugin and adjust the others to the new naming svn path=/trunk/KDE/kdelibs/; revision=557286 --- modules/FindENCHANT.cmake | 54 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 modules/FindENCHANT.cmake (limited to 'modules') diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake new file mode 100644 index 00000000..abda9dde --- /dev/null +++ b/modules/FindENCHANT.cmake @@ -0,0 +1,54 @@ +# - Try to find the Enchant spell checker +# Once done this will define +# +# ENCHANT_FOUND - system has ENCHANT +# ENCHANT_INCLUDE_DIR - the ENCHANT include directory +# ENCHANT_LIBRARIES - Link these to use ENCHANT +# ENCHANT_DEFINITIONS - Compiler switches required for using ENCHANT +# + +if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) + + # in cache already + SET(ENCHANT_FOUND TRUE) + +else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(enchant _ENCHANTIncDir _ENCHANTLinkDir _ENCHANTLinkFlags _ENCHANTCflags) + + set(ENCHANT_DEFINITIONS ${_ENCHANTCflags}) + + FIND_PATH(ENCHANT_INCLUDE_DIR enchant/enchant.h + ${_ENCHANTIncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(ENCHANT_LIBRARIES NAMES enchant + PATHS + ${_ENCHANTLinkDir} + /usr/lib + /usr/local/lib + ) + + if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) + set(ENCHANT_FOUND TRUE) + endif (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) + + if (ENCHANT_FOUND) + if (NOT ENCHANT_FIND_QUIETLY) + message(STATUS "Found ENCHANT: ${ENCHANT_LIBRARIES}") + endif (NOT ENCHANT_FIND_QUIETLY) + else (ENCHANT_FOUND) + if (ENCHANT_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find ENCHANT") + endif (ENCHANT_FIND_REQUIRED) + endif (ENCHANT_FOUND) + + MARK_AS_ADVANCED(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES) + +endif (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) -- cgit v1.2.1 From fb6cef34e4f2732dd7a5ec6876e071b91ab02203 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 3 Jul 2006 09:57:36 +0000 Subject: Copy it into kdelibs because it will require by several module (kdebase/kdepim now) When we will create new snapshot I will add check into kdebase (kdebase requires it for kabc) svn path=/trunk/KDE/kdelibs/; revision=557445 --- modules/FindKdepimLibs.cmake | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 modules/FindKdepimLibs.cmake (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake new file mode 100644 index 00000000..514845c0 --- /dev/null +++ b/modules/FindKdepimLibs.cmake @@ -0,0 +1,9 @@ +# Find if we installed kdepimlibs before to compile it + +FIND_PATH( KDEPIMLIBS_INCLUDE_DIR emailfunctions/email.h + ${KDE4_INCLUDE_DIR} +) + +if( NOT KDEPIMLIBS_INCLUDE_DIR ) + message( FATAL_ERROR "You didn't compile kdepimlibs before to compile it. Please install it" ) +endif(NOT KDEPIMLIBS_INCLUDE_DIR ) -- cgit v1.2.1 From 36eb7bcb18f49cb2bb2e59166660384754db51a4 Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Mon, 3 Jul 2006 10:24:17 +0000 Subject: Make the DCOP porting warnings more useful svn path=/trunk/KDE/kdelibs/; revision=557455 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c43ccd2e..952f59b0 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -567,12 +567,12 @@ MACRO (KDE4_ADD_WIDGET_FILES _sources) ENDMACRO (KDE4_ADD_WIDGET_FILES) MACRO(KDE4_ADD_DCOP_SKELS) - MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_SKELS() in one of the CMakeLists.txt, but DCOP is no longer supported by KDE4. - Please remove it and port to DBUS") + MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_SKELS() in the CMakeLists.txt for '${ARGV0}', but DCOP is no longer supported by KDE4. + Please remove it and port to DBUS.") ENDMACRO(KDE4_ADD_DCOP_SKELS) MACRO(KDE4_ADD_DCOP_STUBS) - MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_STUBS() in one of the CMakeLists.txt, but DCOP is no longer supported by KDE4. - Please remove it and port to DBUS") + MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_STUBS() in the CMakeLists.txt for '${ARGV0}', but DCOP is no longer supported by KDE4. + Please remove it and port to DBUS.") ENDMACRO(KDE4_ADD_DCOP_STUBS) -- cgit v1.2.1 From 6c0fce4dc7d4e152c22444aef93b7fb7a380275a Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Mon, 3 Jul 2006 11:00:54 +0000 Subject: - variable overriding doesn't seem to work, according to Alex svn path=/trunk/KDE/kdelibs/; revision=557470 --- modules/FindQt4.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 804b5169..255ac425 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -771,14 +771,14 @@ IF (QT4_QMAKE_FOUND) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) - GET_FILENAME_COMPONENT(infile ${infile} ABSOLUTE) + GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${infile} - DEPENDS ${infile}) + ARGS ${moc_includes} -o ${outfile} ${abs_infile} + DEPENDS ${abs_infile}) - MACRO_ADD_FILE_DEPENDENCIES(${infile} ${outfile}) + MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) ENDMACRO (QT4_GENERATE_MOC) -- cgit v1.2.1 From 0779a7d525ef03ef4f1102cb5245b87c0206a36e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 3 Jul 2006 13:32:11 +0000 Subject: -error out if dbusxml2cpp wasn't found (because Qt didn't install it) -prepare new and better installation dir variables -remove KDE4_USE_QT_EMB, because it's not used anywhere Alex svn path=/trunk/KDE/kdelibs/; revision=557531 --- modules/FindKDE4Internal.cmake | 55 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 50 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 78e8d940..e9b67faa 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -172,6 +172,11 @@ set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) +if (NOT QT_DBUSXML2CPP_EXECUTABLE) + message(FATAL_ERROR "Qt4 dbusxml2cpp was not found. Make sure it has been built and installed by Qt") +endif (NOT QT_DBUSXML2CPP_EXECUTABLE) + + # Perl is required for building KDE software, find_package(Perl REQUIRED) @@ -180,26 +185,67 @@ include (CheckCXXCompilerFlag) #add some KDE specific stuff +# set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/") +# set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries") +# +## the following are directories where stuff will be installed to +# set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)") +# set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)") +# set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +# set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +# set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") +# +# set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir") +# set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data") +# set(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" CACHE PATH "The HTML install dir for documentation") +# set(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" CACHE PATH "The icon install dir (default prefix/share/icons/)") +# set(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" CACHE PATH "The install dir for kconfig files") +# set(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" CACHE PATH "The install dir for translations") +# set(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" CACHE PATH "The install dir for the mimetype desktop files") +# set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" CACHE PATH "The install dir for service (desktop, protocol, ...) files") +# set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" CACHE PATH "The install dir for servicestypes desktop files") +# set(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" CACHE PATH "The install dir for sound files") +# set(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" CACHE PATH "The install dir for templates (Create new file...)") +# set(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" CACHE PATH "The install dir for wallpapers") +# set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir") +# # this one shouldn't be used anymore +# set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/share/applnk" CACHE PATH "Is this still used ?") +# +# set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir") +# set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory") +# +# set(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" CACHE PATH "The kde sysconfig install dir (default /etc)") +# set(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" CACHE PATH "The kde man install dir (default prefix/man/)") +# set(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" CACHE PATH "The kde info install dir (default prefix/info)") +# + +################################# + + + # the following are directories where stuff will be installed to +set(INFO_INSTALL_DIR /info CACHE STRING "The kde info install dir (default prefix/info)") +set(LIB_INSTALL_DIR /lib CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +set(MAN_INSTALL_DIR /man CACHE STRING "The kde man install dir (default prefix/man/)") +set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") + set(CONFIG_INSTALL_DIR /share/config CACHE STRING "The config file install dir") set(DATA_INSTALL_DIR /share/apps CACHE STRING "The parent directory where applications can install their data") set(HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "The HTML install dir for documentation") set(ICON_INSTALL_DIR /share/icons CACHE STRING "The icon install dir (default prefix/share/icons/)") -set(INFO_INSTALL_DIR /info CACHE STRING "The kde info install dir (default prefix/info)") set(KCFG_INSTALL_DIR /share/config.kcfg CACHE STRING "The install dir for kconfig files") -set(LIB_INSTALL_DIR /lib CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") set(LOCALE_INSTALL_DIR /share/locale CACHE STRING "The install dir for translations") -set(MAN_INSTALL_DIR /man CACHE STRING "The kde man install dir (default prefix/man/)") set(MIME_INSTALL_DIR /share/mimelnk CACHE STRING "The install dir for the mimetype desktop files") -set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") set(SERVICES_INSTALL_DIR /share/services CACHE STRING "The install dir for service (desktop, protocol, ...) files") set(SERVICETYPES_INSTALL_DIR /share/servicetypes CACHE STRING "The install dir for servicestypes desktop files") set(SOUND_INSTALL_DIR /share/sounds CACHE STRING "The install dir for sound files") set(TEMPLATES_INSTALL_DIR /share/templates CACHE STRING "The install dir for templates (Create new file...)") set(WALLPAPER_INSTALL_DIR /share/wallpapers CACHE STRING "The install dir for wallpapers") set(KCONF_UPDATE_INSTALL_DIR /share/apps/kconf_update/ CACHE STRING "The kconf_update install dir") + set(XDG_APPS_DIR /share/applications/kde CACHE STRING "The XDG apps dir") set(XDG_DIRECTORY_DIR /share/desktop-directories CACHE STRING "The XDG directory") + set(SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") # seem to be unused: @@ -209,7 +255,6 @@ set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this st option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") -option(KDE4_USE_QT_EMB "link to Qt-embedded, don't use X") option(KDE4_IGNORE_DONTPORT "ignore the \"don't port\" message from kdelibs (not snapshot)" OFF) #now try to find some kde stuff -- cgit v1.2.1 From a98eacc458a303f769590c6af4bfae6920845a51 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 3 Jul 2006 23:45:27 +0000 Subject: -use positive logic for macro_ensure_version(MIN found RESULT) -> result is true, if the vesion is ok -first try at creating batch files under windows -prepare a libexec install dir -better check for visibility support: only for gcc >= 4.1 if not compiled with the mt allocator Alex svn path=/trunk/KDE/kdelibs/; revision=557782 --- modules/FindKDE4Internal.cmake | 60 +++++++++++++++++++++++++--------------- modules/MacroEnsureVersion.cmake | 8 ++++-- modules/kde4_exec_via_sh.cmake | 13 +++++++++ 3 files changed, 56 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e9b67faa..6250674c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -192,8 +192,8 @@ include (CheckCXXCompilerFlag) # set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)") # set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)") # set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") -# set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") -# set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") +# set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +# set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") # # set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir") # set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data") @@ -294,6 +294,8 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) + set(KDE4_INSTALLED_VERSION_OK TRUE) + else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # ... but NOT otherwise @@ -316,21 +318,20 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) endif (NOT KDE4_IGNORE_DONTPORT) - - STRING(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") + string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") # we need at least this version: - IF (NOT KDE_MIN_VERSION) - SET(KDE_MIN_VERSION "3.9.0") - ENDIF (NOT KDE_MIN_VERSION) + if (NOT KDE_MIN_VERSION) + set(KDE_MIN_VERSION "3.9.0") + endif (NOT KDE_MIN_VERSION) #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") - MACRO_ENSURE_VERSION( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_TOO_OLD ) + macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) - ELSE (KDEVERSION) + else (KDEVERSION) message(FATAL_ERROR "Couldn't parse KDE version string from the kde-config output:\n${kdeconfig_output}") - ENDIF (KDEVERSION) + endif (KDEVERSION) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) @@ -373,8 +374,8 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_KSPELL2_LIBS ${kspell2_LIB_DEPENDS} ${KDE4_KSPELL2_LIBRARY} ) if (UNIX) - find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) endif (UNIX) find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) @@ -496,9 +497,9 @@ if (UNIX) # the rest is RPATH handling if (APPLE) - set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}) + set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) else (APPLE) - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) + set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) # building something else than kdelibs/ ? # then add the dir where the kde libraries are installed if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) @@ -590,9 +591,24 @@ if (CMAKE_COMPILER_IS_GNUCXX) # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) - if (__KDE_HAVE_GCC_VISIBILITY) + +# get information about gcc + exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_info) + + string (REGEX MATCH " [34]\\.[0-9]\\.[0-9] " _gcc_version "${_gcc_info}") + macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) + + if (GCC_IS_NEWER_THAN_4_1) + string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_info}") + else (GCC_IS_NEWER_THAN_4_1) + set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) + endif (GCC_IS_NEWER_THAN_4_1) + + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - endif (__KDE_HAVE_GCC_VISIBILITY) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + + message(STATUS "have_visibility: ${__KDE_HAVE_GCC_VISIBILITY} version>=4.1: ${GCC_IS_NEWER_THAN_4_1} bad alloctor: ${_GCC_COMPILED_WITH_BAD_ALLOCATOR}") endif (CMAKE_COMPILER_IS_GNUCXX) @@ -632,9 +648,9 @@ include(KDE4Macros) # decide whether KDE4 has been found set(KDE4_FOUND FALSE) -if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) set(KDE4_FOUND TRUE) -endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND NOT KDE4_INSTALLED_VERSION_TOO_OLD) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) macro (KDE4_PRINT_RESULTS) @@ -665,11 +681,11 @@ endmacro (KDE4_PRINT_RESULTS) if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) #bail out if something wasn't found kde4_print_results() - if (KDE4_INSTALLED_VERSION_TOO_OLD) + if (NOT KDE4_INSTALLED_VERSION_OK) message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") - else (KDE4_INSTALLED_VERSION_TOO_OLD) + else (NOT KDE4_INSTALLED_VERSION_OK) message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") - endif (KDE4_INSTALLED_VERSION_TOO_OLD) + endif (NOT KDE4_INSTALLED_VERSION_OK) endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) @@ -684,5 +700,5 @@ set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DI set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) string(REGEX REPLACE "/lib" "" KDELIBSUFF ${LIB_INSTALL_DIR} ) -MESSAGE(STATUS "KDELIBSUFF :<${KDELIBSUFF}>") +message(STATUS "KDELIBSUFF :<${KDELIBSUFF}>") diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index 89047307..091152d4 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -1,12 +1,12 @@ # LGPL-v2, David Faure # # This macro compares version numbers of the form "x.y.z" -# MACRO_ENSURE_VERSION( ${FOO_MIN_VERSION} ${FOO_VERSION_FOUND} FOO_TOO_OLD) -# will set FOO_TOO_OLD to true if FOO_VERSION_FOUND < FOO_MIN_VERSION +# MACRO_ENSURE_VERSION( ${FOO_MIN_VERSION} ${FOO_VERSION_FOUND} FOO_VERSION_OK) +# will set FOO_VERSIN_OK to true if FOO_VERSION_FOUND >= FOO_MIN_VERSION # MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) - # parse the parts of the version strings + # parse the parts of the version string STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_major_vers "${requested_version}") STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_patch_vers "${requested_version}") @@ -20,6 +20,8 @@ MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) MATH(EXPR found_vers_num "${found_major_vers}*10000 + ${found_minor_vers}*100 + ${found_patch_vers}") if (found_vers_num LESS req_vers_num) + set( ${var_too_old} FALSE ) + else (found_vers_num LESS req_vers_num) set( ${var_too_old} TRUE ) endif (found_vers_num LESS req_vers_num) diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index b105eb60..86e8fd06 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -1,4 +1,6 @@ +if (UNIX) + file(WRITE "${_filename}" "#!/bin/sh # created by cmake, don't edit, changes will be lost @@ -9,3 +11,14 @@ ${_library_path_variable}=${_ld_library_path}\${${_library_path_variable}+:\$${_ # make it executable # since this is only executed on UNIX, it is safe to call chmod exec_program(chmod ARGS ug+x \"${_filename}\" OUTPUT_VARIABLE _dummy ) + +else (UNIX) + +file(TO_NATIVE_PATH ${_ld_library_path} win_path) +file(WRITE "${_filename}" +" +set PATH=${win_path};${PATH} +\"${_executable}\" %* +") + +endif (UNIX) -- cgit v1.2.1 From e5b714dceb2e5d405ef98a1375eed42234f13d52 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 4 Jul 2006 08:55:38 +0000 Subject: Let's stop generating adaptors that completely fail at runtime (qinvokemethod -> no compile-time checking). QT4_ADD_DBUS_ADAPTORS is deprecated, use QT4_ADD_DBUS_ADAPTOR() instead, which now takes in its arguments the header file and the classname of the parent object being adapted. The methods in the adaptor simply call the methods in the parent object, which means we know at compile-time that the xml and the C++ match. This also shows that we can't generate adaptors at compile-time when the slots need the additional QDBusMessage argument; but that's probably a rare case. CCMAIL: kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=557871 --- modules/FindQt4.cmake | 47 +++++++++++++++++++---------------------------- 1 file changed, 19 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 255ac425..caf8a3c5 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -38,22 +38,19 @@ # for all listed interface xml files # the name will be automatically determined from the name of the xml file # -# macro QT4_ADD_DBUS_ADAPTOR(outfiles interface basename ) -# create a the adaptor header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_ADAPTORS(outfiles inputfile ... ) -# create the adaptor header and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file +# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname ) +# create a dbus adaptor (header and implementation file) from the xml file +# describing the interface, and add it to the list of sources. The adaptor +# forwards the calls to a parent class, defined in parentheader and named +# parentclassname. The name of the generated files will be +# adaptor.{cpp,h} where basename is the basename of the xml file. # # macro QT4_GENERATE_DBUS_INTERFACE( header) # generate the xml interface file from the given header # # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. -# +# # QT_QTCORE_FOUND True if QtCore was found. # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. @@ -886,36 +883,30 @@ IF (QT4_QMAKE_FOUND) ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _interface _basename) - GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) - + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) + GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) + STRING(TOLOWER ${_basename} _basename) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} ${_infile} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} DEPENDS ${_infile} ) - + QT4_GENERATE_MOC(${_header} ${_moc}) SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) ENDMACRO(QT4_ADD_DBUS_ADAPTOR) - - - MACRO(QT4_ADD_DBUS_ADAPTORS _sources) - FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_xml_file ${_current_FILE} ABSOLUTE) - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) - STRING(TOLOWER ${_basename} _basename) - - QT4_ADD_DBUS_ADAPTOR(${_sources} ${_xml_file} ${_basename}adaptor) - ENDFOREACH (_current_FILE ${ARGN}) - ENDMACRO(QT4_ADD_DBUS_ADAPTORS) + MACRO(QT4_ADD_DBUS_ADAPTORS _sources) + message(FATAL_ERROR "There is a call to QT4_ADD_DBUS_ADAPTORS() in the CMakeLists.txt for '${ARGV0}', but this macro has been removed, please use QT4_ADD_DBUS_ADAPTOR and specify the include file and classname for the parent object implementing the code") + ENDMACRO(QT4_ADD_DBUS_ADAPTORS _sources) MACRO(QT4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) -- cgit v1.2.1 From 9656eb9a98a56452478d9a1c73866691f66261b4 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 4 Jul 2006 11:16:03 +0000 Subject: Commit big work on build system with Alex: install_* -> install Summary: we can install everything everywhere. svn path=/trunk/KDE/kdelibs/; revision=557905 The following changes were in SVN, but were removed from git: M pics/crystalsvg/CMakeLists.txt M pics/hicolor/CMakeLists.txt --- modules/FindKDE4Internal.cmake | 91 ++++++++++++++++-------------------------- modules/KDE4Macros.cmake | 6 +-- 2 files changed, 37 insertions(+), 60 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6250674c..02a393cd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -183,74 +183,52 @@ find_package(Perl REQUIRED) include (MacroLibrary) include (CheckCXXCompilerFlag) + + + #add some KDE specific stuff -# set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/") -# set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries") + set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/" FORCE) + set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries" FORCE) # ## the following are directories where stuff will be installed to -# set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)") -# set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)") -# set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") + set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) + set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) + set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) + set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) + set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)" FORCE) + set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix" FORCE) + set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir" FORCE) + set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data" FORCE) + set(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" CACHE PATH "The HTML install dir for documentation" FORCE) + set(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" CACHE PATH "The icon install dir (default prefix/share/icons/)" FORCE) + set(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" CACHE PATH "The install dir for kconfig files" FORCE) + set(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" CACHE PATH "The install dir for translations" FORCE) + set(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" CACHE PATH "The install dir for the mimetype desktop files" FORCE) + set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" CACHE PATH "The install dir for service (desktop, protocol, ...) files" FORCE) + set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" CACHE PATH "The install dir for servicestypes desktop files" FORCE) + set(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" CACHE PATH "The install dir for sound files" FORCE) + set(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" CACHE PATH "The install dir for templates (Create new file...)" FORCE) + set(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" CACHE PATH "The install dir for wallpapers" FORCE) + set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir" FORCE) + # this one shouldn't be used anymore + set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/share/applnk" CACHE PATH "Is this still used ?" FORCE) + + set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir" FORCE) + set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory" FORCE) + + set(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" CACHE PATH "The kde sysconfig install dir (default /etc)" FORCE) + set(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" CACHE PATH "The kde man install dir (default prefix/man/)" FORCE) + set(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) # set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") # set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") # -# set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir") -# set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data") -# set(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" CACHE PATH "The HTML install dir for documentation") -# set(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" CACHE PATH "The icon install dir (default prefix/share/icons/)") -# set(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" CACHE PATH "The install dir for kconfig files") -# set(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" CACHE PATH "The install dir for translations") -# set(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" CACHE PATH "The install dir for the mimetype desktop files") -# set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" CACHE PATH "The install dir for service (desktop, protocol, ...) files") -# set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" CACHE PATH "The install dir for servicestypes desktop files") -# set(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" CACHE PATH "The install dir for sound files") -# set(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" CACHE PATH "The install dir for templates (Create new file...)") -# set(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" CACHE PATH "The install dir for wallpapers") -# set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir") -# # this one shouldn't be used anymore -# set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/share/applnk" CACHE PATH "Is this still used ?") -# -# set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir") -# set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory") -# -# set(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" CACHE PATH "The kde sysconfig install dir (default /etc)") -# set(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" CACHE PATH "The kde man install dir (default prefix/man/)") -# set(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" CACHE PATH "The kde info install dir (default prefix/info)") -# ################################# # the following are directories where stuff will be installed to -set(INFO_INSTALL_DIR /info CACHE STRING "The kde info install dir (default prefix/info)") -set(LIB_INSTALL_DIR /lib CACHE STRING "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") -set(MAN_INSTALL_DIR /man CACHE STRING "The kde man install dir (default prefix/man/)") -set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE STRING "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") - -set(CONFIG_INSTALL_DIR /share/config CACHE STRING "The config file install dir") -set(DATA_INSTALL_DIR /share/apps CACHE STRING "The parent directory where applications can install their data") -set(HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "The HTML install dir for documentation") -set(ICON_INSTALL_DIR /share/icons CACHE STRING "The icon install dir (default prefix/share/icons/)") -set(KCFG_INSTALL_DIR /share/config.kcfg CACHE STRING "The install dir for kconfig files") -set(LOCALE_INSTALL_DIR /share/locale CACHE STRING "The install dir for translations") -set(MIME_INSTALL_DIR /share/mimelnk CACHE STRING "The install dir for the mimetype desktop files") -set(SERVICES_INSTALL_DIR /share/services CACHE STRING "The install dir for service (desktop, protocol, ...) files") -set(SERVICETYPES_INSTALL_DIR /share/servicetypes CACHE STRING "The install dir for servicestypes desktop files") -set(SOUND_INSTALL_DIR /share/sounds CACHE STRING "The install dir for sound files") -set(TEMPLATES_INSTALL_DIR /share/templates CACHE STRING "The install dir for templates (Create new file...)") -set(WALLPAPER_INSTALL_DIR /share/wallpapers CACHE STRING "The install dir for wallpapers") -set(KCONF_UPDATE_INSTALL_DIR /share/apps/kconf_update/ CACHE STRING "The kconf_update install dir") - -set(XDG_APPS_DIR /share/applications/kde CACHE STRING "The XDG apps dir") -set(XDG_DIRECTORY_DIR /share/desktop-directories CACHE STRING "The XDG directory") - -set(SYSCONF_INSTALL_DIR "/etc" CACHE STRING "The kde sysconfig install dir (default /etc)") - -# seem to be unused: -set(LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") -set(APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") @@ -699,6 +677,5 @@ set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DI # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) -string(REGEX REPLACE "/lib" "" KDELIBSUFF ${LIB_INSTALL_DIR} ) +string(REGEX REPLACE ".*/lib" "" KDELIBSUFF ${LIB_INSTALL_DIR} ) message(STATUS "KDELIBSUFF :<${KDELIBSUFF}>") - diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 952f59b0..a85a39ab 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -217,7 +217,7 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/${_theme}/${_size}x${_size} + ${_defaultpath}/${_theme}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) ENDforeach (_current_ICON) @@ -227,7 +227,7 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${CMAKE_INSTALL_PREFIX}/${_defaultpath}/${_theme}/scalable + ${_defaultpath}/${_theme}/scalable ${_group} ${_current_ICON} ${_name}) ENDforeach (_current_ICON) @@ -258,7 +258,7 @@ MACRO (KDE4_INSTALL_LIBTOOL_FILE _subdir _target) FILE(APPEND ${_laname} "# Directory that this library needs to be installed in:\n") FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${_subdir}'\n") - INSTALL_FILES(${_subdir} FILES ${_laname}) + INSTALL(FILES ${_laname} DESTINATION ${_subdir}) MACRO_ADDITIONAL_CLEAN_FILES(${_laname}) ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) -- cgit v1.2.1 From fa96ac38472cfb854e361d761c6edb941fae2fde Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Jul 2006 11:25:27 +0000 Subject: -adjust the LD_LIBRARY_PATH for the new contents of LIB_INSTALL_DIR (now the complete absolute path) Alex svn path=/trunk/KDE/kdelibs/; revision=557909 --- modules/KDE4Macros.cmake | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a85a39ab..6b53e505 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -303,7 +303,7 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) set(_library_path_variable "LD_LIBRARY_PATH") endif (APPLE) - set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${CMAKE_INSTALL_PREFIX}${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") get_target_property(_executable ${_target_NAME} LOCATION ) # use add_custom_target() to have the sh-wrapper generated during build time instead of cmake time @@ -325,6 +325,19 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) # maybe later this will change to a generated batch file (for setting the PATH so that the Qt libs are found) get_target_property(_executable ${_target_NAME} LOCATION ) set_target_properties(${_target_NAME} PROPERTIES WRAPPER_SCRIPT ${_executable}) + + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/;${LIB_INSTALL_DIR};${KDE4_LIB_DIR};${QT_LIBRARY_DIR}") + get_target_property(_executable ${_target_NAME} LOCATION ) + + # use add_custom_target() to have the batch-file-wrapper generated during build time instead of cmake time + add_custom_command(TARGET ${_target_NAME} POST_BUILD + COMMAND ${CMAKE_COMMAND} + -D_filename=${_executable}.bat + -D_ld_library_path="${_ld_library_path}" -D_executable=${_executable} + -P ${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake + ) + + endif (UNIX) endmacro (KDE4_HANDLE_RPATH) -- cgit v1.2.1 From 38a91f6cdd437e4ebc3a2eb268c31d57f333aa77 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 4 Jul 2006 13:20:55 +0000 Subject: Replace all '/include' by ${INSTALL_INCLUDE_DIR} and convert again some install_files to install(...) macro svn path=/trunk/KDE/kdelibs/; revision=557961 --- modules/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 31d43074..3d98e6cf 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -2,9 +2,9 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") -set(module_install_dir /share/apps/cmake/modules ) +set(module_install_dir ${DATA_INSTALL_DIR}/apps/cmake/modules ) -install_files(${module_install_dir} FILES kde4init_dummy.cpp.in ${cmakeFiles} ) +install( FILES kde4init_dummy.cpp.in ${cmakeFiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE -- cgit v1.2.1 From 608aa9932705f9990413fba638ec2758d7c25591 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 4 Jul 2006 13:30:59 +0000 Subject: Fix install/remove macro svn path=/trunk/KDE/kdelibs/; revision=557966 --- modules/CMakeLists.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 3d98e6cf..2e6bc86d 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -2,19 +2,19 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") -set(module_install_dir ${DATA_INSTALL_DIR}/apps/cmake/modules ) +set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) install( FILES kde4init_dummy.cpp.in ${cmakeFiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE - ${CMAKE_INSTALL_PREFIX}${module_install_dir}/MacroGetenvWinPath.cmake - ${CMAKE_INSTALL_PREFIX}${module_install_dir}/FindKDE4.cmake - ${CMAKE_INSTALL_PREFIX}${module_install_dir}/UsePkgconfig.cmake - ${CMAKE_INSTALL_PREFIX}${module_install_dir}/FindKDE3.cmake - ${CMAKE_INSTALL_PREFIX}${module_install_dir}/KDE3Macros.cmake - ${CMAKE_INSTALL_PREFIX}${module_install_dir}/kde3uic.cmake - ${CMAKE_INSTALL_PREFIX}${module_install_dir}/kde3init_dummy.cpp.in ) + ${module_install_dir}/MacroGetenvWinPath.cmake + ${module_install_dir}/FindKDE4.cmake + ${module_install_dir}/UsePkgconfig.cmake + ${module_install_dir}/FindKDE3.cmake + ${module_install_dir}/KDE3Macros.cmake + ${module_install_dir}/kde3uic.cmake + ${module_install_dir}/kde3init_dummy.cpp.in ) # remove the following files once we depend on cmake >= 2.4.3 # FindZLIB.cmake -- cgit v1.2.1 From 7554247f1269f3403538455e43ac5988d6793311 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Jul 2006 14:28:46 +0000 Subject: -support an additional optional basename parameter for QT4_ADD_DBUS_ADAPTER() -support new and improved RPATH handling in cmake 2.4.3 -minor cleanups in kdelibs/CMakeLists.txt -use ${BIN_INSTALL_DIR} instead of bin as install target Alex svn path=/trunk/KDE/kdelibs/; revision=558004 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/FindKDE4Internal.cmake | 44 +++++++++++++++++++++++++++++++----------- modules/FindQt4.cmake | 11 ++++++++--- 2 files changed, 41 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 02a393cd..c25b9666 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -195,9 +195,9 @@ include (CheckCXXCompilerFlag) set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) - set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) + set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)" FORCE) - set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix" FORCE) + set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix" FORCE) set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir" FORCE) set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data" FORCE) set(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" CACHE PATH "The HTML install dir for documentation" FORCE) @@ -464,6 +464,17 @@ if (WIN32) endif(CMAKE_COMPILER_2005) endif(MSVC) + + # for visual studio IDE set the path correctly for custom commands + # maybe under windows bat-files should be generated for running apps during the build + if(MSVC_IDE) + get_filename_component(PERL_LOCATION "${PERL_EXECUTABLE}" PATH) + file(TO_NATIVE_PATH "${PERL_LOCATION}" PERL_PATH_WINDOWS) + file(TO_NATIVE_PATH "${QT_BINARY_DIR}" QT_BIN_DIR_WINDOWS) + set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" + CACHE STATIC "MSVC IDE Run path" FORCE) + endif(MSVC_IDE) + endif (WIN32) @@ -477,15 +488,26 @@ if (UNIX) if (APPLE) set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) else (APPLE) - set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) - # building something else than kdelibs/ ? - # then add the dir where the kde libraries are installed - if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - set(CMAKE_INSTALL_RPATH ${KDE4_LIB_DIR} ${CMAKE_INSTALL_RPATH} ) - endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - - set(CMAKE_SKIP_BUILD_RPATH TRUE) - set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) + if (CMAKE_PATCH_VERSION) # at least cmake 2.4.3, in earlier version CMAKE_PATCH_VERSION is empty + # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out cmake when compiling + set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) + set(CMAKE_SKIP_BUILD_RPATH ON) + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + else (CMAKE_PATCH_VERSION) # at least cmake 2.4.3 + + set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) + # building something else than kdelibs/ ? + # then add the dir where the kde libraries are installed + if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + set(CMAKE_INSTALL_RPATH ${KDE4_LIB_DIR} ${CMAKE_INSTALL_RPATH} ) + endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + + set(CMAKE_SKIP_BUILD_RPATH TRUE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) + + endif (CMAKE_PATCH_VERSION) # at least cmake 2.4.3 + endif (APPLE) endif (UNIX) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index caf8a3c5..24dab37d 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -38,7 +38,7 @@ # for all listed interface xml files # the name will be automatically determined from the name of the xml file # -# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname ) +# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) # create a dbus adaptor (header and implementation file) from the xml file # describing the interface, and add it to the list of sources. The adaptor # forwards the calls to a parent class, defined in parentheader and named @@ -885,8 +885,13 @@ IF (QT4_QMAKE_FOUND) MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) - STRING(TOLOWER ${_basename} _basename) + + IF (ARGV1) + SET(_basename ${ARGV1} ) + ELSE (ARGV1) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) + STRING(TOLOWER ${_basename} _basename) + ENDIF (ARGV1) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) -- cgit v1.2.1 From e1370e9c1c7b5d863a544acf44d8a469183a4413 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Tue, 4 Jul 2006 15:19:22 +0000 Subject: That's in FindQt4.cmake now. svn path=/trunk/KDE/kdelibs/; revision=558025 --- modules/QtDBusMacros.cmake | 57 ---------------------------------------------- 1 file changed, 57 deletions(-) delete mode 100644 modules/QtDBusMacros.cmake (limited to 'modules') diff --git a/modules/QtDBusMacros.cmake b/modules/QtDBusMacros.cmake deleted file mode 100644 index b7f00f12..00000000 --- a/modules/QtDBusMacros.cmake +++ /dev/null @@ -1,57 +0,0 @@ -# -# QtDBus macros, documentation see FindQtDBus.cmake -# - -macro(qdbus_add_interfaces _sources) - foreach (_i ${ARGN}) - get_filename_component(_xml_file ${_i} ABSOLUTE) - string(REGEX REPLACE ".*\\.([^\\.]+)\\.xml$" "\\1" _basename ${_i}) - string(TOLOWER ${_basename} _basename) - set(_target_base ${CMAKE_CURRENT_BINARY_DIR}/${_basename}interface) - - add_custom_command(OUTPUT ${_target_base}.cpp ${_target_base}.h - COMMAND ${QDBUS_IDL2CPP_EXECUTABLE} - ARGS -m -p ${_target_base} ${_xml_file} - DEPENDS ${_xml_file} - ) - - qt4_generate_moc(${_target_base}.h ${_target_base}.moc) - macro_add_file_dependencies(${_target_base}.h ${_target_base}.moc ) - set_source_files_properties(${_target_base}.cpp PROPERTIES SKIP_AUTOMOC true) - - set(${_sources} ${${_sources}} ${_target_base}.cpp) - endforeach (_i ${ARGN}) -endmacro(qdbus_add_interfaces) - -macro(qdbus_generate_interface _header) - get_filename_component(_in_file ${_header} ABSOLUTE) - get_filename_component(_basename ${_header} NAME_WE) - set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) - - add_custom_command(OUTPUT ${_target} - COMMAND ${QDBUS_CPP2XML_EXECUTABLE} - ARGS ${_in_file} > ${_target} - DEPENDS ${_in_file} - ) -endmacro(qdbus_generate_interface) - -macro(qdbus_add_adaptors _sources) - foreach (_i ${ARGN}) - get_filename_component(_xml_file ${_i} ABSOLUTE) - string(REGEX REPLACE ".*\\.([^\\.]+)\\.xml$" "\\1" _basename ${_i}) - string(TOLOWER ${_basename} _basename) - set(_target_base ${CMAKE_CURRENT_BINARY_DIR}/${_basename}adaptor) - - add_custom_command(OUTPUT ${_target_base}.cpp ${_target_base}.h - COMMAND ${QDBUS_IDL2CPP_EXECUTABLE} - ARGS -m -a ${_basename}adaptor ${_xml_file} - DEPENDS ${_xml_file} - ) - - qt4_generate_moc(${_target_base}.h ${_target_base}.moc) - macro_add_file_dependencies(${_target_base}.h ${_target_base}.moc) - set_source_files_properties(${_target_base}.cpp PROPERTIES SKIP_AUTOMOC true) - - set(${_sources} ${${_sources}} ${_target_base}.cpp) - endforeach (_i ${ARGN}) -endmacro(qdbus_add_adaptors) -- cgit v1.2.1 From 58f983fca83ecedd8f0f424326261a80090153f4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Jul 2006 18:45:25 +0000 Subject: make the optional parameter ofr qt4_add_dbus_adaptor() actually work Alex svn path=/trunk/KDE/kdelibs/; revision=558130 --- modules/FindQt4.cmake | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 24dab37d..456c514f 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -886,12 +886,13 @@ IF (QT4_QMAKE_FOUND) MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) - IF (ARGV1) - SET(_basename ${ARGV1} ) - ELSE (ARGV1) + SET(_optionalBasename "${ARGV4}") + IF (_optionalBasename) + SET(_basename ${_optionalBasename} ) + ELSE (_optionalBasename) STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) STRING(TOLOWER ${_basename} _basename) - ENDIF (ARGV1) + ENDIF (_optionalBasename) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) -- cgit v1.2.1 From 0fcee18041e6ea53cc9989165ae04bb39ad34e2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Tue, 4 Jul 2006 19:03:40 +0000 Subject: set X11_Xdamage_FOUND svn path=/trunk/KDE/kdelibs/; revision=558139 --- modules/FindX11.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index e9c3a3c0..1f759efe 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -127,6 +127,11 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) endif (X11_Xcomposite_INCLUDE_PATH) + if (X11_Xdamage_INCLUDE_PATH) + set(X11_Xdamage_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) + endif (X11_Xdamage_INCLUDE_PATH) + if (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) set(X11_XTest_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH}) -- cgit v1.2.1 From 26a5b6d0b901f5c6e1c8ef487a95678830ff5dbc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Jul 2006 19:05:37 +0000 Subject: make the last three options of macro_log_feature() optional, so kdenetwork configures Alex svn path=/trunk/KDE/kdelibs/; revision=558140 --- modules/MacroLogFeature.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 89c6e0bb..99c4bb5c 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -1,6 +1,6 @@ # This file defines two macros: # -# MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL MIN_VERSION COMMENTS) +# MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL [REQUIRED [MIN_VERSION [COMMENTS]]]) # Logs the information so that it can be displayed at the end # of the configure run # VAR : TRUE or FALSE, indicating whether the feature is supported @@ -26,7 +26,11 @@ -MACRO(MACRO_LOG_FEATURE _var _package _description _url _required _minvers _comments) +MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _comments) + + SET(_required "${ARGV4}") + SET(_minvers "${ARGV5}") + SET(_comments "${ARGV6}") IF (${_var}) SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) -- cgit v1.2.1 From 349553c7ffe56cc77bce08fd255782c7db8f355b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Jul 2006 21:46:37 +0000 Subject: -link kdeinit modules with empty rpath -don't require a space after the gcc versiuon number Alex svn path=/trunk/KDE/kdelibs/; revision=558204 --- modules/FindKDE4Internal.cmake | 2 +- modules/KDE4Macros.cmake | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c25b9666..ba94f0df 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -595,7 +595,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) # get information about gcc exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_info) - string (REGEX MATCH " [34]\\.[0-9]\\.[0-9] " _gcc_version "${_gcc_info}") + string (REGEX MATCH " [34]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_info}") macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) if (GCC_IS_NEWER_THAN_4_1) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6b53e505..45fd4c12 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -461,19 +461,21 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library - if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - if (NOT CMAKE_SKIP_RPATH) - set_target_properties(kdeinit_${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") - endif (NOT CMAKE_SKIP_RPATH) + if (KDE4_ENABLE_FINAL) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) else (KDE4_ENABLE_FINAL) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ) endif (KDE4_ENABLE_FINAL) - kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) + + if (NOT CMAKE_SKIP_RPATH) + set_target_properties(kdeinit_${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") + endif (NOT CMAKE_SKIP_RPATH) + + kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) # endif (WIN32) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) -- cgit v1.2.1 From f615a1ef1f210b0cf8a468a2cb1fd776cedfa682 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Jul 2006 22:11:24 +0000 Subject: delete previously installed FindQtDBus.cmake and QtDBUSMacros.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=558217 --- modules/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 2e6bc86d..9aa94fee 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -8,6 +8,8 @@ install( FILES kde4init_dummy.cpp.in ${cmakeFiles} DESTINATION ${module_install # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE + ${module_install_dir}/FindQtDBus.cmake + ${module_install_dir}/QtDBusMacros.cmake ${module_install_dir}/MacroGetenvWinPath.cmake ${module_install_dir}/FindKDE4.cmake ${module_install_dir}/UsePkgconfig.cmake -- cgit v1.2.1 From 4e325797f8242fa03b9cc802f5b65224c730cac6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Tue, 4 Jul 2006 22:49:51 +0000 Subject: kompmgr is soon gone svn path=/trunk/KDE/kdelibs/; revision=558238 --- modules/FindX11.cmake | 5 ----- 1 file changed, 5 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 1f759efe..6456e9e9 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -182,11 +182,6 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkb_INCLUDE_PATH} ) endif (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) - if (X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) - set(X11_kompmgr_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) - endif (X11_Xdamage_INCLUDE_PATH AND X11_Xcomposite_INCLUDE_PATH AND X11_Xrender_INCLUDE_PATH) - if (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) set(X11_Xinput_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) -- cgit v1.2.1 From 30c5701434204555389dacb92465e4637e421150 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 5 Jul 2006 07:17:30 +0000 Subject: if a wrong qmake has been found, mark it as invalid in the cache, so that it is searched again the next time cmake runs Alex svn path=/trunk/KDE/kdelibs/; revision=558318 --- modules/FindQt4.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 456c514f..f415a360 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -974,6 +974,7 @@ IF (QT4_QMAKE_FOUND) ENDIF( NOT Qt4_FIND_QUIETLY) ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "NO") + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF( Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") ENDIF( Qt4_FIND_REQUIRED) @@ -1009,12 +1010,13 @@ IF (QT4_QMAKE_FOUND) SET( QT_QT_LIBRARY "") ELSE(QT4_QMAKE_FOUND) - + + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF(Qt4_FIND_REQUIRED) IF(QT4_INSTALLED_VERSION_TOO_OLD) MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") ELSE(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE( FATAL_ERROR "Qt qmake not found!") + MESSAGE( FATAL_ERROR "Qt qmake not found!") ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) ELSE(Qt4_FIND_REQUIRED) IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) -- cgit v1.2.1 From 7bc0439801f5e3192b748a44195ea844b50032ff Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 5 Jul 2006 08:34:59 +0000 Subject: now we have a uninstall target in every toplevel module, so you can do "make uninstall" e.g. in build/kdelibs/ Alex CCMAIL:kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=558348 --- modules/CMakeLists.txt | 2 +- modules/FindKDE4Internal.cmake | 15 +++++++++++++-- modules/kde4_cmake_uninstall.cmake.in | 22 ++++++++++++++++++++++ 3 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 modules/kde4_cmake_uninstall.cmake.in (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 9aa94fee..1496668a 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -4,7 +4,7 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES kde4init_dummy.cpp.in ${cmakeFiles} DESTINATION ${module_install_dir} ) +install( FILES kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in ${cmakeFiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ba94f0df..bdd08393 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -227,6 +227,8 @@ include (CheckCXXCompilerFlag) ################################# +# get the directory of the current file, used later on in the file +get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) # the following are directories where stuff will be installed to @@ -314,7 +316,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) @@ -643,7 +644,7 @@ endif (CMAKE_C_COMPILER MATCHES "icc") # KDE4Macros.cmake contains all the KDE specific macros -include(KDE4Macros) +include(${kde_cmake_module_dir}/KDE4Macros.cmake) # decide whether KDE4 has been found @@ -701,3 +702,13 @@ set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQ string(REGEX REPLACE ".*/lib" "" KDELIBSUFF ${LIB_INSTALL_DIR} ) message(STATUS "KDELIBSUFF :<${KDELIBSUFF}>") + + +if (NOT _kde4_uninstall_rule_created) + set(_kde4_uninstall_rule_created TRUE) + + configure_file("${kde_cmake_module_dir}/kde4_cmake_uninstall.cmake.in" "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake" @ONLY) + + add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake") + +endif (NOT _kde4_uninstall_rule_created) diff --git a/modules/kde4_cmake_uninstall.cmake.in b/modules/kde4_cmake_uninstall.cmake.in new file mode 100644 index 00000000..36dd9ba8 --- /dev/null +++ b/modules/kde4_cmake_uninstall.cmake.in @@ -0,0 +1,22 @@ +IF(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") + MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_BINARY_DIR@/install_manifest.txt\"") +ENDIF(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") + +FILE(READ "@CMAKE_BINARY_DIR@/install_manifest.txt" files) +STRING(REGEX REPLACE "\n" ";" files "${files}") +FOREACH(file ${files}) + MESSAGE(STATUS "Uninstalling \"${file}\"") + IF(EXISTS "${file}") + EXEC_PROGRAM( + "@CMAKE_COMMAND@" ARGS "-E remove \"${file}\"" + OUTPUT_VARIABLE rm_out + RETURN_VALUE rm_retval + ) + IF("${rm_retval}" STREQUAL 0) + ELSE("${rm_retval}" STREQUAL 0) + MESSAGE(FATAL_ERROR "Problem when removing \"${file}\"") + ENDIF("${rm_retval}" STREQUAL 0) + ELSE(EXISTS "${file}") + MESSAGE(STATUS "File \"${file}\" does not exist.") + ENDIF(EXISTS "${file}") +ENDFOREACH(file) -- cgit v1.2.1 From 13c3bfee882d68b4bd7ad84d4ce7db7ed4e01164 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 5 Jul 2006 13:47:51 +0000 Subject: don't install into share/share/applnk (and so far there still are kcmodules that install there at least - to be changed to install into services, though) svn path=/trunk/KDE/kdelibs/; revision=558506 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index bdd08393..cf7c502a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -212,7 +212,7 @@ include (CheckCXXCompilerFlag) set(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" CACHE PATH "The install dir for wallpapers" FORCE) set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir" FORCE) # this one shouldn't be used anymore - set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/share/applnk" CACHE PATH "Is this still used ?" FORCE) + set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" CACHE PATH "Is this still used ?" FORCE) set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir" FORCE) set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory" FORCE) -- cgit v1.2.1 From ed05031001cff71b2358d3c9189fc8b685122d56 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 5 Jul 2006 19:22:34 +0000 Subject: merge the settings from FindKDEPIMLibs.cmake, which I will be removing ASAP. svn path=/trunk/KDE/kdelibs/; revision=558658 --- modules/FindKdepimLibs.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 514845c0..b90809d5 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -1,9 +1,14 @@ # Find if we installed kdepimlibs before to compile it +#TODO: use kcal/kcal.h, but it doesn't exist yet FIND_PATH( KDEPIMLIBS_INCLUDE_DIR emailfunctions/email.h ${KDE4_INCLUDE_DIR} ) if( NOT KDEPIMLIBS_INCLUDE_DIR ) - message( FATAL_ERROR "You didn't compile kdepimlibs before to compile it. Please install it" ) + message(FATAL_ERROR "Could NOT find a kdepimlibs installation.\nPlease build and install kdepimlibs first.") endif(NOT KDEPIMLIBS_INCLUDE_DIR ) + +set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) +set(KDE4_KCAL_LIBS kcal) +set(KDE4_KTNEF_LIBS ktnef) -- cgit v1.2.1 From 76583391c09f168a8ef4b16ccf4eb19ab50693aa Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 6 Jul 2006 20:49:19 +0000 Subject: -fix gcc version detection on Mac CCMAIL: rangerrick@gmail.com Can you please check that this works now for you ? svn path=/trunk/KDE/kdelibs/; revision=559236 --- modules/FindKDE4Internal.cmake | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index cf7c502a..7941df0f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -593,14 +593,20 @@ if (CMAKE_COMPILER_IS_GNUCXX) # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) -# get information about gcc - exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_info) + # get the gcc version + exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) - string (REGEX MATCH " [34]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_info}") + string (REGEX MATCH " [34]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") + # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: + if (NOT _gcc_version) + string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") + endif (NOT _gcc_version) + macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) if (GCC_IS_NEWER_THAN_4_1) - string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_info}") + exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) + string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") else (GCC_IS_NEWER_THAN_4_1) set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) endif (GCC_IS_NEWER_THAN_4_1) -- cgit v1.2.1 From 35569a895a571d903855aa685091cee582e4f22d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 7 Jul 2006 08:21:21 +0000 Subject: Not necessary to keep debug svn path=/trunk/KDE/kdelibs/; revision=559391 --- modules/FindKDE4Internal.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7941df0f..cd1a7575 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -707,7 +707,6 @@ set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DI set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) string(REGEX REPLACE ".*/lib" "" KDELIBSUFF ${LIB_INSTALL_DIR} ) -message(STATUS "KDELIBSUFF :<${KDELIBSUFF}>") if (NOT _kde4_uninstall_rule_created) -- cgit v1.2.1 From ec206a794824e3b2874cb0433104be5c8c2c70b6 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Jul 2006 08:26:58 +0000 Subject: Add kdefx variabl svn path=/trunk/KDE/kdelibs/; revision=560781 --- modules/FindKDE4Internal.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index cd1a7575..d30ee8cd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -37,6 +37,7 @@ # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONONCORE_LIBRARY - the phononcore library # KDE4_PHONONUI_LIBRARY - the phononui library +# KDE4_KDEFX_LIBRARY - the kdefx library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -58,6 +59,7 @@ # KDE4_KDESU_LIBS - the kdesu library and all depending libraries # KDE4_PHONONCORE_LIBS - the phononcore library and all depending librairies # KDE4_PHONONUI_LIBS - the phononui library and all depending librairies +# KDE4_KDEFX_LIBS - the kdefx library and all depending librairies # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -251,6 +253,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) + set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) @@ -321,6 +324,9 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) + + find_library(KDE4_KDEFX_LIBRARY NAMES kdefx PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEFX_LIBS ${kdefx_LIB_DEPENDS} ${KDE4_KDEFX_LIBRARY} ) find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) -- cgit v1.2.1 From 28f71a8c5d049579bac8fd6e51fad18ccd942ee4 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Tue, 11 Jul 2006 12:37:11 +0000 Subject: Allow to manually set the LIB_INSTALL_DIR (needed to install into lib64). svn path=/trunk/KDE/kdelibs/; revision=560859 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d30ee8cd..b723517f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -196,7 +196,7 @@ include (CheckCXXCompilerFlag) ## the following are directories where stuff will be installed to set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) - set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) + set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)" FORCE) set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix" FORCE) -- cgit v1.2.1 From b797823de2557e12cebf464ce5c54095a30e8647 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Jul 2006 15:12:27 +0000 Subject: Allow to specify classname. It's necessary to fix karm compile it uses same xml file but two different class and use the same lib =>it defined same object => we can't link. (it's very specific case) svn path=/trunk/KDE/kdelibs/; revision=560969 --- modules/FindQt4.cmake | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f415a360..17d19a03 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -894,14 +894,22 @@ IF (QT4_QMAKE_FOUND) STRING(TOLOWER ${_basename} _basename) ENDIF (_optionalBasename) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_optionalClassName "${ARGV5}") + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + + IF(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ELSE(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} DEPENDS ${_infile} ) + ENDIF(_optionalClassName) QT4_GENERATE_MOC(${_header} ${_moc}) SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) -- cgit v1.2.1 From fd3a1772eded684647d10ac39f4eb2ef14ec0d9c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 12 Jul 2006 19:34:41 +0000 Subject: -KDE4_AUTOMOC: give a better error message if the header which should exist for creating the moc file doesn't exist This means that cmake will now abort if there is the header file which is required for KDE4_AUTOMOC is missing at cmake time. I think this shouldn't break anything, but I don't have enough computing power here to check all modules. CCMAIL: kde-buildsystem@kde.org CCMAIL: kde-core-devel@kde.org Alex svn path=/trunk/KDE/kdelibs/; revision=561632 --- modules/KDE4Macros.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 45fd4c12..2158a81f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -154,10 +154,13 @@ MACRO (KDE4_AUTOMOC) string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") get_filename_component(_basename ${_current_MOC} NAME_WE) -# set(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) set(_header ${_abs_PATH}/${_basename}.h) set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - #set(_moc ${_abs_PATH}/${_current_MOC}) + + if (NOT EXISTS ${_abs_PATH}/${_basename}.h) + message(FATAL_ERROR "In the file \"${_abs_FILE}\" the moc file \"${_current_MOC}\" is included, but \"${_abs_PATH}/${_basename}.h\" doesn't exist.") + endif (NOT EXISTS ${_abs_PATH}/${_basename}.h) + add_custom_command(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} -- cgit v1.2.1 From 3ee8f55fc4ef03d3c164bf1ce451dacd881cb3f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Thu, 13 Jul 2006 13:14:26 +0000 Subject: handle win32 support in FindKDE4Internal.cmake svn path=/trunk/KDE/kdelibs/; revision=561849 --- modules/FindGNUWIN32.cmake | 1 - modules/FindKDE4Internal.cmake | 4 +++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 8b1b15a6..ca2c8b9e 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -11,7 +11,6 @@ if (GNUWIN32_DIR) set(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) set(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) set(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) - set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${GNUWIN32_INCLUDE_DIR}) set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${GNUWIN32_LIBRARY_DIR}) set(GNUWIN32_FOUND TRUE) else (GNUWIN32_DIR) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b723517f..7f1e2117 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -449,7 +449,9 @@ if (WIN32) find_package(KDEWIN32 REQUIRED) - set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) + find_package(GNUWIN32) + + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES} ${GNUWIN32_INCLUDE_DIR}) # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex -- cgit v1.2.1 From 8a82ae8023ada7ea6e1f7cf272c380c926bb7d49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Thu, 13 Jul 2006 13:27:21 +0000 Subject: the configure process needs the include path svn path=/trunk/KDE/kdelibs/; revision=561854 --- modules/FindGNUWIN32.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index ca2c8b9e..8b1b15a6 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -11,6 +11,7 @@ if (GNUWIN32_DIR) set(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) set(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) set(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) + set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${GNUWIN32_INCLUDE_DIR}) set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${GNUWIN32_LIBRARY_DIR}) set(GNUWIN32_FOUND TRUE) else (GNUWIN32_DIR) -- cgit v1.2.1 From de179a0b561c77a2fe8cdfab39b724b7c0ce63f4 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 15 Jul 2006 09:22:46 +0000 Subject: fix for OpenSSL 0.9.8b with msvc hope it will work with < 0.9.8b too svn path=/trunk/KDE/kdelibs/; revision=562569 --- modules/FindOpenSSL.cmake | 110 ++++++++++++++++++++++++++++------------------ 1 file changed, 68 insertions(+), 42 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index ed2f4045..5973543a 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -1,42 +1,68 @@ -# - Try to find the OpenSSL encryption library -# Once done this will define -# -# OPENSSL_FOUND - system has the OpenSSL library -# OPENSSL_INCLUDE_DIR - the OpenSSL include directory -# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL - -if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - - # in cache already - SET(OPENSSL_FOUND TRUE) - -else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - - FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h - /usr/include/ - /usr/local/include/ - ) - - FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 - PATHS - /usr/lib - /usr/local/lib - ) - - if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - set(OPENSSL_FOUND TRUE) - endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - - if (OPENSSL_FOUND) - if (NOT OpenSSL_FIND_QUIETLY) - message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") - endif (NOT OpenSSL_FIND_QUIETLY) - else (OPENSSL_FOUND) - if (OpenSSL_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find OpenSSL") - endif (OpenSSL_FIND_REQUIRED) - endif (OPENSSL_FOUND) - - MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) - -endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +# - Try to find the OpenSSL encryption library +# Once done this will define +# +# OPENSSL_FOUND - system has the OpenSSL library +# OPENSSL_INCLUDE_DIR - the OpenSSL include directory +# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL + +if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + + # in cache already + SET(OPENSSL_FOUND TRUE) + +else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + + FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h + /usr/include/ + /usr/local/include/ + ) + + if(WIN32 AND MSVC) + # /MD and /MDd are the standard values - if somone wants to use + # others, the libnames have to change here too + + FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd ) + FIND_LIBRARY(SSL_EAY_RELEASE NAMES ssleay32MD ssl ssleay32) + + IF(MSVC_IDE) + IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + SET(OPENSSL_LIBRARIES optimized ${SSL_EAY_RELEASE} debug ${SSL_EAY_DEBUG}) + ELSE(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl") + ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + ELSE(MSVC_IDE) + STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_LIBRARIES ${SSL_EAY_DEBUG}) + ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_LIBRARIES ${SSL_EAY_RELEASE}) + ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + ENDIF(MSVC_IDE) + MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE) + else(WIN32 AND MSVC) + + FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD + PATHS + /usr/lib + /usr/local/lib + ) + + endif(WIN32 AND MSVC) + + if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + set(OPENSSL_FOUND TRUE) + endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + + if (OPENSSL_FOUND) + if (NOT OpenSSL_FIND_QUIETLY) + message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") + endif (NOT OpenSSL_FIND_QUIETLY) + else (OPENSSL_FOUND) + if (OpenSSL_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find OpenSSL") + endif (OpenSSL_FIND_REQUIRED) + endif (OPENSSL_FOUND) + + MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) + +endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) -- cgit v1.2.1 From 2f48fe6095a4dfd09c1130a4d3b5d4ffb4666e08 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 16 Jul 2006 08:02:36 +0000 Subject: don't check for openssl lib on every cmake run (win32) CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=562905 --- modules/FindOpenSSL.cmake | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 5973543a..5188c6f3 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -4,13 +4,20 @@ # OPENSSL_FOUND - system has the OpenSSL library # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL +if(OPENSSL_LIBRARIES) + SET(LIB_FOUND 1) +endif(OPENSSL_LIBRARIES) -if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +if(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + SET(LIB_FOUND 1) +endif(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + +if (OPENSSL_INCLUDE_DIR AND LIB_FOUND) # in cache already SET(OPENSSL_FOUND TRUE) -else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +else (OPENSSL_INCLUDE_DIR AND LIB_FOUND) FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/include/ @@ -20,8 +27,9 @@ else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) if(WIN32 AND MSVC) # /MD and /MDd are the standard values - if somone wants to use # others, the libnames have to change here too + # use also ssl and ssleay32 in debug as fallback for openssl < 0.9.8b - FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd ) + FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd ssl ssleay32) FIND_LIBRARY(SSL_EAY_RELEASE NAMES ssleay32MD ssl ssleay32) IF(MSVC_IDE) @@ -65,4 +73,4 @@ else (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) -endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +endif (OPENSSL_INCLUDE_DIR AND LIB_FOUND) -- cgit v1.2.1 From 873e779682f1a3f7d45657c88c7a33acbb9126aa Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 17 Jul 2006 18:22:05 +0000 Subject: fix for win32 - why it's only me who needs this? CCMAIL: syntheticpp@gmx.net svn path=/trunk/KDE/kdelibs/; revision=563490 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2158a81f..91aaa53e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -335,8 +335,8 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) # use add_custom_target() to have the batch-file-wrapper generated during build time instead of cmake time add_custom_command(TARGET ${_target_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} - -D_filename=${_executable}.bat - -D_ld_library_path="${_ld_library_path}" -D_executable=${_executable} + -D_filename="${_executable}.bat" + -D_ld_library_path="${_ld_library_path}" -D_executable="${_executable}" -P ${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ) -- cgit v1.2.1 From 2eaf439c2bde323073ff500ea3aad340013d2baa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Larouche?= Date: Thu, 20 Jul 2006 02:09:18 +0000 Subject: Finally commit my change to kde4_add_kcfg_files. Added GENERATE_MOC option to kde4_add_kcfg_files. Since only 1%(and I would even say 0.1%) of kcfg files need moc, I added that keyword to generate_moc explictly. Should speed up a little bit the build for kcfg which doesn't need moc. svn path=/trunk/KDE/kdelibs/; revision=564385 --- modules/FindKDE4Internal.cmake | 3 ++- modules/KDE4Macros.cmake | 55 ++++++++++++++++++++++++------------------ 2 files changed, 33 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7f1e2117..8416917c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -101,8 +101,9 @@ # KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) # Use this to add Qt designer ui files from Qt version 3 to your application/library. # -# KDE4_ADD_KCFG_FILES (SRCS_VAR file1.kcfgc ... fileN.kcfgc) +# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) # Use this to add KDE config compiler files to your application/library. +# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. # # KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) # Use this to add widget description files for the makekdewidgets code generator diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 91aaa53e..21ee0836 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -13,32 +13,39 @@ #neundorf@kde.org -macro (KDE4_ADD_KCFG_FILES _sources) - foreach (_current_FILE ${ARGN}) +macro (KDE4_ADD_KCFG_FILES _sources ) + IF( ${ARGV1} STREQUAL "GENERATE_MOC" ) + SET(_kcfg_generatemoc TRUE) + ENDIF( ${ARGV1} STREQUAL "GENERATE_MOC" ) - get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) - get_filename_component(_abs_PATH ${_tmp_FILE} PATH) - get_filename_component(_basename ${_tmp_FILE} NAME_WE) - - file(READ ${_tmp_FILE} _contents) - string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") - set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - # the command for creating the source file from the kcfg file - add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} - COMMAND ${KDE4_KCFGC_EXECUTABLE} - ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} - MAIN_DEPENDENCY ${_tmp_FILE} - DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) - - qt4_generate_moc(${_header_FILE} ${_moc_FILE} ) - set_source_files_properties(${_src_FILE} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file - macro_add_file_dependencies(${_src_FILE} ${_moc_FILE} ) - - set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) + foreach (_current_FILE ${ARGN}) + if(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") + get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_abs_PATH ${_tmp_FILE} PATH) + get_filename_component(_basename ${_tmp_FILE} NAME_WE) + + file(READ ${_tmp_FILE} _contents) + string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") + set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + # the command for creating the source file from the kcfg file + add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} + COMMAND ${KDE4_KCFGC_EXECUTABLE} + ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} + MAIN_DEPENDENCY ${_tmp_FILE} + DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) + + if(_kcfg_generatemoc) + qt4_generate_moc(${_header_FILE} ${_moc_FILE} ) + set_source_files_properties(${_src_FILE} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + macro_add_file_dependencies(${_src_FILE} ${_moc_FILE} ) + endif(_kcfg_generatemoc) + + set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) + endif(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") endforeach (_current_FILE) endmacro (KDE4_ADD_KCFG_FILES) -- cgit v1.2.1 From 132d93f0d7376e149876bcfa189c5635f5360ae4 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 20 Jul 2006 13:37:07 +0000 Subject: Now into kdelibs as kdebase and koffice use them svn path=/trunk/KDE/kdelibs/; revision=564569 --- modules/FindFontconfig.cmake | 55 ++++++++++++++++++++++++++++++++++++++++++++ modules/FindFreetype.cmake | 43 ++++++++++++++++++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 modules/FindFontconfig.cmake create mode 100644 modules/FindFreetype.cmake (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake new file mode 100644 index 00000000..541b20d8 --- /dev/null +++ b/modules/FindFontconfig.cmake @@ -0,0 +1,55 @@ +# - Try to find the Fontconfig +# Once done this will define +# +# FONTCONFIG_FOUND - system has Fontconfig +# FONTCONFIG_LIBRARIES - Link these to use FONTCONFIG +# FONTCONFIG_DEFINITIONS - Compiler switches required for using FONTCONFIG +# + +if (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) + + # in cache already + set(FONTCONFIG_FOUND TRUE) + +else (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(fontconfig _FONTCONFIGIncDir _FONTCONFIGLinkDir _FONTCONFIGLinkFlags _FONTCONFIGCflags) + + set(FONTCONFIG_DEFINITIONS ${_FONTCONFIGCflags} CACHE INTERNAL "The compilation flags for fontconfig") + + find_path(FONTCONFIG_INCLUDE_DIR fontconfig/fontconfig.h + PATHS + ${_FONTCONFIGIncDir} + /usr/include + /usr/local/include + /usr/X11/include + ) + + find_library(FONTCONFIG_LIBRARIES NAMES fontconfig + PATHS + ${_FONTCONFIGLinkDir} + /usr/lib + /usr/local/lib + ) + + if (FONTCONFIG_LIBRARIES) + set(FONTCONFIG_FOUND TRUE) + endif (FONTCONFIG_LIBRARIES) + + if (FONTCONFIG_FOUND) + if (NOT FONTCONFIG_FIND_QUIETLY) + message(STATUS "Found FONTCONFIG: ${FONTCONFIG_LIBRARIES}") + endif (NOT FONTCONFIG_FIND_QUIETLY) + else (FONTCONFIG_FOUND) + if (FONTCONFIG_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find FONTCONFIG") + endif (FONTCONFIG_FIND_REQUIRED) + endif (FONTCONFIG_FOUND) + + MARK_AS_ADVANCED(FONTCONFIG_LIBRARIES) + +endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake new file mode 100644 index 00000000..8a11dc40 --- /dev/null +++ b/modules/FindFreetype.cmake @@ -0,0 +1,43 @@ +# - Try to find the freetype library +# Once done this will define +# +# FREETYPE_FOUND - system has Fontconfig +# FREETYPE_INCLUDE_DIR - the FONTCONFIG include directory +# FREETYPE_LIBRARIES - Link these to use FREETYPE +# + +if (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) + + # in cache already + set(FREETYPE_FOUND TRUE) + +else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) + + FIND_PROGRAM(FREETYPECONFIG_EXECUTABLE NAMES freetype-config PATHS + /usr/bin + /usr/local/bin + /opt/local/bin + ) + + #reset vars + set(FREETYPE_LIBRARIES) + set(FREETYPE_INCLUDE_DIR) + + # if freetype-config has been found + if(FREETYPECONFIG_EXECUTABLE) + + EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_LIBRARIES) + + EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_INCLUDE_DIR) + if(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) + set(FREETYPE_FOUND TRUE) + #message(STATUS "Found freetype: ${FREETYPE_LIBRARIES}") + endif(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) + + MARK_AS_ADVANCED(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR) + + set( FREETYPE_LIBRARIES ${FREETYPE_LIBRARIES} CACHE INTERNAL "The libraries for freetype" ) + + endif(FREETYPECONFIG_EXECUTABLE) + +endif (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) -- cgit v1.2.1 From fdbca427fa50d3533540080efb0f38bf2237f8ee Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 21 Jul 2006 07:37:18 +0000 Subject: We have some mng icons (kopete has some mng icons which must be installed as png icons) svn path=/trunk/KDE/kdelibs/; revision=564747 --- modules/KDE4Macros.cmake | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 21ee0836..f7b5cf27 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -231,6 +231,18 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) ${_group} ${_current_ICON} ${_name}) ENDforeach (_current_ICON) + # mng icons + FILE(GLOB _icons *.mng) + foreach (_current_ICON ${_icons} ) + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _size "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _name "${_current_ICON}") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake· + ${_defaultpath}/${_theme}/${_size}x${_size}· + ${_group} ${_current_ICON} ${_name}) + ENDforeach (_current_ICON) + + # and now the svg icons FILE(GLOB _icons *.svgz) foreach (_current_ICON ${_icons} ) -- cgit v1.2.1 From c3992d1b146d82b600fd33b3fcfc6b9109876ddf Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 21 Jul 2006 07:46:29 +0000 Subject: Remove bad char svn path=/trunk/KDE/kdelibs/; revision=564750 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f7b5cf27..40513c02 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -237,8 +237,8 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _name "${_current_ICON}") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake· - ${_defaultpath}/${_theme}/${_size}x${_size}· + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) ENDforeach (_current_ICON) -- cgit v1.2.1 From e1236a4fd9db324a4cab6f5a6300a8d835e1ba07 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 23 Jul 2006 14:41:42 +0000 Subject: add a variable for libkabc. svn path=/trunk/KDE/kdelibs/; revision=565487 --- modules/FindKdepimLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index b90809d5..564d094c 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -10,5 +10,6 @@ if( NOT KDEPIMLIBS_INCLUDE_DIR ) endif(NOT KDEPIMLIBS_INCLUDE_DIR ) set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) +set(KDE4_KABC_LIBS kabc) set(KDE4_KCAL_LIBS kcal) set(KDE4_KTNEF_LIBS ktnef) -- cgit v1.2.1 From c037e1f54cd7df3d98999da6ec41810050b08642 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Mon, 24 Jul 2006 19:36:53 +0000 Subject: KDE4_KRESOURCES_LIBS is used but not defined anywhere. svn path=/trunk/KDE/kdelibs/; revision=565911 --- modules/FindKdepimLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 564d094c..9b720fed 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -13,3 +13,4 @@ set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) set(KDE4_KABC_LIBS kabc) set(KDE4_KCAL_LIBS kcal) set(KDE4_KTNEF_LIBS ktnef) +set(KDE4_KRESOURCES_LIBS kresources) -- cgit v1.2.1 From 2ce3b6f76e8e085a9dc2e472d16859973d5ef945 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 24 Jul 2006 19:51:03 +0000 Subject: change the tag file because we hope emailfunctions goes away sometime soon. svn path=/trunk/KDE/kdelibs/; revision=565921 --- modules/FindKdepimLibs.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 9b720fed..9e18eb46 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -1,7 +1,6 @@ # Find if we installed kdepimlibs before to compile it -#TODO: use kcal/kcal.h, but it doesn't exist yet -FIND_PATH( KDEPIMLIBS_INCLUDE_DIR emailfunctions/email.h +FIND_PATH( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h ${KDE4_INCLUDE_DIR} ) -- cgit v1.2.1 From 85aabf8054acef5660b8ae7c6551a9bbfbc41f39 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 24 Jul 2006 21:58:40 +0000 Subject: add a variable for /share/autostart svn path=/trunk/KDE/kdelibs/; revision=565954 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8416917c..ff3f6316 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -216,6 +216,7 @@ include (CheckCXXCompilerFlag) set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir" FORCE) # this one shouldn't be used anymore set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" CACHE PATH "Is this still used ?" FORCE) + set(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" CACHE PATH "The install dir for autostart files" FORCE) set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir" FORCE) set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory" FORCE) -- cgit v1.2.1 From 822dbbc7c67fb443f0f1bad4c2a906372679a503 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 26 Jul 2006 12:53:45 +0000 Subject: Improve icon macro: Install just icon which is into good theme. But For me it will better to not specify theme name and use prefix of icon to add into good theme dir. I will wait Alexx to discute about it. I comment debug to see errors about icons Now all icons are installed into good directory Becarefull if we uncommente it it returns false true. svn path=/trunk/KDE/kdelibs/; revision=566519 --- modules/KDE4Macros.cmake | 81 +++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 69 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 40513c02..acf82128 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -223,23 +223,80 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) # first the png icons FILE(GLOB _icons *.png) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _size "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _name "${_current_ICON}") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _type "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _size "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") + + if( ${_type} STREQUAL "cr" ) + if(${_theme} STREQUAL "crystalsvg" ) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size} + ${_group} ${_current_ICON} ${_name}) + #else(${_theme} STREQUAL "crystalsvg" ) + #MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") + endif(${_theme} STREQUAL "crystalsvg" ) + endif(${_type} STREQUAL "cr" ) + + if( ${_type} STREQUAL "lo" ) + if(${_theme} STREQUAL "locolor" ) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size}· + ${_group} ${_current_ICON} ${_name}) + #else(${_theme} STREQUAL "locolor" ) + # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") + endif(${_theme} STREQUAL "locolor" ) + endif(${_type} STREQUAL "lo" ) + + if( ${_type} STREQUAL "hi" ) + if( ${_theme} STREQUAL "hicolor" ) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size}· + ${_group} ${_current_ICON} ${_name}) + #else(${_theme} STREQUAL "hicolor" ) + # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") + endif(${_theme} STREQUAL "hicolor" ) + endif(${_type} STREQUAL "hi" ) + ENDforeach (_current_ICON) # mng icons FILE(GLOB _icons *.mng) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _size "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/[a-zA-Z]+([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _name "${_current_ICON}") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _type "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _size "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\4" _name "${_current_ICON}") + if( ${_type} STREQUAL "cr" ) + if( ${_theme} STREQUAL "crystalsvg" ) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size} + ${_group} ${_current_ICON} ${_name}) + #else( ${_theme} STREQUAL "crystalsvg" ) + #MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") + endif( ${_theme} STREQUAL "crystalsvg" ) + endif(${_type} STREQUAL "cr" ) + + if( ${_type} STREQUAL "lo" ) + if( ${_theme} STREQUAL "locolor" ) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size} + ${_group} ${_current_ICON} ${_name}) + #else(${_theme} STREQUAL "locolor" ) + # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") + endif(${_theme} STREQUAL "locolor" ) + endif(${_type} STREQUAL "lo" ) + + if( ${_type} STREQUAL "hi" ) + if(${_theme} STREQUAL "hicolor" ) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size} + ${_group} ${_current_ICON} ${_name}) + else(${_theme} STREQUAL "hicolor" ) + # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") + #endif(${_theme} STREQUAL "hicolor" ) + endif(${_type} STREQUAL "hi" ) + ENDforeach (_current_ICON) -- cgit v1.2.1 From ef3ac5248e7cbbce93a81afce093ef64c7e1f912 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 27 Jul 2006 11:45:16 +0000 Subject: Scalable hicolor svgz exists svn path=/trunk/KDE/kdelibs/; revision=566879 --- modules/KDE4Macros.cmake | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index acf82128..ded5ac84 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -303,11 +303,20 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) # and now the svg icons FILE(GLOB _icons *.svgz) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + if( ${_theme} STREQUAL "crystalsvg" ) + STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme}/scalable ${_group} ${_current_ICON} ${_name}) + endif( ${_theme} STREQUAL "crystalsvg" ) + if( ${_theme} STREQUAL "hicolor" ) + STRING(REGEX REPLACE "^.*/hisc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/hisc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/scalable + ${_group} ${_current_ICON} ${_name}) + endif( ${_theme} STREQUAL "hicolor" ) ENDforeach (_current_ICON) ENDMACRO (KDE4_INSTALL_ICONS) -- cgit v1.2.1 From 507899040d89767c803d312610dbe6f810955a33 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 27 Jul 2006 17:33:45 +0000 Subject: disable a msvc warning svn path=/trunk/KDE/kdelibs/; revision=566976 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ff3f6316..dfc94fb0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -469,6 +469,7 @@ if (WIN32) # windows, microsoft compiler if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) if(CMAKE_COMPILER_2005) add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) -- cgit v1.2.1 From 5b0de2d6a93d8442edad860b8413ee7abb1dedc2 Mon Sep 17 00:00:00 2001 From: Urs Wolfer Date: Thu, 27 Jul 2006 22:48:41 +0000 Subject: typo-- svn path=/trunk/KDE/kdelibs/; revision=567081 --- modules/KDE4Macros.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ded5ac84..addf2400 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -227,31 +227,31 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") - + if( ${_type} STREQUAL "cr" ) if(${_theme} STREQUAL "crystalsvg" ) - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) #else(${_theme} STREQUAL "crystalsvg" ) #MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") endif(${_theme} STREQUAL "crystalsvg" ) endif(${_type} STREQUAL "cr" ) - + if( ${_type} STREQUAL "lo" ) if(${_theme} STREQUAL "locolor" ) _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size}· + ${_defaultpath}/${_theme}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) #else(${_theme} STREQUAL "locolor" ) # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") endif(${_theme} STREQUAL "locolor" ) endif(${_type} STREQUAL "lo" ) - + if( ${_type} STREQUAL "hi" ) if( ${_theme} STREQUAL "hicolor" ) _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size}· + ${_defaultpath}/${_theme}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) #else(${_theme} STREQUAL "hicolor" ) # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") -- cgit v1.2.1 From 4871635cbb45edfaa5334698a3dc9966b2260e09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pascal=20L=C3=A9tourneau?= Date: Sun, 30 Jul 2006 02:44:13 +0000 Subject: Fix jasper detection svn path=/trunk/KDE/kdelibs/; revision=567768 --- modules/FindJasper.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 9a6f2414..23867f34 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -23,10 +23,10 @@ FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper /usr/local/lib ) -if (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) +if (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) set(JASPER_FOUND TRUE) set(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) -endif (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) +endif (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) if (JASPER_FOUND) -- cgit v1.2.1 From a1de59281e740bb0db157102f3d10187d55cbb07 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 31 Jul 2006 07:41:34 +0000 Subject: Fix pb when we relauch ccmake -D... ../ LIB_* variable was not changed svn path=/trunk/KDE/kdelibs/; revision=568125 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dfc94fb0..60107461 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -197,7 +197,7 @@ include (CheckCXXCompilerFlag) ## the following are directories where stuff will be installed to set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) - set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") + set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)" FORCE) set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix" FORCE) -- cgit v1.2.1 From b1a4908e3e615227c707629c19915d129be81549 Mon Sep 17 00:00:00 2001 From: "Friedrich W. H. Kossebau" Date: Sat, 5 Aug 2006 10:08:13 +0000 Subject: if appending the old content to the paths it needs to be prefixed with the separator : of course svn path=/trunk/KDE/kdelibs/; revision=569946 --- modules/kde4_exec_via_sh.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index 86e8fd06..a256403e 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -5,7 +5,7 @@ file(WRITE "${_filename}" "#!/bin/sh # created by cmake, don't edit, changes will be lost -${_library_path_variable}=${_ld_library_path}\${${_library_path_variable}+:\$${_library_path_variable}} \"${_executable}\" \"$@\" +${_library_path_variable}=${_ld_library_path}\${${_library_path_variable}:+:\$${_library_path_variable}} \"${_executable}\" \"$@\" ") # make it executable -- cgit v1.2.1 From 1a2f8ac20de9b6c28a783bdad68cd1dabfefda0f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 5 Aug 2006 16:22:07 +0000 Subject: Now we have "LIB_SUFFIX" to define lib suffix as into old bug system. it's a string 64/32 etc. svn path=/trunk/KDE/kdelibs/; revision=570072 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 60107461..7b25d1f7 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -190,15 +190,15 @@ include (CheckCXXCompilerFlag) #add some KDE specific stuff - +set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" FORCE) set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/" FORCE) set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries" FORCE) # ## the following are directories where stuff will be installed to set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) - set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) - set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)" FORCE) + set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})" FORCE) + set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib/kde4/libexec)" FORCE) set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)" FORCE) set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix" FORCE) set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir" FORCE) @@ -717,7 +717,7 @@ set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DI # NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) -string(REGEX REPLACE ".*/lib" "" KDELIBSUFF ${LIB_INSTALL_DIR} ) +set( KDELIBSUFF ${LIB_SUFFIX} ) if (NOT _kde4_uninstall_rule_created) -- cgit v1.2.1 From d071f18ada9fb89b5b0d17925c573f199dadfd45 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 8 Aug 2006 17:05:59 +0000 Subject: don't remove the la-files on make clean (#131172) it would be better to generate them as part of the build, but since the plan is to get rid of them anyway, I don't ewant to put the extra work in it now Alex svn path=/trunk/KDE/kdelibs/; revision=571165 --- modules/KDE4Macros.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index addf2400..8d88d613 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -347,7 +347,6 @@ MACRO (KDE4_INSTALL_LIBTOOL_FILE _subdir _target) FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${_subdir}'\n") INSTALL(FILES ${_laname} DESTINATION ${_subdir}) - MACRO_ADDITIONAL_CLEAN_FILES(${_laname}) ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) -- cgit v1.2.1 From 8da4735d8722ded959589d6cb00124cecb70a7d0 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 9 Aug 2006 16:03:53 +0000 Subject: disable one more warning for msvc svn path=/trunk/KDE/kdelibs/; revision=571475 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7b25d1f7..61237830 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -469,9 +469,14 @@ if (WIN32) # windows, microsoft compiler if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + # C4250: 'class1' : inherits 'class2::member' via dominance + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) + # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) if(CMAKE_COMPILER_2005) + # to avoid a lot of deprecated warnings add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) + # 'identifier' : no suitable definition provided for explicit template instantiation request set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) endif(CMAKE_COMPILER_2005) endif(MSVC) -- cgit v1.2.1 From cdd62acd890437fe5912f98ab82811b01efeaa42 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 10 Aug 2006 14:35:15 +0000 Subject: Remove FORCE argument to fix compile on x86_64 svn path=/trunk/KDE/kdelibs/; revision=571730 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 61237830..bf72d1bd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -190,7 +190,7 @@ include (CheckCXXCompilerFlag) #add some KDE specific stuff -set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" FORCE) +set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/" FORCE) set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries" FORCE) # -- cgit v1.2.1 From 1c13ffda7d17a8085200c4f9733e3d61eb601ce9 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 11 Aug 2006 09:26:08 +0000 Subject: Now we didn't have a snapshot kdelibs => this test is not necessary svn path=/trunk/KDE/kdelibs/; revision=571953 --- modules/FindKDE4Internal.cmake | 11 ----------- 1 file changed, 11 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index bf72d1bd..d7e34417 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -239,7 +239,6 @@ get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") -option(KDE4_IGNORE_DONTPORT "ignore the \"don't port\" message from kdelibs (not snapshot)" OFF) #now try to find some kde stuff @@ -293,16 +292,6 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") if (KDEVERSION) - if (NOT KDE4_IGNORE_DONTPORT) - # avoid porting against kdelibs trunk - string(REGEX MATCH "DONTPORT" _match "${kdeconfig_output}") - if (_match) - message ( FATAL_ERROR "ERROR: don't port against this - version of kdelibs! Use /branches/work/kdelibs4_snapshot instead !" ) - endif (_match) - - endif (NOT KDE4_IGNORE_DONTPORT) - string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") # we need at least this version: -- cgit v1.2.1 From 8f5d21fa6e27a09840ca59e37f7250b3947b2a36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sat, 12 Aug 2006 09:55:18 +0000 Subject: also search for Christian's win32libs in %PragramFiles%\win32libs\; http://www.abi-neuhaus.de/chris/win32libs svn path=/trunk/KDE/kdelibs/; revision=572315 --- modules/FindGNUWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 8b1b15a6..320ca8e7 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -2,7 +2,7 @@ if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) -find_file(GNUWIN32_DIR gnuwin32 +find_file(GNUWIN32_DIR gnuwin32 win32libs PATHS ${_progFiles} "C:/" ) -- cgit v1.2.1 From c61a19229ae69f3bc24d03ebd8eb4f89139b0c68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sat, 12 Aug 2006 12:04:22 +0000 Subject: also search for Christian's win32libs at c:,d:,e:,f:,g: svn path=/trunk/KDE/kdelibs/; revision=572365 --- modules/FindGNUWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 320ca8e7..f618b074 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -4,7 +4,7 @@ file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) find_file(GNUWIN32_DIR gnuwin32 win32libs PATHS ${_progFiles} - "C:/" + "C:/" "D:/" "E:/" "F:/" "G:/" ) if (GNUWIN32_DIR) -- cgit v1.2.1 From 8f34953a167e84a36e7f604335f4a69f2ed713d1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 12 Aug 2006 22:22:57 +0000 Subject: -exclude files generated by qt4_generate_moc() from automoc Alex svn path=/trunk/KDE/kdelibs/; revision=572490 --- modules/FindQt4.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 17d19a03..d8a553dc 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -775,6 +775,8 @@ IF (QT4_QMAKE_FOUND) ARGS ${moc_includes} -o ${outfile} ${abs_infile} DEPENDS ${abs_infile}) + SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) ENDMACRO (QT4_GENERATE_MOC) -- cgit v1.2.1 From 02e5bf8e3d7cc2474f1cfa11aa0bea59efc083d2 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 13 Aug 2006 23:46:33 +0000 Subject: add a new init() macro that should go at the top of each module's toplevel CMakeLists.txt file. init() basically erases any temp files that are left around from previous runs (like if the user hit ^C before cmake completed) svn path=/trunk/KDE/kdelibs/; revision=572796 --- modules/MacroLogFeature.cmake | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 99c4bb5c..3b92801a 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -1,4 +1,7 @@ -# This file defines two macros: +# This file defines the Feature Logging macros. +# +# MACRO_INIT_LOG_FEATURE() +# Call this to initialize the feature logging facility. # # MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL [REQUIRED [MIN_VERSION [COMMENTS]]]) # Logs the information so that it can be displayed at the end @@ -18,6 +21,7 @@ # Example: # # INCLUDE(MacroLogFeature) +# MACRO_INIT_LOG_FEATURE() # # FIND_PACKAGE(JPEG) # MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org" TRUE "3.2a" "") @@ -60,6 +64,25 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ ENDMACRO(MACRO_LOG_FEATURE) +MACRO(MACRO_INIT_LOG_FEATURE) + + SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) + IF (EXISTS ${_file}) + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + + SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + IF (EXISTS ${_file}) + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + + SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt ) + IF (EXISTS ${_file}) + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + +ENDMACRO(MACRO_INIT_LOG_FEATURE) + MACRO(MACRO_DISPLAY_FEATURE_LOG) SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) -- cgit v1.2.1 From 533e58be3610da2da0d0058bedd8e7a35d6fb042 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 14 Aug 2006 01:02:11 +0000 Subject: fix handling of required features. svn path=/trunk/KDE/kdelibs/; revision=572807 --- modules/MacroLogFeature.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 3b92801a..589a1d1b 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -39,11 +39,11 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ IF (${_var}) SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) ELSE (${_var}) - IF (${_required}) + IF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/MissingRequirements.txt) - ELSE (${_required}) + ELSE (${_required} MATCHES "[Tt][Rr][Uu][Ee]") SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) - ENDIF (${_required}) + ENDIF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") ENDIF (${_var}) IF (NOT EXISTS ${_LOGFILENAME}) -- cgit v1.2.1 From 2832cfe864788335be6b3f16426eae0393ce61be Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 14 Aug 2006 13:24:28 +0000 Subject: Change KDE4_INSTALL_ICONS now it's not necessary to define theme name. this macro installs into good directory, name of theme is defined by prefix: crxx-bla-bla installed into crystalsvg/.../ same as for hicolor/locolor svn path=/trunk/KDE/kdelibs/; revision=572954 The following changes were in SVN, but were removed from git: M pics/crystalsvg/CMakeLists.txt M pics/hicolor/CMakeLists.txt --- modules/KDE4Macros.cmake | 105 +++++++++++++++++++++-------------------------- 1 file changed, 46 insertions(+), 59 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 8d88d613..0db1413a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -12,6 +12,7 @@ # KDE4_ADD_WIDGET_FILES #neundorf@kde.org +#montel@kde.org macro (KDE4_ADD_KCFG_FILES _sources ) IF( ${ARGV1} STREQUAL "GENERATE_MOC" ) @@ -218,7 +219,7 @@ MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NA ENDMACRO (_KDE4_ADD_ICON_INSTALL_RULE) -MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) +MACRO (KDE4_INSTALL_ICONS _defaultpath ) # first the png icons FILE(GLOB _icons *.png) @@ -227,96 +228,82 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath _theme ) STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") - + SET(_theme_GROUP "nogroup") if( ${_type} STREQUAL "cr" ) - if(${_theme} STREQUAL "crystalsvg" ) - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) - #else(${_theme} STREQUAL "crystalsvg" ) - #MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") - endif(${_theme} STREQUAL "crystalsvg" ) + SET(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) if( ${_type} STREQUAL "lo" ) - if(${_theme} STREQUAL "locolor" ) - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) - #else(${_theme} STREQUAL "locolor" ) - # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") - endif(${_theme} STREQUAL "locolor" ) + SET(_theme_GROUP "locolor") endif(${_type} STREQUAL "lo" ) if( ${_type} STREQUAL "hi" ) - if( ${_theme} STREQUAL "hicolor" ) - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) - #else(${_theme} STREQUAL "hicolor" ) - # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") - endif(${_theme} STREQUAL "hicolor" ) + SET(_theme_GROUP "hicolor") endif(${_type} STREQUAL "hi" ) + + if( NOT ${_theme_GROUP} STREQUAL "nogroup") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme_GROUP}/${_size}x${_size} + ${_group} ${_current_ICON} ${_name}) + endif( NOT ${_theme_GROUP} STREQUAL "nogroup") ENDforeach (_current_ICON) # mng icons FILE(GLOB _icons *.mng) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _type "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _type "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\4" _name "${_current_ICON}") + SET(_theme_GROUP "nogroup") if( ${_type} STREQUAL "cr" ) - if( ${_theme} STREQUAL "crystalsvg" ) - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) - #else( ${_theme} STREQUAL "crystalsvg" ) - #MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") - endif( ${_theme} STREQUAL "crystalsvg" ) + SET(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) if( ${_type} STREQUAL "lo" ) - if( ${_theme} STREQUAL "locolor" ) - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) - #else(${_theme} STREQUAL "locolor" ) - # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") - endif(${_theme} STREQUAL "locolor" ) + SET(_theme_GROUP "locolor") endif(${_type} STREQUAL "lo" ) if( ${_type} STREQUAL "hi" ) - if(${_theme} STREQUAL "hicolor" ) - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) - else(${_theme} STREQUAL "hicolor" ) - # MESSAGE(STATUS "icon : ${_current_ICON} is not put into good theme directory ${_theme}") - #endif(${_theme} STREQUAL "hicolor" ) + SET(_theme_GROUP "hicolor") endif(${_type} STREQUAL "hi" ) - + + if( NOT ${_theme_GROUP} STREQUAL "nogroup") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme_GROUP}/${_size}x${_size} + ${_group} ${_current_ICON} ${_name}) + endif( NOT ${_theme_GROUP} STREQUAL "nogroup") + ENDforeach (_current_ICON) # and now the svg icons FILE(GLOB _icons *.svgz) foreach (_current_ICON ${_icons} ) - if( ${_theme} STREQUAL "crystalsvg" ) - STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/crsc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/scalable + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _type "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\3" _name "${_current_ICON}") + SET(_theme_GROUP "nogroup") + + if(${_type} STREQUAL "lo" ) + SET(_theme_GROUP "locolor") + endif(${_type} STREQUAL "lo" ) + + if(${_type} STREQUAL "cr" ) + SET(_theme_GROUP "crystalsvg") + endif(${_type} STREQUAL "cr" ) + + if(${_type} STREQUAL "hi" ) + SET(_theme_GROUP "hicolor") + endif(${_type} STREQUAL "hi" ) + + if( NOT ${_theme_GROUP} STREQUAL "nogroup") + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme_GROUP}/scalable ${_group} ${_current_ICON} ${_name}) - endif( ${_theme} STREQUAL "crystalsvg" ) - if( ${_theme} STREQUAL "hicolor" ) - STRING(REGEX REPLACE "^.*/hisc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/hisc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _name "${_current_ICON}") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme}/scalable - ${_group} ${_current_ICON} ${_name}) - endif( ${_theme} STREQUAL "hicolor" ) + endif( NOT ${_theme_GROUP} STREQUAL "nogroup") + ENDforeach (_current_ICON) ENDMACRO (KDE4_INSTALL_ICONS) -- cgit v1.2.1 From 787e9f69caaecbf91e28578452659f7d4ad15cbd Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 15 Aug 2006 23:52:47 +0000 Subject: remove the init() macro as per Alex's suggestion. Thanks Alex. This does simplify things. svn path=/trunk/KDE/kdelibs/; revision=573396 --- modules/MacroLogFeature.cmake | 42 +++++++++++++++++++----------------------- 1 file changed, 19 insertions(+), 23 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 589a1d1b..434fefb9 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -1,8 +1,5 @@ # This file defines the Feature Logging macros. # -# MACRO_INIT_LOG_FEATURE() -# Call this to initialize the feature logging facility. -# # MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL [REQUIRED [MIN_VERSION [COMMENTS]]]) # Logs the information so that it can be displayed at the end # of the configure run @@ -21,7 +18,6 @@ # Example: # # INCLUDE(MacroLogFeature) -# MACRO_INIT_LOG_FEATURE() # # FIND_PACKAGE(JPEG) # MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org" TRUE "3.2a" "") @@ -29,6 +25,25 @@ # MACRO_DISPLAY_FEATURE_LOG() +IF (NOT _macroLogFeatureAlreadyIncluded) + SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) + IF (EXISTS ${_file}) + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + + SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + IF (EXISTS ${_file}) + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + + SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt ) + IF (EXISTS ${_file}) + FILE(REMOVE ${_file}) + ENDIF (EXISTS ${_file}) + + SET(_macroLogFeatureAlreadyIncluded TRUE) +ENDIF (NOT _macroLogFeatureAlreadyIncluded) + MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _comments) @@ -64,25 +79,6 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ ENDMACRO(MACRO_LOG_FEATURE) -MACRO(MACRO_INIT_LOG_FEATURE) - - SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) - IF (EXISTS ${_file}) - FILE(REMOVE ${_file}) - ENDIF (EXISTS ${_file}) - - SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) - IF (EXISTS ${_file}) - FILE(REMOVE ${_file}) - ENDIF (EXISTS ${_file}) - - SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt ) - IF (EXISTS ${_file}) - FILE(REMOVE ${_file}) - ENDIF (EXISTS ${_file}) - -ENDMACRO(MACRO_INIT_LOG_FEATURE) - MACRO(MACRO_DISPLAY_FEATURE_LOG) SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) -- cgit v1.2.1 From a2e1d1600fd23be9974d4ff99c438aae6d134a2b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 16 Aug 2006 15:02:59 +0000 Subject: Add support for -FPIE I don't know if other compiler supports it. For the moment I just add it for gcc svn path=/trunk/KDE/kdelibs/; revision=573536 --- modules/FindKDE4Internal.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d7e34417..eb0d104e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -239,6 +239,7 @@ get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") +option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") #now try to find some kde stuff @@ -595,6 +596,16 @@ if (CMAKE_COMPILER_IS_GNUCXX) set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES Linux) + + check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) + if(KDE4_ENABLE_FPIE) + if(HAVE_FPIE_SUPPORT) + set (KDE4_CXX_FPIE_FLAGS "-fPIE") + set (KDE4_PIE_LDFLAGS "-pie") + else(HAVE_FPIE_SUPPORT) + MESSAGE(STATUS "Your compiler doesn't support PIE flag") + endif(HAVE_FPIE_SUPPORT) + endif(KDE4_ENABLE_FPIE) # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) -- cgit v1.2.1 From aa3edadeb55b1ea02f59bdf864d88a1f4f3a5801 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 16 Aug 2006 17:05:20 +0000 Subject: fix version extraction regexps. svn path=/trunk/KDE/kdelibs/; revision=573563 --- modules/MacroEnsureVersion.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index 091152d4..ab395819 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -8,11 +8,11 @@ MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) # parse the parts of the version string STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_major_vers "${requested_version}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_patch_vers "${requested_version}") STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") # compute an overall version number which can be compared at once -- cgit v1.2.1 From f434d06411943c882ed1249209c5ab5d3295192e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 17 Aug 2006 06:43:35 +0000 Subject: Add info for KDE4_ENABLE_FPIE svn path=/trunk/KDE/kdelibs/; revision=573764 --- modules/FindKDE4Internal.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index eb0d104e..db3f649f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -93,6 +93,7 @@ # # KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation # KDE4_BUILD_TESTS - enable this to build the testcases +# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature # # It also adds the following macros (from KDE4Macros.cmake) # KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) @@ -239,6 +240,11 @@ get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") + +#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable +#which is something between a shared library and a normal executable. +#Programs compiled with these features appear as ?shared object? with the file command. +#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") #now try to find some kde stuff -- cgit v1.2.1 From 2a14379c30a325a5c40d7133d29e41d852e00122 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 18 Aug 2006 11:57:29 +0000 Subject: Fix indent svn path=/trunk/KDE/kdelibs/; revision=574199 --- modules/KDE4Macros.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0db1413a..69520940 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -539,9 +539,9 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_SRCS}) add_library(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) - else (KDE4_ENABLE_FINAL) - add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ) - endif (KDE4_ENABLE_FINAL) + else (KDE4_ENABLE_FINAL) + add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ) + endif (KDE4_ENABLE_FINAL) if (NOT CMAKE_SKIP_RPATH) -- cgit v1.2.1 From 9f7b06796282c204663c3c1f75ce85057430e34b Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Sun, 20 Aug 2006 13:48:13 +0000 Subject: new macros macro_add_{compile,link}_flags(target "flags ...") svn path=/trunk/KDE/kdelibs/; revision=574886 --- modules/MacroAddCompileFlags.cmake | 13 +++++++++++++ modules/MacroAddLinkFlags.cmake | 13 +++++++++++++ modules/MacroLibrary.cmake | 2 ++ 3 files changed, 28 insertions(+) create mode 100644 modules/MacroAddCompileFlags.cmake create mode 100644 modules/MacroAddLinkFlags.cmake (limited to 'modules') diff --git a/modules/MacroAddCompileFlags.cmake b/modules/MacroAddCompileFlags.cmake new file mode 100644 index 00000000..67c0f29f --- /dev/null +++ b/modules/MacroAddCompileFlags.cmake @@ -0,0 +1,13 @@ +# - MACRO_ADD_COMPILE_FLAGS(<_target> "flags...") + +MACRO (MACRO_ADD_COMPILE_FLAGS _target _flg) + + GET_TARGET_PROPERTY(_flags ${_target} COMPILE_FLAGS) + if (_flags) + set(_flags "${_flags} ${_flg}") + else (_flags) + set(_flags "${_flg}") + endif (_flags) + SET_TARGET_PROPERTIES(${_target} PROPERTIES COMPILE_FLAGS "${_flags}") + +ENDMACRO (MACRO_ADD_COMPILE_FLAGS) diff --git a/modules/MacroAddLinkFlags.cmake b/modules/MacroAddLinkFlags.cmake new file mode 100644 index 00000000..d83fe2d9 --- /dev/null +++ b/modules/MacroAddLinkFlags.cmake @@ -0,0 +1,13 @@ +# - MACRO_ADD_LINK_FLAGS(<_target> "flags...") + +MACRO (MACRO_ADD_LINK_FLAGS _target _flg) + + GET_TARGET_PROPERTY(_flags ${_target} LINK_FLAGS) + if (_flags) + set(_flags "${_flags} ${_flg}") + else (_flags) + set(_flags "${_flg}") + endif (_flags) + SET_TARGET_PROPERTIES(${_target} PROPERTIES LINK_FLAGS "${_flags}") + +ENDMACRO (MACRO_ADD_LINK_FLAGS) diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index c2a3e8d9..d45414a5 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -4,6 +4,8 @@ INCLUDE(MacroOptionalFindPackage) INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) +INCLUDE(MacroAddCompileFlags) +INCLUDE(MacroAddLinkFlags) INCLUDE(MacroEnsureOutOfSourceBuild) INCLUDE(MacroBoolTo01) INCLUDE(MacroPushRequiredVars) -- cgit v1.2.1 From 36dee385e97aa3c561443c1b7494d93d6277fef9 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Sun, 20 Aug 2006 19:06:39 +0000 Subject: add CheckCSourceRuns from cmake cvs - remove after upgrade to cmake 2.5 svn path=/trunk/KDE/kdelibs/; revision=575090 --- modules/CheckCSourceRuns.cmake | 70 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 modules/CheckCSourceRuns.cmake (limited to 'modules') diff --git a/modules/CheckCSourceRuns.cmake b/modules/CheckCSourceRuns.cmake new file mode 100644 index 00000000..b341ffdd --- /dev/null +++ b/modules/CheckCSourceRuns.cmake @@ -0,0 +1,70 @@ +# XXX remove this when we use cmake 2.5 + +# - Check if the source code provided in the SOURCE argument compiles and runs. +# CHECK_C_SOURCE_RUNS(SOURCE VAR) +# - macro which checks if the source code runs +# SOURCE - source code to try to compile +# VAR - variable to store size if the type exists. +# +# The following variables may be set before calling this macro to +# modify the way the check is run: +# +# CMAKE_REQUIRED_FLAGS = string of compile command line flags +# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) +# CMAKE_REQUIRED_INCLUDES = list of include directories +# CMAKE_REQUIRED_LIBRARIES = list of libraries to link + +MACRO(CHECK_C_SOURCE_RUNS SOURCE VAR) + IF("${VAR}" MATCHES "^${VAR}$") + SET(MACRO_CHECK_FUNCTION_DEFINITIONS + "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ELSE(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES) + ENDIF(CMAKE_REQUIRED_LIBRARIES) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_C_SOURCE_COMPILES_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ELSE(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_C_SOURCE_COMPILES_ADD_INCLUDES) + ENDIF(CMAKE_REQUIRED_INCLUDES) + FILE(WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c" + "${SOURCE}\n") + + MESSAGE(STATUS "Performing Test ${VAR}") + TRY_RUN(${VAR} ${VAR}_COMPILED + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c + COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS} + "${CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES}" + "${CHECK_C_SOURCE_COMPILES_ADD_INCLUDES}" + OUTPUT_VARIABLE OUTPUT) + # if it did not compile make the return value fail code of 1 + IF(NOT ${VAR}_COMPILED) + SET(${VAR} 1) + ENDIF(NOT ${VAR}_COMPILED) + # if the return value was 0 then it worked + SET(result_var ${${VAR}}) + IF("${result_var}" EQUAL 0) + SET(${VAR} 1 CACHE INTERNAL "Test ${VAR}") + MESSAGE(STATUS "Performing Test ${VAR} - Success") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log + "Performing C SOURCE FILE Test ${VAR} succeded with the following output:\n" + "${OUTPUT}\n" + "Return value: ${${VAR}}\n" + "Source file was:\n${SOURCE}\n") + ELSE("${result_var}" EQUAL 0) + MESSAGE(STATUS "Performing Test ${VAR} - Failed") + SET(${VAR} "" CACHE INTERNAL "Test ${VAR}") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log + "Performing C SOURCE FILE Test ${VAR} failed with the following output:\n" + "${OUTPUT}\n" + "Return value: ${result_var}\n" + "Source file was:\n${SOURCE}\n") + ENDIF("${result_var}" EQUAL 0) + ENDIF("${VAR}" MATCHES "^${VAR}$") +ENDMACRO(CHECK_C_SOURCE_RUNS) + -- cgit v1.2.1 From aae40ef2a3fecd9debce847e7e050e61dc9fe4ba Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Tue, 22 Aug 2006 10:09:19 +0000 Subject: help debugging build failures svn path=/trunk/KDE/kdelibs/; revision=575854 --- modules/FindQt4.cmake | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d8a553dc..e9174f0a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -986,6 +986,21 @@ IF (QT4_QMAKE_FOUND) SET( QT4_FOUND "NO") SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF( Qt4_FIND_REQUIRED) + IF ( NOT QT_LIBRARY_DIR ) + MESSAGE(STATUS "Qt libraries NOT found!") + ENDIF(NOT QT_LIBRARY_DIR ) + IF ( NOT QT_INCLUDE_DIR ) + MESSAGE(STATUS "Qt includes NOT found!") + ENDIF( NOT QT_INCLUDE_DIR ) + IF ( NOT QT_MOC_EXECUTABLE ) + MESSAGE(STATUS "Qt's moc NOT found!") + ENDIF( NOT QT_MOC_EXECUTABLE ) + IF ( NOT QT_UIC_EXECUTABLE ) + MESSAGE(STATUS "Qt's uic NOT found!") + ENDIF( NOT QT_UIC_EXECUTABLE ) + IF ( NOT QT_RCC_EXECUTABLE ) + MESSAGE(STATUS "Qt's rcc NOT found!") + ENDIF( NOT QT_RCC_EXECUTABLE ) MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") ENDIF( Qt4_FIND_REQUIRED) ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) -- cgit v1.2.1 From 413f40c4d368ab28dfe16c49a9f5c6ebc98f9128 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 30 Aug 2006 14:49:18 +0000 Subject: Used by koffice/kdenetwork svn path=/trunk/KDE/kdelibs/; revision=578909 --- modules/FindQCA2.cmake | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 modules/FindQCA2.cmake (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake new file mode 100644 index 00000000..72de27c5 --- /dev/null +++ b/modules/FindQCA2.cmake @@ -0,0 +1,49 @@ +# - Try to find QCA2 (Qt Cryptography Architecture 2) +# Once done this will define +# +# QCA2_FOUND - system has QCA2 +# QCA2_INCLUDE_DIR - the QCA2 include directory +# QCA2_LIBRARIES - the libraries needed to use QCA2 +# QCA2_DEFINITIONS - Compiler switches required for using QCA2 +# +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls + + +INCLUDE(UsePkgConfig) + +PKGCONFIG(qca _Qca2IncDir _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) + +MESSAGE(STATUS "pkg-config returned ${_Qca2IncDir} for QCA 2 includes") +set(QCA2_DEFINITIONS ${_Qca2Cflags}) + +set(QCA2_INCLUDE_DIR ${_Qca2IncDir}) + +#FIND_PATH(QCA2_INCLUDE_DIR QtCrypto +# PATHS +# ${_Qca2IncDir} +#) + +MESSAGE(STATUS "QCA2_INCLUDE_DIR has value ${QCA2_INCLUDE_DIR}" ) + +FIND_LIBRARY(QCA2_LIBRARIES NAMES qca + PATHS + ${_Qca2LinkDir} + NO_DEFAULT_PATH +) + +if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) + set(QCA2_FOUND TRUE) +endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) + +if (QCA2_FOUND) + if (NOT QCA2_FIND_QUIETLY) + message(STATUS "Found QCA2: ${QCA2_LIBRARIES}") + endif (NOT QCA2_FIND_QUIETLY) +else (QCA2_FOUND) + if (QCA2_FIND_REQUIRED) + message(SEND_ERROR "Could NOT find QCA2") + endif (QCA2_FIND_REQUIRED) +endif (QCA2_FOUND) + +MARK_AS_ADVANCED(QCA2_INCLUDE_DIR QCA2_LIBRARIES) -- cgit v1.2.1 From 1a50337ff5115bcb5e60b4b91c75a0e6a9a339b7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 30 Aug 2006 17:46:01 +0000 Subject: -add a FindPNG.cmake which bails out with FATAL_ERROR if png was not found and which also searches in /usr/local/include/libpng/ (for OpenBSD) -check that PNG was actually found (both can be removed once we required cmake 2.4.4 ... so maybe next year) Alex svn path=/trunk/KDE/kdelibs/; revision=578973 --- modules/FindPNG.cmake | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 modules/FindPNG.cmake (limited to 'modules') diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake new file mode 100644 index 00000000..797dd025 --- /dev/null +++ b/modules/FindPNG.cmake @@ -0,0 +1,58 @@ +# - Find the native PNG includes and library +# + +# This module defines +# PNG_INCLUDE_DIR, where to find png.h, etc. +# PNG_LIBRARIES, the libraries to link against to use PNG. +# PNG_DEFINITIONS - You should ADD_DEFINITONS(${PNG_DEFINITIONS}) before compiling code that includes png library files. +# PNG_FOUND, If false, do not try to use PNG. +# also defined, but not for general use are +# PNG_LIBRARY, where to find the PNG library. +# None of the above will be defined unles zlib can be found. +# PNG depends on Zlib +INCLUDE(FindZLIB) + +SET(PNG_FOUND "NO") + +IF(ZLIB_FOUND) + FIND_PATH(PNG_PNG_INCLUDE_DIR png.h + /usr/local/include + /usr/include + /usr/local/include/libpng # OpenBSD + ) + + SET(PNG_NAMES ${PNG_NAMES} png libpng) + FIND_LIBRARY(PNG_LIBRARY + NAMES ${PNG_NAMES} + PATHS /usr/lib /usr/local/lib + ) + + IF (PNG_LIBRARY AND PNG_PNG_INCLUDE_DIR) + # png.h includes zlib.h. Sigh. + SET(PNG_INCLUDE_DIR ${PNG_PNG_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} ) + SET(PNG_LIBRARIES ${PNG_LIBRARY} ${ZLIB_LIBRARY}) + SET(PNG_FOUND "YES") + + IF (CYGWIN) + IF(BUILD_SHARED_LIBS) + # No need to define PNG_USE_DLL here, because it's default for Cygwin. + ELSE(BUILD_SHARED_LIBS) + SET (PNG_DEFINITIONS -DPNG_STATIC) + ENDIF(BUILD_SHARED_LIBS) + ENDIF (CYGWIN) + + ENDIF (PNG_LIBRARY AND PNG_PNG_INCLUDE_DIR) + +ENDIF(ZLIB_FOUND) + +IF (PNG_FOUND) + IF (NOT PNG_FIND_QUIETLY) + MESSAGE(STATUS "Found PNG: ${PNG_LIBRARY}") + ENDIF (NOT PNG_FIND_QUIETLY) +ELSE (PNG_FOUND) + IF (PNG_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find PNG library") + ENDIF (PNG_FIND_REQUIRED) +ENDIF (PNG_FOUND) + +MARK_AS_ADVANCED(PNG_PNG_INCLUDE_DIR PNG_LIBRARY ) -- cgit v1.2.1 From 0223cab8f3dc6bf14b46759e7dd975699f4327e6 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 30 Aug 2006 20:35:57 +0000 Subject: Add new macro KDE4_SYNDICATION_LIBS KDE4_KLDAP_LIBS svn path=/trunk/KDE/kdelibs/; revision=579020 --- modules/FindKdepimLibs.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 9e18eb46..15209d93 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -13,3 +13,5 @@ set(KDE4_KABC_LIBS kabc) set(KDE4_KCAL_LIBS kcal) set(KDE4_KTNEF_LIBS ktnef) set(KDE4_KRESOURCES_LIBS kresources) +set(KDE4_SYNDICATION_LIBS syndication) +set(KDE4_KLDAP_LIBS kldap) -- cgit v1.2.1 From d0d457efcad707b38a7c7a36aec5114be3c21dc8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 30 Aug 2006 21:30:53 +0000 Subject: -add BSD copyright notice Should we add a copyright notice like this in every cmake module ? Or is there a way to have the same shorter ? Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=579041 --- modules/FindKDE4Internal.cmake | 64 +++++++++++++++++++++++++++++++++++++++--- 1 file changed, 60 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index db3f649f..e794a25f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -168,17 +168,73 @@ # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally + +################################################################################ +# +# Copyright (c) 2006, Alexander Neundorf +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +################################################################################ + + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + INCLUDE (MacroEnsureVersion) cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) -set(QT_MIN_VERSION "4.2.0") +set(QT_MIN_VERSION "4.1.3") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -if (NOT QT_DBUSXML2CPP_EXECUTABLE) - message(FATAL_ERROR "Qt4 dbusxml2cpp was not found. Make sure it has been built and installed by Qt") -endif (NOT QT_DBUSXML2CPP_EXECUTABLE) +#if (NOT QT_DBUSXML2CPP_EXECUTABLE) +# message(FATAL_ERROR "Qt4 dbusxml2cpp was not found. Make sure it has been built and installed by Qt") +#endif (NOT QT_DBUSXML2CPP_EXECUTABLE) # Perl is required for building KDE software, -- cgit v1.2.1 From 5563fe247d3f1f9a5a3ec571bcd94198f8e15f68 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 30 Aug 2006 21:33:21 +0000 Subject: oops, remove these lines... Alex svn path=/trunk/KDE/kdelibs/; revision=579042 --- modules/FindKDE4Internal.cmake | 23 ----------------------- 1 file changed, 23 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e794a25f..e8d325d0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -201,29 +201,6 @@ ################################################################################ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - INCLUDE (MacroEnsureVersion) cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) -- cgit v1.2.1 From a850906cc278c5a24fc8eb2546343db504da1239 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 30 Aug 2006 21:37:35 +0000 Subject: -revert unwanted changed... Alex svn path=/trunk/KDE/kdelibs/; revision=579044 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e8d325d0..a5b184bc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -205,13 +205,13 @@ INCLUDE (MacroEnsureVersion) cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) -set(QT_MIN_VERSION "4.1.3") +set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -#if (NOT QT_DBUSXML2CPP_EXECUTABLE) -# message(FATAL_ERROR "Qt4 dbusxml2cpp was not found. Make sure it has been built and installed by Qt") -#endif (NOT QT_DBUSXML2CPP_EXECUTABLE) +if (NOT QT_DBUSXML2CPP_EXECUTABLE) + message(FATAL_ERROR "Qt4 dbusxml2cpp was not found. Make sure it has been built and installed by Qt") +endif (NOT QT_DBUSXML2CPP_EXECUTABLE) # Perl is required for building KDE software, -- cgit v1.2.1 From c99365da4c6c17188fb498ee80aec60de17611c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 3 Sep 2006 09:25:24 +0000 Subject: search only in the case when GNUWIN32_DIR is not set svn path=/trunk/KDE/kdelibs/; revision=580319 --- modules/FindGNUWIN32.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index f618b074..58578a0f 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -1,6 +1,8 @@ if (WIN32) -file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) +if(NOT GNUWIN32_DIR) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) +endif(NOT GNUWIN32_DIR) find_file(GNUWIN32_DIR gnuwin32 win32libs PATHS ${_progFiles} -- cgit v1.2.1 From 00bc6a32671d3c67a569270a5b4c277a9cce6f60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 3 Sep 2006 09:27:07 +0000 Subject: also work with spaces in %PROGRAMFILES% (US default: c:\Program Files) svn path=/trunk/KDE/kdelibs/; revision=580321 --- modules/FindGNUWIN32.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 58578a0f..c5128dd5 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -1,11 +1,12 @@ if (WIN32) if(NOT GNUWIN32_DIR) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) endif(NOT GNUWIN32_DIR) -find_file(GNUWIN32_DIR gnuwin32 win32libs PATHS - ${_progFiles} +find_file(GNUWIN32_DIR gnuwin32 win32libs + PATHS + "${_progFiles}" "C:/" "D:/" "E:/" "F:/" "G:/" ) -- cgit v1.2.1 From 39512cce47a7db826139e69d4c68c946e8c2a41a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 3 Sep 2006 11:09:05 +0000 Subject: change search order: 1. command line option GNUWIN32_DIR 2. GNUWIN32_DIR enviroment variable 3. default programm install folder svn path=/trunk/KDE/kdelibs/; revision=580362 --- modules/FindGNUWIN32.cmake | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index c5128dd5..7f810481 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -1,15 +1,21 @@ if (WIN32) +# check if GNUWIN32_DIR is already set +# (e.g. by command line argument or the calling script) if(NOT GNUWIN32_DIR) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + # check for enviroment variable + file(TO_CMAKE_PATH "$ENV{GNUWIN32_DIR}" GNUWIN32_DIR) + if(NOT GNUWIN32_DIR) + # search in the default program install folder + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + find_file(GNUWIN32_DIR gnuwin32 win32libs + PATHS + "${_progFiles}" + "C:/" + ) + endif(NOT GNUWIN32_DIR) endif(NOT GNUWIN32_DIR) -find_file(GNUWIN32_DIR gnuwin32 win32libs - PATHS - "${_progFiles}" - "C:/" "D:/" "E:/" "F:/" "G:/" -) - if (GNUWIN32_DIR) set(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) set(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) -- cgit v1.2.1 From 593c57effe31b717c7545d24ca007a7f1fff6e15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 3 Sep 2006 11:14:59 +0000 Subject: don't break old behavior svn path=/trunk/KDE/kdelibs/; revision=580364 --- modules/FindGNUWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 7f810481..3260a3af 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -11,7 +11,7 @@ if(NOT GNUWIN32_DIR) find_file(GNUWIN32_DIR gnuwin32 win32libs PATHS "${_progFiles}" - "C:/" + "C:/" "D:/" "E:/" "F:/" "G:/" ) endif(NOT GNUWIN32_DIR) endif(NOT GNUWIN32_DIR) -- cgit v1.2.1 From 910e0113a6d2558baa5a9818dda6068ad13d2fdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sun, 3 Sep 2006 12:10:38 +0000 Subject: fix for mingw svn path=/trunk/KDE/kdelibs/; revision=580388 --- modules/FindGNUWIN32.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 3260a3af..4a2c6adc 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -8,11 +8,12 @@ if(NOT GNUWIN32_DIR) if(NOT GNUWIN32_DIR) # search in the default program install folder file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - find_file(GNUWIN32_DIR gnuwin32 win32libs + find_file(GNUWIN32_DIR_tmp gnuwin32 win32libs PATHS "${_progFiles}" "C:/" "D:/" "E:/" "F:/" "G:/" ) + set(GNUWIN32_DIR ${GNUWIN32_DIR_tmp}) endif(NOT GNUWIN32_DIR) endif(NOT GNUWIN32_DIR) -- cgit v1.2.1 From 1bdb8235e318ff7522f8c79beedd2e8359c4367e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 4 Sep 2006 21:32:35 +0000 Subject: Remove the FORCE keyword from the various install directories, which we added in Trysil. By now it should be correct in everybodies cache, and without the FORCE it can now even be edited again. Let me know if suddenly some things aren't installed correctly anymore for you. Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=580957 --- modules/FindKDE4Internal.cmake | 68 ++++++++++++++++++++++-------------------- 1 file changed, 35 insertions(+), 33 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a5b184bc..99a829b5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -224,40 +224,44 @@ include (CheckCXXCompilerFlag) #add some KDE specific stuff -set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) - set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/" FORCE) - set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries" FORCE) -# -## the following are directories where stuff will be installed to - set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) - set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) - set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})" FORCE) - set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib/kde4/libexec)" FORCE) - set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)" FORCE) - set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix" FORCE) - set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir" FORCE) - set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data" FORCE) - set(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" CACHE PATH "The HTML install dir for documentation" FORCE) - set(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" CACHE PATH "The icon install dir (default prefix/share/icons/)" FORCE) - set(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" CACHE PATH "The install dir for kconfig files" FORCE) - set(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" CACHE PATH "The install dir for translations" FORCE) - set(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" CACHE PATH "The install dir for the mimetype desktop files" FORCE) - set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" CACHE PATH "The install dir for service (desktop, protocol, ...) files" FORCE) - set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" CACHE PATH "The install dir for servicestypes desktop files" FORCE) - set(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" CACHE PATH "The install dir for sound files" FORCE) - set(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" CACHE PATH "The install dir for templates (Create new file...)" FORCE) - set(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" CACHE PATH "The install dir for wallpapers" FORCE) - set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir" FORCE) + + +# the following are directories where stuff will be installed to + set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) + set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/") + set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries") + + set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The install dir for executables (default prefix/bin)") + set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The install dir for system executables (default prefix/sbin)") + set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})") + + set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib/kde4/libexec)") + set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") + + set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix") + set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir") + set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data") + set(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" CACHE PATH "The HTML install dir for documentation") + set(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" CACHE PATH "The icon install dir (default prefix/share/icons/)") + set(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" CACHE PATH "The install dir for kconfig files") + set(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" CACHE PATH "The install dir for translations") + set(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" CACHE PATH "The install dir for the mimetype desktop files") + set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" CACHE PATH "The install dir for service (desktop, protocol, ...) files") + set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" CACHE PATH "The install dir for servicestypes desktop files") + set(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" CACHE PATH "The install dir for sound files") + set(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" CACHE PATH "The install dir for templates (Create new file...)") + set(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" CACHE PATH "The install dir for wallpapers") + set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir") # this one shouldn't be used anymore - set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" CACHE PATH "Is this still used ?" FORCE) - set(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" CACHE PATH "The install dir for autostart files" FORCE) + set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" CACHE PATH "Is this still used ?") + set(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" CACHE PATH "The install dir for autostart files") - set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir" FORCE) - set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory" FORCE) + set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir") + set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory") - set(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" CACHE PATH "The kde sysconfig install dir (default /etc)" FORCE) - set(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" CACHE PATH "The kde man install dir (default prefix/man/)" FORCE) - set(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" CACHE PATH "The kde info install dir (default prefix/info)" FORCE) + set(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" CACHE PATH "The kde sysconfig install dir (default /etc)") + set(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" CACHE PATH "The kde man install dir (default prefix/man/)") + set(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" CACHE PATH "The kde info install dir (default prefix/info)") # set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") # set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") # @@ -670,8 +674,6 @@ if (CMAKE_COMPILER_IS_GNUCXX) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - message(STATUS "have_visibility: ${__KDE_HAVE_GCC_VISIBILITY} version>=4.1: ${GCC_IS_NEWER_THAN_4_1} bad alloctor: ${_GCC_COMPILED_WITH_BAD_ALLOCATOR}") - endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") -- cgit v1.2.1 From 23455a0ebf1a944a4b00bde65074fea3d3c04e82 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 4 Sep 2006 21:40:24 +0000 Subject: Add a short version of the BSD copyright notice. Is it ok that way ? I just reference licenses/BSD without further explanation where to find the licenses/ subdirectory. This is legal stuff, so I could need some good advice from somebody who knows this better than me. The BSD license in kdelibs/licenses/BSD also doesn't contain the no-endorsement clause: # The name of the author may not be used to endorse or promote products # derived from this software without specific prior written permission. Is there a special reason why it doesn't ? If I would like to have this clause too, do I need to add another license file to licenses/ or should I simply put it in the same directory as the cmake scripts ? Then one could simply state: # This code is available under the BSD license, see the accompanying cmake-script-licensing. So, what's the correct and best way to deal with this ? Alex CCMAIL: kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=580959 --- modules/FindLibXml2.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 29682e07..037ab383 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -5,6 +5,9 @@ # LIBXML2_INCLUDE_DIR - the LibXml2 include directory # LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 +# +# Copyright (c) 2006, Alexander Neundorf +# This code is available under the BSD license, see licenses/BSD for details. if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) -- cgit v1.2.1 From c0a3ba2c489d35e1034d7302ae1d701868ae8b4f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 7 Sep 2006 21:18:05 +0000 Subject: -add an extra file with the BSD license for the cmake script files Alex svn path=/trunk/KDE/kdelibs/; revision=581898 --- modules/COPYING-CMAKE-SCRIPTS | 22 ++++++++++++++++++++++ modules/FindKDE4Internal.cmake | 33 ++++----------------------------- 2 files changed, 26 insertions(+), 29 deletions(-) create mode 100644 modules/COPYING-CMAKE-SCRIPTS (limited to 'modules') diff --git a/modules/COPYING-CMAKE-SCRIPTS b/modules/COPYING-CMAKE-SCRIPTS new file mode 100644 index 00000000..7d13b6df --- /dev/null +++ b/modules/COPYING-CMAKE-SCRIPTS @@ -0,0 +1,22 @@ +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 99a829b5..47fca38e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -167,38 +167,13 @@ # # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally - - -################################################################################ -# -# Copyright (c) 2006, Alexander Neundorf -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: # -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * The name of the author may not be used to endorse or promote products -# derived from this software without specific prior written permission. # -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. +# Copyright (c) 2006, Alexander Neundorf +# Copyright (c) 2006, Laurent Montel, # -################################################################################ +# Redistribution and use is allowed following the conditions of the BSD license, +# for details see the accompanying COYPING-CMAKE-SCRIPTS file. INCLUDE (MacroEnsureVersion) -- cgit v1.2.1 From 9f6923c764a00075f893f59220e84750fab3397f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 7 Sep 2006 21:22:22 +0000 Subject: make the statement a bit short so it fits on one line Alex svn path=/trunk/KDE/kdelibs/; revision=581900 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 47fca38e..0aad9668 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -172,7 +172,7 @@ # Copyright (c) 2006, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # -# Redistribution and use is allowed following the conditions of the BSD license, +# Redistribution and use is allowed according to the terms of the BSD license, # for details see the accompanying COYPING-CMAKE-SCRIPTS file. -- cgit v1.2.1 From 31e8973bf5fd29643d1485691c662116e03b737d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 7 Sep 2006 21:49:30 +0000 Subject: fix typo and remove "above", since there is no copyright notice above. Alex svn path=/trunk/KDE/kdelibs/; revision=581906 --- modules/COPYING-CMAKE-SCRIPTS | 4 ++-- modules/FindKDE4Internal.cmake | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/COPYING-CMAKE-SCRIPTS b/modules/COPYING-CMAKE-SCRIPTS index 7d13b6df..4b417765 100644 --- a/modules/COPYING-CMAKE-SCRIPTS +++ b/modules/COPYING-CMAKE-SCRIPTS @@ -2,9 +2,9 @@ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright +1. Redistributions of source code must retain the copyright notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright +2. Redistributions in binary form must reproduce the copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0aad9668..cc0d9368 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -172,8 +172,8 @@ # Copyright (c) 2006, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # -# Redistribution and use is allowed according to the terms of the BSD license, -# for details see the accompanying COYPING-CMAKE-SCRIPTS file. +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. INCLUDE (MacroEnsureVersion) -- cgit v1.2.1 From c778596920e0d5357f216c885e35b4f97d371a23 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 9 Sep 2006 10:18:35 +0000 Subject: added copyright notice everywhere. Now they all are BSD-licensed, as copyright holder I inserted everywhere the one who added it to svn (or Kitware if it is an enhanced copy from taken cmake) Some developers committed quite often but were not the ones who added the file, if you feel you have also copyright on the file add your name in the specific file. Copyright holders: CCMAIL: montel@kde.org CCMAIL: toscano.pino@tiscali.it CCMAIL: adymo@kdevelop.org CCMAIL: ranger@befunk.com CCMAIL: zack@kde.org CCMAIL: caslav.ilic@gmx.net CCMAIL: syntheticpp@yahoo.com CCMAIL: js@iidea.pl CCMAIL: michael.larouche@kdemail.net CCMAIL: ossi@kde.org CCMAIL: faure@kde.org Committers, but no files added so that they are not listed as copyright holders: CCMAIL: ch.ehrlicher@gmx.de CCMAIL: winter@kde.org CCMAIL: ralf.habacker@freenet.de CCMAIL: moura@kdewebdev.org CCMAIL: kde-buildsystem@kde.org Alex svn path=/trunk/KDE/kdelibs/; revision=582410 --- modules/CheckCSourceRuns.cmake | 4 ++++ modules/CheckCXXCompilerFlag.cmake | 5 +++++ modules/CheckPointerMember.cmake | 6 ++++++ modules/CheckPrototypeExists.cmake | 6 ++++++ modules/CheckStructMember.cmake | 6 ++++++ modules/CheckTypeSize.cmake | 4 ++++ modules/FindACL.cmake | 5 +++++ modules/FindAGG.cmake | 4 ++++ modules/FindASPELL.cmake | 5 +++++ modules/FindAkode.cmake | 6 ++++++ modules/FindBZip2.cmake | 6 ++++++ modules/FindBerkeleyDB.cmake | 5 ++++- modules/FindCarbon.cmake | 5 +++++ modules/FindCups.cmake | 5 +++++ modules/FindDNSSD.cmake | 5 +++++ modules/FindENCHANT.cmake | 5 +++++ modules/FindFAM.cmake | 6 ++++++ modules/FindFontconfig.cmake | 5 +++++ modules/FindFreetype.cmake | 5 +++++ modules/FindGIF.cmake | 2 ++ modules/FindGNUWIN32.cmake | 7 +++++++ modules/FindGSSAPI.cmake | 6 ++++++ modules/FindGettext.cmake | 6 ++++++ modules/FindHSPELL.cmake | 5 +++++ modules/FindJasper.cmake | 6 ++++++ modules/FindKDEWIN32.cmake | 6 ++++++ modules/FindKdepimLibs.cmake | 8 +++++++- modules/FindLibArt.cmake | 6 ++++++ modules/FindLibXml2.cmake | 6 ++++++ modules/FindLibXslt.cmake | 5 +++++ modules/FindMusicBrainz.cmake | 7 ++++++- modules/FindMySQL.cmake | 6 ++++++ modules/FindOpenEXR.cmake | 5 +++++ modules/FindOpenSSL.cmake | 7 +++++++ modules/FindPCRE.cmake | 6 ++++++ modules/FindPNG.cmake | 5 +++++ modules/FindPostgreSQL.cmake | 6 ++++++ modules/FindQCA2.cmake | 6 ++++++ modules/FindQt4.cmake | 4 ++++ modules/FindRUBY.cmake | 9 +++++++-- modules/FindSasl2.cmake | 6 ++++++ modules/FindTIFF.cmake | 3 +++ modules/FindTaglib.cmake | 8 +++++++- modules/FindUSB.cmake | 6 ++++++ modules/FindX11.cmake | 3 +++ modules/FindXmms.cmake | 7 ++++++- modules/FindZLIB.cmake | 3 +++ modules/KDE4Macros.cmake | 7 +++++-- modules/MacroAddCompileFlags.cmake | 6 ++++++ modules/MacroAddFileDependencies.cmake | 6 ++++++ modules/MacroAddLinkFlags.cmake | 5 +++++ modules/MacroAdditionalCleanFiles.cmake | 6 ++++++ modules/MacroBoolTo01.cmake | 6 ++++++ modules/MacroEnsureOutOfSourceBuild.cmake | 5 +++++ modules/MacroEnsureVersion.cmake | 7 +++++-- modules/MacroLibrary.cmake | 5 +++++ modules/MacroLogFeature.cmake | 4 ++++ modules/MacroOptionalFindPackage.cmake | 6 ++++++ modules/MacroPushRequiredVars.cmake | 4 ++++ modules/kde4_exec_via_sh.cmake | 6 ++++++ modules/kde4uic.cmake | 4 ++++ 61 files changed, 324 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/CheckCSourceRuns.cmake b/modules/CheckCSourceRuns.cmake index b341ffdd..ce47de9f 100644 --- a/modules/CheckCSourceRuns.cmake +++ b/modules/CheckCSourceRuns.cmake @@ -14,6 +14,10 @@ # CMAKE_REQUIRED_INCLUDES = list of include directories # CMAKE_REQUIRED_LIBRARIES = list of libraries to link +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + MACRO(CHECK_C_SOURCE_RUNS SOURCE VAR) IF("${VAR}" MATCHES "^${VAR}$") SET(MACRO_CHECK_FUNCTION_DEFINITIONS diff --git a/modules/CheckCXXCompilerFlag.cmake b/modules/CheckCXXCompilerFlag.cmake index 74af207b..686533de 100644 --- a/modules/CheckCXXCompilerFlag.cmake +++ b/modules/CheckCXXCompilerFlag.cmake @@ -4,6 +4,11 @@ # FLAG - the compiler flag # VARIABLE - variable to store the result # +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + INCLUDE(CheckCXXSourceCompiles) diff --git a/modules/CheckPointerMember.cmake b/modules/CheckPointerMember.cmake index fc6b231d..f34bfc91 100644 --- a/modules/CheckPointerMember.cmake +++ b/modules/CheckPointerMember.cmake @@ -12,6 +12,12 @@ # CMAKE_REQUIRED_FLAGS = string of compile command line flags # CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) # CMAKE_REQUIRED_INCLUDES = list of include directories +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + INCLUDE(CheckCXXSourceCompiles) diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index da319f13..8afc6f74 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -11,6 +11,12 @@ # CMAKE_REQUIRED_FLAGS = string of compile command line flags # CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) # CMAKE_REQUIRED_INCLUDES = list of include directories +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + INCLUDE(CheckCXXSourceCompiles) diff --git a/modules/CheckStructMember.cmake b/modules/CheckStructMember.cmake index fd5d3461..739e8cee 100644 --- a/modules/CheckStructMember.cmake +++ b/modules/CheckStructMember.cmake @@ -12,6 +12,12 @@ # CMAKE_REQUIRED_FLAGS = string of compile command line flags # CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) # CMAKE_REQUIRED_INCLUDES = list of include directories +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + INCLUDE(CheckCXXSourceCompiles) diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake index 46288031..b666f847 100644 --- a/modules/CheckTypeSize.cmake +++ b/modules/CheckTypeSize.cmake @@ -7,6 +7,10 @@ # # remove once we require cmake 2.4.1 +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + MACRO (CHECK_TYPE_SIZE TYPE VARIABLE) SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) IF ("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") diff --git a/modules/FindACL.cmake b/modules/FindACL.cmake index ada94c32..9fb06782 100644 --- a/modules/FindACL.cmake +++ b/modules/FindACL.cmake @@ -3,6 +3,11 @@ # # ACL_FOUND - system has the ACL library # ACL_LIBS - The libraries needed to use ACL +# +# Copyright (c) 2006, Pino Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. INCLUDE(CheckIncludeFiles) diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 6bd92578..d4b6df27 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -6,6 +6,10 @@ # AGG_LIBRARIES - Link these to use AGG # AGG_DEFINITIONS - Compiler switches required for using AGG # +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index 0333de0c..67ca19a3 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -6,6 +6,11 @@ # ASPELL_LIBRARIES - The libraries needed to use ASPELL # ASPELL_DEFINITIONS - Compiler switches required for using ASPELL # +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) # Already in cache, be silent diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index 5c1bab29..64511f3f 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -4,6 +4,12 @@ # AKODE_FOUND - system has the aKode library # AKODE_INCLUDE_DIR - the aKode include directory # AKODE_LIBRARIES - The libraries needed to use aKode +# +# Copyright (c) 2006, Pino Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + IF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 9976c282..492c3054 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -6,6 +6,12 @@ # BZIP2_LIBRARIES - Link these to use BZip2 # BZIP2_DEFINITIONS - Compiler switches required for using BZip2 # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake index 640e6cf3..2a8ba293 100644 --- a/modules/FindBerkeleyDB.cmake +++ b/modules/FindBerkeleyDB.cmake @@ -6,7 +6,10 @@ # BERKELEY_DB_LIBRARIES - Link these to use Berkeley DB # BERKELEY_DB_DEFINITIONS - Compiler switches required for using Berkeley DB # - +# Copyright (c) 2006, Alexander Dymo, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. FIND_PATH(BERKELEY_DB_INCLUDE_DIR db.h /usr/include/ diff --git a/modules/FindCarbon.cmake b/modules/FindCarbon.cmake index 94e81509..38a1aa72 100644 --- a/modules/FindCarbon.cmake +++ b/modules/FindCarbon.cmake @@ -1,3 +1,8 @@ +# Copyright (c) 2006, Benjamin Reed, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + INCLUDE(CMakeFindFrameworks) CMAKE_FIND_FRAMEWORKS(Carbon) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 5f63870a..a6bb9202 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -6,6 +6,11 @@ # CUPS_LIBRARIES - Libraries needed to use Cups # CUPS_DEFINITIONS - Compiler switches required for using Cups # +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index ba7f1f57..fca7f33e 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -7,6 +7,11 @@ # DNSSD_DEFINITIONS - Compiler switches required for using DNSSD # # need more test: look at into dnssd/configure.in.in +# +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. FIND_PATH(DNSSD_INCLUDE_DIR dns_sd.h /usr/include diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index abda9dde..04ddb0fe 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -6,6 +6,11 @@ # ENCHANT_LIBRARIES - Link these to use ENCHANT # ENCHANT_DEFINITIONS - Compiler switches required for using ENCHANT # +# Copyright (c) 2006, Zack Rusin, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index e0a92b72..bdfa0e03 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -4,6 +4,12 @@ # FAM_FOUND - system has FAM # FAM_INCLUDE_DIR - the FAM include directory # FAM_LIBRARIES - The libraries needed to use FAM +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (FAM_INCLUDE_DIR) # Already in cache, be silent diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 541b20d8..3f588479 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -5,6 +5,11 @@ # FONTCONFIG_LIBRARIES - Link these to use FONTCONFIG # FONTCONFIG_DEFINITIONS - Compiler switches required for using FONTCONFIG # +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 8a11dc40..8fdb1692 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -5,6 +5,11 @@ # FREETYPE_INCLUDE_DIR - the FONTCONFIG include directory # FREETYPE_LIBRARIES - Link these to use FREETYPE # +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index cf2324c0..14efd818 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -6,6 +6,8 @@ # GIF_LIBRARIES - Libraries needed to use GIF # GIF_DEFINITIONS - Compiler switches required for using GIF # +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) # Already in cache, be silent diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 4a2c6adc..f9f0d4d6 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -1,3 +1,10 @@ + +# Copyright (c) 2006, Peter Kuemmel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if (WIN32) # check if GNUWIN32_DIR is already set diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 8fd65a18..daf16113 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -5,6 +5,12 @@ # GSSAPI_INCS - the GSSAPI include directory # GSSAPI_LIBS - the libraries needed to use GSSAPI # GSSAPI_FLAVOR - the type of API - MIT or HEIMDAL +# +# Copyright (c) 2006, Pino Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + IF(GSSAPI_LIBS AND GSSAPI_FLAVOR) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index e4dda701..c6b096c8 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -9,6 +9,12 @@ # present in libc. Must have more robust system for release, where Gettext # functionality can also reside in standalone Gettext library, or the one # embedded within kdelibs (cf. gettext.m4 from Gettext source). +# +# Copyright (c) 2006, Chusslove Illich, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake index 0a029fb8..08a5792c 100644 --- a/modules/FindHSPELL.cmake +++ b/modules/FindHSPELL.cmake @@ -6,6 +6,11 @@ # HSPELL_LIBRARIES - The libraries needed to use HSPELL # HSPELL_DEFINITIONS - Compiler switches required for using HSPELL # +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) # Already in cache, be silent diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 23867f34..99b52a77 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -4,6 +4,12 @@ # JASPER_FOUND - system has Jasper # JASPER_INCLUDE_DIR - the Jasper include directory # JASPER_LIBRARIES - The libraries needed to use Jasper +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + FIND_PACKAGE(JPEG) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index cf3a7b11..385a34f4 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -4,6 +4,12 @@ # KDEWIN32_FOUND - system has KDEWIN32 # KDEWIN32_INCLUDES - the KDEWIN32 include directories # KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (WIN32) diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 15209d93..7a382586 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -1,6 +1,12 @@ # Find if we installed kdepimlibs before to compile it +# +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. -FIND_PATH( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h + +find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h ${KDE4_INCLUDE_DIR} ) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 38f43e5d..dacd4b2f 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -4,6 +4,12 @@ # LIBART_FOUND - system has the LibArt # LIBART_INCLUDE_DIR - the LibArt include directory # LIBART_LIBRARIES - The libraries needed to use LibArt +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 037ab383..a1fb8b42 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -8,6 +8,12 @@ # # Copyright (c) 2006, Alexander Neundorf # This code is available under the BSD license, see licenses/BSD for details. +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index d71cca22..6f116f5d 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -6,6 +6,11 @@ # LIBXSLT_LIBRARIES - Link these to LibXslt # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake index 0ec56ffc..c4ccef80 100644 --- a/modules/FindMusicBrainz.cmake +++ b/modules/FindMusicBrainz.cmake @@ -1,5 +1,10 @@ # Option for build or not MusicBrainz -# Laurent Montel 2006 +# +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + FIND_PATH(MUSICBRAINZ_INCLUDE_DIR musicbrainz/musicbrainz.h /usr/include diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index 151251be..426f11ed 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -4,6 +4,12 @@ # MYSQL_INCLUDE_DIR, where to find mysql.h # MYSQL_LIBRARIES, the libraries needed to use MySQL. # MYSQL_FOUND, If false, do not try to use MySQL. +# +# Copyright (c) 2006, Jaroslaw Staniek, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + find_path(MYSQL_INCLUDE_DIR mysql.h /usr/include/mysql diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 34620674..81627b7e 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -4,6 +4,11 @@ # OPENEXR_FOUND - system has OpenEXR # OPENEXR_INCLUDE_DIR - OpenEXR include directory # OPENEXR_LIBRARIES - Libraries needed to use OpenEXR +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. if (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 5188c6f3..f4bd85bd 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -4,6 +4,13 @@ # OPENSSL_FOUND - system has the OpenSSL library # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if(OPENSSL_LIBRARIES) SET(LIB_FOUND 1) endif(OPENSSL_LIBRARIES) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 16116867..27ea971d 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -4,6 +4,12 @@ # PCRE_FOUND - system has the PCRE library # PCRE_INCLUDE_DIR - the PCRE include directory # PCRE_LIBRARIES - The libraries needed to use PCRE +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) # Already in cache, be silent diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake index 797dd025..c0c18d8e 100644 --- a/modules/FindPNG.cmake +++ b/modules/FindPNG.cmake @@ -10,6 +10,11 @@ # PNG_LIBRARY, where to find the PNG library. # None of the above will be defined unles zlib can be found. # PNG depends on Zlib +# +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + INCLUDE(FindZLIB) SET(PNG_FOUND "NO") diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake index b5de3a4b..db657240 100644 --- a/modules/FindPostgreSQL.cmake +++ b/modules/FindPostgreSQL.cmake @@ -4,6 +4,12 @@ # POSTGRESQL_INCLUDE_DIR, where to find POSTGRESQL.h # POSTGRESQL_LIBRARIES, the libraries needed to use POSTGRESQL. # POSTGRESQL_FOUND, If false, do not try to use PostgreSQL. +# +# Copyright (c) 2006, Jaroslaw Staniek, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h /usr/include/pgsql diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 72de27c5..c9ba1bf7 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -8,6 +8,12 @@ # # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls +# +# Copyright (c) 2006, Michael Larouche, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + INCLUDE(UsePkgConfig) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e9174f0a..1cfc2540 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -186,6 +186,10 @@ # These variables are set to "" Because Qt structure changed # (They make no sense in Qt4) # QT_QT_LIBRARY Qt-Library is now split +# +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 8bcfb357..4510660b 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -1,11 +1,16 @@ -# - Find ruby -# This module finds if RUBY is installed and determines where the include files +# - Find Ruby +# This module finds if Ruby is installed and determines where the include files # and libraries are. It also determines what the name of the library is. This # code sets the following variables: # # RUBY_INCLUDE_PATH = path to where ruby.h can be found # RUBY_EXECUTABLE = full path to the ruby binary # +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if(RUBY_LIBRARY AND RUBY_INCLUDE_PATH) # Already in cache, be silent diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index b790f57d..88a32bc0 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -4,6 +4,12 @@ # SASL2_FOUND - system has SASL2 # SASL2_INCLUDE_DIR - the SASL2 include directory # SASL2_LIBRARIES - The libraries needed to use SASL2 +# +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (SASL2_INCLUDE_DIR) # Already in cache, be silent diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 7c6cfd91..6cacf167 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -6,6 +6,9 @@ # TIFF_FOUND, If false, do NOT try to use TIFF. # also defined, but NOT for general use are # TIFF_LIBRARY, where to find the TIFF library. +# +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. if (TIFF_INCLUDE_DIR) # Already in cache, be silent diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 7f258785..dc8bea36 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -4,8 +4,14 @@ # TAGLIB_FOUND - system has the taglib library # TAGLIB_CFLAGS - the taglib cflags # TAGLIB_LIBRARIES - The libraries needed to use taglib +# +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + - #KDE_CHECK_HEADER(taglib/mpcfile.h, have_taglib_mpc=yes, have_taglib_mpc=no) +#KDE_CHECK_HEADER(taglib/mpcfile.h, have_taglib_mpc=yes, have_taglib_mpc=no) FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS /usr/bin diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index b6c6949e..5c4d65d6 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -4,6 +4,12 @@ # LIBUSB_FOUND - system has libusb # LIBUSB_INCLUDE_DIR - the libusb include directory # LIBUSB_LIBRARIES - Link these to use libusb +# +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 6456e9e9..7bd3bde2 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -4,6 +4,9 @@ # X11_INCLUDE_DIR - include directories to use X11 # X11_LIBRARIES - link against these to use X11 +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + if (UNIX) set(X11_FOUND 0) diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index 33f9f395..f5719b22 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -1,5 +1,10 @@ # Search xmms -# Laurent Montel 2006 +# +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + OPTION(KDE4_XMMS "enable support for XMMS") diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index b2a1a66b..c943cc3b 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -5,6 +5,9 @@ # ZLIB_LIBRARIES - List of libraries when using zlib. # ZLIB_FOUND - True if zlib found. +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + IF (ZLIB_INCLUDE_DIR) # Already in cache, be silent diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 69520940..63a19671 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -11,8 +11,11 @@ # KDE4_ADD_EXECUTABLE # KDE4_ADD_WIDGET_FILES -#neundorf@kde.org -#montel@kde.org +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. macro (KDE4_ADD_KCFG_FILES _sources ) IF( ${ARGV1} STREQUAL "GENERATE_MOC" ) diff --git a/modules/MacroAddCompileFlags.cmake b/modules/MacroAddCompileFlags.cmake index 67c0f29f..12038c00 100644 --- a/modules/MacroAddCompileFlags.cmake +++ b/modules/MacroAddCompileFlags.cmake @@ -1,5 +1,11 @@ # - MACRO_ADD_COMPILE_FLAGS(<_target> "flags...") +# Copyright (c) 2006, Oswald Buddenhagen, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + MACRO (MACRO_ADD_COMPILE_FLAGS _target _flg) GET_TARGET_PROPERTY(_flags ${_target} COMPILE_FLAGS) diff --git a/modules/MacroAddFileDependencies.cmake b/modules/MacroAddFileDependencies.cmake index 13596912..61cb1ab5 100644 --- a/modules/MacroAddFileDependencies.cmake +++ b/modules/MacroAddFileDependencies.cmake @@ -1,6 +1,12 @@ # - MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) # MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + MACRO (MACRO_ADD_FILE_DEPENDENCIES _file) GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS) diff --git a/modules/MacroAddLinkFlags.cmake b/modules/MacroAddLinkFlags.cmake index d83fe2d9..a10d39ea 100644 --- a/modules/MacroAddLinkFlags.cmake +++ b/modules/MacroAddLinkFlags.cmake @@ -1,5 +1,10 @@ # - MACRO_ADD_LINK_FLAGS(<_target> "flags...") +# Copyright (c) 2006, Oswald Buddenhagen, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + MACRO (MACRO_ADD_LINK_FLAGS _target _flg) GET_TARGET_PROPERTY(_flags ${_target} LINK_FLAGS) diff --git a/modules/MacroAdditionalCleanFiles.cmake b/modules/MacroAdditionalCleanFiles.cmake index 0da79c73..593182fe 100644 --- a/modules/MacroAdditionalCleanFiles.cmake +++ b/modules/MacroAdditionalCleanFiles.cmake @@ -1,6 +1,12 @@ # - MACRO_ADDITIONAL_CLEAN_FILES(files...) # MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + MACRO (MACRO_ADDITIONAL_CLEAN_FILES) GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ADDITIONAL_MAKE_CLEAN_FILES ) diff --git a/modules/MacroBoolTo01.cmake b/modules/MacroBoolTo01.cmake index 7580cce3..63b98526 100644 --- a/modules/MacroBoolTo01.cmake +++ b/modules/MacroBoolTo01.cmake @@ -3,6 +3,12 @@ # and sets all the given vaiables either to 0 or 1 # depending on the value of the first one +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + MACRO(MACRO_BOOL_TO_01 FOUND_VAR ) FOREACH (_current_VAR ${ARGN}) IF(${FOUND_VAR}) diff --git a/modules/MacroEnsureOutOfSourceBuild.cmake b/modules/MacroEnsureOutOfSourceBuild.cmake index c2e2c862..ef4d525f 100644 --- a/modules/MacroEnsureOutOfSourceBuild.cmake +++ b/modules/MacroEnsureOutOfSourceBuild.cmake @@ -1,6 +1,11 @@ # - MACRO_ENSURE_OUT_OF_SOURCE_BUILD() # MACRO_ENSURE_OUT_OF_SOURCE_BUILD() +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + MACRO (MACRO_ENSURE_OUT_OF_SOURCE_BUILD _errorMessage) STRING(COMPARE EQUAL "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" insource) diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index ab395819..3ff1d72f 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -1,9 +1,12 @@ -# LGPL-v2, David Faure -# # This macro compares version numbers of the form "x.y.z" # MACRO_ENSURE_VERSION( ${FOO_MIN_VERSION} ${FOO_VERSION_FOUND} FOO_VERSION_OK) # will set FOO_VERSIN_OK to true if FOO_VERSION_FOUND >= FOO_MIN_VERSION + +# Copyright (c) 2006, David Faure, # +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) # parse the parts of the version string diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index d45414a5..59836927 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -1,6 +1,11 @@ # - include MacroLibrary offers a collection of macros which extend the built-in cmake commands # OPTIONAL_FIND_PACKAGE( [QUIT] ) +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + INCLUDE(MacroOptionalFindPackage) INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 434fefb9..169775d0 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -24,6 +24,10 @@ # ... # MACRO_DISPLAY_FEATURE_LOG() +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. IF (NOT _macroLogFeatureAlreadyIncluded) SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake index 70681312..816cdb7e 100644 --- a/modules/MacroOptionalFindPackage.cmake +++ b/modules/MacroOptionalFindPackage.cmake @@ -7,6 +7,12 @@ # The standard _FOUND variables can be used in the same way # as when using the normal FIND_PACKAGE() +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + MACRO (MACRO_OPTIONAL_FIND_PACKAGE _name ) OPTION(WITH_${_name} "Search for ${_name} package" ON) if (WITH_${_name}) diff --git a/modules/MacroPushRequiredVars.cmake b/modules/MacroPushRequiredVars.cmake index 34ff0e9f..2c8ec4e5 100644 --- a/modules/MacroPushRequiredVars.cmake +++ b/modules/MacroPushRequiredVars.cmake @@ -10,7 +10,11 @@ # SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} -DSOME_MORE_DEF) # CHECK_FUNCTION_EXISTS(...) # MACRO_POP_REQUIRED_VARS() + +# Copyright (c) 2006, Alexander Neundorf, # +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. MACRO(MACRO_PUSH_REQUIRED_VARS) SET(_CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index a256403e..a42817a9 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -1,3 +1,9 @@ +# +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (UNIX) diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 3cdcafcd..92841663 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -1,3 +1,7 @@ +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. #using a ui3 file with uic3 if (KDE3_IMPL) -- cgit v1.2.1 From 021d3b8ee8ef0c246e539090899a43e7cef16539 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 9 Sep 2006 13:30:56 +0000 Subject: Add macro to remove obsolete cmake file (not necessary to duplicate (in the future) code) svn path=/trunk/KDE/kdelibs/; revision=582465 --- modules/KDE4Macros.cmake | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 63a19671..bc7db283 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -668,3 +668,15 @@ MACRO(KDE4_ADD_DCOP_STUBS) Please remove it and port to DBUS.") ENDMACRO(KDE4_ADD_DCOP_STUBS) +MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES _file_to_remove) +# the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex + install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) + + file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") + foreach ( _current_FILE ${_file_to_remove}) + file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "message(STATUS \"Removing ${module_install_dir}/${_current_FILE}\" )\n" ) + file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${module_install_dir}/${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) + endforeach ( _current_FILE) + +ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES _file) + -- cgit v1.2.1 From 6db30c9475c18c4ef175ae88d6f087839ac01eb3 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 9 Sep 2006 13:40:42 +0000 Subject: add my copyright. svn path=/trunk/KDE/kdelibs/; revision=582472 --- modules/MacroLogFeature.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 169775d0..41c150e3 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -25,6 +25,7 @@ # MACRO_DISPLAY_FEATURE_LOG() # Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2006, Allen Winter, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -- cgit v1.2.1 From 750d43e796173f6f9d79b0da2acba9c534b5ec39 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 9 Sep 2006 15:07:33 +0000 Subject: Fix remove file macro svn path=/trunk/KDE/kdelibs/; revision=582491 --- modules/KDE4Macros.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index bc7db283..1de6f3dc 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -668,15 +668,16 @@ MACRO(KDE4_ADD_DCOP_STUBS) Please remove it and port to DBUS.") ENDMACRO(KDE4_ADD_DCOP_STUBS) -MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES _file_to_remove) +MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) + set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") - foreach ( _current_FILE ${_file_to_remove}) + foreach ( _current_FILE ${ARGN}) file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "message(STATUS \"Removing ${module_install_dir}/${_current_FILE}\" )\n" ) file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${module_install_dir}/${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) endforeach ( _current_FILE) -ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES _file) +ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) -- cgit v1.2.1 From 12620e8b9d3be7311560a2cc1c266128bb1fa7a7 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Mon, 11 Sep 2006 10:18:35 +0000 Subject: - new names for the qt dbus code generators svn path=/trunk/KDE/kdelibs/; revision=583005 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 1cfc2540..18c47d31 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -729,13 +729,13 @@ IF (QT4_QMAKE_FOUND) ) FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE - NAMES dbuscpp2xml + NAMES qdbuscpp2xml PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE - NAMES dbusxml2cpp + NAMES qdbusxml2cpp PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) -- cgit v1.2.1 From 7def509e808de513e1a66c57489ebb642eee8dcc Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 11 Sep 2006 11:21:06 +0000 Subject: find Xv svn path=/trunk/KDE/kdelibs/; revision=583023 --- modules/FindX11.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 7bd3bde2..4c314ef8 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -51,6 +51,7 @@ if (UNIX) FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) @@ -69,6 +70,7 @@ if (UNIX) FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -100,6 +102,12 @@ if (UNIX) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) endif(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + + if(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) + set(X11_XV_FOUND TRUE) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xv_LIB}) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) + endif(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) if (X11_Xau_LIB) set(X11_Xau_FOUND TRUE) @@ -324,6 +332,8 @@ if (UNIX) X11_Xft_LIB X11_Xft_INCLUDE_PATH X11_Xshape_INCLUDE_PATH + X11_Xv_LIB + X11_Xv_INCLUDE_PATH ) endif (UNIX) -- cgit v1.2.1 From f6f586b110ded9e3e331a901979a9e4ab4f0ae93 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 11 Sep 2006 23:00:49 +0000 Subject: remove QT3_SUPPORT defines, so that modules without the need for QT3 support remain clean svn path=/trunk/KDE/kdelibs/; revision=583292 --- modules/FindKDE4Internal.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index cc0d9368..5972295c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -735,8 +735,7 @@ endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) -# NOT used in Qt4: QT_NO_COMPAT, QT_CLEAN_NAMESPACE, QT_THREAD_SUPPORT -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT3_SUPPORT -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DQT3_SUPPORT_WARNINGS -DKDE_DEPRECATED_WARNINGS ) +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) set( KDELIBSUFF ${LIB_SUFFIX} ) -- cgit v1.2.1 From 72c8b2ee65d452ad54bae1864aff4fd18d399dfa Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Tue, 12 Sep 2006 09:45:54 +0000 Subject: don't put the Xv lib into X11_LIBRARIES, use X11_Xv_LIB instead svn path=/trunk/KDE/kdelibs/; revision=583418 --- modules/FindX11.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 4c314ef8..516e3fe3 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -105,7 +105,6 @@ if (UNIX) if(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) set(X11_XV_FOUND TRUE) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xv_LIB}) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) endif(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) -- cgit v1.2.1 From 7685f61ca2a72bee7316f428fd9e392bf17ffa33 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 12 Sep 2006 17:55:14 +0000 Subject: Just comments svn path=/trunk/KDE/kdelibs/; revision=583578 --- modules/FindKDE4Internal.cmake | 2 +- modules/FindQt4.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5972295c..5e89a7e4 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -185,7 +185,7 @@ set(QT_MIN_VERSION "4.2.0") find_package(Qt4 REQUIRED) if (NOT QT_DBUSXML2CPP_EXECUTABLE) - message(FATAL_ERROR "Qt4 dbusxml2cpp was not found. Make sure it has been built and installed by Qt") + message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") endif (NOT QT_DBUSXML2CPP_EXECUTABLE) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 18c47d31..7aaa117c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -168,8 +168,8 @@ # QT_UIC_EXECUTABLE Where to find the uic tool. # QT_UIC3_EXECUTABLE Where to find the uic3 tool. # QT_RCC_EXECUTABLE Where to find the rcc tool -# QT_DBUSCPP2XML_EXECUTABLE Where to find the dbuscpp2xml tool. -# QT_DBUSXML2CPP_EXECUTABLE Where to find the dbusxml2cpp tool. +# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. +# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. # # QT_DOC_DIR Path to "doc" of Qt4 # QT_MKSPECS_DIR Path to "mkspecs" of Qt4 -- cgit v1.2.1 From 86f74e86a9374826bab70dc1d75542ef7bcf4e87 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 12 Sep 2006 21:00:13 +0000 Subject: -finally require cmake >= 2.4.3 -remove the LIST command hack -always use the simpler and more powerful cmake 2.4.3 CMAKE_INSTALL_RPATH_USE_LINK_PATH option -rename the shell wrapper scripts from *.sh to *.shell, this fixes the build with OpenBSD make, which otherwise sometimes doesn't build the binaries but just copies the .sh scripts to the binaries via implicit rules -move KDELIBSUFF from FindKDE4Internal.cmake to ConfigureChecks.cmake, since this is used only in kdelibs, if it needs to be used somewhere else, LIB_SUFFIX can be used instead Alex svn path=/trunk/KDE/kdelibs/; revision=583638 --- modules/FindKDE4Internal.cmake | 41 ++++++++++------------------------------- modules/KDE4Macros.cmake | 26 ++++---------------------- 2 files changed, 14 insertions(+), 53 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5e89a7e4..e16c0980 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -178,7 +178,7 @@ INCLUDE (MacroEnsureVersion) -cmake_minimum_required(VERSION 2.4.1 FATAL_ERROR) +cmake_minimum_required(VERSION 2.4.3 FATAL_ERROR) set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers @@ -196,11 +196,8 @@ include (MacroLibrary) include (CheckCXXCompilerFlag) - - #add some KDE specific stuff - # the following are directories where stuff will be installed to set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/") @@ -286,9 +283,9 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.sh ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.sh ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.sh ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.shell ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -513,26 +510,11 @@ if (UNIX) if (APPLE) set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) else (APPLE) - if (CMAKE_PATCH_VERSION) # at least cmake 2.4.3, in earlier version CMAKE_PATCH_VERSION is empty - # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out cmake when compiling - set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) - set(CMAKE_SKIP_BUILD_RPATH ON) - set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) - set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) - else (CMAKE_PATCH_VERSION) # at least cmake 2.4.3 - - set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ) - # building something else than kdelibs/ ? - # then add the dir where the kde libraries are installed - if (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - set(CMAKE_INSTALL_RPATH ${KDE4_LIB_DIR} ${CMAKE_INSTALL_RPATH} ) - endif (NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - - set(CMAKE_SKIP_BUILD_RPATH TRUE) - set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) - - endif (CMAKE_PATCH_VERSION) # at least cmake 2.4.3 - + # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling + set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) + set(CMAKE_SKIP_BUILD_RPATH TRUE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) endif (APPLE) endif (UNIX) @@ -735,10 +717,7 @@ endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) - -set( KDELIBSUFF ${LIB_SUFFIX} ) - +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) if (NOT _kde4_uninstall_rule_created) set(_kde4_uninstall_rule_created TRUE) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1de6f3dc..4bdc2b37 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -386,16 +386,16 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) # use add_custom_target() to have the sh-wrapper generated during build time instead of cmake time add_custom_command(TARGET ${_target_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} - -D_filename=${_executable}.sh -D_library_path_variable=${_library_path_variable} + -D_filename=${_executable}.shell -D_library_path_variable=${_library_path_variable} -D_ld_library_path="${_ld_library_path}" -D_executable=${_executable} -P ${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ) - macro_additional_clean_files(${_executable}.sh) + macro_additional_clean_files(${_executable}.shell) # under UNIX, set the property WRAPPER_SCRIPT to the name of the generated shell script # so it can be queried and used later on easily - set_target_properties(${_target_NAME} PROPERTIES WRAPPER_SCRIPT ${_executable}.sh) + set_target_properties(${_target_NAME} PROPERTIES WRAPPER_SCRIPT ${_executable}.shell) else (UNIX) # under windows, set the property WRAPPER_SCRIPT just to the name of the executable @@ -457,24 +457,6 @@ MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -# hmm this is a hack -# the behaviour of LIST(REMOVE_ITEM ... ) changed from 2.4.1 beta to 2.4.2 stable -# detect this here -# this can be removed once we require cmake >= 2.4.2 -set(remove_item_test_list one two) -# with cmake 2.4.1 this means remove index 0, -# with >= 2.4.2 this means remove the items which have the value "0" -list(REMOVE_ITEM remove_item_test_list 0) -list(LENGTH remove_item_test_list _test_list_length) -# so with 2.4.1 the list will have only one item left, with 2.4.2 two -if (${_test_list_length} EQUAL 2) - set(_REMOVE_AT_INDEX_KEYWORD REMOVE_AT) -else (${_test_list_length} EQUAL 2) - set(_REMOVE_AT_INDEX_KEYWORD REMOVE_ITEM) -endif (${_test_list_length} EQUAL 2) - - - # this macro checks is intended to check whether a list of source # files has the "NOGUI" or "RUN_UNINSTALLED" keywords at the beginning # in _output_LIST the list of source files is returned with the "NOGUI" @@ -521,7 +503,7 @@ MACRO(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) endif (${second_PARAM} STREQUAL "RUN_UNINSTALLED") if (NOT "${remove}" STREQUAL "NOTFOUND") - list(${_REMOVE_AT_INDEX_KEYWORD} ${_output_LIST} ${remove}) + list(REMOVE_AT ${_output_LIST} ${remove}) endif (NOT "${remove}" STREQUAL "NOTFOUND") ENDMACRO(KDE4_CHECK_EXECUTABLE_PARAMS) -- cgit v1.2.1 From f9bb02581fca3849989b8088c6ea9d93ae2cd888 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Wed, 13 Sep 2006 17:43:31 +0000 Subject: otherwise $LDFLAGS is ignored svn path=/trunk/KDE/kdelibs/; revision=583870 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e16c0980..6d57e6ac 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -542,8 +542,8 @@ if (APPLE) # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented # or perhaps it already is, and I just don't know where to look ;) - set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress") - set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress") + set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress ${CMAKE_SHARED_LINKER_FLAGS}") + set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress ${CMAKE_MODULE_LINKER_FLAGS}") #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") -- cgit v1.2.1 From 9166d6d06daad206ec37cadcd8139ae74318bc83 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Wed, 13 Sep 2006 18:56:39 +0000 Subject: these are proper frameworks now svn path=/trunk/KDE/kdelibs/; revision=583898 --- modules/FindQt4.cmake | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 7aaa117c..ff09aa77 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -536,13 +536,11 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") SET(QT_QTDBUS_LIBRARY_RELEASE "-framework QtDBus" CACHE STRING "The QtDBus library.") SET(QT_QTDBUS_LIBRARY_DEBUG "-framework QtDBus" CACHE STRING "The QtDBus library.") + SET(QT_QTUITOOLS_LIBRARY_RELEASE "-framework QtUiTools" CACHE STRING "The QtUiTools library.") + SET(QT_QTUITOOLS_LIBRARY_DEBUG "-framework QtUiTools" CACHE STRING "The QtUiTools library.") + SET(QT_QTTEST_LIBRARY_RELEASE "-framework QtTest" CACHE STRING "The QtTest library.") + SET(QT_QTTEST_LIBRARY_DEBUG "-framework QtTest" CACHE STRING "The QtTest library.") - - # WTF? why don't we have frameworks? :P - SET(QT_QTUITOOLS_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") - SET(QT_QTUITOOLS_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") - SET(QT_QTTEST_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtTest" CACHE STRING "The QtTest library.") - SET(QT_QTTEST_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtTest_debug" CACHE STRING "The QtTest library.") MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From 732ad856ea72cc791fac712c06eaf0b659d5ea53 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Wed, 13 Sep 2006 19:11:02 +0000 Subject: ergh, only test was made a framework svn path=/trunk/KDE/kdelibs/; revision=583904 --- modules/FindQt4.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index ff09aa77..b836fd62 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -536,11 +536,13 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") SET(QT_QTDBUS_LIBRARY_RELEASE "-framework QtDBus" CACHE STRING "The QtDBus library.") SET(QT_QTDBUS_LIBRARY_DEBUG "-framework QtDBus" CACHE STRING "The QtDBus library.") - SET(QT_QTUITOOLS_LIBRARY_RELEASE "-framework QtUiTools" CACHE STRING "The QtUiTools library.") - SET(QT_QTUITOOLS_LIBRARY_DEBUG "-framework QtUiTools" CACHE STRING "The QtUiTools library.") SET(QT_QTTEST_LIBRARY_RELEASE "-framework QtTest" CACHE STRING "The QtTest library.") SET(QT_QTTEST_LIBRARY_DEBUG "-framework QtTest" CACHE STRING "The QtTest library.") + # WTF? why don't we have frameworks? :P + SET(QT_QTUITOOLS_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") + SET(QT_QTUITOOLS_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") + MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From 1f010485d5e0ca81774c401c66af2612c47e6193 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 13 Sep 2006 19:58:24 +0000 Subject: -minor performance improvement: use LIST(APPEND list item1 item2... ) instead of SET(list ${list} item1 item2) -add some documentation -rename KDE4_HANDLE_RPATH() to KDE4_HANDLE_RPATH_FOR_EXECUTABLE() and add a new KDE4_HANDLE_RPATH_FOR_LIBRARY(), so that rpath handling is now very centralized This shouldn't cause a recompile for anybody, at least it didn't for me. If it does nevertheless, let me know. Alex svn path=/trunk/KDE/kdelibs/; revision=583926 --- modules/FindKDE4Internal.cmake | 4 +- modules/KDE4Macros.cmake | 104 +++++++++++++++++++++++------------------ 2 files changed, 62 insertions(+), 46 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6d57e6ac..82a7ae3f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -506,7 +506,9 @@ if (UNIX) set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) # the rest is RPATH handling - + # here the defaults are set + # which are partly overwritten in kde4_handle_rpath_for_library() + # and kde4_handle_rpath_for_executable(), both located in KDE4Macros.cmake, Alex if (APPLE) set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) else (APPLE) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4bdc2b37..8e3eaa50 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -48,7 +48,7 @@ macro (KDE4_ADD_KCFG_FILES _sources ) macro_add_file_dependencies(${_src_FILE} ${_moc_FILE} ) endif(_kcfg_generatemoc) - set(${_sources} ${${_sources}} ${_src_FILE} ${_header_FILE}) + list(APPEND ${_sources} ${_src_FILE} ${_header_FILE}) endif(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") endforeach (_current_FILE) @@ -79,7 +79,7 @@ macro (KDE4_ADD_UI_FILES _sources ) -P ${KDE4_MODULE_DIR}/kde4uic.cmake MAIN_DEPENDENCY ${_tmp_FILE} ) - set(${_sources} ${${_sources}} ${_header}) + list(APPEND ${_sources} ${_header}) endforeach (_current_FILE) endmacro (KDE4_ADD_UI_FILES) @@ -131,7 +131,7 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) ARGS ${_moc_INCS} ${_header} -o ${_moc} MAIN_DEPENDENCY ${_header} ) - set(${_sources} ${${_sources}} ${_src} ${_moc} ) + list(APPEND ${_sources} ${_src} ${_moc} ) endforeach (_current_FILE) ENDMACRO (KDE4_ADD_UI3_FILES) @@ -340,23 +340,51 @@ MACRO (KDE4_INSTALL_LIBTOOL_FILE _subdir _target) ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) -MACRO (KDE4_CREATE_FINAL_FILES _filenameCPP _filenameC ) - FILE(WRITE ${_filenameCPP} "//autogenerated file\n") - FILE(WRITE ${_filenameC} "/*autogenerated file*/\n") +# For all C++ sources a big source file which includes all the files +# is created. +# This is not done for the C sources, they are just gathered in a separate list +# because they are usually not written by KDE and as such not intended to be +# compiled all-in-one. +macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesC ) + set(${_filesC}) + file(WRITE ${_filenameCPP} "//autogenerated file\n") foreach (_current_FILE ${ARGN}) - STRING(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE}) + string(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE}) if (_isCFile) - file(APPEND ${_filenameC} "#include \"${_current_FILE}\"\n") + list(APPEND ${_filesC} ${_current_FILE}) else (_isCFile) file(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n") endif (_isCFile) endforeach (_current_FILE) -ENDMACRO (KDE4_CREATE_FINAL_FILES) +endmacro (KDE4_CREATE_FINAL_FILES) -# this macro sets the RPATH related options for executables -# and creates wrapper shell scripts for the executables -macro (KDE4_HANDLE_RPATH _target_NAME _type) +# This macro sets the RPATH related options for libraries, plugins and kdeinit executables. +# It overrides the defaults set in FindKDE4Internal.cmake. +# If RPATH is not explicitely disabled, libraries and plugins are built without RPATH, in +# the hope that the RPATH which is compiled into the executable is good enough. +macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) + if (NOT CMAKE_SKIP_RPATH) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") + endif (NOT CMAKE_SKIP_RPATH) +endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) + +# This macro sets the RPATH related options for executables +# and creates wrapper shell scripts for the executables. +# It overrides the defaults set in FindKDE4Internal.cmake. +# For every executable a wrapper script is created, which sets the appropriate +# environment variable for the platform (LD_LIBRARY_PATH on most UNIX systems, +# DYLD_LIBRARY_PATH on OS X and PATH in Windows) so that it points to the built +# but not yet installed versions of the libraries. So if RPATH is disabled, the executables +# can be run via these scripts from the build tree and will find the correct libraries. +# If RPATH is not disabled, these scripts are also used but only for consistency, because +# they don't really influence anything then, because the compiled-in RPATH overrides +# the LD_LIBRARY_PATH env. variable. +# Executables with the RUN_UNINSTALLED option will be built with the RPATH pointing to the +# build dir, so that they can be run safely without being installed, e.g. as code generators +# for other stuff during the build. These executables will be relinked during "make install". +# All other executables are built with the RPATH with which they will be installed. +macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) if (UNIX) # set the RPATH related properties @@ -414,9 +442,8 @@ macro (KDE4_HANDLE_RPATH _target_NAME _type) -P ${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ) - endif (UNIX) -endmacro (KDE4_HANDLE_RPATH) +endmacro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE) MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) @@ -428,31 +455,24 @@ MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") if (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) - ADD_LIBRARY(${_target_NAME} MODULE ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} MODULE ${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) - ADD_LIBRARY(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) endif (KDE4_ENABLE_FINAL) if (_first_SRC) - SET_TARGET_PROPERTIES(${_target_NAME} PROPERTIES PREFIX "") + set_target_properties(${_target_NAME} PROPERTIES PREFIX "") endif (_first_SRC) - if (NOT CMAKE_SKIP_RPATH) - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") - endif (NOT CMAKE_SKIP_RPATH) + kde4_handle_rpath_for_library(${_target_NAME}) -# if (UNIX) -# I guess under windows the libtool file are not required -# KDE4_INSTALL_LIBTOOL_FILE(${_target_NAME}) -# endif (UNIX) - - IF (WIN32) + if (WIN32) # for shared libraries/plugins a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) - ENDIF (WIN32) + endif (WIN32) ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) @@ -521,17 +541,14 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ) endif (KDE4_ENABLE_FINAL) - - if (NOT CMAKE_SKIP_RPATH) - set_target_properties(kdeinit_${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") - endif (NOT CMAKE_SKIP_RPATH) + kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) @@ -565,13 +582,13 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endif (_uninst) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_SRCS}) - add_executable(${_target_NAME} ${_add_executable_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_c_files} ${_SRCS}) + add_executable(${_target_NAME} ${_add_executable_param} ${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS} ) endif (KDE4_ENABLE_FINAL) - kde4_handle_rpath(${_target_NAME} ${_type}) + kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) endmacro (KDE4_ADD_EXECUTABLE) @@ -596,15 +613,13 @@ MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endif (${_lib_TYPE} STREQUAL "MODULE") if (KDE4_ENABLE_FINAL) - KDE4_CREATE_FINAL_FILES(${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c ${_first_SRC} ${ARGN}) - ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_target_NAME}_final_c.c) + kde4_create_final_files(${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) - ADD_LIBRARY(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) endif (KDE4_ENABLE_FINAL) - if (NOT CMAKE_SKIP_RPATH) - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") - endif (NOT CMAKE_SKIP_RPATH) + kde4_handle_rpath_for_library(${_target_NAME}) if (WIN32) # for shared libraries a -DMAKE_target_LIB is required @@ -634,7 +649,7 @@ MACRO (KDE4_ADD_WIDGET_FILES _sources) QT4_GENERATE_MOC(${_source} ${_moc} ) MACRO_ADD_FILE_DEPENDENCIES(${_source} ${_moc}) - SET(${_sources} ${${_sources}} ${_source}) + list(APPEND ${_sources} ${_source}) ENDFOREACH (_current_FILE) @@ -662,4 +677,3 @@ MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) endforeach ( _current_FILE) ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) - -- cgit v1.2.1 From 45ed760862b295694ff9ef111513be68f4a4b535 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 13 Sep 2006 21:27:51 +0000 Subject: -apply a patch from flameeyes at gentoo dot org , which asks ruby for the location of its lib and headers Alex CCMAIL: montel@kde.org Laurent: where is this actually used ? svn path=/trunk/KDE/kdelibs/; revision=583963 --- modules/FindRUBY.cmake | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 4510660b..6ac3c291 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -13,36 +13,37 @@ if(RUBY_LIBRARY AND RUBY_INCLUDE_PATH) - # Already in cache, be silent - set(RUBY_FIND_QUIETLY TRUE) + # Already in cache, be silent + set(RUBY_FIND_QUIETLY TRUE) endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) -SET(RUBY_POSSIBLE_INCLUDE_PATHS - /usr/lib/ruby/1.8/i586-linux-gnu/ - ) +# RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'` +# RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'` +# RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'` +# RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'` +# RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` -SET(RUBY_POSSIBLE_LIB_PATHS - /usr/lib - ) +FIND_PROGRAM(RUBY_EXECUTABLE NAMES ruby ruby1.8 ruby18 ) + +EXEC_PROGRAM(${RUBY_EXECUTABLE} ARGS -r rbconfig -e 'puts Config::CONFIG[\"archdir\"]' + OUTPUT_VARIABLE RUBY_ARCH_DIR) + +EXEC_PROGRAM(${RUBY_EXECUTABLE} ARGS -r rbconfig -e 'puts Config::CONFIG["libdir"]' + OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH) -FIND_PATH(RUBY_INCLUDE_PATH ruby.h - ${RUBY_POSSIBLE_INCLUDE_PATHS}) +FIND_PATH(RUBY_INCLUDE_PATH + NAMES ruby.h + PATHS + ${RUBY_ARCH_DIR} + /usr/lib/ruby/1.8/i586-linux-gnu/ ) FIND_LIBRARY(RUBY_LIBRARY NAMES ruby - PATHS ${RUBY_POSSIBLE_LIB_PATHS} + PATHS ${RUBY_POSSIBLE_LIB_PATH} ) -FIND_PROGRAM(RUBY_EXECUTABLE - NAMES ruby - PATHS - /usr/bin - /usr/local/bin -) - MARK_AS_ADVANCED( RUBY_EXECUTABLE RUBY_LIBRARY RUBY_INCLUDE_PATH ) - -- cgit v1.2.1 From 601a9517a3543a44d4758d14e3c376c327911df8 Mon Sep 17 00:00:00 2001 From: Egon Willighagen Date: Thu, 14 Sep 2006 12:16:57 +0000 Subject: Added module to detect Korundum (the KDE Ruby bindings) svn path=/trunk/KDE/kdelibs/; revision=584322 --- modules/FindKorundum.cmake | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 modules/FindKorundum.cmake (limited to 'modules') diff --git a/modules/FindKorundum.cmake b/modules/FindKorundum.cmake new file mode 100644 index 00000000..59ad44b1 --- /dev/null +++ b/modules/FindKorundum.cmake @@ -0,0 +1,24 @@ +# - Find Korundum - the KDE Ruby bindings +# +# This module finds if Korundum is installed. +# +# Copyright (c) 2006, Egon Willighagen, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +FIND_PATH(Korumdum_PATH Korundum.rb /usr/lib/ruby/1.8) + +IF (Korumdum_PATH) + SET(Korumdum_FOUND TRUE) +ENDIF (Korumdum_PATH) + +IF (Korumdum_FOUND) + IF (NOT Korumdum_FIND_QUIETLY) + MESSAGE(STATUS "Found Korumdum: ${Korumdum_PATH}") + ENDIF (NOT Korumdum_FIND_QUIETLY) +ELSE (Korumdum_FOUND) + IF (Korumdum_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Korumdum") + ENDIF (Korumdum_FIND_REQUIRED) +ENDIF (Korumdum_FOUND) \ No newline at end of file -- cgit v1.2.1 From 988786539d42c69deebe7bc58c710e8b8396b0ac Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 14 Sep 2006 20:11:22 +0000 Subject: only include CTest if there is a CTestConfig.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=584425 --- modules/KDE4Defaults.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index cfec6756..f03770bc 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -1,7 +1,10 @@ -# support for Dart: http://public.kitware.com/dashboard.php?name=kde enable_testing() -include(CTest) + +# support for Dart: http://public.kitware.com/dashboard.php?name=kde +if (EXISTS ${CMAKE_SOURCE_DIR}/CTestConfig.cmake) + include(CTest) +endif (EXISTS ${CMAKE_SOURCE_DIR}/CTestConfig.cmake) # Always include srcdir and builddir in include path # This saves typing ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY} in about every subdir -- cgit v1.2.1 From daeac48c48f0e2d50c7bc4ff45adda5601b0ecc2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 14 Sep 2006 20:45:01 +0000 Subject: remove two of three macro_add_file_dependencies, no longer require with cmake 2.4.3 Alex svn path=/trunk/KDE/kdelibs/; revision=584429 --- modules/KDE4Macros.cmake | 81 ++++++++++++++++++++++++------------------------ 1 file changed, 40 insertions(+), 41 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 8e3eaa50..0c327767 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -45,7 +45,7 @@ macro (KDE4_ADD_KCFG_FILES _sources ) if(_kcfg_generatemoc) qt4_generate_moc(${_header_FILE} ${_moc_FILE} ) set_source_files_properties(${_src_FILE} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file - macro_add_file_dependencies(${_src_FILE} ${_moc_FILE} ) + list(APPEND ${_sources} ${_moc_FILE}) endif(_kcfg_generatemoc) list(APPEND ${_sources} ${_src_FILE} ${_header_FILE}) @@ -86,9 +86,9 @@ endmacro (KDE4_ADD_UI_FILES) #create the implementation files from the ui files and add them to the list of sources #usage: KDE4_ADD_UI3_FILES(foo_SRCS ${ui_files}) -MACRO (KDE4_ADD_UI3_FILES _sources ) +macro (KDE4_ADD_UI3_FILES _sources ) - QT4_GET_MOC_INC_DIRS(_moc_INCS) + qt4_get_moc_inc_dirs(_moc_INCS) foreach (_current_FILE ${ARGN}) @@ -126,7 +126,7 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) MAIN_DEPENDENCY ${_header} ) - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + add_custom_command(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${_moc_INCS} ${_header} -o ${_moc} MAIN_DEPENDENCY ${_header} @@ -134,11 +134,11 @@ MACRO (KDE4_ADD_UI3_FILES _sources ) list(APPEND ${_sources} ${_src} ${_moc} ) endforeach (_current_FILE) -ENDMACRO (KDE4_ADD_UI3_FILES) +endmacro (KDE4_ADD_UI3_FILES) -MACRO (KDE4_AUTOMOC) - QT4_GET_MOC_INC_DIRS(_moc_INCS) +macro (KDE4_AUTOMOC) + qt4_get_moc_inc_dirs(_moc_INCS) set(_matching_FILES ) foreach (_current_FILE ${ARGN}) @@ -222,26 +222,26 @@ MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NA ENDMACRO (_KDE4_ADD_ICON_INSTALL_RULE) -MACRO (KDE4_INSTALL_ICONS _defaultpath ) +macro (KDE4_INSTALL_ICONS _defaultpath ) # first the png icons - FILE(GLOB _icons *.png) + file(GLOB _icons *.png) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _type "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _size "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") - SET(_theme_GROUP "nogroup") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _type "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _size "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") + set(_theme_GROUP "nogroup") if( ${_type} STREQUAL "cr" ) - SET(_theme_GROUP "crystalsvg") + set(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) if( ${_type} STREQUAL "lo" ) - SET(_theme_GROUP "locolor") + set(_theme_GROUP "locolor") endif(${_type} STREQUAL "lo" ) if( ${_type} STREQUAL "hi" ) - SET(_theme_GROUP "hicolor") + set(_theme_GROUP "hicolor") endif(${_type} STREQUAL "hi" ) if( NOT ${_theme_GROUP} STREQUAL "nogroup") @@ -250,10 +250,10 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath ) ${_group} ${_current_ICON} ${_name}) endif( NOT ${_theme_GROUP} STREQUAL "nogroup") - ENDforeach (_current_ICON) + endforeach (_current_ICON) # mng icons - FILE(GLOB _icons *.mng) + file(GLOB _icons *.mng) foreach (_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _type "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _size "${_current_ICON}") @@ -265,11 +265,11 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath ) endif(${_type} STREQUAL "cr" ) if( ${_type} STREQUAL "lo" ) - SET(_theme_GROUP "locolor") + set(_theme_GROUP "locolor") endif(${_type} STREQUAL "lo" ) if( ${_type} STREQUAL "hi" ) - SET(_theme_GROUP "hicolor") + set(_theme_GROUP "hicolor") endif(${_type} STREQUAL "hi" ) if( NOT ${_theme_GROUP} STREQUAL "nogroup") @@ -278,11 +278,11 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath ) ${_group} ${_current_ICON} ${_name}) endif( NOT ${_theme_GROUP} STREQUAL "nogroup") - ENDforeach (_current_ICON) + endforeach (_current_ICON) # and now the svg icons - FILE(GLOB _icons *.svgz) + file(GLOB _icons *.svgz) foreach (_current_ICON ${_icons} ) STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _type "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _group "${_current_ICON}") @@ -307,9 +307,9 @@ MACRO (KDE4_INSTALL_ICONS _defaultpath ) ${_group} ${_current_ICON} ${_name}) endif( NOT ${_theme_GROUP} STREQUAL "nogroup") - ENDforeach (_current_ICON) + endforeach (_current_ICON) -ENDMACRO (KDE4_INSTALL_ICONS) +endmacro (KDE4_INSTALL_ICONS) MACRO (KDE4_INSTALL_LIBTOOL_FILE _subdir _target) @@ -446,7 +446,7 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) endmacro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE) -MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) +macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty if (${_with_PREFIX} STREQUAL "WITH_PREFIX") set(_first_SRC) @@ -474,7 +474,7 @@ MACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) -ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) +endmacro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) # this macro checks is intended to check whether a list of source @@ -487,7 +487,7 @@ ENDMACRO (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) # if "RUN_UNINSTALLED" is in the list of files, the _uninst argument is set to # "RUN_UNINSTALLED" (which evaluates to TRUE in cmake), otherwise it is set empty # (which evaluates to FALSE in cmake) -MACRO(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) +macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) set(${_nogui}) set(${_uninst}) set(${_output_LIST} ${ARGN}) @@ -526,7 +526,7 @@ MACRO(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) list(REMOVE_AT ${_output_LIST} ${remove}) endif (NOT "${remove}" STREQUAL "NOTFOUND") -ENDMACRO(KDE4_CHECK_EXECUTABLE_PARAMS) +endmacro(KDE4_CHECK_EXECUTABLE_PARAMS) macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) @@ -631,29 +631,28 @@ MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) ENDMACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -MACRO (KDE4_ADD_WIDGET_FILES _sources) - FOREACH (_current_FILE ${ARGN}) +macro (KDE4_ADD_WIDGET_FILES _sources) + foreach (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_input ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_input} NAME_WE) - SET(_source ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.moc) + get_filename_component(_input ${_current_FILE} ABSOLUTE) + get_filename_component(_basename ${_input} NAME_WE) + set(_source ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.cpp) + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.moc) # create source file from the .widgets file - ADD_CUSTOM_COMMAND(OUTPUT ${_source} + add_custom_command(OUTPUT ${_source} COMMAND ${KDE4_MAKEKDEWIDGETS_EXECUTABLE} ARGS -o ${_source} ${_input} MAIN_DEPENDENCY ${_input} DEPENDS ${_KDE4_MAKEKDEWIDGETS_DEP}) # create moc file - QT4_GENERATE_MOC(${_source} ${_moc} ) - MACRO_ADD_FILE_DEPENDENCIES(${_source} ${_moc}) + qt4_generate_moc(${_source} ${_moc} ) - list(APPEND ${_sources} ${_source}) + list(APPEND ${_sources} ${_source} ${_moc}) - ENDFOREACH (_current_FILE) + endforeach (_current_FILE) -ENDMACRO (KDE4_ADD_WIDGET_FILES) +endmacro (KDE4_ADD_WIDGET_FILES) MACRO(KDE4_ADD_DCOP_SKELS) MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_SKELS() in the CMakeLists.txt for '${ARGV0}', but DCOP is no longer supported by KDE4. -- cgit v1.2.1 From 456217a03c48ff376e534b5237a2b9dde14ef46b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 15 Sep 2006 21:27:44 +0000 Subject: remove FindZLIB.cmake and CheckTypeSize.cmake now that we require cmake 2.4.3 Alex svn path=/trunk/KDE/kdelibs/; revision=584937 --- modules/CMakeLists.txt | 16 ++++++------ modules/CheckTypeSize.cmake | 64 --------------------------------------------- modules/FindZLIB.cmake | 50 ----------------------------------- 3 files changed, 8 insertions(+), 122 deletions(-) delete mode 100644 modules/CheckTypeSize.cmake delete mode 100644 modules/FindZLIB.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 1496668a..95a053df 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -8,18 +8,18 @@ install( FILES kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in ${cmakeFiles # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex set(FILES_TO_REMOVE + ${module_install_dir}/CheckTypeSize.cmake + ${module_install_dir}/FindKDE3.cmake + ${module_install_dir}/FindKDE4.cmake ${module_install_dir}/FindQtDBus.cmake - ${module_install_dir}/QtDBusMacros.cmake + ${module_install_dir}/FindZLIB.cmake + ${module_install_dir}/KDE3Macros.cmake ${module_install_dir}/MacroGetenvWinPath.cmake - ${module_install_dir}/FindKDE4.cmake + ${module_install_dir}/QtDBusMacros.cmake ${module_install_dir}/UsePkgconfig.cmake - ${module_install_dir}/FindKDE3.cmake - ${module_install_dir}/KDE3Macros.cmake ${module_install_dir}/kde3uic.cmake - ${module_install_dir}/kde3init_dummy.cpp.in ) - -# remove the following files once we depend on cmake >= 2.4.3 -# FindZLIB.cmake + ${module_install_dir}/kde3init_dummy.cpp.in +) install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake deleted file mode 100644 index b666f847..00000000 --- a/modules/CheckTypeSize.cmake +++ /dev/null @@ -1,64 +0,0 @@ -# - Check sizeof a type -# CHECK_TYPE_SIZE(TYPE VARIABLE) -# Check if the type exists and determine size of type. if the type -# exists, the size will be stored to the variable. -# VARIABLE - variable to store size if the type exists. -# HAVE_${VARIABLE} - does the variable exists or NOT -# -# remove once we require cmake 2.4.1 - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -MACRO (CHECK_TYPE_SIZE TYPE VARIABLE) - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1) - IF ("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CHECK_TYPE_SIZE_TYPE "${TYPE}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS - "${CMAKE_REQUIRED_FLAGS}") - FOREACH (def HAVE_SYS_TYPES_H HAVE_STDINT_H HAVE_STDDEF_H) - IF ("${def}") - SET(MACRO_CHECK_TYPE_SIZE_FLAGS - "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}") - ENDIF ("${def}") - ENDFOREACH (def) - SET(CHECK_TYPE_SIZE_PREINCLUDE) - SET(CHECK_TYPE_SIZE_PREMAIN) - FOREACH (def ${CMAKE_EXTRA_INCLUDE_FILES}) - SET(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n") - ENDFOREACH (def) - CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CheckTypeSize.c.in" - "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" IMMEDIATE @ONLY) - FILE(READ "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" - CHECK_TYPE_SIZE_FILE_CONTENT) - MESSAGE(STATUS "Check size of ${TYPE}") - IF (CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_TYPE_SIZE_ADD_LIBRARIES - "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ENDIF (CMAKE_REQUIRED_LIBRARIES) - - IF (CMAKE_REQUIRED_INCLUDES) - SET(CHECK_TYPE_SIZE_ADD_INCLUDES - "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - ENDIF (CMAKE_REQUIRED_INCLUDES) - - TRY_RUN(${VARIABLE} HAVE_${VARIABLE} - ${CMAKE_BINARY_DIR} - "${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckTypeSize.c" - CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} - "${CHECK_TYPE_SIZE_ADD_INCLUDES}" - "${CHECK_TYPE_SIZE_ADD_LIBRARIES}" - OUTPUT_VARIABLE OUTPUT) - IF (HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - done") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeOutput.log - "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n") - ELSE (HAVE_${VARIABLE}) - MESSAGE(STATUS "Check size of ${TYPE} - failed") - FILE(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n") - ENDIF (HAVE_${VARIABLE}) - ENDIF ("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$") - SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS ) -ENDMACRO (CHECK_TYPE_SIZE) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake deleted file mode 100644 index c943cc3b..00000000 --- a/modules/FindZLIB.cmake +++ /dev/null @@ -1,50 +0,0 @@ -# - Find zlib -# Find the native ZLIB includes and library -# -# ZLIB_INCLUDE_DIR - where to find zlib.h, etc. -# ZLIB_LIBRARIES - List of libraries when using zlib. -# ZLIB_FOUND - True if zlib found. - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -IF (ZLIB_INCLUDE_DIR) - # Already in cache, be silent - SET(ZLIB_FIND_QUIETLY TRUE) -ENDIF (ZLIB_INCLUDE_DIR) - -FIND_PATH(ZLIB_INCLUDE_DIR zlib.h - /usr/local/include - /usr/include -) - -SET(ZLIB_NAMES z zlib zdll) -FIND_LIBRARY(ZLIB_LIBRARY - NAMES ${ZLIB_NAMES} - PATHS /usr/lib /usr/local/lib -) - -IF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) - SET(ZLIB_FOUND TRUE) - SET( ZLIB_LIBRARIES ${ZLIB_LIBRARY} ) -ELSE (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) - SET(ZLIB_FOUND FALSE) - SET( ZLIB_LIBRARIES ) -ENDIF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) - -IF (ZLIB_FOUND) - IF (NOT ZLIB_FIND_QUIETLY) - MESSAGE(STATUS "Found ZLIB: ${ZLIB_LIBRARY}") - ENDIF (NOT ZLIB_FIND_QUIETLY) -ELSE (ZLIB_FOUND) - IF (ZLIB_FIND_REQUIRED) - MESSAGE(STATUS "Looked for Z libraries named ${ZLIBS_NAMES}.") - MESSAGE(FATAL_ERROR "Could NOT find z library") - ENDIF (ZLIB_FIND_REQUIRED) -ENDIF (ZLIB_FOUND) - -MARK_AS_ADVANCED( - ZLIB_LIBRARY - ZLIB_INCLUDE_DIR - ) -- cgit v1.2.1 From 79e98ba6c22e9e1dd051c4c9238363d98a73c6f6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 15 Sep 2006 21:49:17 +0000 Subject: readd -DQT_NO_STL for much faster compile times you can use REMOVE_DEFINITIONS(-DQT_NO_STL) in your project if you don't want it there Alex svn path=/trunk/KDE/kdelibs/; revision=584948 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 82a7ae3f..7ff65225 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -719,7 +719,7 @@ endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) if (NOT _kde4_uninstall_rule_created) set(_kde4_uninstall_rule_created TRUE) -- cgit v1.2.1 From 4b4b7758ca3bac85fcbe8722cbd028fd78b26cca Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 15 Sep 2006 22:01:43 +0000 Subject: -use EXECUTE_PROCESS() instead of EXEC_PROGRAM() -also check for rubylibdir Alex CCMAIL: ewilligh@uni-koeln.de svn path=/trunk/KDE/kdelibs/; revision=584954 --- modules/FindRUBY.cmake | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 6ac3c291..af720772 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -25,12 +25,22 @@ endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) FIND_PROGRAM(RUBY_EXECUTABLE NAMES ruby ruby1.8 ruby18 ) -EXEC_PROGRAM(${RUBY_EXECUTABLE} ARGS -r rbconfig -e 'puts Config::CONFIG[\"archdir\"]' +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['archdir']" OUTPUT_VARIABLE RUBY_ARCH_DIR) -EXEC_PROGRAM(${RUBY_EXECUTABLE} ARGS -r rbconfig -e 'puts Config::CONFIG["libdir"]' + +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['libdir']" OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH) +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['rubylibdir']" + OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH) + +# remove the new lines from the output by replacing them with empty strings +STRING(REPLACE "\n" "" RUBY_ARCH_DIR "${RUBY_ARCH_DIR}") +STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}") +STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}") + + FIND_PATH(RUBY_INCLUDE_PATH NAMES ruby.h PATHS -- cgit v1.2.1 From 956caed936ea9355842b3108312855304268aaea Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 16 Sep 2006 08:32:54 +0000 Subject: Now it's kde4-config svn path=/trunk/KDE/kdelibs/; revision=585068 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7ff65225..4464503d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -320,7 +320,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) else (KDEVERSION) - message(FATAL_ERROR "Couldn't parse KDE version string from the kde-config output:\n${kdeconfig_output}") + message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") endif (KDEVERSION) -- cgit v1.2.1 From ca67f6e9be1ac80d9ff5daa0eaa7532a4d3c69bf Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 18 Sep 2006 06:44:11 +0000 Subject: Create *_final_cpp_* file into build directory and not source directory svn path=/trunk/KDE/kdelibs/; revision=585883 --- modules/KDE4Macros.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0c327767..84057935 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -455,8 +455,8 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) - add_library(${_target_NAME} MODULE ${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) endif (KDE4_ENABLE_FINAL) @@ -541,8 +541,8 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ) @@ -582,8 +582,8 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endif (_uninst) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp ${_c_files} ${_SRCS}) - add_executable(${_target_NAME} ${_add_executable_param} ${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files} ${_SRCS}) + add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS} ) endif (KDE4_ENABLE_FINAL) @@ -613,8 +613,8 @@ MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endif (${_lib_TYPE} STREQUAL "MODULE") if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) - add_library(${_target_NAME} ${_add_lib_param} ${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) add_library(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) endif (KDE4_ENABLE_FINAL) -- cgit v1.2.1 From d6fec2aedf2f5c05b1ddb047ba6f6ad5aa846342 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 Sep 2006 21:46:27 +0000 Subject: -now push and pop work not only one level, but multiple levels deep Alex svn path=/trunk/KDE/kdelibs/; revision=586160 --- modules/MacroPushRequiredVars.cmake | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/MacroPushRequiredVars.cmake b/modules/MacroPushRequiredVars.cmake index 2c8ec4e5..650b566e 100644 --- a/modules/MacroPushRequiredVars.cmake +++ b/modules/MacroPushRequiredVars.cmake @@ -17,16 +17,31 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. MACRO(MACRO_PUSH_REQUIRED_VARS) - SET(_CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) - SET(_CMAKE_REQUIRED_DEFINITIONS_SAVE ${CMAKE_REQUIRED_DEFINITIONS}) - SET(_CMAKE_REQUIRED_LIBRARIES_SAVE ${CMAKE_REQUIRED_LIBRARIES}) - SET(_CMAKE_REQUIRED_FLAGS_SAVE ${CMAKE_REQUIRED_FLAGS}) + + IF(NOT DEFINED _PUSH_REQUIRED_VARS_COUNTER) + SET(_PUSH_REQUIRED_VARS_COUNTER 0) + ENDIF(NOT DEFINED _PUSH_REQUIRED_VARS_COUNTER) + + MATH(EXPR _PUSH_REQUIRED_VARS_COUNTER "${_PUSH_REQUIRED_VARS_COUNTER}+1") + + SET(_CMAKE_REQUIRED_INCLUDES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_INCLUDES}) + SET(_CMAKE_REQUIRED_DEFINITIONS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_DEFINITIONS}) + SET(_CMAKE_REQUIRED_LIBRARIES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_LIBRARIES}) + SET(_CMAKE_REQUIRED_FLAGS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER} ${CMAKE_REQUIRED_FLAGS}) ENDMACRO(MACRO_PUSH_REQUIRED_VARS) MACRO(MACRO_POP_REQUIRED_VARS) - SET(CMAKE_REQUIRED_INCLUDES ${_CMAKE_REQUIRED_INCLUDES_SAVE}) - SET(CMAKE_REQUIRED_DEFINITIONS ${_CMAKE_REQUIRED_DEFINITIONS_SAVE}) - SET(CMAKE_REQUIRED_LIBRARIES ${_CMAKE_REQUIRED_LIBRARIES_SAVE}) - SET(CMAKE_REQUIRED_FLAGS ${_CMAKE_REQUIRED_FLAGS_SAVE}) + +# don't pop more than we pushed + IF("${_PUSH_REQUIRED_VARS_COUNTER}" GREATER "0") + + SET(CMAKE_REQUIRED_INCLUDES ${_CMAKE_REQUIRED_INCLUDES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) + SET(CMAKE_REQUIRED_DEFINITIONS ${_CMAKE_REQUIRED_DEFINITIONS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) + SET(CMAKE_REQUIRED_LIBRARIES ${_CMAKE_REQUIRED_LIBRARIES_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) + SET(CMAKE_REQUIRED_FLAGS ${_CMAKE_REQUIRED_FLAGS_SAVE_${_PUSH_REQUIRED_VARS_COUNTER}}) + + MATH(EXPR _PUSH_REQUIRED_VARS_COUNTER "${_PUSH_REQUIRED_VARS_COUNTER}-1") + ENDIF("${_PUSH_REQUIRED_VARS_COUNTER}" GREATER "0") + ENDMACRO(MACRO_POP_REQUIRED_VARS) -- cgit v1.2.1 From d479ac301a64192e91d46a8660a4d1d55829c975 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 Sep 2006 21:53:14 +0000 Subject: minor comments change Alex svn path=/trunk/KDE/kdelibs/; revision=586163 --- modules/CheckCXXCompilerFlag.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/CheckCXXCompilerFlag.cmake b/modules/CheckCXXCompilerFlag.cmake index 686533de..43ea9a64 100644 --- a/modules/CheckCXXCompilerFlag.cmake +++ b/modules/CheckCXXCompilerFlag.cmake @@ -1,9 +1,9 @@ -# - Check whether the compiler supports a given flag. +# - Check whether the CXX compiler supports a given flag. # CHECK_CXX_COMPILER_FLAG(FLAG VARIABLE) # # FLAG - the compiler flag # VARIABLE - variable to store the result -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. -- cgit v1.2.1 From a044c4815efc9c5e069e14a251b9cc8200df8c12 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 Sep 2006 22:04:32 +0000 Subject: -CheckCXXCompilerFlag.cmake can be removed once we require cmake 2.4.4 or later Alex svn path=/trunk/KDE/kdelibs/; revision=586171 --- modules/CMakeLists.txt | 3 +++ modules/CheckPointerMember.cmake | 2 +- modules/CheckStructMember.cmake | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 95a053df..a3fe1dd2 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -21,6 +21,9 @@ set(FILES_TO_REMOVE ${module_install_dir}/kde3init_dummy.cpp.in ) +# can be removed once we require cmake 2.4.4 or newer: +# CheckCXXCompilerFlag.cmake + install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") diff --git a/modules/CheckPointerMember.cmake b/modules/CheckPointerMember.cmake index f34bfc91..b6ea5441 100644 --- a/modules/CheckPointerMember.cmake +++ b/modules/CheckPointerMember.cmake @@ -12,7 +12,7 @@ # CMAKE_REQUIRED_FLAGS = string of compile command line flags # CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) # CMAKE_REQUIRED_INCLUDES = list of include directories -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/CheckStructMember.cmake b/modules/CheckStructMember.cmake index 739e8cee..eeb1b65c 100644 --- a/modules/CheckStructMember.cmake +++ b/modules/CheckStructMember.cmake @@ -12,7 +12,7 @@ # CMAKE_REQUIRED_FLAGS = string of compile command line flags # CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) # CMAKE_REQUIRED_INCLUDES = list of include directories -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. -- cgit v1.2.1 From 1511cad3ffbbb7548a6fa9662aac13620facd5cc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 19 Sep 2006 20:00:35 +0000 Subject: prepare for merging to cmake Alex svn path=/trunk/KDE/kdelibs/; revision=586500 --- modules/FindASPELL.cmake | 53 +++++++++----------- modules/FindBZip2.cmake | 66 +++++++++++-------------- modules/FindGIF.cmake | 49 ++++++++---------- modules/FindHSPELL.cmake | 55 ++++++++++----------- modules/FindJasper.cmake | 57 ++++++++++----------- modules/FindLibXml2.cmake | 85 ++++++++++++++++---------------- modules/FindLibXslt.cmake | 71 +++++++++++++------------- modules/FindOpenSSL.cmake | 123 +++++++++++++++++++++------------------------- 8 files changed, 254 insertions(+), 305 deletions(-) (limited to 'modules') diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake index 67ca19a3..978407d6 100644 --- a/modules/FindASPELL.cmake +++ b/modules/FindASPELL.cmake @@ -5,41 +5,36 @@ # ASPELL_INCLUDE_DIR - the ASPELL include directory # ASPELL_LIBRARIES - The libraries needed to use ASPELL # ASPELL_DEFINITIONS - Compiler switches required for using ASPELL -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) +IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) # Already in cache, be silent - set(ASPELL_FIND_QUIETLY TRUE) -endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - -FIND_PATH(ASPELL_INCLUDE_DIR aspell.h - /usr/include - /usr/local/include -) - -FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15 - PATHS - /usr/lib - /usr/local/lib -) - -if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - set(ASPELL_FOUND TRUE) -endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - -if (ASPELL_FOUND) - if (NOT ASPELL_FIND_QUIETLY) - message(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") - endif (NOT ASPELL_FIND_QUIETLY) -else (ASPELL_FOUND) - if (ASPELL_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find ASPELL") - endif (ASPELL_FIND_REQUIRED) -endif (ASPELL_FOUND) + SET(ASPELL_FIND_QUIETLY TRUE) +ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + +FIND_PATH(ASPELL_INCLUDE_DIR aspell.h ) + +FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15) + +IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + SET(ASPELL_FOUND TRUE) +ELSE (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + SET(ASPELL_FOUND FALSE) +ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + +IF (ASPELL_FOUND) + IF (NOT ASPELL_FIND_QUIETLY) + MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") + ENDIF (NOT ASPELL_FIND_QUIETLY) +ELSE (ASPELL_FOUND) + IF (ASPELL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find ASPELL") + ENDIF (ASPELL_FIND_REQUIRED) +ENDIF (ASPELL_FOUND) MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index 492c3054..c8464249 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -6,48 +6,38 @@ # BZIP2_LIBRARIES - Link these to use BZip2 # BZIP2_DEFINITIONS - Compiler switches required for using BZip2 # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + SET(BZip2_FIND_QUIETLY TRUE) +ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + +FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h ) + +FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 ) + +IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + SET(BZIP2_FOUND TRUE) + INCLUDE(CheckLibraryExists) + CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) +ELSE (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + SET(BZIP2_FOUND FALSE) +ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + +IF (BZIP2_FOUND) + IF (NOT BZip2_FIND_QUIETLY) + MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") + ENDIF (NOT BZip2_FIND_QUIETLY) +ELSE (BZIP2_FOUND) + IF (BZip2_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find BZip2") + ENDIF (BZip2_FIND_REQUIRED) +ENDIF (BZIP2_FOUND) + +MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) -if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - - # in cache already, avoid doing the CHECK_LIBRARY_EXISTS again. - SET(BZIP2_FOUND TRUE) - -else (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - - FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h - /usr/include - /usr/local/include - ) - - FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 - PATHS - /usr/lib - /usr/local/lib - ) - - if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - set(BZIP2_FOUND TRUE) - INCLUDE(CheckLibraryExists) - CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) - endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - - if (BZIP2_FOUND) - if (NOT BZip2_FIND_QUIETLY) - message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - endif (NOT BZip2_FIND_QUIETLY) - else (BZIP2_FOUND) - if (BZip2_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find BZip2") - endif (BZip2_FIND_REQUIRED) - endif (BZIP2_FOUND) - - MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) - -endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index 14efd818..a46194ab 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -5,42 +5,35 @@ # GIF_INCLUDE_DIR - the GIF include directory # GIF_LIBRARIES - Libraries needed to use GIF # GIF_DEFINITIONS - Compiler switches required for using GIF -# + # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. -if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) +IF (GIF_INCLUDE_DIR AND GIF_LIBRARIES) # Already in cache, be silent - set(GIF_FIND_QUIETLY TRUE) -endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + SET(GIF_FIND_QUIETLY TRUE) +ENDIF (GIF_INCLUDE_DIR AND GIF_LIBRARIES) -FIND_PATH(GIF_INCLUDE_DIR gif_lib.h - /usr/include - /usr/local/include -) +FIND_PATH(GIF_INCLUDE_DIR gif_lib.h) -set(POTENTIAL_GIF_LIBS gif libgif ungif libungif giflib) -FIND_LIBRARY(GIF_LIBRARIES NAMES ${POTENTIAL_GIF_LIBS} - PATHS - /usr/lib - /usr/local/lib -) +SET(POTENTIAL_GIF_LIBS gif libgif ungif libungif giflib) +FIND_LIBRARY(GIF_LIBRARIES NAMES ${POTENTIAL_GIF_LIBS}) -if (GIF_INCLUDE_DIR AND GIF_LIBRARIES) - set(CMAKE_REQUIRED_INCLUDES "${GIF_INCLUDE_DIR}" "${CMAKE_REQUIRED_INCLUDES}") +IF (GIF_INCLUDE_DIR AND GIF_LIBRARIES) + SET(CMAKE_REQUIRED_INCLUDES "${GIF_INCLUDE_DIR}" "${CMAKE_REQUIRED_INCLUDES}") CHECK_STRUCT_MEMBER(GifFileType UserData gif_lib.h GIF_FOUND) -endif (GIF_INCLUDE_DIR AND GIF_LIBRARIES) +ENDIF (GIF_INCLUDE_DIR AND GIF_LIBRARIES) -if (GIF_FOUND) - if (NOT GIF_FIND_QUIETLY) - message(STATUS "Found GIF: ${GIF_LIBRARIES}") - endif (NOT GIF_FIND_QUIETLY) -else (GIF_FOUND) - if (GIF_FIND_REQUIRED) - message(STATUS "Looked for GIF libraries named ${POTENTIAL_GIF_LIBS}.") - message(STATUS "Found no acceptable GIF library. This is fatal.") - message(FATAL_ERROR "Could NOT find GIF") - endif (GIF_FIND_REQUIRED) -endif (GIF_FOUND) +IF (GIF_FOUND) + IF (NOT GIF_FIND_QUIETLY) + MESSAGE(STATUS "Found GIF: ${GIF_LIBRARIES}") + ENDIF (NOT GIF_FIND_QUIETLY) +ELSE (GIF_FOUND) + IF (GIF_FIND_REQUIRED) + MESSAGE(STATUS "Looked for GIF libraries named ${POTENTIAL_GIF_LIBS}.") + MESSAGE(STATUS "Found no acceptable GIF library. This is fatal.") + MESSAGE(FATAL_ERROR "Could NOT find GIF") + ENDIF (GIF_FIND_REQUIRED) +ENDIF (GIF_FOUND) MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake index 08a5792c..a2b93a77 100644 --- a/modules/FindHSPELL.cmake +++ b/modules/FindHSPELL.cmake @@ -5,43 +5,38 @@ # HSPELL_INCLUDE_DIR - the HSPELL include directory # HSPELL_LIBRARIES - The libraries needed to use HSPELL # HSPELL_DEFINITIONS - Compiler switches required for using HSPELL -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) +IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) # Already in cache, be silent - set(HSPELL_FIND_QUIETLY TRUE) -endif (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - - -FIND_PATH(HSPELL_INCLUDE_DIR hspell.h - /usr/include - /usr/local/include -) - -FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell - PATHS - /usr/lib - /usr/local/lib -) - -if (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - set(HSPELL_FOUND TRUE) -endif (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - -if (HSPELL_FOUND) - if (NOT HSPELL_FIND_QUIETLY) - message(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") - endif (NOT HSPELL_FIND_QUIETLY) -else (HSPELL_FOUND) - if (HSPELL_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find HSPELL") - endif (HSPELL_FIND_REQUIRED) -endif (HSPELL_FOUND) + SET(HSPELL_FIND_QUIETLY TRUE) +ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + + +FIND_PATH(HSPELL_INCLUDE_DIR hspell.h ) + +FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell ) + +IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + SET(HSPELL_FOUND TRUE) +ELSE (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + SET(HSPELL_FOUND FALSE) +ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + +IF (HSPELL_FOUND) + IF (NOT HSPELL_FIND_QUIETLY) + MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") + ENDIF (NOT HSPELL_FIND_QUIETLY) +ELSE (HSPELL_FOUND) + IF (HSPELL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find HSPELL") + ENDIF (HSPELL_FIND_REQUIRED) +ENDIF (HSPELL_FOUND) MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake index 99b52a77..ac284c37 100644 --- a/modules/FindJasper.cmake +++ b/modules/FindJasper.cmake @@ -4,7 +4,7 @@ # JASPER_FOUND - system has Jasper # JASPER_INCLUDE_DIR - the Jasper include directory # JASPER_LIBRARIES - The libraries needed to use Jasper -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -13,36 +13,31 @@ FIND_PACKAGE(JPEG) -if (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) +IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) # Already in cache, be silent - set(Jasper_FIND_QUIETLY TRUE) -endif (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) - -FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h - /usr/include - /usr/local/include -) - -FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper - PATHS - /usr/lib - /usr/local/lib -) - -if (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - set(JASPER_FOUND TRUE) - set(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) -endif (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - - -if (JASPER_FOUND) - if (NOT Jasper_FIND_QUIETLY) - message(STATUS "Found jasper: ${JASPER_LIBRARIES}") - endif (NOT Jasper_FIND_QUIETLY) -else (JASPER_FOUND) - if (Jasper_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find jasper library") - endif (Jasper_FIND_REQUIRED) -endif (JASPER_FOUND) + SET(Jasper_FIND_QUIETLY TRUE) +ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) + +FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h) + +FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper) + +IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) + SET(JASPER_FOUND TRUE) + SET(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) +ELSE (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) + SET(JASPER_FOUND FALSE) +ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) + + +IF (JASPER_FOUND) + IF (NOT Jasper_FIND_QUIETLY) + MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARIES}") + ENDIF (NOT Jasper_FIND_QUIETLY) +ELSE (JASPER_FOUND) + IF (Jasper_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find jasper library") + ENDIF (Jasper_FIND_REQUIRED) +ENDIF (JASPER_FOUND) MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES JASPER_LIBRARY) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index a1fb8b42..b45d7293 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -8,53 +8,52 @@ # # Copyright (c) 2006, Alexander Neundorf # This code is available under the BSD license, see licenses/BSD for details. -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - - # in cache already - SET(LIBXML2_FOUND TRUE) - -else (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - - IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) - set(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) - ENDIF (NOT WIN32) - - FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h - PATHS - ${_LibXml2IncDir} - PATH_SUFFIXES libxml2 - ) - - FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 - PATHS - ${_LibXml2LinkDir} - ) - - if (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - set(LIBXML2_FOUND TRUE) - endif (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - - if (LIBXML2_FOUND) - if (NOT LibXml2_FIND_QUIETLY) - message(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") - endif (NOT LibXml2_FIND_QUIETLY) - else (LIBXML2_FOUND) - if (LibXml2_FIND_REQUIRED) - message(SEND_ERROR "Could NOT find LibXml2") - endif (LibXml2_FIND_REQUIRED) - endif (LIBXML2_FOUND) - - MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) +IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + # in cache already + SET(LibXml2_FIND_QUIETLY TRUE) +ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) + SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) +ENDIF (NOT WIN32) + +FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h + PATHS + ${_LibXml2IncDir} + PATH_SUFFIXES libxml2 + ) + +FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 + PATHS + ${_LibXml2LinkDir} + ) + +IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + SET(LIBXML2_FOUND TRUE) +ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + SET(LIBXML2_FOUND FALSE) +ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + +IF (LIBXML2_FOUND) + IF (NOT LibXml2_FIND_QUIETLY) + MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") + ENDIF (NOT LibXml2_FIND_QUIETLY) +ELSE (LIBXML2_FOUND) + IF (LibXml2_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could NOT find LibXml2") + ENDIF (LibXml2_FIND_REQUIRED) +ENDIF (LIBXML2_FOUND) + +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) -endif (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 6f116f5d..fcebd0c1 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -5,55 +5,50 @@ # LIBXSLT_INCLUDE_DIR - the LibXslt include directory # LIBXSLT_LIBRARIES - Link these to LibXslt # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - - # in cache already - SET(LIBXSLT_FOUND TRUE) +IF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + # in cache already + SET(LibXslt_FIND_QUIETLY TRUE) +ENDIF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) -else (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) + SET(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) +ENDIF (NOT WIN32) - IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) - set(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) - ENDIF (NOT WIN32) - - FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h +FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h ${_LibXsltIncDir} - /usr/include - /usr/local/include ) - - FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt + +FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt PATHS ${_LibXsltLinkDir} - /usr/lib - /usr/local/lib ) + +IF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + SET(LIBXSLT_FOUND TRUE) +ELSE (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) + SET(LIBXSLT_FOUND FALSE) +ENDIF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - set(LIBXSLT_FOUND TRUE) - endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - - if (LIBXSLT_FOUND) - if (NOT LibXslt_FIND_QUIETLY) - message(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") - endif (NOT LibXslt_FIND_QUIETLY) - else (LIBXSLT_FOUND) - if (LibXslt_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find LibXslt") - endif (LibXslt_FIND_REQUIRED) - endif (LIBXSLT_FOUND) - - MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) - -endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) +IF (LIBXSLT_FOUND) + IF (NOT LibXslt_FIND_QUIETLY) + MESSAGE(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") + ENDIF (NOT LibXslt_FIND_QUIETLY) +ELSE (LIBXSLT_FOUND) + IF (LibXslt_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find LibXslt") + ENDIF (LibXslt_FIND_REQUIRED) +ENDIF (LIBXSLT_FOUND) + +MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) + diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index f4bd85bd..0172df83 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -4,80 +4,67 @@ # OPENSSL_FOUND - system has the OpenSSL library # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if(OPENSSL_LIBRARIES) - SET(LIB_FOUND 1) -endif(OPENSSL_LIBRARIES) +IF(OPENSSL_LIBRARIES) + SET(OpenSSL_FIND_QUIETLY TRUE) +ENDIF(OPENSSL_LIBRARIES) -if(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) +IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) SET(LIB_FOUND 1) -endif(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - -if (OPENSSL_INCLUDE_DIR AND LIB_FOUND) - - # in cache already - SET(OPENSSL_FOUND TRUE) - -else (OPENSSL_INCLUDE_DIR AND LIB_FOUND) - - FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h - /usr/include/ - /usr/local/include/ - ) - - if(WIN32 AND MSVC) - # /MD and /MDd are the standard values - if somone wants to use - # others, the libnames have to change here too - # use also ssl and ssleay32 in debug as fallback for openssl < 0.9.8b - - FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd ssl ssleay32) - FIND_LIBRARY(SSL_EAY_RELEASE NAMES ssleay32MD ssl ssleay32) - - IF(MSVC_IDE) - IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - SET(OPENSSL_LIBRARIES optimized ${SSL_EAY_RELEASE} debug ${SSL_EAY_DEBUG}) - ELSE(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl") - ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - ELSE(MSVC_IDE) - STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_LIBRARIES ${SSL_EAY_DEBUG}) - ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_LIBRARIES ${SSL_EAY_RELEASE}) - ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - ENDIF(MSVC_IDE) - MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE) - else(WIN32 AND MSVC) - - FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD - PATHS - /usr/lib - /usr/local/lib - ) - - endif(WIN32 AND MSVC) - - if (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - set(OPENSSL_FOUND TRUE) - endif (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - - if (OPENSSL_FOUND) - if (NOT OpenSSL_FIND_QUIETLY) - message(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") - endif (NOT OpenSSL_FIND_QUIETLY) - else (OPENSSL_FOUND) - if (OpenSSL_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find OpenSSL") - endif (OpenSSL_FIND_REQUIRED) - endif (OPENSSL_FOUND) - - MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) +ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + +FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h ) + +IF(WIN32 AND MSVC) + # /MD and /MDd are the standard values - if somone wants to use + # others, the libnames have to change here too + # use also ssl and ssleay32 in debug as fallback for openssl < 0.9.8b + + FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd ssl ssleay32) + FIND_LIBRARY(SSL_EAY_RELEASE NAMES ssleay32MD ssl ssleay32) + + IF(MSVC_IDE) + IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + SET(OPENSSL_LIBRARIES optimized ${SSL_EAY_RELEASE} debug ${SSL_EAY_DEBUG}) + ELSE(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl") + ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + ELSE(MSVC_IDE) + STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_LIBRARIES ${SSL_EAY_DEBUG}) + ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_LIBRARIES ${SSL_EAY_RELEASE}) + ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + ENDIF(MSVC_IDE) + MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE) +ELSE(WIN32 AND MSVC) + + FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD ) + +ENDIF(WIN32 AND MSVC) + +IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + SET(OPENSSL_FOUND TRUE) +ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + SET(OPENSSL_FOUND FALSE) +ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + +IF (OPENSSL_FOUND) + IF (NOT OpenSSL_FIND_QUIETLY) + MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") + ENDIF (NOT OpenSSL_FIND_QUIETLY) +ELSE (OPENSSL_FOUND) + IF (OpenSSL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find OpenSSL") + ENDIF (OpenSSL_FIND_REQUIRED) +ENDIF (OPENSSL_FOUND) + +MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) -endif (OPENSSL_INCLUDE_DIR AND LIB_FOUND) -- cgit v1.2.1 From 2283503733c3a9d7507e35cbe647f4fd549d0016 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 19 Sep 2006 20:12:46 +0000 Subject: add comment for the files merged to cmake Alex svn path=/trunk/KDE/kdelibs/; revision=586504 --- modules/CMakeLists.txt | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index a3fe1dd2..cae69664 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -23,6 +23,14 @@ set(FILES_TO_REMOVE # can be removed once we require cmake 2.4.4 or newer: # CheckCXXCompilerFlag.cmake +# FindBZip2.cmake +# FindJasper.cmake +# FindLibXml2.cmake +# FindLibXslt.cmake +# FindOpenSSL.cmake +# FindASPELL.cmake +# FindHSPELL.cmake + install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) -- cgit v1.2.1 From cdbff10afe209678df0315eba3ce3140c69b3792 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 21 Sep 2006 12:36:24 +0000 Subject: Move it into kdelibs (avoid to duplicate it into kdevelop and kdewebdev) svn path=/trunk/KDE/kdelibs/; revision=587068 --- modules/KDevelopMacros.cmake | 74 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 modules/KDevelopMacros.cmake (limited to 'modules') diff --git a/modules/KDevelopMacros.cmake b/modules/KDevelopMacros.cmake new file mode 100644 index 00000000..228a85e8 --- /dev/null +++ b/modules/KDevelopMacros.cmake @@ -0,0 +1,74 @@ + +macro(kdevelop_add_app_templates _templateNames) + foreach(_templateName ${ARGN}) + + get_filename_component(_tmp_file ${_templateName} ABSOLUTE) + get_filename_component(_baseName ${_tmp_file} NAME_WE) + set(_template ${CMAKE_CURRENT_BINARY_DIR}/${_baseName}.tar.bz2) + + add_custom_target(${_baseName} ALL DEPENDS ${_template}) + + file(GLOB _files ${CMAKE_CURRENT_SOURCE_DIR}/${_templateName}/*) + set(_deps) + foreach(_file ${_files}) + get_filename_component(_fileName ${_file} NAME) + string(COMPARE NOTEQUAL ${_fileName} ${_templateName}.kdevtemplate _v1) + string(COMPARE NOTEQUAL ${_fileName} ${_templateName}.png _v2) + string(COMPARE NOTEQUAL ${_fileName} .kdev_ignore _v3) + string(COMPARE NOTEQUAL ${_fileName} Makefile.am _v4) + string(SUBSTRING ${_fileName} 0 4 _svn) + string(COMPARE NOTEQUAL ${_svn} .svn _v5) + if ( ${_v1} AND ${_v2} AND ${_v3} AND ${_v4} AND ${_v5} ) + set(_deps ${_deps} ${_file}) + endif ( ${_v1} AND ${_v2} AND ${_v3} AND ${_v4} AND ${_v5} ) + endforeach(_file) + + add_custom_command(OUTPUT ${_template} + COMMAND tar ARGS -c -C ${CMAKE_CURRENT_SOURCE_DIR}/${_templateName} + --exclude ${_templateName}.kdevtemplate --exclude ${_templateName}.png + --exclude .kdev_ignore --exclude .svn --exclude Makefile.am + -j -f ${_template} . +# DEPENDS ${_deps} + ) + +install( FILES ${_templateName}/${_templateName}.kdevtemplate DESTINATION ${DATA_INSTALL_DIR}/kdevappwizard/templates ) +install( FILES ${_templateName}/${_templateName}.png DESTINATION ${DATA_INSTALL_DIR}/kdevappwizard ) +install( FILES ${_template} DESTINATION ${DATA_INSTALL_DIR}/kdevappwizard ) + macro_additional_clean_files(${_template}) + + endforeach(_templateName) +endmacro(kdevelop_add_app_templates) + + + +macro(kdevelop_add_test) + + qt4_get_moc_inc_dirs(_moc_INCS) + + foreach(_source ${ARGN}) + get_filename_component(_abs_file ${_source} ABSOLUTE) + get_filename_component(_baseName ${_abs_file} NAME_WE) + + file(READ ${_abs_file} _contents) + string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + + if(_match) + foreach (_current_MOC_INC ${_match}) + + string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + add_custom_command( + OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${CMAKE_CURRENT_SOURCE_DIR}/${_source} -o ${_moc} + DEPENDS ${_abs_file} + ) + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + macro_additional_clean_files(${_moc}) + + endforeach (_current_MOC_INC) + endif(_match) + endforeach(_source) + +endmacro(kdevelop_add_test _sources) + -- cgit v1.2.1 From 2e3652e0536bdd82fe17bafb24074d5cc0bfffd6 Mon Sep 17 00:00:00 2001 From: Matt Rogers Date: Fri, 22 Sep 2006 03:10:22 +0000 Subject: Revert Laurent's commit that moves KDevelopMacros.cmake to kdelibs and install the KDevelopMacros.cmake file from KDevelop's build system so that kdewebdev can use it. svn path=/trunk/KDE/kdelibs/; revision=587249 --- modules/KDevelopMacros.cmake | 74 -------------------------------------------- 1 file changed, 74 deletions(-) delete mode 100644 modules/KDevelopMacros.cmake (limited to 'modules') diff --git a/modules/KDevelopMacros.cmake b/modules/KDevelopMacros.cmake deleted file mode 100644 index 228a85e8..00000000 --- a/modules/KDevelopMacros.cmake +++ /dev/null @@ -1,74 +0,0 @@ - -macro(kdevelop_add_app_templates _templateNames) - foreach(_templateName ${ARGN}) - - get_filename_component(_tmp_file ${_templateName} ABSOLUTE) - get_filename_component(_baseName ${_tmp_file} NAME_WE) - set(_template ${CMAKE_CURRENT_BINARY_DIR}/${_baseName}.tar.bz2) - - add_custom_target(${_baseName} ALL DEPENDS ${_template}) - - file(GLOB _files ${CMAKE_CURRENT_SOURCE_DIR}/${_templateName}/*) - set(_deps) - foreach(_file ${_files}) - get_filename_component(_fileName ${_file} NAME) - string(COMPARE NOTEQUAL ${_fileName} ${_templateName}.kdevtemplate _v1) - string(COMPARE NOTEQUAL ${_fileName} ${_templateName}.png _v2) - string(COMPARE NOTEQUAL ${_fileName} .kdev_ignore _v3) - string(COMPARE NOTEQUAL ${_fileName} Makefile.am _v4) - string(SUBSTRING ${_fileName} 0 4 _svn) - string(COMPARE NOTEQUAL ${_svn} .svn _v5) - if ( ${_v1} AND ${_v2} AND ${_v3} AND ${_v4} AND ${_v5} ) - set(_deps ${_deps} ${_file}) - endif ( ${_v1} AND ${_v2} AND ${_v3} AND ${_v4} AND ${_v5} ) - endforeach(_file) - - add_custom_command(OUTPUT ${_template} - COMMAND tar ARGS -c -C ${CMAKE_CURRENT_SOURCE_DIR}/${_templateName} - --exclude ${_templateName}.kdevtemplate --exclude ${_templateName}.png - --exclude .kdev_ignore --exclude .svn --exclude Makefile.am - -j -f ${_template} . -# DEPENDS ${_deps} - ) - -install( FILES ${_templateName}/${_templateName}.kdevtemplate DESTINATION ${DATA_INSTALL_DIR}/kdevappwizard/templates ) -install( FILES ${_templateName}/${_templateName}.png DESTINATION ${DATA_INSTALL_DIR}/kdevappwizard ) -install( FILES ${_template} DESTINATION ${DATA_INSTALL_DIR}/kdevappwizard ) - macro_additional_clean_files(${_template}) - - endforeach(_templateName) -endmacro(kdevelop_add_app_templates) - - - -macro(kdevelop_add_test) - - qt4_get_moc_inc_dirs(_moc_INCS) - - foreach(_source ${ARGN}) - get_filename_component(_abs_file ${_source} ABSOLUTE) - get_filename_component(_baseName ${_abs_file} NAME_WE) - - file(READ ${_abs_file} _contents) - string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - - if(_match) - foreach (_current_MOC_INC ${_match}) - - string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - add_custom_command( - OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_moc_INCS} ${CMAKE_CURRENT_SOURCE_DIR}/${_source} -o ${_moc} - DEPENDS ${_abs_file} - ) - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) - macro_additional_clean_files(${_moc}) - - endforeach (_current_MOC_INC) - endif(_match) - endforeach(_source) - -endmacro(kdevelop_add_test _sources) - -- cgit v1.2.1 From 48ffad86c45bd5a1dae0a8625a8e90b2f529f421 Mon Sep 17 00:00:00 2001 From: Matt Rogers Date: Fri, 22 Sep 2006 03:41:57 +0000 Subject: add definitions for threadweaver svn path=/trunk/KDE/kdelibs/; revision=587253 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4464503d..24a69b9f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -38,6 +38,7 @@ # KDE4_PHONONCORE_LIBRARY - the phononcore library # KDE4_PHONONUI_LIBRARY - the phononui library # KDE4_KDEFX_LIBRARY - the kdefx library +# KDE4_THREADWEAVER_LIBRARY- the threadweaver library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -60,6 +61,7 @@ # KDE4_PHONONCORE_LIBS - the phononcore library and all depending librairies # KDE4_PHONONUI_LIBS - the phononui library and all depending librairies # KDE4_KDEFX_LIBS - the kdefx library and all depending librairies +# KDE4_THREADWEAVER_LIBS - the threadweaver library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -383,6 +385,8 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_PHONONUI_LIBRARIES ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) + find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_THREADWEAVER_LIBRARIES $(threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From aad1f6ed7b106fb9b7d0174c8b8bd94cd1cdf354 Mon Sep 17 00:00:00 2001 From: Per Winkvist Date: Fri, 22 Sep 2006 05:28:33 +0000 Subject: SVN_SILENT: fix var svn path=/trunk/KDE/kdelibs/; revision=587265 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 24a69b9f..a9ebef63 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -386,7 +386,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_PHONONUI_LIBRARIES ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_THREADWEAVER_LIBRARIES $(threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) + set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From cf6bbc642ab6d6f4877183bcc715f8aa1da5ea30 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 24 Sep 2006 13:15:25 +0000 Subject: This line is not necessary svn path=/trunk/KDE/kdelibs/; revision=587925 --- modules/FindTaglib.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index dc8bea36..2db6f79d 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -11,8 +11,6 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -#KDE_CHECK_HEADER(taglib/mpcfile.h, have_taglib_mpc=yes, have_taglib_mpc=no) - FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS /usr/bin /usr/local/bin -- cgit v1.2.1 From a42e1a32d04c5598067f69bddc6dc1211724f1dd Mon Sep 17 00:00:00 2001 From: Jakob Petsovits Date: Tue, 26 Sep 2006 16:29:17 +0000 Subject: improve docs (done by Alexander Neundorf on my laptop) svn path=/trunk/KDE/kdelibs/; revision=588684 --- modules/MacroEnsureVersion.cmake | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index 3ff1d72f..badb50db 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -1,6 +1,10 @@ # This macro compares version numbers of the form "x.y.z" -# MACRO_ENSURE_VERSION( ${FOO_MIN_VERSION} ${FOO_VERSION_FOUND} FOO_VERSION_OK) +# MACRO_ENSURE_VERSION( FOO_MIN_VERSION FOO_VERSION_FOUND FOO_VERSION_OK) # will set FOO_VERSIN_OK to true if FOO_VERSION_FOUND >= FOO_MIN_VERSION +# where both have to be in a 3-part-version format, leading and trailing +# text is ok, e.g. +# MACRO_ENSURE_VERSION( "2.5.31" "flex 2.5.4a" VERSION_OK) +# which means 2.5.31 is required and "flex 2.5.4a" is what was found on the system # Copyright (c) 2006, David Faure, # @@ -13,11 +17,11 @@ MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_major_vers "${requested_version}") STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_patch_vers "${requested_version}") - + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") - + # compute an overall version number which can be compared at once MATH(EXPR req_vers_num "${req_major_vers}*10000 + ${req_minor_vers}*100 + ${req_patch_vers}") MATH(EXPR found_vers_num "${found_major_vers}*10000 + ${found_minor_vers}*100 + ${found_patch_vers}") -- cgit v1.2.1 From 8b5224acc34f0417d9a22b16aeb9060886829916 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 27 Sep 2006 18:06:51 +0000 Subject: Add a new CMAKE_BUILD_TYPE called 'profile' for gcc on linux and apple If you use gcc and either linux or apple and use -DCMAKE_BUILD_TYPE=profile you have about the same configuration as debugfull but additionally gcc test coverage is enabled. This needs to be enabled when compiling and linking. I add this to enable creating nice test coverage graphs I have seen at http://venge.net/monotone svn path=/trunk/KDE/kdelibs/; revision=589181 --- modules/FindKDE4Internal.cmake | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a9ebef63..aec56bd8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -553,6 +553,12 @@ if (APPLE) #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") + # we profile... + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex # optimization flags are set below for the various build types set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") @@ -565,6 +571,11 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") + # we profile... + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) @@ -592,10 +603,12 @@ if (CMAKE_COMPILER_IS_GNUCXX) set(CMAKE_CXX_FLAGS_RELEASE "-O2") set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") set(CMAKE_C_FLAGS_RELEASE "-O2") set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") -- cgit v1.2.1 From b6914db0ecaf0555d6ba25e8f10b21e9cd31c80a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 28 Sep 2006 11:33:31 +0000 Subject: add some special logic so that changing CMAKE_INSTALL_PREFIX still changes all other install locations, as long as they haven't been set explicitely to some other location, as discussed with Volker Krause Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=589585 --- modules/FindKDE4Internal.cmake | 99 ++++++++++++++++++++++++++---------------- 1 file changed, 62 insertions(+), 37 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index aec56bd8..b9e3cdde 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -201,44 +201,69 @@ include (CheckCXXCompilerFlag) #add some KDE specific stuff # the following are directories where stuff will be installed to - set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) - set(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "Base directory for files which go to share/") - set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries") - - set(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" CACHE PATH "The install dir for executables (default prefix/bin)") - set(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" CACHE PATH "The install dir for system executables (default prefix/sbin)") - set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})") - - set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib/kde4/libexec)") - set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") - - set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The subdirectory to the header prefix") - set(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" CACHE PATH "The config file install dir") - set(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" CACHE PATH "The parent directory where applications can install their data") - set(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" CACHE PATH "The HTML install dir for documentation") - set(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" CACHE PATH "The icon install dir (default prefix/share/icons/)") - set(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" CACHE PATH "The install dir for kconfig files") - set(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" CACHE PATH "The install dir for translations") - set(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" CACHE PATH "The install dir for the mimetype desktop files") - set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" CACHE PATH "The install dir for service (desktop, protocol, ...) files") - set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" CACHE PATH "The install dir for servicestypes desktop files") - set(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" CACHE PATH "The install dir for sound files") - set(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" CACHE PATH "The install dir for templates (Create new file...)") - set(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" CACHE PATH "The install dir for wallpapers") - set(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" CACHE PATH "The kconf_update install dir") +set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) + + +# this macro implements some very special logic how to deal with the cache +# by default the various install locations inherit their value from theit "parent" variable +# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will +# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX +# this would work completely without using the cache. +# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into +# the cache, otherwise it will be forgotten on the next cmake run. +# Once a variable is in the cache, it doesn't depend on its "parent" variables +# anymore and you can only change it by editing it directly. +# this macro helps in this regard, because as long as you don't set one of the +# variables explicitely to some location, it will always calculate its value from its +# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. +# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location +# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. +macro(_SET_FANCY _var _value _comment) + if (NOT DEFINED ${_var}) + set(${_var} ${_value}) + else (NOT DEFINED ${_var}) + set(${_var} "${${_var}}" CACHE PATH "${_comment}") + endif (NOT DEFINED ${_var}) +endmacro(_SET_FANCY) + + +_set_fancy(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share "Base directory for files which go to share/") +_set_fancy(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} "Base directory for executables and libraries") + +_set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default prefix/bin)") +_set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default prefix/sbin)") +_set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})") + +_set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib/kde4/libexec)") +_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") + +_set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") +_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") +_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") +_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") +_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default prefix/share/icons/)") +_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") +_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") +_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") +_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" "The install dir for service (desktop, protocol, ...) files") +_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" "The install dir for servicestypes desktop files") +_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") +_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") +_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") +_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") # this one shouldn't be used anymore - set(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" CACHE PATH "Is this still used ?") - set(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" CACHE PATH "The install dir for autostart files") - - set(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" CACHE PATH "The XDG apps dir") - set(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" CACHE PATH "The XDG directory") - - set(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" CACHE PATH "The kde sysconfig install dir (default /etc)") - set(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" CACHE PATH "The kde man install dir (default prefix/man/)") - set(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" CACHE PATH "The kde info install dir (default prefix/info)") -# set(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") -# set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") -# +_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") +_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") + +_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" "The XDG apps dir") +_set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") + +_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") +_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default prefix/man/)") +_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default prefix/info)") +# _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") +# _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") + ################################# -- cgit v1.2.1 From 8bd7e5ecf5b27cfcf56e697230f772988955d0d9 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 28 Sep 2006 12:33:33 +0000 Subject: Necessary to test patch version Otherwise 2.5.4 is inferior to 2.5.31 In this function we calculate it as : 2.5.4: 2*1000+5*100+4 = 2504 2.5.31: 2*1000+5*100+31 = 2531 => it was supperior. Now I test last patch version and adapt it. svn path=/trunk/KDE/kdelibs/; revision=589662 --- modules/MacroEnsureVersion.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index badb50db..fee62c7f 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -22,6 +22,11 @@ MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") + # Necessary to multiply by 10 otherwise 2.5.4 is inferior to 2.5.31 + if( req_patch_vers GREATER "9" AND found_patch_vers LESS "10") + MATH(EXPR found_patch_vers "${found_patch_vers}*10") + endif(req_patch_vers GREATER "9" AND found_patch_vers LESS "10") + # compute an overall version number which can be compared at once MATH(EXPR req_vers_num "${req_major_vers}*10000 + ${req_minor_vers}*100 + ${req_patch_vers}") MATH(EXPR found_vers_num "${found_major_vers}*10000 + ${found_minor_vers}*100 + ${found_patch_vers}") -- cgit v1.2.1 From 1835e933571cdb11a16e1e3c8c6d946439d21d17 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 28 Sep 2006 13:22:29 +0000 Subject: Revert previous commit I made an error to understand how version label worked. svn path=/trunk/KDE/kdelibs/; revision=589688 --- modules/MacroEnsureVersion.cmake | 5 ----- 1 file changed, 5 deletions(-) (limited to 'modules') diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index fee62c7f..badb50db 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -22,11 +22,6 @@ MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") - # Necessary to multiply by 10 otherwise 2.5.4 is inferior to 2.5.31 - if( req_patch_vers GREATER "9" AND found_patch_vers LESS "10") - MATH(EXPR found_patch_vers "${found_patch_vers}*10") - endif(req_patch_vers GREATER "9" AND found_patch_vers LESS "10") - # compute an overall version number which can be compared at once MATH(EXPR req_vers_num "${req_major_vers}*10000 + ${req_minor_vers}*100 + ${req_patch_vers}") MATH(EXPR found_vers_num "${found_major_vers}*10000 + ${found_minor_vers}*100 + ${found_patch_vers}") -- cgit v1.2.1 From 3e0547ea2a57dcf96d319a6597903aec8628f437 Mon Sep 17 00:00:00 2001 From: Tobias Koenig Date: Fri, 29 Sep 2006 11:36:01 +0000 Subject: Add support for finding embedded version of MySql svn path=/trunk/KDE/kdelibs/; revision=590147 --- modules/FindMySQL.cmake | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index 426f11ed..dd50ed54 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -1,9 +1,11 @@ -# - Find MySQL +# - Find MySQL / MySQL Embedded # Find the MySQL includes and client library # This module defines # MYSQL_INCLUDE_DIR, where to find mysql.h # MYSQL_LIBRARIES, the libraries needed to use MySQL. +# MYSQL_EMBEDDED_LIBRARIES, the libraries needed to use MySQL Embedded. # MYSQL_FOUND, If false, do not try to use MySQL. +# MYSQL_EMBEDDED_FOUND, If false, do not try to use MySQL Embedded. # # Copyright (c) 2006, Jaroslaw Staniek, # @@ -22,6 +24,13 @@ find_library(MYSQL_LIBRARIES NAMES mysqlclient /usr/local/lib/mysql ) +find_library(MYSQL_EMBEDDED_LIBRARIES NAMES mysqld + PATHS + /usr/lib/mysql + /usr/local/lib/mysql + /opt/mysql/lib/mysql +) + if(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) set(MYSQL_FOUND TRUE) message(STATUS "Found MySQL: ${MYSQL_INCLUDE_DIR}, ${MYSQL_LIBRARIES}") @@ -30,5 +39,12 @@ else(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) message(STATUS "MySQL not found.") endif(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) -mark_as_advanced(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES) +if(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES) + set(MYSQL_EMBEDDED_FOUND TRUE) + message(STATUS "Found MySQL Embedded: ${MYSQL_INCLUDE_DIR}, ${MYSQL_EMBEDDED_LIBRARIES}") +else(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES) + set(MYSQL_EMBEDDED_FOUND FALSE) + message(STATUS "MySQL Embedded not found.") +endif(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES) +mark_as_advanced(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES MYSQL_EMBEDDED_LIBRARIES) -- cgit v1.2.1 From 9c3b3719fcd6bca896aabea55dfee03853ee735f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 2 Oct 2006 14:25:51 +0000 Subject: Add macro for solid lib and fix comment svn path=/trunk/KDE/kdelibs/; revision=591482 --- modules/FindKDE4Internal.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b9e3cdde..15d7baf5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -39,6 +39,7 @@ # KDE4_PHONONUI_LIBRARY - the phononui library # KDE4_KDEFX_LIBRARY - the kdefx library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library +# KDE4_SOLID_LIBRARY - the solid library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -59,9 +60,10 @@ # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries # KDE4_PHONONCORE_LIBS - the phononcore library and all depending librairies -# KDE4_PHONONUI_LIBS - the phononui library and all depending librairies +# KDE4_PHONONUI_LIBRARIES - the phononui library and all depending librairies # KDE4_KDEFX_LIBS - the kdefx library and all depending librairies -# KDE4_THREADWEAVER_LIBS - the threadweaver library and all depending libraries +# KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries +# KDE4_SOLID_LIBS - the solid library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -410,6 +412,9 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_PHONONUI_LIBRARIES ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) + find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) + find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) -- cgit v1.2.1 From 04bc37d29b6a84246df90944cb1d6bd39e9d422b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 4 Oct 2006 06:51:20 +0000 Subject: Add cmake macro for solidifaces lib and knotifyconfig lib svn path=/trunk/KDE/kdelibs/; revision=592254 --- modules/FindKDE4Internal.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 15d7baf5..02c9ab0a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -40,6 +40,8 @@ # KDE4_KDEFX_LIBRARY - the kdefx library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library # KDE4_SOLID_LIBRARY - the solid library +# KDE4_SOLIDIFACES_LIBRARY - the solidiface library +# KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -64,6 +66,8 @@ # KDE4_KDEFX_LIBS - the kdefx library and all depending librairies # KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries # KDE4_SOLID_LIBS - the solid library and all depending libraries +# KDE4_SOLIDIFACES_LIBS - the solid iface library and all depending libraries +# KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -415,9 +419,16 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) + find_library(KDE4_SOLIDIFACES_LIBRARY NAMES solidifaces PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_SOLIDIFACES_LIBS ${solidifaces_LIB_DEPENDS} ${KDE4_SOLIDIFACES_LIBRARY} ) + find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) + find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) + + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From 364b72ed39705614bc995767d183af2b23b5e885 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 6 Oct 2006 20:00:57 +0000 Subject: For other modules that might require flex. For example kdesdk (kbabel) svn path=/trunk/KDE/kdelibs/; revision=593108 --- modules/FindFlex.cmake | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 modules/FindFlex.cmake (limited to 'modules') diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake new file mode 100644 index 00000000..59831ffd --- /dev/null +++ b/modules/FindFlex.cmake @@ -0,0 +1,32 @@ +# - Try to find Flex +# Once done this will define +# +# FLEX_FOUND - system has Flex +# FLEX_EXECUTABLE - path of the flex executable +# FLEX_VERSION - the version string, like "2.5.31" +# + + +FIND_PROGRAM(FLEX_EXECUTABLE NAMES flex) + +INCLUDE(MacroEnsureVersion) + +IF(FLEX_EXECUTABLE) + SET(FLEX_FOUND TRUE) + + EXECUTE_PROCESS(COMMAND ${FLEX_EXECUTABLE} --version + OUTPUT_VARIABLE _FLEX_VERSION + ) + string (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" FLEX_VERSION "${_FLEX_VERSION}") +ENDIF(FLEX_EXECUTABLE) + +IF(FLEX_FOUND) + IF(NOT Flex_FIND_QUIETLY) + MESSAGE(STATUS "Found Flex: ${FLEX_EXECUTABLE}") + ENDIF(NOT Flex_FIND_QUIETLY) +ELSE(FLEX_FOUND) + IF(Flex_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Flex") + ENDIF(Flex_FIND_REQUIRED) +ENDIF(FLEX_FOUND) + -- cgit v1.2.1 From 1ef11223baa52a42c70bd381940303b18cddd47e Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Tue, 10 Oct 2006 17:28:48 +0000 Subject: Normalization. Move X11-detecting stuff into kdelibs out of kdegraphics, adjust for style of kdelibs. Put some order in the mess of header and libs checks for X11. svn path=/trunk/KDE/kdelibs/; revision=594266 --- modules/FindX11.cmake | 66 +++++++++++++++++++++++++++++++-------------------- 1 file changed, 40 insertions(+), 26 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 516e3fe3..dddf7859 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -29,48 +29,57 @@ if (UNIX) FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) -#Solaris lacks this file, so we should skip kxkbd here + + # Look for includes; keep the list sorted by name of the cmake *_INCLUDE_PATH + # variable (which doesn't need to match the include file name). + + # Solaris lacks XKBrules.h, so we should skip kxkbd there. FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_xf86vmode_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) - FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + + FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + + # Find additional X libraries. Keep list sorted by library name. + FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -172,6 +181,11 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xxf86misc_INCLUDE_PATH}) endif (X11_Xxf86misc_INCLUDE_PATH) + if (X11_xf86vmode_INCLUDE_PATH) + set(X11_xf86vmode_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_xf86vmode_INCLUDE_PATH}) + endif (X11_xf86vmode_INCLUDE_PATH) + if (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) set(X11_Xcursor_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcursor_INCLUDE_PATH}) -- cgit v1.2.1 From 81eff1d28538fdedb03c6a7704af249e6f1d6f00 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 11 Oct 2006 16:06:47 +0000 Subject: Add cmake macro for qtdesignercomponents lib (need to fix kdevelop build on macosx) svn path=/trunk/KDE/kdelibs/; revision=594561 --- modules/FindQt4.cmake | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b836fd62..bcb5d451 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -57,6 +57,7 @@ # QT_QTASSISTANT_FOUND True if QtAssistant was found. # QT_QTDBUS_FOUND True if QtDBus was found. # QT_QTDESIGNER_FOUND True if QtDesigner was found. +# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. # QT_QTMOTIF_FOUND True if QtMotif was found. # QT_QTNETWORK_FOUND True if QtNetwork was found. # QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. @@ -80,6 +81,7 @@ # QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" # QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" # QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" # QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" # QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" # QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" @@ -119,6 +121,10 @@ # QT_QTDESIGNER_LIBRARY_RELEASE # QT_QTDESIGNER_LIBRARY_DEBUG # +# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY +# QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE +# QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG +# # The QtGui library: QT_QTGUI_LIBRARY # QT_QTGUI_LIBRARY_RELEASE # QT_QTGUI_LIBRARY_DEBUG @@ -494,6 +500,15 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + # Set QT_QTDESIGNER_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + # Set QT_QTDBUS_INCLUDE_DIR FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus PATHS @@ -618,6 +633,11 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTDESIGNER_LIBRARY + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerComponents_debug QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + ############################################ # # Check the existence of the libraries. @@ -674,6 +694,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QT3SUPPORT) _QT4_ADJUST_LIB_VARS(QTASSISTANT) _QT4_ADJUST_LIB_VARS(QTDESIGNER) + _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) IF(Q_WS_X11) _QT4_ADJUST_LIB_VARS(QTMOTIF) ENDIF(Q_WS_X11) -- cgit v1.2.1 From f9b4b1934e26c4c7d08490c93f168c070140c2da Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 12 Oct 2006 15:27:25 +0000 Subject: Fix kdevelop not linking due to QT_QTDESIGNERCOMPONENTS_LIBRARY being empty (typo in this file). However this whole _debug stuff should be cleaned up now that we use Qt-4.2.0 ... svn path=/trunk/KDE/kdelibs/; revision=594852 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index bcb5d451..58076e90 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -634,8 +634,8 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerComponents_debug QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponents_debug QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ############################################ -- cgit v1.2.1 From 1d9d844a2cfa191d9dbc51376ae16ca519141b07 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 13 Oct 2006 07:53:19 +0000 Subject: Necessary to change KDE4_AUTOMOC macro to support enable-final argument (there was not a dependancy between _final.cpp file and moc generated files => moc files were never created) Not necessary to rebuild all kdelibs just cp kdelibs/cmake/modules/KDE4Macros.cmake /share/apps/cmake/modules I ported and tested all kde module (without enable-final argument, it compiles fines (test and program)) Don't try to use enable-final argument for the moment it doesn't compile (but dependancy works) Regards svn path=/trunk/KDE/kdelibs/; revision=595037 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/KDE4Macros.cmake | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 84057935..463d891f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1,4 +1,3 @@ - # for documentation look at FindKDE4Internal.cmake # # this file contains the following macros: @@ -137,7 +136,7 @@ macro (KDE4_ADD_UI3_FILES _sources ) endmacro (KDE4_ADD_UI3_FILES) -macro (KDE4_AUTOMOC) +macro (KDE4_AUTOMOC _target_NAME) qt4_get_moc_inc_dirs(_moc_INCS) set(_matching_FILES ) @@ -156,14 +155,12 @@ macro (KDE4_AUTOMOC) if (EXISTS ${_abs_FILE} AND NOT _skip) file(READ ${_abs_FILE} _contents) - get_filename_component(_abs_PATH ${_abs_FILE} PATH) string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") if (_match) foreach (_current_MOC_INC ${_match}) string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - get_filename_component(_basename ${_current_MOC} NAME_WE) set(_header ${_abs_PATH}/${_basename}.h) set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) @@ -177,15 +174,19 @@ macro (KDE4_AUTOMOC) ARGS ${_moc_INCS} ${_header} -o ${_moc} MAIN_DEPENDENCY ${_header} ) - - macro_add_file_dependencies(${_abs_FILE} ${_moc}) + if (KDE4_ENABLE_FINAL) + #kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) + macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_moc}) + else (KDE4_ENABLE_FINAL) + macro_add_file_dependencies(${_abs_FILE} ${_moc}) + endif (KDE4_ENABLE_FINAL) endforeach (_current_MOC_INC) endif (_match) endif (EXISTS ${_abs_FILE} AND NOT _skip) endforeach (_current_FILE) -endmacro (KDE4_AUTOMOC) +endmacro (KDE4_AUTOMOC _target_NAME) # only used internally by KDE4_INSTALL_ICONS -- cgit v1.2.1 From 5fe3c01736bedee17e1cb7a5e68f57c1010af8d3 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 13 Oct 2006 08:54:12 +0000 Subject: Create final file when we call automoc macro Fix list of file for final files (not take first file into file list as _c_file argument) Is it necessary to have a _c_file_ argument into create_final macro ? CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=595067 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 463d891f..02c05888 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -175,7 +175,7 @@ macro (KDE4_AUTOMOC _target_NAME) MAIN_DEPENDENCY ${_header} ) if (KDE4_ENABLE_FINAL) - #kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${ARGN}) macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_moc}) else (KDE4_ENABLE_FINAL) macro_add_file_dependencies(${_abs_FILE} ${_moc}) @@ -583,7 +583,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endif (_uninst) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files} ${_SRCS}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) else (KDE4_ENABLE_FINAL) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS} ) -- cgit v1.2.1 From 014df54df505f502444de4aadc5d75e52997cae1 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 13 Oct 2006 09:11:36 +0000 Subject: Fix tab svn path=/trunk/KDE/kdelibs/; revision=595069 --- modules/FindQt4.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 58076e90..8a613c89 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -926,17 +926,17 @@ IF (QT4_QMAKE_FOUND) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - IF(_optionalClassName) + IF(_optionalClassName) ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} DEPENDS ${_infile} ) - ELSE(_optionalClassName) + ELSE(_optionalClassName) ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} DEPENDS ${_infile} ) - ENDIF(_optionalClassName) + ENDIF(_optionalClassName) QT4_GENERATE_MOC(${_header} ${_moc}) SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) -- cgit v1.2.1 From fa81b12dcd67a79ae3486838746d91ab24f7c970 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 13 Oct 2006 09:14:37 +0000 Subject: SVN_SILENT: fix tab svn path=/trunk/KDE/kdelibs/; revision=595070 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8a613c89..da9ba3c5 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -922,7 +922,7 @@ IF (QT4_QMAKE_FOUND) ENDIF (_optionalBasename) SET(_optionalClassName "${ARGV5}") - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) -- cgit v1.2.1 From 79952de539eb4dd639456fcf0d475207ec71bacf Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Fri, 13 Oct 2006 09:30:09 +0000 Subject: Check for MYSQL_OPT_USE_EMBEDDED_CONNECTION enum value. svn path=/trunk/KDE/kdelibs/; revision=595072 --- modules/FindMySQL.cmake | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index dd50ed54..a61f62ac 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -31,6 +31,12 @@ find_library(MYSQL_EMBEDDED_LIBRARIES NAMES mysqld /opt/mysql/lib/mysql ) +macro_push_required_vars() +set( CMAKE_REQUIRED_INCLUDES ${MYSQL_INCLUDE_DIR} ) +set( CMAKE_REQUIRED_LIBRARIES ${MYSQL_EMBEDDED_LIBRARIES} ) +check_cxx_source_compiles( "#include \nint main() { int i = MYSQL_OPT_USE_EMBEDDED_CONNECTION; }" HAVE_MYSQL_OPT_EMBEDDED_CONNECTION ) +macro_pop_required_vars() + if(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) set(MYSQL_FOUND TRUE) message(STATUS "Found MySQL: ${MYSQL_INCLUDE_DIR}, ${MYSQL_LIBRARIES}") @@ -39,12 +45,12 @@ else(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) message(STATUS "MySQL not found.") endif(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) -if(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES) +if(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_USE_EMBEDDED_CONNECTION) set(MYSQL_EMBEDDED_FOUND TRUE) message(STATUS "Found MySQL Embedded: ${MYSQL_INCLUDE_DIR}, ${MYSQL_EMBEDDED_LIBRARIES}") -else(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES) +else(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_USE_EMBEDDED_CONNECTION) set(MYSQL_EMBEDDED_FOUND FALSE) message(STATUS "MySQL Embedded not found.") -endif(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES) +endif(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_USE_EMBEDDED_CONNECTION) mark_as_advanced(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES MYSQL_EMBEDDED_LIBRARIES) -- cgit v1.2.1 From f76e645f175e19dae8de7ed53151abee320fbe66 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 13 Oct 2006 13:25:54 +0000 Subject: Necessary to modify KDE4_ADD_KCFG_FILES to support ENABLE_FINAL (there was not a dependancy between _final.cpp file and kcfg file => kfg files were never created) Not necessary to rebuild all kdelibs just cp kdelibs/cmake/modules/KDE4Macros.cmake /share/apps/cmake/modules I ported all kde module (without enable-final argument, it compiles fines (test and program)) Don't try to use enable-final argument for the moment it doesn't compile (but dependancy works) (I didn't test all compile for the moment I will fix all compile today (without enable-final argument) kdelibs/kdepimlibs/kdebase/kdeutils compiles fine) Regards svn path=/trunk/KDE/kdelibs/; revision=595168 --- modules/KDE4Macros.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 02c05888..506becb5 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -16,10 +16,10 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -macro (KDE4_ADD_KCFG_FILES _sources ) - IF( ${ARGV1} STREQUAL "GENERATE_MOC" ) +macro (KDE4_ADD_KCFG_FILES _target_NAME _sources ) + IF( ${ARGV2} STREQUAL "GENERATE_MOC" ) SET(_kcfg_generatemoc TRUE) - ENDIF( ${ARGV1} STREQUAL "GENERATE_MOC" ) + ENDIF( ${ARGV2} STREQUAL "GENERATE_MOC" ) foreach (_current_FILE ${ARGN}) @@ -47,6 +47,11 @@ macro (KDE4_ADD_KCFG_FILES _sources ) list(APPEND ${_sources} ${_moc_FILE}) endif(_kcfg_generatemoc) + if (KDE4_ENABLE_FINAL) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${ARGN}) + macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_src_FILE}) + endif (KDE4_ENABLE_FINAL) + list(APPEND ${_sources} ${_src_FILE} ${_header_FILE}) endif(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") endforeach (_current_FILE) -- cgit v1.2.1 From 1f0cf6dd472d0454189dd2506a4d13c4d709cc8d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 13 Oct 2006 14:40:00 +0000 Subject: Update doc svn path=/trunk/KDE/kdelibs/; revision=595215 --- modules/KDE4Macros.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 506becb5..b7d708e3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -2,6 +2,7 @@ # # this file contains the following macros: # KDE4_ADD_UI_FILES +# KDE4_ADD_UI3_FILES # KDE4_ADD_KCFG_FILES # KDE4_AUTOMOC # KDE4_INSTALL_LIBTOOL_FILE @@ -9,6 +10,8 @@ # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_EXECUTABLE # KDE4_ADD_WIDGET_FILES +# KDE4_INSTALL_ICONS +# KDE4_REMOVE_OBSOLETE_CMAKE_FILES # Copyright (c) 2006, Alexander Neundorf, # Copyright (c) 2006, Laurent Montel, -- cgit v1.2.1 From 53f310f20eb5609c9473f43c56eee247229e6f15 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 14 Oct 2006 12:11:37 +0000 Subject: this will do the automoc for KDE in the future, making cmake run much faster :-) Alex svn path=/trunk/KDE/kdelibs/; revision=595469 --- modules/kde4automoc.cmake | 71 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 modules/kde4automoc.cmake (limited to 'modules') diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake new file mode 100644 index 00000000..c73d1e35 --- /dev/null +++ b/modules/kde4automoc.cmake @@ -0,0 +1,71 @@ +# do the automoc handling + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +include(${KDE4_AUTOMOC_FILE}) + +macro(PARSE_ONE_FILE _filename _moc_mark_FILE) + if (FILE_IS_NEWER ${_filename} ${_moc_mark_FILE}) + file(WRITE ${_moc_mark_FILE} "#file is autogenerated, do not edit\n") + + file(READ ${_filename} _contents) + + get_filename_component(_abs_PATH ${_filename} PATH) + message(STATUS "Automoc: Parsing ${_filename}") + + set(_mocs_PER_FILE) + + string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + if (_match) + foreach (_current_MOC_INC ${_match}) + string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + get_filename_component(_basename ${_current_MOC} NAME_WE) + set(_header ${_abs_PATH}/${_basename}.h) + set(_moc ${KDE4_CURRENT_BINARY_DIR}/${_current_MOC}) + + list(APPEND _mocs_PER_FILE ${_basename}) + file(APPEND ${_moc_mark_FILE} "set( ${_basename}_MOC ${_moc})\n") + file(APPEND ${_moc_mark_FILE} "set( ${_basename}_HEADER ${_header})\n") + + if (NOT EXISTS ${_abs_PATH}/${_basename}.h) + message(FATAL_ERROR "In the file \"${_filename}\" the moc file \"${_current_MOC}\" is included, but \"${_abs_PATH}/${_basename}.h\" doesn't exist.") + endif (NOT EXISTS ${_abs_PATH}/${_basename}.h) + + endforeach (_current_MOC_INC) + endif (_match) + file(APPEND ${_moc_mark_FILE} "set(mocs ${_mocs_PER_FILE})\n") + endif (FILE_IS_NEWER ${_filename} ${_moc_mark_FILE}) + +endmacro(PARSE_ONE_FILE) + +foreach( _current_FILE ${MOC_FILES}) + message(STATUS "Automoc: Checking ${_current_FILE}...") + + get_filename_component(_basename ${_current_FILE} NAME) + set(_moc_mark_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_automoc.mark) + + if(EXISTS ${_moc_mark_FILE}) + set(_force_MOC FALSE) + else(EXISTS ${_moc_mark_FILE}) + set(_force_MOC TRUE) + endif(EXISTS ${_moc_mark_FILE}) + + parse_one_file(${_current_FILE} ${_moc_mark_FILE}) + + include(${_moc_mark_FILE}) + + foreach(_current_MOC ${mocs}) + if (FILE_IS_NEWER ${${_current_MOC}_HEADER} ${${_current_MOC}_MOC} OR _force_MOC) + message(STATUS "Automoc: Generating ${${_current_MOC}_MOC} from ${${_current_MOC}_HEADER}") + execute_process(COMMAND ${QT_MOC_EXECUTABLE} ${QT_MOC_INCS} ${${_current_MOC}_HEADER} -o ${${_current_MOC}_MOC}) + + endif (FILE_IS_NEWER ${${_current_MOC}_HEADER} ${${_current_MOC}_MOC} OR _force_MOC) + endforeach(_current_MOC) + + +endforeach( _current_FILE) + -- cgit v1.2.1 From 2e1cbff1c03bc1f8d7911816aa2c4e9e14bce35a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 16 Oct 2006 11:32:23 +0000 Subject: Generic method for define KDE_USE_FINAL as discussed with David svn path=/trunk/KDE/kdelibs/; revision=595984 --- modules/FindKDE4Internal.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 02c9ab0a..a313d2c1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -203,7 +203,6 @@ find_package(Perl REQUIRED) include (MacroLibrary) include (CheckCXXCompilerFlag) - #add some KDE specific stuff # the following are directories where stuff will be installed to @@ -283,6 +282,10 @@ get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") +if( KDE4_ENABLE_FINAL) + add_definitions(-DKDE_USE_FINAL) +endif(KDE4_ENABLE_FINAL) + #Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable #which is something between a shared library and a normal executable. #Programs compiled with these features appear as ?shared object? with the file command. -- cgit v1.2.1 From f56160b3608225df97b09a8742f3c11bc90a4371 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 16 Oct 2006 13:30:34 +0000 Subject: Fix tab svn path=/trunk/KDE/kdelibs/; revision=596008 --- modules/FindX11.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index dddf7859..1fd45e17 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -338,13 +338,13 @@ if (UNIX) X11_Xkb_INCLUDE_PATH X11_Xkblib_INCLUDE_PATH X11_Xscreensaver_INCLUDE_PATH - X11_Xpm_INCLUDE_PATH - X11_Xpm_LIB + X11_Xpm_INCLUDE_PATH + X11_Xpm_LIB X11_Xinput_LIB X11_Xinput_INCLUDE_PATH - X11_Xft_LIB - X11_Xft_INCLUDE_PATH - X11_Xshape_INCLUDE_PATH + X11_Xft_LIB + X11_Xft_INCLUDE_PATH + X11_Xshape_INCLUDE_PATH X11_Xv_LIB X11_Xv_INCLUDE_PATH ) -- cgit v1.2.1 From a8d3b4befd09e934bc863de957a4b75dfd80d7f1 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Fri, 20 Oct 2006 20:40:35 +0000 Subject: one step closer to get it compiling with mingw. svn path=/trunk/KDE/kdelibs/; revision=597592 --- modules/FindKDE4Internal.cmake | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a313d2c1..232b6159 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -192,10 +192,11 @@ set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -if (NOT QT_DBUSXML2CPP_EXECUTABLE) - message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") -endif (NOT QT_DBUSXML2CPP_EXECUTABLE) - +if (NOT WIN32) + if (NOT QT_DBUSXML2CPP_EXECUTABLE) + message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") + endif (NOT QT_DBUSXML2CPP_EXECUTABLE) +endif (NOT WIN32) # Perl is required for building KDE software, find_package(Perl REQUIRED) @@ -508,6 +509,13 @@ if (WIN32) set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES} ${GNUWIN32_INCLUDE_DIR}) + # for the zlib-library. we define it direct rather then using FindZLIB.cmake + # here cause currently we are using the kdewin32-directory as location where + # they should be stored. without those additional definitions cmake with + # mingw breaks compiling. + set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(ZLIB_LIBRARY "${KDEWIN32_LIBRARIES}/zlib.lib") + # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) -- cgit v1.2.1 From fd0a49550e4d3038fb9cd972019eecc9db196a25 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Fri, 20 Oct 2006 21:41:42 +0000 Subject: and again some more steps closer to get it compile with mingw... svn path=/trunk/KDE/kdelibs/; revision=597596 --- modules/FindKDE4Internal.cmake | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 232b6159..03d37923 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -509,13 +509,6 @@ if (WIN32) set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES} ${GNUWIN32_INCLUDE_DIR}) - # for the zlib-library. we define it direct rather then using FindZLIB.cmake - # here cause currently we are using the kdewin32-directory as location where - # they should be stored. without those additional definitions cmake with - # mingw breaks compiling. - set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(ZLIB_LIBRARY "${KDEWIN32_LIBRARIES}/zlib.lib") - # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) @@ -524,7 +517,27 @@ if (WIN32) # windows, mingw if(MINGW) - #hmmm, something special to do here ? + # FindZLIB.cmake + set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(ZLIB_LIBRARY "${KDEWIN32_LIBRARIES}/zlib.lib") + # FindPCRE.cmake + set(PCRE_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(PCRE_LIBRARIES "${KDEWIN32_LIBRARIES}/pcre.lib") + # FindLibXml2.cmake + set(LIBXML2_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(LIBXML2_LIBRARIES "${KDEWIN32_LIBRARIES}/libxml2.lib") + # FindLibXslt.cmake + set(LIBXSLT_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(LIBXSLT_LIBRARIES "${KDEWIN32_LIBRARIES}/libxslt.lib") + # FindJPEG.cmake + set(JPEG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(JPEG_LIBRARY "${KDEWIN32_LIBRARIES}/jpeg.lib") + # FindGIF.cmake + set(GIF_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(GIF_LIBRARIES "${KDEWIN32_LIBRARIES}/giflib.lib") + # FindPNG.cmake + set(PNG_PNG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + set(PNG_LIBRARY "${KDEWIN32_LIBRARIES}/libpng.lib") endif(MINGW) # windows, microsoft compiler -- cgit v1.2.1 From aa5b265e4c7f4fe93fd2581e71b9519e3ccf346b Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Fri, 20 Oct 2006 22:55:00 +0000 Subject: cmake runs through now. Compiling on win/mingw could start :) svn path=/trunk/KDE/kdelibs/; revision=597606 --- modules/FindKDEWIN32.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 385a34f4..d5a5eee6 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -60,8 +60,11 @@ endif(MSVC) # eventually it will be moved out from kdelibs/ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) set(KDEWIN32_FOUND TRUE) - # add the winsock2 library, using find_library or something like this would probably be better - set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) + # add the winsock2 library + find_library(WIN32_USER32_LIBRARY NAMES user32 PATHS $ENV{WINDIR}/system32) + find_library(WIN32_SHELL32_LIBRARY NAMES shell32 PATHS $ENV{WINDIR}/system32) + find_library(WIN32_WS2_LIBRARY NAMES ws2_32 PATHS $ENV{WINDIR}/system32) + set(KDEWIN32_LIBRARIES "${KDEWIN32_LIBRARY} ${WIN32_USER32_LIBRARY} ${WIN32_SHELL32_LIBRARY} ${WIN32_WS2_LIBRARY}") if (MINGW) #mingw compiler -- cgit v1.2.1 From 93228fbd4ad1712926c690564b39bc7cb9aa2b81 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Fri, 20 Oct 2006 23:23:23 +0000 Subject: added TODO for later to don't forget about it. svn path=/trunk/KDE/kdelibs/; revision=597608 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 03d37923..263afe30 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -517,6 +517,11 @@ if (WIN32) # windows, mingw if(MINGW) + #TODO use find_library + move such things either to FindKDEWIN32.cmake since it works with + #the kdewin32-package only anyway or have it direct with the Find*.cmake files (what could + #provide a problem for e.g. FindJPEG.cmake since I am pretty sure cmake.org does not like + #to take over our propably temporary workarounds). + # FindZLIB.cmake set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) set(ZLIB_LIBRARY "${KDEWIN32_LIBRARIES}/zlib.lib") -- cgit v1.2.1 From 5ee682a9f2a5fd346ef8ec7f3bb7292103ecb843 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Sat, 21 Oct 2006 00:55:03 +0000 Subject: * added ${KDEWIN32_LIBRARY_PATH} * use find_library Now linking fails cause of the on win32 missing dbus libs... svn path=/trunk/KDE/kdelibs/; revision=597618 --- modules/FindKDE4Internal.cmake | 16 ++++++++-------- modules/FindKDEWIN32.cmake | 3 ++- 2 files changed, 10 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 263afe30..503e7fa8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -517,32 +517,32 @@ if (WIN32) # windows, mingw if(MINGW) - #TODO use find_library + move such things either to FindKDEWIN32.cmake since it works with + #TODO move such things either to FindKDEWIN32.cmake since it works with #the kdewin32-package only anyway or have it direct with the Find*.cmake files (what could #provide a problem for e.g. FindJPEG.cmake since I am pretty sure cmake.org does not like #to take over our propably temporary workarounds). # FindZLIB.cmake set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(ZLIB_LIBRARY "${KDEWIN32_LIBRARIES}/zlib.lib") + find_library(ZLIB_LIBRARY NAMES zlib PATHS ${KDEWIN32_LIBRARY_PATH}) # FindPCRE.cmake set(PCRE_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(PCRE_LIBRARIES "${KDEWIN32_LIBRARIES}/pcre.lib") + find_library(PCRE_LIBRARIES NAMES pcre PATHS ${KDEWIN32_LIBRARY_PATH}) # FindLibXml2.cmake set(LIBXML2_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(LIBXML2_LIBRARIES "${KDEWIN32_LIBRARIES}/libxml2.lib") + find_library(LIBXML2_LIBRARIES NAMES libxml2 PATHS ${KDEWIN32_LIBRARY_PATH}) # FindLibXslt.cmake set(LIBXSLT_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(LIBXSLT_LIBRARIES "${KDEWIN32_LIBRARIES}/libxslt.lib") + find_library(LIBXSLT_LIBRARIES NAMES libxslt PATHS ${KDEWIN32_LIBRARY_PATH}) # FindJPEG.cmake set(JPEG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(JPEG_LIBRARY "${KDEWIN32_LIBRARIES}/jpeg.lib") + find_library(JPEG_LIBRARY NAMES jpeg PATHS ${KDEWIN32_LIBRARY_PATH}) # FindGIF.cmake set(GIF_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(GIF_LIBRARIES "${KDEWIN32_LIBRARIES}/giflib.lib") + find_library(GIF_LIBRARIES NAMES giflib PATHS ${KDEWIN32_LIBRARY_PATH}) # FindPNG.cmake set(PNG_PNG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - set(PNG_LIBRARY "${KDEWIN32_LIBRARIES}/libpng.lib") + find_library(PNG_LIBRARY NAMES libpng PATHS ${KDEWIN32_LIBRARY_PATH}) endif(MINGW) # windows, microsoft compiler diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index d5a5eee6..479df392 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -27,9 +27,10 @@ find_path(KDEWIN32_INCLUDE_DIR winposix_export.h # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) +set(KDEWIN32_LIBRARY_PATH ${_program_FILES_DIR}/kdewin32/lib) find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 PATHS - ${_program_FILES_DIR}/kdewin32/lib + ${KDEWIN32_LIBRARY_PATH} ) # msvc makes a difference between debug and release -- cgit v1.2.1 From a7fdedd52f898bc55cc3293111c1186bf9019d0c Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Sat, 21 Oct 2006 02:14:04 +0000 Subject: * look also in a directory named "kdewin32" for the gnuwin32 libs. * abort with FATAL_ERROR if gnuwin32 could not be found and REQUIRED got defined. svn path=/trunk/KDE/kdelibs/; revision=597624 --- modules/FindGNUWIN32.cmake | 4 ++-- modules/FindKDE4Internal.cmake | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index f9f0d4d6..fde43d99 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -15,7 +15,7 @@ if(NOT GNUWIN32_DIR) if(NOT GNUWIN32_DIR) # search in the default program install folder file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - find_file(GNUWIN32_DIR_tmp gnuwin32 win32libs + find_file(GNUWIN32_DIR_tmp gnuwin32 kdewin32 win32libs PATHS "${_progFiles}" "C:/" "D:/" "E:/" "F:/" "G:/" @@ -41,7 +41,7 @@ if (GNUWIN32_FOUND) endif (NOT GNUWIN32_FIND_QUIETLY) else (GNUWIN32_FOUND) if (GNUWIN32_FIND_REQUIRED) - message(SEND_ERROR "Could NOT find GNUWIN32") + message(FATAL_ERROR "Could NOT find GNUWIN32") endif (GNUWIN32_FIND_REQUIRED) endif (GNUWIN32_FOUND) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 503e7fa8..12f247b2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -504,7 +504,9 @@ if (WIN32) endif(CYGWIN) find_package(KDEWIN32 REQUIRED) - + + # is GnuWin32 required or does e.g. Visual Studio provide an own implementation? + #find_package(GNUWIN32 REQUIRED) find_package(GNUWIN32) set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES} ${GNUWIN32_INCLUDE_DIR}) -- cgit v1.2.1 From 7d87c59aea815c6be72a6755bb288b56cf7849ad Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Sat, 21 Oct 2006 03:20:56 +0000 Subject: added temp info for ppl who may like to try to get it compiled under win/mingw. svn path=/trunk/KDE/kdelibs/; revision=597625 --- modules/FindKDEWIN32.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 479df392..508d93af 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -13,6 +13,9 @@ if (WIN32) +# temporary information +message("NOTE: first try to 'cmake -G \"MinGW Makefiles\" ..\\kdelibs\\' will fail with an error in FindZLIB.cmake. Just retry and it works. The bug got reported and will hopefully be fixed in >cmake 2.4.3") + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) if(NOT QT4_FOUND) -- cgit v1.2.1 From 015ca06395f0820b2c81e943fa9067e7084410cb Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 21 Oct 2006 09:56:36 +0000 Subject: This is not needed at all - it worked before without and now it doesn' work with msvc anymore! cmake adds those libs automagically afaik CCMAIL: mail@dipe.org CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=597662 --- modules/FindKDEWIN32.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 508d93af..ec3febe6 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -65,10 +65,10 @@ endif(MSVC) if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) set(KDEWIN32_FOUND TRUE) # add the winsock2 library - find_library(WIN32_USER32_LIBRARY NAMES user32 PATHS $ENV{WINDIR}/system32) - find_library(WIN32_SHELL32_LIBRARY NAMES shell32 PATHS $ENV{WINDIR}/system32) - find_library(WIN32_WS2_LIBRARY NAMES ws2_32 PATHS $ENV{WINDIR}/system32) - set(KDEWIN32_LIBRARIES "${KDEWIN32_LIBRARY} ${WIN32_USER32_LIBRARY} ${WIN32_SHELL32_LIBRARY} ${WIN32_WS2_LIBRARY}") + #find_library(WIN32_USER32_LIBRARY NAMES user32 PATHS $ENV{WINDIR}/system32) + #find_library(WIN32_SHELL32_LIBRARY NAMES shell32 PATHS $ENV{WINDIR}/system32) + #find_library(WIN32_WS2_LIBRARY NAMES ws2_32 PATHS $ENV{WINDIR}/system32) + #set(KDEWIN32_LIBRARIES "${KDEWIN32_LIBRARY} ${WIN32_USER32_LIBRARY} ${WIN32_SHELL32_LIBRARY} ${WIN32_WS2_LIBRARY}") if (MINGW) #mingw compiler -- cgit v1.2.1 From b920726e9d0a581ac7379305947622b882c3283e Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Sat, 21 Oct 2006 18:19:18 +0000 Subject: ok, reactivate those part since actualy there exist a dbus_for_win ( http://sourceforge.net/project/showfiles.php?group_id=171968 ) which was not documented anywhere. Thanks Laurent and Christian :) svn path=/trunk/KDE/kdelibs/; revision=597820 --- modules/FindKDE4Internal.cmake | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 12f247b2..4c3409af 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -192,11 +192,10 @@ set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -if (NOT WIN32) - if (NOT QT_DBUSXML2CPP_EXECUTABLE) - message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") - endif (NOT QT_DBUSXML2CPP_EXECUTABLE) -endif (NOT WIN32) +if (NOT QT_DBUSXML2CPP_EXECUTABLE) + message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") +endif (NOT QT_DBUSXML2CPP_EXECUTABLE) + # Perl is required for building KDE software, find_package(Perl REQUIRED) -- cgit v1.2.1 From c77e98a3be18de55f920e8ad520cf27198e92e08 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Sat, 21 Oct 2006 20:12:39 +0000 Subject: ah. revert parts of r597624 since it seems I got confused by the name win32libs which has another meaning this days as it had on KDE3. @Christian does this finally fix the compile-prob with msvc I just introduced? btw, I also wonder that GnuWin32 is not marked as REQUIRED and is not mention at the kdelibs.com tutorial at all. Do we depend on it or not? CC_MAIL: Ch.Ehrlicher@gmx.de svn path=/trunk/KDE/kdelibs/; revision=597849 --- modules/FindGNUWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index fde43d99..8b999d93 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -15,7 +15,7 @@ if(NOT GNUWIN32_DIR) if(NOT GNUWIN32_DIR) # search in the default program install folder file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - find_file(GNUWIN32_DIR_tmp gnuwin32 kdewin32 win32libs + find_file(GNUWIN32_DIR_tmp gnuwin32 win32libs PATHS "${_progFiles}" "C:/" "D:/" "E:/" "F:/" "G:/" -- cgit v1.2.1 From d8edac17502c98d6841fe23a2dad6880468ab54d Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Sun, 22 Oct 2006 05:46:55 +0000 Subject: Deactivated it again cause it seems to be the reason for probs with Qt 4.1.x while it seems to be needed with Qt 4.2.x :-/ @Christian: could be find here a way to have it working for everybody? propably check for the Qt-version or something like this? CC_MAIL: Ch.Ehrlicher@gmx.de svn path=/trunk/KDE/kdelibs/; revision=597951 --- modules/FindKDE4Internal.cmake | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4c3409af..b66b9f80 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -518,32 +518,31 @@ if (WIN32) # windows, mingw if(MINGW) - #TODO move such things either to FindKDEWIN32.cmake since it works with - #the kdewin32-package only anyway or have it direct with the Find*.cmake files (what could - #provide a problem for e.g. FindJPEG.cmake since I am pretty sure cmake.org does not like - #to take over our propably temporary workarounds). + #TODO: why does it break Qt 4.1.x? + move such code to FindKDEWIN32.cmake + #following is needed to get it compiling with Qt 4.2.1 + #see http://www.kdelibs.com/wiki/index.php/Building_KDElibs_4_using_GCC_and_MinGW_with_Qt_4.2 # FindZLIB.cmake - set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - find_library(ZLIB_LIBRARY NAMES zlib PATHS ${KDEWIN32_LIBRARY_PATH}) + #set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + #set(ZLIB_LIBRARY ${KDEWIN32_LIBRARY_PATH}/zlib) # FindPCRE.cmake - set(PCRE_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - find_library(PCRE_LIBRARIES NAMES pcre PATHS ${KDEWIN32_LIBRARY_PATH}) + #set(PCRE_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + #set(PCRE_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/pcre) # FindLibXml2.cmake - set(LIBXML2_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - find_library(LIBXML2_LIBRARIES NAMES libxml2 PATHS ${KDEWIN32_LIBRARY_PATH}) + #set(LIBXML2_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + #set(LIBXML2_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/libxml2) # FindLibXslt.cmake - set(LIBXSLT_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - find_library(LIBXSLT_LIBRARIES NAMES libxslt PATHS ${KDEWIN32_LIBRARY_PATH}) + #set(LIBXSLT_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + #set(LIBXSLT_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/libxslt) # FindJPEG.cmake - set(JPEG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - find_library(JPEG_LIBRARY NAMES jpeg PATHS ${KDEWIN32_LIBRARY_PATH}) + #set(JPEG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + #set(JPEG_LIBRARY ${KDEWIN32_LIBRARY_PATH}/jpeg) # FindGIF.cmake - set(GIF_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - find_library(GIF_LIBRARIES NAMES giflib PATHS ${KDEWIN32_LIBRARY_PATH}) + #set(GIF_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + #set(GIF_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/giflib) # FindPNG.cmake - set(PNG_PNG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - find_library(PNG_LIBRARY NAMES libpng PATHS ${KDEWIN32_LIBRARY_PATH}) + #set(PNG_PNG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) + #set(PNG_LIBRARY ${KDEWIN32_LIBRARY_PATH}/libpng) endif(MINGW) # windows, microsoft compiler -- cgit v1.2.1 From 2ca2be2793edf9bd3f0570a600e9f2d0f1acd0c7 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Sun, 22 Oct 2006 06:40:02 +0000 Subject: ok, now it's official. I am stupid :-/ svn path=/trunk/KDE/kdelibs/; revision=597959 --- modules/FindKDE4Internal.cmake | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b66b9f80..fd7f23ab 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -518,31 +518,7 @@ if (WIN32) # windows, mingw if(MINGW) - #TODO: why does it break Qt 4.1.x? + move such code to FindKDEWIN32.cmake - #following is needed to get it compiling with Qt 4.2.1 - #see http://www.kdelibs.com/wiki/index.php/Building_KDElibs_4_using_GCC_and_MinGW_with_Qt_4.2 - - # FindZLIB.cmake - #set(ZLIB_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - #set(ZLIB_LIBRARY ${KDEWIN32_LIBRARY_PATH}/zlib) - # FindPCRE.cmake - #set(PCRE_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - #set(PCRE_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/pcre) - # FindLibXml2.cmake - #set(LIBXML2_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - #set(LIBXML2_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/libxml2) - # FindLibXslt.cmake - #set(LIBXSLT_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - #set(LIBXSLT_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/libxslt) - # FindJPEG.cmake - #set(JPEG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - #set(JPEG_LIBRARY ${KDEWIN32_LIBRARY_PATH}/jpeg) - # FindGIF.cmake - #set(GIF_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - #set(GIF_LIBRARIES ${KDEWIN32_LIBRARY_PATH}/giflib) - # FindPNG.cmake - #set(PNG_PNG_INCLUDE_DIR ${KDEWIN32_INCLUDES}) - #set(PNG_LIBRARY ${KDEWIN32_LIBRARY_PATH}/libpng) + #hmmm, something special to do here ? endif(MINGW) # windows, microsoft compiler -- cgit v1.2.1 From 6ed3895dfc8904066d2dd0674035f5618709722a Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 22 Oct 2006 13:47:29 +0000 Subject: this should fix the linker errors. Since those libs are system libs, there is no need to do an extra search to find them - if they're not available, we would not be able to link any bigger program on win32 @sebsauer: I don't get an error in FindZLib.cmake ... svn path=/trunk/KDE/kdelibs/; revision=598092 --- modules/FindKDEWIN32.cmake | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index ec3febe6..17a46761 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -64,11 +64,8 @@ endif(MSVC) # eventually it will be moved out from kdelibs/ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) set(KDEWIN32_FOUND TRUE) - # add the winsock2 library - #find_library(WIN32_USER32_LIBRARY NAMES user32 PATHS $ENV{WINDIR}/system32) - #find_library(WIN32_SHELL32_LIBRARY NAMES shell32 PATHS $ENV{WINDIR}/system32) - #find_library(WIN32_WS2_LIBRARY NAMES ws2_32 PATHS $ENV{WINDIR}/system32) - #set(KDEWIN32_LIBRARIES "${KDEWIN32_LIBRARY} ${WIN32_USER32_LIBRARY} ${WIN32_SHELL32_LIBRARY} ${WIN32_WS2_LIBRARY}") + # add needed system libs + set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) if (MINGW) #mingw compiler -- cgit v1.2.1 From a4baf9b29d6ca8e113ad838f2428e626e09ddbe8 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 22 Oct 2006 16:18:21 +0000 Subject: assistantclient lib is now named QtAssistantClient4(d) on windows... svn path=/trunk/KDE/kdelibs/; revision=598140 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index da9ba3c5..f0878e37 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -626,8 +626,8 @@ IF (QT4_QMAKE_FOUND) ENDIF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClientd4 QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNER_LIBRARY FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From d6850d6f398ff3499aa03511c98f5fdec75b10b8 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 23 Oct 2006 06:51:28 +0000 Subject: Apply Alex patch (now we can use enable-final argument some module compiles with enable-final now) As discussed with Alex it's not necessary to have program name into automoc macro svn path=/trunk/KDE/kdelibs/; revision=598288 The following changes were in SVN, but were removed from git: M pics/CMakeLists.txt --- modules/KDE4Macros.cmake | 121 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 83 insertions(+), 38 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b7d708e3..4927a8ff 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -19,10 +19,10 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -macro (KDE4_ADD_KCFG_FILES _target_NAME _sources ) - IF( ${ARGV2} STREQUAL "GENERATE_MOC" ) - SET(_kcfg_generatemoc TRUE) - ENDIF( ${ARGV2} STREQUAL "GENERATE_MOC" ) +macro (KDE4_ADD_KCFG_FILES _sources ) + if( ${ARGV1} STREQUAL "GENERATE_MOC" ) + set(_kcfg_generatemoc TRUE) + endif( ${ARGV1} STREQUAL "GENERATE_MOC" ) foreach (_current_FILE ${ARGN}) @@ -50,10 +50,10 @@ macro (KDE4_ADD_KCFG_FILES _target_NAME _sources ) list(APPEND ${_sources} ${_moc_FILE}) endif(_kcfg_generatemoc) - if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${ARGN}) - macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_src_FILE}) - endif (KDE4_ENABLE_FINAL) +# if (KDE4_ENABLE_FINAL) +# kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${ARGN}) +# macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_src_FILE}) +# endif (KDE4_ENABLE_FINAL) list(APPEND ${_sources} ${_src_FILE} ${_header_FILE}) endif(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") @@ -144,10 +144,10 @@ macro (KDE4_ADD_UI3_FILES _sources ) endmacro (KDE4_ADD_UI3_FILES) -macro (KDE4_AUTOMOC _target_NAME) +macro (KDE4_AUTOMOC) qt4_get_moc_inc_dirs(_moc_INCS) - set(_matching_FILES ) + # iterate over all files foreach (_current_FILE ${ARGN}) get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE) @@ -160,7 +160,13 @@ macro (KDE4_AUTOMOC _target_NAME) # different rules for the same moc file get_source_file_property(_skip ${_abs_FILE} SKIP_AUTOMOC) + # if the file exists and should not be skipped read it completely into memory + # and grep for all include lines + # for each found moc file generate a custom_target and collect + # the generated moc files in a list which will be set as a source files property + # and later be queried in kde4_add_library/executable/plugin() if (EXISTS ${_abs_FILE} AND NOT _skip) + set(_moc_FILES_PROPERTY) file(READ ${_abs_FILE} _contents) get_filename_component(_abs_PATH ${_abs_FILE} PATH) @@ -182,19 +188,40 @@ macro (KDE4_AUTOMOC _target_NAME) ARGS ${_moc_INCS} ${_header} -o ${_moc} MAIN_DEPENDENCY ${_header} ) - if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${ARGN}) - macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_moc}) - else (KDE4_ENABLE_FINAL) - macro_add_file_dependencies(${_abs_FILE} ${_moc}) - endif (KDE4_ENABLE_FINAL) + + list(APPEND _moc_FILES_PROPERTY ${_moc}) + +# if (KDE4_ENABLE_FINAL) +# kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${ARGN}) +# macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_moc}) +# else (KDE4_ENABLE_FINAL) +# macro_add_file_dependencies(${_abs_FILE} ${_moc}) +# endif (KDE4_ENABLE_FINAL) endforeach (_current_MOC_INC) endif (_match) + set_source_files_properties(${_abs_FILE} PROPERTIES AUTOMOC_FILES "${_moc_FILES_PROPERTY}") + #message(STATUS "mocs for ${_abs_FILE}: ${_moc_FILES_PROPERTY}") endif (EXISTS ${_abs_FILE} AND NOT _skip) endforeach (_current_FILE) -endmacro (KDE4_AUTOMOC _target_NAME) +endmacro (KDE4_AUTOMOC) + + +macro(KDE4_GET_AUTOMOC_FILES _list) + set(${_list}) + foreach (_current_FILE ${ARGN}) + #message(STATUS "Checking ${_current_FILE}") + set(_automoc_FILES_PROPERTY) + get_source_file_property(_automoc_FILES_PROPERTY ${_current_FILE} AUTOMOC_FILES) + if (_automoc_FILES_PROPERTY) + foreach (_current_MOC_FILE ${_automoc_FILES_PROPERTY}) + list(APPEND ${_list} ${_current_MOC_FILE}) + #message(STATUS "MOC ${_current_MOC_FILE}") + endforeach (_current_MOC_FILE) + endif (_automoc_FILES_PROPERTY) + endforeach (_current_FILE) +endmacro(KDE4_GET_AUTOMOC_FILES) # only used internally by KDE4_INSTALL_ICONS @@ -354,16 +381,26 @@ ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) # This is not done for the C sources, they are just gathered in a separate list # because they are usually not written by KDE and as such not intended to be # compiled all-in-one. -macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesC ) - set(${_filesC}) +macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesExcludedFromFinalFile ) + set(${_filesExcludedFromFinalFile}) file(WRITE ${_filenameCPP} "//autogenerated file\n") foreach (_current_FILE ${ARGN}) - string(REGEX MATCH ".+\\.c$" _isCFile ${_current_FILE}) - if (_isCFile) - list(APPEND ${_filesC} ${_current_FILE}) - else (_isCFile) - file(APPEND ${_filenameCPP} "#include \"${_current_FILE}\"\n") - endif (_isCFile) + get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE) + # don't include any generated files in the final-file + # because then cmake will not know the dependencies + get_source_file_property(_isGenerated ${_abs_FILE} GENERATED) + if (_isGenerated) + list(APPEND ${_filesExcludedFromFinalFile} ${_abs_FILE}) + else (_isGenerated) + # don't include c-files in the final-file, because they usually come + # from a 3rd party and as such are not intended to be compiled all-in-one + string(REGEX MATCH ".+\\.c$" _isCFile ${_abs_FILE}) + if (_isCFile) + list(APPEND ${_filesExcludedFromFinalFile} ${_abs_FILE}) + else (_isCFile) + file(APPEND ${_filenameCPP} "#include \"${_abs_FILE}\"\n") + endif (_isCFile) + endif (_isGenerated) endforeach (_current_FILE) endmacro (KDE4_CREATE_FINAL_FILES) @@ -463,11 +500,13 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) set(_first_SRC ${_with_PREFIX}) endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") + kde4_get_automoc_files(_automoc_FILES ${_first_SRC} ${ARGN}) + if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) - add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) else (KDE4_ENABLE_FINAL) - add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN} ${_automoc_FILES}) endif (KDE4_ENABLE_FINAL) if (_first_SRC) @@ -549,12 +588,14 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library - if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_get_automoc_files(_automoc_FILES ${ARGN}) + if (KDE4_ENABLE_FINAL) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_file ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES} ${_SRCS}) + MESSAGE(STATUS "${_target_NAME} : <${_separate_files}> automoc <${_automoc_FILES} srrc <${_SRCS}>") else (KDE4_ENABLE_FINAL) - add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ) + add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ${_automoc_FILES}) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) @@ -590,11 +631,13 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set(_type "RUN_UNINSTALLED") endif (_uninst) + kde4_get_automoc_files(_automoc_FILES ${_SRCS}) + if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_SRCS}) - add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) + add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) else (KDE4_ENABLE_FINAL) - add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS} ) + add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS} ${_automoc_FILES}) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) @@ -621,11 +664,13 @@ MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set(_add_lib_param MODULE) endif (${_lib_TYPE} STREQUAL "MODULE") + kde4_get_automoc_files(_automoc_FILES ${_first_SRC} ${ARGN}) + if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _c_files ${_first_SRC} ${ARGN}) - add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_c_files}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) else (KDE4_ENABLE_FINAL) - add_library(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN}) + add_library(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN} ${_automoc_FILES}) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath_for_library(${_target_NAME}) -- cgit v1.2.1 From 2a7d2182355af2b9573233afff036907ccfe044a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 23 Oct 2006 10:03:36 +0000 Subject: Not necessary svn path=/trunk/KDE/kdelibs/; revision=598346 --- modules/KDE4Macros.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4927a8ff..a09dcec6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -593,7 +593,6 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_file ${_SRCS}) add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES} ${_SRCS}) - MESSAGE(STATUS "${_target_NAME} : <${_separate_files}> automoc <${_automoc_FILES} srrc <${_SRCS}>") else (KDE4_ENABLE_FINAL) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ${_automoc_FILES}) endif (KDE4_ENABLE_FINAL) -- cgit v1.2.1 From 2b18f1f332502c37793d3bfb74f6395c0d223c77 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 23 Oct 2006 12:30:44 +0000 Subject: Create macro to disable enable final argument into specific directory. svn path=/trunk/KDE/kdelibs/; revision=598376 --- modules/KDE4Macros.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a09dcec6..0fb9eba4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -729,3 +729,11 @@ MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) endforeach ( _current_FILE) ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) + +MACRO(KDE4_NO_ENABLE_FINAL _project_name) + if(KDE4_ENABLE_FINAL) + set(KDE4_ENABLE_FINAL OFF) + MESSAGE(STATUS "You used enable-final argument but \"${_project_name}\" doesn't support it. Try to fix compile it and remobe KDE4_NO_ENABLE_FINAL macro. Thanks") + endif(KDE4_ENABLE_FINAL) +ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) + -- cgit v1.2.1 From 2601ab0e7ad098c856d5fff60e7b3a40c9db34b3 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 23 Oct 2006 12:32:50 +0000 Subject: Fix typo svn path=/trunk/KDE/kdelibs/; revision=598377 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0fb9eba4..988e8c52 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -733,7 +733,7 @@ ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) MACRO(KDE4_NO_ENABLE_FINAL _project_name) if(KDE4_ENABLE_FINAL) set(KDE4_ENABLE_FINAL OFF) - MESSAGE(STATUS "You used enable-final argument but \"${_project_name}\" doesn't support it. Try to fix compile it and remobe KDE4_NO_ENABLE_FINAL macro. Thanks") + MESSAGE(STATUS "You used enable-final argument but \"${_project_name}\" doesn't support it. Try to fix compile it and remove KDE4_NO_ENABLE_FINAL macro. Thanks") endif(KDE4_ENABLE_FINAL) ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) -- cgit v1.2.1 From 149c64b2cff84d1440eac45dc02e492aae858fc9 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 23 Oct 2006 12:58:07 +0000 Subject: Remove definition "-DKDE_USE_FINAL" when we can't compile with enable final argument svn path=/trunk/KDE/kdelibs/; revision=598383 --- modules/KDE4Macros.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 988e8c52..68e462e2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -733,7 +733,9 @@ ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) MACRO(KDE4_NO_ENABLE_FINAL _project_name) if(KDE4_ENABLE_FINAL) set(KDE4_ENABLE_FINAL OFF) + REMOVE_DEFINITIONS(-DKDE_USE_FINAL) MESSAGE(STATUS "You used enable-final argument but \"${_project_name}\" doesn't support it. Try to fix compile it and remove KDE4_NO_ENABLE_FINAL macro. Thanks") + endif(KDE4_ENABLE_FINAL) ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) -- cgit v1.2.1 From 6e320b8bb16b631e4a74a2c71657ff1f2e0a78f4 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 23 Oct 2006 12:59:41 +0000 Subject: Now that we're using Qt-4.2, we can clean up FindQt4.cmake to stop looking for QtCore_debug.so etc. My main motivation being more speed and less confusing output (about many libs not being found). Tested by Paulo on msvc and mingw - thanks! svn path=/trunk/KDE/kdelibs/; revision=598386 --- modules/FindQt4.cmake | 182 ++++++++++++++++++-------------------------------- 1 file changed, 64 insertions(+), 118 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f0878e37..1d8c3fd6 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -95,79 +95,42 @@ # # QT_LIBRARY_DIR Path to "lib" of Qt4 # -# For every library of Qt there are three variables: -# QT_QTFOO_LIBRARY_RELEASE, which contains the full path to the release version -# QT_QTFOO_LIBRARY_DEBUG, which contains the full path to the debug version -# QT_QTFOO_LIBRARY, the full path to the release version if available, otherwise to the debug version +# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. # # So there are the following variables: # The Qt3Support library: QT_QT3SUPPORT_LIBRARY -# QT_QT3SUPPORT_LIBRARY_RELEASE -# QT_QT3SUPPORT_DEBUG # # The QtAssistant library: QT_QTASSISTANT_LIBRARY -# QT_QTASSISTANT_LIBRARY_RELEASE -# QT_QTASSISTANT_LIBRARY_DEBUG # # The QtCore library: QT_QTCORE_LIBRARY -# QT_QTCORE_LIBRARY_RELEASE -# QT_QTCORE_LIBRARY_DEBUG # # The QtDBus library: QT_QTDBUS_LIBRARY -# QT_QTDBUS_LIBRARY_RELEASE -# QT_QTDBUS_LIBRARY_DEBUG # # The QtDesigner library: QT_QTDESIGNER_LIBRARY -# QT_QTDESIGNER_LIBRARY_RELEASE -# QT_QTDESIGNER_LIBRARY_DEBUG # # The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY -# QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE -# QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG # # The QtGui library: QT_QTGUI_LIBRARY -# QT_QTGUI_LIBRARY_RELEASE -# QT_QTGUI_LIBRARY_DEBUG # # The QtMotif library: QT_QTMOTIF_LIBRARY -# QT_QTMOTIF_LIBRARY_RELEASE -# QT_QTMOTIF_LIBRARY_DEBUG # # The QtNetwork library: QT_QTNETWORK_LIBRARY -# QT_QTNETWORK_LIBRARY_RELEASE -# QT_QTNETWORK_LIBRARY_DEBUG # # The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY -# QT_QTNSPLUGIN_LIBRARY_RELEASE -# QT_QTNSPLUGIN_LIBRARY_DEBUG # # The QtOpenGL library: QT_QTOPENGL_LIBRARY -# QT_QTOPENGL_LIBRARY_RELEASE -# QT_QTOPENGL_LIBRARY_DEBUG # # The QtSql library: QT_QTSQL_LIBRARY -# QT_QTSQL_LIBRARY_RELEASE -# QT_QTSQL_LIBRARY_DEBUG # # The QtXml library: QT_QTXML_LIBRARY -# QT_QTXML_LIBRARY_RELEASE -# QT_QTXML_LIBRARY_DEBUG # # The QtSvg library: QT_QTSVG_LIBRARY -# QT_QTSVG_LIBRARY_RELEASE -# QT_QTSVG_LIBRARY_DEBUG # # The QtTest library: QT_QTTEST_LIBRARY -# QT_QTTEST_LIBRARY_RELEASE -# QT_QTTEST_LIBRARY_DEBUG # # The qtmain library for Windows QT_QTMAIN_LIBRARY -# QT_QTMAIN_LIBRARY_RELEASE -# QT_QTMAIN_LIBRARY_DEBUG # -#The QtUiTools library: QT_QTUITOOLS_LIBRARY -# QT_QTUITOOLS_LIBRARY_RELEASE -# QT_QTUITOOLS_LIBRARY_DEBUG +# The QtUiTools library: QT_QTUITOOLS_LIBRARY # # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. @@ -533,109 +496,98 @@ IF (QT4_QMAKE_FOUND) IF (QT_USE_FRAMEWORKS) # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have # to jump through these hoops. - SET(QT_QTCORE_LIBRARY_RELEASE "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QTCORE_LIBRARY_DEBUG "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QT3SUPPORT_LIBRARY_RELEASE "-framework Qt3Support" CACHE STRING "The Qt3Support library.") - SET(QT_QT3SUPPORT_LIBRARY_DEBUG "-framework Qt3Support" CACHE STRING "The Qt3Support library.") - SET(QT_QTGUI_LIBRARY_RELEASE "-framework QtGui" CACHE STRING "The QtGui library.") - SET(QT_QTGUI_LIBRARY_DEBUG "-framework QtGui" CACHE STRING "The QtGui library.") - SET(QT_QTNETWORK_LIBRARY_RELEASE "-framework QtNetwork" CACHE STRING "The QtNetwork library.") - SET(QT_QTNETWORK_LIBRARY_DEBUG "-framework QtNetwork" CACHE STRING "The QtNetwork library.") - SET(QT_QTOPENGL_LIBRARY_RELEASE "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - SET(QT_QTOPENGL_LIBRARY_DEBUG "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - SET(QT_QTSQL_LIBRARY_RELEASE "-framework QtSql" CACHE STRING "The QtSql library.") - SET(QT_QTSQL_LIBRARY_DEBUG "-framework QtSql" CACHE STRING "The QtSql library.") - SET(QT_QTXML_LIBRARY_RELEASE "-framework QtXml" CACHE STRING "The QtXml library.") - SET(QT_QTXML_LIBRARY_DEBUG "-framework QtXml" CACHE STRING "The QtXml library.") - SET(QT_QTSVG_LIBRARY_RELEASE "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTSVG_LIBRARY_DEBUG "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTDBUS_LIBRARY_RELEASE "-framework QtDBus" CACHE STRING "The QtDBus library.") - SET(QT_QTDBUS_LIBRARY_DEBUG "-framework QtDBus" CACHE STRING "The QtDBus library.") - SET(QT_QTTEST_LIBRARY_RELEASE "-framework QtTest" CACHE STRING "The QtTest library.") - SET(QT_QTTEST_LIBRARY_DEBUG "-framework QtTest" CACHE STRING "The QtTest library.") + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") + SET(QT_QTGUI_LIBRARY "-framework QtGui" CACHE STRING "The QtGui library.") + SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" CACHE STRING "The QtNetwork library.") + SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") + SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") + SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") + SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") + SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") # WTF? why don't we have frameworks? :P - SET(QT_QTUITOOLS_LIBRARY_RELEASE "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") - SET(QT_QTUITOOLS_LIBRARY_DEBUG "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") + SET(QT_QTUITOOLS_LIBRARY "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCore_debug QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Support_debug Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMOTIF_LIBRARY IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY_RELEASE NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(Q_WS_X11) # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetwork_debug QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_RELEASE NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_DEBUG NAMES QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGL_debug QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSql_debug QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiTools_debug QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBus_debug QtDBus_debug4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # ? Why only those two? MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) + IF(MSVC) + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(MSVC) + ENDIF (QT_USE_FRAMEWORKS) - IF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) + IF( NOT QT_QTCORE_LIBRARY ) IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) + ENDIF( NOT QT_QTCORE_LIBRARY ) # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd QtAssistantClientd4 QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponents_debug QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ############################################ @@ -647,28 +599,22 @@ IF (QT4_QMAKE_FOUND) MACRO (_QT4_ADJUST_LIB_VARS basename) IF (QT_${basename}_INCLUDE_DIR) - # if only the release version was found, set the debug variable also to the release version - IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE}) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) - SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_RELEASE}) - ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - - # if only the debug version was found, set the release variable also to the debug version - IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) - SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG}) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) - - IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - IF(NOT MSVC) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) - ELSE(NOT MSVC) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF(NOT MSVC) - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + IF(MSVC) + + # Both set + IF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + + # Only debug was found + IF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + + # Hmm, is this used anywhere? + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + + ENDIF(MSVC) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") @@ -681,7 +627,7 @@ IF (QT4_QMAKE_FOUND) ENDIF (QT_${basename}_INCLUDE_DIR ) # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_RELEASE QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) ENDMACRO (_QT4_ADJUST_LIB_VARS) IF(WIN32) -- cgit v1.2.1 From 1c388b04ce49019c0acab1fc203a6a615f5bd15c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 23 Oct 2006 22:09:56 +0000 Subject: -remove some commented out code -fix kde4_add_kdeinit_executable() for enable_final Laurent: this can't have worked before, did it ? CCMAIL: montel@kde.org Alex svn path=/trunk/KDE/kdelibs/; revision=598548 --- modules/KDE4Macros.cmake | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 68e462e2..1d1af39a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -202,7 +202,6 @@ macro (KDE4_AUTOMOC) endif (_match) set_source_files_properties(${_abs_FILE} PROPERTIES AUTOMOC_FILES "${_moc_FILES_PROPERTY}") - #message(STATUS "mocs for ${_abs_FILE}: ${_moc_FILES_PROPERTY}") endif (EXISTS ${_abs_FILE} AND NOT _skip) endforeach (_current_FILE) endmacro (KDE4_AUTOMOC) @@ -211,13 +210,11 @@ endmacro (KDE4_AUTOMOC) macro(KDE4_GET_AUTOMOC_FILES _list) set(${_list}) foreach (_current_FILE ${ARGN}) - #message(STATUS "Checking ${_current_FILE}") set(_automoc_FILES_PROPERTY) get_source_file_property(_automoc_FILES_PROPERTY ${_current_FILE} AUTOMOC_FILES) if (_automoc_FILES_PROPERTY) foreach (_current_MOC_FILE ${_automoc_FILES_PROPERTY}) list(APPEND ${_list} ${_current_MOC_FILE}) - #message(STATUS "MOC ${_current_MOC_FILE}") endforeach (_current_MOC_FILE) endif (_automoc_FILES_PROPERTY) endforeach (_current_FILE) @@ -591,8 +588,9 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) kde4_get_automoc_files(_automoc_FILES ${ARGN}) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_file ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES} ${_SRCS}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) + else (KDE4_ENABLE_FINAL) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ${_automoc_FILES}) endif (KDE4_ENABLE_FINAL) -- cgit v1.2.1 From 8c826b4040dbb87ff8c1a9394d8e3cbfdbc03d56 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Tue, 24 Oct 2006 01:02:17 +0000 Subject: * check also for ruby 1.9 * 'archdir' may empty and if that's the case use 'rubyincludedir' * use 'ruby_version' * don't hardcode ruby include-path svn path=/trunk/KDE/kdelibs/; revision=598580 --- modules/FindRUBY.cmake | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index af720772..93f792d4 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -23,32 +23,33 @@ endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) # RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'` # RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` -FIND_PROGRAM(RUBY_EXECUTABLE NAMES ruby ruby1.8 ruby18 ) +FIND_PROGRAM(RUBY_EXECUTABLE NAMES ruby ruby1.8 ruby18 ruby1.9 ruby19) -EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['archdir']" +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['archdir'] || Config::CONFIG['rubyincludedir']" OUTPUT_VARIABLE RUBY_ARCH_DIR) - EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['libdir']" OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH) EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['rubylibdir']" OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH) +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['ruby_version']" + OUTPUT_VARIABLE RUBY_VERSION) + # remove the new lines from the output by replacing them with empty strings STRING(REPLACE "\n" "" RUBY_ARCH_DIR "${RUBY_ARCH_DIR}") STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}") STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}") - +STRING(REPLACE "\n" "" RUBY_VERSION "${RUBY_VERSION}") FIND_PATH(RUBY_INCLUDE_PATH - NAMES ruby.h - PATHS - ${RUBY_ARCH_DIR} - /usr/lib/ruby/1.8/i586-linux-gnu/ ) + NAMES ruby.h + PATHS ${RUBY_ARCH_DIR} ${RUBY_RUBY_LIB_PATH} + ) FIND_LIBRARY(RUBY_LIBRARY - NAMES ruby + NAMES ruby${RUBY_VERSION} ruby PATHS ${RUBY_POSSIBLE_LIB_PATH} ) -- cgit v1.2.1 From df61e0fdba982d79a5890b93db3d26a9bfc7afc5 Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Tue, 24 Oct 2006 01:08:23 +0000 Subject: better :-/ svn path=/trunk/KDE/kdelibs/; revision=598583 --- modules/FindRUBY.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 93f792d4..486916f0 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -45,12 +45,12 @@ STRING(REPLACE "\n" "" RUBY_VERSION "${RUBY_VERSION}") FIND_PATH(RUBY_INCLUDE_PATH NAMES ruby.h - PATHS ${RUBY_ARCH_DIR} ${RUBY_RUBY_LIB_PATH} + PATHS ${RUBY_ARCH_DIR} ) FIND_LIBRARY(RUBY_LIBRARY NAMES ruby${RUBY_VERSION} ruby - PATHS ${RUBY_POSSIBLE_LIB_PATH} + PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH} ) MARK_AS_ADVANCED( -- cgit v1.2.1 From dd1340092d541bf36f69369fd13150dbd949697c Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Tue, 24 Oct 2006 01:09:12 +0000 Subject: =?UTF-8?q?remove=20also=20the=20'NOTE=C3=83E'=20agai?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit svn path=/trunk/KDE/kdelibs/; revision=598585 --- modules/FindKDEWIN32.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 17a46761..7bd19d2f 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -13,9 +13,6 @@ if (WIN32) -# temporary information -message("NOTE: first try to 'cmake -G \"MinGW Makefiles\" ..\\kdelibs\\' will fail with an error in FindZLIB.cmake. Just retry and it works. The bug got reported and will hopefully be fixed in >cmake 2.4.3") - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) if(NOT QT4_FOUND) -- cgit v1.2.1 From f768b27650ff682de37b5a05d19640bf0049382e Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Tue, 24 Oct 2006 01:19:47 +0000 Subject: RUBY_LIBRARY is also set. svn path=/trunk/KDE/kdelibs/; revision=598586 --- modules/FindRUBY.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 486916f0..95da129f 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -3,8 +3,9 @@ # and libraries are. It also determines what the name of the library is. This # code sets the following variables: # +# RUBY_LIBRARY = full path+file to the ruby library # RUBY_INCLUDE_PATH = path to where ruby.h can be found -# RUBY_EXECUTABLE = full path to the ruby binary +# RUBY_EXECUTABLE = full path+file to the ruby binary # # Copyright (c) 2006, Laurent Montel, # -- cgit v1.2.1 From 642043788a94ac1c084d8345e90e5e1274794dfd Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 24 Oct 2006 08:00:47 +0000 Subject: Apparently this is still needed for Qt-4.2.1/msvc CCMAIL: "Christian Ehrlicher" svn path=/trunk/KDE/kdelibs/; revision=598624 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 1d8c3fd6..96afe1b6 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -566,7 +566,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiTools QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From 0d610fb7adbb120b09d2be5893a80506e6074b1d Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Tue, 24 Oct 2006 15:15:08 +0000 Subject: add a missing d fro qtuitools debug lib svn path=/trunk/KDE/kdelibs/; revision=598769 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 96afe1b6..4a7a1231 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -566,7 +566,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiTools QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From 8307d4e385a6357561e61acdd0ddbc20e6696414 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 24 Oct 2006 17:13:39 +0000 Subject: Perl binary is required => FATAL_ERROR when we don't have it. svn path=/trunk/KDE/kdelibs/; revision=598801 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fd7f23ab..341e27d0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -200,6 +200,10 @@ endif (NOT QT_DBUSXML2CPP_EXECUTABLE) # Perl is required for building KDE software, find_package(Perl REQUIRED) +if(NOT PERL_FOUND) + message(FATAL_ERROR "Perl was not found. Make sure it has installed on your system") +endif(NOT PERL_FOUND) + include (MacroLibrary) include (CheckCXXCompilerFlag) -- cgit v1.2.1 From 2fdca03480f7bf60d4fa320d25aaf12f5f53c4ae Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 24 Oct 2006 20:50:36 +0000 Subject: Re-enable this line... kdebase breaks otherwise with No rule to make target `runtime/kioslave/media/medianotifier/mediamanageriface.moc', needed by `[...]/runtime/kioslave/media/mediamanageriface.o'. svn path=/trunk/KDE/kdelibs/; revision=598854 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1d1af39a..d00dc016 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -195,7 +195,7 @@ macro (KDE4_AUTOMOC) # kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${ARGN}) # macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_moc}) # else (KDE4_ENABLE_FINAL) -# macro_add_file_dependencies(${_abs_FILE} ${_moc}) + macro_add_file_dependencies(${_abs_FILE} ${_moc}) # endif (KDE4_ENABLE_FINAL) endforeach (_current_MOC_INC) -- cgit v1.2.1 From 770aa5f72a07dda2c15e598e71e63aa571f63b92 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 24 Oct 2006 21:58:42 +0000 Subject: -note that this check can be removed once we depend on cmake >= 2.4.4 Alex svn path=/trunk/KDE/kdelibs/; revision=598876 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 341e27d0..8f9d0920 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -200,6 +200,7 @@ endif (NOT QT_DBUSXML2CPP_EXECUTABLE) # Perl is required for building KDE software, find_package(Perl REQUIRED) +# remove once we require cmake >= 2.4.4, then the REQUIRED flag is honored by FindPerl.cmake, Alex if(NOT PERL_FOUND) message(FATAL_ERROR "Perl was not found. Make sure it has installed on your system") endif(NOT PERL_FOUND) -- cgit v1.2.1 From 709c8181ca64c6521031fa901fa12763bdcf1d97 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 24 Oct 2006 22:16:20 +0000 Subject: -make enable_final work for kdeinit executables: give the final-file for the kdeinit lib a different name than the final-file for the application Alex CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=598883 --- modules/KDE4Macros.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d00dc016..1aae018c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -577,19 +577,17 @@ endmacro(KDE4_CHECK_EXECUTABLE_PARAMS) macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) kde4_check_executable_params(_SRCS _nogui _uninst ${ARGN}) - configure_file(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - #MACRO_ADDITIONAL_CLEAN_FILES(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) # if (WIN32) # # under windows, just build a normal executable # KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library - kde4_get_automoc_files(_automoc_FILES ${ARGN}) + kde4_get_automoc_files(_automoc_FILES ${_SRCS}) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) else (KDE4_ENABLE_FINAL) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ${_automoc_FILES}) @@ -597,6 +595,8 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) + + configure_file(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) # endif (WIN32) -- cgit v1.2.1 From ad122198084c3ae789baea6375000012c4dd80ec Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 24 Oct 2006 22:42:20 +0000 Subject: try to fix the automoc problem in kioslave/media/medianotifier kde4_automoc() absolutely _must_ work without the macro_add_file_dependencies() line. If it doesn't it's a cmake bug. But since this is the way the dependencies of generated files are handled everywhere I am at least 99% sure it works in cmake and the mistake must be on my side. So, I think the problem was that mediamanageriface.cpp was also used from mdeia/medianotifier/ using "../mediamanageriface.cpp". Then this file was parsed for "include *moc" and probably the correct line was found and added as a property to the source file using the absolute path. Later on in kde4_add_plugin() the property for the moc files was retrieved but without using the absolute path, so that's why probably the moc file wasn't found and so the dependency wasn't created. CCMAIL: faure@kde.org David, can you please check and let me know ? Thanks Alex svn path=/trunk/KDE/kdelibs/; revision=598892 --- modules/KDE4Macros.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1aae018c..f44df7a5 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -195,7 +195,7 @@ macro (KDE4_AUTOMOC) # kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${ARGN}) # macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_moc}) # else (KDE4_ENABLE_FINAL) - macro_add_file_dependencies(${_abs_FILE} ${_moc}) +# macro_add_file_dependencies(${_abs_FILE} ${_moc}) # endif (KDE4_ENABLE_FINAL) endforeach (_current_MOC_INC) @@ -211,7 +211,8 @@ macro(KDE4_GET_AUTOMOC_FILES _list) set(${_list}) foreach (_current_FILE ${ARGN}) set(_automoc_FILES_PROPERTY) - get_source_file_property(_automoc_FILES_PROPERTY ${_current_FILE} AUTOMOC_FILES) + get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE) + get_source_file_property(_automoc_FILES_PROPERTY ${_abs_FILE} AUTOMOC_FILES) if (_automoc_FILES_PROPERTY) foreach (_current_MOC_FILE ${_automoc_FILES_PROPERTY}) list(APPEND ${_list} ${_current_MOC_FILE}) -- cgit v1.2.1 From 1ed1f51e93a88620f9ee263b946e90fdab48736d Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Mon, 30 Oct 2006 21:00:36 +0000 Subject: search for xsltproc svn path=/trunk/KDE/kdelibs/; revision=600522 --- modules/FindLibXslt.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index fcebd0c1..c605ce2a 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -5,6 +5,7 @@ # LIBXSLT_INCLUDE_DIR - the LibXslt include directory # LIBXSLT_LIBRARIES - Link these to LibXslt # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt +# XSLTPROC_EXECUTABLE - path to the xsltproc tool # Copyright (c) 2006, Alexander Neundorf, # @@ -39,7 +40,9 @@ IF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) ELSE (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) SET(LIBXSLT_FOUND FALSE) ENDIF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) - + +FIND_PROGRAM(XSLTPROC_EXECUTABLE xsltproc) + IF (LIBXSLT_FOUND) IF (NOT LibXslt_FIND_QUIETLY) MESSAGE(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}") @@ -50,5 +53,5 @@ ELSE (LIBXSLT_FOUND) ENDIF (LibXslt_FIND_REQUIRED) ENDIF (LIBXSLT_FOUND) -MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) +MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES XSLTPROC_EXECUTABLE) -- cgit v1.2.1 From 3f3f0244a1aeabaf38a488ed0f31018b51d8d36f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 31 Oct 2006 10:57:59 +0000 Subject: Display real default value svn path=/trunk/KDE/kdelibs/; revision=600648 --- modules/FindKDE4Internal.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8f9d0920..a9b9c781 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -240,18 +240,18 @@ endmacro(_SET_FANCY) _set_fancy(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share "Base directory for files which go to share/") _set_fancy(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} "Base directory for executables and libraries") -_set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default prefix/bin)") -_set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default prefix/sbin)") -_set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})") +_set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") +_set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") +_set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") -_set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib/kde4/libexec)") -_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") +_set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") +_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default prefix/share/icons/)") +_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") _set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") _set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") _set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") @@ -269,8 +269,8 @@ _set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" _set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") -_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default prefix/man/)") -_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default prefix/info)") +_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") +_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") # _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") # _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") -- cgit v1.2.1 From 0542b9522a80f4bc49a33411e22512878d1e31b5 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Thu, 2 Nov 2006 15:37:32 +0000 Subject: add libkmime svn path=/trunk/KDE/kdelibs/; revision=601223 --- modules/FindKdepimLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 7a382586..9f513d36 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -21,3 +21,4 @@ set(KDE4_KTNEF_LIBS ktnef) set(KDE4_KRESOURCES_LIBS kresources) set(KDE4_SYNDICATION_LIBS syndication) set(KDE4_KLDAP_LIBS kldap) +set(KDE4_KMIME_LIBS kmime) -- cgit v1.2.1 From 4f2b2be454a2f22c2cf075e4cf79cdfb8ca2e79e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Fri, 3 Nov 2006 22:26:26 +0000 Subject: update with the QTMAIN part of the cmake cvs svn path=/trunk/KDE/kdelibs/; revision=601625 --- modules/FindQt4.cmake | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 4a7a1231..a9225f7b 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -586,10 +586,17 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTDESIGNER_LIBRARY FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTDESIGNER_LIBRARY + # Set QT_QTDESIGNER_LIBRARY FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - + # Set QT_QTMAIN_LIBRARY + IF(WIN32) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} + NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} + NO_DEFAULT_PATH) + ENDIF(WIN32) + ############################################ # # Check the existence of the libraries. @@ -631,7 +638,10 @@ IF (QT4_QMAKE_FOUND) ENDMACRO (_QT4_ADJUST_LIB_VARS) IF(WIN32) - _QT4_ADJUST_LIB_VARS(QTMAIN) + # there is no include for qtmain but adjust macro needs it set + SET(QT_QTMAIN_INCLUDE_DIR 1) + _QT4_ADJUST_LIB_VARS(QTMAIN) + SET(QT_QTMAIN_INCLUDE_DIR ) ENDIF(WIN32) -- cgit v1.2.1 From e87a06ebf24101ac22abca779825c67f16f147c0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 5 Nov 2006 14:48:12 +0000 Subject: -improved FindKdepimLibs.cmake to support _FOUND, REQUIRED and QUIET Alex svn path=/trunk/KDE/kdelibs/; revision=602246 --- modules/FindKdepimLibs.cmake | 42 +++++++++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 9f513d36..33125041 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -1,5 +1,10 @@ # Find if we installed kdepimlibs before to compile it +# Once done this will define # +# KDEPIMLIBS_FOUND - system has KDE PIM Libraries +# KDEPIMLIBS_INCLUDE_DIR - the KDE PIM Libraries include directory + + # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -10,15 +15,30 @@ find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h ${KDE4_INCLUDE_DIR} ) -if( NOT KDEPIMLIBS_INCLUDE_DIR ) +if( KDEPIMLIBS_INCLUDE_DIR ) + set(KDEPIMLIBS_FOUND TRUE) + set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) + set(KDE4_KABC_LIBS kabc) + + set(KDE4_KCAL_LIBS kcal) + set(KDE4_KTNEF_LIBS ktnef) + set(KDE4_KRESOURCES_LIBS kresources) + set(KDE4_SYNDICATION_LIBS syndication) + set(KDE4_KLDAP_LIBS kldap) + set(KDE4_KMIME_LIBS kmime) +else( KDEPIMLIBS_INCLUDE_DIR ) + set(KDEPIMLIBS_FOUND FALSE) message(FATAL_ERROR "Could NOT find a kdepimlibs installation.\nPlease build and install kdepimlibs first.") -endif(NOT KDEPIMLIBS_INCLUDE_DIR ) - -set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) -set(KDE4_KABC_LIBS kabc) -set(KDE4_KCAL_LIBS kcal) -set(KDE4_KTNEF_LIBS ktnef) -set(KDE4_KRESOURCES_LIBS kresources) -set(KDE4_SYNDICATION_LIBS syndication) -set(KDE4_KLDAP_LIBS kldap) -set(KDE4_KMIME_LIBS kmime) +endif( KDEPIMLIBS_INCLUDE_DIR ) + +if (KDEPIMLIBS_FOUND) + if (NOT KdepimLibs_FIND_QUIETLY) + message(STATUS "Found KDE PIM libraries") + endif (NOT KdepimLibs_FIND_QUIETLY) +else (KDEPIMLIBS_FOUND) + if (KdepimLibs_FIND_REQUIRED) + message(FATAL_ERROR "Could not find KDE PIM libraries") + endif (KdepimLibs_FIND_REQUIRED) +endif (KDEPIMLIBS_FOUND) + + -- cgit v1.2.1 From a96d6cc8f9edfa3fa7eb12f3c22b7b573da97a0e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 5 Nov 2006 23:56:38 +0000 Subject: -make the format of macro_log_feature less verbose Alex CCMAIL: winter@kde.org, groot@kde.org Feel free to change it as you like it svn path=/trunk/KDE/kdelibs/; revision=602437 --- modules/MacroLogFeature.cmake | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 41c150e3..c4ee4079 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -66,20 +66,15 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ ENDIF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") ENDIF (${_var}) - IF (NOT EXISTS ${_LOGFILENAME}) - FILE(WRITE ${_LOGFILENAME} "\n") - ENDIF (NOT EXISTS ${_LOGFILENAME}) - - FILE(APPEND "${_LOGFILENAME}" "=======================================\n") - FILE(APPEND "${_LOGFILENAME}" "PACKAGE: ${_package}\n") - FILE(APPEND "${_LOGFILENAME}" "DESCRIPTION: ${_description}\n") - FILE(APPEND "${_LOGFILENAME}" "URL: ${_url}\n") + SET(_logtext " ${_package}:\t ${_description}; ${_url};") + IF (${_minvers} MATCHES ".*") - FILE(APPEND "${_LOGFILENAME}" "VERSION: ${_minvers}\n") + SET(_logtext "${_logtext} ${_minvers};") ENDIF (${_minvers} MATCHES ".*") IF (${_comments} MATCHES ".*") - FILE(APPEND "${_LOGFILENAME}" "COMMENTS: ${_comments}\n") + SET(_logtext "${_logtext} ${_comments};") ENDIF (${_comments} MATCHES ".*") + FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n") ENDMACRO(MACRO_LOG_FEATURE) @@ -88,27 +83,26 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) IF (EXISTS ${_file}) - FILE(APPEND ${_file} "=======================================") FILE(READ ${_file} _requirements) - MESSAGE(STATUS "\nMissing Requirements:${_requirements}") + MESSAGE(STATUS "MISSING REQUIREMENTS\n${_requirements}\n") FILE(REMOVE ${_file}) MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") ENDIF (EXISTS ${_file}) + SET(_summary "\nFEATURE SUMMARY\n----------------\n") SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) IF (EXISTS ${_file}) - FILE(APPEND ${_file} "=======================================") FILE(READ ${_file} _enabled) - MESSAGE(STATUS "\nEnabled Features:${_enabled}") FILE(REMOVE ${_file}) + SET(_summary "${_summary}\nEnabled Features:\n${_enabled}") ENDIF (EXISTS ${_file}) SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt ) IF (EXISTS ${_file}) - FILE(APPEND ${_file} "=======================================") FILE(READ ${_file} _disabled) - MESSAGE(STATUS "\nDisabled Features:${_disabled}") FILE(REMOVE ${_file}) + SET(_summary "${_summary}\nDisabled Features:\n${_disabled}") ENDIF (EXISTS ${_file}) + MESSAGE(STATUS "${_summary}") ENDMACRO(MACRO_DISPLAY_FEATURE_LOG) -- cgit v1.2.1 From 9e16eabdf36448093d0603fee72f0310e7daf0c7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 6 Nov 2006 00:01:50 +0000 Subject: -one more macro_log_feature -cosmetic fixes to FindTIFF.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=602438 --- modules/FindTIFF.cmake | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 6cacf167..81931e8a 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -15,20 +15,16 @@ if (TIFF_INCLUDE_DIR) set(TIFF_FIND_QUIETLY TRUE) endif (TIFF_INCLUDE_DIR) -FIND_PATH(TIFF_INCLUDE_DIR tiff.h - /usr/local/include - /usr/include -) +find_path(TIFF_INCLUDE_DIR NAMES tiff.h ) set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) -FIND_LIBRARY(TIFF_LIBRARY - NAMES ${TIFF_NAMES} - PATHS /usr/lib /usr/local/lib -) +find_library(TIFF_LIBRARY NAMES ${TIFF_NAMES} ) if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) set(TIFF_FOUND TRUE) set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) +else (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) + set(TIFF_FOUND FALSE) endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) if (TIFF_FOUND) @@ -41,4 +37,4 @@ else (TIFF_FOUND) endif (TIFF_FIND_REQUIRED) endif (TIFF_FOUND) -MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY) +mark_as_advanced(TIFF_INCLUDE_DIR TIFF_LIBRARY) -- cgit v1.2.1 From 8d1a3f70f2c884a0eb55958765543fed85bb2972 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 6 Nov 2006 01:54:33 +0000 Subject: I had to make the logging more verbose and easier to read. Sure, we want something that can be easy to parse by machine, but more important to make it human-readable, IMO. CCMAIL: neundorf@kde.org, groot@kde.org svn path=/trunk/KDE/kdelibs/; revision=602461 --- modules/MacroLogFeature.cmake | 34 +++++++++++++++++++--------------- 1 file changed, 19 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index c4ee4079..55f7b69f 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -31,17 +31,17 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. IF (NOT _macroLogFeatureAlreadyIncluded) - SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) + SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt) IF (EXISTS ${_file}) FILE(REMOVE ${_file}) ENDIF (EXISTS ${_file}) - SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) IF (EXISTS ${_file}) FILE(REMOVE ${_file}) ENDIF (EXISTS ${_file}) - SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt ) + SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) IF (EXISTS ${_file}) FILE(REMOVE ${_file}) ENDIF (EXISTS ${_file}) @@ -57,7 +57,7 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ SET(_comments "${ARGV6}") IF (${_var}) - SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) ELSE (${_var}) IF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/MissingRequirements.txt) @@ -66,42 +66,46 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ ENDIF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") ENDIF (${_var}) - SET(_logtext " ${_package}:\t ${_description}; ${_url};") + SET(_logtext "> ${_package}") IF (${_minvers} MATCHES ".*") - SET(_logtext "${_logtext} ${_minvers};") + SET(_logtext "${_logtext}, ${_minvers}") ENDIF (${_minvers} MATCHES ".*") + SET(_logtext "${_logtext}: ${_description}; ${_url};") IF (${_comments} MATCHES ".*") - SET(_logtext "${_logtext} ${_comments};") + SET(_logtext "${_logtext}\n${_comments}") ENDIF (${_comments} MATCHES ".*") - FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n") + FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n\n") ENDMACRO(MACRO_LOG_FEATURE) MACRO(MACRO_DISPLAY_FEATURE_LOG) - SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt ) + SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _requirements) - MESSAGE(STATUS "MISSING REQUIREMENTS\n${_requirements}\n") + MESSAGE(STATUS "\n----------------------------------------------------------------------------------\n-- The following list of REQUIRED packages could not be located on your system. --\n-- Please install them before continuing with this software installation. --\n----------------------------------------------------------------------------------\n${_requirements}----------------------------------------------------------------------------------") +# MESSAGE(STATUS "MISSING REQUIREMENTS\n${_requirements}\n") FILE(REMOVE ${_file}) MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") ENDIF (EXISTS ${_file}) - SET(_summary "\nFEATURE SUMMARY\n----------------\n") - SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt ) + SET(_summary "\n") + SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _enabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}\nEnabled Features:\n${_enabled}") + SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages were located on your system. --\n-- You will have all the following features available from this software. --\n----------------------------------------------------------------------------------\n${_enabled}") +# SET(_summary "${_summary}Enabled Features:\n${_enabled}") ENDIF (EXISTS ${_file}) - SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt ) + SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _disabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}\nDisabled Features:\n${_disabled}") + SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages could not be located on your system. --\n-- Please consider installing them to enable more features of this software. --\n----------------------------------------------------------------------------------\n${_disabled}") +# SET(_summary "${_summary}Disabled Features:\n${_disabled}") ENDIF (EXISTS ${_file}) MESSAGE(STATUS "${_summary}") -- cgit v1.2.1 From f10602133356f21ced8bfe3a64c24f68312009f5 Mon Sep 17 00:00:00 2001 From: Hamish Rodda Date: Mon, 6 Nov 2006 06:42:14 +0000 Subject: Add the forwarding includes directory to ${KDE_INCLUDES} svn path=/trunk/KDE/kdelibs/; revision=602569 --- modules/FindKDE4Internal.cmake | 71 +++++++++++++++++++++--------------------- 1 file changed, 36 insertions(+), 35 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a9b9c781..62f4006a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -6,8 +6,8 @@ # # KDE4_DEFINITIONS - compiler definitions required for compiling KDE software # KDE4_INCLUDE_DIR - the KDE 4 include directory -# KDE4_INCLUDES - all include directories required for KDE, i.e. -# KDE4_INCLUDE_DIR, but also the Qt4 include directories +# KDE4_INCLUDES - all include directories required for KDE, i.e. +# KDE4_INCLUDE_DIR, but also the Qt4 include directories # and other platform specific include directories # KDE4_LIB_DIR - the directory where the KDE libraries are installed, # intended to be used with LINK_DIRECTORIES() @@ -34,7 +34,7 @@ # KDE4_KNEWSTUFF_LIBRARY - the knewstuff library # KDE4_KDEPRINT_LIBRARY - the kdeprint library # KDE4_KSPELL2_LIBRARY - the kspell2 library -# KDE4_KDNSSD_LIBRARY - the kdnssd library +# KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONONCORE_LIBRARY - the phononcore library # KDE4_PHONONUI_LIBRARY - the phononui library # KDE4_KDEFX_LIBRARY - the kdefx library @@ -101,7 +101,7 @@ # # KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation # KDE4_BUILD_TESTS - enable this to build the testcases -# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature +# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature # # It also adds the following macros (from KDE4Macros.cmake) # KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) @@ -129,7 +129,7 @@ # but require more manual work. # # KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) -# This will create and install a simple libtool file for the +# This will create and install a simple libtool file for the # given target. This might be required for other software. # The libtool file will be install in subdir, relative to CMAKE_INSTALL_PREFIX . # @@ -157,7 +157,7 @@ # # KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) # Equivalent to ADD_EXECUTABLE(), but additionally adds support for KDE4_ENABLE_FINAL. -# If you don't need support for KDE4_ENABLE_FINAL, you can just use the +# If you don't need support for KDE4_ENABLE_FINAL, you can just use the # normal ADD_EXECUTABLE(). # If the executable has to be run from the buildtree (e.g. unit tests and code generators # used later on when compiling), set the option RUN_UNINSTALLED. @@ -190,7 +190,7 @@ cmake_minimum_required(VERSION 2.4.3 FATAL_ERROR) set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers -find_package(Qt4 REQUIRED) +find_package(Qt4 REQUIRED) if (NOT QT_DBUSXML2CPP_EXECUTABLE) message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") @@ -219,12 +219,12 @@ set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) # so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will # calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX # this would work completely without using the cache. -# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into +# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into # the cache, otherwise it will be forgotten on the next cmake run. # Once a variable is in the cache, it doesn't depend on its "parent" variables # anymore and you can only change it by editing it directly. -# this macro helps in this regard, because as long as you don't set one of the -# variables explicitely to some location, it will always calculate its value from its +# this macro helps in this regard, because as long as you don't set one of the +# variables explicitely to some location, it will always calculate its value from its # parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. # But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location # this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. @@ -258,7 +258,7 @@ _set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The _set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" "The install dir for service (desktop, protocol, ...) files") _set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" "The install dir for servicestypes desktop files") _set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") -_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") +_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") _set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") # this one shouldn't be used anymore @@ -289,10 +289,10 @@ option(KDE4_BUILD_TESTS "Build the tests") if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) -endif(KDE4_ENABLE_FINAL) +endif(KDE4_ENABLE_FINAL) -#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable -#which is something between a shared library and a normal executable. +#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable +#which is something between a shared library and a normal executable. #Programs compiled with these features appear as ?shared object? with the file command. #info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") @@ -315,7 +315,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - + if (WIN32) set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC @@ -323,20 +323,20 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.shell ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) - + # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) - + set(KDE4_INSTALLED_VERSION_OK TRUE) - + else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) # ... but NOT otherwise @@ -355,11 +355,11 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) if (NOT KDE_MIN_VERSION) set(KDE_MIN_VERSION "3.9.0") endif (NOT KDE_MIN_VERSION) - + #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) - + else (KDEVERSION) message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") endif (KDEVERSION) @@ -372,7 +372,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - + find_library(KDE4_KDEFX_LIBRARY NAMES kdefx PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEFX_LIBS ${kdefx_LIB_DEPENDS} ${KDE4_KDEFX_LIBRARY} ) @@ -512,20 +512,20 @@ if (WIN32) # is GnuWin32 required or does e.g. Visual Studio provide an own implementation? #find_package(GNUWIN32 REQUIRED) find_package(GNUWIN32) - + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES} ${GNUWIN32_INCLUDE_DIR}) - # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, + # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - + # windows, mingw if(MINGW) #hmmm, something special to do here ? endif(MINGW) - + # windows, microsoft compiler if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) @@ -562,7 +562,7 @@ if (UNIX) # the rest is RPATH handling # here the defaults are set - # which are partly overwritten in kde4_handle_rpath_for_library() + # which are partly overwritten in kde4_handle_rpath_for_library() # and kde4_handle_rpath_for_executable(), both located in KDE4Macros.cmake, Alex if (APPLE) set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) @@ -678,10 +678,10 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif(KDE4_ENABLE_FPIE) # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) - + # get the gcc version exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) - + string (REGEX MATCH " [34]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: if (NOT _gcc_version) @@ -689,13 +689,13 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (NOT _gcc_version) macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) - - if (GCC_IS_NEWER_THAN_4_1) + + if (GCC_IS_NEWER_THAN_4_1) exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") - else (GCC_IS_NEWER_THAN_4_1) + else (GCC_IS_NEWER_THAN_4_1) set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) - endif (GCC_IS_NEWER_THAN_4_1) + endif (GCC_IS_NEWER_THAN_4_1) if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") @@ -760,7 +760,7 @@ macro (KDE4_PRINT_RESULTS) message(STATUS "Didn't find KDE4 core library") endif(KDE4_LIB_DIR) endif(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) - + if(KDE4_KCFGC_EXECUTABLE) message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") else(KDE4_KCFGC_EXECUTABLE) @@ -785,7 +785,8 @@ if (NOT KDE4Internal_FIND_QUIETLY) endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path -set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) +#the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include +set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ) set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) -- cgit v1.2.1 From a5e5b704dbbc3507ba4df02bf68519424c9c499f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Mon, 6 Nov 2006 12:38:46 +0000 Subject: qtmain/qtmaind changes: * remove usage of dummy QT_QTMAIN_INCLUDE_DIR * make qtmain library code more consistent with the rest CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=602637 --- modules/FindQt4.cmake | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a9225f7b..a0f7a48e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -570,6 +570,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(MSVC) ENDIF (QT_USE_FRAMEWORKS) @@ -591,10 +592,7 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTMAIN_LIBRARY IF(WIN32) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} - NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} - NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(WIN32) ############################################ @@ -604,7 +602,7 @@ IF (QT4_QMAKE_FOUND) ############################################ MACRO (_QT4_ADJUST_LIB_VARS basename) - IF (QT_${basename}_INCLUDE_DIR) + IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) IF(MSVC) @@ -628,32 +626,27 @@ IF (QT4_QMAKE_FOUND) IF (QT_${basename}_LIBRARY) SET(QT_${basename}_FOUND 1) ENDIF (QT_${basename}_LIBRARY) - + + ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF (QT_${basename}_INCLUDE_DIR) #add the include directory to QT_INCLUDES SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") - ENDIF (QT_${basename}_INCLUDE_DIR ) + ENDIF (QT_${basename}_INCLUDE_DIR) # Make variables changeble to the advanced user MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) ENDMACRO (_QT4_ADJUST_LIB_VARS) - IF(WIN32) - # there is no include for qtmain but adjust macro needs it set - SET(QT_QTMAIN_INCLUDE_DIR 1) - _QT4_ADJUST_LIB_VARS(QTMAIN) - SET(QT_QTMAIN_INCLUDE_DIR ) - ENDIF(WIN32) - + # Set QT_xyz_LIBRARY variable and add + # library include path to QT_INCLUDES _QT4_ADJUST_LIB_VARS(QTCORE) _QT4_ADJUST_LIB_VARS(QTGUI) _QT4_ADJUST_LIB_VARS(QT3SUPPORT) _QT4_ADJUST_LIB_VARS(QTASSISTANT) _QT4_ADJUST_LIB_VARS(QTDESIGNER) _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) - IF(Q_WS_X11) - _QT4_ADJUST_LIB_VARS(QTMOTIF) - ENDIF(Q_WS_X11) _QT4_ADJUST_LIB_VARS(QTNETWORK) _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) _QT4_ADJUST_LIB_VARS(QTOPENGL) @@ -663,6 +656,16 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) _QT4_ADJUST_LIB_VARS(QTDBUS) + + + # platform dependent libraries + IF(Q_WS_X11) + _QT4_ADJUST_LIB_VARS(QTMOTIF) + ENDIF(Q_WS_X11) + IF(WIN32) + _QT4_ADJUST_LIB_VARS(QTMAIN) + ENDIF(WIN32) + ####################################### # -- cgit v1.2.1 From b586df5f5ec51c1444f043929a36fe5f9baf5336 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Mon, 6 Nov 2006 17:29:11 +0000 Subject: copying the GLIB2 module from kdebase, as it's needed by kdemultimedia svn path=/trunk/KDE/kdelibs/; revision=602730 --- modules/FindGLIB2.cmake | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 modules/FindGLIB2.cmake (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake new file mode 100644 index 00000000..3dac5a4f --- /dev/null +++ b/modules/FindGLIB2.cmake @@ -0,0 +1,40 @@ +# - Try to find the GLIB2 libraries +# Once done this will define +# +# GLIB2_FOUND - system has glib2 +# GLIB2_INCLUDE_DIR - the glib2 include directory +# GLIB2_LIBRARIES - glib2 library + +if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) + # Already in cache, be silent + set(GLIB2_FIND_QUIETLY TRUE) +endif(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) + +INCLUDE(UsePkgConfig) +PKGCONFIG(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) + +FIND_PATH(GLIB2_INCLUDE_DIR glib.h + /usr/include/glib-2.0 + /usr/include + /usr/local/include/glib-2.0 + /usr/local/include +) + +FIND_LIBRARY(GLIB2_LIBRARIES NAMES glib-2.0 + PATHS + ${_libGLIB2LinkDir} + /usr/lib + /usr/local/lib +) + +if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) + set(GLIB2_FOUND TRUE) +endif(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) + +if(GLIB2_FOUND) + if(NOT GLIB2_FIND_QUIETLY) + message(STATUS "Found glib2: ${GLIB2_LIBRARIES} ${GLIB2_LIBRARIES}") + endif(NOT GLIB2_FIND_QUIETLY) +endif(GLIB2_FOUND) + +MARK_AS_ADVANCED(GLIB2_INCLUDE_DIR GLIB2_LIBRARIES) -- cgit v1.2.1 From aae517b4cf8747868e564ad545d41ec42e667be1 Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Thu, 9 Nov 2006 06:47:50 +0000 Subject: I choose to install it nowhere in program_files but right in KDE's install path svn path=/trunk/KDE/kdelibs/; revision=603469 --- modules/FindKDEWIN32.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 7bd19d2f..afa8ee9b 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -20,7 +20,7 @@ if(NOT QT4_FOUND) endif(NOT QT4_FOUND) find_path(KDEWIN32_INCLUDE_DIR winposix_export.h - ${_program_FILES_DIR}/kdewin32/include + ${_program_FILES_DIR}/kdewin32/include ${CMAKE_INSTALL_PREFIX}/include ) @@ -30,14 +30,14 @@ find_path(KDEWIN32_INCLUDE_DIR winposix_export.h set(KDEWIN32_LIBRARY_PATH ${_program_FILES_DIR}/kdewin32/lib) find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 PATHS - ${KDEWIN32_LIBRARY_PATH} + ${KDEWIN32_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib ) # msvc makes a difference between debug and release if(MSVC) find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d PATHS - ${_program_FILES_DIR}/kdewin32/lib + ${_program_FILES_DIR}/kdewin32/lib ${CMAKE_INSTALL_PREFIX}/lib ) if(MSVC_IDE) # the ide needs the debug and release version -- cgit v1.2.1 From 3883418950a1f3dd7469601ed69266f8916b2c23 Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Thu, 9 Nov 2006 10:07:41 +0000 Subject: let's try if it's really that simple :) svn path=/trunk/KDE/kdelibs/; revision=603513 --- modules/FindKDE4Internal.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 62f4006a..389edd0c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -727,8 +727,10 @@ if (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_C_COMPILER MATCHES "icc") -# it seems we prefer not to use a different postfix for debug libs, Alex -# SET(CMAKE_DEBUG_POSTFIX "_debug") +# it seems we prefer not to use a different postfix for debug libs outside of Windows +if (WIN32) + SET(CMAKE_DEBUG_POSTFIX "d") +endif (WIN32) ########### end of platform specific stuff ########################## -- cgit v1.2.1 From c7389107ed55feb98185d17bbd245a2161f9e870 Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Thu, 9 Nov 2006 10:15:28 +0000 Subject: unconfuse the master svn path=/trunk/KDE/kdelibs/; revision=603517 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 389edd0c..81e2052d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -727,7 +727,7 @@ if (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_C_COMPILER MATCHES "icc") -# it seems we prefer not to use a different postfix for debug libs outside of Windows +# we prefer to use a different postfix for debug libs only on Windows if (WIN32) SET(CMAKE_DEBUG_POSTFIX "d") endif (WIN32) -- cgit v1.2.1 From 1268579a93f7d2915c547c923048c30dd0899f05 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 9 Nov 2006 14:05:02 +0000 Subject: Fatal error when we didn't find it and it's requires (found when I try to port compile under MacOsX) svn path=/trunk/KDE/kdelibs/; revision=603631 --- modules/FindFreetype.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 8fdb1692..571021a0 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -45,4 +45,15 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) endif(FREETYPECONFIG_EXECUTABLE) + + IF (FREETYPE_FOUND) + IF (NOT FREETYPE_FIND_QUIETLY) + MESSAGE(STATUS "Found Freetype: ${FREETYPE_LIBRARIES}") + ENDIF (NOT FREETYPE_FIND_QUIETLY) + ELSE (FREETYPE_FOUND) + IF (FREETYPE_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find FreeType library") + ENDIF (FREETYPE_FIND_REQUIRED) + ENDIF (FREETYPE_FOUND) + endif (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) -- cgit v1.2.1 From 8972bf120307d95056890abc224c1e1d49f1a4f1 Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Sun, 12 Nov 2006 12:14:22 +0000 Subject: this does not work and I'm not enough of a cmake expert svn path=/trunk/KDE/kdelibs/; revision=604286 --- modules/FindKDE4Internal.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 81e2052d..f4f14fe0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -728,8 +728,9 @@ if (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_C_COMPILER MATCHES "icc") # we prefer to use a different postfix for debug libs only on Windows +# does not work atm if (WIN32) - SET(CMAKE_DEBUG_POSTFIX "d") + SET(CMAKE_DEBUG_POSTFIX "") endif (WIN32) ########### end of platform specific stuff ########################## -- cgit v1.2.1 From 686e98c28b13088f1a86fa3b1c910d1037122cbb Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 16 Nov 2006 21:52:15 +0000 Subject: SVN_SILENT doc svn path=/trunk/KDE/kdelibs/; revision=605480 --- modules/KDE4Macros.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f44df7a5..688393bc 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -12,6 +12,7 @@ # KDE4_ADD_WIDGET_FILES # KDE4_INSTALL_ICONS # KDE4_REMOVE_OBSOLETE_CMAKE_FILES +# KDE4_NO_ENABLE_FINAL # Copyright (c) 2006, Alexander Neundorf, # Copyright (c) 2006, Laurent Montel, -- cgit v1.2.1 From 491b73d5a0712517b0be22ef7657b91a078ec08c Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Nov 2006 09:34:10 +0000 Subject: Don't try to use pkg-config under Windows svn path=/trunk/KDE/kdelibs/; revision=606389 --- modules/FindAGG.cmake | 4 ++-- modules/FindENCHANT.cmake | 4 ++-- modules/FindFontconfig.cmake | 4 ++-- modules/FindOpenEXR.cmake | 4 ++-- modules/FindQCA2.cmake | 4 ++-- modules/FindUSB.cmake | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index d4b6df27..178c772b 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -17,7 +17,7 @@ if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) SET(AGG_FOUND TRUE) else (AGG_INCLUDE_DIR AND AGG_LIBRARIES) - +IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) @@ -25,7 +25,7 @@ else (AGG_INCLUDE_DIR AND AGG_LIBRARIES) PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) set(AGG_DEFINITIONS ${_AGGCflags}) - +ENDIF (NOT WIN32) FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h ${_AGGIncDir} /usr/include diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 04ddb0fe..f7a3f0f6 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -18,7 +18,7 @@ if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) SET(ENCHANT_FOUND TRUE) else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) - +IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) @@ -26,7 +26,7 @@ else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) PKGCONFIG(enchant _ENCHANTIncDir _ENCHANTLinkDir _ENCHANTLinkFlags _ENCHANTCflags) set(ENCHANT_DEFINITIONS ${_ENCHANTCflags}) - +ENDIF (NOT WIN32) FIND_PATH(ENCHANT_INCLUDE_DIR enchant/enchant.h ${_ENCHANTIncDir} /usr/include diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 3f588479..f90c3b32 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -17,7 +17,7 @@ if (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) set(FONTCONFIG_FOUND TRUE) else (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) - +IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) @@ -25,7 +25,7 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) PKGCONFIG(fontconfig _FONTCONFIGIncDir _FONTCONFIGLinkDir _FONTCONFIGLinkFlags _FONTCONFIGCflags) set(FONTCONFIG_DEFINITIONS ${_FONTCONFIGCflags} CACHE INTERNAL "The compilation flags for fontconfig") - +ENDIF (NOT WIN32) find_path(FONTCONFIG_INCLUDE_DIR fontconfig/fontconfig.h PATHS ${_FONTCONFIGIncDir} diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 81627b7e..36950b83 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -16,13 +16,13 @@ if (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) SET(OPENEXR_FOUND TRUE) else (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) - +IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) - +ENDIF (NOT WIN32) FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h ${_OpenEXRIncDir} ${_OpenEXRIncDir}/OpenEXR/ diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index c9ba1bf7..7dc12e35 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -17,14 +17,14 @@ INCLUDE(UsePkgConfig) - +IF (NOT WIN32) PKGCONFIG(qca _Qca2IncDir _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) MESSAGE(STATUS "pkg-config returned ${_Qca2IncDir} for QCA 2 includes") set(QCA2_DEFINITIONS ${_Qca2Cflags}) set(QCA2_INCLUDE_DIR ${_Qca2IncDir}) - +ENDIF (NOT WIN32) #FIND_PATH(QCA2_INCLUDE_DIR QtCrypto # PATHS # ${_Qca2IncDir} diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 5c4d65d6..e4ffbac5 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -17,13 +17,13 @@ if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) set(LIBUSB_FOUND TRUE) else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) - +IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) PKGCONFIG(libUSB _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) - +ENDIF(NOT WIN32) FIND_PATH(LIBUSB_INCLUDE_DIR usb.h /usr/include /usr/local/include -- cgit v1.2.1 From 128c106c76423e7ecdb77f8f9b516cb033ef5dde Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 23 Nov 2006 21:46:19 +0000 Subject: minor fixes from Luca Gugelmann CCMAIL: lucag@student.ethz.ch svn path=/trunk/KDE/kdelibs/; revision=607264 --- modules/FindGLIB2.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 3dac5a4f..0dc5fe44 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -14,6 +14,7 @@ INCLUDE(UsePkgConfig) PKGCONFIG(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) FIND_PATH(GLIB2_INCLUDE_DIR glib.h + ${_LibGLIB2IncDir} /usr/include/glib-2.0 /usr/include /usr/local/include/glib-2.0 @@ -22,7 +23,7 @@ FIND_PATH(GLIB2_INCLUDE_DIR glib.h FIND_LIBRARY(GLIB2_LIBRARIES NAMES glib-2.0 PATHS - ${_libGLIB2LinkDir} + ${_LibGLIB2LinkDir} /usr/lib /usr/local/lib ) -- cgit v1.2.1 From 896f83740e1d232768249853d4835d0a7316b2f9 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sun, 26 Nov 2006 10:19:24 +0000 Subject: set linker flag --export-all-symbols for all targets, otherwise some depending targets could not be build svn path=/trunk/KDE/kdelibs/; revision=607915 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f4f14fe0..d8ad5e0b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -647,6 +647,11 @@ if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) endif(MSVC) +if (MINGW) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols") +endif (MINGW) + if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. -- cgit v1.2.1 From b720757027cc164e6f3cf137d4dae1a3c8575c4f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 26 Nov 2006 10:55:19 +0000 Subject: SVN_SILENT: clean doc svn path=/trunk/KDE/kdelibs/; revision=607928 --- modules/MacroAddFileDependencies.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroAddFileDependencies.cmake b/modules/MacroAddFileDependencies.cmake index 61cb1ab5..9e553607 100644 --- a/modules/MacroAddFileDependencies.cmake +++ b/modules/MacroAddFileDependencies.cmake @@ -1,5 +1,4 @@ -# - MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) -# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) +# MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) # Copyright (c) 2006, Alexander Neundorf, # -- cgit v1.2.1 From 93896ee1abdb312b7cb9826b9af0c9f617572a62 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 27 Nov 2006 23:11:49 +0000 Subject: -modify RPATH behaviour for libraries so that they work as expected (...although it might not be correct expectations...) this changed with cmake 2.4.3, where INSTALL_RPATH_USE_LINK_PATH was introduced -add docs for BIN_INSTALL_DIR and SBIN_INSTALL_DIR Alex svn path=/trunk/KDE/kdelibs/; revision=608580 --- modules/FindKDE4Internal.cmake | 4 +++- modules/KDE4Macros.cmake | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d8ad5e0b..bf327f0f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -73,13 +73,15 @@ # for install directories. They are all interpreted relative # to CMAKE_INSTALL_PREFIX # +# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) +# SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) +# LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) # CONFIG_INSTALL_DIR - the config file install dir # DATA_INSTALL_DIR - the parent directory where applications can install their data # HTML_INSTALL_DIR - the HTML install dir for documentation # ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) # INFO_INSTALL_DIR - the kde info install dir (default prefix/info) # KCFG_INSTALL_DIR - the install dir for kconfig files -# LIB_INSTALL_DIR - the subdirectory relative to the install prefix where libraries will be installed (default is /lib) # LOCALE_INSTALL_DIR - the install dir for translations # MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) # MIME_INSTALL_DIR - the install dir for the mimetype desktop files diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 688393bc..1e3f75cf 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -410,7 +410,7 @@ endmacro (KDE4_CREATE_FINAL_FILES) # the hope that the RPATH which is compiled into the executable is good enough. macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) if (NOT CMAKE_SKIP_RPATH) - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") + set_target_properties(${_target_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH FALSE SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") endif (NOT CMAKE_SKIP_RPATH) endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) -- cgit v1.2.1 From f29c6ae2ceb3a97d726c2c82534052e57a6a8c4e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 28 Nov 2006 07:48:26 +0000 Subject: Add KDE4_KROSSCORE_LIBRARY/LIBS variables svn path=/trunk/KDE/kdelibs/; revision=608729 --- modules/FindKDE4Internal.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index bf327f0f..014f092b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -42,6 +42,7 @@ # KDE4_SOLID_LIBRARY - the solid library # KDE4_SOLIDIFACES_LIBRARY - the solidiface library # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library +# KDE4_KROSSCORE_LIBRARY- the krosscore library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -68,6 +69,7 @@ # KDE4_SOLID_LIBS - the solid library and all depending libraries # KDE4_SOLIDIFACES_LIBS - the solid iface library and all depending libraries # KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries +# KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -438,6 +440,10 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) + find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) + + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From 7541066130fa7d4a57875b9c6d95f6e169a7f853 Mon Sep 17 00:00:00 2001 From: Michel Hermier Date: Wed, 29 Nov 2006 11:42:36 +0000 Subject: No objections after 2 days in the mailling list, commiting then. svn path=/trunk/KDE/kdelibs/; revision=609041 --- modules/FindQCA2.cmake | 69 +++++++++++++++++++++++++++----------------------- 1 file changed, 38 insertions(+), 31 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 7dc12e35..a82a6f63 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -14,42 +14,49 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) + # in cache allready + set(QCA2_FOUND TRUE) -INCLUDE(UsePkgConfig) -IF (NOT WIN32) -PKGCONFIG(qca _Qca2IncDir _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) +else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) -MESSAGE(STATUS "pkg-config returned ${_Qca2IncDir} for QCA 2 includes") -set(QCA2_DEFINITIONS ${_Qca2Cflags}) + INCLUDE(UsePkgConfig) -set(QCA2_INCLUDE_DIR ${_Qca2IncDir}) -ENDIF (NOT WIN32) -#FIND_PATH(QCA2_INCLUDE_DIR QtCrypto -# PATHS -# ${_Qca2IncDir} -#) + IF (NOT WIN32) + PKGCONFIG(qca _Qca2IncDir _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) -MESSAGE(STATUS "QCA2_INCLUDE_DIR has value ${QCA2_INCLUDE_DIR}" ) + MESSAGE(STATUS "pkg-config returned ${_Qca2IncDir} for QCA 2 includes") + set(QCA2_DEFINITIONS ${_Qca2Cflags}) + ENDIF (NOT WIN32) -FIND_LIBRARY(QCA2_LIBRARIES NAMES qca - PATHS - ${_Qca2LinkDir} - NO_DEFAULT_PATH -) + FIND_PATH(QCA2_INCLUDE_DIR QtCrypto + PATHS + ${_Qca2IncDir} + ) -if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - set(QCA2_FOUND TRUE) -endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) + MESSAGE(STATUS "QCA2_INCLUDE_DIR has value ${QCA2_INCLUDE_DIR}" ) + + FIND_LIBRARY(QCA2_LIBRARIES NAMES qca + PATHS + ${_Qca2LinkDir} + NO_DEFAULT_PATH + ) -if (QCA2_FOUND) - if (NOT QCA2_FIND_QUIETLY) - message(STATUS "Found QCA2: ${QCA2_LIBRARIES}") - endif (NOT QCA2_FIND_QUIETLY) -else (QCA2_FOUND) - if (QCA2_FIND_REQUIRED) - message(SEND_ERROR "Could NOT find QCA2") - endif (QCA2_FIND_REQUIRED) -endif (QCA2_FOUND) - -MARK_AS_ADVANCED(QCA2_INCLUDE_DIR QCA2_LIBRARIES) + if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) + set(QCA2_FOUND TRUE) + endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) + + if (QCA2_FOUND) + if (NOT QCA2_FIND_QUIETLY) + message(STATUS "Found QCA2: ${QCA2_LIBRARIES}") + endif (NOT QCA2_FIND_QUIETLY) + else (QCA2_FOUND) + if (QCA2_FIND_REQUIRED) + message(SEND_ERROR "Could NOT find QCA2") + endif (QCA2_FIND_REQUIRED) + endif (QCA2_FOUND) + + MARK_AS_ADVANCED(QCA2_INCLUDE_DIR QCA2_LIBRARIES) + +endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) -- cgit v1.2.1 From 82ae5d70756619522eab946b9efe88bb91ef9365 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 30 Nov 2006 19:52:51 +0000 Subject: -proper indenting -fix typo: USB_FIND_QUIETLY -remove now-unnecessary standard unix search paths Alex svn path=/trunk/KDE/kdelibs/; revision=609436 --- modules/FindUSB.cmake | 34 ++++++++++++++-------------------- 1 file changed, 14 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index e4ffbac5..6499fc4f 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -17,24 +17,18 @@ if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) set(LIBUSB_FOUND TRUE) else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(libUSB _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) -ENDIF(NOT WIN32) - FIND_PATH(LIBUSB_INCLUDE_DIR usb.h - /usr/include - /usr/local/include - ) + IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libUSB _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) + ENDIF(NOT WIN32) + + FIND_PATH(LIBUSB_INCLUDE_DIR usb.h ) FIND_LIBRARY(LIBUSB_LIBRARY NAMES usb - PATHS - ${_libUSBLinkDir} - /usr/lib - /usr/local/lib - ) + PATHS ${_libUSBLinkDir} ) set( LIBUSB_LIBRARIES ${LIBUSB_LIBRARY} CACHE INTERNAL "The libraries for libusb" ) @@ -43,13 +37,13 @@ ENDIF(NOT WIN32) endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) if (LIBUSB_FOUND) - if (NOT libUSB_FIND_QUIETLY) + if (NOT USB_FIND_QUIETLY) message(STATUS "Found LIBUSB: ${LIBUSB_LIBRARIES}") - endif (NOT libUSB_FIND_QUIETLY) + endif (NOT USB_FIND_QUIETLY) else (LIBUSB_FOUND) - if (libUSB_FIND_REQUIRED) + if (USB_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find LIBUSB") - endif (libUSB_FIND_REQUIRED) + endif (USB_FIND_REQUIRED) endif (LIBUSB_FOUND) MARK_AS_ADVANCED( -- cgit v1.2.1 From 22e8e0927cb0a7110f737ba5ead75ce04a29dcf8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 30 Nov 2006 21:15:08 +0000 Subject: the logic which for dealing with ippDeleteAttribute was buggy: when invoked the second time, CUPS_FOUND became true even although ippDeleteAttribute didn't exist, since in this case only the include dir and the lib variables were checked additionally (in order to sync back to cmake cvs) don't always fail if ippDeleteAttribute doesn't exist, but make this optional (enabled in kdeprint/CMakeLists.txt by setting CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE) Alex svn path=/trunk/KDE/kdelibs/; revision=609455 --- modules/FindCups.cmake | 64 +++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 34 deletions(-) (limited to 'modules') diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index a6bb9202..0fd0ae5b 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -4,48 +4,44 @@ # CUPS_FOUND - system has Cups # CUPS_INCLUDE_DIR - the Cups include directory # CUPS_LIBRARIES - Libraries needed to use Cups -# CUPS_DEFINITIONS - Compiler switches required for using Cups -# +# Set CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE if you need a version which +# features this function (i.e. at least 1.1.19) + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) +INCLUDE(CheckLibraryExists) - # in cache already - SET(CUPS_FOUND TRUE) +FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h ) -else (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) +FIND_LIBRARY(CUPS_LIBRARIES NAMES cups ) - FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h - /usr/include - /usr/local/include - ) - - FIND_LIBRARY(CUPS_LIBRARIES NAMES cups - PATHS - /usr/lib - /usr/local/lib - ) - - if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) - check_library_exists(cups ippDeleteAttribute "" CUPS_FOUND) - endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - - if (CUPS_FOUND) - if (NOT Cups_FIND_QUIETLY) - message(STATUS "Found Cups: ${CUPS_LIBRARIES}") - endif (NOT Cups_FIND_QUIETLY) - else (CUPS_FOUND) - set(CUPS_LIBRARIES ) - if (Cups_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Cups") - endif (Cups_FIND_REQUIRED) - endif (CUPS_FOUND) +IF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + SET(CUPS_FOUND TRUE) + + # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) + CHECK_LIBRARY_EXISTS(cups ippDeleteAttribute "" CUPS_HAS_IPP_DELETE_ATTRIBUTE) + IF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) + SET(CUPS_FOUND FALSE) + ENDIF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) + +ELSE (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + SET(CUPS_FOUND FALSE) +ENDIF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + +IF (CUPS_FOUND) + IF (NOT Cups_FIND_QUIETLY) + MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARIES}") + ENDIF (NOT Cups_FIND_QUIETLY) +ELSE (CUPS_FOUND) + SET(CUPS_LIBRARIES ) + IF (Cups_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find Cups") + ENDIF (Cups_FIND_REQUIRED) +ENDIF (CUPS_FOUND) - MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) +MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) -endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) -- cgit v1.2.1 From 307aeed35325a96f2fe29bdb0bdce18172818e9c Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Mon, 4 Dec 2006 10:45:34 +0000 Subject: win32 fix: place all executables in /bin dir by default to avoid multiple pathes in PATH environment svn path=/trunk/KDE/kdelibs/; revision=610434 --- modules/KDE4Defaults.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index f03770bc..fba1f766 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -26,3 +26,13 @@ set(CMAKE_COLOR_MAKEFILE ON) set(GENERIC_LIB_VERSION "4.0.0") set(GENERIC_LIB_SOVERSION "4") +# windows does not support LD_LIBRARY_PATH or similar +# all searchable directories has to be defined by the PATH environment var +# to reduce the number of required pathes executables are placed into +# the build bin dir +# note: dll's should go also in bin dir and import libraries should go into lib, +# but this seems not possible with recent cmake release +if (WIN32) + set (EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) +# set (LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) +endif(WIN32) \ No newline at end of file -- cgit v1.2.1 From a26e3caf952e4ffaa1829a1b8b3e56da2a419fa2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 10 Dec 2006 22:32:50 +0000 Subject: -add option KDE4_USE_ALWAYS_FULL_RPATH (disabled by default): if enabled, everything (also libs and plugins) will be linked with full RPATH Alex svn path=/trunk/KDE/kdelibs/; revision=612333 --- modules/FindKDE4Internal.cmake | 2 ++ modules/KDE4Macros.cmake | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 014f092b..2bc441d0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -565,6 +565,8 @@ endif (WIN32) # also use /usr/local by default under UNIX, including Mac OS X if (UNIX) + option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." OFF) + link_directories(/usr/local/lib) set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1e3f75cf..b65c9568 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -409,9 +409,9 @@ endmacro (KDE4_CREATE_FINAL_FILES) # If RPATH is not explicitely disabled, libraries and plugins are built without RPATH, in # the hope that the RPATH which is compiled into the executable is good enough. macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) - if (NOT CMAKE_SKIP_RPATH) + if (NOT CMAKE_SKIP_RPATH AND NOT KDE4_USE_ALWAYS_FULL_RPATH) set_target_properties(${_target_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH FALSE SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") - endif (NOT CMAKE_SKIP_RPATH) + endif (NOT CMAKE_SKIP_RPATH AND NOT KDE4_USE_ALWAYS_FULL_RPATH) endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) # This macro sets the RPATH related options for executables -- cgit v1.2.1 From 66b05f70b209fb8db4e8e9a2f2f8064c5e55ed59 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 13 Dec 2006 20:57:33 +0000 Subject: I don't need the copyright twice ;-) Alex svn path=/trunk/KDE/kdelibs/; revision=613313 --- modules/FindLibXml2.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index b45d7293..47136df0 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -5,9 +5,6 @@ # LIBXML2_INCLUDE_DIR - the LibXml2 include directory # LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 -# -# Copyright (c) 2006, Alexander Neundorf -# This code is available under the BSD license, see licenses/BSD for details. # Copyright (c) 2006, Alexander Neundorf, # -- cgit v1.2.1 From 2788b2c50704edc8796dee0a4f7200a4e36b2d19 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 14 Dec 2006 17:01:59 +0000 Subject: Add KDE4_KTEXTEDITOR_LIBS variable svn path=/trunk/KDE/kdelibs/; revision=613684 --- modules/FindKDE4Internal.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2bc441d0..61f3fd65 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -43,6 +43,7 @@ # KDE4_SOLIDIFACES_LIBRARY - the solidiface library # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # KDE4_KROSSCORE_LIBRARY- the krosscore library +# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -70,6 +71,7 @@ # KDE4_SOLIDIFACES_LIBS - the solid iface library and all depending libraries # KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries +# KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -443,7 +445,8 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) - + find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From ec08c7b5454150f6d7bb2441687200f0761150bb Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 20 Dec 2006 22:00:12 +0000 Subject: fix typo that made -fvisibility=hidden support to be always disabled svn path=/trunk/KDE/kdelibs/; revision=615282 --- modules/FindKDE4Internal.cmake | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 61f3fd65..74eadf84 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -681,7 +681,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES Linux) @@ -700,7 +700,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) # get the gcc version exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) - string (REGEX MATCH " [34]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") + string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: if (NOT _gcc_version) string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") @@ -708,16 +708,18 @@ if (CMAKE_COMPILER_IS_GNUCXX) macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) + set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) if (GCC_IS_NEWER_THAN_4_1) exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") - else (GCC_IS_NEWER_THAN_4_1) - set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) + string(LENGTH _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_GCC_COMPILED_WITH_BAD_ALLOCATOR}") endif (GCC_IS_NEWER_THAN_4_1) - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + set (__KDE_HAVE_GCC_VISIBILITY 0) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) endif (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From b4b2e208ce51f3e5642e634242109079b2b3fbe6 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 21 Dec 2006 00:41:11 +0000 Subject: enabling it without testing wasn't such a great idea svn path=/trunk/KDE/kdelibs/; revision=615310 --- modules/FindKDE4Internal.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 74eadf84..a7e78fd3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -715,11 +715,12 @@ if (CMAKE_COMPILER_IS_GNUCXX) string(LENGTH _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_GCC_COMPILED_WITH_BAD_ALLOCATOR}") endif (GCC_IS_NEWER_THAN_4_1) - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + # disabled right now because it totally breaks the build.. prefix "32" added to every target ??! + if (0 AND __KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + else (0 AND __KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + endif (0 AND __KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) endif (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From 9d3627ac76573b06648dd6fc76d4733fc589014c Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 21 Dec 2006 12:32:49 +0000 Subject: Revert to the version before dirk's changes, to avoid the bug which prepends 32 to all executables. Let's redo those changes one by one until we find the one that triggers this problem... svn path=/trunk/KDE/kdelibs/; revision=615404 --- modules/FindKDE4Internal.cmake | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a7e78fd3..61f3fd65 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -681,7 +681,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES Linux) @@ -700,7 +700,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) # get the gcc version exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) - string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") + string (REGEX MATCH " [34]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: if (NOT _gcc_version) string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") @@ -708,19 +708,16 @@ if (CMAKE_COMPILER_IS_GNUCXX) macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) - set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) if (GCC_IS_NEWER_THAN_4_1) exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") - string(LENGTH _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_GCC_COMPILED_WITH_BAD_ALLOCATOR}") + else (GCC_IS_NEWER_THAN_4_1) + set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) endif (GCC_IS_NEWER_THAN_4_1) - # disabled right now because it totally breaks the build.. prefix "32" added to every target ??! - if (0 AND __KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - else (0 AND __KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (0 AND __KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) endif (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From 64b8ff4a5be27de456b5f7f9d11c092339513517 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 21 Dec 2006 13:05:56 +0000 Subject: That part is fine. svn path=/trunk/KDE/kdelibs/; revision=615408 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 61f3fd65..8b982631 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -700,7 +700,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) # get the gcc version exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) - string (REGEX MATCH " [34]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") + string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: if (NOT _gcc_version) string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") -- cgit v1.2.1 From e3114d6f39876b7af15ef042ab709d1c1c850923 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 21 Dec 2006 14:08:39 +0000 Subject: lets try again.. svn path=/trunk/KDE/kdelibs/; revision=615423 --- modules/FindKDE4Internal.cmake | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8b982631..e12a8e34 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -681,7 +681,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") endif (CMAKE_SYSTEM_NAME MATCHES Linux) @@ -708,16 +708,17 @@ if (CMAKE_COMPILER_IS_GNUCXX) macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) + set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) if (GCC_IS_NEWER_THAN_4_1) exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") - else (GCC_IS_NEWER_THAN_4_1) - set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) endif (GCC_IS_NEWER_THAN_4_1) - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_AT_LEAST_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + else (_KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + set (__KDE_HAVE_GCC_VISIBILITY 0) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) endif (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From 7a98e063a9c380e64e02b03246c7fe0257db3e9d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 23 Dec 2006 09:57:34 +0000 Subject: install dbus interfaces as discussed with Thiago and David. I will fix other modules tuesday for not breaking kde before christmas . svn path=/trunk/KDE/kdelibs/; revision=615920 --- modules/FindKDE4Internal.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e12a8e34..c555c9d8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -98,6 +98,7 @@ # KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir # XDG_APPS_DIR - the XDG apps dir # XDG_DIRECTORY_DIR - the XDG directory +# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces # # The following variables are provided, but are seem to be unused: # LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") @@ -277,6 +278,7 @@ _set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") _set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") _set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") +_set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") # _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") # _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") -- cgit v1.2.1 From 9f75f3eadabbdf3a036decbfd63391ef02ba4cc1 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 27 Dec 2006 22:24:07 +0000 Subject: add small lib that lists ALSA devices to be used in Phonon backends now that I need FindAlsa in kdelibs should it be removed from kdemultimedia next monday? svn path=/trunk/KDE/kdelibs/; revision=617068 --- modules/FindAlsa.cmake | 38 ++++++++++++++++++++++++++++++++++++++ modules/config-alsa.h.cmake | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100644 modules/FindAlsa.cmake create mode 100644 modules/config-alsa.h.cmake (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake new file mode 100644 index 00000000..c40b95ef --- /dev/null +++ b/modules/FindAlsa.cmake @@ -0,0 +1,38 @@ +# Alsa check, based on libkmid/configure.in.in. +# Only the support for Alsa >= 0.9.x was included; 0.5.x was dropped (but feel free to re-add it if you need it) + +# Copyright (c) 2006, David Faure, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +include(CheckIncludeFiles) +include(CheckIncludeFileCXX) +include(CheckLibraryExists) + +# Already done by toplevel +#check_include_files(sys/soundcard.h HAVE_SYS_SOUNDCARD_H) +#check_include_files(machine/soundcard.h HAVE_MACHINE_SOUNDCARD_H) + +check_include_files(linux/awe_voice.h HAVE_LINUX_AWE_VOICE_H) +check_include_files(awe_voice.h HAVE_AWE_VOICE_H) +check_include_files(/usr/src/sys/i386/isa/sound/awe_voice.h HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H) +check_include_files(/usr/src/sys/gnu/i386/isa/sound/awe_voice.h HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H) + +check_include_file_cxx(sys/asoundlib.h HAVE_SYS_ASOUNDLIB_H) +check_include_file_cxx(alsa/asoundlib.h HAVE_ALSA_ASOUNDLIB_H) + +check_library_exists(asound snd_seq_create_simple_port "" HAVE_LIBASOUND2) +if(HAVE_LIBASOUND2) + set(ASOUND_LIBRARY "asound") + check_library_exists(asound snd_pcm_resume ${ASOUND_LIBRARY} ASOUND_HAS_SND_PCM_RESUME) + message(STATUS "Found ALSA: ${ASOUND_LIBRARY}") + if(ASOUND_HAS_SND_PCM_RESUME) + set(HAVE_SND_PCM_RESUME 1) + endif(ASOUND_HAS_SND_PCM_RESUME) + SET (LIBASOUND2_FOUND TRUE) +else(HAVE_LIBASOUND2) + message(STATUS "ALSA not found") +endif(HAVE_LIBASOUND2) + +configure_file(${CMAKE_SOURCE_DIR}/cmake/modules/config-alsa.h.cmake ${CMAKE_BINARY_DIR}/config-alsa.h ) diff --git a/modules/config-alsa.h.cmake b/modules/config-alsa.h.cmake new file mode 100644 index 00000000..9c9e1683 --- /dev/null +++ b/modules/config-alsa.h.cmake @@ -0,0 +1,34 @@ +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_LINUX_AWE_VOICE_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_AWE_VOICE_H 1 + +/* Define to 1 if you have the + header file. */ +#cmakedefine HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H + +/* Define to 1 if you have the + header file. */ +#cmakedefine HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_AWE_VOICE_H 1 + + + +/* Define if you have libasound.so.1 (for ALSA 0.5.x support - disabled now) */ +/* #undef HAVE_LIBASOUND */ + +/* Define if you have libasound.so.2 (required for ALSA 0.9.x support) */ +#cmakedefine HAVE_LIBASOUND2 1 + +/* Define if libasound has snd_pcm_resume() */ +#cmakedefine HAVE_SND_PCM_RESUME 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_ALSA_ASOUNDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_ASOUNDLIB_H 1 + -- cgit v1.2.1 From 35dd2ee9a23590ad4d3dc904488320bb6f89cf11 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 27 Dec 2006 23:54:12 +0000 Subject: - add cmake variable for the new lib - change the cmake variable names for Phonon for consistency (from what I tested this doesn't break compilation) svn path=/trunk/KDE/kdelibs/; revision=617094 --- modules/FindKDE4Internal.cmake | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c555c9d8..0dce1e0a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -37,6 +37,7 @@ # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONONCORE_LIBRARY - the phononcore library # KDE4_PHONONUI_LIBRARY - the phononui library +# KDE4_KALSADEVICELIST_LIBRARY - the kalsadevicelist library # KDE4_KDEFX_LIBRARY - the kdefx library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library # KDE4_SOLID_LIBRARY - the solid library @@ -426,11 +427,14 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) - find_library(KDE4_PHONONCORE_LIBRARY NAMES phononcore PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_PHONONCORE_LIBRARIES ${phononcore_LIB_DEPENDS} ${KDE4_PHONONCORE_LIBRARY} ) + find_library(KDE4_PHONONCORE_LIBRARY NAMES phononcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_PHONONCORE_LIBS ${phononcore_LIB_DEPENDS} ${KDE4_PHONONCORE_LIBRARY} ) - find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} ) - set(KDE4_PHONONUI_LIBRARIES ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) + find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_PHONONUI_LIBS ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) + + find_library(KDE4_KALSADEVICELIST_LIBRARY NAMES kalsadevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KALSADEVICELIST_LIBS ${kalsadevicelist_LIB_DEPENDS} ${KDE4_KALSADEVICELIST_LIBRARY} ) find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) -- cgit v1.2.1 From 0db3b44da858982cfe793003820b615edc7dd635 Mon Sep 17 00:00:00 2001 From: Marc Espie Date: Sun, 31 Dec 2006 15:00:05 +0000 Subject: find the right qmake on OpenBSD... svn path=/trunk/KDE/kdelibs/; revision=618204 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a0f7a48e..a88de12d 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -172,7 +172,7 @@ IF (WIN32) ENDIF(WIN32) # check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake-qt4 PATHS +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake qmake-qt4 PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin -- cgit v1.2.1 From a8cb4bf9d482b203573d182c3832160acefd64f8 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Mon, 1 Jan 2007 14:58:25 +0000 Subject: find glib2 here as well (opensuse 10.2) svn path=/trunk/KDE/kdelibs/; revision=618546 --- modules/FindGLIB2.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 0dc5fe44..749dd671 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -15,6 +15,7 @@ PKGCONFIG(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2 FIND_PATH(GLIB2_INCLUDE_DIR glib.h ${_LibGLIB2IncDir} + ${_LibGLIB2IncDir}/glib-2.0 /usr/include/glib-2.0 /usr/include /usr/local/include/glib-2.0 -- cgit v1.2.1 From baacb32fca8e781564b662bf4dcb46599396c137 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 2 Jan 2007 20:26:03 +0000 Subject: don't generate config-alsa.h implicitely when doing FindPackage(Alsa), since this is quite against cmake conventions. Instead provide a macro ALSA_CONFIGURE_FILE(config-alsa.h) which does it explicitely and which will even be found when searching for configure_file() or config-alsa.h Alex svn path=/trunk/KDE/kdelibs/; revision=619132 --- modules/FindAlsa.cmake | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index c40b95ef..90966007 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -1,5 +1,9 @@ # Alsa check, based on libkmid/configure.in.in. # Only the support for Alsa >= 0.9.x was included; 0.5.x was dropped (but feel free to re-add it if you need it) +# It defines ... +# It offers the following macros: +# ALSA_CONFIGURE_FILE(config_header) - generate a config.h, typical usage: +# ALSA_CONFIGURE_FILE(${CMAKE_BINARY_DIR}/config-alsa.h) # Copyright (c) 2006, David Faure, # @@ -35,4 +39,10 @@ else(HAVE_LIBASOUND2) message(STATUS "ALSA not found") endif(HAVE_LIBASOUND2) -configure_file(${CMAKE_SOURCE_DIR}/cmake/modules/config-alsa.h.cmake ${CMAKE_BINARY_DIR}/config-alsa.h ) +set(ALSA_FOUND HAVE_LIBASOUND2) + +get_filename_component(_FIND_ALSA_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) + +macro(ALSA_CONFIGURE_FILE _destFile) + configure_file(${_FIND_ALSA_MODULE_DIR}/config-alsa.h.cmake ${_destFile} ) +endmacro(ALSA_CONFIGURE_FILE _destFile) -- cgit v1.2.1 From 822ebbc932887932658c7e37b2951bc80fcb4353 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Wed, 3 Jan 2007 11:38:05 +0000 Subject: Start to organize a bit kdecore, in subdirrectories For now i have done the following division. kdecore/kernel : stuff related to the old KApplication kdecore/config : every class that inherit from KConfigBase kdecore/io : class related to files or process (like in qtcore/io) kdecore/date : stuff related to the date or the time (calendar, timezone, ...) kdecore/strings : operation on strings and strings localisation kdecore/sycoca : KSyCoCa related files This division is not in the stone, and there is still many files that have not been sorted svn path=/trunk/KDE/kdelibs/; revision=619422 --- modules/FindKDE4Internal.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0dce1e0a..9c08b635 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -310,7 +310,7 @@ option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") #are we trying to compile kdelibs ? #then enter bootstrap mode -if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) +if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) message(STATUS "Building kdelibs...") @@ -346,7 +346,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) set(KDE4_INSTALLED_VERSION_OK TRUE) -else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) +else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) # ... but NOT otherwise set( _KDE4_KCONFIG_COMPILER_DEP) @@ -506,7 +506,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) endif (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) -endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) +endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) ##################### and now the platform specific stuff ############################ @@ -534,9 +534,9 @@ if (WIN32) # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex - if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) - endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) # windows, mingw if(MINGW) @@ -775,7 +775,7 @@ endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INST macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" - if(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + if(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) if(KDE4_INCLUDE_DIR) message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) @@ -787,7 +787,7 @@ macro (KDE4_PRINT_RESULTS) else(KDE4_LIB_DIR) message(STATUS "Didn't find KDE4 core library") endif(KDE4_LIB_DIR) - endif(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h) + endif(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) if(KDE4_KCFGC_EXECUTABLE) message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") -- cgit v1.2.1 From 59c9ee46b376a614b6a2fbc6f236f2973a38c2b5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Jan 2007 21:07:03 +0000 Subject: partly sync with cmake cvs: add QT_PLUGIN_DIR and some comments Alex svn path=/trunk/KDE/kdelibs/; revision=619610 --- modules/FindQt4.cmake | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a88de12d..7b183fe2 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -19,6 +19,10 @@ # QT_USE_QTOPENGL # QT_USE_QTSQL # QT_USE_QTXML +# QT_USE_QTSVG +# QT_USE_QTTEST +# QT_USE_QTUITOOLS +# # All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. # @@ -66,6 +70,7 @@ # QT_QTXML_FOUND True if QtXml was found. # QT_QTSVG_FOUND True if QtSvg was found. # QT_QTTEST_FOUND True if QtTest was found. +# QT_QTUITOOLS_FOUND True if QtUiTools was found. # # QT_DEFINITIONS Definitions to use when compiling code that uses Qt. # @@ -94,6 +99,8 @@ # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" # # QT_LIBRARY_DIR Path to "lib" of Qt4 +# +# QT_PLUGINS_DIR Path to "plugins" for Qt4 # # For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. # @@ -243,7 +250,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") ENDIF(NOT QT_LIBRARY_DIR) @@ -292,6 +299,13 @@ IF (QT4_QMAKE_FOUND) SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") ENDIF (NOT QT_MKSPECS_DIR) + # ask qmake for the plugins directory + IF (NOT QT_PLUGINS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_PLUGINS" + OUTPUT_VARIABLE qt_plugins_dir ) + SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") + ENDIF (NOT QT_PLUGINS_DIR) ######################################## # # Setting the INCLUDE-Variables @@ -594,7 +608,7 @@ IF (QT4_QMAKE_FOUND) IF(WIN32) FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(WIN32) - + ############################################ # # Check the existence of the libraries. -- cgit v1.2.1 From e5081a72bfb452e7d4eff828296cf5fc2fcfc080 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Jan 2007 21:34:53 +0000 Subject: partly sync with cmake cvs: cosmetics Alex svn path=/trunk/KDE/kdelibs/; revision=619616 --- modules/FindQt4.cmake | 93 +++++++++++++++++++++++++-------------------------- 1 file changed, 46 insertions(+), 47 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 7b183fe2..227dde3f 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -137,7 +137,7 @@ # # The qtmain library for Windows QT_QTMAIN_LIBRARY # -# The QtUiTools library: QT_QTUITOOLS_LIBRARY +# The QtUiTools library: QT_QTUITOOLS_LIBRARY # # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. @@ -162,7 +162,7 @@ # These variables are set to "" Because Qt structure changed # (They make no sense in Qt4) # QT_QT_LIBRARY Qt-Library is now split -# + # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. @@ -190,51 +190,50 @@ SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) IF (QT_QMAKE_EXECUTABLE) - SET(QT4_QMAKE_FOUND FALSE) - - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + SET(QT4_QMAKE_FOUND FALSE) - # check that we found the Qt4 qmake, Qt3 qmake output won't match here - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") - IF (qt_version_tmp) - - # we need at least version 4.0.0 - IF (NOT QT_MIN_VERSION) - SET(QT_MIN_VERSION "4.0.0") - ENDIF (NOT QT_MIN_VERSION) - - #now parse the parts of the user given version string into variables - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") - IF (NOT req_qt_major_vers) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers) - - # now parse the parts of the user given version string into variables - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") - - IF (NOT req_qt_major_vers EQUAL 4) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers EQUAL 4) - - # and now the version string given by qmake - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") - - # compute an overall version number which can be compared at once - MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") - MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") - - IF (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND FALSE) - SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) - ELSE (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND TRUE) - ENDIF (found_vers LESS req_vers) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - ENDIF (qt_version_tmp) + # check that we found the Qt4 qmake, Qt3 qmake output won't match here + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") + IF (qt_version_tmp) + + # we need at least version 4.0.0 + IF (NOT QT_MIN_VERSION) + SET(QT_MIN_VERSION "4.0.0") + ENDIF (NOT QT_MIN_VERSION) + + #now parse the parts of the user given version string into variables + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") + IF (NOT req_qt_major_vers) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers) + + # now parse the parts of the user given version string into variables + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + + IF (NOT req_qt_major_vers EQUAL 4) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers EQUAL 4) + + # and now the version string given by qmake + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") + MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") + + IF (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND FALSE) + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) + ELSE (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND TRUE) + ENDIF (found_vers LESS req_vers) + ENDIF (qt_version_tmp) ENDIF (QT_QMAKE_EXECUTABLE) @@ -477,7 +476,7 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) - # Set QT_QTDESIGNER_INCLUDE_DIR + # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents PATHS ${QT_INCLUDE_DIR}/QtDesigner @@ -601,7 +600,7 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTDESIGNER_LIBRARY FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTDESIGNER_LIBRARY + # Set QT_QTDESIGNERCOMPONENTS_LIBRARY FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMAIN_LIBRARY -- cgit v1.2.1 From 253dfd50c9a69e6b506afc6dc08d184c5180adcc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Jan 2007 22:08:35 +0000 Subject: partly sync with cmake cvs: use the QT_QUERY_QMAKE macro Alex svn path=/trunk/KDE/kdelibs/; revision=619637 --- modules/FindQt4.cmake | 46 ++++++++++++++++++++++++++++------------------ 1 file changed, 28 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 227dde3f..37a8314c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -187,6 +187,23 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake qmake-qt4 PATHS SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) +# macro for asking qmake to process pro files +MACRO(QT_QUERY_QMAKE outvar invar) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro + "message(CMAKE_MESSAGE<$$${invar}>)") + + EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} + WORKING_DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake + OUTPUT_VARIABLE _qmake_query_output + ERROR_VARIABLE _qmake_query_output ) + + FILE(REMOVE_RECURSE + "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") + + STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") +ENDMACRO(QT_QUERY_QMAKE) + IF (QT_QMAKE_EXECUTABLE) @@ -688,26 +705,19 @@ IF (QT4_QMAKE_FOUND) ####################################### - # find moc and uic using qmake - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake/tmp.pro - "message(MOC<$$QMAKE_MOC>) - message(UIC<$$QMAKE_UIC>) - ") - - EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake - OUTPUT_VARIABLE _moc_OUTPUT - ERROR_VARIABLE _moc_OUTPUT ) - FILE(REMOVE_RECURSE "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmpQmake") - - STRING(REGEX REPLACE ".*MOC<([^>]+).*" "\\1" QT_MOC_EXECUTABLE_INTERNAL "${_moc_OUTPUT}" ) - STRING(REGEX REPLACE ".*UIC<([^>]+).*" "\\1" QT_UIC_EXECUTABLE_INTERNAL "${_moc_OUTPUT}" ) + # find moc and uic using qmake + QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") + QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") - FILE(TO_CMAKE_PATH "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) - FILE(TO_CMAKE_PATH "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) + FILE(TO_CMAKE_PATH + "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) + FILE(TO_CMAKE_PATH + "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) - SET(QT_MOC_EXECUTABLE ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") - SET(QT_UIC_EXECUTABLE ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") + SET(QT_MOC_EXECUTABLE + ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") + SET(QT_UIC_EXECUTABLE + ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 -- cgit v1.2.1 From 7706d8316d876760f708e9608c69376ecd6f8223 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Jan 2007 22:31:02 +0000 Subject: partly sync with cmake cvs: search QtCore inc dir only in the dir qmake reported Alex svn path=/trunk/KDE/kdelibs/; revision=619645 --- modules/FindQt4.cmake | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 37a8314c..220a9b46 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -329,12 +329,10 @@ IF (QT4_QMAKE_FOUND) ######################################## FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/include/QtCore" ${QT_HEADERS_DIR}/QtCore ${QT_LIBRARY_DIR}/QtCore.framework/Headers - $ENV{QTDIR}/include/QtCore - "$ENV{ProgramFiles}/qt/include/Qt" - ) + NO_DEFAULT_PATH + ) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) -- cgit v1.2.1 From fb4c60a88ef88a4b2997c147ba7a28b249677d51 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Jan 2007 22:51:00 +0000 Subject: mark more variables as advanced Alex svn path=/trunk/KDE/kdelibs/; revision=619649 --- modules/FindQt4.cmake | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 220a9b46..899be654 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -509,7 +509,7 @@ IF (QT4_QMAKE_FOUND) ) # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR) + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) # Set QT_INCLUDES SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) @@ -538,8 +538,6 @@ IF (QT4_QMAKE_FOUND) # WTF? why don't we have frameworks? :P SET(QT_QTUITOOLS_LIBRARY "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") - MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) - ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename @@ -582,9 +580,6 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # ? Why only those two? - MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY ) - IF(MSVC) FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -751,7 +746,7 @@ IF (QT4_QMAKE_FOUND) - MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE ) + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) ###################################### # -- cgit v1.2.1 From 94ec815554f582ef793270e16abbf5249889cc0e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Jan 2007 23:11:21 +0000 Subject: -add optional argument for the interface name to QT4_GENERATE_DBUS_INTERFACE -partly sync cmake cvs: with add dependency scanning for Qt rc files (#134340) Alex CCMAIL: faure@kde.org svn path=/trunk/KDE/kdelibs/; revision=619651 --- modules/FindQt4.cmake | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 899be654..de8644d4 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -49,8 +49,11 @@ # parentclassname. The name of the generated files will be # adaptor.{cpp,h} where basename is the basename of the xml file. # -# macro QT4_GENERATE_DBUS_INTERFACE( header) -# generate the xml interface file from the given header +# macro QT4_GENERATE_DBUS_INTERFACE( header ) +# generate the xml interface file from the given header. +# If the optional argument interfacename is omitted, the name of the +# interface file is constructed from the basename of the header with +# the suffix .xml appended. # # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. @@ -829,17 +832,26 @@ IF (QT4_QMAKE_FOUND) FOREACH (it ${ARGN}) GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(rc_path ${infile} PATH) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + # parse file for dependencies + FILE(READ "${infile}" _RC_FILE_CONTENTS) + STRING(REGEX MATCHALL "[^<]*" _RC_FILES "${_RC_FILE_CONTENTS}") + SET(_RC_DEPENDS) + FOREACH(_RC_FILE ${_RC_FILES}) + STRING(REGEX REPLACE "^" "" _RC_FILE "${_RC_FILE}") + SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") + ENDFOREACH(_RC_FILE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_RCC_EXECUTABLE} ARGS -name ${outfilename} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} ) + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS}) SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH (it) ENDMACRO (QT4_ADD_RESOURCES) - MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) @@ -873,10 +885,16 @@ IF (QT4_QMAKE_FOUND) ENDMACRO(QT4_ADD_DBUS_INTERFACES) - MACRO(QT4_GENERATE_DBUS_INTERFACE _header) + MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) + SET(_customName "${ARGV1}") GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + + IF (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) + ELSE (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + ENDIF (_customName) ADD_CUSTOM_COMMAND(OUTPUT ${_target} COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} -- cgit v1.2.1 From 733907c22345efc9826bb317398d5afd7c6d8870 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Jan 2007 23:17:50 +0000 Subject: -remove obsolete macro -minor doc fix Alex svn path=/trunk/KDE/kdelibs/; revision=619654 --- modules/FindQt4.cmake | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index de8644d4..747daa4c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -49,7 +49,7 @@ # parentclassname. The name of the generated files will be # adaptor.{cpp,h} where basename is the basename of the xml file. # -# macro QT4_GENERATE_DBUS_INTERFACE( header ) +# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) # generate the xml interface file from the given header. # If the optional argument interfacename is omitted, the name of the # interface file is constructed from the basename of the header with @@ -903,7 +903,7 @@ IF (QT4_QMAKE_FOUND) ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) SET(_optionalBasename "${ARGV4}") @@ -938,10 +938,6 @@ IF (QT4_QMAKE_FOUND) SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) ENDMACRO(QT4_ADD_DBUS_ADAPTOR) - MACRO(QT4_ADD_DBUS_ADAPTORS _sources) - message(FATAL_ERROR "There is a call to QT4_ADD_DBUS_ADAPTORS() in the CMakeLists.txt for '${ARGV0}', but this macro has been removed, please use QT4_ADD_DBUS_ADAPTOR and specify the include file and classname for the parent object implementing the code") - ENDMACRO(QT4_ADD_DBUS_ADAPTORS _sources) - MACRO(QT4_AUTOMOC) QT4_GET_MOC_INC_DIRS(_moc_INCS) -- cgit v1.2.1 From 9322407329eb9aee68e424c00426e59a1c80bce7 Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Thu, 4 Jan 2007 09:11:45 +0000 Subject: lovely cmake feature svn path=/trunk/KDE/kdelibs/; revision=619738 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9c08b635..bf2160a5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -722,7 +722,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - else (_KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (__KDE_HAVE_GCC_VISIBILITY 0) endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) -- cgit v1.2.1 From 6fbe008a8ebbe64b8cd9008c1e94e0610a220576 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 4 Jan 2007 21:36:53 +0000 Subject: partly sync with cmake cvs: if "qmake" is found, check that it's a Qt4 qmake, if not, search again for qmake4 and qmake-qt4 Alex svn path=/trunk/KDE/kdelibs/; revision=619956 --- modules/FindQt4.cmake | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 747daa4c..b09c3625 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -181,13 +181,6 @@ IF (WIN32) SET(QT_DEFINITIONS -DQT_DLL) ENDIF(WIN32) -# check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin -) - SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) # macro for asking qmake to process pro files @@ -207,12 +200,32 @@ MACRO(QT_QUERY_QMAKE outvar invar) STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") ENDMACRO(QT_QUERY_QMAKE) +# check for qmake +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin +) IF (QT_QMAKE_EXECUTABLE) SET(QT4_QMAKE_FOUND FALSE) - - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + + # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path + IF("${QTVERSION}" MATCHES "Unknown") + SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) + FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin + ) + IF(QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + ENDIF(QT_QMAKE_EXECUTABLE) + ENDIF("${QTVERSION}" MATCHES "Unknown") # check that we found the Qt4 qmake, Qt3 qmake output won't match here STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") @@ -918,12 +931,12 @@ IF (QT4_QMAKE_FOUND) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - + IF(_optionalClassName) ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} DEPENDS ${_infile} - ) + ) ELSE(_optionalClassName) ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} -- cgit v1.2.1 From 620570becef139a0f409481d13698fa448d0e2b6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 4 Jan 2007 22:30:05 +0000 Subject: -add QT_USE_QTDBUS we're now almost sync'ed with cmake cvs again, it's just the release/debug lib stuff, the framework stuff, and the extra conf checks done in cmake cvs Alex svn path=/trunk/KDE/kdelibs/; revision=619966 --- modules/FindQt4.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b09c3625..8f3be9c8 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -22,6 +22,7 @@ # QT_USE_QTSVG # QT_USE_QTTEST # QT_USE_QTUITOOLS +# QT_USE_QTDBUS # # All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. @@ -655,7 +656,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) ENDIF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - # Hmm, is this used anywhere? + # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) ENDIF(MSVC) -- cgit v1.2.1 From 9efa24c92ede5a642b707bece68d5c7ebcb74086 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 5 Jan 2007 09:42:02 +0000 Subject: win32 fix svn path=/trunk/KDE/kdelibs/; revision=620095 --- modules/FindKdepimLibs.cmake | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 33125041..813c11f7 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -6,10 +6,16 @@ # Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006, Ralf Habacker, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if (WIN32) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${_progFiles}/kdepimlibs/include) + set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${_progFiles}/kdepimlibs/lib) +endif (WIN32) find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h ${KDE4_INCLUDE_DIR} @@ -17,15 +23,17 @@ find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h if( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND TRUE) - set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) - set(KDE4_KABC_LIBS kabc) - - set(KDE4_KCAL_LIBS kcal) - set(KDE4_KTNEF_LIBS ktnef) - set(KDE4_KRESOURCES_LIBS kresources) - set(KDE4_SYNDICATION_LIBS syndication) - set(KDE4_KLDAP_LIBS kldap) - set(KDE4_KMIME_LIBS kmime) + find_library(KDE4_EMAILFUNCTIONS_LIBS emailfunctions ${KDE4_LIB_DIR}) + find_library(KDE4_KABC_LIBS kabc ${KDE4_LIB_DIR}) + + find_library(KDE4_KCAL_LIBS kcal ${KDE4_LIB_DIR}) + find_library(KDE4_KTNEF_LIBS ktnef ${KDE4_LIB_DIR}) + find_library(KDE4_KRESOURCES_LIBS kresources ${KDE4_LIB_DIR}) + find_library(KDE4_SYNDICATION_LIBS syndication ${KDE4_LIB_DIR}) + find_library(KDE4_KLDAP_LIBS kldap ${KDE4_LIB_DIR}) + find_library(KDE4_KMIME_LIBS kmime ${KDE4_LIB_DIR}) + # setup global used KDE include + set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) else( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND FALSE) message(FATAL_ERROR "Could NOT find a kdepimlibs installation.\nPlease build and install kdepimlibs first.") -- cgit v1.2.1 From 1da145531916baeb0a69d264968c519c1ff6ee39 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Fri, 5 Jan 2007 20:11:53 +0000 Subject: on osx the DNS-SD bits are in libSystem svn path=/trunk/KDE/kdelibs/; revision=620375 --- modules/FindDNSSD.cmake | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index fca7f33e..fcbeecf2 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -19,11 +19,15 @@ FIND_PATH(DNSSD_INCLUDE_DIR dns_sd.h /usr/include/avahi-compat-libdns_sd/ ) -FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd - PATHS - /usr/lib - /usr/local/lib -) +if (APPLE) + set(DNSSD_LIBRARIES "/usr/lib/libSystem.dylib") +else (APPLE) + FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd + PATHS + /usr/lib + /usr/local/lib + ) +endif (APPLE) if (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) set(DNSSD_FOUND TRUE) -- cgit v1.2.1 From 89e3d1113d95b015075e0f90bcb8e13befa4158b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 5 Jan 2007 22:44:22 +0000 Subject: -no need to specify /usr/lib and /usr/local/lib -why are the two vars set to empty if not found instead of leaving them on "NOTFOUND" ? Alex svn path=/trunk/KDE/kdelibs/; revision=620406 --- modules/FindDNSSD.cmake | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index fcbeecf2..2e62255f 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -7,7 +7,7 @@ # DNSSD_DEFINITIONS - Compiler switches required for using DNSSD # # need more test: look at into dnssd/configure.in.in -# + # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -22,11 +22,7 @@ FIND_PATH(DNSSD_INCLUDE_DIR dns_sd.h if (APPLE) set(DNSSD_LIBRARIES "/usr/lib/libSystem.dylib") else (APPLE) - FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd - PATHS - /usr/lib - /usr/local/lib - ) + FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd ) endif (APPLE) if (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) @@ -38,7 +34,7 @@ if (DNSSD_FOUND) message(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") endif (NOT DNSSD_FIND_QUIETLY) else (DNSSD_FOUND) - set(DNSSD_INCLUDE_DIR "") + set(DNSSD_INCLUDE_DIR "") # this is not good, leaving it on "NOTFOUND" is better, why was it changed ? Alex set(DNSSD_LIBRARIES "") if (DNSSD_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find DNSSD") -- cgit v1.2.1 From 405f2f4c681df3f916dfdc001b0d8b9d5fa2de66 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 6 Jan 2007 17:06:22 +0000 Subject: -add the new and advanced FindPkgConfig.cmake module from cmake cvs, can be removed once we require cmake >= 2.4.6 Usage: find_package(PkgConfig) pkg_check_modules(GDK gdk) gives you: GDK_INCLUDE_DIRS GDK_LIBRARIES and more, see top of FindPkgConfig.cmake for details Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=620585 --- modules/CMakeLists.txt | 3 + modules/FindPkgConfig.cmake | 360 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 363 insertions(+) create mode 100644 modules/FindPkgConfig.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index cae69664..97d0f6d3 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -31,6 +31,9 @@ set(FILES_TO_REMOVE # FindASPELL.cmake # FindHSPELL.cmake +# can be removed once we require cmake 2.4.6 or newer: +# FindPkgConfig.cmake + install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) diff --git a/modules/FindPkgConfig.cmake b/modules/FindPkgConfig.cmake new file mode 100644 index 00000000..afae15cb --- /dev/null +++ b/modules/FindPkgConfig.cmake @@ -0,0 +1,360 @@ +# - a pkg-config module for CMake +# +# Usage: +# pkg_check_modules( [REQUIRED] []*) +# checks for all the given modules +# +# pkg_search_module( [REQUIRED] []*) +# checks for given modules and uses the first working one +# +# When the 'REQUIRED' argument was set, macros will fail with an error +# when module(s) could not be found +# +# It sets the following variables: +# PKG_CONFIG_FOUND ... true iff pkg-config works on the system +# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program +# _FOUND ... set to 1 iff module(s) exist +# +# For the following variables two sets of values exist; first one is the +# common one and has the given PREFIX. The second set contains flags +# which are given out when pkgconfig was called with the '--static' +# option. +# _LIBRARIES ... only the libraries (w/o the '-l') +# _LIBRARY_DIRS ... the paths of the libraries (w/o the '-L') +# _LDFLAGS ... all required linker flags +# _LDFLAGS_OTHERS ... all other linker flags +# _INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I') +# _CFLAGS ... all required cflags +# _CFLAGS_OTHERS ... the other compiler flags +# +# = for common case +# = _STATIC for static linking +# +# There are some special variables whose prefix depends on the count +# of given modules. When there is only one module, stays +# unchanged. When there are multiple modules, the prefix will be +# changed to _: +# _VERSION ... version of the module +# _PREFIX ... prefix-directory of the module +# _INCLUDEDIR ... include-dir of the module +# _LIBDIR ... lib-dir of the module +# +# = when |MODULES| == 1, else +# = _ +# +# A parameter can have the following formats: +# {MODNAME} ... matches any version +# {MODNAME}>={VERSION} ... at least version is required +# {MODNAME}={VERSION} ... exactly version is required +# {MODNAME}<={VERSION} ... modules must not be newer than +# +# Examples +# pkg_check_modules (GLIB2 glib-2.0) +# +# pkg_check_modules (GLIB2 glib-2.0>=2.10) +# requires at least version 2.10 of glib2 and defines e.g. +# GLIB2_VERSION=2.10.3 +# +# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0) +# requires both glib2 and gtk2, and defines e.g. +# FOO_glib-2.0_VERSION=2.10.3 +# FOO_gtk+-2.0_VERSION=2.8.20 +# +# pkg_check_modules (XRENDER REQUIRED xrender) +# defines e.g.: +# XRENDER_LIBRARIES=Xrender;X11 +# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp +# +# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2) + + +# Copyright (C) 2006 Enrico Scholz +# +# Redistribution and use, with or without modification, are permitted +# provided that the following conditions are met: +# +# 1. Redistributions must retain the above copyright notice, this +# list of conditions and the following disclaimer. +# 2. The name of the author may not be used to endorse or promote +# products derived from this software without specific prior +# written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +### Common stuff #### +set(PKG_CONFIG_VERSION 1) +set(PKG_CONFIG_FOUND 0) + +find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable") +mark_as_advanced(PKG_CONFIG_EXECUTABLE) + +if(PKG_CONFIG_EXECUTABLE) + set(PKG_CONFIG_FOUND 1) +endif(PKG_CONFIG_EXECUTABLE) + + +# Unsets the given variables +macro(_pkgconfig_unset var) + set(${var} "" CACHE INTERNAL "") +endmacro(_pkgconfig_unset) + +macro(_pkgconfig_set var value) + set(${var} ${value} CACHE INTERNAL "") +endmacro(_pkgconfig_set) + +# Invokes pkgconfig, cleans up the result and sets variables +macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp) + set(_pkgconfig_invoke_result) + + execute_process( + COMMAND ${PKG_CONFIG_EXECUTABLE} ${ARGN} ${_pkglist} + OUTPUT_VARIABLE _pkgconfig_invoke_result + RESULT_VARIABLE _pkgconfig_failed) + + if (_pkgconfig_failed) + set(_pkgconfig_${_varname} "") + _pkgconfig_unset(${_prefix}_${_varname}) + else(_pkgconfig_failed) + string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") + string(REGEX REPLACE " +$" "" _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") + + if (NOT ${_regexp} STREQUAL "") + string(REGEX REPLACE "${_regexp}" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") + endif(NOT ${_regexp} STREQUAL "") + + separate_arguments(_pkgconfig_invoke_result) + + #message(STATUS " ${_varname} ... ${_pkgconfig_invoke_result}") + set(_pkgconfig_${_varname} ${_pkgconfig_invoke_result}) + _pkgconfig_set(${_prefix}_${_varname} "${_pkgconfig_invoke_result}") + endif(_pkgconfig_failed) +endmacro(_pkgconfig_invoke) + +# Invokes pkgconfig two times; once without '--static' and once with +# '--static' +macro(_pkgconfig_invoke_dyn _pkglist _prefix _varname cleanup_regexp) + _pkgconfig_invoke("${_pkglist}" ${_prefix} ${_varname} "${cleanup_regexp}" ${ARGN}) + _pkgconfig_invoke("${_pkglist}" ${_prefix} STATIC_${_varname} "${cleanup_regexp}" --static ${ARGN}) +endmacro(_pkgconfig_invoke_dyn) + +# Splits given arguments into options and a package list +macro(_pkgconfig_parse_options _result _is_req) + set(${_is_req} 0) + + foreach(_pkg ${ARGN}) + if (_pkg STREQUAL "REQUIRED") + set(${_is_req} 1) + endif (_pkg STREQUAL "REQUIRED") + endforeach(_pkg ${ARGN}) + + set(${_result} ${ARGN}) + list(REMOVE_ITEM ${_result} "REQUIRED") +endmacro(_pkgconfig_parse_options) + +### +macro(_pkg_check_modules_internal _is_required _is_silent _prefix) + _pkgconfig_unset(${_prefix}_FOUND) + _pkgconfig_unset(${_prefix}_VERSION) + _pkgconfig_unset(${_prefix}_PREFIX) + _pkgconfig_unset(${_prefix}_INCLUDEDIR) + _pkgconfig_unset(${_prefix}_LIBDIR) + _pkgconfig_unset(${_prefix}_LIBS) + _pkgconfig_unset(${_prefix}_LIBS_L) + _pkgconfig_unset(${_prefix}_LIBS_PATHS) + _pkgconfig_unset(${_prefix}_LIBS_OTHER) + _pkgconfig_unset(${_prefix}_CFLAGS) + _pkgconfig_unset(${_prefix}_CFLAGS_I) + _pkgconfig_unset(${_prefix}_CFLAGS_OTHER) + _pkgconfig_unset(${_prefix}_STATIC_LIBDIR) + _pkgconfig_unset(${_prefix}_STATIC_LIBS) + _pkgconfig_unset(${_prefix}_STATIC_LIBS_L) + _pkgconfig_unset(${_prefix}_STATIC_LIBS_PATHS) + _pkgconfig_unset(${_prefix}_STATIC_LIBS_OTHER) + _pkgconfig_unset(${_prefix}_STATIC_CFLAGS) + _pkgconfig_unset(${_prefix}_STATIC_CFLAGS_I) + _pkgconfig_unset(${_prefix}_STATIC_CFLAGS_OTHER) + + # create a better addressable variable of the modules and calculate its size + set(_pkg_check_modules_list ${ARGN}) + list(LENGTH _pkg_check_modules_list _pkg_check_modules_cnt) + + if(PKG_CONFIG_EXECUTABLE) + # give out status message telling checked module + if (NOT ${_is_silent}) + if (_pkg_check_modules_cnt EQUAL 1) + message(STATUS "checking for module '${_pkg_check_modules_list}'") + else(_pkg_check_modules_cnt EQUAL 1) + message(STATUS "checking for modules '${_pkg_check_modules_list}'") + endif(_pkg_check_modules_cnt EQUAL 1) + endif(NOT ${_is_silent}) + + set(_pkg_check_modules_packages) + set(_pkg_check_modules_failed) + + # iterate through module list and check whether they exist and match the required version + foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list}) + set(_pkg_check_modules_exist_query) + + # check whether version is given + if (_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") + string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\1" _pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}") + string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\2" _pkg_check_modules_pkg_op "${_pkg_check_modules_pkg}") + string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\3" _pkg_check_modules_pkg_ver "${_pkg_check_modules_pkg}") + else(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") + set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}") + set(_pkg_check_modules_pkg_op) + set(_pkg_check_modules_pkg_ver) + endif(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") + + # handle the operands + if (_pkg_check_modules_pkg_op STREQUAL ">=") + list(APPEND _pkg_check_modules_exist_query --atleast-version) + endif(_pkg_check_modules_pkg_op STREQUAL ">=") + + if (_pkg_check_modules_pkg_op STREQUAL "=") + list(APPEND _pkg_check_modules_exist_query --exact-version) + endif(_pkg_check_modules_pkg_op STREQUAL "=") + + if (_pkg_check_modules_pkg_op STREQUAL "<=") + list(APPEND _pkg_check_modules_exist_query --max-version) + endif(_pkg_check_modules_pkg_op STREQUAL "<=") + + # create the final query which is of the format: + # * --atleast-version + # * --exact-version + # * --max-version + # * --exists + if (_pkg_check_modules_pkg_op) + list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}") + else(_pkg_check_modules_pkg_op) + list(APPEND _pkg_check_modules_exist_query --exists) + endif(_pkg_check_modules_pkg_op) + + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION) + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX) + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR) + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR) + + list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}") + list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}") + + # execute the query + execute_process( + COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query} + RESULT_VARIABLE _pkgconfig_retval) + + # evaluate result and tell failures + if (_pkgconfig_retval) + if(NOT ${_is_silent}) + message(STATUS " package '${_pkg_check_modules_pkg}' not found") + endif(NOT ${_is_silent}) + + set(_pkg_check_modules_failed 1) + endif(_pkgconfig_retval) + endforeach(_pkg_check_modules_pkg) + + if(_pkg_check_modules_failed) + # fail when requested + if (${_is_required}) + message(SEND_ERROR "A required package was not found") + endif (${_is_required}) + else(_pkg_check_modules_failed) + # when we are here, we checked whether requested modules + # exist. Now, go through them and set variables + + _pkgconfig_set(${_prefix}_FOUND 1) + list(LENGTH _pkg_check_modules_packages pkg_count) + + # iterate through all modules again and set individual variables + foreach (_pkg_check_modules_pkg ${_pkg_check_modules_packages}) + # handle case when there is only one package required + if (pkg_count EQUAL 1) + set(_pkg_check_prefix "${_prefix}") + else(pkg_count EQUAL 1) + set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}") + endif(pkg_count EQUAL 1) + + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion ) + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" PREFIX "" --variable=prefix ) + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir ) + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" LIBDIR "" --variable=libdir ) + + message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}") + endforeach(_pkg_check_modules_pkg) + + # set variables which are combined for multiple modules + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARY_DIRS "(^| )-L" --libs-only-L ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS "" --libs ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS_OTHER "" --libs-only-other ) + + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other ) + endif(_pkg_check_modules_failed) + else(PKG_CONFIG_EXECUTABLE) + if (${_is_required}) + message(SEND_ERROR "pkg-config tool not found") + endif (${_is_required}) + endif(PKG_CONFIG_EXECUTABLE) +endmacro(_pkg_check_modules_internal) + +### +### User visible macros start here +### + +### +macro(pkg_check_modules _prefix _module0) + # check cached value + if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) + _pkgconfig_parse_options (_pkg_modules _pkg_is_required "${_module0}" ${ARGN}) + _pkg_check_modules_internal("${_pkg_is_required}" 0 "${_prefix}" ${_pkg_modules}) + + _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION}) + endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) +endmacro(pkg_check_modules) + +### +macro(pkg_search_module _prefix _module0) + # check cached value + if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) + set(_pkg_modules_found 0) + _pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required "${_module0}" ${ARGN}) + + message(STATUS "checking for one of the modules '${_pkg_modules_alt}'") + + # iterate through all modules and stop at the first working one. + foreach(_pkg_alt ${_pkg_modules_alt}) + if(NOT _pkg_modules_found) + _pkg_check_modules_internal(0 1 "${_prefix}" "${_pkg_alt}") + endif(NOT _pkg_modules_found) + + if (${_prefix}_FOUND) + set(_pkg_modules_found 1) + endif(${_prefix}_FOUND) + endforeach(_pkg_alt) + + if (NOT ${_prefix}_FOUND) + if(${_pkg_is_required}) + message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found") + endif(${_pkg_is_required}) + endif(NOT ${_prefix}_FOUND) + + _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION}) + endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) +endmacro(pkg_search_module) + +### Local Variables: +### mode: cmake +### End: -- cgit v1.2.1 From b30b19a16dca5e1214f351e2c8e0cbaca94bbf04 Mon Sep 17 00:00:00 2001 From: Jonathan Riddell Date: Sat, 6 Jan 2007 19:01:34 +0000 Subject: Add support for oxygen icons svn path=/trunk/KDE/kdelibs/; revision=620620 --- modules/KDE4Macros.cmake | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b65c9568..2fddf266 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -267,6 +267,11 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") set(_theme_GROUP "nogroup") + + if( ${_type} STREQUAL "ox" ) + set(_theme_GROUP "oxygen") + endif(${_type} STREQUAL "ox" ) + if( ${_type} STREQUAL "cr" ) set(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) @@ -295,6 +300,11 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\4" _name "${_current_ICON}") SET(_theme_GROUP "nogroup") + + if( ${_type} STREQUAL "ox" ) + SET(_theme_GROUP "oxygen") + endif(${_type} STREQUAL "ox" ) + if( ${_type} STREQUAL "cr" ) SET(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) @@ -324,10 +334,10 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\3" _name "${_current_ICON}") SET(_theme_GROUP "nogroup") - if(${_type} STREQUAL "lo" ) - SET(_theme_GROUP "locolor") - endif(${_type} STREQUAL "lo" ) - + if(${_type} STREQUAL "ox" ) + SET(_theme_GROUP "oxygen") + endif(${_type} STREQUAL "ox" ) + if(${_type} STREQUAL "cr" ) SET(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) @@ -336,6 +346,10 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) SET(_theme_GROUP "hicolor") endif(${_type} STREQUAL "hi" ) + if(${_type} STREQUAL "lo" ) + SET(_theme_GROUP "locolor") + endif(${_type} STREQUAL "lo" ) + if( NOT ${_theme_GROUP} STREQUAL "nogroup") _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme_GROUP}/scalable -- cgit v1.2.1 From a9174aa392c1020e706c225f672f0a8ce41138d5 Mon Sep 17 00:00:00 2001 From: Matt Rogers Date: Sun, 7 Jan 2007 03:29:25 +0000 Subject: use NO_DEFAULT_PATH so that the correct version of the pim libs is found before versions in /usr svn path=/trunk/KDE/kdelibs/; revision=620708 --- modules/FindKdepimLibs.cmake | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 813c11f7..6cd94aea 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -23,15 +23,15 @@ find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h if( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND TRUE) - find_library(KDE4_EMAILFUNCTIONS_LIBS emailfunctions ${KDE4_LIB_DIR}) - find_library(KDE4_KABC_LIBS kabc ${KDE4_LIB_DIR}) - - find_library(KDE4_KCAL_LIBS kcal ${KDE4_LIB_DIR}) - find_library(KDE4_KTNEF_LIBS ktnef ${KDE4_LIB_DIR}) - find_library(KDE4_KRESOURCES_LIBS kresources ${KDE4_LIB_DIR}) - find_library(KDE4_SYNDICATION_LIBS syndication ${KDE4_LIB_DIR}) - find_library(KDE4_KLDAP_LIBS kldap ${KDE4_LIB_DIR}) - find_library(KDE4_KMIME_LIBS kmime ${KDE4_LIB_DIR}) + find_library(KDE4_EMAILFUNCTIONS_LIBS emailfunctions PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + find_library(KDE4_KABC_LIBS kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + + find_library(KDE4_KCAL_LIBS kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + find_library(KDE4_KTNEF_LIBS ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + find_library(KDE4_KRESOURCES_LIBS kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + find_library(KDE4_SYNDICATION_LIBS syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + find_library(KDE4_KLDAP_LIBS kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + find_library(KDE4_KMIME_LIBS kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) # setup global used KDE include set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) else( KDEPIMLIBS_INCLUDE_DIR ) -- cgit v1.2.1 From cea260a3a7ab42cc40fd112904f619528f5fe512 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 9 Jan 2007 14:52:17 +0000 Subject: Since we only look there, tell the user where we looked. svn path=/trunk/KDE/kdelibs/; revision=621698 --- modules/FindKdepimLibs.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 6cd94aea..a0020d8e 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -32,11 +32,11 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_SYNDICATION_LIBS syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) find_library(KDE4_KLDAP_LIBS kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) find_library(KDE4_KMIME_LIBS kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - # setup global used KDE include - set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) + # setup global used KDE include + set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) else( KDEPIMLIBS_INCLUDE_DIR ) - set(KDEPIMLIBS_FOUND FALSE) - message(FATAL_ERROR "Could NOT find a kdepimlibs installation.\nPlease build and install kdepimlibs first.") + set(KDEPIMLIBS_FOUND FALSE) + message(FATAL_ERROR "Could NOT find a kdepimlibs installation in ${KDE4_INCLUDE_DIR}.\nPlease build and install kdepimlibs first.") endif( KDEPIMLIBS_INCLUDE_DIR ) if (KDEPIMLIBS_FOUND) -- cgit v1.2.1 From 65284aaaff202da2fa98db35b1e1b89dea8c52dd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 9 Jan 2007 16:43:35 +0000 Subject: -/usr/include, /usr/local/include, /usr/lib and /usr/local/lib are not required anymore since cmake 2.4.0 or so -some cosmetics -> all the same (lower) case Alex svn path=/trunk/KDE/kdelibs/; revision=621732 --- modules/FindFontconfig.cmake | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index f90c3b32..e4579f95 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -4,7 +4,7 @@ # FONTCONFIG_FOUND - system has Fontconfig # FONTCONFIG_LIBRARIES - Link these to use FONTCONFIG # FONTCONFIG_DEFINITIONS - Compiler switches required for using FONTCONFIG -# + # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -17,28 +17,26 @@ if (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) set(FONTCONFIG_FOUND TRUE) else (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(fontconfig _FONTCONFIGIncDir _FONTCONFIGLinkDir _FONTCONFIGLinkFlags _FONTCONFIGCflags) - - set(FONTCONFIG_DEFINITIONS ${_FONTCONFIGCflags} CACHE INTERNAL "The compilation flags for fontconfig") -ENDIF (NOT WIN32) + + if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + include(UsePkgConfig) + + pkgconfig(fontconfig _FONTCONFIGIncDir _FONTCONFIGLinkDir _FONTCONFIGLinkFlags _FONTCONFIGCflags) + + set(FONTCONFIG_DEFINITIONS ${_FONTCONFIGCflags} CACHE INTERNAL "The compilation flags for fontconfig") + endif (NOT WIN32) + find_path(FONTCONFIG_INCLUDE_DIR fontconfig/fontconfig.h PATHS ${_FONTCONFIGIncDir} - /usr/include - /usr/local/include /usr/X11/include ) find_library(FONTCONFIG_LIBRARIES NAMES fontconfig PATHS ${_FONTCONFIGLinkDir} - /usr/lib - /usr/local/lib ) if (FONTCONFIG_LIBRARIES) @@ -55,6 +53,6 @@ ENDIF (NOT WIN32) endif (FONTCONFIG_FIND_REQUIRED) endif (FONTCONFIG_FOUND) - MARK_AS_ADVANCED(FONTCONFIG_LIBRARIES) + mark_as_advanced(FONTCONFIG_LIBRARIES) endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) -- cgit v1.2.1 From 493108fe1e7d05e942f3344b9561d9534e80196b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 9 Jan 2007 16:53:22 +0000 Subject: use FONTCONFIG_INCLUDE_DIR instead of FONTCONFIG_DEFINITIONS Alex svn path=/trunk/KDE/kdelibs/; revision=621735 --- modules/FindFontconfig.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index e4579f95..8bb9750e 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -11,12 +11,12 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) +if (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) # in cache already set(FONTCONFIG_FOUND TRUE) -else (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) +else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) if (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -55,4 +55,4 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) mark_as_advanced(FONTCONFIG_LIBRARIES) -endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_DEFINITIONS) +endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) -- cgit v1.2.1 From 5815e6f7db212468a766c03db7f4ec7316ef9ba2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 9 Jan 2007 17:24:48 +0000 Subject: also check FONTCONFIG_INCLUDE_DIR Alex svn path=/trunk/KDE/kdelibs/; revision=621742 --- modules/FindFontconfig.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 8bb9750e..14ae7a98 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -39,9 +39,9 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) ${_FONTCONFIGLinkDir} ) - if (FONTCONFIG_LIBRARIES) + if (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) set(FONTCONFIG_FOUND TRUE) - endif (FONTCONFIG_LIBRARIES) + endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) if (FONTCONFIG_FOUND) if (NOT FONTCONFIG_FIND_QUIETLY) -- cgit v1.2.1 From 59b29bc3a4d8bf871e4f6eefb47f71da94622eae Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Thu, 11 Jan 2007 14:15:56 +0000 Subject: make KDE apps that aren't console apps win32 apps svn path=/trunk/KDE/kdelibs/; revision=622313 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2fddf266..454bf9eb 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -630,14 +630,14 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) if (APPLE) set(_add_executable_param MACOSX_BUNDLE) endif (APPLE) -# should this be enabled on windows ? Alex -# if (WIN32) -# set(_add_executable_param WIN32) -# endif (WIN32) if (_nogui) set(_type "NOGUI") set(_add_executable_param) + else (_nogui) + if (WIN32) + set(_add_executable_param WIN32) + endif (WIN32) endif (_nogui) if (_uninst) -- cgit v1.2.1 From 304c938c71b5a01293adf7f2b523c4355d98f5fc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 11 Jan 2007 17:47:43 +0000 Subject: cosmetic fix, now the parameter for GUI apps is handled the same way both under Windows and OSX Alex CCMAIL: kde-buildsystem@kde.org It does still work under windows, right ? svn path=/trunk/KDE/kdelibs/; revision=622373 --- modules/KDE4Macros.cmake | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 454bf9eb..e1c349ff 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -627,19 +627,21 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set(_type "GUI") # determine additional parameters for add_executable() + # for GUI apps, create a bundle on OSX if (APPLE) set(_add_executable_param MACOSX_BUNDLE) endif (APPLE) + # for GUI apps, this disables the additional console under Windows + if (WIN32) + set(_add_executable_param WIN32) + endif (WIN32) + if (_nogui) set(_type "NOGUI") set(_add_executable_param) - else (_nogui) - if (WIN32) - set(_add_executable_param WIN32) - endif (WIN32) endif (_nogui) - + if (_uninst) set(_type "RUN_UNINSTALLED") endif (_uninst) -- cgit v1.2.1 From 54ec2440a320f0be3868fdd13cde1211c30cfe2e Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Fri, 12 Jan 2007 13:59:17 +0000 Subject: Fix the check for MySQL Embedded svn path=/trunk/KDE/kdelibs/; revision=622624 --- modules/FindMySQL.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index a61f62ac..daa6d84f 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -45,12 +45,12 @@ else(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) message(STATUS "MySQL not found.") endif(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) -if(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_USE_EMBEDDED_CONNECTION) +if(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_EMBEDDED_CONNECTION) set(MYSQL_EMBEDDED_FOUND TRUE) message(STATUS "Found MySQL Embedded: ${MYSQL_INCLUDE_DIR}, ${MYSQL_EMBEDDED_LIBRARIES}") -else(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_USE_EMBEDDED_CONNECTION) +else(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_EMBEDDED_CONNECTION) set(MYSQL_EMBEDDED_FOUND FALSE) message(STATUS "MySQL Embedded not found.") -endif(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_USE_EMBEDDED_CONNECTION) +endif(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_EMBEDDED_CONNECTION) mark_as_advanced(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES MYSQL_EMBEDDED_LIBRARIES) -- cgit v1.2.1 From bba270ee7a936cac90eff98d9672d1ce60606c10 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 12 Jan 2007 16:27:32 +0000 Subject: add qtmain(d).lib when linking executables on windows svn path=/trunk/KDE/kdelibs/; revision=622674 --- modules/KDE4Macros.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e1c349ff..a804183e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -617,6 +617,10 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) # endif (WIN32) + if (WIN32) + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARIES}) + endif (WIN32) + endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) macro (KDE4_ADD_EXECUTABLE _target_NAME) @@ -657,6 +661,10 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) + if (WIN32) + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARIES}) + endif (WIN32) + endmacro (KDE4_ADD_EXECUTABLE) -- cgit v1.2.1 From f0c114351d0d63d0a649d8fd147b7c8e2f3cb502 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 12 Jan 2007 16:36:28 +0000 Subject: - rename kalsadevicelist to kaudiodevicelist as it supports OSS devices just as well now - adapt the KCM to the name change - make selections on the categoryTree work correctly (used the wrong signal) - added whatsThis and toolTips to the KCM - add unknown AudioCaptureDevices to the list - make the remove function use the standard removeRows function instead of replacing the whole model data - enable InternalMove on the deviceList svn path=/trunk/KDE/kdelibs/; revision=622681 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index bf2160a5..b1ac495d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -37,7 +37,7 @@ # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONONCORE_LIBRARY - the phononcore library # KDE4_PHONONUI_LIBRARY - the phononui library -# KDE4_KALSADEVICELIST_LIBRARY - the kalsadevicelist library +# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library # KDE4_KDEFX_LIBRARY - the kdefx library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library # KDE4_SOLID_LIBRARY - the solid library @@ -433,8 +433,8 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_PHONONUI_LIBS ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) - find_library(KDE4_KALSADEVICELIST_LIBRARY NAMES kalsadevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KALSADEVICELIST_LIBS ${kalsadevicelist_LIB_DEPENDS} ${KDE4_KALSADEVICELIST_LIBRARY} ) + find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) -- cgit v1.2.1 From 0a20a5f0e83606c4ebe5e1685871b5b61fb160df Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Sat, 13 Jan 2007 14:32:54 +0000 Subject: Tidy up QCA2 check svn path=/trunk/KDE/kdelibs/; revision=622942 --- modules/FindQCA2.cmake | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index a82a6f63..d302a186 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -16,8 +16,8 @@ if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - # in cache allready - set(QCA2_FOUND TRUE) + # in cache already + set(QCA2_FOUND TRUE) else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) @@ -26,7 +26,6 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) IF (NOT WIN32) PKGCONFIG(qca _Qca2IncDir _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) - MESSAGE(STATUS "pkg-config returned ${_Qca2IncDir} for QCA 2 includes") set(QCA2_DEFINITIONS ${_Qca2Cflags}) ENDIF (NOT WIN32) @@ -35,27 +34,25 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) ${_Qca2IncDir} ) - MESSAGE(STATUS "QCA2_INCLUDE_DIR has value ${QCA2_INCLUDE_DIR}" ) - FIND_LIBRARY(QCA2_LIBRARIES NAMES qca PATHS - ${_Qca2LinkDir} - NO_DEFAULT_PATH + ${_Qca2LinkDir} + NO_DEFAULT_PATH ) if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) set(QCA2_FOUND TRUE) - endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - - if (QCA2_FOUND) - if (NOT QCA2_FIND_QUIETLY) - message(STATUS "Found QCA2: ${QCA2_LIBRARIES}") - endif (NOT QCA2_FIND_QUIETLY) - else (QCA2_FOUND) + else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) + if (NOT QCA2_INCLUDE_DIR) + message(STATUS "Could NOT find QCA2 includes in ${_Qca2IncDir}") + endif (NOT QCA2_INCLUDE_DIR) + if (NOT QCA2_LIBRARIES) + message(STATUS "Could not find QCA2 libraries in ${_Qca2LinkDir}") + endif (NOT QCA2_LIBRARIES) if (QCA2_FIND_REQUIRED) message(SEND_ERROR "Could NOT find QCA2") endif (QCA2_FIND_REQUIRED) - endif (QCA2_FOUND) + endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) MARK_AS_ADVANCED(QCA2_INCLUDE_DIR QCA2_LIBRARIES) -- cgit v1.2.1 From 6b8bf982f6253e457e4a60060bb0acd279164e1b Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 15 Jan 2007 10:55:23 +0000 Subject: Fix parsing of found_version when it starts with letters, like "Flex 2.5.4a". Otherwise it would set found_major_vers = "Flex 2" etc. Report, analysis, and fix by Marc.Schodermayr telemotive.de - thanks! svn path=/trunk/KDE/kdelibs/; revision=623718 --- modules/MacroEnsureVersion.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index badb50db..9d936ce7 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -18,9 +18,9 @@ MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_patch_vers "${requested_version}") - STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") - STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") + STRING(REGEX REPLACE "[^0-9]*([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") + STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") + STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") # compute an overall version number which can be compared at once MATH(EXPR req_vers_num "${req_major_vers}*10000 + ${req_minor_vers}*100 + ${req_patch_vers}") -- cgit v1.2.1 From 8bbf6337b49f1c71efa332f671725e0ec0c6c2f8 Mon Sep 17 00:00:00 2001 From: Brad Hards Date: Tue, 16 Jan 2007 07:04:10 +0000 Subject: Fix a problem experienced by a few people, where the QCA2 cmake module threw away the pkg-config output, and returned the path to the QtCrypto directory, instead of the path to the include (typically one level down). svn path=/trunk/KDE/kdelibs/; revision=624040 --- modules/FindQCA2.cmake | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index d302a186..d671422f 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -24,15 +24,16 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) INCLUDE(UsePkgConfig) IF (NOT WIN32) - PKGCONFIG(qca _Qca2IncDir _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) + PKGCONFIG(qca QCA2_INCLUDE_DIR _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) set(QCA2_DEFINITIONS ${_Qca2Cflags}) - ENDIF (NOT WIN32) + ELSE (NOT WIN32) - FIND_PATH(QCA2_INCLUDE_DIR QtCrypto - PATHS - ${_Qca2IncDir} - ) + FIND_PATH(QCA2_INCLUDE_DIR QtCrypto + PATHS + ${_Qca2IncDir} + ) + ENDIF (NOT WIN32) FIND_LIBRARY(QCA2_LIBRARIES NAMES qca PATHS -- cgit v1.2.1 From 3e66a2ffd7de1f61236fbf85b1e313692d2b48de Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 18 Jan 2007 18:12:25 +0000 Subject: A new macro for generating index.html from index.docbook using meinproc. Doesn't seem to work yet, so I'm hoping a cmake guru will see this and help me. I tried putting kde4_create_html_handbook(index.docbook) in the kdepim/doc/akregator/CMakeLists.txt, but I don't see that an index.html is being created anywhere. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=625018 --- modules/KDE4Macros.cmake | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a804183e..19e83c9d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -223,6 +223,20 @@ macro(KDE4_GET_AUTOMOC_FILES _list) endmacro(KDE4_GET_AUTOMOC_FILES) +macro (KDE4_CREATE_HTML_HANDBOOK) + # iterate over all files + foreach (_current_FILE ${ARGN}) + get_filename_component(_input ${_current_FILE} ABSOLUTE) + set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.html) + add_custom_command(OUTPUT ${_doc} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} + ARGS -o ${_doc} ${_input} + DEPENDS ${_input} + ) + endforeach (_current_FILE) +endmacro (KDE4_CREATE_HTML_HANDBOOK) + + # only used internally by KDE4_INSTALL_ICONS MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) -- cgit v1.2.1 From ebc83eb65f94d6903b7aa928867f47567c04399d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 18 Jan 2007 19:44:49 +0000 Subject: -add the dependency to meinproc when building kdelibs to the meinproc macro, so meinproc gets created before the rule is executed -remove the unnecessary if() around the find_program() calls, they in any way do nothing if it was found already -add docs for the new meinproc macro to FindKDE4Internal.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=625047 --- modules/FindKDE4Internal.cmake | 20 ++++++++------------ modules/KDE4Macros.cmake | 2 +- 2 files changed, 9 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b1ac495d..7a852b26 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -181,6 +181,9 @@ # Installs all png and svgz files in the current directory to the icon # directoy given in path, in the subdirectory for the given icon theme. # +# KDE4_CREATE_HTML_HANDBOOK( ... +# Create the HTML documentation using meinproc from the listed docbook files +# # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally # @@ -343,6 +346,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) + set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc) set(KDE4_INSTALLED_VERSION_OK TRUE) @@ -351,6 +355,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) # ... but NOT otherwise set( _KDE4_KCONFIG_COMPILER_DEP) set( _KDE4_MAKEKDEWIDGETS_DEP) + set( _KDE4_MEINPROC_EXECUTABLE_DEP) # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) @@ -477,10 +482,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) /opt/kde4/bin NO_DEFAULT_PATH ) - - if (NOT KDE4_KCFGC_EXECUTABLE) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) - endif (NOT KDE4_KCFGC_EXECUTABLE) + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS ${KDE4_BIN_INSTALL_DIR} @@ -489,10 +491,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) /opt/kde4/bin NO_DEFAULT_PATH ) - - if (NOT KDE4_MEINPROC_EXECUTABLE) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) - endif (NOT KDE4_MEINPROC_EXECUTABLE) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} @@ -501,10 +500,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) /opt/kde4/bin NO_DEFAULT_PATH ) - - if (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) - endif (NOT KDE4_MAKEKDEWIDGETS_EXECUTABLE) + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 19e83c9d..cc491c4c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -231,7 +231,7 @@ macro (KDE4_CREATE_HTML_HANDBOOK) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} ARGS -o ${_doc} ${_input} - DEPENDS ${_input} + DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ) endforeach (_current_FILE) endmacro (KDE4_CREATE_HTML_HANDBOOK) -- cgit v1.2.1 From 4a12ccbf2a87c8e88b1cc2ee70c914b62c3f5c52 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 19 Jan 2007 23:31:36 +0000 Subject: -add a helper target "htmlhandbook" using add_custom_target() which depends on the generated index.html one problem: if you enter multiple docbook files, the output file name for each of them is ${CMAKE_CURRENT_BINARY_DIR}/index.html I guess this is not intended. How should they actually be named ? Alex CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=625313 --- modules/KDE4Macros.cmake | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index cc491c4c..9caead7b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -224,16 +224,18 @@ endmacro(KDE4_GET_AUTOMOC_FILES) macro (KDE4_CREATE_HTML_HANDBOOK) + set(_htmlOutputFiles) # iterate over all files foreach (_current_FILE ${ARGN}) get_filename_component(_input ${_current_FILE} ABSOLUTE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.html) add_custom_command(OUTPUT ${_doc} - COMMAND ${KDE4_MEINPROC_EXECUTABLE} - ARGS -o ${_doc} ${_input} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} -o ${_doc} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ) + list(APPEND _htmlOutputFiles ${_doc}) endforeach (_current_FILE) + add_custom_target(htmlhandbook ALL DEPENDS ${_htmlOutputFiles} ) endmacro (KDE4_CREATE_HTML_HANDBOOK) @@ -283,11 +285,11 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) set(_theme_GROUP "nogroup") if( ${_type} STREQUAL "ox" ) - set(_theme_GROUP "oxygen") + set(_theme_GROUP "oxygen") endif(${_type} STREQUAL "ox" ) if( ${_type} STREQUAL "cr" ) - set(_theme_GROUP "crystalsvg") + set(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) if( ${_type} STREQUAL "lo" ) @@ -297,7 +299,7 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) if( ${_type} STREQUAL "hi" ) set(_theme_GROUP "hicolor") endif(${_type} STREQUAL "hi" ) - + if( NOT ${_theme_GROUP} STREQUAL "nogroup") _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme_GROUP}/${_size}x${_size} @@ -318,11 +320,11 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) if( ${_type} STREQUAL "ox" ) SET(_theme_GROUP "oxygen") endif(${_type} STREQUAL "ox" ) - + if( ${_type} STREQUAL "cr" ) SET(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) - + if( ${_type} STREQUAL "lo" ) set(_theme_GROUP "locolor") endif(${_type} STREQUAL "lo" ) @@ -351,11 +353,11 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) if(${_type} STREQUAL "ox" ) SET(_theme_GROUP "oxygen") endif(${_type} STREQUAL "ox" ) - + if(${_type} STREQUAL "cr" ) SET(_theme_GROUP "crystalsvg") endif(${_type} STREQUAL "cr" ) - + if(${_type} STREQUAL "hi" ) SET(_theme_GROUP "hicolor") endif(${_type} STREQUAL "hi" ) @@ -406,7 +408,7 @@ ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) # For all C++ sources a big source file which includes all the files # is created. # This is not done for the C sources, they are just gathered in a separate list -# because they are usually not written by KDE and as such not intended to be +# because they are usually not written by KDE and as such not intended to be # compiled all-in-one. macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesExcludedFromFinalFile ) set(${_filesExcludedFromFinalFile}) @@ -419,7 +421,7 @@ macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesExcludedFromFinalFile ) if (_isGenerated) list(APPEND ${_filesExcludedFromFinalFile} ${_abs_FILE}) else (_isGenerated) - # don't include c-files in the final-file, because they usually come + # don't include c-files in the final-file, because they usually come # from a 3rd party and as such are not intended to be compiled all-in-one string(REGEX MATCH ".+\\.c$" _isCFile ${_abs_FILE}) if (_isCFile) @@ -434,7 +436,7 @@ endmacro (KDE4_CREATE_FINAL_FILES) # This macro sets the RPATH related options for libraries, plugins and kdeinit executables. # It overrides the defaults set in FindKDE4Internal.cmake. -# If RPATH is not explicitely disabled, libraries and plugins are built without RPATH, in +# If RPATH is not explicitely disabled, libraries and plugins are built without RPATH, in # the hope that the RPATH which is compiled into the executable is good enough. macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) if (NOT CMAKE_SKIP_RPATH AND NOT KDE4_USE_ALWAYS_FULL_RPATH) @@ -446,7 +448,7 @@ endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) # and creates wrapper shell scripts for the executables. # It overrides the defaults set in FindKDE4Internal.cmake. # For every executable a wrapper script is created, which sets the appropriate -# environment variable for the platform (LD_LIBRARY_PATH on most UNIX systems, +# environment variable for the platform (LD_LIBRARY_PATH on most UNIX systems, # DYLD_LIBRARY_PATH on OS X and PATH in Windows) so that it points to the built # but not yet installed versions of the libraries. So if RPATH is disabled, the executables # can be run via these scripts from the build tree and will find the correct libraries. @@ -465,11 +467,11 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) if (${_type} STREQUAL "GUI") set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) endif (${_type} STREQUAL "GUI") - + if (${_type} STREQUAL "NOGUI") set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) endif (${_type} STREQUAL "NOGUI") - + if (${_type} STREQUAL "RUN_UNINSTALLED") set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) endif (${_type} STREQUAL "RUN_UNINSTALLED") @@ -503,10 +505,10 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) # maybe later this will change to a generated batch file (for setting the PATH so that the Qt libs are found) get_target_property(_executable ${_target_NAME} LOCATION ) set_target_properties(${_target_NAME} PROPERTIES WRAPPER_SCRIPT ${_executable}) - + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/;${LIB_INSTALL_DIR};${KDE4_LIB_DIR};${QT_LIBRARY_DIR}") get_target_property(_executable ${_target_NAME} LOCATION ) - + # use add_custom_target() to have the batch-file-wrapper generated during build time instead of cmake time add_custom_command(TARGET ${_target_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} @@ -514,7 +516,7 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) -D_ld_library_path="${_ld_library_path}" -D_executable="${_executable}" -P ${KDE4_MODULE_DIR}/kde4_exec_via_sh.cmake ) - + endif (UNIX) endmacro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE) @@ -556,14 +558,14 @@ endmacro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) # files has the "NOGUI" or "RUN_UNINSTALLED" keywords at the beginning # in _output_LIST the list of source files is returned with the "NOGUI" # and "RUN_UNINSTALLED" keywords removed -# if "NOGUI" is in the list of files, the _nogui argument is set to +# if "NOGUI" is in the list of files, the _nogui argument is set to # "NOGUI" (which evaluates to TRUE in cmake), otherwise it is set empty # (which evaluates to FALSE in cmake) -# if "RUN_UNINSTALLED" is in the list of files, the _uninst argument is set to +# if "RUN_UNINSTALLED" is in the list of files, the _uninst argument is set to # "RUN_UNINSTALLED" (which evaluates to TRUE in cmake), otherwise it is set empty # (which evaluates to FALSE in cmake) macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) - set(${_nogui}) + set(${_nogui}) set(${_uninst}) set(${_output_LIST} ${ARGN}) list(LENGTH ${_output_LIST} count) @@ -589,7 +591,7 @@ macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) if (${first_PARAM} STREQUAL "RUN_UNINSTALLED") set(${_uninst} "RUN_UNINSTALLED") - set(remove 0) + set(remove 0) endif (${first_PARAM} STREQUAL "RUN_UNINSTALLED") if (${second_PARAM} STREQUAL "RUN_UNINSTALLED") -- cgit v1.2.1 From 6bcd26467abb252ca269faad4ae2131566531ce0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 20 Jan 2007 13:28:47 +0000 Subject: Added new macro MACRO_OPTIONAL_ADD_SUBDIRECTORY(dir), which might be useful e.g. for extragear. If you use this instead of the normal ADD_SUBDIRECTORY(), it adds for every directory an option so you can skip this directory, and it doesn't complain if the directory doesn't exist. E.g. if you want to compile just one project from the extragear or kdesupport you can turn the other dirs off if you use this macro instead of the normal ADD_SUBDIRECTORY() Alex CCMAIL: kde-core-devel@kde.org CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=625574 --- modules/MacroLibrary.cmake | 1 + modules/MacroOptionalAddSubdirectory.cmake | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 modules/MacroOptionalAddSubdirectory.cmake (limited to 'modules') diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 59836927..3b802126 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -7,6 +7,7 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. INCLUDE(MacroOptionalFindPackage) +INCLUDE(MacroOptionalAddSubdirectory) INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroAddCompileFlags) diff --git a/modules/MacroOptionalAddSubdirectory.cmake b/modules/MacroOptionalAddSubdirectory.cmake new file mode 100644 index 00000000..b0d565c2 --- /dev/null +++ b/modules/MacroOptionalAddSubdirectory.cmake @@ -0,0 +1,27 @@ +# - MACRO_OPTIONAL_ADD_SUBDIRECTORY() combines ADD_SUBDIRECTORY() with an OPTION() +# MACRO_OPTIONAL_ADD_SUBDIRECTORY( ) +# If you use MACRO_OPTIONAL_ADD_SUBDIRECTORY() instead of ADD_SUBDIRECTORY(), +# this will have two effects +# 1 - CMake will not complain if the directory doesn't exist +# This makes sense if you want to distribute just one of the subdirs +# in a source package, e.g. just one of the subdirs in kdeextragear. +# 2 - If the directory exists, it will offer an option to skip the +# subdirectory. +# This is useful if you want to compile only a subset of all +# directories. + +# Copyright (c) 2007, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +MACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY _dir ) + GET_FILENAME_COMPONENT(_fullPath ${_dir} ABSOLUTE) + IF(EXISTS ${_fullPath}) + OPTION(BUILD_${_dir} "Build directory ${_dir}" TRUE) + IF(BUILD_${_dir}) + ADD_SUBDIRECTORY(${_dir}) + ENDIF(BUILD_${_dir}) + ENDIF(EXISTS ${_fullPath}) +ENDMACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY) -- cgit v1.2.1 From 82ef379e4f763438ea7b820bd88d42f7f38b5baa Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Sat, 20 Jan 2007 13:58:47 +0000 Subject: Do not override my compiler flags, thank you svn path=/trunk/KDE/kdelibs/; revision=625581 --- modules/FindKDE4Internal.cmake | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7a852b26..f1334007 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -635,8 +635,8 @@ endif (APPLE) if (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_COMPILER_IS_GNUCXX) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") # we profile... if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") @@ -645,15 +645,15 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc") + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") endif (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - set ( CMAKE_SHARED_LINKER_FLAGS "-lc") - set ( CMAKE_MODULE_LINKER_FLAGS "-lc") + set ( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") endif (CMAKE_SYSTEM_NAME MATCHES BSD) # compiler specific stuff, maybe this should be done differently, Alex @@ -717,7 +717,8 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (GCC_IS_NEWER_THAN_4_1) if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden") + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden") else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (__KDE_HAVE_GCC_VISIBILITY 0) endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) -- cgit v1.2.1 From 70c525d58ab923b19720edb3257d602b38d588c2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 20 Jan 2007 14:09:25 +0000 Subject: -user CMAKE_MODULE_LINKER_FLAGS for CMAKE_MODULE_LINKER_FLAGS Alex svn path=/trunk/KDE/kdelibs/; revision=625584 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f1334007..143c3ea0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -636,7 +636,7 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_COMPILER_IS_GNUCXX) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") # we profile... if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") @@ -646,14 +646,14 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_C_COMPILER MATCHES "icc") set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") endif (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_SYSTEM_NAME MATCHES Linux) if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) set ( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lc") endif (CMAKE_SYSTEM_NAME MATCHES BSD) # compiler specific stuff, maybe this should be done differently, Alex -- cgit v1.2.1 From 334e5ff5439d76c03d57b57518ebd596067fb837 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 20 Jan 2007 23:57:46 +0000 Subject: New macros for creating and installing application handbooks. To use, in your module/doc/app/CMakeLists.txt: kde4_create_handbook(index.docbook) kde4_install_handbook() Oh, this will probably not work for kdelibs/doc because we need to pass meinproc the --srcdir option in that module. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=625750 --- modules/FindKDE4Internal.cmake | 10 +++++++-- modules/KDE4Macros.cmake | 51 +++++++++++++++++++++++++++++------------- 2 files changed, 44 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 143c3ea0..6322bd75 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -181,8 +181,14 @@ # Installs all png and svgz files in the current directory to the icon # directoy given in path, in the subdirectory for the given icon theme. # -# KDE4_CREATE_HTML_HANDBOOK( ... -# Create the HTML documentation using meinproc from the listed docbook files +# KDE4_CREATE_HANDBOOK( docbookfile ) +# Create the handbook from the docbookfile (using meinproc) +# +# KDE4_INSTALL_HANDBOOK() +# Install the handbook documentation +# +# KDE4_CREATE_HTML_HANDBOOK( docbookfile ) +# Create HTML version of the handbook from the docbookfile (using meinproc) # # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9caead7b..f76fa253 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -222,23 +222,44 @@ macro(KDE4_GET_AUTOMOC_FILES _list) endforeach (_current_FILE) endmacro(KDE4_GET_AUTOMOC_FILES) - -macro (KDE4_CREATE_HTML_HANDBOOK) - set(_htmlOutputFiles) - # iterate over all files - foreach (_current_FILE ${ARGN}) - get_filename_component(_input ${_current_FILE} ABSOLUTE) - set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.html) - add_custom_command(OUTPUT ${_doc} - COMMAND ${KDE4_MEINPROC_EXECUTABLE} -o ${_doc} ${_input} - DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} - ) - list(APPEND _htmlOutputFiles ${_doc}) - endforeach (_current_FILE) - add_custom_target(htmlhandbook ALL DEPENDS ${_htmlOutputFiles} ) +macro (KDE4_INSTALL_HANDBOOK) + get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) + get_filename_component(_basename ${_tmp_FILE} NAME_WE) + file(GLOB _books *.docbook) + file(GLOB _images *.png) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${_basename}) + # TODO symlinks on non-unix platforms + if (UNIX) + ADD_CUSTOM_COMMAND(OUTPUT "${HTML_INSTALL_DIR}/en/${_basename}/common" + DEPENDS "${HTML_INSTALL_DIR}/en/common" + COMMAND /bin/ln + ARGS -s "${HTML_INSTALL_DIR}/en/common" "${HTML_INSTALL_DIR}/en/${_basename}/common" + COMMENT "Symlink") + FILE(MAKE_DIRECTORY ${HTML_INSTALL_DIR}/en/${_basename}) + ADD_CUSTOM_TARGET(CreateSymlinks ALL DEPENDS ${HTML_INSTALL_DIR}/en/${_basename}/common) + endif (UNIX) +endmacro (KDE4_INSTALL_HANDBOOK) + +macro (KDE4_CREATE_HANDBOOK _docbook) + get_filename_component(_input ${_docbook} ABSOLUTE) + set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2) + add_custom_command(OUTPUT ${_doc} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check --cache ${_doc} ${_input} + DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} + ) + add_custom_target(handbook ALL DEPENDS ${_doc}) +endmacro (KDE4_CREATE_HANDBOOK) + +macro (KDE4_CREATE_HTML_HANDBOOK _docbook) + get_filename_component(_input ${_docbook} ABSOLUTE) + set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) + add_custom_command(OUTPUT ${_doc} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check -o ${_doc} ${_input} + DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} + ) + add_custom_target(htmlhandbook ALL DEPENDS ${_doc}) endmacro (KDE4_CREATE_HTML_HANDBOOK) - # only used internally by KDE4_INSTALL_ICONS MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) -- cgit v1.2.1 From 3111129ea0af631eb7f305970d1d205341f356fa Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 21 Jan 2007 11:48:42 +0000 Subject: win32-only fixes: - cmake's add_custom_target somehow steals our ';' - quote it with '\' - fix reading $Path from environment svn path=/trunk/KDE/kdelibs/; revision=625842 --- modules/KDE4Macros.cmake | 6 +++--- modules/kde4_exec_via_sh.cmake | 5 +++-- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f76fa253..404b5c11 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -527,10 +527,10 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) get_target_property(_executable ${_target_NAME} LOCATION ) set_target_properties(${_target_NAME} PROPERTIES WRAPPER_SCRIPT ${_executable}) - set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/;${LIB_INSTALL_DIR};${KDE4_LIB_DIR};${QT_LIBRARY_DIR}") + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}\;${LIB_INSTALL_DIR}\;${KDE4_LIB_DIR}\;${QT_LIBRARY_DIR}") get_target_property(_executable ${_target_NAME} LOCATION ) - - # use add_custom_target() to have the batch-file-wrapper generated during build time instead of cmake time + + # use add_custom_target() to have the batch-file-wrapper generated during build time instead of cmake time add_custom_command(TARGET ${_target_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -D_filename="${_executable}.bat" diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index a42817a9..30a837af 100755 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -20,10 +20,11 @@ exec_program(chmod ARGS ug+x \"${_filename}\" OUTPUT_VARIABLE _dummy ) else (UNIX) -file(TO_NATIVE_PATH ${_ld_library_path} win_path) +file(TO_NATIVE_PATH "${_ld_library_path}" win_path) + file(WRITE "${_filename}" " -set PATH=${win_path};${PATH} +set PATH=${win_path};$ENV{PATH} \"${_executable}\" %* ") -- cgit v1.2.1 From b638c78a51783d8b2b649f42eff55e985c6b461d Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 21 Jan 2007 12:00:51 +0000 Subject: make the handbook creation dependent on the stylesheet. svn path=/trunk/KDE/kdelibs/; revision=625844 --- modules/KDE4Macros.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 404b5c11..8846ed07 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -243,9 +243,10 @@ endmacro (KDE4_INSTALL_HANDBOOK) macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2) + set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check --cache ${_doc} ${_input} - DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} + DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) add_custom_target(handbook ALL DEPENDS ${_doc}) endmacro (KDE4_CREATE_HANDBOOK) @@ -253,9 +254,10 @@ endmacro (KDE4_CREATE_HANDBOOK) macro (KDE4_CREATE_HTML_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) + set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check -o ${_doc} ${_input} - DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} + DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) add_custom_target(htmlhandbook ALL DEPENDS ${_doc}) endmacro (KDE4_CREATE_HTML_HANDBOOK) -- cgit v1.2.1 From 6a0ccda3593248c2030bc8bf2b4c76685cff5ebf Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 21 Jan 2007 12:51:00 +0000 Subject: fix qtmain usage svn path=/trunk/KDE/kdelibs/; revision=625858 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 8846ed07..a6374d95 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -657,7 +657,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # endif (WIN32) if (WIN32) - target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARIES}) + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) endif (WIN32) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) @@ -701,7 +701,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) if (WIN32) - target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARIES}) + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) endif (WIN32) endmacro (KDE4_ADD_EXECUTABLE) -- cgit v1.2.1 From 4580cac70f48c503803c0e776e2e10a1240e3e07 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sun, 21 Jan 2007 20:02:54 +0000 Subject: can't hurt to create the directory beforehand. svn path=/trunk/KDE/kdelibs/; revision=625994 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a6374d95..5387cebf 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -227,6 +227,7 @@ macro (KDE4_INSTALL_HANDBOOK) get_filename_component(_basename ${_tmp_FILE} NAME_WE) file(GLOB _books *.docbook) file(GLOB _images *.png) + FILE(MAKE_DIRECTORY ${HTML_INSTALL_DIR}/en/${_basename}) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${_basename}) # TODO symlinks on non-unix platforms if (UNIX) @@ -235,7 +236,6 @@ macro (KDE4_INSTALL_HANDBOOK) COMMAND /bin/ln ARGS -s "${HTML_INSTALL_DIR}/en/common" "${HTML_INSTALL_DIR}/en/${_basename}/common" COMMENT "Symlink") - FILE(MAKE_DIRECTORY ${HTML_INSTALL_DIR}/en/${_basename}) ADD_CUSTOM_TARGET(CreateSymlinks ALL DEPENDS ${HTML_INSTALL_DIR}/en/${_basename}/common) endif (UNIX) endmacro (KDE4_INSTALL_HANDBOOK) -- cgit v1.2.1 From c9a813a3d7b039c1d59891497cbbe6c3bd96d612 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 22 Jan 2007 08:29:15 +0000 Subject: Add kwalletclient cmake macro svn path=/trunk/KDE/kdelibs/; revision=626117 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6322bd75..f2577f89 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -45,6 +45,7 @@ # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # KDE4_KROSSCORE_LIBRARY- the krosscore library # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library +# KDE4_KWALLETCLIENT_LIBRARY - the kwalletclient library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -73,6 +74,7 @@ # KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries +# KDE4_KWALLETCLIENT_LIBS - the kwallet client library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -465,6 +467,9 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} ) set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) + find_library(KDE4_KWALLETCLIENT_LIBRARY NAMES kwalletclient PATHS ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_KWALLETCLIENT_LIBS ${kwalletclient_LIB_DEPENDS} ${KDE4_KWALLETCLIENT_LIBRARY} ) + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From 3813835a653d2dafb8fd88799485556630cbd7e5 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 22 Jan 2007 10:17:40 +0000 Subject: Update svn path=/trunk/KDE/kdelibs/; revision=626144 --- modules/KDE4Macros.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 5387cebf..9e4650ea 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -13,9 +13,12 @@ # KDE4_INSTALL_ICONS # KDE4_REMOVE_OBSOLETE_CMAKE_FILES # KDE4_NO_ENABLE_FINAL +# KDE4_CREATE_HANDBOOK +# KDE4_CREATE_HTML_HANDBOOK +# KDE4_INSTALL_HANDBOOK -# Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006, 2007, Alexander Neundorf, +# Copyright (c) 2006, 2007, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -- cgit v1.2.1 From a1d69f115dfdb3cc0da990262947a0e4fe9e09c5 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 22 Jan 2007 11:02:53 +0000 Subject: Allow to install doc into subdirectory svn path=/trunk/KDE/kdelibs/; revision=626160 --- modules/KDE4Macros.cmake | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9e4650ea..9735de1a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -225,23 +225,25 @@ macro(KDE4_GET_AUTOMOC_FILES _list) endforeach (_current_FILE) endmacro(KDE4_GET_AUTOMOC_FILES) -macro (KDE4_INSTALL_HANDBOOK) +macro (KDE4_INSTALL_HANDBOOK ) get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) get_filename_component(_basename ${_tmp_FILE} NAME_WE) file(GLOB _books *.docbook) file(GLOB _images *.png) - FILE(MAKE_DIRECTORY ${HTML_INSTALL_DIR}/en/${_basename}) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${_basename}) + set(relative ${ARGV0}) + set( dirname ${relative}/${_basename}) + FILE(MAKE_DIRECTORY ${HTML_INSTALL_DIR}/en/${dirname}) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) - ADD_CUSTOM_COMMAND(OUTPUT "${HTML_INSTALL_DIR}/en/${_basename}/common" + ADD_CUSTOM_COMMAND(OUTPUT "${HTML_INSTALL_DIR}/en/${dirname}/common" DEPENDS "${HTML_INSTALL_DIR}/en/common" COMMAND /bin/ln - ARGS -s "${HTML_INSTALL_DIR}/en/common" "${HTML_INSTALL_DIR}/en/${_basename}/common" + ARGS -s "${HTML_INSTALL_DIR}/en/common" "${HTML_INSTALL_DIR}/en/${dirname}/common" COMMENT "Symlink") - ADD_CUSTOM_TARGET(CreateSymlinks ALL DEPENDS ${HTML_INSTALL_DIR}/en/${_basename}/common) + ADD_CUSTOM_TARGET(CreateSymlinks ALL DEPENDS ${HTML_INSTALL_DIR}/en/${dirname}/common) endif (UNIX) -endmacro (KDE4_INSTALL_HANDBOOK) +endmacro (KDE4_INSTALL_HANDBOOK ) macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) -- cgit v1.2.1 From 6c92b70dac6b5cbd6acee53d9539df0b4c93033b Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 22 Jan 2007 15:06:54 +0000 Subject: replace this evil hack with an entirely more evil hack that hopefully works svn path=/trunk/KDE/kdelibs/; revision=626228 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9735de1a..182437b5 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -225,17 +225,17 @@ macro(KDE4_GET_AUTOMOC_FILES _list) endforeach (_current_FILE) endmacro(KDE4_GET_AUTOMOC_FILES) -macro (KDE4_INSTALL_HANDBOOK ) +macro (KDE4_INSTALL_HANDBOOK) get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) get_filename_component(_basename ${_tmp_FILE} NAME_WE) file(GLOB _books *.docbook) file(GLOB _images *.png) set(relative ${ARGV0}) set( dirname ${relative}/${_basename}) - FILE(MAKE_DIRECTORY ${HTML_INSTALL_DIR}/en/${dirname}) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) + install(DIRECTORY /var/lib/empty/ DESTINATION ${HTML_INSTALL_DIR}/en/${dirname}) ADD_CUSTOM_COMMAND(OUTPUT "${HTML_INSTALL_DIR}/en/${dirname}/common" DEPENDS "${HTML_INSTALL_DIR}/en/common" COMMAND /bin/ln -- cgit v1.2.1 From af2b8b438d0ae57f744c1b49a92237b8a5ddc4cd Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 22 Jan 2007 15:39:34 +0000 Subject: Fix create symlink when in post install svn path=/trunk/KDE/kdelibs/; revision=626238 --- modules/KDE4Macros.cmake | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 182437b5..ddedb91f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -235,13 +235,10 @@ macro (KDE4_INSTALL_HANDBOOK) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) - install(DIRECTORY /var/lib/empty/ DESTINATION ${HTML_INSTALL_DIR}/en/${dirname}) - ADD_CUSTOM_COMMAND(OUTPUT "${HTML_INSTALL_DIR}/en/${dirname}/common" - DEPENDS "${HTML_INSTALL_DIR}/en/common" - COMMAND /bin/ln - ARGS -s "${HTML_INSTALL_DIR}/en/common" "${HTML_INSTALL_DIR}/en/${dirname}/common" - COMMENT "Symlink") - ADD_CUSTOM_TARGET(CreateSymlinks ALL DEPENDS ${HTML_INSTALL_DIR}/en/${dirname}/common) + # write a cmake script file which creates the symlink + file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/make_doc_symlink.cmake "exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${HTML_INSTALL_DIR}/en/common ${HTML_INSTALL_DIR}/en/${dirname}/common )\n") + # and add it as post-install script to any of the installed targets, so it will be executed during "make install" + ADD_CUSTOM_TARGET(CreateSymlinks POST_INSTALL_SCRIPT ALL DEPENDS ${HTML_INSTALL_DIR}/en/${dirname}/common) endif (UNIX) endmacro (KDE4_INSTALL_HANDBOOK ) -- cgit v1.2.1 From 28b830b8cd8f3af771620fd627ed6c952331767f Mon Sep 17 00:00:00 2001 From: Jacob Rideout Date: Mon, 22 Jan 2007 16:11:47 +0000 Subject: Changed kspell2 to sonnet where relevant, in anticipation of merging sonnet-refactoring into trunk svn path=/trunk/KDE/kdelibs/; revision=626251 --- modules/FindENCHANT.cmake | 4 +++- modules/FindKDE4Internal.cmake | 17 +++++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index f7a3f0f6..1a12fe6b 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -27,10 +27,12 @@ IF (NOT WIN32) set(ENCHANT_DEFINITIONS ${_ENCHANTCflags}) ENDIF (NOT WIN32) - FIND_PATH(ENCHANT_INCLUDE_DIR enchant/enchant.h + FIND_PATH(ENCHANT_INCLUDE_DIR enchant++.h ${_ENCHANTIncDir} /usr/include + /usr/include/enchant /usr/local/include + /usr/local/include/enchant ) FIND_LIBRARY(ENCHANT_LIBRARIES NAMES enchant diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f2577f89..82abcd1f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -33,7 +33,8 @@ # KDE4_KJS_LIBRARY - the kjs library # KDE4_KNEWSTUFF_LIBRARY - the knewstuff library # KDE4_KDEPRINT_LIBRARY - the kdeprint library -# KDE4_KSPELL2_LIBRARY - the kspell2 library +# KDE4_SONNETCORE_LIBRARY - the sonnetcore library +# KDE4_SONNETUI_LIBRARY - the sonnetui library # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONONCORE_LIBRARY - the phononcore library # KDE4_PHONONUI_LIBRARY - the phononui library @@ -43,8 +44,8 @@ # KDE4_SOLID_LIBRARY - the solid library # KDE4_SOLIDIFACES_LIBRARY - the solidiface library # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library -# KDE4_KROSSCORE_LIBRARY- the krosscore library -# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library +# KDE4_KROSSCORE_LIBRARY - the krosscore library +# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library # KDE4_KWALLETCLIENT_LIBRARY - the kwalletclient library # # Compared to the variables above, the following variables @@ -62,7 +63,8 @@ # KDE4_KJS_LIBS - the kjs library and all depending libraries # KDE4_KNEWSTUFF_LIBS - the knewstuff library and all depending libraries # KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries -# KDE4_KSPELL2_LIBS - the kspell2 library and all depending libraries +# KDE4_SONNETCORE_LIBS - the sonnetcore library and all depending libraries +# KDE4_SONNETUI_LIBS - the sonnetui library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries # KDE4_PHONONCORE_LIBS - the phononcore library and all depending librairies @@ -425,8 +427,11 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) - find_library(KDE4_KSPELL2_LIBRARY NAMES kspell2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KSPELL2_LIBS ${kspell2_LIB_DEPENDS} ${KDE4_KSPELL2_LIBRARY} ) + find_library(KDE4_SONNETCORE_LIBRARY NAMES sonnetcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_SONNETCORE_LIBS ${sonnetcore_LIB_DEPENDS} ${KDE4_SONNETCORE_LIBRARY} ) + + find_library(KDE4_SONNETUI_LIBRARY NAMES sonnetui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_SONNETUI_LIBS ${sonnetui_LIB_DEPENDS} ${KDE4_SONNETUI_LIBRARY} ) if (UNIX) find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -- cgit v1.2.1 From ae36478eed54edc7263f5044a90857cd95f9bf11 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 22 Jan 2007 16:15:49 +0000 Subject: Stupid me :( Now it creates link svn path=/trunk/KDE/kdelibs/; revision=626254 --- modules/KDE4Macros.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ddedb91f..ed543621 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -237,8 +237,7 @@ macro (KDE4_INSTALL_HANDBOOK) if (UNIX) # write a cmake script file which creates the symlink file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/make_doc_symlink.cmake "exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${HTML_INSTALL_DIR}/en/common ${HTML_INSTALL_DIR}/en/${dirname}/common )\n") - # and add it as post-install script to any of the installed targets, so it will be executed during "make install" - ADD_CUSTOM_TARGET(CreateSymlinks POST_INSTALL_SCRIPT ALL DEPENDS ${HTML_INSTALL_DIR}/en/${dirname}/common) + install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/make_doc_symlink.cmake) endif (UNIX) endmacro (KDE4_INSTALL_HANDBOOK ) -- cgit v1.2.1 From c26c332ac1b79311e0afc242d405dbb444520672 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Mon, 22 Jan 2007 17:58:11 +0000 Subject: Undo my accidental change of the compiler flags from the other day. So, re-add the KDE 3.5.x test to check if g++ is fixed WRT to -fvisibility-inlines-hidden and enable it if it works (works fine on 32-bit). As for the C compiler flag, I've moved it to an independent variable. KDE is not in the business of creating C libraries, so I'll add this flag for kde4_add_library & family. If we need a 3rd-party library to be build, a different macro than kde4_add_library will be needed. svn path=/trunk/KDE/kdelibs/; revision=626277 --- modules/FindKDE4Internal.cmake | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 82abcd1f..a1ad01b9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -228,6 +228,7 @@ endif(NOT PERL_FOUND) include (MacroLibrary) include (CheckCXXCompilerFlag) +include (CheckCXXSourceCompiles) #add some KDE specific stuff @@ -733,8 +734,24 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (GCC_IS_NEWER_THAN_4_1) if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden") - set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") + set (KDE4_C_FLAGS "-fvisibility=hidden") + + macro_push_required_vars() + set (CMAKE_REQUIRED_FLAGS "${CMAKE_CXX_FLAGS} -shared -fPIC -O0 -fvisibility-inlines-hidden") + check_cxx_source_compiles("/* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */ + #include + int some_function( void ) __attribute__ ((visibility(\"default\"))); + int some_function( void ) + { + std::string s(\"blafasel\"); + return 0; + }" GCC_VISIBILITY_INLINES_HIDDEN_BUG) + macro_pop_required_vars() + + if (NOT GCC_VISIBILITY_INLINES_HIDDEN_BUG) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") + endif (NOT GCC_VISIBILITY_INLINES_HIDDEN_BUG) else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (__KDE_HAVE_GCC_VISIBILITY 0) endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) -- cgit v1.2.1 From e1efbf5c80ca2407c6e94ab1f6263f9cadbed86e Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Tue, 23 Jan 2007 11:05:14 +0000 Subject: add -fno-threadsafe-statics to the CXXFLAGS if supported: as we can't rely on threadsafe local statics anyway, we can save the cycles in gcc4 compiled programs (gcc4 adds a mutex around every local static). svn path=/trunk/KDE/kdelibs/; revision=626443 --- modules/FindKDE4Internal.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a1ad01b9..84f4f1b9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -713,6 +713,12 @@ if (CMAKE_COMPILER_IS_GNUCXX) MESSAGE(STATUS "Your compiler doesn't support PIE flag") endif(HAVE_FPIE_SUPPORT) endif(KDE4_ENABLE_FPIE) + # save a little by making local statics not threadsafe + check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) + if (__KDE_HAVE_NO_THREADSAFE_STATICS) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") + endif (__KDE_HAVE_NO_THREADSAFE_STATICS) + # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) -- cgit v1.2.1 From 469436acf61d756fb1e0e2d6ab68be1d95ea1921 Mon Sep 17 00:00:00 2001 From: Thomas Zander Date: Tue, 23 Jan 2007 12:47:57 +0000 Subject: Fix inline-visibility detection svn path=/trunk/KDE/kdelibs/; revision=626472 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 84f4f1b9..2710fff1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -752,12 +752,12 @@ if (CMAKE_COMPILER_IS_GNUCXX) { std::string s(\"blafasel\"); return 0; - }" GCC_VISIBILITY_INLINES_HIDDEN_BUG) + }" GCC_VISIBILITY_INLINES_HIDDEN_AVAILABLE) macro_pop_required_vars() - if (NOT GCC_VISIBILITY_INLINES_HIDDEN_BUG) + if (GCC_VISIBILITY_INLINES_HIDDEN_AVAILABLE) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") - endif (NOT GCC_VISIBILITY_INLINES_HIDDEN_BUG) + endif (GCC_VISIBILITY_INLINES_HIDDEN_AVAILABLE) else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (__KDE_HAVE_GCC_VISIBILITY 0) endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) -- cgit v1.2.1 From b98d3424307be18ebc8b9b8a85b3271176fad6b6 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 23 Jan 2007 19:10:34 +0000 Subject: Ah bah the vars were not set when compiling kdelibs itself. Now it links. svn path=/trunk/KDE/kdelibs/; revision=626580 --- modules/FindKDE4Internal.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2710fff1..d3626ee6 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -335,7 +335,8 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) - + set(KDE4_SONNETCORE_LIBS ${KDE4_KDECORE_LIBS} sonnetcore) + set(KDE4_SONNETUI_LIBS ${KDE4_KDEUI_LIBS} sonnetui) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) -- cgit v1.2.1 From f73f26c32e55dfce4f54cfa00291309afb3aab01 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 23 Jan 2007 21:38:22 +0000 Subject: add a macro KDE4_CREATE_EXPORTS_HEADER(fileName libName) which should create an exports header for the given lib This happen via configure_file() from the template file kde4exportsheader.h.in Is this ok this way ? Please let me know. Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=626609 --- modules/KDE4Macros.cmake | 18 +++++++++++++++--- modules/kde4exportsheader.h.in | 12 ++++++++++++ 2 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 modules/kde4exportsheader.h.in (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ed543621..af9c6f60 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -794,12 +794,24 @@ MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) + MACRO(KDE4_NO_ENABLE_FINAL _project_name) if(KDE4_ENABLE_FINAL) - set(KDE4_ENABLE_FINAL OFF) - REMOVE_DEFINITIONS(-DKDE_USE_FINAL) - MESSAGE(STATUS "You used enable-final argument but \"${_project_name}\" doesn't support it. Try to fix compile it and remove KDE4_NO_ENABLE_FINAL macro. Thanks") + set(KDE4_ENABLE_FINAL OFF) + remove_definitions(-DKDE_USE_FINAL) + message(STATUS "You used enable-final argument but \"${_project_name}\" doesn't support it. Try to fix compile it and remove KDE4_NO_ENABLE_FINAL macro. Thanks") endif(KDE4_ENABLE_FINAL) ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) + +macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) + string(TOUPPER ${_libName} _libNameUpperCase) + # the next line is is required, because in CMake arguments to macros are not real + # variables, but handled differently. The next line create a real CMake variable, + # so configure_file() will replace it correctly. + set(_libName ${_libName}) + # compared to write(FILE) configure_file() only really writes the file if the + # contents have changed. Otherwise we would have a lot of recompiles. + configure_file(${KDE4_MODULE_DIR}/kde4exportsheader.h.in ${_outputFile}) +endmacro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) diff --git a/modules/kde4exportsheader.h.in b/modules/kde4exportsheader.h.in new file mode 100644 index 00000000..b9721864 --- /dev/null +++ b/modules/kde4exportsheader.h.in @@ -0,0 +1,12 @@ +/* This file is autogenerated by CMake via the macro KDE4_CREATE_EXPORTS_HEADER(). + * Don't edit, changes will be lost. + */ + +#include +#ifndef ${_libNameUpperCase}_EXPORT +# ifdef ${_libName}_EXPORTS +# define ${_libNameUpperCase}_EXPORT KDE_EXPORT +# else +# define ${_libNameUpperCase}_EXPORT KDE_IMPORT +# endif +#endif -- cgit v1.2.1 From a4c4ea7ce9083b4b56248f34a16f587e8a30203d Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 23 Jan 2007 22:37:17 +0000 Subject: Add macro KDE4_ADD_TEST for unit test usage. This way, if you have CMake 2.4.4 or later, you don't need to turn on KDE4_BUILD_TESTS to be allowed to build tests: just cd into the tests dir and "make targetname". PS: it's time we bumped the minimum version requirement for CMake... CCMAIL:kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=626619 --- modules/KDE4Macros.cmake | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index af9c6f60..95718bae 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -663,6 +663,39 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) +macro (KDE4_ADD_TEST _target_NAME) + + MATH(EXPR cmake_version "${CMAKE_MAJOR_VERSION} * 10000 + ${CMAKE_MINOR_VERSION} * 100 + ${CMAKE_PATCH_VERSION}") + + set(_add_executable_param) + set(_go) + if (KDE4_BUILD_TESTS) + set(_go TRUE) + else (KDE4_BUILD_TESTS) + if (cmake_version GREATER 20403) + set(_go TRUE) + set(_add_executable_param EXCLUDE_FROM_ALL) + endif (cmake_version GREATER 20403) + endif (KDE4_BUILD_TESTS) + + if (_go) + kde4_get_automoc_files(_automoc_FILES ${ARGN}) + + add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) + + set_target_properties(${_target_NAME} PROPERTIES + EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} + DEFINITIONS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" + SKIP_BUILD_RPATH FALSE + BUILD_WITH_INSTALL_RPATH FALSE) + + if (WIN32) + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) + endif (WIN32) + + endif (_go) +endmacro (KDE4_ADD_TEST) + macro (KDE4_ADD_EXECUTABLE _target_NAME) kde4_check_executable_params( _SRCS _nogui _uninst ${ARGN}) -- cgit v1.2.1 From 778040ad50202b70ea00876e602d7a0aad07d556 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 26 Jan 2007 13:03:54 +0000 Subject: Add boostrap into cmake macro which create doc to allow to generate kdelibs doc svn path=/trunk/KDE/kdelibs/; revision=627396 --- modules/KDE4Macros.cmake | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 95718bae..70f50c86 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -244,9 +244,18 @@ endmacro (KDE4_INSTALL_HANDBOOK ) macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2) - set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) + + set(_bootstrapOption) + #Boostrap + if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) + set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") + else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + add_custom_command(OUTPUT ${_doc} - COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check --cache ${_doc} ${_input} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} --cache ${_doc} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) add_custom_target(handbook ALL DEPENDS ${_doc}) @@ -255,9 +264,18 @@ endmacro (KDE4_CREATE_HANDBOOK) macro (KDE4_CREATE_HTML_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) - set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) + + set(_bootstrapOption) + #Boostrap + if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) + set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") + else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) + endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + add_custom_command(OUTPUT ${_doc} - COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check -o ${_doc} ${_input} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} -o ${_doc} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) add_custom_target(htmlhandbook ALL DEPENDS ${_doc}) -- cgit v1.2.1 From be45aa635bf842a1a08c6c389ec0daecd27bd5ab Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 26 Jan 2007 17:04:00 +0000 Subject: -introduce new internal variable _kdeBootStrapping, so that we don't have to keep of the logic of detecting whether we are inside kdelibs -detabify Alex CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=627454 --- modules/FindKDE4Internal.cmake | 21 +++++++++++++-------- modules/KDE4Macros.cmake | 36 +++++++++++++++++++----------------- 2 files changed, 32 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d3626ee6..8a54f208 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -311,7 +311,7 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") if( KDE4_ENABLE_FINAL) - add_definitions(-DKDE_USE_FINAL) + add_definitions(-DKDE_USE_FINAL) endif(KDE4_ENABLE_FINAL) #Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable @@ -325,9 +325,14 @@ option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") #are we trying to compile kdelibs ? #then enter bootstrap mode if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - + set(_kdeBootStrapping TRUE) message(STATUS "Building kdelibs...") +else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_kdeBootStrapping FALSE) +endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + +if (_kdeBootStrapping) set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) @@ -362,7 +367,7 @@ if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) set(KDE4_INSTALLED_VERSION_OK TRUE) -else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) +else (_kdeBootStrapping) # ... but NOT otherwise set( _KDE4_KCONFIG_COMPILER_DEP) @@ -520,7 +525,7 @@ else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) -endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) +endif (_kdeBootStrapping) ##################### and now the platform specific stuff ############################ @@ -548,9 +553,9 @@ if (WIN32) # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex - if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + if (_kdeBootStrapping) set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) - endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + endif (_kdeBootStrapping) # windows, mingw if(MINGW) @@ -812,7 +817,7 @@ endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INST macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" - if(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) @@ -824,7 +829,7 @@ macro (KDE4_PRINT_RESULTS) else(KDE4_LIB_DIR) message(STATUS "Didn't find KDE4 core library") endif(KDE4_LIB_DIR) - endif(NOT EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + endif (NOT _kdeBootStrapping) if(KDE4_KCFGC_EXECUTABLE) message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 70f50c86..d4249447 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -245,14 +245,14 @@ macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2) - set(_bootstrapOption) #Boostrap - if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") - else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + else (_kdeBootStrapping) set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) - endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_bootstrapOption) + endif (_kdeBootStrapping) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} --cache ${_doc} ${_input} @@ -261,18 +261,19 @@ macro (KDE4_CREATE_HANDBOOK _docbook) add_custom_target(handbook ALL DEPENDS ${_doc}) endmacro (KDE4_CREATE_HANDBOOK) + macro (KDE4_CREATE_HTML_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) set(_bootstrapOption) #Boostrap - if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") - else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + else (_kdeBootStrapping) set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) - endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + endif (_kdeBootStrapping) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} -o ${_doc} ${_input} @@ -550,7 +551,7 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}\;${LIB_INSTALL_DIR}\;${KDE4_LIB_DIR}\;${QT_LIBRARY_DIR}") get_target_property(_executable ${_target_NAME} LOCATION ) - + # use add_custom_target() to have the batch-file-wrapper generated during build time instead of cmake time add_custom_command(TARGET ${_target_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} @@ -596,7 +597,7 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endmacro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -# this macro checks is intended to check whether a list of source +# this macro is intended to check whether a list of source # files has the "NOGUI" or "RUN_UNINSTALLED" keywords at the beginning # in _output_LIST the list of source files is returned with the "NOGUI" # and "RUN_UNINSTALLED" keywords removed @@ -692,7 +693,7 @@ macro (KDE4_ADD_TEST _target_NAME) else (KDE4_BUILD_TESTS) if (cmake_version GREATER 20403) set(_go TRUE) - set(_add_executable_param EXCLUDE_FROM_ALL) + set(_add_executable_param EXCLUDE_FROM_ALL) endif (cmake_version GREATER 20403) endif (KDE4_BUILD_TESTS) @@ -702,18 +703,19 @@ macro (KDE4_ADD_TEST _target_NAME) add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) set_target_properties(${_target_NAME} PROPERTIES - EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} - DEFINITIONS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" - SKIP_BUILD_RPATH FALSE - BUILD_WITH_INSTALL_RPATH FALSE) + EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} + DEFINITIONS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" + SKIP_BUILD_RPATH FALSE + BUILD_WITH_INSTALL_RPATH FALSE) if (WIN32) - target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) endif (WIN32) endif (_go) endmacro (KDE4_ADD_TEST) + macro (KDE4_ADD_EXECUTABLE _target_NAME) kde4_check_executable_params( _SRCS _nogui _uninst ${ARGN}) @@ -759,7 +761,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endmacro (KDE4_ADD_EXECUTABLE) -MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) #is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty set(_first_SRC ${_lib_TYPE}) @@ -796,7 +798,7 @@ MACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) -ENDMACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) +endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) macro (KDE4_ADD_WIDGET_FILES _sources) -- cgit v1.2.1 From 31e3b3b01169d5f3c14e686ef9904fff998976c1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 26 Jan 2007 17:43:09 +0000 Subject: -finally remove the dcop macros Alex svn path=/trunk/KDE/kdelibs/; revision=627465 --- modules/KDE4Macros.cmake | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d4249447..af440851 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -225,6 +225,7 @@ macro(KDE4_GET_AUTOMOC_FILES _list) endforeach (_current_FILE) endmacro(KDE4_GET_AUTOMOC_FILES) + macro (KDE4_INSTALL_HANDBOOK) get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) get_filename_component(_basename ${_tmp_FILE} NAME_WE) @@ -241,6 +242,7 @@ macro (KDE4_INSTALL_HANDBOOK) endif (UNIX) endmacro (KDE4_INSTALL_HANDBOOK ) + macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2) @@ -824,15 +826,6 @@ macro (KDE4_ADD_WIDGET_FILES _sources) endmacro (KDE4_ADD_WIDGET_FILES) -MACRO(KDE4_ADD_DCOP_SKELS) - MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_SKELS() in the CMakeLists.txt for '${ARGV0}', but DCOP is no longer supported by KDE4. - Please remove it and port to DBUS.") -ENDMACRO(KDE4_ADD_DCOP_SKELS) - -MACRO(KDE4_ADD_DCOP_STUBS) - MESSAGE(FATAL_ERROR "There is a call to KDE4_ADD_DCOP_STUBS() in the CMakeLists.txt for '${ARGV0}', but DCOP is no longer supported by KDE4. - Please remove it and port to DBUS.") -ENDMACRO(KDE4_ADD_DCOP_STUBS) MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex -- cgit v1.2.1 From 246a4a97d889ae998ebdccd205b55c8cd3a29fea Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 26 Jan 2007 18:20:30 +0000 Subject: -remove old commented code Alex svn path=/trunk/KDE/kdelibs/; revision=627476 --- modules/KDE4Macros.cmake | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index af440851..05e78566 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -54,11 +54,6 @@ macro (KDE4_ADD_KCFG_FILES _sources ) list(APPEND ${_sources} ${_moc_FILE}) endif(_kcfg_generatemoc) -# if (KDE4_ENABLE_FINAL) -# kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${ARGN}) -# macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_src_FILE}) -# endif (KDE4_ENABLE_FINAL) - list(APPEND ${_sources} ${_src_FILE} ${_header_FILE}) endif(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") endforeach (_current_FILE) @@ -195,13 +190,6 @@ macro (KDE4_AUTOMOC) list(APPEND _moc_FILES_PROPERTY ${_moc}) -# if (KDE4_ENABLE_FINAL) -# kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${ARGN}) -# macro_add_file_dependencies(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_moc}) -# else (KDE4_ENABLE_FINAL) -# macro_add_file_dependencies(${_abs_FILE} ${_moc}) -# endif (KDE4_ENABLE_FINAL) - endforeach (_current_MOC_INC) endif (_match) -- cgit v1.2.1 From 32675443733a47680db1299485bb46b20b8c5a8e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 26 Jan 2007 18:46:13 +0000 Subject: use install(CODE ...) instead of file(WRITE ... ) followed by install(SCRIPT ...) so this is: -less cmake code -now with qoutes so it should also work with path containing spaces -doesn't create an additionally small cmake file for every kde4_install_handbook() call, so it should run a bit faster Alex CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=627478 --- modules/KDE4Macros.cmake | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 05e78566..bd98234b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -224,9 +224,8 @@ macro (KDE4_INSTALL_HANDBOOK) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) - # write a cmake script file which creates the symlink - file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/make_doc_symlink.cmake "exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${HTML_INSTALL_DIR}/en/common ${HTML_INSTALL_DIR}/en/${dirname}/common )\n") - install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/make_doc_symlink.cmake) + # execute some cmake code on make install which creates the symlink + install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${HTML_INSTALL_DIR}/en/common\" \"${HTML_INSTALL_DIR}/en/${dirname}/common\" )" ) endif (UNIX) endmacro (KDE4_INSTALL_HANDBOOK ) -- cgit v1.2.1 From 1f724d6c01e65eb2a068aea968d34c140589da29 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 27 Jan 2007 12:31:12 +0000 Subject: as a lot of guy report problem to compile after changes which requires cmake >= 2.4.5 or use "-DKDE4_BUILD_TESTS=ON" it's better to signal minimum requires to 2.4.5. It's better to force update that developper doesn't understand why kde doesn't compile. 2.4.3 was release in july 2006 so all major distro have new version and 2.4.5 was released in december 2006 So it's time to upgrade it. svn path=/trunk/KDE/kdelibs/; revision=627620 --- modules/FindKDE4Internal.cmake | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8a54f208..6ceea2c0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -207,7 +207,7 @@ INCLUDE (MacroEnsureVersion) -cmake_minimum_required(VERSION 2.4.3 FATAL_ERROR) +cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers @@ -221,11 +221,6 @@ endif (NOT QT_DBUSXML2CPP_EXECUTABLE) # Perl is required for building KDE software, find_package(Perl REQUIRED) -# remove once we require cmake >= 2.4.4, then the REQUIRED flag is honored by FindPerl.cmake, Alex -if(NOT PERL_FOUND) - message(FATAL_ERROR "Perl was not found. Make sure it has installed on your system") -endif(NOT PERL_FOUND) - include (MacroLibrary) include (CheckCXXCompilerFlag) include (CheckCXXSourceCompiles) -- cgit v1.2.1 From 1fb5bcae073e078d25bbd6858cc416759b9de47e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 27 Jan 2007 12:55:29 +0000 Subject: Remove module which are now into cmake-2.4.5 FindLibXslt.cmake can be remove there is different from cmake file (test xsltproc) and FindOpenSSL.cmake (I must look at difference) svn path=/trunk/KDE/kdelibs/; revision=627623 --- modules/CMakeLists.txt | 14 +++++----- modules/CheckCXXCompilerFlag.cmake | 21 -------------- modules/FindASPELL.cmake | 40 --------------------------- modules/FindBZip2.cmake | 43 ----------------------------- modules/FindHSPELL.cmake | 42 ---------------------------- modules/FindJasper.cmake | 43 ----------------------------- modules/FindLibXml2.cmake | 56 -------------------------------------- 7 files changed, 7 insertions(+), 252 deletions(-) delete mode 100644 modules/CheckCXXCompilerFlag.cmake delete mode 100644 modules/FindASPELL.cmake delete mode 100644 modules/FindBZip2.cmake delete mode 100644 modules/FindHSPELL.cmake delete mode 100644 modules/FindJasper.cmake delete mode 100644 modules/FindLibXml2.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 97d0f6d3..7a555ea0 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -19,17 +19,17 @@ set(FILES_TO_REMOVE ${module_install_dir}/UsePkgconfig.cmake ${module_install_dir}/kde3uic.cmake ${module_install_dir}/kde3init_dummy.cpp.in + ${module_install_dir}/FindASPELL.cmake + ${module_install_dir}/FindLibXml2.cmake + ${module_install_dir}/FindHSPELL.cmake + ${module_install_dir}/FindJasper.cmake + ${module_install_dir}/CheckCXXCompilerFlag.cmake + ${module_install_dir}/FindBZip2.cmake ) -# can be removed once we require cmake 2.4.4 or newer: -# CheckCXXCompilerFlag.cmake -# FindBZip2.cmake -# FindJasper.cmake -# FindLibXml2.cmake +# can be removed once we require merge into cmake # FindLibXslt.cmake # FindOpenSSL.cmake -# FindASPELL.cmake -# FindHSPELL.cmake # can be removed once we require cmake 2.4.6 or newer: # FindPkgConfig.cmake diff --git a/modules/CheckCXXCompilerFlag.cmake b/modules/CheckCXXCompilerFlag.cmake deleted file mode 100644 index 43ea9a64..00000000 --- a/modules/CheckCXXCompilerFlag.cmake +++ /dev/null @@ -1,21 +0,0 @@ -# - Check whether the CXX compiler supports a given flag. -# CHECK_CXX_COMPILER_FLAG(FLAG VARIABLE) -# -# FLAG - the compiler flag -# VARIABLE - variable to store the result - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -INCLUDE(CheckCXXSourceCompiles) - -MACRO (CHECK_CXX_COMPILER_FLAG _FLAG _RESULT) - SET(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") - SET(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") - CHECK_CXX_SOURCE_COMPILES("int main() { return 0;}" ${_RESULT}) - SET (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") -ENDMACRO (CHECK_CXX_COMPILER_FLAG) - diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake deleted file mode 100644 index 978407d6..00000000 --- a/modules/FindASPELL.cmake +++ /dev/null @@ -1,40 +0,0 @@ -# - Try to find ASPELL -# Once done this will define -# -# ASPELL_FOUND - system has ASPELL -# ASPELL_INCLUDE_DIR - the ASPELL include directory -# ASPELL_LIBRARIES - The libraries needed to use ASPELL -# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - # Already in cache, be silent - SET(ASPELL_FIND_QUIETLY TRUE) -ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - -FIND_PATH(ASPELL_INCLUDE_DIR aspell.h ) - -FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15) - -IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - SET(ASPELL_FOUND TRUE) -ELSE (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - SET(ASPELL_FOUND FALSE) -ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - -IF (ASPELL_FOUND) - IF (NOT ASPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") - ENDIF (NOT ASPELL_FIND_QUIETLY) -ELSE (ASPELL_FOUND) - IF (ASPELL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find ASPELL") - ENDIF (ASPELL_FIND_REQUIRED) -ENDIF (ASPELL_FOUND) - -MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake deleted file mode 100644 index c8464249..00000000 --- a/modules/FindBZip2.cmake +++ /dev/null @@ -1,43 +0,0 @@ -# - Try to find BZip2 -# Once done this will define -# -# BZIP2_FOUND - system has BZip2 -# BZIP2_INCLUDE_DIR - the BZip2 include directory -# BZIP2_LIBRARIES - Link these to use BZip2 -# BZIP2_DEFINITIONS - Compiler switches required for using BZip2 -# BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - SET(BZip2_FIND_QUIETLY TRUE) -ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - -FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h ) - -FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 ) - -IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - SET(BZIP2_FOUND TRUE) - INCLUDE(CheckLibraryExists) - CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) -ELSE (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - SET(BZIP2_FOUND FALSE) -ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - -IF (BZIP2_FOUND) - IF (NOT BZip2_FIND_QUIETLY) - MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - ENDIF (NOT BZip2_FIND_QUIETLY) -ELSE (BZIP2_FOUND) - IF (BZip2_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find BZip2") - ENDIF (BZip2_FIND_REQUIRED) -ENDIF (BZIP2_FOUND) - -MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) - diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake deleted file mode 100644 index a2b93a77..00000000 --- a/modules/FindHSPELL.cmake +++ /dev/null @@ -1,42 +0,0 @@ -# - Try to find HSPELL -# Once done this will define -# -# HSPELL_FOUND - system has HSPELL -# HSPELL_INCLUDE_DIR - the HSPELL include directory -# HSPELL_LIBRARIES - The libraries needed to use HSPELL -# HSPELL_DEFINITIONS - Compiler switches required for using HSPELL - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - # Already in cache, be silent - SET(HSPELL_FIND_QUIETLY TRUE) -ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - - -FIND_PATH(HSPELL_INCLUDE_DIR hspell.h ) - -FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell ) - -IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - SET(HSPELL_FOUND TRUE) -ELSE (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - SET(HSPELL_FOUND FALSE) -ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - -IF (HSPELL_FOUND) - IF (NOT HSPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") - ENDIF (NOT HSPELL_FIND_QUIETLY) -ELSE (HSPELL_FOUND) - IF (HSPELL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find HSPELL") - ENDIF (HSPELL_FIND_REQUIRED) -ENDIF (HSPELL_FOUND) - -MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) - diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake deleted file mode 100644 index ac284c37..00000000 --- a/modules/FindJasper.cmake +++ /dev/null @@ -1,43 +0,0 @@ -# - Try to find the Jasper JPEG2000 library -# Once done this will define -# -# JASPER_FOUND - system has Jasper -# JASPER_INCLUDE_DIR - the Jasper include directory -# JASPER_LIBRARIES - The libraries needed to use Jasper - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -FIND_PACKAGE(JPEG) - -IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) - # Already in cache, be silent - SET(Jasper_FIND_QUIETLY TRUE) -ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) - -FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h) - -FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper) - -IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - SET(JASPER_FOUND TRUE) - SET(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) -ELSE (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - SET(JASPER_FOUND FALSE) -ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - - -IF (JASPER_FOUND) - IF (NOT Jasper_FIND_QUIETLY) - MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARIES}") - ENDIF (NOT Jasper_FIND_QUIETLY) -ELSE (JASPER_FOUND) - IF (Jasper_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find jasper library") - ENDIF (Jasper_FIND_REQUIRED) -ENDIF (JASPER_FOUND) - -MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES JASPER_LIBRARY) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake deleted file mode 100644 index 47136df0..00000000 --- a/modules/FindLibXml2.cmake +++ /dev/null @@ -1,56 +0,0 @@ -# - Try to find LibXml2 -# Once done this will define -# -# LIBXML2_FOUND - system has LibXml2 -# LIBXML2_INCLUDE_DIR - the LibXml2 include directory -# LIBXML2_LIBRARIES - the libraries needed to use LibXml2 -# LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - # in cache already - SET(LibXml2_FIND_QUIETLY TRUE) -ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) - SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) -ENDIF (NOT WIN32) - -FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h - PATHS - ${_LibXml2IncDir} - PATH_SUFFIXES libxml2 - ) - -FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 - PATHS - ${_LibXml2LinkDir} - ) - -IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - SET(LIBXML2_FOUND TRUE) -ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - SET(LIBXML2_FOUND FALSE) -ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - -IF (LIBXML2_FOUND) - IF (NOT LibXml2_FIND_QUIETLY) - MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") - ENDIF (NOT LibXml2_FIND_QUIETLY) -ELSE (LIBXML2_FOUND) - IF (LibXml2_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could NOT find LibXml2") - ENDIF (LibXml2_FIND_REQUIRED) -ENDIF (LIBXML2_FOUND) - -MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) - -- cgit v1.2.1 From e2af2542dfed20e7f42b53769842c40cce93d9aa Mon Sep 17 00:00:00 2001 From: Frank Osterfeld Date: Sun, 28 Jan 2007 08:59:00 +0000 Subject: fix case when install dir of current module is != kdelibs4 install dir svn path=/trunk/KDE/kdelibs/; revision=627789 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index bd98234b..7343e276 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -239,7 +239,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") else (_kdeBootStrapping) - set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) + set(_ssheet ${KDE4_DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) set(_bootstrapOption) endif (_kdeBootStrapping) -- cgit v1.2.1 From 80f388401eb4233a5ca20ab4b1b5a6df3d1cc12a Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Sun, 28 Jan 2007 20:14:35 +0000 Subject: don't look in default paths first, else it'll find KDE 3 libs for me svn path=/trunk/KDE/kdelibs/; revision=628001 --- modules/FindKDE4Internal.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6ceea2c0..b04e912a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -444,7 +444,7 @@ else (_kdeBootStrapping) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) # now the KDE library directory, kxmlcore is new with KDE4 - find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) find_library(KDE4_PHONONCORE_LIBRARY NAMES phononcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) @@ -456,25 +456,25 @@ else (_kdeBootStrapping) find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) - find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) - find_library(KDE4_SOLIDIFACES_LIBRARY NAMES solidifaces PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_SOLIDIFACES_LIBRARY NAMES solidifaces PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_SOLIDIFACES_LIBS ${solidifaces_LIB_DEPENDS} ${KDE4_SOLIDIFACES_LIBRARY} ) - find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) - find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) - find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) - find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) - find_library(KDE4_KWALLETCLIENT_LIBRARY NAMES kwalletclient PATHS ${KDE4_LIB_INSTALL_DIR} ) + find_library(KDE4_KWALLETCLIENT_LIBRARY NAMES kwalletclient PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KWALLETCLIENT_LIBS ${kwalletclient_LIB_DEPENDS} ${KDE4_KWALLETCLIENT_LIBRARY} ) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) -- cgit v1.2.1 From 923ea3d1931fb19628575b453889e026b6a706fe Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 28 Jan 2007 21:00:21 +0000 Subject: -revert commit from Laurent, we have to discuss requiring cmake 2.4.5 (or 2.4.6) first before requiting it Alex CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=628019 --- modules/CMakeLists.txt | 6 ---- modules/CheckCXXCompilerFlag.cmake | 21 ++++++++++++++ modules/FindASPELL.cmake | 40 +++++++++++++++++++++++++++ modules/FindBZip2.cmake | 43 +++++++++++++++++++++++++++++ modules/FindHSPELL.cmake | 42 ++++++++++++++++++++++++++++ modules/FindJasper.cmake | 43 +++++++++++++++++++++++++++++ modules/FindKDE4Internal.cmake | 7 ++++- modules/FindLibXml2.cmake | 56 ++++++++++++++++++++++++++++++++++++++ 8 files changed, 251 insertions(+), 7 deletions(-) create mode 100644 modules/CheckCXXCompilerFlag.cmake create mode 100644 modules/FindASPELL.cmake create mode 100644 modules/FindBZip2.cmake create mode 100644 modules/FindHSPELL.cmake create mode 100644 modules/FindJasper.cmake create mode 100644 modules/FindLibXml2.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 7a555ea0..6078e433 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -19,12 +19,6 @@ set(FILES_TO_REMOVE ${module_install_dir}/UsePkgconfig.cmake ${module_install_dir}/kde3uic.cmake ${module_install_dir}/kde3init_dummy.cpp.in - ${module_install_dir}/FindASPELL.cmake - ${module_install_dir}/FindLibXml2.cmake - ${module_install_dir}/FindHSPELL.cmake - ${module_install_dir}/FindJasper.cmake - ${module_install_dir}/CheckCXXCompilerFlag.cmake - ${module_install_dir}/FindBZip2.cmake ) # can be removed once we require merge into cmake diff --git a/modules/CheckCXXCompilerFlag.cmake b/modules/CheckCXXCompilerFlag.cmake new file mode 100644 index 00000000..43ea9a64 --- /dev/null +++ b/modules/CheckCXXCompilerFlag.cmake @@ -0,0 +1,21 @@ +# - Check whether the CXX compiler supports a given flag. +# CHECK_CXX_COMPILER_FLAG(FLAG VARIABLE) +# +# FLAG - the compiler flag +# VARIABLE - variable to store the result + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +INCLUDE(CheckCXXSourceCompiles) + +MACRO (CHECK_CXX_COMPILER_FLAG _FLAG _RESULT) + SET(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") + SET(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") + CHECK_CXX_SOURCE_COMPILES("int main() { return 0;}" ${_RESULT}) + SET (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") +ENDMACRO (CHECK_CXX_COMPILER_FLAG) + diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake new file mode 100644 index 00000000..978407d6 --- /dev/null +++ b/modules/FindASPELL.cmake @@ -0,0 +1,40 @@ +# - Try to find ASPELL +# Once done this will define +# +# ASPELL_FOUND - system has ASPELL +# ASPELL_INCLUDE_DIR - the ASPELL include directory +# ASPELL_LIBRARIES - The libraries needed to use ASPELL +# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + # Already in cache, be silent + SET(ASPELL_FIND_QUIETLY TRUE) +ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + +FIND_PATH(ASPELL_INCLUDE_DIR aspell.h ) + +FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15) + +IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + SET(ASPELL_FOUND TRUE) +ELSE (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + SET(ASPELL_FOUND FALSE) +ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) + +IF (ASPELL_FOUND) + IF (NOT ASPELL_FIND_QUIETLY) + MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") + ENDIF (NOT ASPELL_FIND_QUIETLY) +ELSE (ASPELL_FOUND) + IF (ASPELL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find ASPELL") + ENDIF (ASPELL_FIND_REQUIRED) +ENDIF (ASPELL_FOUND) + +MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake new file mode 100644 index 00000000..c8464249 --- /dev/null +++ b/modules/FindBZip2.cmake @@ -0,0 +1,43 @@ +# - Try to find BZip2 +# Once done this will define +# +# BZIP2_FOUND - system has BZip2 +# BZIP2_INCLUDE_DIR - the BZip2 include directory +# BZIP2_LIBRARIES - Link these to use BZip2 +# BZIP2_DEFINITIONS - Compiler switches required for using BZip2 +# BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + SET(BZip2_FIND_QUIETLY TRUE) +ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + +FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h ) + +FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 ) + +IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + SET(BZIP2_FOUND TRUE) + INCLUDE(CheckLibraryExists) + CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) +ELSE (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + SET(BZIP2_FOUND FALSE) +ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + +IF (BZIP2_FOUND) + IF (NOT BZip2_FIND_QUIETLY) + MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") + ENDIF (NOT BZip2_FIND_QUIETLY) +ELSE (BZIP2_FOUND) + IF (BZip2_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find BZip2") + ENDIF (BZip2_FIND_REQUIRED) +ENDIF (BZIP2_FOUND) + +MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) + diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake new file mode 100644 index 00000000..a2b93a77 --- /dev/null +++ b/modules/FindHSPELL.cmake @@ -0,0 +1,42 @@ +# - Try to find HSPELL +# Once done this will define +# +# HSPELL_FOUND - system has HSPELL +# HSPELL_INCLUDE_DIR - the HSPELL include directory +# HSPELL_LIBRARIES - The libraries needed to use HSPELL +# HSPELL_DEFINITIONS - Compiler switches required for using HSPELL + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + # Already in cache, be silent + SET(HSPELL_FIND_QUIETLY TRUE) +ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + + +FIND_PATH(HSPELL_INCLUDE_DIR hspell.h ) + +FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell ) + +IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + SET(HSPELL_FOUND TRUE) +ELSE (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + SET(HSPELL_FOUND FALSE) +ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) + +IF (HSPELL_FOUND) + IF (NOT HSPELL_FIND_QUIETLY) + MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") + ENDIF (NOT HSPELL_FIND_QUIETLY) +ELSE (HSPELL_FOUND) + IF (HSPELL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find HSPELL") + ENDIF (HSPELL_FIND_REQUIRED) +ENDIF (HSPELL_FOUND) + +MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) + diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake new file mode 100644 index 00000000..ac284c37 --- /dev/null +++ b/modules/FindJasper.cmake @@ -0,0 +1,43 @@ +# - Try to find the Jasper JPEG2000 library +# Once done this will define +# +# JASPER_FOUND - system has Jasper +# JASPER_INCLUDE_DIR - the Jasper include directory +# JASPER_LIBRARIES - The libraries needed to use Jasper + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +FIND_PACKAGE(JPEG) + +IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) + # Already in cache, be silent + SET(Jasper_FIND_QUIETLY TRUE) +ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) + +FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h) + +FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper) + +IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) + SET(JASPER_FOUND TRUE) + SET(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) +ELSE (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) + SET(JASPER_FOUND FALSE) +ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) + + +IF (JASPER_FOUND) + IF (NOT Jasper_FIND_QUIETLY) + MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARIES}") + ENDIF (NOT Jasper_FIND_QUIETLY) +ELSE (JASPER_FOUND) + IF (Jasper_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find jasper library") + ENDIF (Jasper_FIND_REQUIRED) +ENDIF (JASPER_FOUND) + +MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES JASPER_LIBRARY) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b04e912a..b9656886 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -207,7 +207,7 @@ INCLUDE (MacroEnsureVersion) -cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) +cmake_minimum_required(VERSION 2.4.3 FATAL_ERROR) set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers @@ -221,6 +221,11 @@ endif (NOT QT_DBUSXML2CPP_EXECUTABLE) # Perl is required for building KDE software, find_package(Perl REQUIRED) +# remove once we require cmake >= 2.4.4, then the REQUIRED flag is honored by FindPerl.cmake, Alex +if(NOT PERL_FOUND) + message(FATAL_ERROR "Perl was not found. Make sure it has installed on your system") +endif(NOT PERL_FOUND) + include (MacroLibrary) include (CheckCXXCompilerFlag) include (CheckCXXSourceCompiles) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake new file mode 100644 index 00000000..47136df0 --- /dev/null +++ b/modules/FindLibXml2.cmake @@ -0,0 +1,56 @@ +# - Try to find LibXml2 +# Once done this will define +# +# LIBXML2_FOUND - system has LibXml2 +# LIBXML2_INCLUDE_DIR - the LibXml2 include directory +# LIBXML2_LIBRARIES - the libraries needed to use LibXml2 +# LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + # in cache already + SET(LibXml2_FIND_QUIETLY TRUE) +ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) + SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) +ENDIF (NOT WIN32) + +FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h + PATHS + ${_LibXml2IncDir} + PATH_SUFFIXES libxml2 + ) + +FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 + PATHS + ${_LibXml2LinkDir} + ) + +IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + SET(LIBXML2_FOUND TRUE) +ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + SET(LIBXML2_FOUND FALSE) +ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) + +IF (LIBXML2_FOUND) + IF (NOT LibXml2_FIND_QUIETLY) + MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") + ENDIF (NOT LibXml2_FIND_QUIETLY) +ELSE (LIBXML2_FOUND) + IF (LibXml2_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could NOT find LibXml2") + ENDIF (LibXml2_FIND_REQUIRED) +ENDIF (LIBXML2_FOUND) + +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) + -- cgit v1.2.1 From 8e3b19e0dc9c548a434ad69870d28ff2336ed4ba Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 28 Jan 2007 21:21:54 +0000 Subject: -temporarily build all tests unconditionally, otherwise the build breaks for cmake < 2.4.5 and we can't raise the required version number of cmake without announcing it some time before or at least after doing it and that only for a bit more convenience Thiago: can you please revert your commit which removed the IF(KDE4_BUILD_TESTS) ? Thanks Alex svn path=/trunk/KDE/kdelibs/; revision=628024 --- modules/KDE4Macros.cmake | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7343e276..7bcf38fa 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -673,20 +673,22 @@ endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) macro (KDE4_ADD_TEST _target_NAME) - MATH(EXPR cmake_version "${CMAKE_MAJOR_VERSION} * 10000 + ${CMAKE_MINOR_VERSION} * 100 + ${CMAKE_PATCH_VERSION}") + message(STATUS "temporarily compiling test ${_target_NAME} unconditionally, will be fixed soon") + + math(EXPR cmake_version "${CMAKE_MAJOR_VERSION} * 10000 + ${CMAKE_MINOR_VERSION} * 100 + ${CMAKE_PATCH_VERSION}") set(_add_executable_param) - set(_go) - if (KDE4_BUILD_TESTS) - set(_go TRUE) - else (KDE4_BUILD_TESTS) +# set(_go) +# if (KDE4_BUILD_TESTS) +# set(_go TRUE) +# else (KDE4_BUILD_TESTS) if (cmake_version GREATER 20403) - set(_go TRUE) +# set(_go TRUE) set(_add_executable_param EXCLUDE_FROM_ALL) endif (cmake_version GREATER 20403) - endif (KDE4_BUILD_TESTS) +# endif (KDE4_BUILD_TESTS) - if (_go) +# if (_go) kde4_get_automoc_files(_automoc_FILES ${ARGN}) add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) @@ -701,7 +703,8 @@ macro (KDE4_ADD_TEST _target_NAME) target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) endif (WIN32) - endif (_go) +# endif (_go) + endmacro (KDE4_ADD_TEST) -- cgit v1.2.1 From 4c57a55ccd54151e2222cb452d5c3f04361615b3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 29 Jan 2007 20:49:27 +0000 Subject: -hack to get it cmake 2.4.3 compatible: use ADD_CUSTOM_TARGET() instead of ADD_EXECUTABLE() to create a target and cmake won't complain about TARGET_LINK_LIBRARIES() if KDE4_BUILD_OPTIONS is disabled Seems to work. Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: thiago@kde.org svn path=/trunk/KDE/kdelibs/; revision=628347 --- modules/KDE4Macros.cmake | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7bcf38fa..357e00b3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -671,24 +671,32 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) -macro (KDE4_ADD_TEST _target_NAME) - message(STATUS "temporarily compiling test ${_target_NAME} unconditionally, will be fixed soon") +# add an test executable +# it will be built with RPATH poiting to the build dir +# with CMake 2.4.3, the executable is built only if the option +# KDE4_BUILD_TESTS is enabled, otherwise a ADD_CUSTOM_TARGET() is created +# so that the TARGET_LINK_LIBRARIES() commands don't produce errors +# With cmake > 2.4.3 the targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. +macro (KDE4_ADD_TEST _target_NAME) math(EXPR cmake_version "${CMAKE_MAJOR_VERSION} * 10000 + ${CMAKE_MINOR_VERSION} * 100 + ${CMAKE_PATCH_VERSION}") set(_add_executable_param) -# set(_go) -# if (KDE4_BUILD_TESTS) -# set(_go TRUE) -# else (KDE4_BUILD_TESTS) + set(_go) + + if (KDE4_BUILD_TESTS) + set(_go TRUE) + else (KDE4_BUILD_TESTS) if (cmake_version GREATER 20403) -# set(_go TRUE) - set(_add_executable_param EXCLUDE_FROM_ALL) + set(_go TRUE) + set(_add_executable_param EXCLUDE_FROM_ALL) endif (cmake_version GREATER 20403) -# endif (KDE4_BUILD_TESTS) + endif (KDE4_BUILD_TESTS) -# if (_go) + if (_go) kde4_get_automoc_files(_automoc_FILES ${ARGN}) add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) @@ -703,7 +711,11 @@ macro (KDE4_ADD_TEST _target_NAME) target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) endif (WIN32) -# endif (_go) + else (_go) + + add_custom_target(${_target_NAME} COMMAND echo "This is just a dummy target, enable the option KDE4_BUILD_TEST to build the actual ${_target_NAME} test") + + endif (_go) endmacro (KDE4_ADD_TEST) -- cgit v1.2.1 From 76d561845a112d3196cf67770b23e7a9a5180cf9 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 29 Jan 2007 21:41:17 +0000 Subject: Search xmllint program (need to check doc generated file) svn path=/trunk/KDE/kdelibs/; revision=628365 --- modules/FindLibXml2.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 47136df0..a820a235 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -42,6 +42,12 @@ ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) SET(LIBXML2_FOUND FALSE) ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) +FIND_PROGRAM(XSLTPROC_EXECUTABLE xmllint) + +if( NOT XSLTPROC_EXECUTABLE ) + MESSAGE(STATUS "xmllint program not found. Install it if you want validate generated doc file.") +endif(NOT XSLTPROC_EXECUTABLE ) + IF (LIBXML2_FOUND) IF (NOT LibXml2_FIND_QUIETLY) MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") -- cgit v1.2.1 From 7cc0225bc6d352d0fd3b7b697f51f1364207e05a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 29 Jan 2007 21:53:35 +0000 Subject: Fix typo svn path=/trunk/KDE/kdelibs/; revision=628370 --- modules/FindLibXml2.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index a820a235..f74cbb58 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -42,11 +42,11 @@ ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) SET(LIBXML2_FOUND FALSE) ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) -FIND_PROGRAM(XSLTPROC_EXECUTABLE xmllint) +FIND_PROGRAM(XMLLINT_EXECUTABLE xmllint) -if( NOT XSLTPROC_EXECUTABLE ) +if( NOT XMLLINT_EXECUTABLE ) MESSAGE(STATUS "xmllint program not found. Install it if you want validate generated doc file.") -endif(NOT XSLTPROC_EXECUTABLE ) +endif(NOT XMLLINT_EXECUTABLE ) IF (LIBXML2_FOUND) IF (NOT LibXml2_FIND_QUIETLY) -- cgit v1.2.1 From 31ea982a12534702641dcb3c5514462d1a7fac8a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 30 Jan 2007 20:59:20 +0000 Subject: -only look for the headers in the given install path -the same for binaries, but afterwards also in the standard dirs, not sure whether this should be kept... -remove usage of KDEDIR -improve docs Alex svn path=/trunk/KDE/kdelibs/; revision=628657 --- modules/FindKDE4Internal.cmake | 46 +++++++++--------------------------------- 1 file changed, 9 insertions(+), 37 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b9656886..70e71e52 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -168,9 +168,10 @@ # are created. Currently it doesn't have any effect on other platforms. # # KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) -# Equivalent to ADD_EXECUTABLE(), but additionally adds support for KDE4_ENABLE_FINAL. -# If you don't need support for KDE4_ENABLE_FINAL, you can just use the -# normal ADD_EXECUTABLE(). +# Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: +# -support for KDE4_ENABLE_FINAL +# -support for automoc +# -automatic RPATH handling # If the executable has to be run from the buildtree (e.g. unit tests and code generators # used later on when compiling), set the option RUN_UNINSTALLED. # If the executable doesn't have a GUI, use the option NOGUI. By default on OS X @@ -484,45 +485,16 @@ else (_kdeBootStrapping) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) - - # at first the KDE include direcory # kpassworddialog.h is new with KDE4 - find_path(KDE4_INCLUDE_DIR kpassworddialog.h - ${KDE4_INCLUDE_INSTALL_DIR} - $ENV{KDEDIR}/include - /opt/kde/include - /opt/kde4/include - /usr/local/include - /usr/include/ - /usr/include/kde - /usr/local/include/kde - ) - - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS - ${KDE4_BIN_INSTALL_DIR} - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - NO_DEFAULT_PATH - ) + find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) + + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS - ${KDE4_BIN_INSTALL_DIR} - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - NO_DEFAULT_PATH - ) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS - ${KDE4_BIN_INSTALL_DIR} - $ENV{KDEDIR}/bin - /opt/kde/bin - /opt/kde4/bin - NO_DEFAULT_PATH - ) + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) endif (_kdeBootStrapping) -- cgit v1.2.1 From 96374202259addc6a4cf52cb867094275d9621a6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 30 Jan 2007 23:02:59 +0000 Subject: -sync with cmake cvs: better parsing of the rc files Alex svn path=/trunk/KDE/kdelibs/; revision=628695 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8f3be9c8..fe2f0144 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -850,10 +850,10 @@ IF (QT4_QMAKE_FOUND) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) # parse file for dependencies FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "[^<]*" _RC_FILES "${_RC_FILE_CONTENTS}") + STRING(REGEX MATCHALL "" _RC_FILES "${_RC_FILE_CONTENTS}") SET(_RC_DEPENDS) FOREACH(_RC_FILE ${_RC_FILES}) - STRING(REGEX REPLACE "^" "" _RC_FILE "${_RC_FILE}") + STRING(REGEX REPLACE "^" "" _RC_FILE "${_RC_FILE}") SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") ENDFOREACH(_RC_FILE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} -- cgit v1.2.1 From 10a8dd9694b3c953ba09c485dff4142daf1a5a62 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 31 Jan 2007 19:18:27 +0000 Subject: QT4_ADD_RESOURCES from cmake 2.4.6 to fix kjscmd.qrc parsing why does it work on linux? svn path=/trunk/KDE/kdelibs/; revision=628868 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index fe2f0144..8f3be9c8 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -850,10 +850,10 @@ IF (QT4_QMAKE_FOUND) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) # parse file for dependencies FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "" _RC_FILES "${_RC_FILE_CONTENTS}") + STRING(REGEX MATCHALL "[^<]*" _RC_FILES "${_RC_FILE_CONTENTS}") SET(_RC_DEPENDS) FOREACH(_RC_FILE ${_RC_FILES}) - STRING(REGEX REPLACE "^" "" _RC_FILE "${_RC_FILE}") + STRING(REGEX REPLACE "^" "" _RC_FILE "${_RC_FILE}") SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") ENDFOREACH(_RC_FILE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} -- cgit v1.2.1 From 172297adfda6e354b117c145a9050dd46e31d1f0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 31 Jan 2007 20:02:04 +0000 Subject: -fix parsing of qrc files, the file tag can have attributes http://www.cmake.org/Bug/bug.php?op=show&bugid=4331 Alex svn path=/trunk/KDE/kdelibs/; revision=628882 --- modules/FindQt4.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8f3be9c8..8ee24be1 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -850,10 +850,11 @@ IF (QT4_QMAKE_FOUND) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) # parse file for dependencies FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "[^<]*" _RC_FILES "${_RC_FILE_CONTENTS}") + STRING(REGEX MATCHALL "" "" _RC_FILE "${_RC_FILE}") + STRING(REGEX REPLACE "^]*>" "" _RC_FILE "${_RC_FILE}") SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") ENDFOREACH(_RC_FILE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} -- cgit v1.2.1 From 484044c21b3818033c7e2bd589e6c42130dfbe36 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Sun, 4 Feb 2007 12:22:04 +0000 Subject: make it possible to use KDE4_SOLID_LIBS KDE4_PHONONCORE_LIBS KDE4_KAUDIODEVICELIST_LIBS in kdelibs svn path=/trunk/KDE/kdelibs/; revision=630080 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 70e71e52..f5c621e1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -343,6 +343,9 @@ if (_kdeBootStrapping) set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) set(KDE4_SONNETCORE_LIBS ${KDE4_KDECORE_LIBS} sonnetcore) set(KDE4_SONNETUI_LIBS ${KDE4_KDEUI_LIBS} sonnetui) + set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solidifaces solid) + set(KDE4_PHONONCORE_LIBS ${KDE4_KIO_LIBS} phononcore) + set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) -- cgit v1.2.1 From 9167e36c456be36bf92cf3891eaa39d850f87924 Mon Sep 17 00:00:00 2001 From: Jonathan Riddell Date: Sun, 4 Feb 2007 21:15:59 +0000 Subject: Change filesystem icon category to places, complies with icon name spec, compatible with gnome change icon name categories to match directory names, with backwards compatibilty for KDE 3 mime -> mimetypes device -> devices app -> apps filesys -> places places -> places add categories and emblems svn path=/trunk/KDE/kdelibs/; revision=630247 The following changes were in SVN, but were removed from git: M pics/crystalsvg/index.theme --- modules/KDE4Macros.cmake | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 357e00b3..f3165df2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -278,12 +278,13 @@ MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NA IF (NOT ${_group} STREQUAL ${_install_NAME} ) SET(_icon_GROUP "actions") + # KDE 3 compatibility IF (${_group} STREQUAL "mime") SET(_icon_GROUP "mimetypes") ENDIF (${_group} STREQUAL "mime") IF (${_group} STREQUAL "filesys") - SET(_icon_GROUP "filesystems") + SET(_icon_GROUP "places") ENDIF (${_group} STREQUAL "filesys") IF (${_group} STREQUAL "device") @@ -298,6 +299,35 @@ MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NA SET(_icon_GROUP "actions") ENDIF (${_group} STREQUAL "action") + # KDE 4 + IF (${_group} STREQUAL "mimetypes") + SET(_icon_GROUP "mimetypes") + ENDIF (${_group} STREQUAL "mimetypes") + + IF (${_group} STREQUAL "places") + SET(_icon_GROUP "places") + ENDIF (${_group} STREQUAL "places") + + IF (${_group} STREQUAL "devices") + SET(_icon_GROUP "devices") + ENDIF (${_group} STREQUAL "devices") + + IF (${_group} STREQUAL "apps") + SET(_icon_GROUP "apps") + ENDIF (${_group} STREQUAL "apps") + + IF (${_group} STREQUAL "actions") + SET(_icon_GROUP "actions") + ENDIF (${_group} STREQUAL "actions") + + IF (${_group} STREQUAL "categories") + SET(_icon_GROUP "categories") + ENDIF (${_group} STREQUAL "categories") + + IF (${_group} STREQUAL "emblems") + SET(_icon_GROUP "emblems") + ENDIF (${_group} STREQUAL "emblems") + # message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) INSTALL(FILES ${_orig_NAME} DESTINATION ${_install_PATH}/${_icon_GROUP}/ RENAME ${_install_NAME} ) ENDIF (NOT ${_group} STREQUAL ${_install_NAME} ) -- cgit v1.2.1 From e22c0b65efc9163a33ed5573f261dfff57e37096 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 5 Feb 2007 20:56:23 +0000 Subject: Needed for other modules to use kdefakes without hardcoding the lib dir svn path=/trunk/KDE/kdelibs/; revision=630595 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f5c621e1..2e849674 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -405,6 +405,9 @@ else (_kdeBootStrapping) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) + find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) -- cgit v1.2.1 From 5a69776d64f7ed751286041f7ef932c03e4d29d8 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 6 Feb 2007 22:10:12 +0000 Subject: Without DNSServiceRefDeallocate the dns_sd.h found on Mac OS 10.3.9 is completely useless. svn path=/trunk/KDE/kdelibs/; revision=630971 --- modules/FindDNSSD.cmake | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index 2e62255f..3374c310 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -19,15 +19,23 @@ FIND_PATH(DNSSD_INCLUDE_DIR dns_sd.h /usr/include/avahi-compat-libdns_sd/ ) -if (APPLE) - set(DNSSD_LIBRARIES "/usr/lib/libSystem.dylib") -else (APPLE) - FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd ) -endif (APPLE) +if (DNSSD_INCLUDE_DIR) + if (APPLE) + set(DNSSD_LIBRARIES "/usr/lib/libSystem.dylib") + else (APPLE) + FIND_LIBRARY(DNSSD_LIBRARIES NAMES dns_sd ) + endif (APPLE) -if (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) - set(DNSSD_FOUND TRUE) -endif (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES) + MACRO_PUSH_REQUIRED_VARS() + set(CMAKE_REQUIRED_INCLUDES ${DNSSD_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${DNSSD_LIBRARIES}) + CHECK_FUNCTION_EXISTS(DNSServiceRefDeallocate DNSSD_FUNCTION_FOUND) + MACRO_POP_REQUIRED_VARS() + + if (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES AND DNSSD_FUNCTION_FOUND) + set(DNSSD_FOUND TRUE) + endif (DNSSD_INCLUDE_DIR AND DNSSD_LIBRARIES AND DNSSD_FUNCTION_FOUND) +endif (DNSSD_INCLUDE_DIR) if (DNSSD_FOUND) if (NOT DNSSD_FIND_QUIETLY) -- cgit v1.2.1 From 0f771f6dba4bdd29954fc91d0d94acc73aa92077 Mon Sep 17 00:00:00 2001 From: Thomas Moenicke Date: Tue, 6 Feb 2007 23:46:47 +0000 Subject: * Added RUBY_SITE_LIB_DIR, RUBY_SITE_ARCH_DIR svn path=/trunk/KDE/kdelibs/; revision=631022 --- modules/FindRUBY.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 95da129f..06843a72 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -38,11 +38,19 @@ EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG[' EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['ruby_version']" OUTPUT_VARIABLE RUBY_VERSION) +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['sitelibdir']" + OUTPUT_VARIABLE RUBY_SITE_LIB_DIR) + +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['sitearchdir']" + OUTPUT_VARIABLE RUBY_SITE_ARCH_DIR) + # remove the new lines from the output by replacing them with empty strings STRING(REPLACE "\n" "" RUBY_ARCH_DIR "${RUBY_ARCH_DIR}") STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}") STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}") STRING(REPLACE "\n" "" RUBY_VERSION "${RUBY_VERSION}") +STRING(REPLACE "\n" "" RUBY_SITE_LIB_DIR "${RUBY_SITE_LIB_DIR}") +STRING(REPLACE "\n" "" RUBY_SITE_ARCH_DIR "${RUBY_SITE_ARCH_DIR}") FIND_PATH(RUBY_INCLUDE_PATH NAMES ruby.h -- cgit v1.2.1 From b39cce12655174dd70716e36be79f97571cf7403 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 7 Feb 2007 10:38:06 +0000 Subject: SVN_SILENT remove commented out lines (showed up in my grep) svn path=/trunk/KDE/kdelibs/; revision=631180 --- modules/FindKDE4Internal.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2e849674..fd1919bd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -295,8 +295,6 @@ _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The _set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") _set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") _set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") -# _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)") -# _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/modules" "The subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)") ################################# -- cgit v1.2.1 From 5c8261b78d577b039f3e6d6cd6eea84c94084711 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 7 Feb 2007 15:10:48 +0000 Subject: we don't want -ansi in C flags, we want c89 plus BSD 4.4 extensions. Fixes snprintf not being available (which is a very very stupid thing to do) svn path=/trunk/KDE/kdelibs/; revision=631262 --- modules/FindKDE4Internal.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fd1919bd..1f38a57e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -681,8 +681,9 @@ if (CMAKE_COMPILER_IS_GNUCXX) set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") if (CMAKE_SYSTEM_NAME MATCHES Linux) - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") + add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux) -- cgit v1.2.1 From 5458ccfe1d3d37b36866d4bb86c5e2bbc0e334c1 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 13 Feb 2007 22:14:32 +0000 Subject: don't include -finlines-visibility-hidden unless gcc is >= 4.2. just too many bugs in older versions svn path=/trunk/KDE/kdelibs/; revision=633369 --- modules/FindKDE4Internal.cmake | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1f38a57e..572c5108 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -715,6 +715,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (NOT _gcc_version) macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) + macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) if (GCC_IS_NEWER_THAN_4_1) @@ -726,21 +727,9 @@ if (CMAKE_COMPILER_IS_GNUCXX) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") set (KDE4_C_FLAGS "-fvisibility=hidden") - macro_push_required_vars() - set (CMAKE_REQUIRED_FLAGS "${CMAKE_CXX_FLAGS} -shared -fPIC -O0 -fvisibility-inlines-hidden") - check_cxx_source_compiles("/* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */ - #include - int some_function( void ) __attribute__ ((visibility(\"default\"))); - int some_function( void ) - { - std::string s(\"blafasel\"); - return 0; - }" GCC_VISIBILITY_INLINES_HIDDEN_AVAILABLE) - macro_pop_required_vars() - - if (GCC_VISIBILITY_INLINES_HIDDEN_AVAILABLE) + if (GCC_IS_NEWER_THAN_4_2) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") - endif (GCC_VISIBILITY_INLINES_HIDDEN_AVAILABLE) + endif (GCC_IS_NEWER_THAN_4_2) else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (__KDE_HAVE_GCC_VISIBILITY 0) endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) -- cgit v1.2.1 From 826fb3961a1b4a356a365af7167734d4bb346264 Mon Sep 17 00:00:00 2001 From: Philip Falkner Date: Tue, 13 Feb 2007 23:21:47 +0000 Subject: Find XShm svn path=/trunk/KDE/kdelibs/; revision=633385 --- modules/FindX11.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 1fd45e17..f171b1b0 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -57,6 +57,7 @@ if (UNIX) FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) @@ -151,6 +152,11 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) endif (X11_Xdamage_INCLUDE_PATH) + if (X11_XShm_INCLUDE_PATH) + set(X11_XShm_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XShm_INCLUDE_PATH}) + endif (X11_XShm_INCLUDE_PATH) + if (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) set(X11_XTest_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH}) @@ -347,6 +353,7 @@ if (UNIX) X11_Xshape_INCLUDE_PATH X11_Xv_LIB X11_Xv_INCLUDE_PATH + X11_XShm_INCLUDE_PATH ) endif (UNIX) -- cgit v1.2.1 From c61ff987f324e2a5c13768dc29713405d3c5f620 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 15 Feb 2007 17:48:51 +0000 Subject: add OPENSSL_EAY_LIBRARIES because this lib is sometimes needed on win32 svn path=/trunk/KDE/kdelibs/; revision=633896 --- modules/FindOpenSSL.cmake | 46 ++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 40 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 0172df83..a1f71cdc 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -4,12 +4,37 @@ # OPENSSL_FOUND - system has the OpenSSL library # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL - +# OPENSSL_EAY_LIBRARIES - The additional libraries needed to use OpenSSL on windows # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# on win32 we additional need to link to libeay32.lib +MACRO(OPENSSL_ADD_LIB_EAY_LIBS) + # /MD and /MDd are the standard values - if somone wants to use + # others, the libnames have to change here too + # use also eay and libeay32 in debug as fallback for openssl < 0.9.8b + + FIND_LIBRARY(LIB_EAY_DEBUG NAMES libeay32MDd eay libeay libeay32) + FIND_LIBRARY(LIB_EAY_RELEASE NAMES libeay32MD eay libeay libeay32) + + IF(MSVC_IDE) + IF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) + SET(OPENSSL_EAY_LIBRARIES optimized ${LIB_EAY_RELEASE} debug ${LIB_EAY_DEBUG}) + ELSE(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) + MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl (libeay)") + ENDIF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) + ELSE(MSVC_IDE) + STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_DEBUG}) + ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_RELEASE}) + ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + ENDIF(MSVC_IDE) + MARK_AS_ADVANCED(LIB_EAY_DEBUG LIB_EAY_RELEASE) +ENDMACRO(OPENSSL_ADD_LIB_EAY_LIBS) IF(OPENSSL_LIBRARIES) SET(OpenSSL_FIND_QUIETLY TRUE) @@ -50,11 +75,20 @@ ELSE(WIN32 AND MSVC) ENDIF(WIN32 AND MSVC) -IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - SET(OPENSSL_FOUND TRUE) -ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - SET(OPENSSL_FOUND FALSE) -ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +IF(WIN32) + OPENSSL_ADD_LIB_EAY_LIBS() + IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) + SET(OPENSSL_FOUND TRUE) + ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) + SET(OPENSSL_FOUND FALSE) + ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) +ELSE(WIN32) + IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + SET(OPENSSL_FOUND TRUE) + ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + SET(OPENSSL_FOUND FALSE) + ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +ENDIF(WIN32) IF (OPENSSL_FOUND) IF (NOT OpenSSL_FIND_QUIETLY) -- cgit v1.2.1 From 8a371646d81554e20a1d85ae10e28ddd8160dde4 Mon Sep 17 00:00:00 2001 From: Stephan Binner Date: Tue, 20 Feb 2007 16:23:53 +0000 Subject: use "kde4" as prefix for application .desktop files svn path=/trunk/KDE/kdelibs/; revision=635677 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 572c5108..78a4d507 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -288,7 +288,7 @@ _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The _set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") _set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") -_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde" "The XDG apps dir") +_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") _set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") -- cgit v1.2.1 From 71d71840f0342ee36fe0904959fb8947c85353fd Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 25 Feb 2007 10:11:17 +0000 Subject: find libeay32 on win32 with mingw too svn path=/trunk/KDE/kdelibs/; revision=637067 --- modules/FindOpenSSL.cmake | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index a1f71cdc..4c2a3f7d 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -12,28 +12,32 @@ # on win32 we additional need to link to libeay32.lib MACRO(OPENSSL_ADD_LIB_EAY_LIBS) - # /MD and /MDd are the standard values - if somone wants to use - # others, the libnames have to change here too - # use also eay and libeay32 in debug as fallback for openssl < 0.9.8b + IF(MSVC) + # /MD and /MDd are the standard values - if somone wants to use + # others, the libnames have to change here too + # use also eay and libeay32 in debug as fallback for openssl < 0.9.8b - FIND_LIBRARY(LIB_EAY_DEBUG NAMES libeay32MDd eay libeay libeay32) - FIND_LIBRARY(LIB_EAY_RELEASE NAMES libeay32MD eay libeay libeay32) + FIND_LIBRARY(LIB_EAY_DEBUG NAMES libeay32MDd eay libeay libeay32) + FIND_LIBRARY(LIB_EAY_RELEASE NAMES libeay32MD eay libeay libeay32) - IF(MSVC_IDE) - IF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) - SET(OPENSSL_EAY_LIBRARIES optimized ${LIB_EAY_RELEASE} debug ${LIB_EAY_DEBUG}) - ELSE(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) - MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl (libeay)") - ENDIF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) - ELSE(MSVC_IDE) - STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_DEBUG}) - ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_RELEASE}) - ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - ENDIF(MSVC_IDE) - MARK_AS_ADVANCED(LIB_EAY_DEBUG LIB_EAY_RELEASE) + IF(MSVC_IDE) + IF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) + SET(OPENSSL_EAY_LIBRARIES optimized ${LIB_EAY_RELEASE} debug ${LIB_EAY_DEBUG}) + ELSE(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) + MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl (libeay)") + ENDIF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) + ELSE(MSVC_IDE) + STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_DEBUG}) + ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_RELEASE}) + ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + ENDIF(MSVC_IDE) + MARK_AS_ADVANCED(LIB_EAY_DEBUG LIB_EAY_RELEASE) + ELSE(MSVC) + FIND_LIBRARY(OPENSSL_EAY_LIBRARIES NAMES eay libeay libeay32 ) + ENDIF(MSVC) ENDMACRO(OPENSSL_ADD_LIB_EAY_LIBS) IF(OPENSSL_LIBRARIES) -- cgit v1.2.1 From ab91bf8de86ea536b9343b33c87842fc55726195 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Sun, 25 Feb 2007 17:19:40 +0000 Subject: fix OSX build when DYLD_LIBRARY_PATH contains a directory with libjpeg.dylib in it (conflicts with libjpeg embedded in a system framework) svn path=/trunk/KDE/kdelibs/; revision=637176 --- modules/KDE4Macros.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f3165df2..f9955a17 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -545,7 +545,14 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) set(_library_path_variable "LD_LIBRARY_PATH") endif (APPLE) - set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") + if (APPLE) + # DYLD_LIBRARY_PATH does not work like LD_LIBRARY_PATH + # OSX already has the RPATH in libraries and executables, putting runtime directories in + # DYLD_LIBRARY_PATH actually breaks things + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${KDE4_LIB_DIR}") + else (APPLE) + set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${LIB_INSTALL_DIR}:${KDE4_LIB_DIR}:${QT_LIBRARY_DIR}") + endif (APPLE) get_target_property(_executable ${_target_NAME} LOCATION ) # use add_custom_target() to have the sh-wrapper generated during build time instead of cmake time -- cgit v1.2.1 From 79a60305da192e7fd1983516d51dea24630add14 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Mon, 26 Feb 2007 14:37:26 +0000 Subject: - added more real library search on win32 svn path=/trunk/KDE/kdelibs/; revision=637460 --- modules/FindKdepimLibs.cmake | 51 +++++++++++++++++++++++++++++++++----------- 1 file changed, 39 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index a0020d8e..1ba51282 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -12,9 +12,9 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. if (WIN32) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${_progFiles}/kdepimlibs/include) - set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${_progFiles}/kdepimlibs/lib) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${_progFiles}/kdepimlibs/include) + set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${_progFiles}/kdepimlibs/lib) endif (WIN32) find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h @@ -23,15 +23,42 @@ find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h if( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND TRUE) - find_library(KDE4_EMAILFUNCTIONS_LIBS emailfunctions PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - find_library(KDE4_KABC_LIBS kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - - find_library(KDE4_KCAL_LIBS kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - find_library(KDE4_KTNEF_LIBS ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - find_library(KDE4_KRESOURCES_LIBS kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - find_library(KDE4_SYNDICATION_LIBS syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - find_library(KDE4_KLDAP_LIBS kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) - find_library(KDE4_KMIME_LIBS kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH) + if (WIN32) + find_library(KDE4_KABC_LIBRARY NAMES kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KABC_LIBS ${kabc_LIB_DEPENDS} ${KDE4_KABC_LIBRARY} ) + + find_library(KDE4_EMAILFUNCTIONS_LIBRARY NAMES emailfunctions PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_EMAILFUNCTIONS_LIBS ${emailfunctions_LIB_DEPENDS} ${KDE4_EMAILFUNCTIONS_LIBRARY} ) + + find_library(KDE4_KCAL_LIBRARY NAMES kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KCAL_LIBS ${kcal_LIB_DEPENDS} ${KDE4_KCAL_LIBRARY} ) + + find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) + + find_library(KDE4_KRESOURCES_LIBRARY NAMES kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KRESOURCES_LIBS ${kresources_LIB_DEPENDS} ${KDE4_KRESOURCES_LIBRARY} ) + + find_library(KDE4_SYNDICATION_LIBRARY NAMES syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_SYNDICATION_LIBS ${syndication_LIB_DEPENDS} ${KDE4_SYNDICATION_LIBRARY} ) + + find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) + + find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) + + else (WIN32) + set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) + set(KDE4_KABC_LIBS kabc) + set(KDE4_KCAL_LIBS kcal) + set(KDE4_KTNEF_LIBS ktnef) + set(KDE4_KRESOURCES_LIBS kresources) + set(KDE4_SYNDICATION_LIBS syndication) + set(KDE4_KLDAP_LIBS kldap) + set(KDE4_KMIME_LIBS kmime) + endif(WIN32) + # setup global used KDE include set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) else( KDEPIMLIBS_INCLUDE_DIR ) -- cgit v1.2.1 From acbefba7a800dddffd27f46ca56dac86cd158015 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 26 Feb 2007 17:53:55 +0000 Subject: add kdewin32 include & lib to CMAKE_REQUIRED_INCLUDES/LIBRARIES svn path=/trunk/KDE/kdelibs/; revision=637512 --- modules/FindKDEWIN32.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index afa8ee9b..15f32198 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -86,4 +86,7 @@ else (KDEWIN32_FOUND) endif (KDEWIN32_FIND_REQUIRED) endif (KDEWIN32_FOUND) +set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) +set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) + endif (WIN32) -- cgit v1.2.1 From 0dc49c780de91a883efd0c8798cebf0f489634ec Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Mon, 26 Feb 2007 19:38:58 +0000 Subject: There are a couple of places where we make "APPLE" assumptions when they really should be Q_WS_X11/Q_WS_MAC assumptions. These changes make it so that kdelibs (and probably the rest) build against qt4/x11 on Mac OS X safely. It should still work with qt4/mac as well. svn path=/trunk/KDE/kdelibs/; revision=637547 --- modules/FindKDE4Internal.cmake | 5 ++--- modules/KDE4Macros.cmake | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 78a4d507..e4e77bcc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -590,13 +590,12 @@ if (UNIX) endif (UNIX) -# UNIX, except OS X -if (UNIX AND NOT APPLE) +if (Q_WS_X11) # Done by FindQt4.cmake already #find_package(X11 REQUIRED) # UNIX has already set _KDE4_PLATFORM_INCLUDE_DIRS, so append set(_KDE4_PLATFORM_INCLUDE_DIRS ${_KDE4_PLATFORM_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) -endif (UNIX AND NOT APPLE) +endif (Q_WS_X11) # This will need to be modified later to support either Qt/X11 or Qt/Mac builds diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f9955a17..2f2479b5 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -766,9 +766,9 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) # determine additional parameters for add_executable() # for GUI apps, create a bundle on OSX - if (APPLE) + if (Q_WS_MAC) set(_add_executable_param MACOSX_BUNDLE) - endif (APPLE) + endif (Q_WS_MAC) # for GUI apps, this disables the additional console under Windows if (WIN32) -- cgit v1.2.1 From 02e595e86d7e8dbccf83d799a5e00ada629f1052 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 27 Feb 2007 18:08:56 +0000 Subject: Initial support for the IMHO "broken" way of compiling KDE in Qt 4.3: if QtScript is detected, we assume that QtUiTools needs to link to it. This detects QtScript correctly. But this does not work. For whatever reason, the last block simply doesn't work: SET(QT_QTUITOOLS_LIBRARY ...) and nothing is exactly the same. I don't have time to investigate why SET doesn't set. If you're building KDE with Qt 4.3, for the moment you have to set QT_QTUITOOLS_LIBRARY manually to "-lQtUiTools -lQtScript". CCMAIL:kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=637764 --- modules/FindQt4.cmake | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8ee24be1..d7a3ccdf 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -73,6 +73,7 @@ # QT_QTSQL_FOUND True if QtSql was found. # QT_QTXML_FOUND True if QtXml was found. # QT_QTSVG_FOUND True if QtSvg was found. +# QT_QTSCRIPT_FOUND True if QtScript was found. # QT_QTTEST_FOUND True if QtTest was found. # QT_QTUITOOLS_FOUND True if QtUiTools was found. # @@ -100,6 +101,7 @@ # QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" # QT_QTXML_INCLUDE_DIR Path to "include/QtXml" # QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" +# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" # # QT_LIBRARY_DIR Path to "lib" of Qt4 @@ -137,6 +139,8 @@ # # The QtSvg library: QT_QTSVG_LIBRARY # +# The QtScript library: QT_QTSCRIPT_LIBRARY +# # The QtTest library: QT_QTTEST_LIBRARY # # The qtmain library for Windows QT_QTMAIN_LIBRARY @@ -429,6 +433,14 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript + PATHS + ${QT_INCLUDE_DIR}/QtScript + ${QT_LIBRARY_DIR}/QtScript.framework/Headers + NO_DEFAULT_PATH + ) + # Set QT_QTTEST_INCLUDE_DIR FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest PATHS @@ -549,6 +561,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") + SET(QT_QTSCRIPT_LIBRARY "-framework QtScript" CACHE STRING "The QtScript library.") SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") @@ -589,6 +602,9 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTSVG_LIBRARY FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTUITOOLS_LIBRARY FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -606,6 +622,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -693,6 +710,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTSQL) _QT4_ADJUST_LIB_VARS(QTXML) _QT4_ADJUST_LIB_VARS(QTSVG) + _QT4_ADJUST_LIB_VARS(QTSCRIPT) _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) _QT4_ADJUST_LIB_VARS(QTDBUS) @@ -705,7 +723,10 @@ IF (QT4_QMAKE_FOUND) IF(WIN32) _QT4_ADJUST_LIB_VARS(QTMAIN) ENDIF(WIN32) - + + IF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) + SET(QT_QTUITOOLS_LIBRARY "-L${QT_LIBRARY_DIR} -lQtUiTools -lQtScript" CACHE STRING "The QtUiTools library.") + ENDIF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) ####################################### # -- cgit v1.2.1 From a67888368e887ab56b1647298ff7d3e4bb526a6b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 27 Feb 2007 21:00:55 +0000 Subject: some formatting Alex svn path=/trunk/KDE/kdelibs/; revision=637796 --- modules/FindQt4.cmake | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d7a3ccdf..2ce57bbe 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -571,47 +571,47 @@ IF (QT4_QMAKE_FOUND) ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMOTIF_LIBRARY IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(Q_WS_X11) # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) IF(MSVC) FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From 7575645fa253e4e4ee627138e20b9142a76b30e4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 27 Feb 2007 21:07:06 +0000 Subject: -don't use "-L" and "-l" because I don't think this works with MSVC and it might mess up the link dir ordering -don't use the cache for the modified QTUITOOLS_LIBRARY, because this will only work if it's not yet in the cache Does it work better this way ? Alex CCMAIL: thiago@kde.org svn path=/trunk/KDE/kdelibs/; revision=637801 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2ce57bbe..f4ed6e61 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -725,7 +725,7 @@ IF (QT4_QMAKE_FOUND) ENDIF(WIN32) IF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) - SET(QT_QTUITOOLS_LIBRARY "-L${QT_LIBRARY_DIR} -lQtUiTools -lQtScript" CACHE STRING "The QtUiTools library.") + SET(QT_QTUITOOLS_LIBRARY ${QT_QTUITOOLS_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ) ENDIF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) ####################################### -- cgit v1.2.1 From 3bc95c642db6c2fdb50d3d10cc3252007409d7a6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 28 Feb 2007 19:32:04 +0000 Subject: -some formatting in FindX11.cmake -only use check_library_exists() if libICE hasn_t been found -check that ICE has been found in FindQt4.cmake Alex This should help against the problem, right ? CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=638084 --- modules/FindQt4.cmake | 5 +- modules/FindX11.cmake | 196 ++++++++++++++++++++++++++++---------------------- 2 files changed, 115 insertions(+), 86 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f4ed6e61..b008c365 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1066,7 +1066,10 @@ IF (QT4_QMAKE_FOUND) IF(UNIX) # on OS X X11 may not be required IF (Q_WS_X11) - FIND_PACKAGE(X11) + FIND_PACKAGE(X11 REQUIRED) + IF(NOT X11_ICE_FOUND) + MESSAGE(FATAL_ERROR "X11 ICE library not found") + ENDIF(NOT X11_ICE_FOUND) ENDIF (Q_WS_X11) FIND_PACKAGE(Threads) SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index f171b1b0..4216031c 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -3,6 +3,19 @@ # X11_FOUND - True if X11 is available # X11_INCLUDE_DIR - include directories to use X11 # X11_LIBRARIES - link against these to use X11 +# +# and also the following more fine grained variables: +# Include paths: X11_ICE_INCLUDE_PATH X11_Xaccessrules_INCLUDE_PATH, X11_Xaccessstr_INCLUDE_PATH, +# X11_Xcomposite_INCLUDE_PATH, X11_Xcursor_INCLUDE_PATH, X11_Xdamage_INCLUDE_PATH, +# X11_Xdmcp_INCLUDE_PATH, X11_dpms_INCLUDE_PATH, X11_Xf86misc_INCLUDE_PATH, X11_xf86vmode_INCLUDE_PATH, +# X11_Xfixes_INCLUDE_PATH, X11_Xft_INCLUDE_PATH, X11_Xinerama_INCLUDE_PATH, X11_Xinput_INCLUDE_PATH, +# X11_Xkb_INCLUDE_PATH, X11_Xkblib_INCLUDE_PATH, X11_Xpm_INCLUDE_PATH, X11_XTest_INCLUDE_PATH, +# X11_XShm_INCLUDE_PATH, X11_Xrandr_INCLUDE_PATH, X11_Xrender_INCLUDE_PATH, +# X11_Xscreensaver_INCLUDE_PATH, X11_Xshape_INCLUDE_PATH, X11_Xutil_INCLUDE_PATH, X11_Xv_INCLUDE_PATH +# +# Libraries: X11_ICE_LIB, X11_Xau_LIB, X11_Xcomposite_LIB, X11_Xcursor_LIB, X11_Xdamage_LIB Xdamage, +# X11_Xdmcp_LIB, X11_Xext_LIB, X11_Xfixes_LIB, X11_Xft_LIB, X11_Xinerama_LIB, X11_Xinput_LIB, +# X11_Xpm_LIB, X11_Xrandr_LIB, X11_Xrender_LIB, X11_Xss_LIB, X11_Xt_LIB, X11_XTest_LIB, X11_Xv_LIB, X11_Xxf86misc_LIB # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. @@ -12,75 +25,78 @@ if (UNIX) set(X11_INC_SEARCH_PATH /usr/X11R6/include - /usr/local/include /usr/include/X11 /usr/openwin/include /usr/openwin/share/include /opt/graphics/OpenGL/include - /usr/include ) set(X11_LIB_SEARCH_PATH /usr/X11R6/lib - /usr/local/lib /usr/openwin/lib - /usr/lib ) - FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH}) # Look for includes; keep the list sorted by name of the cmake *_INCLUDE_PATH # variable (which doesn't need to match the include file name). # Solaris lacks XKBrules.h, so we should skip kxkbd there. - FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_xf86vmode_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_ICE_INCLUDE_PATH X11/ICE/ICE.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_xf86vmode_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) - FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) # Find additional X libraries. Keep list sorted by library name. - FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_ICE_LIB ICE ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + + set(X11_LIBRARY_DIR "") + if (X11_X11_LIB) + get_filename_component(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) + endif (X11_X11_LIB) if (X11_X11_INCLUDE_PATH) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) @@ -95,8 +111,8 @@ if (UNIX) endif (X11_Xutil_INCLUDE_PATH) if(X11_Xshape_INCLUDE_PATH) - set(X11_Xshape_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) + set(X11_Xshape_FOUND TRUE) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) endif(X11_Xshape_INCLUDE_PATH) if (X11_X11_LIB) @@ -108,16 +124,16 @@ if (UNIX) endif (X11_Xext_LIB) if(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) - set(X11_XFT_FOUND TRUE) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) - endif(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + set(X11_XFT_FOUND TRUE) + set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) + set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) + endif(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) if(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) set(X11_XV_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) endif(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) - + if (X11_Xau_LIB) set(X11_Xau_FOUND TRUE) set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) @@ -141,7 +157,6 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xpm_INCLUDE_PATH}) endif (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) - if (X11_Xcomposite_INCLUDE_PATH) set(X11_Xcomposite_FOUND TRUE) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) @@ -217,21 +232,18 @@ if (UNIX) set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) endif (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) - # Deprecated variable for backwards compatibility with CMake 1.4 - if (X11_X11_INCLUDE_PATH) - if (X11_LIBRARIES) - set(X11_FOUND 1) - endif (X11_LIBRARIES) - endif (X11_X11_INCLUDE_PATH) + if(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) + set(X11_ICE_FOUND TRUE) + endif(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) - set(X11_LIBRARY_DIR "") - if (X11_X11_LIB) - GET_FILENAME_COMPONENT(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) - endif (X11_X11_LIB) + # Deprecated variable for backwards compatibility with CMake 1.4 + if (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) + set(X11_FOUND 1) + endif (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) if (X11_FOUND) - INCLUDE(CheckFunctionExists) - INCLUDE(CheckLibraryExists) + include(CheckFunctionExists) + include(CheckLibraryExists) # Translated from an autoconf-generated configure script. # See libs.m4 in autoconf's m4 directory. @@ -241,14 +253,14 @@ if (UNIX) set(X11_X_EXTRA_LIBS "") # See if XOpenDisplay in X11 works by itself. - CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) + check_library_exists("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) if (NOT X11_LIB_X11_SOLO) # Find library needed for dnet_ntoa. - CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) + check_library_exists("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) if (X11_LIB_DNET_HAS_DNET_NTOA) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) else (X11_LIB_DNET_HAS_DNET_NTOA) - CHECK_LIBRARY_EXISTS("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) + check_library_exists("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) if (X11_LIB_DNET_STUB_HAS_DNET_NTOA) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) endif (X11_LIB_DNET_STUB_HAS_DNET_NTOA) @@ -256,13 +268,13 @@ if (UNIX) endif (NOT X11_LIB_X11_SOLO) # Find library needed for gethostbyname. - CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) + check_function_exists("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) if (NOT CMAKE_HAVE_GETHOSTBYNAME) - CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + check_library_exists("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) else (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - CHECK_LIBRARY_EXISTS("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + check_library_exists("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) if (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) endif (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) @@ -270,43 +282,52 @@ if (UNIX) endif (NOT CMAKE_HAVE_GETHOSTBYNAME) # Find library needed for connect. - CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT) + check_function_exists("connect" CMAKE_HAVE_CONNECT) if (NOT CMAKE_HAVE_CONNECT) - CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) + check_library_exists("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) if (CMAKE_LIB_SOCKET_HAS_CONNECT) set(X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) endif (CMAKE_LIB_SOCKET_HAS_CONNECT) endif (NOT CMAKE_HAVE_CONNECT) # Find library needed for remove. - CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE) + check_function_exists("remove" CMAKE_HAVE_REMOVE) if (NOT CMAKE_HAVE_REMOVE) - CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) + check_library_exists("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) if (CMAKE_LIB_POSIX_HAS_REMOVE) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) endif (CMAKE_LIB_POSIX_HAS_REMOVE) endif (NOT CMAKE_HAVE_REMOVE) # Find library needed for shmat. - CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT) + check_function_exists("shmat" CMAKE_HAVE_SHMAT) if (NOT CMAKE_HAVE_SHMAT) - CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) + check_library_exists("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) if (CMAKE_LIB_IPS_HAS_SHMAT) set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) endif (CMAKE_LIB_IPS_HAS_SHMAT) endif (NOT CMAKE_HAVE_SHMAT) endif ($ENV{ISC} MATCHES "^yes$") - CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" - CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - if (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - set(X11_X_PRE_LIBS -lSM -lICE) - endif (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + if (X11_ICE_FOUND) + check_library_exists("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" + CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + if (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + set(X11_X_PRE_LIBS -lSM ${X11_ICE_LIB}) + endif (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + endif (X11_ICE_FOUND) + # Build the final list of libraries. set(X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) + + message(STATUS "Found X11: ${X11_X11_LIB}") + else (X11_FOUND) + if (X11_FIND_REQUIRED) + message(FATAL_ERROR "Could not find X11") + endif (X11_FIND_REQUIRED) endif (X11_FOUND) - MARK_AS_ADVANCED( + mark_as_advanced( X11_X11_INCLUDE_PATH X11_X11_LIB X11_Xext_LIB @@ -326,6 +347,7 @@ if (UNIX) X11_Xrender_INCLUDE_PATH X11_Xxf86misc_LIB X11_Xxf86misc_INCLUDE_PATH + X11_xf86vmode_INCLUDE_PATH X11_Xinerama_LIB X11_Xinerama_INCLUDE_PATH X11_XTest_LIB @@ -354,6 +376,10 @@ if (UNIX) X11_Xv_LIB X11_Xv_INCLUDE_PATH X11_XShm_INCLUDE_PATH + X11_ICE_LIB + X11_ICE_INCLUDE_PATH ) endif (UNIX) + +# X11_FIND_REQUIRED_ could be checked too, but they were introduced in cmake 2.4.4 -- cgit v1.2.1 From c1d5726abd8600b19e76537f9ee835840f44f319 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 28 Feb 2007 20:35:57 +0000 Subject: fix X11 detection again. Whats the point of not searching X11 in /usr/include, when it is actually installed there for almost all newer distros? svn path=/trunk/KDE/kdelibs/; revision=638102 --- modules/FindX11.cmake | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 4216031c..8eeabfe4 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -24,16 +24,20 @@ if (UNIX) set(X11_FOUND 0) set(X11_INC_SEARCH_PATH - /usr/X11R6/include + /usr/local/include + /usr/include + /usr/X11R6/include /usr/include/X11 - /usr/openwin/include - /usr/openwin/share/include + /usr/openwin/include + /usr/openwin/share/include /opt/graphics/OpenGL/include ) set(X11_LIB_SEARCH_PATH + /usr/local/lib + /usr/lib /usr/X11R6/lib - /usr/openwin/lib + /usr/openwin/lib ) FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) -- cgit v1.2.1 From 1078a4c4637b0224818ce1f198c0e68d33e1f349 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Thu, 1 Mar 2007 03:21:51 +0000 Subject: QtScript is static, no -framework svn path=/trunk/KDE/kdelibs/; revision=638192 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b008c365..9fc24bc0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -561,12 +561,12 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTSCRIPT_LIBRARY "-framework QtScript" CACHE STRING "The QtScript library.") SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") # WTF? why don't we have frameworks? :P SET(QT_QTUITOOLS_LIBRARY "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") + SET(QT_QTSCRIPT_LIBRARY "-L${QT_LIBRARY_DIR} -lQtScript" CACHE STRING "The QtScript library.") ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From cef8870c20ee21908f0b7aa8d83523ff6bb655e3 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 2 Mar 2007 18:58:48 +0000 Subject: formatting fixups svn path=/trunk/KDE/kdelibs/; revision=638627 --- modules/MacroLogFeature.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 55f7b69f..f48a6cc2 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -66,12 +66,12 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ ENDIF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") ENDIF (${_var}) - SET(_logtext "> ${_package}") + SET(_logtext "+ ${_package}") IF (${_minvers} MATCHES ".*") SET(_logtext "${_logtext}, ${_minvers}") ENDIF (${_minvers} MATCHES ".*") - SET(_logtext "${_logtext}: ${_description}; ${_url};") + SET(_logtext "${_logtext}: ${_description} <${_url}>") IF (${_comments} MATCHES ".*") SET(_logtext "${_logtext}\n${_comments}") ENDIF (${_comments} MATCHES ".*") @@ -96,7 +96,7 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) IF (EXISTS ${_file}) FILE(READ ${_file} _enabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages were located on your system. --\n-- You will have all the following features available from this software. --\n----------------------------------------------------------------------------------\n${_enabled}") + SET(_summary "${_summary}--------------------------------------------------------------------------------\n-- The following list of packages were located on your system. --\n-- You will have all the following features available from this software. --\n--------------------------------------------------------------------------------\n${_enabled}") # SET(_summary "${_summary}Enabled Features:\n${_enabled}") ENDIF (EXISTS ${_file}) @@ -104,7 +104,7 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) IF (EXISTS ${_file}) FILE(READ ${_file} _disabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages could not be located on your system. --\n-- Please consider installing them to enable more features of this software. --\n----------------------------------------------------------------------------------\n${_disabled}") + SET(_summary "${_summary}--------------------------------------------------------------------------------\n-- The following list of packages could not be located on your system. --\n-- Consider installing them to enable more features from this software. --\n--------------------------------------------------------------------------------\n${_disabled}") # SET(_summary "${_summary}Disabled Features:\n${_disabled}") ENDIF (EXISTS ${_file}) MESSAGE(STATUS "${_summary}") -- cgit v1.2.1 From a773428a4a784021059733ca9d658384de461e8e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 2 Mar 2007 20:54:21 +0000 Subject: trying to make the output easier to parse. is this any better? svn path=/trunk/KDE/kdelibs/; revision=638668 --- modules/MacroLogFeature.cmake | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index f48a6cc2..db2723b6 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -68,14 +68,17 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ SET(_logtext "+ ${_package}") - IF (${_minvers} MATCHES ".*") - SET(_logtext "${_logtext}, ${_minvers}") - ENDIF (${_minvers} MATCHES ".*") - SET(_logtext "${_logtext}: ${_description} <${_url}>") - IF (${_comments} MATCHES ".*") - SET(_logtext "${_logtext}\n${_comments}") - ENDIF (${_comments} MATCHES ".*") - FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n\n") + IF (NOT ${_var}) + IF (${_minvers} MATCHES ".*") + SET(_logtext "${_logtext}, ${_minvers}") + ENDIF (${_minvers} MATCHES ".*") + SET(_logtext "${_logtext}: ${_description} <${_url}>") + IF (${_comments} MATCHES ".*") + SET(_logtext "${_logtext}\n${_comments}") + ENDIF (${_comments} MATCHES ".*") +# SET(_logtext "${_logtext}\n") #double-space missing features? + ENDIF (NOT ${_var}) + FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n") ENDMACRO(MACRO_LOG_FEATURE) @@ -85,28 +88,27 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _requirements) - MESSAGE(STATUS "\n----------------------------------------------------------------------------------\n-- The following list of REQUIRED packages could not be located on your system. --\n-- Please install them before continuing with this software installation. --\n----------------------------------------------------------------------------------\n${_requirements}----------------------------------------------------------------------------------") -# MESSAGE(STATUS "MISSING REQUIREMENTS\n${_requirements}\n") + MESSAGE(STATUS "\n----------------------------------------------------------------------------------\n-- The following list of REQUIRED packages could NOT be located on your system. --\n-- Please install them before continuing with this software installation. --\n----------------------------------------------------------------------------------\n${_requirements}----------------------------------------------------------------------------------") FILE(REMOVE ${_file}) MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") ENDIF (EXISTS ${_file}) SET(_summary "\n") + SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _enabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}--------------------------------------------------------------------------------\n-- The following list of packages were located on your system. --\n-- You will have all the following features available from this software. --\n--------------------------------------------------------------------------------\n${_enabled}") -# SET(_summary "${_summary}Enabled Features:\n${_enabled}") + SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages were located on your system. --\n-- You will have all the following features available from this software. --\n----------------------------------------------------------------------------------\n${_enabled}") ENDIF (EXISTS ${_file}) SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _disabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}--------------------------------------------------------------------------------\n-- The following list of packages could not be located on your system. --\n-- Consider installing them to enable more features from this software. --\n--------------------------------------------------------------------------------\n${_disabled}") -# SET(_summary "${_summary}Disabled Features:\n${_disabled}") + SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages could NOT be located on your system. --\n-- Consider installing them to enable more features from this software. --\n----------------------------------------------------------------------------------\n${_disabled}") ENDIF (EXISTS ${_file}) + MESSAGE(STATUS "${_summary}") ENDMACRO(MACRO_DISPLAY_FEATURE_LOG) -- cgit v1.2.1 From d280b0c0df8002b933f8018955d11f2cad0bdaa9 Mon Sep 17 00:00:00 2001 From: Jos van den Oever Date: Mon, 5 Mar 2007 08:54:16 +0000 Subject: Somehow FindStrigi.cmake did not get committed before, here it is. svn path=/trunk/KDE/kdelibs/; revision=639518 --- modules/FindStrigi.cmake | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 modules/FindStrigi.cmake (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake new file mode 100644 index 00000000..8ac85dbf --- /dev/null +++ b/modules/FindStrigi.cmake @@ -0,0 +1,37 @@ +# - Try to find Strigi +# Once done this will define +# +# STRIGI_FOUND - system has Strigi +# STRIGI_INCLUDE_DIR - the Strigi include directory +# STREAMINDEXER_LIBRARY - Link these to use Strigi streamindexer +# + +FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamindexer.h + PATHS + /usr/include + /usr/local/include + $ENV{STRIGI_HOME}/include + ${CMAKE_INSTALL_PREFIX}/include +) +FIND_LIBRARY(STREAMINDEXER_LIBRARY NAMES streamindexer + PATHS + /usr/lib + /usr/local/lib + $ENV{STRIGI_HOME}/lib + ${CMAKE_INSTALL_PREFIX}/lib +) + +IF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY) + SET(STRIGI_FOUND TRUE) +ENDIF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY) + +IF(STRIGI_FOUND) + IF(NOT Strigi_FIND_QUIETLY) + MESSAGE(STATUS "Found Strigi: ${STREAMINDEXER_LIBRARY}") + ENDIF(NOT Strigi_FIND_QUIETLY) +ELSE(STRIGI_FOUND) + IF(Strigi_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Strigi") + ENDIF(Strigi_FIND_REQUIRED) +ENDIF(STRIGI_FOUND) + -- cgit v1.2.1 From 9d0817f4751618c08ac6c252eec38a92fa9da2f5 Mon Sep 17 00:00:00 2001 From: Caleb Tennis Date: Mon, 5 Mar 2007 13:21:55 +0000 Subject: This patch fixes finding Qt4 when installed as a framework on OS X. The original code simply implied that if Qt4 was installed as a framework, all of the components would be there. However, this patch actually verifies the components are installed and sets the appropriate _FOUND variables if they are found or not. Patch was originally submitted to kde-buildsystem. However, I'm guessing most current users aren't on OS X and using the framework install, so the impact is probably minimal at the moment. svn path=/trunk/KDE/kdelibs/; revision=639611 --- modules/FindQt4.cmake | 85 +++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 73 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 9fc24bc0..8b97377e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -553,20 +553,81 @@ IF (QT4_QMAKE_FOUND) IF (QT_USE_FRAMEWORKS) # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have # to jump through these hoops. - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") - SET(QT_QTGUI_LIBRARY "-framework QtGui" CACHE STRING "The QtGui library.") - SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" CACHE STRING "The QtNetwork library.") - SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") - SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") - SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") - SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") + IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND TRUE) + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND TRUE) + SET(QT_QTGUI_LIBRARY "-framework QtGui" CACHE STRING "The QtGui library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND TRUE) + SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND TRUE) + SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" CACHE STRING "The QtNetwork library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND TRUE) + SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND TRUE) + SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND TRUE) + SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND TRUE) + SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND TRUE) + SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND TRUE) + SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) # WTF? why don't we have frameworks? :P - SET(QT_QTUITOOLS_LIBRARY "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") - SET(QT_QTSCRIPT_LIBRARY "-L${QT_LIBRARY_DIR} -lQtScript" CACHE STRING "The QtScript library.") + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1 From c5fa7b0701efef0d65df385a5894ffcf67021782 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 11 Mar 2007 16:34:14 +0000 Subject: add a variable for the new kdepimlibs/kimap library. svn path=/trunk/KDE/kdelibs/; revision=641519 --- modules/FindKdepimLibs.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 1ba51282..11002d44 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -48,6 +48,9 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) + find_library(KDE4_KIMAP_LIBRARY NAMES kimap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KIMAP_LIBS ${kimap_LIB_DEPENDS} ${KDE4_KIMAP_LIBRARY} ) + else (WIN32) set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) set(KDE4_KABC_LIBS kabc) @@ -57,6 +60,7 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set(KDE4_SYNDICATION_LIBS syndication) set(KDE4_KLDAP_LIBS kldap) set(KDE4_KMIME_LIBS kmime) + set(KDE4_KIMAP_LIBS kimap) endif(WIN32) # setup global used KDE include -- cgit v1.2.1 From 14892e1ebfa08cb5947606af1ae3d8e3f157357a Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 12 Mar 2007 20:52:20 +0000 Subject: strigi now compiles fine on win32. Will provide a binary package in the next few days CCMAIL kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=641914 --- modules/FindStrigi.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 8ac85dbf..a8f649e3 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -6,12 +6,17 @@ # STREAMINDEXER_LIBRARY - Link these to use Strigi streamindexer # +if (WIN32) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) +endif(WIN32) + FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamindexer.h PATHS /usr/include /usr/local/include $ENV{STRIGI_HOME}/include ${CMAKE_INSTALL_PREFIX}/include + ${_program_FILES_DIR}/strigi/include ) FIND_LIBRARY(STREAMINDEXER_LIBRARY NAMES streamindexer PATHS @@ -19,6 +24,7 @@ FIND_LIBRARY(STREAMINDEXER_LIBRARY NAMES streamindexer /usr/local/lib $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib + ${_program_FILES_DIR}/strigi/lib ) IF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY) -- cgit v1.2.1 From a195aafb618cb2fbab7ed3f2563d9ee6182de4e1 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Tue, 13 Mar 2007 19:03:27 +0000 Subject: add -F for finding qt in a non-default location svn path=/trunk/KDE/kdelibs/; revision=642253 --- modules/FindQt4.cmake | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8b97377e..f43282ff 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -562,63 +562,63 @@ IF (QT4_QMAKE_FOUND) IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) SET(QT_QTGUI_FOUND TRUE) - SET(QT_QTGUI_LIBRARY "-framework QtGui" CACHE STRING "The QtGui library.") + SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) SET(QT_QTGUI_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) SET(QT_QT3SUPPORT_FOUND TRUE) - SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") + SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) SET(QT_QT3SUPPORT_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) SET(QT_QTNETWORK_FOUND TRUE) - SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" CACHE STRING "The QtNetwork library.") + SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) SET(QT_QTNETWORK_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) SET(QT_QTOPENGL_FOUND TRUE) - SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) SET(QT_QTOPENGL_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) SET(QT_QTSQL_FOUND TRUE) - SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") + SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) SET(QT_QTSQL_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) SET(QT_QTXML_FOUND TRUE) - SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") + SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) SET(QT_QTXML_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) SET(QT_QTSVG_FOUND TRUE) - SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") + SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) SET(QT_QTSVG_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) SET(QT_QTDBUS_FOUND TRUE) - SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") + SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) SET(QT_QTDBUS_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) SET(QT_QTTEST_FOUND TRUE) - SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") + SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) SET(QT_QTTEST_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) -- cgit v1.2.1 From b6b882c4eff0f697fd6405ec2127e2cce0086d06 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 13 Mar 2007 19:33:58 +0000 Subject: Why should ICE be required when using FindQt4? breaks when using this file elsewhere, like in strigi. svn path=/trunk/KDE/kdelibs/; revision=642263 --- modules/FindQt4.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f43282ff..433fdc89 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1128,9 +1128,6 @@ IF (QT4_QMAKE_FOUND) # on OS X X11 may not be required IF (Q_WS_X11) FIND_PACKAGE(X11 REQUIRED) - IF(NOT X11_ICE_FOUND) - MESSAGE(FATAL_ERROR "X11 ICE library not found") - ENDIF(NOT X11_ICE_FOUND) ENDIF (Q_WS_X11) FIND_PACKAGE(Threads) SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) -- cgit v1.2.1 From 828dd42ef64874855b0c9fd7a81c1a672797db73 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 14 Mar 2007 06:03:35 +0000 Subject: need both strigi libs on win32 FIXME: don't search for libs when they're already in the cache svn path=/trunk/KDE/kdelibs/; revision=642355 --- modules/FindStrigi.cmake | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a8f649e3..a421c9cf 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -4,6 +4,8 @@ # STRIGI_FOUND - system has Strigi # STRIGI_INCLUDE_DIR - the Strigi include directory # STREAMINDEXER_LIBRARY - Link these to use Strigi streamindexer +# STREAMS_LIBRARY - Link these to use Strigi streams +# STRIGI_LIBRARIES - Link these to use both Strigi libraries # if (WIN32) @@ -26,14 +28,24 @@ FIND_LIBRARY(STREAMINDEXER_LIBRARY NAMES streamindexer ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ) +FIND_LIBRARY(STREAMS_LIBRARY NAMES streams + PATHS + /usr/lib + /usr/local/lib + $ENV{STRIGI_HOME}/lib + ${CMAKE_INSTALL_PREFIX}/lib + ${_program_FILES_DIR}/strigi/lib +) -IF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY) +IF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY AND STREAMS_LIBRARY) SET(STRIGI_FOUND TRUE) -ENDIF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY) +ENDIF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY AND STREAMS_LIBRARY) IF(STRIGI_FOUND) + SET(STRIGI_LIBRARIES ${STREAMINDEXER_LIBRARY} ${STREAMS_LIBRARY}) IF(NOT Strigi_FIND_QUIETLY) MESSAGE(STATUS "Found Strigi: ${STREAMINDEXER_LIBRARY}") + MESSAGE(STATUS "Found Strigi: ${STREAMS_LIBRARY}") ENDIF(NOT Strigi_FIND_QUIETLY) ELSE(STRIGI_FOUND) IF(Strigi_FIND_REQUIRED) -- cgit v1.2.1 From 9dab3e435d01787241dd2629e46be9f0eedbfb4b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 14 Mar 2007 15:03:45 +0000 Subject: Copy this module here. It's duplicate between koffice/kdeedu. I will remove koffice/kdeedu copy next monday svn path=/trunk/KDE/kdelibs/; revision=642495 --- modules/FindEigen.cmake | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 modules/FindEigen.cmake (limited to 'modules') diff --git a/modules/FindEigen.cmake b/modules/FindEigen.cmake new file mode 100644 index 00000000..f7922cc2 --- /dev/null +++ b/modules/FindEigen.cmake @@ -0,0 +1,42 @@ +# - Try to find eigen lib +# Once done this will define +# +# EIGEN_FOUND - system has eigen lib +# EIGEN_INCLUDE_DIR - the eigen include directory +# +# Copyright (c) 2006, Montel Laurent, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (EIGEN_INCLUDE_DIR) + + # in cache already + set(EIGEN_FOUND TRUE) + +else (EIGEN_INCLUDE_DIR) + +find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h + PATHS + ${INCLUDE_INSTALL_DIR} + /usr/include + /usr/local/include + ) + +if(EIGEN_INCLUDE_DIR) + set(EIGEN_FOUND TRUE) +endif(EIGEN_INCLUDE_DIR) + +if(EIGEN_FOUND) + if(NOT Eigen_FIND_QUIETLY) + message(STATUS "Found Eigen: ${EIGEN_INCLUDE_DIR}") + endif(NOT Eigen_FIND_QUIETLY) +else(EIGEN_FOUND) + if(Eigen_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Eigen") + endif(Eigen_FIND_REQUIRED) +endif(EIGEN_FOUND) + +mark_as_advanced(EIGEN_INCLUDE_DIR) + +endif(EIGEN_INCLUDE_DIR) + -- cgit v1.2.1 From 363b00645449dfa42b9a1b7a2a68029150123948 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 14 Mar 2007 17:06:43 +0000 Subject: Fix display message svn path=/trunk/KDE/kdelibs/; revision=642545 --- modules/FindFontconfig.cmake | 8 ++++---- modules/FindFreetype.cmake | 8 ++++---- modules/FindSasl2.cmake | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 14ae7a98..791d05ea 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -44,13 +44,13 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) if (FONTCONFIG_FOUND) - if (NOT FONTCONFIG_FIND_QUIETLY) + if (NOT Fontconfig_FIND_QUIETLY) message(STATUS "Found FONTCONFIG: ${FONTCONFIG_LIBRARIES}") - endif (NOT FONTCONFIG_FIND_QUIETLY) + endif (NOT Fontconfig_FIND_QUIETLY) else (FONTCONFIG_FOUND) - if (FONTCONFIG_FIND_REQUIRED) + if (Fontconfig_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find FONTCONFIG") - endif (FONTCONFIG_FIND_REQUIRED) + endif (Fontconfig_FIND_REQUIRED) endif (FONTCONFIG_FOUND) mark_as_advanced(FONTCONFIG_LIBRARIES) diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 571021a0..0aee8be1 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -47,13 +47,13 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) IF (FREETYPE_FOUND) - IF (NOT FREETYPE_FIND_QUIETLY) + IF (NOT Freetype_FIND_QUIETLY) MESSAGE(STATUS "Found Freetype: ${FREETYPE_LIBRARIES}") - ENDIF (NOT FREETYPE_FIND_QUIETLY) + ENDIF (NOT Freetype_FIND_QUIETLY) ELSE (FREETYPE_FOUND) - IF (FREETYPE_FIND_REQUIRED) + IF (Freetype_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find FreeType library") - ENDIF (FREETYPE_FIND_REQUIRED) + ENDIF (Freetype_FIND_REQUIRED) ENDIF (FREETYPE_FOUND) endif (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index 88a32bc0..1f8603d7 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -34,9 +34,9 @@ endif (SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) if (SASL2_FOUND) - if (NOT SASL2_FIND_QUIETLY) + if (NOT Sasl2_FIND_QUIETLY) message(STATUS "Found sasl2: ${SASL2_LIBRARIES}") - endif (NOT SASL2_FIND_QUIETLY) + endif (NOT Sasl2_FIND_QUIETLY) endif (SASL2_FOUND) MARK_AS_ADVANCED(SASL2_INCLUDE_DIR SASL2_LIBRARIES) -- cgit v1.2.1 From 8694b07f56414243f1f6fc4548d557ecb59b7059 Mon Sep 17 00:00:00 2001 From: Thomas Zander Date: Thu, 15 Mar 2007 00:51:44 +0000 Subject: Follow refactory in strigi. (2+3/3) * Renamed library * (mostly) Renamed namespace from 'jstreams' to 'Strigi' svn path=/trunk/KDE/kdelibs/; revision=642663 --- modules/FindStrigi.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a421c9cf..28f0851c 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -3,7 +3,7 @@ # # STRIGI_FOUND - system has Strigi # STRIGI_INCLUDE_DIR - the Strigi include directory -# STREAMINDEXER_LIBRARY - Link these to use Strigi streamindexer +# STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer # STREAMS_LIBRARY - Link these to use Strigi streams # STRIGI_LIBRARIES - Link these to use both Strigi libraries # @@ -12,7 +12,7 @@ if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) endif(WIN32) -FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamindexer.h +FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS /usr/include /usr/local/include @@ -20,7 +20,7 @@ FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamindexer.h ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include ) -FIND_LIBRARY(STREAMINDEXER_LIBRARY NAMES streamindexer +FIND_LIBRARY(STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS /usr/lib /usr/local/lib @@ -37,14 +37,14 @@ FIND_LIBRARY(STREAMS_LIBRARY NAMES streams ${_program_FILES_DIR}/strigi/lib ) -IF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY AND STREAMS_LIBRARY) +IF(STRIGI_INCLUDE_DIR AND STREAMANALYZER_LIBRARY AND STREAMS_LIBRARY) SET(STRIGI_FOUND TRUE) -ENDIF(STRIGI_INCLUDE_DIR AND STREAMINDEXER_LIBRARY AND STREAMS_LIBRARY) +ENDIF(STRIGI_INCLUDE_DIR AND STREAMANALYZER_LIBRARY AND STREAMS_LIBRARY) IF(STRIGI_FOUND) - SET(STRIGI_LIBRARIES ${STREAMINDEXER_LIBRARY} ${STREAMS_LIBRARY}) + SET(STRIGI_LIBRARIES ${STREAMANALYZER_LIBRARY} ${STREAMS_LIBRARY}) IF(NOT Strigi_FIND_QUIETLY) - MESSAGE(STATUS "Found Strigi: ${STREAMINDEXER_LIBRARY}") + MESSAGE(STATUS "Found Strigi: ${STREAMANALYZER_LIBRARY}") MESSAGE(STATUS "Found Strigi: ${STREAMS_LIBRARY}") ENDIF(NOT Strigi_FIND_QUIETLY) ELSE(STRIGI_FOUND) -- cgit v1.2.1 From e1a140ccdc09a0dd00aa644090023589bcea8349 Mon Sep 17 00:00:00 2001 From: Dominik Haumann Date: Thu, 15 Mar 2007 16:06:30 +0000 Subject: cmake variables should all be prefixed, so use STRIGI_ for all variables in FindStrigi.cmake CCMAIL: Jos van den Oever Alex@dhs box svn path=/trunk/KDE/kdelibs/; revision=642853 --- modules/FindStrigi.cmake | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 28f0851c..a944b5bd 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -3,10 +3,11 @@ # # STRIGI_FOUND - system has Strigi # STRIGI_INCLUDE_DIR - the Strigi include directory -# STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer -# STREAMS_LIBRARY - Link these to use Strigi streams +# STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer +# STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams # STRIGI_LIBRARIES - Link these to use both Strigi libraries -# + + if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) @@ -14,38 +15,36 @@ endif(WIN32) FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS - /usr/include - /usr/local/include $ENV{STRIGI_HOME}/include ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include ) -FIND_LIBRARY(STREAMANALYZER_LIBRARY NAMES streamanalyzer +FIND_LIBRARY(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS - /usr/lib - /usr/local/lib $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ) -FIND_LIBRARY(STREAMS_LIBRARY NAMES streams +FIND_LIBRARY(STRIGI_STREAMS_LIBRARY NAMES streams PATHS - /usr/lib - /usr/local/lib $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ) -IF(STRIGI_INCLUDE_DIR AND STREAMANALYZER_LIBRARY AND STREAMS_LIBRARY) +# for compatibility, remove ASAP (next BC monday), Alex +SET(STREAMANALYZER_LIBRARY ${STRIGI_STREAMANALYZER_LIBRARY} ) +SET(STREAMS_LIBRARY ${STRIGI_STREAMS_LIBRARY}) + +IF(STRIGI_INCLUDE_DIR AND STRIGI_STREAMANALYZER_LIBRARY AND STRIGI_STREAMS_LIBRARY) SET(STRIGI_FOUND TRUE) -ENDIF(STRIGI_INCLUDE_DIR AND STREAMANALYZER_LIBRARY AND STREAMS_LIBRARY) +ENDIF(STRIGI_INCLUDE_DIR AND STRIGI_STREAMANALYZER_LIBRARY AND STRIGI_STREAMS_LIBRARY) IF(STRIGI_FOUND) - SET(STRIGI_LIBRARIES ${STREAMANALYZER_LIBRARY} ${STREAMS_LIBRARY}) + SET(STRIGI_LIBRARIES ${STRIGI_STREAMANALYZER_LIBRARY} ${STRIGI_STREAMS_LIBRARY}) IF(NOT Strigi_FIND_QUIETLY) - MESSAGE(STATUS "Found Strigi: ${STREAMANALYZER_LIBRARY}") - MESSAGE(STATUS "Found Strigi: ${STREAMS_LIBRARY}") + MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMANALYZER_LIBRARY}") + MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMS_LIBRARY}") ENDIF(NOT Strigi_FIND_QUIETLY) ELSE(STRIGI_FOUND) IF(Strigi_FIND_REQUIRED) -- cgit v1.2.1 From d95db361e5e3c617f3afb3815c5106c06eddb539 Mon Sep 17 00:00:00 2001 From: Jos van den Oever Date: Thu, 15 Mar 2007 18:20:29 +0000 Subject: Better cmake message which tells the use to use a recent SVN version. Keep this message until the api stabilizes (halfway april). svn path=/trunk/KDE/kdelibs/; revision=642883 --- modules/FindStrigi.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a944b5bd..a1148c9a 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -45,6 +45,8 @@ IF(STRIGI_FOUND) IF(NOT Strigi_FIND_QUIETLY) MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMANALYZER_LIBRARY}") MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMS_LIBRARY}") + MESSAGE(STATUS "Make sure Strigi is a recent SVN version!") + MESSAGE(STATUS "** svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi") ENDIF(NOT Strigi_FIND_QUIETLY) ELSE(STRIGI_FOUND) IF(Strigi_FIND_REQUIRED) -- cgit v1.2.1 From 6a15214db07ebf00ef41aff74bdce220aa387dea Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 16 Mar 2007 13:45:56 +0000 Subject: Move it into kdelibs (need by kdebase and amarok) I will remove it from these two module next monday svn path=/trunk/KDE/kdelibs/; revision=643161 --- modules/FindGObject.cmake | 73 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 modules/FindGObject.cmake (limited to 'modules') diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake new file mode 100644 index 00000000..6501fcbc --- /dev/null +++ b/modules/FindGObject.cmake @@ -0,0 +1,73 @@ +# - Try to find GObject +# Once done this will define +# +# GOBJECT_FOUND - system has GObject +# GOBJECT_INCLUDE_DIR - the GObject include directory +# GOBJECT_LIBRARIES - the libraries needed to use GObject +# GOBJECT_DEFINITIONS - Compiler switches required for using GObject +# +# (c)2006, Tim Beaulen + + +IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) + # in cache already + SET(GObject_FIND_QUIETLY TRUE) +ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) + SET(GObject_FIND_QUIETLY FALSE) +ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(gobject-2.0 _GObjectIncDir _GObjectLinkDir _GObjectLinkFlags _GObjectCflags) + #MESSAGE(STATUS "DEBUG: GObject include directory = ${_GObjectIncDir}") + #MESSAGE(STATUS "DEBUG: GObject link directory = ${_GObjectLinkDir}") + #MESSAGE(STATUS "DEBUG: GObject link flags = ${_GObjectLinkFlags}") + #MESSAGE(STATUS "DEBUG: GObject CFlags = ${_GObjectCflags}") + SET(GOBJECT_DEFINITIONS ${_GObjectCflags}) +ENDIF (NOT WIN32) + +FIND_PATH(GOBJECT_INCLUDE_DIR gobject.h + PATHS + ${_GObjectIncDir} + ${_GObjectIncDir}/glib-2.0/gobject/ + /usr/include/glib-2.0/gobject/ + #PATH_SUFFIXES gst + ) + +FIND_LIBRARY(_GObjectLibs NAMES gobject-2.0 + PATHS + ${_GObjectLinkDir} + ) +FIND_LIBRARY(_GModuleLibs NAMES gmodule-2.0 + PATHS + ${_GObjectLinkDir} + ) +FIND_LIBRARY(_GThreadLibs NAMES gthread-2.0 + PATHS + ${_GObjectLinkDir} + ) +FIND_LIBRARY(_GLibs NAMES glib-2.0 + PATHS + ${_GObjectLinkDir} + ) + +SET( GOBJECT_LIBRARIES ${_GObjectLibs} ${_GModuleLibs} ${_GThreadLibs} ${_GLibs} ) + +IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) + SET(GOBJECT_FOUND TRUE) +ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) + SET(GOBJECT_FOUND FALSE) +ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) + +IF (GOBJECT_FOUND) + IF (NOT GObject_FIND_QUIETLY) + MESSAGE(STATUS "Found GObject libraries: ${GOBJECT_LIBRARIES}") + MESSAGE(STATUS "Found GObject includes : ${GOBJECT_INCLUDE_DIR}") + ENDIF (NOT GObject_FIND_QUIETLY) +ELSE (GOBJECT_FOUND) + MESSAGE(STATUS "Could NOT find GObject") +ENDIF (GOBJECT_FOUND) + +MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES) -- cgit v1.2.1 From 0dd53f4284145542c06aec0e4a2ff2b7b45c17b7 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 17 Mar 2007 21:54:24 +0000 Subject: Add a cmake macro to search msgfmt program (need to generate po file) svn path=/trunk/KDE/kdelibs/; revision=643591 --- modules/FindMsgfmt.cmake | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 modules/FindMsgfmt.cmake (limited to 'modules') diff --git a/modules/FindMsgfmt.cmake b/modules/FindMsgfmt.cmake new file mode 100644 index 00000000..309b8b92 --- /dev/null +++ b/modules/FindMsgfmt.cmake @@ -0,0 +1,26 @@ +# - Try to find msgfmt +# Once done this will define +# +# MSGFMT_FOUND - system has msgfmt +# +# Copyright (c) 2007, Montel Laurent +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(MSGFMT_EXECUTABLE) + set(MSGFMT_FOUND TRUE) +else(MSGFMT_EXECUTABLE) + + FIND_PROGRAM(MSGFMT_EXECUTABLE NAMES msgfmt PATHS /usr/local/bin ) + if (MSGFMT_EXECUTABLE) + set(MSGFMT_FOUND TRUE) + else (MSGFMT_EXECUTABLE) + if (Msgfmt_FIND_REQUIRED) + message(SEND_ERROR "Could NOT find msgfmt program") + endif (Msgfmt_FIND_REQUIRED) + endif (MSGFMT_EXECUTABLE) + MARK_AS_ADVANCED(MSGFMT_EXECUTABLE) + +endif (MSGFMT_EXECUTABLE) + -- cgit v1.2.1 From c1aea98334263263bc7464f10c672a504787e690 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 18 Mar 2007 08:43:07 +0000 Subject: Add KDE4_CREATE_PO_FILES and KDE4_INSTALL_PO_FILES macro svn path=/trunk/KDE/kdelibs/; revision=643694 --- modules/KDE4Macros.cmake | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2f2479b5..62cb3770 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -16,6 +16,8 @@ # KDE4_CREATE_HANDBOOK # KDE4_CREATE_HTML_HANDBOOK # KDE4_INSTALL_HANDBOOK +# KDE4_CREATE_PO_FILES +# KDE4_INSTALL_PO_FILES # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, @@ -213,6 +215,28 @@ macro(KDE4_GET_AUTOMOC_FILES _list) endforeach (_current_FILE) endmacro(KDE4_GET_AUTOMOC_FILES) +macro(KDE4_CREATE_PO_FILES) + set(_list_gmo) + file(GLOB _po_files *.po) + foreach(_current_PO_FILES ${_po_files}) + get_filename_component(_basename ${_current_PO_FILES} NAME_WE) + set(_gmo_file ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo) + add_custom_command(OUTPUT ${_gmo_file} + COMMAND ${MSGFMT_EXECUTABLE} -o ${_gmo_file} ${_current_PO_FILES} + DEPENDS ${_current_PO_FILES} + ) + SET(_list_gmo ${_list_gmo} ${_gmo_file}) + endforeach(_current_PO_FILES) + add_custom_target(filepo ALL DEPENDS ${_list_gmo}) +endmacro(KDE4_CREATE_PO_FILES) + +macro(KDE4_INSTALL_PO_FILES _lang) + file(GLOB _po_files ${CMAKE_CURRENT_BINARY_DIR}/*.gmo) + foreach(_current_PO_FILES ${_po_files}) + get_filename_component(_basename ${_current_PO_FILES} NAME_WE) + install(FILES ${_current_PO_FILES} DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${_basename}.mo) + endforeach(_current_PO_FILES) +endmacro(KDE4_INSTALL_PO_FILES) macro (KDE4_INSTALL_HANDBOOK) get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) -- cgit v1.2.1 From 9d360e3f7c8d25a3e55584381521f775d703e982 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 19 Mar 2007 08:30:20 +0000 Subject: Move duplicate module here (duplicate between kdemultimedia/amarok) svn path=/trunk/KDE/kdelibs/; revision=644071 --- modules/FindGStreamer.cmake | 82 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 modules/FindGStreamer.cmake (limited to 'modules') diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake new file mode 100644 index 00000000..2d752dd9 --- /dev/null +++ b/modules/FindGStreamer.cmake @@ -0,0 +1,82 @@ +# - Try to find GStreamer +# Once done this will define +# +# GSTREAMER_FOUND - system has GStreamer +# GSTREAMER_INCLUDE_DIR - the GStreamer include directory +# GSTREAMER_LIBRARIES - the libraries needed to use GStreamer +# GSTREAMER_DEFINITIONS - Compiler switches required for using GStreamer +# +# (c)2006, Tim Beaulen + +# TODO: Other versions --> GSTREAMER_X_Y_FOUND (Example: GSTREAMER_0_8_FOUND and GSTREAMER_0_10_FOUND etc) + +IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) + # in cache already + SET(GStreamer_FIND_QUIETLY TRUE) +ELSE (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) + SET(GStreamer_FIND_QUIETLY FALSE) +ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(gstreamer-0.10 _GStreamerIncDir _GStreamerLinkDir _GStreamerLinkFlags _GStreamerCflags) + #MESSAGE(STATUS "DEBUG: GStreamer include directory = ${_GStreamerIncDir}") + #MESSAGE(STATUS "DEBUG: GStreamer link directory = ${_GStreamerLinkDir}") + #MESSAGE(STATUS "DEBUG: GStreamer link flags = ${_GStreamerLinkFlags}") + #MESSAGE(STATUS "DEBUG: GStreamer CFlags = ${_GStreamerCflags}") + SET(GSTREAMER_DEFINITIONS ${_GStreamerCflags}) +ENDIF (NOT WIN32) + +FIND_PATH(GSTREAMER_INCLUDE_DIR gst/gst.h + PATHS + ${_GStreamerIncDir} + #PATH_SUFFIXES gst + ) + +FIND_LIBRARY(GSTREAMER_LIBRARIES NAMES gstreamer-0.10 + PATHS + ${_GStreamerLinkDir} + ) + +FIND_LIBRARY(GSTREAMER_INTERFACE_LIBRARY NAMES gstinterfaces-0.10 + PATHS + ${_GStreamerLinkDir} + ) + +IF (GSTREAMER_INCLUDE_DIR) + #MESSAGE(STATUS "DEBUG: Found GStreamer include dir: ${GSTREAMER_INCLUDE_DIR}") +ELSE (GSTREAMER_INCLUDE_DIR) + MESSAGE(STATUS "GStreamer: WARNING: include dir not found") +ENDIF (GSTREAMER_INCLUDE_DIR) + +IF (GSTREAMER_LIBRARIES) + #MESSAGE(STATUS "DEBUG: Found GStreamer library: ${GSTREAMER_LIBRARIES}") +ELSE (GSTREAMER_LIBRARIES) + MESSAGE(STATUS "GStreamer: WARNING: library not found") +ENDIF (GSTREAMER_LIBRARIES) + +IF (GSTREAMER_INTERFACE_LIBRARY) + #MESSAGE(STATUS "DEBUG: Found GStreamer interface library: ${GSTREAMER_INTERFACE_LIBRARY}") +ELSE (GSTREAMER_INTERFACE_LIBRARY) + MESSAGE(STATUS "GStreamer: WARNING: interface library not found") +ENDIF (GSTREAMER_INTERFACE_LIBRARY) + +IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) + SET(GSTREAMER_FOUND TRUE) +ELSE (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) + SET(GSTREAMER_FOUND FALSE) +ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) + +IF (GSTREAMER_FOUND) + IF (NOT GStreamer_FIND_QUIETLY) + MESSAGE(STATUS "Found GStreamer: ${GSTREAMER_LIBRARIES}") + ENDIF (NOT GStreamer_FIND_QUIETLY) +ELSE (GSTREAMER_FOUND) + IF (GStreamer_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could NOT find GStreamer") + ENDIF (GStreamer_FIND_REQUIRED) +ENDIF (GSTREAMER_FOUND) + +MARK_AS_ADVANCED(GSTREAMER_INCLUDE_DIR GSTREAMER_LIBRARIES GSTREAMER_INTERFACE_LIBRARY) -- cgit v1.2.1 From 7187b3101f91daf34441a9903add8d71cd52d4ee Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 19 Mar 2007 13:41:24 +0000 Subject: shared-mime-info related macros by Pino Toscano (thanks!) svn path=/trunk/KDE/kdelibs/; revision=644190 --- modules/FindSharedMimeInfo.cmake | 55 ++++++++++++++++++++++++++++++++++++++++ modules/KDE4Macros.cmake | 27 ++++++++++++++++++++ modules/MacroEnsureVersion.cmake | 36 ++++++++++++++++++++++++++ 3 files changed, 118 insertions(+) create mode 100644 modules/FindSharedMimeInfo.cmake (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake new file mode 100644 index 00000000..89c2275d --- /dev/null +++ b/modules/FindSharedMimeInfo.cmake @@ -0,0 +1,55 @@ +# - Try to find the shared-mime-info package +# Once done this will define +# +# SHARED_MIME_INFO_FOUND - system has the shared-mime-info package +# UPDATE_MIME_DATABASE_EXECUTABLE - the update-mime-database executable +# +# Copyright (c) 2007, Pino Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +# the minimum version of shared-mime-database we require +set(SHARED_MIME_INFO_MINIMUM_VERSION "0.18") + +if (UPDATE_MIME_DATABASE_EXECUTABLE) + + # in cache already + set(SHARED_MIME_INFO_FOUND TRUE) + +else (UPDATE_MIME_DATABASE_EXECUTABLE) + + include (MacroEnsureVersion) + + find_program (UPDATE_MIME_DATABASE_EXECUTABLE NAMES update-mime-database) + + if (UPDATE_MIME_DATABASE_EXECUTABLE) + + exec_program (${UPDATE_MIME_DATABASE_EXECUTABLE} ARGS -v RETURN_VALUE _null OUTPUT_VARIABLE _smiVersionRaw) + + string(REGEX REPLACE "update-mime-database \\(shared-mime-info\\) ([0-9]\\.[0-9]+).*" + "\\1" smiVersion "${_smiVersionRaw}") + + set (SHARED_MIME_INFO_FOUND TRUE) + endif (UPDATE_MIME_DATABASE_EXECUTABLE) + + if (SHARED_MIME_INFO_FOUND) + if (NOT SharedMimeInfo_FIND_QUIETLY) + message(STATUS "Found shared-mime-info version: ${smiVersion}") + + macro_ensure_version2(${SHARED_MIME_INFO_MINIMUM_VERSION} ${smiVersion} _smiVersion_OK) + if (NOT _smiVersion_OK) + message(STATUS "WARNING: the found version of shared-mime-info (${smiVersion}) is below the minimum required (${SHARED_MIME_INFO_MINIMUM_VERSION})") + endif (NOT _smiVersion_OK) + + endif (NOT SharedMimeInfo_FIND_QUIETLY) + else (SHARED_MIME_INFO_FOUND) + if (SharedMimeInfo_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find shared-mime-info") + endif (SharedMimeInfo_FIND_REQUIRED) + endif (SHARED_MIME_INFO_FOUND) + + # ensure that they are cached + set(UPDATE_MIME_DATABASE_EXECUTABLE ${UPDATE_MIME_DATABASE_EXECUTABLE} CACHE INTERNAL "The update-mime-database executable") + +endif (UPDATE_MIME_DATABASE_EXECUTABLE) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 62cb3770..63beaec8 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -18,6 +18,7 @@ # KDE4_INSTALL_HANDBOOK # KDE4_CREATE_PO_FILES # KDE4_INSTALL_PO_FILES +# KDE4_INSTALL_XDG_MIMETYPES # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, @@ -924,3 +925,29 @@ macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) # contents have changed. Otherwise we would have a lot of recompiles. configure_file(${KDE4_MODULE_DIR}/kde4exportsheader.h.in ${_outputFile}) endmacro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) + + +macro (INSTALL_XDG_MIMETYPES _path ) + + foreach (_current_FILE ${ARGN}) + + install(FILES ${_current_FILE} DESTINATION ${_path}/share/mime/packages) + + install(CODE " +#message(STATUS \"DESTDIR: <\$ENV{DESTDIR}>\") +set(MYFOO \"\$ENV{DESTDIR}\") +#message(STATUS \"MYFOO: <\${MYFOO}>\") +if (NOT MYFOO) + exec_program(update-mime-database ARGS ${_path}/share/mime/) +endif (NOT MYFOO) +") + + endforeach (_current_FILE) + +endmacro (INSTALL_XDG_MIMETYPES) + +macro (KDE4_INSTALL_XDG_MIMETYPES) + + install_xdg_mimetypes(${CMAKE_INSTALL_PREFIX} ${ARGN}) + +endmacro (KDE4_INSTALL_XDG_MIMETYPES) diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index 9d936ce7..c6df537a 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -33,3 +33,39 @@ MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) endif (found_vers_num LESS req_vers_num) ENDMACRO(MACRO_ENSURE_VERSION) + + +# This macro compares version numbers of the form "x.y" +# MACRO_ENSURE_VERSION( FOO_MIN_VERSION FOO_VERSION_FOUND FOO_VERSION_OK) +# will set FOO_VERSIN_OK to true if FOO_VERSION_FOUND >= FOO_MIN_VERSION +# where both have to be in a 2-part-version format, leading and trailing +# text is ok, e.g. +# MACRO_ENSURE_VERSION( "0.5" "foo 0.6" VERSION_OK) +# which means 0.5 is required and "foo 0.6" is what was found on the system + +# Copyright (c) 2006, David Faure, +# Copyright (c) 2007, Pino Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +MACRO(MACRO_ENSURE_VERSION2 requested_version found_version var_too_old) + + # parse the parts of the version string + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+" "\\1" req_major_vers "${requested_version}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)" "\\1" req_minor_vers "${requested_version}") + + STRING(REGEX REPLACE "[^0-9]*([0-9]+)\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") + STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.([0-9]+).*" "\\1" found_minor_vers "${found_version}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers_num "${req_major_vers}*100 + ${req_minor_vers}") + MATH(EXPR found_vers_num "${found_major_vers}*100 + ${found_minor_vers}") + + if (found_vers_num LESS req_vers_num) + set( ${var_too_old} FALSE ) + else (found_vers_num LESS req_vers_num) + set( ${var_too_old} TRUE ) + endif (found_vers_num LESS req_vers_num) + +ENDMACRO(MACRO_ENSURE_VERSION2) -- cgit v1.2.1 From 2e86054bc85eb4d34076bbaac10995bd7706086b Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 19 Mar 2007 21:14:04 +0000 Subject: small cleanup svn path=/trunk/KDE/kdelibs/; revision=644386 --- modules/KDE4Macros.cmake | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 63beaec8..10a10650 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -934,12 +934,10 @@ macro (INSTALL_XDG_MIMETYPES _path ) install(FILES ${_current_FILE} DESTINATION ${_path}/share/mime/packages) install(CODE " -#message(STATUS \"DESTDIR: <\$ENV{DESTDIR}>\") -set(MYFOO \"\$ENV{DESTDIR}\") -#message(STATUS \"MYFOO: <\${MYFOO}>\") -if (NOT MYFOO) +set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") +if (NOT DESTDIR_VALUE) exec_program(update-mime-database ARGS ${_path}/share/mime/) -endif (NOT MYFOO) +endif (NOT DESTDIR_VALUE) ") endforeach (_current_FILE) -- cgit v1.2.1 From 76ffa19584d19690490bc18daa00e21d15c6a5a1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 19 Mar 2007 22:25:50 +0000 Subject: -require CMake 2.4.5 -minor cleanups Alex svn path=/trunk/KDE/kdelibs/; revision=644423 --- modules/FindKDE4Internal.cmake | 11 +++------ modules/KDE4Macros.cmake | 55 +++++++++++++++--------------------------- 2 files changed, 23 insertions(+), 43 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e4e77bcc..97cf4ebf 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -206,9 +206,9 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -INCLUDE (MacroEnsureVersion) +include (MacroEnsureVersion) -cmake_minimum_required(VERSION 2.4.3 FATAL_ERROR) +cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) set(QT_MIN_VERSION "4.2.0") #this line includes FindQt4.cmake, which searches the Qt library and headers @@ -222,11 +222,6 @@ endif (NOT QT_DBUSXML2CPP_EXECUTABLE) # Perl is required for building KDE software, find_package(Perl REQUIRED) -# remove once we require cmake >= 2.4.4, then the REQUIRED flag is honored by FindPerl.cmake, Alex -if(NOT PERL_FOUND) - message(FATAL_ERROR "Perl was not found. Make sure it has installed on your system") -endif(NOT PERL_FOUND) - include (MacroLibrary) include (CheckCXXCompilerFlag) include (CheckCXXSourceCompiles) @@ -486,7 +481,7 @@ else (_kdeBootStrapping) find_library(KDE4_KWALLETCLIENT_LIBRARY NAMES kwalletclient PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KWALLETCLIENT_LIBS ${kwalletclient_LIB_DEPENDS} ${KDE4_KWALLETCLIENT_LIBRARY} ) - + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 10a10650..86e81ce2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -267,7 +267,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) set(_ssheet ${KDE4_DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) set(_bootstrapOption) endif (_kdeBootStrapping) - + add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} --cache ${_doc} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} @@ -279,7 +279,7 @@ endmacro (KDE4_CREATE_HANDBOOK) macro (KDE4_CREATE_HTML_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) - + set(_bootstrapOption) #Boostrap if (_kdeBootStrapping) @@ -744,40 +744,25 @@ endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) # are created but not built by default. You can build them by manually building the target. macro (KDE4_ADD_TEST _target_NAME) - math(EXPR cmake_version "${CMAKE_MAJOR_VERSION} * 10000 + ${CMAKE_MINOR_VERSION} * 100 + ${CMAKE_PATCH_VERSION}") - set(_add_executable_param) - set(_go) - - if (KDE4_BUILD_TESTS) - set(_go TRUE) - else (KDE4_BUILD_TESTS) - if (cmake_version GREATER 20403) - set(_go TRUE) - set(_add_executable_param EXCLUDE_FROM_ALL) - endif (cmake_version GREATER 20403) - endif (KDE4_BUILD_TESTS) - - if (_go) - kde4_get_automoc_files(_automoc_FILES ${ARGN}) - - add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) - - set_target_properties(${_target_NAME} PROPERTIES - EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} - DEFINITIONS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" - SKIP_BUILD_RPATH FALSE - BUILD_WITH_INSTALL_RPATH FALSE) - - if (WIN32) - target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) - endif (WIN32) - - else (_go) - - add_custom_target(${_target_NAME} COMMAND echo "This is just a dummy target, enable the option KDE4_BUILD_TEST to build the actual ${_target_NAME} test") - - endif (_go) + + if (NOT KDE4_BUILD_TESTS) + set(_add_executable_param EXCLUDE_FROM_ALL) + endif (NOT KDE4_BUILD_TESTS) + + kde4_get_automoc_files(_automoc_FILES ${ARGN}) + + add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) + + set_target_properties(${_target_NAME} PROPERTIES + EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} + DEFINITIONS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" + SKIP_BUILD_RPATH FALSE + BUILD_WITH_INSTALL_RPATH FALSE) + + if (WIN32) + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) + endif (WIN32) endmacro (KDE4_ADD_TEST) -- cgit v1.2.1 From 90041a6a83ce05832de17840433e210739f128ad Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 22 Mar 2007 13:47:22 +0000 Subject: Remove cmake file which is already merge into cmake official package svn path=/trunk/KDE/kdelibs/; revision=645382 --- modules/CMakeLists.txt | 5 +++++ modules/CheckCXXCompilerFlag.cmake | 21 ------------------- modules/FindASPELL.cmake | 40 ----------------------------------- modules/FindBZip2.cmake | 43 -------------------------------------- modules/FindHSPELL.cmake | 42 ------------------------------------- modules/FindJasper.cmake | 43 -------------------------------------- 6 files changed, 5 insertions(+), 189 deletions(-) delete mode 100644 modules/CheckCXXCompilerFlag.cmake delete mode 100644 modules/FindASPELL.cmake delete mode 100644 modules/FindBZip2.cmake delete mode 100644 modules/FindHSPELL.cmake delete mode 100644 modules/FindJasper.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 6078e433..e1bcdbe5 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -19,6 +19,11 @@ set(FILES_TO_REMOVE ${module_install_dir}/UsePkgconfig.cmake ${module_install_dir}/kde3uic.cmake ${module_install_dir}/kde3init_dummy.cpp.in + ${module_install_dir}/FindASPELL.cmake + ${module_install_dir}/FindHSPELL.cmake + ${module_install_dir}/FindJasper.cmake + ${module_install_dir}/CheckCXXCompilerFlag.cmake + ${module_install_dir}/FindBZip2.cmake ) # can be removed once we require merge into cmake diff --git a/modules/CheckCXXCompilerFlag.cmake b/modules/CheckCXXCompilerFlag.cmake deleted file mode 100644 index 43ea9a64..00000000 --- a/modules/CheckCXXCompilerFlag.cmake +++ /dev/null @@ -1,21 +0,0 @@ -# - Check whether the CXX compiler supports a given flag. -# CHECK_CXX_COMPILER_FLAG(FLAG VARIABLE) -# -# FLAG - the compiler flag -# VARIABLE - variable to store the result - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -INCLUDE(CheckCXXSourceCompiles) - -MACRO (CHECK_CXX_COMPILER_FLAG _FLAG _RESULT) - SET(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") - SET(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") - CHECK_CXX_SOURCE_COMPILES("int main() { return 0;}" ${_RESULT}) - SET (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") -ENDMACRO (CHECK_CXX_COMPILER_FLAG) - diff --git a/modules/FindASPELL.cmake b/modules/FindASPELL.cmake deleted file mode 100644 index 978407d6..00000000 --- a/modules/FindASPELL.cmake +++ /dev/null @@ -1,40 +0,0 @@ -# - Try to find ASPELL -# Once done this will define -# -# ASPELL_FOUND - system has ASPELL -# ASPELL_INCLUDE_DIR - the ASPELL include directory -# ASPELL_LIBRARIES - The libraries needed to use ASPELL -# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - # Already in cache, be silent - SET(ASPELL_FIND_QUIETLY TRUE) -ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - -FIND_PATH(ASPELL_INCLUDE_DIR aspell.h ) - -FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15) - -IF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - SET(ASPELL_FOUND TRUE) -ELSE (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - SET(ASPELL_FOUND FALSE) -ENDIF (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES) - -IF (ASPELL_FOUND) - IF (NOT ASPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}") - ENDIF (NOT ASPELL_FIND_QUIETLY) -ELSE (ASPELL_FOUND) - IF (ASPELL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find ASPELL") - ENDIF (ASPELL_FIND_REQUIRED) -ENDIF (ASPELL_FOUND) - -MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake deleted file mode 100644 index c8464249..00000000 --- a/modules/FindBZip2.cmake +++ /dev/null @@ -1,43 +0,0 @@ -# - Try to find BZip2 -# Once done this will define -# -# BZIP2_FOUND - system has BZip2 -# BZIP2_INCLUDE_DIR - the BZip2 include directory -# BZIP2_LIBRARIES - Link these to use BZip2 -# BZIP2_DEFINITIONS - Compiler switches required for using BZip2 -# BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - SET(BZip2_FIND_QUIETLY TRUE) -ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - -FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h ) - -FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 ) - -IF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - SET(BZIP2_FOUND TRUE) - INCLUDE(CheckLibraryExists) - CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) -ELSE (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - SET(BZIP2_FOUND FALSE) -ENDIF (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - -IF (BZIP2_FOUND) - IF (NOT BZip2_FIND_QUIETLY) - MESSAGE(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - ENDIF (NOT BZip2_FIND_QUIETLY) -ELSE (BZIP2_FOUND) - IF (BZip2_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find BZip2") - ENDIF (BZip2_FIND_REQUIRED) -ENDIF (BZIP2_FOUND) - -MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) - diff --git a/modules/FindHSPELL.cmake b/modules/FindHSPELL.cmake deleted file mode 100644 index a2b93a77..00000000 --- a/modules/FindHSPELL.cmake +++ /dev/null @@ -1,42 +0,0 @@ -# - Try to find HSPELL -# Once done this will define -# -# HSPELL_FOUND - system has HSPELL -# HSPELL_INCLUDE_DIR - the HSPELL include directory -# HSPELL_LIBRARIES - The libraries needed to use HSPELL -# HSPELL_DEFINITIONS - Compiler switches required for using HSPELL - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - # Already in cache, be silent - SET(HSPELL_FIND_QUIETLY TRUE) -ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - - -FIND_PATH(HSPELL_INCLUDE_DIR hspell.h ) - -FIND_LIBRARY(HSPELL_LIBRARIES NAMES hspell ) - -IF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - SET(HSPELL_FOUND TRUE) -ELSE (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - SET(HSPELL_FOUND FALSE) -ENDIF (HSPELL_INCLUDE_DIR AND HSPELL_LIBRARIES) - -IF (HSPELL_FOUND) - IF (NOT HSPELL_FIND_QUIETLY) - MESSAGE(STATUS "Found HSPELL: ${HSPELL_LIBRARIES}") - ENDIF (NOT HSPELL_FIND_QUIETLY) -ELSE (HSPELL_FOUND) - IF (HSPELL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find HSPELL") - ENDIF (HSPELL_FIND_REQUIRED) -ENDIF (HSPELL_FOUND) - -MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) - diff --git a/modules/FindJasper.cmake b/modules/FindJasper.cmake deleted file mode 100644 index ac284c37..00000000 --- a/modules/FindJasper.cmake +++ /dev/null @@ -1,43 +0,0 @@ -# - Try to find the Jasper JPEG2000 library -# Once done this will define -# -# JASPER_FOUND - system has Jasper -# JASPER_INCLUDE_DIR - the Jasper include directory -# JASPER_LIBRARIES - The libraries needed to use Jasper - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -FIND_PACKAGE(JPEG) - -IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) - # Already in cache, be silent - SET(Jasper_FIND_QUIETLY TRUE) -ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARIES AND JPEG_LIBRARIES) - -FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h) - -FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper) - -IF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - SET(JASPER_FOUND TRUE) - SET(JASPER_LIBRARIES ${JASPER_LIBRARY} ${JPEG_LIBRARIES} ) -ELSE (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - SET(JASPER_FOUND FALSE) -ENDIF (JASPER_INCLUDE_DIR AND JASPER_LIBRARY AND JPEG_LIBRARIES) - - -IF (JASPER_FOUND) - IF (NOT Jasper_FIND_QUIETLY) - MESSAGE(STATUS "Found jasper: ${JASPER_LIBRARIES}") - ENDIF (NOT Jasper_FIND_QUIETLY) -ELSE (JASPER_FOUND) - IF (Jasper_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find jasper library") - ENDIF (Jasper_FIND_REQUIRED) -ENDIF (JASPER_FOUND) - -MARK_AS_ADVANCED(JASPER_INCLUDE_DIR JASPER_LIBRARIES JASPER_LIBRARY) -- cgit v1.2.1 From 4ad4e863c2efdb6458ccb8e5c1932ef390d97b12 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 23 Mar 2007 16:40:59 +0000 Subject: It's better to move it here that kdebase because if we don't install kdebase and try to compile and other module which requires plasma we will have an error but we didn't know which error (just plasma cmake file not installed I will remove it from kdebase next monday svn path=/trunk/KDE/kdelibs/; revision=645811 --- modules/FindPlasma.cmake | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 modules/FindPlasma.cmake (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake new file mode 100644 index 00000000..00e8a084 --- /dev/null +++ b/modules/FindPlasma.cmake @@ -0,0 +1,44 @@ +# cmake macro to see if we have Plasma from KDE workspace + +# PLASMA_INCLUDE_DIR +# PLASMA_FOUND +# Copyright (C) 2007 Brad Hards +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (PLASMA_INCLUDE_DIR) + # Already in cache, be silent + set(PLASMA_FOUND TRUE) +endif (PLASMA_INCLUDE_DIR) + + +FIND_PATH(PLASMA_INCLUDE_DIR NAMES plasma/kpanelapplet.h + PATHS + ${INCLUDE_INSTALL_DIR} + /usr/include + /usr/local/include +) + +FIND_LIBRARY(PLASMA_LIBRARIES NAMES plasma + PATHS + ${LIB_INSTALL_DIR} + /usr/lib + /usr/local/lib +) +if (PLASMA_LIBRARIES AND PLASMA_INCLUDE_DIR) + set(PLASMA_FOUND TRUE) +endif (PLASMA_LIBRARIES AND PLASMA_INCLUDE_DIR) + +if (PLASMA_FOUND) + if (NOT Plasma_FIND_QUIETLY) + message(STATUS "Found Plasma: ${PLASMA_LIBRARIES}") + endif (NOT Plasma_FIND_QUIETLY) +else (PLASMA_FOUND) + if (Plasma_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Plasma") + endif (Plasma_FIND_REQUIRED) +endif (PLASMA_FOUND) + +MARK_AS_ADVANCED(PLASMA_INCLUDE_DIR PLASMA_LIBRARIES) -- cgit v1.2.1 From 369180d6fc8c61fb77ad3a9f0ba40460627ec8de Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 24 Mar 2007 13:09:49 +0000 Subject: Copy this cmake file here (it needs by kdepim and kdebase) I will remove it from kdepim and adapt kdebase next monday svn path=/trunk/KDE/kdelibs/; revision=646067 --- modules/FindKMetaData.cmake | 46 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 modules/FindKMetaData.cmake (limited to 'modules') diff --git a/modules/FindKMetaData.cmake b/modules/FindKMetaData.cmake new file mode 100644 index 00000000..3355d60f --- /dev/null +++ b/modules/FindKMetaData.cmake @@ -0,0 +1,46 @@ +# Once done this will define +# +# KMETADATA_FOUND - system has KMetaData +# KMETADATA_INCLUDE_DIR - the KMetaData include directory +# KMETADATA_LIBRARIES - Link these to use KMetaData +# KMETADATA_DEFINITIONS - Compiler switches required for using KMetaData +# + +FIND_PATH(KMETADATA_INCLUDE_DIR + NAMES + kmetadata/kmetadata.h + PATHS + /usr/include + /usr/local/include + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(KMETADATA_LIBRARIES + NAMES + kmetadata + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +if(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) + set(KMetaData_FOUND TRUE) +endif(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) + +if(KMetaData_FOUND) + if(NOT KMetaData_FIND_QUIETLY) + message(STATUS "Found KMetaData: ${KMETADATA_LIBRARIES}") + endif(NOT KMetaData_FIND_QUIETLY) +else(KMetaData_FOUND) + if(KMetaData_FIND_REQUIRED) + if(NOT KMETADATA_INCLUDE_DIR) + message(FATAL_ERROR "Could not find KMetaData includes.") + endif(NOT KMETADATA_INCLUDE_DIR) + if(NOT KMETADATA_LIBRARIES) + message(FATAL_ERROR "Could not find KMetaData library.") + endif(NOT KMETADATA_LIBRARIES) + endif(KMetaData_FIND_REQUIRED) +endif(KMetaData_FOUND) -- cgit v1.2.1 From 93393a389fd4d4550caf1058bc0ee15ea6f2ddf7 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 26 Mar 2007 12:37:44 +0000 Subject: allow to use KDE4_PHONONUI_LIBS in kdelibs svn path=/trunk/KDE/kdelibs/; revision=646669 --- modules/FindKDE4Internal.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 97cf4ebf..f7264071 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -337,7 +337,8 @@ if (_kdeBootStrapping) set(KDE4_SONNETCORE_LIBS ${KDE4_KDECORE_LIBS} sonnetcore) set(KDE4_SONNETUI_LIBS ${KDE4_KDEUI_LIBS} sonnetui) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solidifaces solid) - set(KDE4_PHONONCORE_LIBS ${KDE4_KIO_LIBS} phononcore) + set(KDE4_PHONONCORE_LIBS ${KDE4_KDECORE_LIBS} phononcore) + set(KDE4_PHONONUI_LIBS ${KDE4_KIO_LIBS} ${KDE4_PHONONCORE_LIBS} phononui) set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) -- cgit v1.2.1 From 928851c4877cceca18bbfbf4e17a28daa3fee706 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 26 Mar 2007 23:43:41 +0000 Subject: add a variable for the new kpimutils library. the emailfunction variable can be removed soon. svn path=/trunk/KDE/kdelibs/; revision=646964 --- modules/FindKdepimLibs.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 11002d44..b9668942 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -29,6 +29,8 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_EMAILFUNCTIONS_LIBRARY NAMES emailfunctions PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_EMAILFUNCTIONS_LIBS ${emailfunctions_LIB_DEPENDS} ${KDE4_EMAILFUNCTIONS_LIBRARY} ) + find_library(KDE4_KPIMUTILS_LIBRARY NAMES kpimutils PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPIMUTILS_LIBS ${kpimutils_LIB_DEPENDS} ${KDE4_KPIMUTILS_LIBRARY} ) find_library(KDE4_KCAL_LIBRARY NAMES kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KCAL_LIBS ${kcal_LIB_DEPENDS} ${KDE4_KCAL_LIBRARY} ) @@ -53,6 +55,7 @@ if( KDEPIMLIBS_INCLUDE_DIR ) else (WIN32) set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) + set(KDE4_KPIMUTILS_LIBS kpimutils) set(KDE4_KABC_LIBS kabc) set(KDE4_KCAL_LIBS kcal) set(KDE4_KTNEF_LIBS ktnef) -- cgit v1.2.1 From 6a812b5a645c2016b6a8bcb84764d98cfcb5b873 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 28 Mar 2007 08:18:52 +0000 Subject: Now we requires qt4.3 Please update your qt-copy/tarball Regards svn path=/trunk/KDE/kdelibs/; revision=647419 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f7264071..b37f2d85 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -210,7 +210,7 @@ include (MacroEnsureVersion) cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) -set(QT_MIN_VERSION "4.2.0") +set(QT_MIN_VERSION "4.3.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -- cgit v1.2.1 From c7156420683ec47287fcff239e64d77080db0192 Mon Sep 17 00:00:00 2001 From: Brad Hards Date: Thu, 29 Mar 2007 11:08:48 +0000 Subject: Remove kxmlcore library tests. This library is gone. OK'd by David Faure. svn path=/trunk/KDE/kdelibs/; revision=647752 --- modules/FindKDE4Internal.cmake | 6 ------ 1 file changed, 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b37f2d85..d94efaeb 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -28,7 +28,6 @@ # KDE4_KPARTS_LIBRARY - the kparts library # KDE4_KUTILS_LIBRARY - the kutils library # KDE4_KDE3SUPPORT_LIBRARY - the kde3support library -# KDE4_KXMLCORE_LIBRARY - the kxmlcore library # KDE4_KHTML_LIBRARY - the khtml library # KDE4_KJS_LIBRARY - the kjs library # KDE4_KNEWSTUFF_LIBRARY - the knewstuff library @@ -58,7 +57,6 @@ # KDE4_KPARTS_LIBS - the kparts library and all depending libraries # KDE4_KUTILS_LIBS - the kutils library and all depending libraries # KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries -# KDE4_KXMLCORE_LIBS - the kxmlcore library and all depending libraries # KDE4_KHTML_LIBS - the khtml library and all depending libraries # KDE4_KJS_LIBS - the kjs library and all depending libraries # KDE4_KNEWSTUFF_LIBS - the knewstuff library and all depending libraries @@ -449,10 +447,6 @@ else (_kdeBootStrapping) find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) - # now the KDE library directory, kxmlcore is new with KDE4 - find_library(KDE4_KXMLCORE_LIBRARY NAMES kxmlcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KXMLCORE_LIBRARIES ${kxmlcore_LIB_DEPENDS} ${KDE4_KXMLCORE_LIBRARY} ) - find_library(KDE4_PHONONCORE_LIBRARY NAMES phononcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_PHONONCORE_LIBS ${phononcore_LIB_DEPENDS} ${KDE4_PHONONCORE_LIBRARY} ) -- cgit v1.2.1 From 2bee64a35d8b451f6e09208c15923fc07c30d113 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 29 Mar 2007 14:19:30 +0000 Subject: SVN_SILENT: minor svn path=/trunk/KDE/kdelibs/; revision=647785 --- modules/FindQCA2.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index d671422f..de855511 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -48,7 +48,7 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) message(STATUS "Could NOT find QCA2 includes in ${_Qca2IncDir}") endif (NOT QCA2_INCLUDE_DIR) if (NOT QCA2_LIBRARIES) - message(STATUS "Could not find QCA2 libraries in ${_Qca2LinkDir}") + message(STATUS "Could NOT find QCA2 libraries in ${_Qca2LinkDir}") endif (NOT QCA2_LIBRARIES) if (QCA2_FIND_REQUIRED) message(SEND_ERROR "Could NOT find QCA2") -- cgit v1.2.1 From dd65b2890447e9c4cd6994bb9f60fd5f255a2dc3 Mon Sep 17 00:00:00 2001 From: Jakob Petsovits Date: Thu, 29 Mar 2007 16:48:15 +0000 Subject: Merge changes from KDevelop's copy of FindFlex.cmake, as preparation for getting rid of it. svn path=/trunk/KDE/kdelibs/; revision=647835 --- modules/FindFlex.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index 59831ffd..4a22ed6f 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -20,9 +20,12 @@ IF(FLEX_EXECUTABLE) string (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" FLEX_VERSION "${_FLEX_VERSION}") ENDIF(FLEX_EXECUTABLE) +FIND_PATH(FLEX_INCLUDE_DIR FlexLexer.h) +FIND_LIBRARY(FLEX_LIBRARY fl) + IF(FLEX_FOUND) IF(NOT Flex_FIND_QUIETLY) - MESSAGE(STATUS "Found Flex: ${FLEX_EXECUTABLE}") + MESSAGE(STATUS "Found Flex: ${FLEX_EXECUTABLE} ${FLEX_VERSION}") ENDIF(NOT Flex_FIND_QUIETLY) ELSE(FLEX_FOUND) IF(Flex_FIND_REQUIRED) -- cgit v1.2.1 From 38bf913772ec87b29b12ce81acd0fa04555c2f03 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 30 Mar 2007 16:50:21 +0000 Subject: we need the debug libs too svn path=/trunk/KDE/kdelibs/; revision=648162 --- modules/FindQt4.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 433fdc89..537bf864 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -688,6 +688,8 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(MSVC) -- cgit v1.2.1 From 02b60270c65eaf9ddaea06ce03b04ce379f939ee Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 30 Mar 2007 21:24:30 +0000 Subject: Changed the services and servicetypes directories to "kde4/services" and "kde4/servicetypes" so that we never try to use a kde3 KPart into a kde4 application, and vice versa, and to avoid conflicts when installing both into the same prefix. This solution also leaves room for prepending a kde4/ in front of other resources if needed... maybe most of them, apart from those that affect $KDEHOME too (like config and data...) CCMAIL: kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=648276 --- modules/FindKDE4Internal.cmake | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d94efaeb..836abc8a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -271,8 +271,15 @@ _set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The _set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") _set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") _set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") -_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" "The install dir for service (desktop, protocol, ...) files") -_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" "The install dir for servicestypes desktop files") + +# To help with the migration issue, this uses set instead of _set_fancy, temporarily. +# (Otherwise all modules would keep installing into the old dirs) +# This can be reverted starting from May 2007 +set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services") +set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes") +#_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") +#_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") + _set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") _set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") _set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") -- cgit v1.2.1 From 75b89dbdffa2fca76e173268d2eff206d73ccf97 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 31 Mar 2007 15:34:50 +0000 Subject: Split sonnet between kdeui/kdecore ok'ed in january It will allow to add spellchecking into ktextedit New sonnet organization ok'ed by David. libsonnetcore/libsonnetui is removed now. svn path=/trunk/KDE/kdelibs/; revision=648519 --- modules/FindKDE4Internal.cmake | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 836abc8a..e3081840 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -32,8 +32,6 @@ # KDE4_KJS_LIBRARY - the kjs library # KDE4_KNEWSTUFF_LIBRARY - the knewstuff library # KDE4_KDEPRINT_LIBRARY - the kdeprint library -# KDE4_SONNETCORE_LIBRARY - the sonnetcore library -# KDE4_SONNETUI_LIBRARY - the sonnetui library # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONONCORE_LIBRARY - the phononcore library # KDE4_PHONONUI_LIBRARY - the phononui library @@ -61,8 +59,6 @@ # KDE4_KJS_LIBS - the kjs library and all depending libraries # KDE4_KNEWSTUFF_LIBS - the knewstuff library and all depending libraries # KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries -# KDE4_SONNETCORE_LIBS - the sonnetcore library and all depending libraries -# KDE4_SONNETUI_LIBS - the sonnetui library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries # KDE4_PHONONCORE_LIBS - the phononcore library and all depending librairies @@ -339,8 +335,6 @@ if (_kdeBootStrapping) set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) - set(KDE4_SONNETCORE_LIBS ${KDE4_KDECORE_LIBS} sonnetcore) - set(KDE4_SONNETUI_LIBS ${KDE4_KDEUI_LIBS} sonnetui) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solidifaces solid) set(KDE4_PHONONCORE_LIBS ${KDE4_KDECORE_LIBS} phononcore) set(KDE4_PHONONUI_LIBS ${KDE4_KIO_LIBS} ${KDE4_PHONONCORE_LIBS} phononui) @@ -440,12 +434,6 @@ else (_kdeBootStrapping) find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) - find_library(KDE4_SONNETCORE_LIBRARY NAMES sonnetcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_SONNETCORE_LIBS ${sonnetcore_LIB_DEPENDS} ${KDE4_SONNETCORE_LIBRARY} ) - - find_library(KDE4_SONNETUI_LIBRARY NAMES sonnetui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_SONNETUI_LIBS ${sonnetui_LIB_DEPENDS} ${KDE4_SONNETUI_LIBRARY} ) - if (UNIX) find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) -- cgit v1.2.1 From abb19d1a121734bb8ddd828daf0ec94a7e023901 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 2 Apr 2007 08:46:03 +0000 Subject: Define KDE4_KDE3SUPPORT_LIBS while building kdelibs too, and the upcoming kfile lib svn path=/trunk/KDE/kdelibs/; revision=649201 --- modules/FindKDE4Internal.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e3081840..1b8f61ab 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -28,6 +28,7 @@ # KDE4_KPARTS_LIBRARY - the kparts library # KDE4_KUTILS_LIBRARY - the kutils library # KDE4_KDE3SUPPORT_LIBRARY - the kde3support library +# KDE4_KFILE_LIBRARY - the kfile library # KDE4_KHTML_LIBRARY - the khtml library # KDE4_KJS_LIBRARY - the kjs library # KDE4_KNEWSTUFF_LIBRARY - the knewstuff library @@ -55,6 +56,7 @@ # KDE4_KPARTS_LIBS - the kparts library and all depending libraries # KDE4_KUTILS_LIBS - the kutils library and all depending libraries # KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries +# KDE4_KFILE_LIBS - the kfile library and all depending libraries # KDE4_KHTML_LIBS - the khtml library and all depending libraries # KDE4_KJS_LIBS - the kjs library and all depending libraries # KDE4_KNEWSTUFF_LIBS - the knewstuff library and all depending libraries @@ -334,11 +336,13 @@ if (_kdeBootStrapping) set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) + set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solidifaces solid) set(KDE4_PHONONCORE_LIBS ${KDE4_KDECORE_LIBS} phononcore) set(KDE4_PHONONUI_LIBS ${KDE4_KIO_LIBS} ${KDE4_PHONONCORE_LIBS} phononui) set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) + set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) @@ -422,6 +426,9 @@ else (_kdeBootStrapping) find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) + find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) + find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) -- cgit v1.2.1 From aee44af17fafa4b5fd76337e809c29b1bfc4fa23 Mon Sep 17 00:00:00 2001 From: Josef Spillner Date: Mon, 2 Apr 2007 18:49:17 +0000 Subject: - it's called KNS2 now, we want old code to fail on purpose instead of by accident svn path=/trunk/KDE/kdelibs/; revision=649500 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1b8f61ab..d5bfcb0d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -31,7 +31,7 @@ # KDE4_KFILE_LIBRARY - the kfile library # KDE4_KHTML_LIBRARY - the khtml library # KDE4_KJS_LIBRARY - the kjs library -# KDE4_KNEWSTUFF_LIBRARY - the knewstuff library +# KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library # KDE4_KDEPRINT_LIBRARY - the kdeprint library # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONONCORE_LIBRARY - the phononcore library @@ -59,7 +59,7 @@ # KDE4_KFILE_LIBS - the kfile library and all depending libraries # KDE4_KHTML_LIBS - the khtml library and all depending libraries # KDE4_KJS_LIBS - the kjs library and all depending libraries -# KDE4_KNEWSTUFF_LIBS - the knewstuff library and all depending libraries +# KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries # KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries @@ -435,8 +435,8 @@ else (_kdeBootStrapping) find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) - find_library(KDE4_KNEWSTUFF_LIBRARY NAMES knewstuff PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNEWSTUFF_LIBS ${knewstuff_LIB_DEPENDS} ${KDE4_KNEWSTUFF_LIBRARY} ) + find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) -- cgit v1.2.1 From c82d20cb1717676326507104392648c037488411 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 2 Apr 2007 19:51:39 +0000 Subject: Need to define this, to link knewstuff svn path=/trunk/KDE/kdelibs/; revision=649531 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d5bfcb0d..b9024eb2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -343,6 +343,7 @@ if (_kdeBootStrapping) set(KDE4_PHONONUI_LIBS ${KDE4_KIO_LIBS} ${KDE4_PHONONCORE_LIBS} phononui) set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) + set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) -- cgit v1.2.1 From bce49ea80b0598bf3005cf633bac9cf1524d8735 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Wed, 4 Apr 2007 10:29:55 +0000 Subject: Freetype, not fontconfig. svn path=/trunk/KDE/kdelibs/; revision=650344 --- modules/FindFreetype.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 0aee8be1..426b5e39 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -1,8 +1,8 @@ # - Try to find the freetype library # Once done this will define # -# FREETYPE_FOUND - system has Fontconfig -# FREETYPE_INCLUDE_DIR - the FONTCONFIG include directory +# FREETYPE_FOUND - system has Freetype +# FREETYPE_INCLUDE_DIR - the FREETYPE include directory # FREETYPE_LIBRARIES - Link these to use FREETYPE # # Copyright (c) 2006, Laurent Montel, -- cgit v1.2.1 From e6ab0424543faeee62b4a5cf98b2c0270391dc59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Wed, 4 Apr 2007 12:31:44 +0000 Subject: INCLUDE_DIR should not include -I svn path=/trunk/KDE/kdelibs/; revision=650381 --- modules/FindFreetype.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 426b5e39..f56ad2ad 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -37,6 +37,7 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) if(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) set(FREETYPE_FOUND TRUE) #message(STATUS "Found freetype: ${FREETYPE_LIBRARIES}") + STRING(REGEX REPLACE "-I(.+)" "\\1" FREETYPE_INCLUDE_DIR "${FREETYPE_INCLUDE_DIR}") endif(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) MARK_AS_ADVANCED(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR) -- cgit v1.2.1 From be6392ee10a131c92f05b51df40247aeed0fddab Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 4 Apr 2007 15:43:04 +0000 Subject: emailfunctions is gone. renamed to kpimutils. svn path=/trunk/KDE/kdelibs/; revision=650443 --- modules/FindKdepimLibs.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index b9668942..ac377545 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -27,8 +27,6 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KABC_LIBRARY NAMES kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KABC_LIBS ${kabc_LIB_DEPENDS} ${KDE4_KABC_LIBRARY} ) - find_library(KDE4_EMAILFUNCTIONS_LIBRARY NAMES emailfunctions PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_EMAILFUNCTIONS_LIBS ${emailfunctions_LIB_DEPENDS} ${KDE4_EMAILFUNCTIONS_LIBRARY} ) find_library(KDE4_KPIMUTILS_LIBRARY NAMES kpimutils PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KPIMUTILS_LIBS ${kpimutils_LIB_DEPENDS} ${KDE4_KPIMUTILS_LIBRARY} ) @@ -54,7 +52,6 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set(KDE4_KIMAP_LIBS ${kimap_LIB_DEPENDS} ${KDE4_KIMAP_LIBRARY} ) else (WIN32) - set(KDE4_EMAILFUNCTIONS_LIBS emailfunctions) set(KDE4_KPIMUTILS_LIBS kpimutils) set(KDE4_KABC_LIBS kabc) set(KDE4_KCAL_LIBS kcal) -- cgit v1.2.1 From f7b9ba738c9884dea645f0d13d0826f33135e551 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 4 Apr 2007 18:19:28 +0000 Subject: remove CheckCSourceRuns.cmake - we depend on a cmake version which ships it. svn path=/trunk/KDE/kdelibs/; revision=650505 --- modules/CMakeLists.txt | 1 + modules/CheckCSourceRuns.cmake | 74 ------------------------------------------ 2 files changed, 1 insertion(+), 74 deletions(-) delete mode 100644 modules/CheckCSourceRuns.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index e1bcdbe5..225d291d 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -24,6 +24,7 @@ set(FILES_TO_REMOVE ${module_install_dir}/FindJasper.cmake ${module_install_dir}/CheckCXXCompilerFlag.cmake ${module_install_dir}/FindBZip2.cmake + ${module_install_dir}/CheckCSourceRuns.cmake ) # can be removed once we require merge into cmake diff --git a/modules/CheckCSourceRuns.cmake b/modules/CheckCSourceRuns.cmake deleted file mode 100644 index ce47de9f..00000000 --- a/modules/CheckCSourceRuns.cmake +++ /dev/null @@ -1,74 +0,0 @@ -# XXX remove this when we use cmake 2.5 - -# - Check if the source code provided in the SOURCE argument compiles and runs. -# CHECK_C_SOURCE_RUNS(SOURCE VAR) -# - macro which checks if the source code runs -# SOURCE - source code to try to compile -# VAR - variable to store size if the type exists. -# -# The following variables may be set before calling this macro to -# modify the way the check is run: -# -# CMAKE_REQUIRED_FLAGS = string of compile command line flags -# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) -# CMAKE_REQUIRED_INCLUDES = list of include directories -# CMAKE_REQUIRED_LIBRARIES = list of libraries to link - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -MACRO(CHECK_C_SOURCE_RUNS SOURCE VAR) - IF("${VAR}" MATCHES "^${VAR}$") - SET(MACRO_CHECK_FUNCTION_DEFINITIONS - "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") - IF(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES - "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") - ELSE(CMAKE_REQUIRED_LIBRARIES) - SET(CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES) - ENDIF(CMAKE_REQUIRED_LIBRARIES) - IF(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_C_SOURCE_COMPILES_ADD_INCLUDES - "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") - ELSE(CMAKE_REQUIRED_INCLUDES) - SET(CHECK_C_SOURCE_COMPILES_ADD_INCLUDES) - ENDIF(CMAKE_REQUIRED_INCLUDES) - FILE(WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c" - "${SOURCE}\n") - - MESSAGE(STATUS "Performing Test ${VAR}") - TRY_RUN(${VAR} ${VAR}_COMPILED - ${CMAKE_BINARY_DIR} - ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c - COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} - CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS} - "${CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES}" - "${CHECK_C_SOURCE_COMPILES_ADD_INCLUDES}" - OUTPUT_VARIABLE OUTPUT) - # if it did not compile make the return value fail code of 1 - IF(NOT ${VAR}_COMPILED) - SET(${VAR} 1) - ENDIF(NOT ${VAR}_COMPILED) - # if the return value was 0 then it worked - SET(result_var ${${VAR}}) - IF("${result_var}" EQUAL 0) - SET(${VAR} 1 CACHE INTERNAL "Test ${VAR}") - MESSAGE(STATUS "Performing Test ${VAR} - Success") - FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log - "Performing C SOURCE FILE Test ${VAR} succeded with the following output:\n" - "${OUTPUT}\n" - "Return value: ${${VAR}}\n" - "Source file was:\n${SOURCE}\n") - ELSE("${result_var}" EQUAL 0) - MESSAGE(STATUS "Performing Test ${VAR} - Failed") - SET(${VAR} "" CACHE INTERNAL "Test ${VAR}") - FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log - "Performing C SOURCE FILE Test ${VAR} failed with the following output:\n" - "${OUTPUT}\n" - "Return value: ${result_var}\n" - "Source file was:\n${SOURCE}\n") - ENDIF("${result_var}" EQUAL 0) - ENDIF("${VAR}" MATCHES "^${VAR}$") -ENDMACRO(CHECK_C_SOURCE_RUNS) - -- cgit v1.2.1 From feb6ccac628ae9d88c4875703b6f34385a41b0c3 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 5 Apr 2007 09:47:02 +0000 Subject: Fix taglib cmake file svn path=/trunk/KDE/kdelibs/; revision=650717 --- modules/FindTaglib.cmake | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 2db6f79d..dea293cd 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -14,6 +14,7 @@ FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS /usr/bin /usr/local/bin + ${BIN_INSTALL_DIR} ) #reset vars @@ -35,3 +36,14 @@ IF(TAGLIBCONFIG_EXECUTABLE) MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) ENDIF(TAGLIBCONFIG_EXECUTABLE) + +if(TAGLIB_FOUND) + IF(NOT Taglib_FIND_QUIETLY) + MESSAGE(STATUS "Taglib found: ${TAGLIB_LIBRARIES}") + ENDIF(NOT Taglib_FIND_QUIETLY) +ELSE(TAGLIB_FOUND) + IF(Taglib_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Taglib") + ENDIF(Taglib_FIND_REQUIRED) +endif(TAGLIB_FOUND) + -- cgit v1.2.1 From afb32034d54547a6b8bb023c5ae338428f525d0c Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 5 Apr 2007 09:55:56 +0000 Subject: Fix it when akode is required svn path=/trunk/KDE/kdelibs/; revision=650718 --- modules/FindAkode.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index 64511f3f..156bf958 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -41,5 +41,15 @@ ELSE (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) set(AKODE_LIBRARIES ${AKODE_LIBRARIES} CACHE INTERNAL "The libraries needed to use libraries") ENDIF (AKODECONFIG_EXECUTABLE) + IF(AKODE_FOUND) + IF(NOT Akode_FIND_QUIETLY) + MESSAGE(STATUS "Akode found: ${AKODE_LIBRARIES}") + ENDIF(NOT Akode_FIND_QUIETLY) + ELSE(AKODE_FOUND) + IF(Akode_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Akode") + ENDIF(Akode_FIND_REQUIRED) + ENDIF(AKODE_FOUND) ENDIF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) + -- cgit v1.2.1 From c1a4be95ad51f3eb110b16fb541d2cc7a5fa2004 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 5 Apr 2007 10:05:16 +0000 Subject: Fix ruby when it's required svn path=/trunk/KDE/kdelibs/; revision=650719 --- modules/FindRUBY.cmake | 83 +++++++++++++++++++++++++++++--------------------- 1 file changed, 49 insertions(+), 34 deletions(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 06843a72..aa31d053 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -6,8 +6,9 @@ # RUBY_LIBRARY = full path+file to the ruby library # RUBY_INCLUDE_PATH = path to where ruby.h can be found # RUBY_EXECUTABLE = full path+file to the ruby binary +# RUBY_FOUND = Ruby was found under system. # -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006,2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -15,7 +16,7 @@ if(RUBY_LIBRARY AND RUBY_INCLUDE_PATH) # Already in cache, be silent - set(RUBY_FIND_QUIETLY TRUE) + SET(RUBY_FOUND TRUE) endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) # RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'` @@ -26,44 +27,58 @@ endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) FIND_PROGRAM(RUBY_EXECUTABLE NAMES ruby ruby1.8 ruby18 ruby1.9 ruby19) -EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['archdir'] || Config::CONFIG['rubyincludedir']" - OUTPUT_VARIABLE RUBY_ARCH_DIR) +IF(RUBY_EXECUTABLE) + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['archdir'] || Config::CONFIG['rubyincludedir']" + OUTPUT_VARIABLE RUBY_ARCH_DIR) -EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['libdir']" - OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH) + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['libdir']" + OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH) -EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['rubylibdir']" - OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH) + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['rubylibdir']" + OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH) -EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['ruby_version']" - OUTPUT_VARIABLE RUBY_VERSION) + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['ruby_version']" + OUTPUT_VARIABLE RUBY_VERSION) -EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['sitelibdir']" - OUTPUT_VARIABLE RUBY_SITE_LIB_DIR) + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['sitelibdir']" + OUTPUT_VARIABLE RUBY_SITE_LIB_DIR) -EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['sitearchdir']" - OUTPUT_VARIABLE RUBY_SITE_ARCH_DIR) + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['sitearchdir']" + OUTPUT_VARIABLE RUBY_SITE_ARCH_DIR) -# remove the new lines from the output by replacing them with empty strings -STRING(REPLACE "\n" "" RUBY_ARCH_DIR "${RUBY_ARCH_DIR}") -STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}") -STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}") -STRING(REPLACE "\n" "" RUBY_VERSION "${RUBY_VERSION}") -STRING(REPLACE "\n" "" RUBY_SITE_LIB_DIR "${RUBY_SITE_LIB_DIR}") -STRING(REPLACE "\n" "" RUBY_SITE_ARCH_DIR "${RUBY_SITE_ARCH_DIR}") + # remove the new lines from the output by replacing them with empty strings + STRING(REPLACE "\n" "" RUBY_ARCH_DIR "${RUBY_ARCH_DIR}") + STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}") + STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}") + STRING(REPLACE "\n" "" RUBY_VERSION "${RUBY_VERSION}") + STRING(REPLACE "\n" "" RUBY_SITE_LIB_DIR "${RUBY_SITE_LIB_DIR}") + STRING(REPLACE "\n" "" RUBY_SITE_ARCH_DIR "${RUBY_SITE_ARCH_DIR}") -FIND_PATH(RUBY_INCLUDE_PATH - NAMES ruby.h - PATHS ${RUBY_ARCH_DIR} - ) + FIND_PATH(RUBY_INCLUDE_PATH + NAMES ruby.h + PATHS ${RUBY_ARCH_DIR} + ) + + FIND_LIBRARY(RUBY_LIBRARY + NAMES ruby${RUBY_VERSION} ruby + PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH} + ) + SET(AKODE_FOUND TRUE) + MARK_AS_ADVANCED( + RUBY_EXECUTABLE + RUBY_LIBRARY + RUBY_INCLUDE_PATH + ) +ENDIF(RUBY_EXECUTABLE) + +IF(RUBY_FOUND) + IF(NOT RUBY_FIND_QUIETLY) + MESSAGE(STATUS "Ruby found: ${RUBY_LIBRARY}") + ENDIF(NOT RUBY_FIND_QUIETLY) +ELSE(RUBY_FOUND) + IF(RUBY_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Ruby") + ENDIF(RUBY_FIND_REQUIRED) +ENDIF(RUBY_FOUND) -FIND_LIBRARY(RUBY_LIBRARY - NAMES ruby${RUBY_VERSION} ruby - PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH} - ) -MARK_AS_ADVANCED( - RUBY_EXECUTABLE - RUBY_LIBRARY - RUBY_INCLUDE_PATH - ) -- cgit v1.2.1 From 6551389ab7e4908c780ebae56fff9d61fbd5b2e4 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 5 Apr 2007 10:13:50 +0000 Subject: Use cmake kde4 variable svn path=/trunk/KDE/kdelibs/; revision=650721 --- modules/FindStrigi.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a1148c9a..04d6c2c1 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -16,19 +16,19 @@ endif(WIN32) FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS $ENV{STRIGI_HOME}/include - ${CMAKE_INSTALL_PREFIX}/include + ${INCLUDE_INSTALL_DIR} ${_program_FILES_DIR}/strigi/include ) FIND_LIBRARY(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS $ENV{STRIGI_HOME}/lib - ${CMAKE_INSTALL_PREFIX}/lib + ${LIB_INSTALL_DIR} ${_program_FILES_DIR}/strigi/lib ) FIND_LIBRARY(STRIGI_STREAMS_LIBRARY NAMES streams PATHS $ENV{STRIGI_HOME}/lib - ${CMAKE_INSTALL_PREFIX}/lib + ${LIB_INSTALL_DIR} ${_program_FILES_DIR}/strigi/lib ) -- cgit v1.2.1 From 05b64921612794802f499f96e7e60a07f10deaa0 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 5 Apr 2007 11:51:18 +0000 Subject: Fix cmake file when we require it svn path=/trunk/KDE/kdelibs/; revision=650763 --- modules/FindGObject.cmake | 2 ++ modules/FindXmms.cmake | 20 ++++++++++++++++---- 2 files changed, 18 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index 6501fcbc..62bed220 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -67,7 +67,9 @@ IF (GOBJECT_FOUND) MESSAGE(STATUS "Found GObject includes : ${GOBJECT_INCLUDE_DIR}") ENDIF (NOT GObject_FIND_QUIETLY) ELSE (GOBJECT_FOUND) + IF (GObject_FIND_REQUIRED) MESSAGE(STATUS "Could NOT find GObject") + ENDIF(OpenEXR_FIND_REQUIRED) ENDIF (GOBJECT_FOUND) MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES) diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index f5719b22..8718baf6 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -16,16 +16,28 @@ if(KDE4_XMMS) #reset vars set(XMMS_LIBRARIES) set(XMMS_INCLUDE_DIR) + if(XMMSCONFIG_EXECUTABLE) EXEC_PROGRAM(${XMMSCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XMMS_LIBRARIES) EXEC_PROGRAM(${XMMSCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XMMS_INCLUDE_DIR) - set(XMMS_DEFINITIONS ${XMMS_INCLUDE_DIR}) - IF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) - SET(XMMS_FOUND TRUE) - ENDIF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) + set(XMMS_DEFINITIONS ${XMMS_INCLUDE_DIR}) + + IF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) + SET(XMMS_FOUND TRUE) + ENDIF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) MARK_AS_ADVANCED(XMMS_INCLUDE_DIR XMMS_LIBRARIES) endif(XMMSCONFIG_EXECUTABLE) + + if (XMMS_FOUND) + if (NOT Xmms_FIND_QUIETLY) + message(STATUS "Found Xmms: ${XMMS_LIBRARIES}") + endif (NOT Xmms_FIND_QUIETLY) + else (XMMS_FOUND) + if (Xmms_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Xmms") + endif (Xmms_FIND_REQUIRED) + endif (XMMS_FOUND) endif(KDE4_XMMS) -- cgit v1.2.1 From 3ee8770fef4161ab283d2ce398979c1ae2e927ee Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 5 Apr 2007 14:59:43 +0000 Subject: fix typo svn path=/trunk/KDE/kdelibs/; revision=650850 --- modules/FindGObject.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index 62bed220..64d6717e 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -69,7 +69,7 @@ IF (GOBJECT_FOUND) ELSE (GOBJECT_FOUND) IF (GObject_FIND_REQUIRED) MESSAGE(STATUS "Could NOT find GObject") - ENDIF(OpenEXR_FIND_REQUIRED) + ENDIF(GObjct_FIND_REQUIRED) ENDIF (GOBJECT_FOUND) MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES) -- cgit v1.2.1 From 28ffbf35cdb40d8fb48800fb15083192c5a5ea41 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Thu, 5 Apr 2007 21:21:03 +0000 Subject: Search in /usr/include and /usr/local/include for FlexLexer.h svn path=/trunk/KDE/kdelibs/; revision=650937 --- modules/FindFlex.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index 4a22ed6f..afc5f8a1 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -20,7 +20,10 @@ IF(FLEX_EXECUTABLE) string (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" FLEX_VERSION "${_FLEX_VERSION}") ENDIF(FLEX_EXECUTABLE) -FIND_PATH(FLEX_INCLUDE_DIR FlexLexer.h) +FIND_PATH(FLEX_INCLUDE_DIR FlexLexer.h + /usr/include + /usr/local/include + ) FIND_LIBRARY(FLEX_LIBRARY fl) IF(FLEX_FOUND) -- cgit v1.2.1 From 27ac6b46d1da6b09ead94a46804e6809cb7451e2 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Fri, 6 Apr 2007 13:32:39 +0000 Subject: fix typo svn path=/trunk/KDE/kdelibs/; revision=651077 --- modules/FindGObject.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index 64d6717e..4e2a03b7 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -69,7 +69,7 @@ IF (GOBJECT_FOUND) ELSE (GOBJECT_FOUND) IF (GObject_FIND_REQUIRED) MESSAGE(STATUS "Could NOT find GObject") - ENDIF(GObjct_FIND_REQUIRED) + ENDIF(GObject_FIND_REQUIRED) ENDIF (GOBJECT_FOUND) MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES) -- cgit v1.2.1 From 2b64507726a47578b92541fe194b6e694ae78641 Mon Sep 17 00:00:00 2001 From: Ian Monroe Date: Sun, 8 Apr 2007 01:43:29 +0000 Subject: Fix Ruby check CCMAIL:amarok@kde.org svn path=/trunk/KDE/kdelibs/; revision=651511 --- modules/FindRUBY.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index aa31d053..043446d0 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -63,7 +63,11 @@ IF(RUBY_EXECUTABLE) NAMES ruby${RUBY_VERSION} ruby PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH} ) - SET(AKODE_FOUND TRUE) + + if(RUBY_LIBRARY AND RUBY_INCLUDE_PATH) + SET(RUBY_FOUND TRUE) + endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) + MARK_AS_ADVANCED( RUBY_EXECUTABLE RUBY_LIBRARY -- cgit v1.2.1 From 8db515aefb36667de829838150de61bded53cc1e Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Mon, 9 Apr 2007 01:36:46 +0000 Subject: fix freetype building when freetype-config prints out more than one -I svn path=/trunk/KDE/kdelibs/; revision=651730 --- modules/FindFreetype.cmake | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index f56ad2ad..2ce6eab3 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -33,12 +33,18 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_LIBRARIES) - EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_INCLUDE_DIR) - if(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) + EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _freetype_pkgconfig_output) + if(FREETYPE_LIBRARIES AND _freetype_pkgconfig_output) set(FREETYPE_FOUND TRUE) - #message(STATUS "Found freetype: ${FREETYPE_LIBRARIES}") - STRING(REGEX REPLACE "-I(.+)" "\\1" FREETYPE_INCLUDE_DIR "${FREETYPE_INCLUDE_DIR}") - endif(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) + + # freetype-config can print out more than one -I, so we need to chop it up + # into a list and process each entry separately + SEPARATE_ARGUMENTS(_freetype_pkgconfig_output) + FOREACH(value ${_freetype_pkgconfig_output}) + STRING(REGEX REPLACE "-I(.+)" "\\1" value "${value}") + set(FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR} ${value}) + ENDFOREACH(value) + endif(FREETYPE_LIBRARIES AND _freetype_pkgconfig_output) MARK_AS_ADVANCED(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR) -- cgit v1.2.1 From d326c2504813b90df3881b00eef081f4fc9ef49a Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 9 Apr 2007 05:37:21 +0000 Subject: use GENERIC_LIB_VERSION and GENERIC_LIB_SOVERSION and set these values to 5.0.0 and 5, respectively. svn path=/trunk/KDE/kdelibs/; revision=651750 --- modules/KDE4Defaults.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index fba1f766..d4279930 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -23,8 +23,8 @@ set(CMAKE_COLOR_MAKEFILE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes -set(GENERIC_LIB_VERSION "4.0.0") -set(GENERIC_LIB_SOVERSION "4") +set(GENERIC_LIB_VERSION "5.0.0") +set(GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar # all searchable directories has to be defined by the PATH environment var @@ -35,4 +35,4 @@ set(GENERIC_LIB_SOVERSION "4") if (WIN32) set (EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) # set (LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) -endif(WIN32) \ No newline at end of file +endif(WIN32) -- cgit v1.2.1 From 2894ae45d770d85eea88100a9b7a23565fa3aec7 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Mon, 9 Apr 2007 12:42:55 +0000 Subject: Revert my last change, the two directories are searched by default svn path=/trunk/KDE/kdelibs/; revision=651810 --- modules/FindFlex.cmake | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index afc5f8a1..631dcd27 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -20,10 +20,7 @@ IF(FLEX_EXECUTABLE) string (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" FLEX_VERSION "${_FLEX_VERSION}") ENDIF(FLEX_EXECUTABLE) -FIND_PATH(FLEX_INCLUDE_DIR FlexLexer.h - /usr/include - /usr/local/include - ) +FIND_PATH(FLEX_INCLUDE_DIR FlexLexer.h ) FIND_LIBRARY(FLEX_LIBRARY fl) IF(FLEX_FOUND) -- cgit v1.2.1 From 3688f0ccbe55e39d74034e27a5c49ac5f8575948 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Mon, 9 Apr 2007 18:58:16 +0000 Subject: win32 fix: added message about the used qmake location, this helps to find problems with installation pathes svn path=/trunk/KDE/kdelibs/; revision=651978 --- modules/FindQt4.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 537bf864..8d3d45db 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1093,7 +1093,11 @@ IF (QT4_QMAKE_FOUND) IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "YES" ) IF( NOT Qt4_FIND_QUIETLY) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") + IF (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") + ELSE (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") + ENDIF (WIN32) ENDIF( NOT Qt4_FIND_QUIETLY) ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "NO") -- cgit v1.2.1 From c78fca377f2cb783c2c98af99ae3d1f257776691 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 10 Apr 2007 06:49:38 +0000 Subject: fixed indention svn path=/trunk/KDE/kdelibs/; revision=652128 --- modules/FindKDEWIN32.cmake | 134 ++++++++++++++++++++++----------------------- 1 file changed, 67 insertions(+), 67 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 15f32198..ee49bc41 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -13,80 +13,80 @@ if (WIN32) -file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) - -if(NOT QT4_FOUND) - find_package(Qt4 REQUIRED) -endif(NOT QT4_FOUND) - -find_path(KDEWIN32_INCLUDE_DIR winposix_export.h - ${_program_FILES_DIR}/kdewin32/include ${CMAKE_INSTALL_PREFIX}/include -) - - -# at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ -# search for kdewin32 in the default install directory for applications (default of (n)make install) - -set(KDEWIN32_LIBRARY_PATH ${_program_FILES_DIR}/kdewin32/lib) -find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 - PATHS - ${KDEWIN32_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib -) - -# msvc makes a difference between debug and release -if(MSVC) - find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d - PATHS - ${_program_FILES_DIR}/kdewin32/lib ${CMAKE_INSTALL_PREFIX}/lib - ) - if(MSVC_IDE) - # the ide needs the debug and release version - if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") - endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) - else(MSVC_IDE) - string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) - else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - endif(MSVC_IDE) -else(MSVC) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) -endif(MSVC) - -# kdelibs/win/ has to be built before the rest of kdelibs/ -# eventually it will be moved out from kdelibs/ -if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - set(KDEWIN32_FOUND TRUE) - # add needed system libs - set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) - - if (MINGW) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) + + if(NOT QT4_FOUND) + find_package(Qt4 REQUIRED) + endif(NOT QT4_FOUND) + + find_path(KDEWIN32_INCLUDE_DIR winposix_export.h + ${_program_FILES_DIR}/kdewin32/include ${CMAKE_INSTALL_PREFIX}/include + ) + + + # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ + # search for kdewin32 in the default install directory for applications (default of (n)make install) + + set(KDEWIN32_LIBRARY_PATH ${_program_FILES_DIR}/kdewin32/lib) + find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 + PATHS + ${KDEWIN32_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib + ) + + # msvc makes a difference between debug and release + if(MSVC) + find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d + PATHS + ${_program_FILES_DIR}/kdewin32/lib ${CMAKE_INSTALL_PREFIX}/lib + ) + if(MSVC_IDE) + # the ide needs the debug and release version + if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") + endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) + else(MSVC_IDE) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + endif(MSVC_IDE) + else(MSVC) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + endif(MSVC) + + # kdelibs/win/ has to be built before the rest of kdelibs/ + # eventually it will be moved out from kdelibs/ + if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + set(KDEWIN32_FOUND TRUE) + # add needed system libs + set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) + + if (MINGW) #mingw compiler set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - else (MINGW) + else (MINGW) # msvc compiler # add the MS SDK include directory if available file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) - endif (MINGW) - -endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - -if (KDEWIN32_FOUND) - if (NOT KDEWIN32_FIND_QUIETLY) + endif (MINGW) + + endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + + if (KDEWIN32_FOUND) + if (NOT KDEWIN32_FIND_QUIETLY) message(STATUS "Found KDEWIN32: ${KDEWIN32_LIBRARY}") - endif (NOT KDEWIN32_FIND_QUIETLY) -else (KDEWIN32_FOUND) - if (KDEWIN32_FIND_REQUIRED) + endif (NOT KDEWIN32_FIND_QUIETLY) + else (KDEWIN32_FOUND) + if (KDEWIN32_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease build and install kdelibs/win/ first") - endif (KDEWIN32_FIND_REQUIRED) -endif (KDEWIN32_FOUND) - -set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) -set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) + endif (KDEWIN32_FIND_REQUIRED) + endif (KDEWIN32_FOUND) + + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) endif (WIN32) -- cgit v1.2.1 From 0d2140da2badee431b04ddede982118eed31a0a2 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 10 Apr 2007 06:53:36 +0000 Subject: converted tabs into spaces svn path=/trunk/KDE/kdelibs/; revision=652131 --- modules/FindKDEWIN32.cmake | 60 +++++++++++++++++++++++----------------------- 1 file changed, 30 insertions(+), 30 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index ee49bc41..6191f38f 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -14,56 +14,56 @@ if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) - + if(NOT QT4_FOUND) find_package(Qt4 REQUIRED) endif(NOT QT4_FOUND) - + find_path(KDEWIN32_INCLUDE_DIR winposix_export.h ${_program_FILES_DIR}/kdewin32/include ${CMAKE_INSTALL_PREFIX}/include ) - - + + # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) - + set(KDEWIN32_LIBRARY_PATH ${_program_FILES_DIR}/kdewin32/lib) find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 PATHS ${KDEWIN32_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib ) - + # msvc makes a difference between debug and release if(MSVC) - find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d - PATHS - ${_program_FILES_DIR}/kdewin32/lib ${CMAKE_INSTALL_PREFIX}/lib - ) - if(MSVC_IDE) - # the ide needs the debug and release version - if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") - endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) - else(MSVC_IDE) - string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) - else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - endif(MSVC_IDE) + find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d + PATHS + ${_program_FILES_DIR}/kdewin32/lib ${CMAKE_INSTALL_PREFIX}/lib + ) + if(MSVC_IDE) + # the ide needs the debug and release version + if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") + endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) + else(MSVC_IDE) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + endif(MSVC_IDE) else(MSVC) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) endif(MSVC) - + # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) set(KDEWIN32_FOUND TRUE) # add needed system libs set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) - + if (MINGW) #mingw compiler set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) @@ -73,9 +73,9 @@ if (WIN32) file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) endif (MINGW) - + endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - + if (KDEWIN32_FOUND) if (NOT KDEWIN32_FIND_QUIETLY) message(STATUS "Found KDEWIN32: ${KDEWIN32_LIBRARY}") @@ -85,7 +85,7 @@ if (WIN32) message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease build and install kdelibs/win/ first") endif (KDEWIN32_FIND_REQUIRED) endif (KDEWIN32_FOUND) - + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) -- cgit v1.2.1 From ddff30d90a1fd77251ab3f4c23488494479ce1dd Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 10 Apr 2007 16:01:34 +0000 Subject: - added search for environment variable KDEWIN32_DIR - fixed zlib search problem svn path=/trunk/KDE/kdelibs/; revision=652282 --- modules/FindKDEWIN32.cmake | 42 +++++++++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 6191f38f..5ecb13fe 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -1,4 +1,5 @@ -# - Try to find the KDEWIN32 library +# - Try to find the directory in which the kdewin32 library and other win32 related libraries lives +# # Once done this will define # # KDEWIN32_FOUND - system has KDEWIN32 @@ -13,31 +14,45 @@ if (WIN32) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) + if (NOT KDEWIN32_DIR) + if(NOT QT4_FOUND) + find_package(Qt4 REQUIRED) + endif(NOT QT4_FOUND) - if(NOT QT4_FOUND) - find_package(Qt4 REQUIRED) - endif(NOT QT4_FOUND) + # check for enviroment variable first + file(TO_CMAKE_PATH "$ENV{KDEWIN32_DIR}" KDEWIN32_DIR) + + # then check default installation dir + if (NOT KDEWIN32_DIR) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + find_file(KDEWIN32_DIR_tmp kdewin32 + PATHS + "${_progFiles}" + ) + set (KDEWIN32_DIR ${KDEWIN32_DIR_tmp}) + endif (NOT KDEWIN32_DIR) + endif (NOT KDEWIN32_DIR) find_path(KDEWIN32_INCLUDE_DIR winposix_export.h - ${_program_FILES_DIR}/kdewin32/include ${CMAKE_INSTALL_PREFIX}/include + ${KDEWIN32_DIR}/include + ${CMAKE_INSTALL_PREFIX}/include ) - # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) - set(KDEWIN32_LIBRARY_PATH ${_program_FILES_DIR}/kdewin32/lib) find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 PATHS - ${KDEWIN32_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib + ${KDEWIN32_DIR}/lib + ${CMAKE_INSTALL_PREFIX}/lib ) # msvc makes a difference between debug and release if(MSVC) find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d PATHS - ${_program_FILES_DIR}/kdewin32/lib ${CMAKE_INSTALL_PREFIX}/lib + ${KDEWIN32_DIR}/lib + ${CMAKE_INSTALL_PREFIX}/lib ) if(MSVC_IDE) # the ide needs the debug and release version @@ -82,10 +97,15 @@ if (WIN32) endif (NOT KDEWIN32_FIND_QUIETLY) else (KDEWIN32_FOUND) if (KDEWIN32_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease build and install kdelibs/win/ first") + message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease install it first") endif (KDEWIN32_FIND_REQUIRED) endif (KDEWIN32_FOUND) + # add include path and library to all targets, this is required because + # cmake's 2.4.6 FindZLib.cmake does not use CMAKE_REQUIRED... vars + set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${KDEWIN32_INCLUDES}) + set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${KDEWIN32_DIR}/lib) + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) -- cgit v1.2.1 From aaeb5144062c7b852b86bedab49a197faea415c1 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 10 Apr 2007 16:23:14 +0000 Subject: be silent if installation already found svn path=/trunk/KDE/kdelibs/; revision=652290 --- modules/FindGNUWIN32.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index 8b999d93..bbe5debb 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -7,6 +7,11 @@ if (WIN32) + IF (GNUWIN32_INCLUDE_DIR) + # Already in cache, be silent + SET(GNUWIN32_FIND_QUIETLY TRUE) + ENDIF (GNUWIN32_INCLUDE_DIR) + # check if GNUWIN32_DIR is already set # (e.g. by command line argument or the calling script) if(NOT GNUWIN32_DIR) -- cgit v1.2.1 From f8b81f2d6d89d867ab0034e36e3891eb16ca3a8e Mon Sep 17 00:00:00 2001 From: Hasso Tepper Date: Wed, 11 Apr 2007 13:47:46 +0000 Subject: Add paths for systems using pkgsrc (NetBSD and DragonFlyBSD). Why KDE uses it's own FindX11 at all? svn path=/trunk/KDE/kdelibs/; revision=652564 --- modules/FindX11.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 8eeabfe4..9e4038c9 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -24,6 +24,7 @@ if (UNIX) set(X11_FOUND 0) set(X11_INC_SEARCH_PATH + /usr/pkg/xorg/include /usr/local/include /usr/include /usr/X11R6/include @@ -34,6 +35,7 @@ if (UNIX) ) set(X11_LIB_SEARCH_PATH + /usr/pkg/xorg/lib /usr/local/lib /usr/lib /usr/X11R6/lib -- cgit v1.2.1 From 30db6d87cbbd5e4fabad91c1c320a5001b083f14 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 11 Apr 2007 14:50:48 +0000 Subject: warn about older libasound versions that don't work correctly when using dmix:, svn path=/trunk/KDE/kdelibs/; revision=652606 --- modules/FindAlsa.cmake | 54 +++++++++++++++++++++++++++------------------ modules/config-alsa.h.cmake | 10 ++++----- 2 files changed, 38 insertions(+), 26 deletions(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index 90966007..966841a9 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -4,8 +4,11 @@ # It offers the following macros: # ALSA_CONFIGURE_FILE(config_header) - generate a config.h, typical usage: # ALSA_CONFIGURE_FILE(${CMAKE_BINARY_DIR}/config-alsa.h) +# ALSA_VERSION_STRING(version_string) looks for alsa/version.h and reads the version string into +# the first argument passed to the macro # Copyright (c) 2006, David Faure, +# Copyright (c) 2007, Matthias Kretz # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -15,34 +18,43 @@ include(CheckIncludeFileCXX) include(CheckLibraryExists) # Already done by toplevel -#check_include_files(sys/soundcard.h HAVE_SYS_SOUNDCARD_H) -#check_include_files(machine/soundcard.h HAVE_MACHINE_SOUNDCARD_H) - -check_include_files(linux/awe_voice.h HAVE_LINUX_AWE_VOICE_H) -check_include_files(awe_voice.h HAVE_AWE_VOICE_H) -check_include_files(/usr/src/sys/i386/isa/sound/awe_voice.h HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H) -check_include_files(/usr/src/sys/gnu/i386/isa/sound/awe_voice.h HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H) - -check_include_file_cxx(sys/asoundlib.h HAVE_SYS_ASOUNDLIB_H) -check_include_file_cxx(alsa/asoundlib.h HAVE_ALSA_ASOUNDLIB_H) - -check_library_exists(asound snd_seq_create_simple_port "" HAVE_LIBASOUND2) +FIND_LIBRARY(ASOUND_LIBRARY asound) +check_library_exists(asound snd_seq_create_simple_port ${ASOUND_LIBRARY} HAVE_LIBASOUND2) if(HAVE_LIBASOUND2) - set(ASOUND_LIBRARY "asound") - check_library_exists(asound snd_pcm_resume ${ASOUND_LIBRARY} ASOUND_HAS_SND_PCM_RESUME) message(STATUS "Found ALSA: ${ASOUND_LIBRARY}") - if(ASOUND_HAS_SND_PCM_RESUME) - set(HAVE_SND_PCM_RESUME 1) - endif(ASOUND_HAS_SND_PCM_RESUME) - SET (LIBASOUND2_FOUND TRUE) else(HAVE_LIBASOUND2) message(STATUS "ALSA not found") endif(HAVE_LIBASOUND2) - set(ALSA_FOUND HAVE_LIBASOUND2) -get_filename_component(_FIND_ALSA_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) +MACRO(ALSA_VERSION_STRING _result) + # check for version in alsa/version.h + FIND_PATH(_ALSA_INCLUDE_DIR alsa/version.h) + IF(_ALSA_INCLUDE_DIR) + FILE(READ "${_ALSA_INCLUDE_DIR}/alsa/version.h" _ALSA_VERSION_CONTENT) + STRING(REGEX REPLACE ".*SND_LIB_VERSION_STR.*\"(.*)\".*" "\\1" ${_result} ${_ALSA_VERSION_CONTENT}) + ELSE(_ALSA_INCLUDE_DIR) + MESSAGE(STATUS "ALSA version not known. ALSA output will probably not work correctly.") + ENDIF(_ALSA_INCLUDE_DIR) +ENDMACRO(ALSA_VERSION_STRING _result) +get_filename_component(_FIND_ALSA_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) macro(ALSA_CONFIGURE_FILE _destFile) - configure_file(${_FIND_ALSA_MODULE_DIR}/config-alsa.h.cmake ${_destFile} ) + check_include_files(sys/soundcard.h HAVE_SYS_SOUNDCARD_H) + check_include_files(machine/soundcard.h HAVE_MACHINE_SOUNDCARD_H) + + check_include_files(linux/awe_voice.h HAVE_LINUX_AWE_VOICE_H) + check_include_files(awe_voice.h HAVE_AWE_VOICE_H) + check_include_files(/usr/src/sys/i386/isa/sound/awe_voice.h HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H) + check_include_files(/usr/src/sys/gnu/i386/isa/sound/awe_voice.h HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H) + + check_include_file_cxx(sys/asoundlib.h HAVE_SYS_ASOUNDLIB_H) + check_include_file_cxx(alsa/asoundlib.h HAVE_ALSA_ASOUNDLIB_H) + + check_library_exists(asound snd_pcm_resume ${ASOUND_LIBRARY} ASOUND_HAS_SND_PCM_RESUME) + if(ASOUND_HAS_SND_PCM_RESUME) + set(HAVE_SND_PCM_RESUME 1) + endif(ASOUND_HAS_SND_PCM_RESUME) + + configure_file(${_FIND_ALSA_MODULE_DIR}/config-alsa.h.cmake ${_destFile}) endmacro(ALSA_CONFIGURE_FILE _destFile) diff --git a/modules/config-alsa.h.cmake b/modules/config-alsa.h.cmake index 9c9e1683..44374cfa 100644 --- a/modules/config-alsa.h.cmake +++ b/modules/config-alsa.h.cmake @@ -15,11 +15,6 @@ /* Define to 1 if you have the header file. */ #cmakedefine HAVE_AWE_VOICE_H 1 - - -/* Define if you have libasound.so.1 (for ALSA 0.5.x support - disabled now) */ -/* #undef HAVE_LIBASOUND */ - /* Define if you have libasound.so.2 (required for ALSA 0.9.x support) */ #cmakedefine HAVE_LIBASOUND2 1 @@ -32,3 +27,8 @@ /* Define to 1 if you have the header file. */ #cmakedefine HAVE_SYS_ASOUNDLIB_H 1 +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_SOUNDCARD_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_MACHINE_SOUNDCARD_H 1 -- cgit v1.2.1 From 9f381b0433fd1301bc85c2be764d32772568d857 Mon Sep 17 00:00:00 2001 From: Hasso Tepper Date: Fri, 13 Apr 2007 11:16:12 +0000 Subject: The modular X.org from pkgsrc isn't installed into it's own directory any more. svn path=/trunk/KDE/kdelibs/; revision=653455 --- modules/FindX11.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 9e4038c9..18671bb3 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -25,6 +25,7 @@ if (UNIX) set(X11_INC_SEARCH_PATH /usr/pkg/xorg/include + /usr/pkg/include /usr/local/include /usr/include /usr/X11R6/include @@ -36,6 +37,7 @@ if (UNIX) set(X11_LIB_SEARCH_PATH /usr/pkg/xorg/lib + /usr/pkg/lib /usr/local/lib /usr/lib /usr/X11R6/lib -- cgit v1.2.1 From 18c4ff6bdfa3ea3973338ed7d38e1ad9398f2084 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 13 Apr 2007 16:00:47 +0000 Subject: - avoid search in PATH environment variable, which results in using kdewin32.dll instead of relating dll.a on mingw svn path=/trunk/KDE/kdelibs/; revision=653552 --- modules/FindKDEWIN32.cmake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 5ecb13fe..8ac3fe58 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -1,5 +1,5 @@ # - Try to find the directory in which the kdewin32 library and other win32 related libraries lives -# +# # Once done this will define # # KDEWIN32_FOUND - system has KDEWIN32 @@ -43,8 +43,9 @@ if (WIN32) find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 PATHS - ${KDEWIN32_DIR}/lib - ${CMAKE_INSTALL_PREFIX}/lib + ${KDEWIN32_DIR}/lib + ${CMAKE_INSTALL_PREFIX}/lib + NO_SYSTEM_ENVIRONMENT_PATH ) # msvc makes a difference between debug and release @@ -53,6 +54,7 @@ if (WIN32) PATHS ${KDEWIN32_DIR}/lib ${CMAKE_INSTALL_PREFIX}/lib + NO_SYSTEM_ENVIRONMENT_PATH ) if(MSVC_IDE) # the ide needs the debug and release version -- cgit v1.2.1 From 781577ce1680e84f0d04a6faf9693b57652e3599 Mon Sep 17 00:00:00 2001 From: Harri Porten Date: Sat, 14 Apr 2007 01:07:35 +0000 Subject: help clueless persons like me svn path=/trunk/KDE/kdelibs/; revision=653683 --- modules/FindSharedMimeInfo.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 89c2275d..83da92e3 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -45,7 +45,7 @@ else (UPDATE_MIME_DATABASE_EXECUTABLE) endif (NOT SharedMimeInfo_FIND_QUIETLY) else (SHARED_MIME_INFO_FOUND) if (SharedMimeInfo_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find shared-mime-info") + message(FATAL_ERROR "Could NOT find shared-mime-info. See http://freedesktop.org/wiki/Software/shared-mime-info.") endif (SharedMimeInfo_FIND_REQUIRED) endif (SHARED_MIME_INFO_FOUND) -- cgit v1.2.1 From 2c7ef17dafd48c652a1bf81b6e2cc671db8cfe8d Mon Sep 17 00:00:00 2001 From: Jakub Stachowski Date: Sat, 14 Apr 2007 18:40:13 +0000 Subject: Add check for Avahi. If found, use avahi backend, else search for libdns_sd. config-dnssd.h is not needed anymore. Include defs.h instead of copying defines. svn path=/trunk/KDE/kdelibs/; revision=653972 --- modules/FindAvahi.cmake | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 modules/FindAvahi.cmake (limited to 'modules') diff --git a/modules/FindAvahi.cmake b/modules/FindAvahi.cmake new file mode 100644 index 00000000..89043f44 --- /dev/null +++ b/modules/FindAvahi.cmake @@ -0,0 +1,22 @@ +# Find Avahi. Only avahi-common/defs.h is really needed +# +# Copyright (c) 2007, Jakub Stachowski, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +FIND_PATH(AVAHI_INCLUDE_DIR avahi-common/defs.h + /usr/include + /usr/local/include + ) + +if(AVAHI_INCLUDE_DIR) + set(AVAHI_FOUND TRUE) + MESSAGE( STATUS "Avahi common includes found in ${AVAHI_INCLUDE_DIR}") +else(AVAHI_INCLUDE_DIR) + MESSAGE( STATUS "Avahi not found") +endif(AVAHI_INCLUDE_DIR) + +MARK_AS_ADVANCED(AVAHI_INCLUDE_DIR) + -- cgit v1.2.1 From e484883b0386ca74a28e3752feb72111cb331d35 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 15 Apr 2007 11:42:53 +0000 Subject: Improve it svn path=/trunk/KDE/kdelibs/; revision=654193 --- modules/FindAvahi.cmake | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindAvahi.cmake b/modules/FindAvahi.cmake index 89043f44..3707b7cd 100644 --- a/modules/FindAvahi.cmake +++ b/modules/FindAvahi.cmake @@ -6,6 +6,12 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if (AVAHI_INCLUDE_DIR) + # Already in cache, be silent + set(Avahi_FIND_QUIETLY TRUE) +endif (AVAHI_INCLUDE_DIR) + + FIND_PATH(AVAHI_INCLUDE_DIR avahi-common/defs.h /usr/include /usr/local/include @@ -13,10 +19,18 @@ FIND_PATH(AVAHI_INCLUDE_DIR avahi-common/defs.h if(AVAHI_INCLUDE_DIR) set(AVAHI_FOUND TRUE) - MESSAGE( STATUS "Avahi common includes found in ${AVAHI_INCLUDE_DIR}") -else(AVAHI_INCLUDE_DIR) - MESSAGE( STATUS "Avahi not found") endif(AVAHI_INCLUDE_DIR) + +if(AVAHI_FOUND) + if(NOT Avahi_FIND_QUIETLY) + MESSAGE( STATUS "Avahi common includes found in ${AVAHI_INCLUDE_DIR}") + endif(NOT Avahi_FIND_QUIETLY) +else(AVAHI_FOUND) + if(Avahi_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Avahi not found") + endif(Avahi_FIND_REQUIRED) +endif(AVAHI_FOUND) + MARK_AS_ADVANCED(AVAHI_INCLUDE_DIR) -- cgit v1.2.1 From aad69447acfca6fa046c51b7bf4372a159b1264b Mon Sep 17 00:00:00 2001 From: Sebastian Sauer Date: Mon, 16 Apr 2007 03:01:29 +0000 Subject: we have core and ui where ui is optional. svn path=/trunk/KDE/kdelibs/; revision=654406 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b9024eb2..b344e0ad 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -71,6 +71,7 @@ # KDE4_SOLIDIFACES_LIBS - the solid iface library and all depending libraries # KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries +# KDE4_KROSSUI_LIBRARY - the kross ui library which includes core and all depending libraries # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries # KDE4_KWALLETCLIENT_LIBS - the kwallet client library and all depending libraries # @@ -473,6 +474,8 @@ else (_kdeBootStrapping) find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) + find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) -- cgit v1.2.1 From 9fb1dafc24a158e308125d618f36b017c797004e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 20 Apr 2007 13:12:27 +0000 Subject: KDE4_INCLUDE_INSTALL_DIR is not defined but INCLUDE_INSTALL_DIR is defined svn path=/trunk/KDE/kdelibs/; revision=656153 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b344e0ad..92b1663e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -486,7 +486,7 @@ else (_kdeBootStrapping) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 - find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) + find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) -- cgit v1.2.1 From 3a1179333128e90342159ba67f59c59a81217957 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 20 Apr 2007 19:17:58 +0000 Subject: prefer win32libs over gnuwin32 svn path=/trunk/KDE/kdelibs/; revision=656247 --- modules/FindGNUWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake index bbe5debb..d41af6f9 100644 --- a/modules/FindGNUWIN32.cmake +++ b/modules/FindGNUWIN32.cmake @@ -20,7 +20,7 @@ if(NOT GNUWIN32_DIR) if(NOT GNUWIN32_DIR) # search in the default program install folder file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - find_file(GNUWIN32_DIR_tmp gnuwin32 win32libs + find_file(GNUWIN32_DIR_tmp win32libs gnuwin32 PATHS "${_progFiles}" "C:/" "D:/" "E:/" "F:/" "G:/" -- cgit v1.2.1 From 61c82b748738d4692b1a092e4d66e151b1971124 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Fri, 20 Apr 2007 20:50:44 +0000 Subject: Find debug libs of kdewin32 for mingw too svn path=/trunk/KDE/kdelibs/; revision=656278 --- modules/FindKDEWIN32.cmake | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 8ac3fe58..ac284cd4 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -41,13 +41,20 @@ if (WIN32) # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ # search for kdewin32 in the default install directory for applications (default of (n)make install) - find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 + find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d PATHS ${KDEWIN32_DIR}/lib ${CMAKE_INSTALL_PREFIX}/lib NO_SYSTEM_ENVIRONMENT_PATH ) + find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 + PATHS + ${KDEWIN32_DIR}/lib + ${CMAKE_INSTALL_PREFIX}/lib + NO_SYSTEM_ENVIRONMENT_PATH + ) + # msvc makes a difference between debug and release if(MSVC) find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d @@ -71,7 +78,11 @@ if (WIN32) endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) endif(MSVC_IDE) else(MSVC) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + if(KDEWIN32_LIBRARY_RELEASE) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + else(KDEWIN32_LIBRARY_RELEASE) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) + endif(KDEWIN32_LIBRARY_RELEASE) endif(MSVC) # kdelibs/win/ has to be built before the rest of kdelibs/ -- cgit v1.2.1 From 05e931b9d6e04948bede04cfabea8d6982b306c6 Mon Sep 17 00:00:00 2001 From: Script Kiddy Date: Sat, 21 Apr 2007 19:28:17 +0000 Subject: A cmake module file should not be executable (goutte) svn path=/trunk/KDE/kdelibs/; revision=656586 --- modules/kde4_exec_via_sh.cmake | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 modules/kde4_exec_via_sh.cmake (limited to 'modules') diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake old mode 100755 new mode 100644 -- cgit v1.2.1 From 2cb05ed201dc81563a82e7b3888d4f9d6624229e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 23 Apr 2007 16:53:13 +0000 Subject: Use by koffice/kdegraphics svn path=/trunk/KDE/kdelibs/; revision=657255 --- modules/FindPopplerQt4.cmake | 55 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 modules/FindPopplerQt4.cmake (limited to 'modules') diff --git a/modules/FindPopplerQt4.cmake b/modules/FindPopplerQt4.cmake new file mode 100644 index 00000000..a67bde44 --- /dev/null +++ b/modules/FindPopplerQt4.cmake @@ -0,0 +1,55 @@ +# - Try to find the Qt4 binding of the Poppler library +# Once done this will define +# +# POPPLER_QT4_FOUND - system has poppler-qt4 +# POPPLER_QT4_INCLUDE_DIR - the poppler-qt4 include directory +# POPPLER_QT4_LIBRARIES - Link these to use poppler-qt4 +# POPPLER_QT4_DEFINITIONS - Compiler switches required for using poppler-qt4 +# + +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls + +# Copyright (c) 2006, Wilfried Huss, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if(NOT WIN32) +INCLUDE(UsePkgConfig) + +PKGCONFIG(poppler-qt4 _PopplerQt4IncDir _PopplerQt4LinkDir _PopplerQt4LinkFlags _PopplerQt4Cflags) + +set(POPPLER_QT4_DEFINITIONS ${_PopplerQt4Cflags}) +endif(NOT WIN32) + +FIND_PATH(POPPLER_QT4_INCLUDE_DIR poppler-qt4.h + ${_PopplerQt4IncDir}/poppler + /usr/include/poppler + /usr/local/include/poppler +) + +FIND_LIBRARY(POPPLER_QT4_LIBRARIES poppler-qt4 + ${_PopplerQt4LinkDir} + /usr/lib + /usr/local/lib +) + +if (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) + set(POPPLER_QT4_FOUND TRUE) +else (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) + set(POPPLER_QT4_FOUND FALSE) +endif (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) + +if (POPPLER_QT4_FOUND) + if (NOT PopplerQt4_FIND_QUIETLY) + message(STATUS "Found poppler-qt4: library: ${POPPLER_QT4_LIBRARIES}, include path: ${POPPLER_QT4_INCLUDE_DIR}") + endif (NOT PopplerQt4_FIND_QUIETLY) +else (POPPLER_QT4_FOUND) + if (PopplerQt4_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find poppler-qt4") + endif (PopplerQt4_FIND_REQUIRED) +endif (POPPLER_QT4_FOUND) + +MARK_AS_ADVANCED(POPPLER_QT4_INCLUDE_DIR POPPLER_QT4_LIBRARIES) -- cgit v1.2.1 From 2cda34b48d13a79e186c16e8a5082bd9003e0557 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 25 Apr 2007 15:00:26 +0000 Subject: Commit my patch into trunk (there is any problem with this patch but I prefere to commit it before next monday) svn path=/trunk/KDE/kdelibs/; revision=657955 --- modules/FindQt4.cmake | 58 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 44 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8d3d45db..8be9812b 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -43,6 +43,16 @@ # for all listed interface xml files # the name will be automatically determined from the name of the xml file # +# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) +# create a the interface without namespace header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) +# create the interface header without namespace and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# # macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) # create a dbus adaptor (header and implementation file) from the xml file # describing the interface, and add it to the list of sources. The adaptor @@ -956,11 +966,18 @@ IF (QT4_QMAKE_FOUND) SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -p ${_basename} ${_infile} + + GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) + IF ( _nonamespace ) + SET(_params -N -m -p) + ELSE ( _nonamespace ) + SET(_params -m -p) + ENDIF ( _nonamespace ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} DEPENDS ${_infile}) - + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) QT4_GENERATE_MOC(${_header} ${_moc}) @@ -969,20 +986,33 @@ IF (QT4_QMAKE_FOUND) MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) ENDMACRO(QT4_ADD_DBUS_INTERFACE) - - - MACRO(QT4_ADD_DBUS_INTERFACES _sources) - FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE) - - # get the part before the ".xml" suffix + + MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) + SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) + ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) + + # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES + MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) + GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) + # get the part before the ".xml" suffix STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) STRING(TOLOWER ${_basename} _basename) - - QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + ENDMACRO(_QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) ENDFOREACH (_current_FILE) ENDMACRO(QT4_ADD_DBUS_INTERFACES) - + + MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) + FOREACH (_current_FILE ${ARGN}) + SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) SET(_customName "${ARGV1}") -- cgit v1.2.1 From 96653b6229f2f5b7bc8f572c4dfa61792275f396 Mon Sep 17 00:00:00 2001 From: Nicolas Goutte Date: Sat, 28 Apr 2007 18:13:01 +0000 Subject: SVN_SILENT: add a TODO comment that msgfmt should be of version >= 0.15 (currently either 0.15, 0.15.1, 0.16 or 0.16.1) (Older version do not know about the context keyword msgctxt.) svn path=/trunk/KDE/kdelibs/; revision=658881 --- modules/FindMsgfmt.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindMsgfmt.cmake b/modules/FindMsgfmt.cmake index 309b8b92..cc9912ea 100644 --- a/modules/FindMsgfmt.cmake +++ b/modules/FindMsgfmt.cmake @@ -8,6 +8,8 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +### TODO: KDE4 needs msgfmt of version 0.15 or greater (cf. msgfmt --version ) + if(MSGFMT_EXECUTABLE) set(MSGFMT_FOUND TRUE) else(MSGFMT_EXECUTABLE) -- cgit v1.2.1 From c192ecc5c0fbb3dc1d35807c6f772904b5fd418c Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 30 Apr 2007 14:33:04 +0000 Subject: Merge libkwalletclient into libkdeui (since it only requires kdecore + qtgui); a lib for one class (which kio uses anyway) is overkill. svn path=/trunk/KDE/kdelibs/; revision=659626 --- modules/FindKDE4Internal.cmake | 5 ----- 1 file changed, 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 92b1663e..210e090b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -44,7 +44,6 @@ # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # KDE4_KROSSCORE_LIBRARY - the krosscore library # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library -# KDE4_KWALLETCLIENT_LIBRARY - the kwalletclient library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -73,7 +72,6 @@ # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries # KDE4_KROSSUI_LIBRARY - the kross ui library which includes core and all depending libraries # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries -# KDE4_KWALLETCLIENT_LIBS - the kwallet client library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -480,9 +478,6 @@ else (_kdeBootStrapping) find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) - find_library(KDE4_KWALLETCLIENT_LIBRARY NAMES kwalletclient PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KWALLETCLIENT_LIBS ${kwalletclient_LIB_DEPENDS} ${KDE4_KWALLETCLIENT_LIBRARY} ) - get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 -- cgit v1.2.1 From 3064c1c13ccb7376d644200cde6ad9dce3ebb478 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 30 Apr 2007 18:43:58 +0000 Subject: merge phonon-solid-sprint working branch - minus phonon and solid subdirs svn path=/trunk/KDE/kdelibs/; revision=659749 --- modules/FindKDE4Internal.cmake | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 210e090b..5e767211 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -34,13 +34,11 @@ # KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library # KDE4_KDEPRINT_LIBRARY - the kdeprint library # KDE4_KDNSSD_LIBRARY - the kdnssd library -# KDE4_PHONONCORE_LIBRARY - the phononcore library -# KDE4_PHONONUI_LIBRARY - the phononui library +# KDE4_PHONON_LIBRARY - the phonon library # KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library # KDE4_KDEFX_LIBRARY - the kdefx library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library # KDE4_SOLID_LIBRARY - the solid library -# KDE4_SOLIDIFACES_LIBRARY - the solidiface library # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # KDE4_KROSSCORE_LIBRARY - the krosscore library # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library @@ -62,12 +60,10 @@ # KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries -# KDE4_PHONONCORE_LIBS - the phononcore library and all depending librairies -# KDE4_PHONONUI_LIBRARIES - the phononui library and all depending librairies +# KDE4_PHONON_LIBS - the phonon library and all depending librairies # KDE4_KDEFX_LIBS - the kdefx library and all depending librairies # KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries # KDE4_SOLID_LIBS - the solid library and all depending libraries -# KDE4_SOLIDIFACES_LIBS - the solid iface library and all depending libraries # KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries # KDE4_KROSSUI_LIBRARY - the kross ui library which includes core and all depending libraries @@ -337,9 +333,8 @@ if (_kdeBootStrapping) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) - set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solidifaces solid) - set(KDE4_PHONONCORE_LIBS ${KDE4_KDECORE_LIBS} phononcore) - set(KDE4_PHONONUI_LIBS ${KDE4_KIO_LIBS} ${KDE4_PHONONCORE_LIBS} phononui) + set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) + set(KDE4_PHONON_LIBS ${QT_QTDBUS_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} phonon) set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) @@ -449,11 +444,8 @@ else (_kdeBootStrapping) find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) - find_library(KDE4_PHONONCORE_LIBRARY NAMES phononcore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_PHONONCORE_LIBS ${phononcore_LIB_DEPENDS} ${KDE4_PHONONCORE_LIBRARY} ) - - find_library(KDE4_PHONONUI_LIBRARY NAMES phononui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_PHONONUI_LIBS ${phononui_LIB_DEPENDS} ${KDE4_PHONONUI_LIBRARY} ) + find_library(KDE4_PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_PHONON_LIBS ${phonon_LIB_DEPENDS} ${KDE4_PHONON_LIBRARY} ) find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) @@ -461,9 +453,6 @@ else (_kdeBootStrapping) find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) - find_library(KDE4_SOLIDIFACES_LIBRARY NAMES solidifaces PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_SOLIDIFACES_LIBS ${solidifaces_LIB_DEPENDS} ${KDE4_SOLIDIFACES_LIBRARY} ) - find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) -- cgit v1.2.1 From 82673c9f0aa76ec0597a631e0efbd14a8d44e7fb Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 30 Apr 2007 21:48:24 +0000 Subject: * Moved Soprano/QRDF to kdesupport * Moved libKnepomuk, libKonto, and libKMetaData into kdelibs (the GUI elements still need to be sorted out.) * Moved the KNepomuk coreservices and the service registry into kdebase/runtime. It was agreed that this move makes sense even though KDE should be frozen already since it is an important technology. All of the new modules are optional which means that if Soprano is not installed none of the KNepomuk parts will be. Still missing is a cmake message stating this. CCMAIL: nepomuk-kde@semanticdesktop.org svn path=/trunk/KDE/kdelibs/; revision=659840 --- modules/FindKonto.cmake | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 modules/FindKonto.cmake (limited to 'modules') diff --git a/modules/FindKonto.cmake b/modules/FindKonto.cmake new file mode 100644 index 00000000..fa3db265 --- /dev/null +++ b/modules/FindKonto.cmake @@ -0,0 +1,35 @@ +# Once done this will define +# +# KONTO_FOUND - system has the Nepomuk-KDE backbone lib Konto +# KONTO_INCLUDES - the libKonto include directory +# KONTO_LIBRARIES - Link these to use libKonto +# + +FIND_PATH(KONTO_INCLUDES + NAMES + konto/class.h + PATHS + /usr/include + /usr/local/include + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(KONTO_LIBRARIES + NAMES + konto + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +if(KONTO_INCLUDES AND KONTO_LIBRARIES) + set(Konto_FOUND TRUE) + message(STATUS "Found Konto: ${KONTO_LIBRARIES}") +else(KONTO_INCLUDES AND KONTO_LIBRARIES) + if(Konto_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Konto library.") + endif(Konto_FIND_REQUIRED) +endif(KONTO_INCLUDES AND KONTO_LIBRARIES) -- cgit v1.2.1 From aad62da540bde71c22f647aedbb6a589049891e0 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 30 Apr 2007 21:58:46 +0000 Subject: Ups, forgot a file. svn path=/trunk/KDE/kdelibs/; revision=659846 --- modules/FindSoprano.cmake | 49 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 modules/FindSoprano.cmake (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake new file mode 100644 index 00000000..cb0c57ec --- /dev/null +++ b/modules/FindSoprano.cmake @@ -0,0 +1,49 @@ + + +if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + + # read from cache + set(Soprano_FOUND TRUE) + +else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + + FIND_PATH(SOPRANO_INCLUDE_DIR + NAMES + soprano/soprano.h + PATHS + /usr/include + /usr/local/include + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + + FIND_LIBRARY(SOPRANO_LIBRARIES + NAMES + soprano + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + set(Soprano_FOUND TRUE) + endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + + if(Soprano_FOUND) + if(NOT Soprano_FIND_QUIETLY) + message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") + endif(NOT Soprano_FIND_QUIETLY) + else(Soprano_FOUND) + if(Soprano_FIND_REQUIRED) + if(NOT SOPRANO_INCLUDE_DIR) + message(FATAL_ERROR "Could not find Soprano includes.") + endif(NOT SOPRANO_INCLUDE_DIR) + if(NOT SOPRANO_LIBRARIES) + message(FATAL_ERROR "Could not find Soprano library.") + endif(NOT SOPRANO_LIBRARIES) + endif(Soprano_FIND_REQUIRED) + endif(Soprano_FOUND) + +endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) -- cgit v1.2.1 From 8e07947a840d119cf81e081e89e89606403792b4 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 30 Apr 2007 23:59:03 +0000 Subject: Make more compliante as other cmake module svn path=/trunk/KDE/kdelibs/; revision=659884 --- modules/FindKonto.cmake | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKonto.cmake b/modules/FindKonto.cmake index fa3db265..4af6348b 100644 --- a/modules/FindKonto.cmake +++ b/modules/FindKonto.cmake @@ -5,6 +5,12 @@ # KONTO_LIBRARIES - Link these to use libKonto # +if(KONTO_INCLUDES AND KONTO_LIBRARIES) + # Already in cache, be silent + set(Konto_FIND_QUIETLY TRUE) +endif(KONTO_INCLUDES AND KONTO_LIBRARIES + + FIND_PATH(KONTO_INCLUDES NAMES konto/class.h @@ -25,11 +31,18 @@ FIND_LIBRARY(KONTO_LIBRARIES ${LIB_INSTALL_DIR} ) + if(KONTO_INCLUDES AND KONTO_LIBRARIES) - set(Konto_FOUND TRUE) - message(STATUS "Found Konto: ${KONTO_LIBRARIES}") -else(KONTO_INCLUDES AND KONTO_LIBRARIES) + set(KONTO_FOUND TRUE) +endif(KONTO_INCLUDES AND KONTO_LIBRARIES) + +if(KONTO_FOUND) + if (NOT Konto_FIND_QUIETLY) + message(STATUS "Found Konto: ${KONTO_LIBRARIES}") + endif (NOT Konto_FIND_QUIETLY) +else(KONTO_FOUND) if(Konto_FIND_REQUIRED) message(FATAL_ERROR "Could not find Konto library.") endif(Konto_FIND_REQUIRED) -endif(KONTO_INCLUDES AND KONTO_LIBRARIES) +endif(KONTO_FOUND) + -- cgit v1.2.1 From 108f7675a6eb802d97a985238ab2ded3bf86683b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 1 May 2007 00:08:34 +0000 Subject: not necessary to have a cmake directory here. adapt FindKMetaData.cmake move KMetaDataMacros.cmake into cmake/modules remove FindKNEpomuk (already into kdebase) svn path=/trunk/KDE/kdelibs/; revision=659887 --- modules/FindKMetaData.cmake | 1 + modules/KMetaDataMacros.cmake | 49 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 modules/KMetaDataMacros.cmake (limited to 'modules') diff --git a/modules/FindKMetaData.cmake b/modules/FindKMetaData.cmake index 3355d60f..1cdb801b 100644 --- a/modules/FindKMetaData.cmake +++ b/modules/FindKMetaData.cmake @@ -19,6 +19,7 @@ FIND_PATH(KMETADATA_INCLUDE_DIR FIND_LIBRARY(KMETADATA_LIBRARIES NAMES kmetadata + kmetadatatools PATHS /usr/lib /usr/local/lib diff --git a/modules/KMetaDataMacros.cmake b/modules/KMetaDataMacros.cmake new file mode 100644 index 00000000..7e4215e9 --- /dev/null +++ b/modules/KMetaDataMacros.cmake @@ -0,0 +1,49 @@ +# This file contains the following macros: +# +# KMETADATA_GENERATE_FROM_ONTOLOGY +# + + +# +# KMETADATA_GENERATE_FROM_ONTOLOGY +# (C) 2007 Sebastian Trueg +# +# Parameters: +# ontofile - Path to the NRL ontology defining the resources to be generated. +# targetdir - Folder to which the generated sources should be written. +# out_headers - Variable which will be filled with the names of all generated headers. +# out_sources - Variable which will be filled with the names of all generated sources. +# out_includes - Variable which will be filled with complete include statements of all +# generated resource classes. +# +# In addition to the parameters an arbitrary number of template filenames can be set as arguments +# +macro(KMETADATA_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources out_includes) + + FIND_PROGRAM(RCGEN kmetadata_rcgen PATHS ${BIN_INSTALL_DIR}) + if(RCGEN-NOTFOUND) + message( FATAL_ERROR "Failed to find the KMetaData source generator" ) + endif(RCGEN-NOTFOUND) + + FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) + + execute_process( + COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ ${ontofile} + OUTPUT_VARIABLE ${out_headers} + ) + + execute_process( + COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ ${ontofile} + OUTPUT_VARIABLE ${out_sources} + ) + + execute_process( + COMMAND ${RCGEN} --listincludes ${ontofile} + OUTPUT_VARIABLE ${out_includes} + ) + + execute_process( + COMMAND ${RCGEN} --writeall --templates ${ARGN} ${targetdir}/ ${ontofile} + ) + +endmacro(KMETADATA_GENERATE_FROM_ONTOLOGY) -- cgit v1.2.1 From f56d0b5ae165c9618b9d74cabfa89d96067d7f02 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 1 May 2007 00:17:13 +0000 Subject: Add new cmake kde4 macro svn path=/trunk/KDE/kdelibs/; revision=659888 --- modules/FindKDE4Internal.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5e767211..18a83916 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -42,6 +42,8 @@ # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # KDE4_KROSSCORE_LIBRARY - the krosscore library # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library +# KDE4_KNEPOMUK_LIBRARY - the knepomuk library +# KDE4_KMETADATA_LIBRARY - the kmetadata library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -68,6 +70,8 @@ # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries # KDE4_KROSSUI_LIBRARY - the kross ui library which includes core and all depending libraries # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries +# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries +# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries # # This module defines a bunch of variables used as locations # for install directories. They are all interpreted relative @@ -467,6 +471,12 @@ else (_kdeBootStrapping) find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) + find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) + + find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 -- cgit v1.2.1 From 7f0c6dbd737cebc77441f6c607b78adf3fea5d87 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 1 May 2007 00:25:29 +0000 Subject: Add new cmake variable svn path=/trunk/KDE/kdelibs/; revision=659893 --- modules/FindKDE4Internal.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 18a83916..dc7035d4 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -98,7 +98,8 @@ # KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir # XDG_APPS_DIR - the XDG apps dir # XDG_DIRECTORY_DIR - the XDG directory -# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces +# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) +# DBUS_SERVICES_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) # # The following variables are provided, but are seem to be unused: # LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") @@ -292,7 +293,7 @@ _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The _set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") _set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") _set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") - +_set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") ################################# -- cgit v1.2.1 From a7f051430a3d525a60ecb1c7584c049824b774dd Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Tue, 1 May 2007 10:07:18 +0000 Subject: search for debug/release lib on windows svn path=/trunk/KDE/kdelibs/; revision=660009 --- modules/FindSoprano.cmake | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index cb0c57ec..2aa05865 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -26,11 +26,38 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) set(Soprano_FOUND TRUE) endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + if(MSVC) + FIND_LIBRARY(SOPRANO_LIBRARIES_DEBUG + NAMES + sopranod + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + if(NOT SOPRANO_LIBRARIES_DEBUG) + set(Soprano_FOUND FALSE) + endif(NOT SOPRANO_LIBRARIES_DEBUG) + + if(MSVC_IDE) + if( NOT SOPRANO_LIBRARIES_DEBUG OR NOT SOPRANO_LIBRARIES) + message(FATAL_ERROR "\nCould NOT find the debug AND release version of the Soprano library.\nYou need to have both to use MSVC projects.\nPlease build and install both soprano libraries first.\n") + endif( NOT SOPRANO_LIBRARIES_DEBUG OR NOT SOPRANO_LIBRARIES) + else(MSVC_IDE) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(SOPRANO_LIBRARIES ${SOPRANO_LIBRARIES_DEBUG}) + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(SOPRANO_LIBRARIES ${SOPRANO_LIBRARIES}) + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + endif(MSVC_IDE) + endif(MSVC) + if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") -- cgit v1.2.1 From c8c5ce2eb675c3f4598aac3f05b846ad8a8bb9f2 Mon Sep 17 00:00:00 2001 From: Stephan Binner Date: Tue, 1 May 2007 21:08:36 +0000 Subject: also inform about miss even if not required svn path=/trunk/KDE/kdelibs/; revision=660180 --- modules/FindSoprano.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 2aa05865..541ee9db 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -70,6 +70,13 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) if(NOT SOPRANO_LIBRARIES) message(FATAL_ERROR "Could not find Soprano library.") endif(NOT SOPRANO_LIBRARIES) + else(Soprano_FIND_REQUIRED) + if(NOT SOPRANO_INCLUDE_DIR) + message(STATUS "Could not find Soprano includes.") + endif(NOT SOPRANO_INCLUDE_DIR) + if(NOT SOPRANO_LIBRARIES) + message(STATUS "Could not find Soprano library.") + endif(NOT SOPRANO_LIBRARIES) endif(Soprano_FIND_REQUIRED) endif(Soprano_FOUND) -- cgit v1.2.1 From a3f602414cbeaf7b96b833841935d722c347a54c Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 2 May 2007 09:49:31 +0000 Subject: Let's be consistent with the rest of FindKDE4Internal: renamed to KMETADATA_LIBS svn path=/trunk/KDE/kdelibs/; revision=660314 --- modules/FindKDE4Internal.cmake | 2 +- modules/FindKMetaData.cmake | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dc7035d4..427a71cf 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -68,7 +68,7 @@ # KDE4_SOLID_LIBS - the solid library and all depending libraries # KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries -# KDE4_KROSSUI_LIBRARY - the kross ui library which includes core and all depending libraries +# KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries # KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries # KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries diff --git a/modules/FindKMetaData.cmake b/modules/FindKMetaData.cmake index 1cdb801b..f7ad1377 100644 --- a/modules/FindKMetaData.cmake +++ b/modules/FindKMetaData.cmake @@ -2,11 +2,11 @@ # # KMETADATA_FOUND - system has KMetaData # KMETADATA_INCLUDE_DIR - the KMetaData include directory -# KMETADATA_LIBRARIES - Link these to use KMetaData +# KMETADATA_LIBS - Link these to use KMetaData # KMETADATA_DEFINITIONS - Compiler switches required for using KMetaData # -FIND_PATH(KMETADATA_INCLUDE_DIR +FIND_PATH(KMETADATA_INCLUDE_DIR NAMES kmetadata/kmetadata.h PATHS @@ -16,7 +16,7 @@ FIND_PATH(KMETADATA_INCLUDE_DIR ${INCLUDE_INSTALL_DIR} ) -FIND_LIBRARY(KMETADATA_LIBRARIES +FIND_LIBRARY(KMETADATA_LIBS NAMES kmetadata kmetadatatools @@ -27,21 +27,21 @@ FIND_LIBRARY(KMETADATA_LIBRARIES ${LIB_INSTALL_DIR} ) -if(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) +if(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBS) set(KMetaData_FOUND TRUE) -endif(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) +endif(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBS) if(KMetaData_FOUND) if(NOT KMetaData_FIND_QUIETLY) - message(STATUS "Found KMetaData: ${KMETADATA_LIBRARIES}") + message(STATUS "Found KMetaData: ${KMETADATA_LIBS}") endif(NOT KMetaData_FIND_QUIETLY) else(KMetaData_FOUND) if(KMetaData_FIND_REQUIRED) if(NOT KMETADATA_INCLUDE_DIR) message(FATAL_ERROR "Could not find KMetaData includes.") endif(NOT KMETADATA_INCLUDE_DIR) - if(NOT KMETADATA_LIBRARIES) + if(NOT KMETADATA_LIBS) message(FATAL_ERROR "Could not find KMetaData library.") - endif(NOT KMETADATA_LIBRARIES) + endif(NOT KMETADATA_LIBS) endif(KMetaData_FIND_REQUIRED) endif(KMetaData_FOUND) -- cgit v1.2.1 From 00185b5c6e86ccb4ba7001cba455f54f29119d17 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 2 May 2007 09:51:05 +0000 Subject: Actually we don't need to 'find' it if it's part of kdelibs now svn path=/trunk/KDE/kdelibs/; revision=660317 --- modules/FindKMetaData.cmake | 47 --------------------------------------------- 1 file changed, 47 deletions(-) delete mode 100644 modules/FindKMetaData.cmake (limited to 'modules') diff --git a/modules/FindKMetaData.cmake b/modules/FindKMetaData.cmake deleted file mode 100644 index f7ad1377..00000000 --- a/modules/FindKMetaData.cmake +++ /dev/null @@ -1,47 +0,0 @@ -# Once done this will define -# -# KMETADATA_FOUND - system has KMetaData -# KMETADATA_INCLUDE_DIR - the KMetaData include directory -# KMETADATA_LIBS - Link these to use KMetaData -# KMETADATA_DEFINITIONS - Compiler switches required for using KMetaData -# - -FIND_PATH(KMETADATA_INCLUDE_DIR - NAMES - kmetadata/kmetadata.h - PATHS - /usr/include - /usr/local/include - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} -) - -FIND_LIBRARY(KMETADATA_LIBS - NAMES - kmetadata - kmetadatatools - PATHS - /usr/lib - /usr/local/lib - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} -) - -if(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBS) - set(KMetaData_FOUND TRUE) -endif(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBS) - -if(KMetaData_FOUND) - if(NOT KMetaData_FIND_QUIETLY) - message(STATUS "Found KMetaData: ${KMETADATA_LIBS}") - endif(NOT KMetaData_FIND_QUIETLY) -else(KMetaData_FOUND) - if(KMetaData_FIND_REQUIRED) - if(NOT KMETADATA_INCLUDE_DIR) - message(FATAL_ERROR "Could not find KMetaData includes.") - endif(NOT KMETADATA_INCLUDE_DIR) - if(NOT KMETADATA_LIBS) - message(FATAL_ERROR "Could not find KMetaData library.") - endif(NOT KMETADATA_LIBS) - endif(KMetaData_FIND_REQUIRED) -endif(KMetaData_FOUND) -- cgit v1.2.1 From e37ad7959568a3a7fa19fe874f423ea10488b5d1 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 2 May 2007 10:00:52 +0000 Subject: Revert - it's not always compiled. -> it's not a standard KDE4_FOO_LIBS, it's a KMETADATA_LIBRARIES like any 3rd-party lib we have to check the existance of. svn path=/trunk/KDE/kdelibs/; revision=660321 --- modules/FindKDE4Internal.cmake | 10 +++++---- modules/FindKMetaData.cmake | 47 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+), 4 deletions(-) create mode 100644 modules/FindKMetaData.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 427a71cf..43580646 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -472,11 +472,13 @@ else (_kdeBootStrapping) find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) - find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) + # Can't do that, it's not always compiled. + #find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + #set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) - find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) + # Can't do that, it's not always compiled. See FindKMetaData.cmake + #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) diff --git a/modules/FindKMetaData.cmake b/modules/FindKMetaData.cmake new file mode 100644 index 00000000..eef6727c --- /dev/null +++ b/modules/FindKMetaData.cmake @@ -0,0 +1,47 @@ +# Once done this will define +# +# KMETADATA_FOUND - system has KMetaData +# KMETADATA_INCLUDE_DIR - the KMetaData include directory +# KMETADATA_LIBRARIES - Link these to use KMetaData +# KMETADATA_DEFINITIONS - Compiler switches required for using KMetaData +# + +FIND_PATH(KMETADATA_INCLUDE_DIR + NAMES + kmetadata/kmetadata.h + PATHS + /usr/include + /usr/local/include + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(KMETADATA_LIBRARIES + NAMES + kmetadata + kmetadatatools + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +if(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) + set(KMetaData_FOUND TRUE) +endif(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) + +if(KMetaData_FOUND) + if(NOT KMetaData_FIND_QUIETLY) + message(STATUS "Found KMetaData: ${KMETADATA_LIBRARIES}") + endif(NOT KMetaData_FIND_QUIETLY) +else(KMetaData_FOUND) + if(KMetaData_FIND_REQUIRED) + if(NOT KMETADATA_INCLUDE_DIR) + message(FATAL_ERROR "Could not find KMetaData includes.") + endif(NOT KMETADATA_INCLUDE_DIR) + if(NOT KMETADATA_LIBRARIES) + message(FATAL_ERROR "Could not find KMetaData library.") + endif(NOT KMETADATA_LIBRARIES) + endif(KMetaData_FIND_REQUIRED) +endif(KMetaData_FOUND) -- cgit v1.2.1 From 7e6ddf31d8d7b1d91b28195fe31b4804e07f7c17 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 3 May 2007 19:58:15 +0000 Subject: disable -fno-threadsafe-statics svn path=/trunk/KDE/kdelibs/; revision=660803 --- modules/FindKDE4Internal.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 43580646..60ac0bf9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -691,7 +691,9 @@ if (CMAKE_COMPILER_IS_GNUCXX) # save a little by making local statics not threadsafe check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) if (__KDE_HAVE_NO_THREADSAFE_STATICS) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") + # currently disabled for Alpha1 due to what appears + # to be a compiler bug (investigating - dirk) + #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") endif (__KDE_HAVE_NO_THREADSAFE_STATICS) # visibility support -- cgit v1.2.1 From 3ae765525324913f27850d64fc99ab10eae403ea Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Thu, 3 May 2007 22:06:32 +0000 Subject: Add link to the bug report svn path=/trunk/KDE/kdelibs/; revision=660843 --- modules/FindKDE4Internal.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 60ac0bf9..c481e3e8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -692,7 +692,8 @@ if (CMAKE_COMPILER_IS_GNUCXX) check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) if (__KDE_HAVE_NO_THREADSAFE_STATICS) # currently disabled for Alpha1 due to what appears - # to be a compiler bug (investigating - dirk) + # to be a compiler bug + # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806 #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") endif (__KDE_HAVE_NO_THREADSAFE_STATICS) -- cgit v1.2.1 From 39013fae956589cfa296bd7e28673f45af2ab774 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 7 May 2007 13:50:30 +0000 Subject: rename modules to kdeinit4 svn path=/trunk/KDE/kdelibs/; revision=662109 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 86e81ce2..8e382b0d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -720,7 +720,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) - + set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) configure_file(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) -- cgit v1.2.1 From 113b725ce7f7c0283a3c5fec5dc6e42d85dda276 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 7 May 2007 17:34:53 +0000 Subject: meinproc -> meinproc4 svn path=/trunk/KDE/kdelibs/; revision=662242 --- modules/FindKDE4Internal.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c481e3e8..a0bdf18e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -16,7 +16,7 @@ # compile KDE software: # # KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable -# KDE4_MEINPROC_EXECUTABLE - the meinproc executable +# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable # KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable # # The following variables point to the location of the KDE libraries, @@ -350,12 +350,12 @@ if (_kdeBootStrapping) set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc.shell ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) endif (WIN32) @@ -364,7 +364,7 @@ if (_kdeBootStrapping) # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) - set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc) + set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) set(KDE4_INSTALLED_VERSION_OK TRUE) @@ -488,8 +488,8 @@ else (_kdeBootStrapping) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc ) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) -- cgit v1.2.1 From 0a13d7a037214f43a2a4227c7ccd19dafdffc546 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 13 May 2007 00:06:15 +0000 Subject: MAILTRANSPORT libs stuff svn path=/trunk/KDE/kdelibs/; revision=664037 --- modules/FindKdepimLibs.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index ac377545..a21fc52c 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -39,6 +39,8 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KRESOURCES_LIBRARY NAMES kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KRESOURCES_LIBS ${kresources_LIB_DEPENDS} ${KDE4_KRESOURCES_LIBRARY} ) + find_library(KDE4_MAILTRANSPORT_LIBRARY NAMES mailtransport PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_MAILTRANSPORT_LIBS ${mailtransport_LIB_DEPENDS} ${KDE4_MAILTRANSPORT_LIBRARY} ) find_library(KDE4_SYNDICATION_LIBRARY NAMES syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_SYNDICATION_LIBS ${syndication_LIB_DEPENDS} ${KDE4_SYNDICATION_LIBRARY} ) @@ -57,6 +59,7 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set(KDE4_KCAL_LIBS kcal) set(KDE4_KTNEF_LIBS ktnef) set(KDE4_KRESOURCES_LIBS kresources) + set(KDE4_MAILTRANSPORT_LIBS mailtransport) set(KDE4_SYNDICATION_LIBS syndication) set(KDE4_KLDAP_LIBS kldap) set(KDE4_KMIME_LIBS kmime) -- cgit v1.2.1 From 92ed9479edba821033043ce0d49fabcf02e3d25f Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 14 May 2007 08:43:44 +0000 Subject: Move kconfig_compiler to libexec Mention bug in FindKDE4Internal when people try configuring a module with a prefix != kde prefix CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=664536 --- modules/FindKDE4Internal.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a0bdf18e..0672e5ae 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -483,10 +483,11 @@ else (_kdeBootStrapping) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 + # ###### TODO: this is the wrong path to look into. We need the KDE4 include dir, not the one where the current module will be installed find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${LIBEXEC_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) # Why do it again? find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) -- cgit v1.2.1 From e21ac892370c4c7dd294ed75ccc2d1f3c5670b72 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 15 May 2007 01:15:59 +0000 Subject: -add comment why find_xxx() is called twice Alex svn path=/trunk/KDE/kdelibs/; revision=664860 --- modules/FindKDE4Internal.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0672e5ae..d94e3ca6 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -486,8 +486,10 @@ else (_kdeBootStrapping) # ###### TODO: this is the wrong path to look into. We need the KDE4 include dir, not the one where the current module will be installed find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) + # at first look in LIBEXEC_INSTALL_DIR and no default paths, + # if this didn't succeed, the second call makes cmake search again, but in the standard paths find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${LIBEXEC_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) # Why do it again? + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) -- cgit v1.2.1 From 7fe12f80f5cd3df56073a977790dc5507003cfd3 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Thu, 17 May 2007 19:11:28 +0000 Subject: ld system support for translation scripting (#2). svn path=/trunk/KDE/kdelibs/; revision=665741 --- modules/KDE4Macros.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 8e382b0d..030a4f2d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -239,6 +239,14 @@ macro(KDE4_INSTALL_PO_FILES _lang) endforeach(_current_PO_FILES) endmacro(KDE4_INSTALL_PO_FILES) +macro(KDE4_INSTALL_TS_FILES _lang _sdir) + file(GLOB_RECURSE _ts_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${_sdir}/*) + foreach(_current_TS_FILES ${_ts_files}) + get_filename_component(_subpath ${_current_TS_FILES} PATH) + install(FILES ${_current_TS_FILES} DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_SCRIPTS/${_subpath}) + endforeach(_current_TS_FILES) +endmacro(KDE4_INSTALL_TS_FILES) + macro (KDE4_INSTALL_HANDBOOK) get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) get_filename_component(_basename ${_tmp_FILE} NAME_WE) -- cgit v1.2.1 From aa6407716993e23104c6eba2f481db49a2833188 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Thu, 17 May 2007 22:00:01 +0000 Subject: revert my change for win32 libexec and instead point LIBEXEC_INSTALL_DIR to BIN_INSTALL_DIR on win32 svn path=/trunk/KDE/kdelibs/; revision=665787 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d94e3ca6..9f63effe 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -258,7 +258,11 @@ _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") +if(WIN32) +_set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") +else(WIN32) _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") +endif(WIN32) _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") -- cgit v1.2.1 From 8253e81460901ad5ff0e40e9e04d7ac8f4fbe69c Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 18 May 2007 08:18:50 +0000 Subject: Revert kconfig_compiler move, it's a devel tool svn path=/trunk/KDE/kdelibs/; revision=665848 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9f63effe..8c617abd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -492,7 +492,7 @@ else (_kdeBootStrapping) # at first look in LIBEXEC_INSTALL_DIR and no default paths, # if this didn't succeed, the second call makes cmake search again, but in the standard paths - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${LIBEXEC_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) -- cgit v1.2.1 From 5c569916d64e29c81c2b8e2ecead3709d0a76a95 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 21 May 2007 08:38:35 +0000 Subject: After discut with Alex, it was just a pb with my cmake cvs version. So revert it. It's defined now with official cmake version svn path=/trunk/KDE/kdelibs/; revision=666910 --- modules/FindKDE4Internal.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8c617abd..fae5c7c9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -487,8 +487,7 @@ else (_kdeBootStrapping) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 - # ###### TODO: this is the wrong path to look into. We need the KDE4 include dir, not the one where the current module will be installed - find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) + find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_DATA_INSTALL_DIR} NO_DEFAULT_PATH ) # at first look in LIBEXEC_INSTALL_DIR and no default paths, # if this didn't succeed, the second call makes cmake search again, but in the standard paths -- cgit v1.2.1 From ad8b13ba068d2f57796631684fa8c899a1533705 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 21 May 2007 14:02:59 +0000 Subject: a bit more readable output. still can't build anything though svn path=/trunk/KDE/kdelibs/; revision=666993 --- modules/FindKDE4Internal.cmake | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fae5c7c9..5fd32464 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -786,15 +786,15 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE4 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.0 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) - message(STATUS "Didn't find KDE4 headers") + message(STATUS "ERROR: unable to find KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE4 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) - message(STATUS "Didn't find KDE4 core library") + message(STATUS "ERROR: unable to find KDE 4 core library") endif(KDE4_LIB_DIR) endif (NOT _kdeBootStrapping) @@ -811,9 +811,13 @@ if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) kde4_print_results() if (NOT KDE4_INSTALLED_VERSION_OK) message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") - else (NOT KDE4_INSTALLED_VERSION_OK) - message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") endif (NOT KDE4_INSTALLED_VERSION_OK) + + if (NOT KDE4_KCFGC_EXECUTABLE) + message(FATAL_ERROR "ERROR: could not detect a usable kconfig-compiler") + endif (NOT KDE4_KCFGC_EXECUTABLE) + + message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) -- cgit v1.2.1 From 8bcb43899b46f7a8b179ebf1f42447abb877166a Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 21 May 2007 14:13:18 +0000 Subject: Revert - there's no such var; the proper fix for this looks a bit involved and needs testing; let's get Dirk going meanwhile. svn path=/trunk/KDE/kdelibs/; revision=666995 --- modules/FindKDE4Internal.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5fd32464..7cd499c3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -487,7 +487,8 @@ else (_kdeBootStrapping) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 - find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_DATA_INSTALL_DIR} NO_DEFAULT_PATH ) + # ###### TODO: this is the wrong path to look into. We need the KDE4 include dir, not the one where the current module will be installed + find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) # at first look in LIBEXEC_INSTALL_DIR and no default paths, # if this didn't succeed, the second call makes cmake search again, but in the standard paths -- cgit v1.2.1 From 23687aab9c367ac600e03d7ab4dbe1bc644ce359 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 21 May 2007 14:15:06 +0000 Subject: Ah! KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake svn path=/trunk/KDE/kdelibs/; revision=666996 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7cd499c3..9885774f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -487,8 +487,8 @@ else (_kdeBootStrapping) get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 - # ###### TODO: this is the wrong path to look into. We need the KDE4 include dir, not the one where the current module will be installed - find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) + # KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake + find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) # at first look in LIBEXEC_INSTALL_DIR and no default paths, # if this didn't succeed, the second call makes cmake search again, but in the standard paths -- cgit v1.2.1 From ca94885ece739ce74d2522803fb931c696985654 Mon Sep 17 00:00:00 2001 From: Maks Orlovich Date: Thu, 24 May 2007 22:26:28 +0000 Subject: Add a flag for building testregression and some build instructions. Thanks to dfaure and tronical for helping me out with the build systems! svn path=/trunk/KDE/kdelibs/; revision=668049 --- modules/FindKDE4Internal.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9885774f..e3eb27d8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -310,6 +310,7 @@ get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") +option(KDE4_BUILD_TESTREGRESSION "Build KHTML's testregression. Note: this disables hidden visibility") if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) @@ -707,6 +708,11 @@ if (CMAKE_COMPILER_IS_GNUCXX) # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) + # Disable it if testregression is built.. + if (KDE4_BUILD_TESTREGRESSION) + set (__KDE_HAVE_GCC_VISIBILITY 0) + endif (KDE4_BUILD_TESTREGRESSION) + # get the gcc version exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) -- cgit v1.2.1 From 6b910fec68c1bb28f06e8833f4e2880300233a92 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Thu, 24 May 2007 22:35:46 +0000 Subject: Fix installation of PO files. svn path=/trunk/KDE/kdelibs/; revision=668052 --- modules/KDE4Macros.cmake | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 030a4f2d..da9663fe 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -232,11 +232,10 @@ macro(KDE4_CREATE_PO_FILES) endmacro(KDE4_CREATE_PO_FILES) macro(KDE4_INSTALL_PO_FILES _lang) - file(GLOB _po_files ${CMAKE_CURRENT_BINARY_DIR}/*.gmo) - foreach(_current_PO_FILES ${_po_files}) - get_filename_component(_basename ${_current_PO_FILES} NAME_WE) - install(FILES ${_current_PO_FILES} DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${_basename}.mo) - endforeach(_current_PO_FILES) + foreach(_current_GMO_FILES ${_list_gmo}) + get_filename_component(_basename ${_current_GMO_FILES} NAME_WE) + install(FILES ${_current_GMO_FILES} DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${_basename}.mo) + endforeach(_current_GMO_FILES) endmacro(KDE4_INSTALL_PO_FILES) macro(KDE4_INSTALL_TS_FILES _lang _sdir) -- cgit v1.2.1 From 0aa034d10384a532988c46cff9086cd00692cb45 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Sat, 26 May 2007 18:33:52 +0000 Subject: Installation of PO files: do not rely on previous macro having been run. svn path=/trunk/KDE/kdelibs/; revision=668553 --- modules/KDE4Macros.cmake | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index da9663fe..0f82da9a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -232,10 +232,11 @@ macro(KDE4_CREATE_PO_FILES) endmacro(KDE4_CREATE_PO_FILES) macro(KDE4_INSTALL_PO_FILES _lang) - foreach(_current_GMO_FILES ${_list_gmo}) - get_filename_component(_basename ${_current_GMO_FILES} NAME_WE) - install(FILES ${_current_GMO_FILES} DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${_basename}.mo) - endforeach(_current_GMO_FILES) + file(GLOB _po_files *.po) + foreach(_current_PO_FILES ${_po_files}) + get_filename_component(_basename ${_current_PO_FILES} NAME_WE) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${_basename}.mo) + endforeach(_current_PO_FILES) endmacro(KDE4_INSTALL_PO_FILES) macro(KDE4_INSTALL_TS_FILES _lang _sdir) -- cgit v1.2.1 From 5c089deeaf0ba27a8ad294cef83b4ac81d302e21 Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Sat, 26 May 2007 19:13:24 +0000 Subject: Make it work with the new command line option requirements for kmetadata_rcgen. svn path=/trunk/KDE/kdelibs/; revision=668560 --- modules/KMetaDataMacros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KMetaDataMacros.cmake b/modules/KMetaDataMacros.cmake index 7e4215e9..b65542e8 100644 --- a/modules/KMetaDataMacros.cmake +++ b/modules/KMetaDataMacros.cmake @@ -28,22 +28,22 @@ macro(KMETADATA_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_source FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) execute_process( - COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ ${ontofile} + COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} OUTPUT_VARIABLE ${out_headers} ) execute_process( - COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ ${ontofile} + COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ --ontologies ${ontofile} OUTPUT_VARIABLE ${out_sources} ) execute_process( - COMMAND ${RCGEN} --listincludes ${ontofile} + COMMAND ${RCGEN} --listincludes --ontologies ${ontofile} OUTPUT_VARIABLE ${out_includes} ) execute_process( - COMMAND ${RCGEN} --writeall --templates ${ARGN} ${targetdir}/ ${ontofile} + COMMAND ${RCGEN} --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} ) endmacro(KMETADATA_GENERATE_FROM_ONTOLOGY) -- cgit v1.2.1 From 021739ef3018d7b3fbd5b2713d040eb311461c55 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 28 May 2007 09:11:12 +0000 Subject: Need by playground/pim svn path=/trunk/KDE/kdelibs/; revision=668978 --- modules/FindKdepim.cmake | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 modules/FindKdepim.cmake (limited to 'modules') diff --git a/modules/FindKdepim.cmake b/modules/FindKdepim.cmake new file mode 100644 index 00000000..ac33bc1f --- /dev/null +++ b/modules/FindKdepim.cmake @@ -0,0 +1,46 @@ +# cmake macro to see if we have kdepim installed + +# KDEPIM_INCLUDE_DIR +# KDEPIM_FOUND +# Copyright (C) 2007 Laurent Montel +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (KDEPIM_INCLUDE_DIR) + # Already in cache, be silent + set(KDEPIM_FOUND TRUE) +endif (KDEPIM_INCLUDE_DIR) + + +FIND_PATH(KDEPIM_INCLUDE_DIR NAMES kdepimprotocols.h + PATHS + ${INCLUDE_INSTALL_DIR} + /usr/include + /usr/local/include +) + +FIND_LIBRARY(KDEPIM_LIBRARIES NAMES kdepim + PATHS + ${LIB_INSTALL_DIR} + /usr/lib + /usr/local/lib +) + +if (KDEPIM_LIBRARIES AND KDEPIM_INCLUDE_DIR) + set(KDEPIM_FOUND TRUE) +endif (KDEPIM_LIBRARIES AND KDEPIM_INCLUDE_DIR) + +if (KDEPIM_FOUND) + if (NOT Kdepim_FIND_QUIETLY) + message(STATUS "Found Kdepim: ${KDEPIM_LIBRARIES}") + endif (NOT Kdepim_FIND_QUIETLY) +else (KDEPIM_FOUND) + if (Kdepim_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Kdepim") + endif (Kdepim_FIND_REQUIRED) +endif (KDEPIM_FOUND) + +MARK_AS_ADVANCED(KDEPIM_INCLUDE_DIR KDEPIM_LIBRARIES) + -- cgit v1.2.1 From 628d21c036e5c79cbd8b50df7150a7a77999283f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 30 May 2007 13:14:52 +0000 Subject: Patch requested by Coolo. " you configure kdelibs to CMAKE_INSTALL_PREFIX=/usr CONFIG_INSTALL_DIR=/etc/kde" "then you go to kdetoys and do CMAKE_INSTALL_PREFIX=/usr" cmake didn't use CONFIG_INSTALL_DIR. Now we store value into KDELibsDependencies.cmake and we can use directly. not necessary to re-specify CONFIG_INSTALL_DIR in each module. svn path=/trunk/KDE/kdelibs/; revision=669808 --- modules/FindKDE4Internal.cmake | 38 ++++++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e3eb27d8..e629ab05 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -227,6 +227,23 @@ include (CheckCXXSourceCompiles) # the following are directories where stuff will be installed to set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) +#are we trying to compile kdelibs ? +#then enter bootstrap mode +if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_kdeBootStrapping TRUE) + message(STATUS "Building kdelibs...") +else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_kdeBootStrapping FALSE) +endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + +# get the directory of the current file, used later on in the file +get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) + + +if (NOT _kdeBootStrapping) + # this file contains all dependencies of all libraries of kdelibs, Alex + include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) +endif (NOT _kdeBootStrapping) # this macro implements some very special logic how to deal with the cache # by default the various install locations inherit their value from theit "parent" variable @@ -243,8 +260,14 @@ set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) # But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location # this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. macro(_SET_FANCY _var _value _comment) + if (NOT DEFINED KDE4_${_var}) + set(predefinedvalue ${_value}) + else (NOT DEFINED KDE4_${_var}) + set(predefinedvalue ${KDE4_${_var}}) + endif(NOT DEFINED KDE4_${_var}) + if (NOT DEFINED ${_var}) - set(${_var} ${_value}) + set(${_var} ${predefinedvalue}) else (NOT DEFINED ${_var}) set(${_var} "${${_var}}" CACHE PATH "${_comment}") endif (NOT DEFINED ${_var}) @@ -302,9 +325,6 @@ _set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The ################################# -# get the directory of the current file, used later on in the file -get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) - # the following are directories where stuff will be installed to @@ -324,16 +344,6 @@ option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") #now try to find some kde stuff -#are we trying to compile kdelibs ? -#then enter bootstrap mode -if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping TRUE) - message(STATUS "Building kdelibs...") -else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping FALSE) -endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - - if (_kdeBootStrapping) set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) -- cgit v1.2.1 From 4c439a743b34806807791aa95bf4e336e09d7ce8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 30 May 2007 15:48:30 +0000 Subject: partly sync with FindX11.cmake from cmake cvs, mainly upper/lower case Alex svn path=/trunk/KDE/kdelibs/; revision=669849 --- modules/FindX11.cmake | 463 +++++++++++++++++++++++++------------------------- 1 file changed, 233 insertions(+), 230 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 18671bb3..5126582d 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -20,28 +20,31 @@ # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. -if (UNIX) - set(X11_FOUND 0) - - set(X11_INC_SEARCH_PATH +IF (UNIX) + SET(X11_FOUND 0) + # X11 is never a framework and some header files may be + # found in tcl on the mac + SET(CMAKE_FIND_FRAMEWORK_SAVE ${CMAKE_FIND_FRAMEWORK}) + SET(CMAKE_FIND_FRAMEWORK NEVER) + SET(X11_INC_SEARCH_PATH /usr/pkg/xorg/include /usr/pkg/include - /usr/local/include - /usr/include - /usr/X11R6/include + /usr/X11R6/include + /usr/local/include /usr/include/X11 - /usr/openwin/include - /usr/openwin/share/include + /usr/openwin/include + /usr/openwin/share/include /opt/graphics/OpenGL/include + /usr/include ) - set(X11_LIB_SEARCH_PATH + SET(X11_LIB_SEARCH_PATH /usr/pkg/xorg/lib /usr/pkg/lib - /usr/local/lib - /usr/lib /usr/X11R6/lib - /usr/openwin/lib + /usr/local/lib + /usr/openwin/lib + /usr/lib ) FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) @@ -49,7 +52,7 @@ if (UNIX) # Look for includes; keep the list sorted by name of the cmake *_INCLUDE_PATH # variable (which doesn't need to match the include file name). - + # Solaris lacks XKBrules.h, so we should skip kxkbd there. FIND_PATH(X11_ICE_INCLUDE_PATH X11/ICE/ICE.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) @@ -101,241 +104,241 @@ if (UNIX) FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - set(X11_LIBRARY_DIR "") - if (X11_X11_LIB) - get_filename_component(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) - endif (X11_X11_LIB) - - if (X11_X11_INCLUDE_PATH) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) - endif (X11_X11_INCLUDE_PATH) - - if (X11_Xlib_INCLUDE_PATH) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH}) - endif (X11_Xlib_INCLUDE_PATH) - - if (X11_Xutil_INCLUDE_PATH) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) - endif (X11_Xutil_INCLUDE_PATH) - - if(X11_Xshape_INCLUDE_PATH) - set(X11_Xshape_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) - endif(X11_Xshape_INCLUDE_PATH) - - if (X11_X11_LIB) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) - endif (X11_X11_LIB) - - if (X11_Xext_LIB) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) - endif (X11_Xext_LIB) - - if(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) - set(X11_XFT_FOUND TRUE) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) - endif(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) - - if(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) - set(X11_XV_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) - endif(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) - - if (X11_Xau_LIB) - set(X11_Xau_FOUND TRUE) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) - endif (X11_Xau_LIB) - - if (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) - set(X11_Xdmcp_FOUND TRUE) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xdmcp_LIB}) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdmcp_INCLUDE_PATH}) - endif (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) - - if (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) - set(X11_Xaccess_FOUND TRUE) - set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xaccess_INCLUDE_PATH}) - endif (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) - - if (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) - set(X11_Xpm_FOUND TRUE) - set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xpm_LIB}) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xpm_INCLUDE_PATH}) - endif (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) - - if (X11_Xcomposite_INCLUDE_PATH) - set(X11_Xcomposite_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) - endif (X11_Xcomposite_INCLUDE_PATH) - - if (X11_Xdamage_INCLUDE_PATH) - set(X11_Xdamage_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) - endif (X11_Xdamage_INCLUDE_PATH) - - if (X11_XShm_INCLUDE_PATH) - set(X11_XShm_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XShm_INCLUDE_PATH}) - endif (X11_XShm_INCLUDE_PATH) - - if (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) - set(X11_XTest_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH}) - endif (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) - - if (X11_Xinerama_INCLUDE_PATH) - set(X11_Xinerama_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinerama_INCLUDE_PATH}) - endif (X11_Xinerama_INCLUDE_PATH) - - if (X11_Xfixes_INCLUDE_PATH) - set(X11_Xfixes_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xfixes_INCLUDE_PATH}) - endif (X11_Xfixes_INCLUDE_PATH) - - if (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) - set(X11_Xrender_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrender_INCLUDE_PATH}) - endif (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) - - if (X11_Xrandr_INCLUDE_PATH) - set(X11_Xrandr_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrandr_INCLUDE_PATH}) - endif (X11_Xrandr_INCLUDE_PATH) - - if (X11_Xxf86misc_INCLUDE_PATH) - set(X11_Xxf86misc_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xxf86misc_INCLUDE_PATH}) - endif (X11_Xxf86misc_INCLUDE_PATH) - - if (X11_xf86vmode_INCLUDE_PATH) - set(X11_xf86vmode_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_xf86vmode_INCLUDE_PATH}) - endif (X11_xf86vmode_INCLUDE_PATH) - - if (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) - set(X11_Xcursor_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcursor_INCLUDE_PATH}) - endif (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) - - if (X11_Xscreensaver_INCLUDE_PATH) - set(X11_Xscreensaver_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xscreensaver_INCLUDE_PATH}) - endif (X11_Xscreensaver_INCLUDE_PATH) - - if (X11_dpms_INCLUDE_PATH) - set(X11_dpms_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_dpms_INCLUDE_PATH}) - endif (X11_dpms_INCLUDE_PATH) - - if (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) - set(X11_Xkb_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkb_INCLUDE_PATH} ) - endif (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) - - if (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) - set(X11_Xinput_FOUND TRUE) - set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) - endif (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) - - if(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) - set(X11_ICE_FOUND TRUE) - endif(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) + SET(X11_LIBRARY_DIR "") + IF(X11_X11_LIB) + GET_FILENAME_COMPONENT(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) + ENDIF(X11_X11_LIB) + + IF(X11_X11_INCLUDE_PATH) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) + ENDIF(X11_X11_INCLUDE_PATH) + + IF(X11_Xlib_INCLUDE_PATH) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH}) + ENDIF(X11_Xlib_INCLUDE_PATH) + + IF(X11_Xutil_INCLUDE_PATH) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) + ENDIF(X11_Xutil_INCLUDE_PATH) + + IF(X11_Xshape_INCLUDE_PATH) + SET(X11_Xshape_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) + ENDIF(X11_Xshape_INCLUDE_PATH) + + IF(X11_X11_LIB) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) + ENDIF(X11_X11_LIB) + + IF(X11_Xext_LIB) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) + ENDIF(X11_Xext_LIB) + + IF(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + SET(X11_XFT_FOUND TRUE) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) + ENDIF(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + + IF(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) + SET(X11_XV_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) + ENDIF(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) + + IF (X11_Xau_LIB) + SET(X11_Xau_FOUND TRUE) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) + ENDIF (X11_Xau_LIB) + + IF (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) + SET(X11_Xdmcp_FOUND TRUE) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xdmcp_LIB}) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdmcp_INCLUDE_PATH}) + ENDIF (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) + + IF (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) + SET(X11_Xaccess_FOUND TRUE) + SET(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH}) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xaccess_INCLUDE_PATH}) + ENDIF (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH) + + IF (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) + SET(X11_Xpm_FOUND TRUE) + SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xpm_LIB}) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xpm_INCLUDE_PATH}) + ENDIF (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) + + IF (X11_Xcomposite_INCLUDE_PATH) + SET(X11_Xcomposite_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) + ENDIF (X11_Xcomposite_INCLUDE_PATH) + + IF (X11_Xdamage_INCLUDE_PATH) + SET(X11_Xdamage_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) + ENDIF (X11_Xdamage_INCLUDE_PATH) + + IF (X11_XShm_INCLUDE_PATH) + SET(X11_XShm_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XShm_INCLUDE_PATH}) + ENDIF (X11_XShm_INCLUDE_PATH) + + IF (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) + SET(X11_XTest_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH}) + ENDIF (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) + + IF (X11_Xinerama_INCLUDE_PATH) + SET(X11_Xinerama_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinerama_INCLUDE_PATH}) + ENDIF (X11_Xinerama_INCLUDE_PATH) + + IF (X11_Xfixes_INCLUDE_PATH) + SET(X11_Xfixes_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xfixes_INCLUDE_PATH}) + ENDIF (X11_Xfixes_INCLUDE_PATH) + + IF (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) + SET(X11_Xrender_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrender_INCLUDE_PATH}) + ENDIF (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) + + IF (X11_Xrandr_INCLUDE_PATH) + SET(X11_Xrandr_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrandr_INCLUDE_PATH}) + ENDIF (X11_Xrandr_INCLUDE_PATH) + + IF (X11_Xxf86misc_INCLUDE_PATH) + SET(X11_Xxf86misc_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xxf86misc_INCLUDE_PATH}) + ENDIF (X11_Xxf86misc_INCLUDE_PATH) + + IF (X11_xf86vmode_INCLUDE_PATH) + SET(X11_xf86vmode_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_xf86vmode_INCLUDE_PATH}) + ENDIF (X11_xf86vmode_INCLUDE_PATH) + + IF (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) + SET(X11_Xcursor_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcursor_INCLUDE_PATH}) + ENDIF (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) + + IF (X11_Xscreensaver_INCLUDE_PATH) + SET(X11_Xscreensaver_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xscreensaver_INCLUDE_PATH}) + ENDIF (X11_Xscreensaver_INCLUDE_PATH) + + IF (X11_dpms_INCLUDE_PATH) + SET(X11_dpms_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_dpms_INCLUDE_PATH}) + ENDIF (X11_dpms_INCLUDE_PATH) + + IF (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) + SET(X11_Xkb_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkb_INCLUDE_PATH} ) + ENDIF (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) + + IF (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) + SET(X11_Xinput_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) + ENDIF (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) + + IF(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) + SET(X11_ICE_FOUND TRUE) + ENDIF(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) # Deprecated variable for backwards compatibility with CMake 1.4 - if (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) - set(X11_FOUND 1) - endif (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) + IF (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) + SET(X11_FOUND 1) + ENDIF (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) - if (X11_FOUND) - include(CheckFunctionExists) - include(CheckLibraryExists) + IF(X11_FOUND) + INCLUDE(CheckFunctionExists) + INCLUDE(CheckLibraryExists) # Translated from an autoconf-generated configure script. # See libs.m4 in autoconf's m4 directory. - if ($ENV{ISC} MATCHES "^yes$") - set(X11_X_EXTRA_LIBS -lnsl_s -linet) - else ($ENV{ISC} MATCHES "^yes$") - set(X11_X_EXTRA_LIBS "") + IF($ENV{ISC} MATCHES "^yes$") + SET(X11_X_EXTRA_LIBS -lnsl_s -linet) + ELSE($ENV{ISC} MATCHES "^yes$") + SET(X11_X_EXTRA_LIBS "") # See if XOpenDisplay in X11 works by itself. - check_library_exists("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) - if (NOT X11_LIB_X11_SOLO) + CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO) + IF(NOT X11_LIB_X11_SOLO) # Find library needed for dnet_ntoa. - check_library_exists("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) - if (X11_LIB_DNET_HAS_DNET_NTOA) - set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) - else (X11_LIB_DNET_HAS_DNET_NTOA) - check_library_exists("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) - if (X11_LIB_DNET_STUB_HAS_DNET_NTOA) - set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) - endif (X11_LIB_DNET_STUB_HAS_DNET_NTOA) - endif (X11_LIB_DNET_HAS_DNET_NTOA) - endif (NOT X11_LIB_X11_SOLO) + CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA) + IF (X11_LIB_DNET_HAS_DNET_NTOA) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet) + ELSE (X11_LIB_DNET_HAS_DNET_NTOA) + CHECK_LIBRARY_EXISTS("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA) + IF (X11_LIB_DNET_STUB_HAS_DNET_NTOA) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub) + ENDIF (X11_LIB_DNET_STUB_HAS_DNET_NTOA) + ENDIF (X11_LIB_DNET_HAS_DNET_NTOA) + ENDIF(NOT X11_LIB_X11_SOLO) # Find library needed for gethostbyname. - check_function_exists("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) - if (NOT CMAKE_HAVE_GETHOSTBYNAME) - check_library_exists("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) - else (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - check_library_exists("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) - if (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) - set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) - endif (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) - endif (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) - endif (NOT CMAKE_HAVE_GETHOSTBYNAME) + CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME) + IF(NOT CMAKE_HAVE_GETHOSTBYNAME) + CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + IF (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl) + ELSE (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + CHECK_LIBRARY_EXISTS("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + IF (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd) + ENDIF (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME) + ENDIF (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME) + ENDIF(NOT CMAKE_HAVE_GETHOSTBYNAME) # Find library needed for connect. - check_function_exists("connect" CMAKE_HAVE_CONNECT) - if (NOT CMAKE_HAVE_CONNECT) - check_library_exists("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) - if (CMAKE_LIB_SOCKET_HAS_CONNECT) - set(X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) - endif (CMAKE_LIB_SOCKET_HAS_CONNECT) - endif (NOT CMAKE_HAVE_CONNECT) + CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT) + IF(NOT CMAKE_HAVE_CONNECT) + CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT) + IF (CMAKE_LIB_SOCKET_HAS_CONNECT) + SET (X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS}) + ENDIF (CMAKE_LIB_SOCKET_HAS_CONNECT) + ENDIF(NOT CMAKE_HAVE_CONNECT) # Find library needed for remove. - check_function_exists("remove" CMAKE_HAVE_REMOVE) - if (NOT CMAKE_HAVE_REMOVE) - check_library_exists("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) - if (CMAKE_LIB_POSIX_HAS_REMOVE) - set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) - endif (CMAKE_LIB_POSIX_HAS_REMOVE) - endif (NOT CMAKE_HAVE_REMOVE) + CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE) + IF(NOT CMAKE_HAVE_REMOVE) + CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE) + IF (CMAKE_LIB_POSIX_HAS_REMOVE) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix) + ENDIF (CMAKE_LIB_POSIX_HAS_REMOVE) + ENDIF(NOT CMAKE_HAVE_REMOVE) # Find library needed for shmat. - check_function_exists("shmat" CMAKE_HAVE_SHMAT) - if (NOT CMAKE_HAVE_SHMAT) - check_library_exists("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) - if (CMAKE_LIB_IPS_HAS_SHMAT) - set(X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) - endif (CMAKE_LIB_IPS_HAS_SHMAT) - endif (NOT CMAKE_HAVE_SHMAT) - endif ($ENV{ISC} MATCHES "^yes$") - - if (X11_ICE_FOUND) - check_library_exists("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" + CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT) + IF(NOT CMAKE_HAVE_SHMAT) + CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT) + IF (CMAKE_LIB_IPS_HAS_SHMAT) + SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) + ENDIF (CMAKE_LIB_IPS_HAS_SHMAT) + ENDIF (NOT CMAKE_HAVE_SHMAT) + ENDIF ($ENV{ISC} MATCHES "^yes$") + + IF (X11_ICE_FOUND) + CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - if (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - set(X11_X_PRE_LIBS -lSM ${X11_ICE_LIB}) - endif (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - endif (X11_ICE_FOUND) + IF (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + SET(X11_X_PRE_LIBS -lSM ${X11_ICE_LIB}) + ENDIF (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + ENDIF (X11_ICE_FOUND) # Build the final list of libraries. - set(X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) + SET(X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS}) - message(STATUS "Found X11: ${X11_X11_LIB}") - else (X11_FOUND) - if (X11_FIND_REQUIRED) - message(FATAL_ERROR "Could not find X11") - endif (X11_FIND_REQUIRED) - endif (X11_FOUND) + MESSAGE(STATUS "Found X11: ${X11_X11_LIB}") + ELSE (X11_FOUND) + IF (X11_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find X11") + ENDIF (X11_FIND_REQUIRED) + ENDIF (X11_FOUND) - mark_as_advanced( + MARK_AS_ADVANCED( X11_X11_INCLUDE_PATH X11_X11_LIB X11_Xext_LIB @@ -387,7 +390,7 @@ if (UNIX) X11_ICE_LIB X11_ICE_INCLUDE_PATH ) + SET(CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK_SAVE}) +ENDIF (UNIX) -endif (UNIX) - -# X11_FIND_REQUIRED_ could be checked too, but they were introduced in cmake 2.4.4 +# X11_FIND_REQUIRED_ could be checked too -- cgit v1.2.1 From 56745a13db976fccfda8dac5328008892f8886e5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 1 Jun 2007 17:26:46 +0000 Subject: -add some more X11_xxx_FOUND variables -if there is a X11_Foo_LIB and a X11_Foo_INCLUDE_PATH variables for a component, set X11_Foo_FOUND only to true if both are found -added X11_Xv_FOUND and X11_Xft_FOUND, X11_XV_FOUND and X11_XFT_FOUND will be removed soon Alex p.s. if this breaks something please CC me, both to neundorf@kde.org and alex.neundorf@kitware.com svn path=/trunk/KDE/kdelibs/; revision=670488 --- modules/FindX11.cmake | 97 +++++++++++++++++++++++++++++++++------------------ 1 file changed, 64 insertions(+), 33 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 5126582d..fe1de788 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -5,17 +5,35 @@ # X11_LIBRARIES - link against these to use X11 # # and also the following more fine grained variables: -# Include paths: X11_ICE_INCLUDE_PATH X11_Xaccessrules_INCLUDE_PATH, X11_Xaccessstr_INCLUDE_PATH, -# X11_Xcomposite_INCLUDE_PATH, X11_Xcursor_INCLUDE_PATH, X11_Xdamage_INCLUDE_PATH, -# X11_Xdmcp_INCLUDE_PATH, X11_dpms_INCLUDE_PATH, X11_Xf86misc_INCLUDE_PATH, X11_xf86vmode_INCLUDE_PATH, -# X11_Xfixes_INCLUDE_PATH, X11_Xft_INCLUDE_PATH, X11_Xinerama_INCLUDE_PATH, X11_Xinput_INCLUDE_PATH, -# X11_Xkb_INCLUDE_PATH, X11_Xkblib_INCLUDE_PATH, X11_Xpm_INCLUDE_PATH, X11_XTest_INCLUDE_PATH, -# X11_XShm_INCLUDE_PATH, X11_Xrandr_INCLUDE_PATH, X11_Xrender_INCLUDE_PATH, -# X11_Xscreensaver_INCLUDE_PATH, X11_Xshape_INCLUDE_PATH, X11_Xutil_INCLUDE_PATH, X11_Xv_INCLUDE_PATH -# -# Libraries: X11_ICE_LIB, X11_Xau_LIB, X11_Xcomposite_LIB, X11_Xcursor_LIB, X11_Xdamage_LIB Xdamage, -# X11_Xdmcp_LIB, X11_Xext_LIB, X11_Xfixes_LIB, X11_Xft_LIB, X11_Xinerama_LIB, X11_Xinput_LIB, -# X11_Xpm_LIB, X11_Xrandr_LIB, X11_Xrender_LIB, X11_Xss_LIB, X11_Xt_LIB, X11_XTest_LIB, X11_Xv_LIB, X11_Xxf86misc_LIB +# Include paths: X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND +# X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND +# X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND +# X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND +# X11_Xcomposite_INCLUDE_PATH, X11_Xcomposite_LIB, X11_Xcomposite_FOUND +# X11_Xcursor_INCLUDE_PATH, X11_Xcursor_LIB, X11_Xcursor_FOUND +# X11_Xdamage_INCLUDE_PATH, X11_Xdamage_LIB, X11_Xdamage_FOUND +# X11_Xdmcp_INCLUDE_PATH, X11_Xdmcp_LIB, X11_Xdmcp_FOUND +# X11_dpms_INCLUDE_PATH, X11_dpms_FOUND +# X11_Xext_LIB, X11_Xext_FOUND +# X11_Xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_Xf86misc_FOUND +# X11_xf86vmode_INCLUDE_PATH, X11_Xf86vmode_FOUND +# X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND +# X11_Xft_INCLUDE_PATH, X11_Xft_LIB, X11_Xft_FOUND +# X11_Xinerama_INCLUDE_PATH, X11_Xinerama_LIB, X11_Xinerama_FOUND +# X11_Xinput_INCLUDE_PATH, X11_Xinput_LIB, X11_Xinput_FOUND +# X11_Xkb_INCLUDE_PATH, X11_Xkb_FOUND +# X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND +# X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND +# X11_XTest_INCLUDE_PATH, X11_XTest_LIB, X11_XTest_FOUND +# X11_XShm_INCLUDE_PATH, X11_XShm_FOUND +# X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND +# X11_Xrender_INCLUDE_PATH, X11_Xrender_LIB, X11_Xrender_FOUND +# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_FOUND +# X11_Xshape_INCLUDE_PATH, X11_Xshape_FOUND +# X11_Xss_LIB, X11_Xss_FOUND +# X11_Xt_LIB, X11_Xt_FOUND +# X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND +# X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. @@ -57,6 +75,7 @@ IF (UNIX) FIND_PATH(X11_ICE_INCLUDE_PATH X11/ICE/ICE.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xau_INCLUDE_PATH X11/Xauth.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) @@ -118,37 +137,49 @@ IF (UNIX) ENDIF(X11_Xlib_INCLUDE_PATH) IF(X11_Xutil_INCLUDE_PATH) + SET(X11_Xutil_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH}) ENDIF(X11_Xutil_INCLUDE_PATH) IF(X11_Xshape_INCLUDE_PATH) SET(X11_Xshape_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) - ENDIF(X11_Xshape_INCLUDE_PATH) + ENDIF(X11_Xshape_INCLUDE_PATH) IF(X11_X11_LIB) SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) ENDIF(X11_X11_LIB) IF(X11_Xext_LIB) + SET(X11_Xext_FOUND TRUE) SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) ENDIF(X11_Xext_LIB) + IF(X11_Xss_LIB) + SET(X11_Xss_FOUND TRUE) + ENDIF(X11_Xss_LIB) + + IF(X11_Xt_LIB) + SET(X11_Xt_FOUND TRUE) + ENDIF(X11_Xt_LIB) + IF(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) - SET(X11_XFT_FOUND TRUE) + SET(X11_Xft_FOUND TRUE) SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) ENDIF(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) + SET(X11_XFT_FOUND ${X11_Xft_FOUND}) IF(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) - SET(X11_XV_FOUND TRUE) + SET(X11_Xv_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) ENDIF(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) + SET(X11_XV_FOUND ${X11_Xv_FOUND}) - IF (X11_Xau_LIB) + IF (X11_Xau_LIB AND X11_Xau_INCLUDE_PATH) SET(X11_Xau_FOUND TRUE) SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB}) - ENDIF (X11_Xau_LIB) + ENDIF (X11_Xau_LIB AND X11_Xau_INCLUDE_PATH) IF (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB) SET(X11_Xdmcp_FOUND TRUE) @@ -168,15 +199,15 @@ IF (UNIX) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xpm_INCLUDE_PATH}) ENDIF (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB) - IF (X11_Xcomposite_INCLUDE_PATH) + IF (X11_Xcomposite_INCLUDE_PATH AND X11_Xcomposite_LIB) SET(X11_Xcomposite_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH}) - ENDIF (X11_Xcomposite_INCLUDE_PATH) + ENDIF (X11_Xcomposite_INCLUDE_PATH AND X11_Xcomposite_LIB) - IF (X11_Xdamage_INCLUDE_PATH) + IF (X11_Xdamage_INCLUDE_PATH AND X11_Xdamage_LIB) SET(X11_Xdamage_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH}) - ENDIF (X11_Xdamage_INCLUDE_PATH) + ENDIF (X11_Xdamage_INCLUDE_PATH AND X11_Xdamage_LIB) IF (X11_XShm_INCLUDE_PATH) SET(X11_XShm_FOUND TRUE) @@ -188,30 +219,30 @@ IF (UNIX) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH}) ENDIF (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB) - IF (X11_Xinerama_INCLUDE_PATH) + IF (X11_Xinerama_INCLUDE_PATH AND X11_Xinerama_LIB) SET(X11_Xinerama_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinerama_INCLUDE_PATH}) - ENDIF (X11_Xinerama_INCLUDE_PATH) + ENDIF (X11_Xinerama_INCLUDE_PATH AND X11_Xinerama_LIB) - IF (X11_Xfixes_INCLUDE_PATH) + IF (X11_Xfixes_INCLUDE_PATH AND X11_Xfixes_LIB) SET(X11_Xfixes_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xfixes_INCLUDE_PATH}) - ENDIF (X11_Xfixes_INCLUDE_PATH) + ENDIF (X11_Xfixes_INCLUDE_PATH AND X11_Xfixes_LIB) IF (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) SET(X11_Xrender_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrender_INCLUDE_PATH}) ENDIF (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB) - IF (X11_Xrandr_INCLUDE_PATH) + IF (X11_Xrandr_INCLUDE_PATH AND X11_Xrandr_LIB) SET(X11_Xrandr_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrandr_INCLUDE_PATH}) - ENDIF (X11_Xrandr_INCLUDE_PATH) + ENDIF (X11_Xrandr_INCLUDE_PATH AND X11_Xrandr_LIB) - IF (X11_Xxf86misc_INCLUDE_PATH) + IF (X11_Xxf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB) SET(X11_Xxf86misc_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xxf86misc_INCLUDE_PATH}) - ENDIF (X11_Xxf86misc_INCLUDE_PATH) + ENDIF (X11_Xxf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB) IF (X11_xf86vmode_INCLUDE_PATH) SET(X11_xf86vmode_FOUND TRUE) @@ -317,15 +348,15 @@ IF (UNIX) IF (CMAKE_LIB_IPS_HAS_SHMAT) SET (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc) ENDIF (CMAKE_LIB_IPS_HAS_SHMAT) - ENDIF (NOT CMAKE_HAVE_SHMAT) - ENDIF ($ENV{ISC} MATCHES "^yes$") + ENDIF(NOT CMAKE_HAVE_SHMAT) + ENDIF($ENV{ISC} MATCHES "^yes$") IF (X11_ICE_FOUND) CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - IF (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - SET(X11_X_PRE_LIBS -lSM ${X11_ICE_LIB}) - ENDIF (CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + IF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) + SET (X11_X_PRE_LIBS -lSM ${X11_ICE_LIB}) + ENDIF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) ENDIF (X11_ICE_FOUND) # Build the final list of libraries. -- cgit v1.2.1 From 75af85b8826e73b1de77983b225065ccb4b479f5 Mon Sep 17 00:00:00 2001 From: Benjamin Long Date: Mon, 4 Jun 2007 16:03:03 +0000 Subject: Add Q_WS_QWS symbol to build system. Also check for that symbol, and link against the QtNetwork libarary if found. This is all for the Qtopia-Core target. svn path=/trunk/KDE/kdelibs/; revision=671369 --- modules/FindQt4.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8be9812b..bf9b4587 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -394,6 +394,7 @@ IF (QT4_QMAKE_FOUND) CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) IF (QT_QTCOPY_REQUIRED) CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) @@ -801,6 +802,10 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTUITOOLS_LIBRARY ${QT_QTUITOOLS_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ) ENDIF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) + IF(Q_WS_QWS) + SET(QT_QTGUI_LIBRARY ${QT_QTGUI_LIBRARY} ${QT_QTNETWORK_LIBRARY}) + ENDIF(Q_WS_QWS) + ####################################### # # Check the executables of Qt -- cgit v1.2.1 From 2ef97b0cb1836b6c2d26f8c4612f7c6f1dc18e57 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 4 Jun 2007 23:55:48 +0000 Subject: remove obsolete X11_XV_FOUND and X11_XFT_FOUND (use X11_Xv_FOUND and X11_Xft_FOUND instead) Alex svn path=/trunk/KDE/kdelibs/; revision=671547 --- modules/FindX11.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index fe1de788..37b0c7b3 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -168,13 +168,11 @@ IF (UNIX) SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xft_LIB}) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH}) ENDIF(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) - SET(X11_XFT_FOUND ${X11_Xft_FOUND}) IF(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) SET(X11_Xv_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH}) ENDIF(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH) - SET(X11_XV_FOUND ${X11_Xv_FOUND}) IF (X11_Xau_LIB AND X11_Xau_INCLUDE_PATH) SET(X11_Xau_FOUND TRUE) -- cgit v1.2.1 From 373ce9910858ba84288e00b32d701a05d0b02e47 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 5 Jun 2007 00:31:20 +0000 Subject: Fix kcal/kcal.h was renamed kcal/kcal_export.h so this brittle check failed. svn path=/trunk/KDE/kdelibs/; revision=671556 --- modules/FindKdepimLibs.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index a21fc52c..6d7bad78 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -17,7 +17,7 @@ if (WIN32) set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${_progFiles}/kdepimlibs/lib) endif (WIN32) -find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal.h +find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal_export.h ${KDE4_INCLUDE_DIR} ) -- cgit v1.2.1 From 00db3e5a85410ec7cfba9b08c3976b5a217d5797 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 5 Jun 2007 01:41:47 +0000 Subject: -/usr/lib, /usr/local/lib, /usr/include, /usr/local/include don't have to be listed explicitely, they are searched automatically -some more consisten lower casing and indentation Alex svn path=/trunk/KDE/kdelibs/; revision=671570 --- modules/FindENCHANT.cmake | 45 +++++++++++++++++++-------------------------- modules/FindGSSAPI.cmake | 2 -- modules/FindKMetaData.cmake | 4 ---- modules/FindKonto.cmake | 4 ---- modules/FindPlasma.cmake | 18 +++++++----------- modules/FindX11.cmake | 18 +++++++++--------- 6 files changed, 35 insertions(+), 56 deletions(-) (limited to 'modules') diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 1a12fe6b..0871a78a 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -15,33 +15,26 @@ if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) # in cache already - SET(ENCHANT_FOUND TRUE) + set(ENCHANT_FOUND TRUE) else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(enchant _ENCHANTIncDir _ENCHANTLinkDir _ENCHANTLinkFlags _ENCHANTCflags) - - set(ENCHANT_DEFINITIONS ${_ENCHANTCflags}) -ENDIF (NOT WIN32) - FIND_PATH(ENCHANT_INCLUDE_DIR enchant++.h - ${_ENCHANTIncDir} - /usr/include - /usr/include/enchant - /usr/local/include - /usr/local/include/enchant - ) - - FIND_LIBRARY(ENCHANT_LIBRARIES NAMES enchant - PATHS - ${_ENCHANTLinkDir} - /usr/lib - /usr/local/lib - ) - + IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(enchant _ENCHANTIncDir _ENCHANTLinkDir _ENCHANTLinkFlags _ENCHANTCflags) + + set(ENCHANT_DEFINITIONS ${_ENCHANTCflags}) + ENDIF (NOT WIN32) + + find_path(ENCHANT_INCLUDE_DIR enchant++.h + PATH_SUFFIXES enchant + PATHS ${_ENCHANTIncDir} ) + + find_library(ENCHANT_LIBRARIES NAMES enchant + PATHS ${_ENCHANTLinkDir} ) + if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) set(ENCHANT_FOUND TRUE) endif (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) @@ -56,6 +49,6 @@ ENDIF (NOT WIN32) endif (ENCHANT_FIND_REQUIRED) endif (ENCHANT_FOUND) - MARK_AS_ADVANCED(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES) + mark_as_advanced(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES) endif (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index daf16113..64182fdc 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -20,8 +20,6 @@ IF(GSSAPI_LIBS AND GSSAPI_FLAVOR) ELSE(GSSAPI_LIBS AND GSSAPI_FLAVOR) FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS - /usr/bin - /usr/local/bin /opt/local/bin ) diff --git a/modules/FindKMetaData.cmake b/modules/FindKMetaData.cmake index eef6727c..9cb59542 100644 --- a/modules/FindKMetaData.cmake +++ b/modules/FindKMetaData.cmake @@ -10,8 +10,6 @@ FIND_PATH(KMETADATA_INCLUDE_DIR NAMES kmetadata/kmetadata.h PATHS - /usr/include - /usr/local/include ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -21,8 +19,6 @@ FIND_LIBRARY(KMETADATA_LIBRARIES kmetadata kmetadatatools PATHS - /usr/lib - /usr/local/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) diff --git a/modules/FindKonto.cmake b/modules/FindKonto.cmake index 4af6348b..2042719c 100644 --- a/modules/FindKonto.cmake +++ b/modules/FindKonto.cmake @@ -15,8 +15,6 @@ FIND_PATH(KONTO_INCLUDES NAMES konto/class.h PATHS - /usr/include - /usr/local/include ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -25,8 +23,6 @@ FIND_LIBRARY(KONTO_LIBRARIES NAMES konto PATHS - /usr/lib - /usr/local/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index 00e8a084..f256a453 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -14,18 +14,14 @@ if (PLASMA_INCLUDE_DIR) endif (PLASMA_INCLUDE_DIR) -FIND_PATH(PLASMA_INCLUDE_DIR NAMES plasma/kpanelapplet.h - PATHS - ${INCLUDE_INSTALL_DIR} - /usr/include - /usr/local/include +find_path(PLASMA_INCLUDE_DIR NAMES plasma/kpanelapplet.h + PATHS + ${INCLUDE_INSTALL_DIR} ) -FIND_LIBRARY(PLASMA_LIBRARIES NAMES plasma - PATHS - ${LIB_INSTALL_DIR} - /usr/lib - /usr/local/lib +find_library(PLASMA_LIBRARIES NAMES plasma + PATHS + ${LIB_INSTALL_DIR} ) if (PLASMA_LIBRARIES AND PLASMA_INCLUDE_DIR) set(PLASMA_FOUND TRUE) @@ -41,4 +37,4 @@ else (PLASMA_FOUND) endif (Plasma_FIND_REQUIRED) endif (PLASMA_FOUND) -MARK_AS_ADVANCED(PLASMA_INCLUDE_DIR PLASMA_LIBRARIES) +mark_as_advanced(PLASMA_INCLUDE_DIR PLASMA_LIBRARIES) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 37b0c7b3..6b29dc51 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -6,8 +6,8 @@ # # and also the following more fine grained variables: # Include paths: X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND -# X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND -# X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND +# X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND +# X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND # X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND # X11_Xcomposite_INCLUDE_PATH, X11_Xcomposite_LIB, X11_Xcomposite_FOUND # X11_Xcursor_INCLUDE_PATH, X11_Xcursor_LIB, X11_Xcursor_FOUND @@ -16,23 +16,23 @@ # X11_dpms_INCLUDE_PATH, X11_dpms_FOUND # X11_Xext_LIB, X11_Xext_FOUND # X11_Xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_Xf86misc_FOUND -# X11_xf86vmode_INCLUDE_PATH, X11_Xf86vmode_FOUND +# X11_xf86vmode_INCLUDE_PATH, X11_Xf86vmode_FOUND # X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND # X11_Xft_INCLUDE_PATH, X11_Xft_LIB, X11_Xft_FOUND # X11_Xinerama_INCLUDE_PATH, X11_Xinerama_LIB, X11_Xinerama_FOUND # X11_Xinput_INCLUDE_PATH, X11_Xinput_LIB, X11_Xinput_FOUND -# X11_Xkb_INCLUDE_PATH, X11_Xkb_FOUND -# X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND +# X11_Xkb_INCLUDE_PATH, X11_Xkb_FOUND +# X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND # X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND # X11_XTest_INCLUDE_PATH, X11_XTest_LIB, X11_XTest_FOUND -# X11_XShm_INCLUDE_PATH, X11_XShm_FOUND +# X11_XShm_INCLUDE_PATH, X11_XShm_FOUND # X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND # X11_Xrender_INCLUDE_PATH, X11_Xrender_LIB, X11_Xrender_FOUND -# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_FOUND -# X11_Xshape_INCLUDE_PATH, X11_Xshape_FOUND +# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_FOUND +# X11_Xshape_INCLUDE_PATH, X11_Xshape_FOUND # X11_Xss_LIB, X11_Xss_FOUND # X11_Xt_LIB, X11_Xt_FOUND -# X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND +# X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND # X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -- cgit v1.2.1 From d644671faaeda05edacf12a6ac3342a200d2a691 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 5 Jun 2007 02:07:52 +0000 Subject: rename KDE4_BUILD_TESTREQGRESSION to KHTML_BUILD_TESTREGRESSION and move it to kdelibs/CMakeLists.txt Alex svn path=/trunk/KDE/kdelibs/; revision=671572 --- modules/FindKDE4Internal.cmake | 6 ------ 1 file changed, 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e629ab05..1d393e4c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -330,7 +330,6 @@ _set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") -option(KDE4_BUILD_TESTREGRESSION "Build KHTML's testregression. Note: this disables hidden visibility") if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) @@ -718,11 +717,6 @@ if (CMAKE_COMPILER_IS_GNUCXX) # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) - # Disable it if testregression is built.. - if (KDE4_BUILD_TESTREGRESSION) - set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (KDE4_BUILD_TESTREGRESSION) - # get the gcc version exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) -- cgit v1.2.1 From a1058d94db823ce271d67d8b861da064ec699e92 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 5 Jun 2007 02:30:58 +0000 Subject: add NAMES argument Alex svn path=/trunk/KDE/kdelibs/; revision=671574 --- modules/FindENCHANT.cmake | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 0871a78a..591230f7 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -18,17 +18,18 @@ if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) set(ENCHANT_FOUND TRUE) else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) - IF (NOT WIN32) + if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) - PKGCONFIG(enchant _ENCHANTIncDir _ENCHANTLinkDir _ENCHANTLinkFlags _ENCHANTCflags) + pkgconfig(enchant _ENCHANTIncDir _ENCHANTLinkDir _ENCHANTLinkFlags _ENCHANTCflags) set(ENCHANT_DEFINITIONS ${_ENCHANTCflags}) - ENDIF (NOT WIN32) + endif (NOT WIN32) - find_path(ENCHANT_INCLUDE_DIR enchant++.h + find_path(ENCHANT_INCLUDE_DIR + NAMES enchant++.h PATH_SUFFIXES enchant PATHS ${_ENCHANTIncDir} ) -- cgit v1.2.1 From 2afd73c8c91ecd46eeb8310ce96f47475656c5f9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 5 Jun 2007 02:34:00 +0000 Subject: -don't list the standard dirs Alex svn path=/trunk/KDE/kdelibs/; revision=671575 --- modules/FindPopplerQt4.cmake | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindPopplerQt4.cmake b/modules/FindPopplerQt4.cmake index a67bde44..b4ee4086 100644 --- a/modules/FindPopplerQt4.cmake +++ b/modules/FindPopplerQt4.cmake @@ -17,25 +17,23 @@ if(NOT WIN32) -INCLUDE(UsePkgConfig) - -PKGCONFIG(poppler-qt4 _PopplerQt4IncDir _PopplerQt4LinkDir _PopplerQt4LinkFlags _PopplerQt4Cflags) - -set(POPPLER_QT4_DEFINITIONS ${_PopplerQt4Cflags}) + include(UsePkgConfig) + + pkgconfig(poppler-qt4 _PopplerQt4IncDir _PopplerQt4LinkDir _PopplerQt4LinkFlags _PopplerQt4Cflags) + + set(POPPLER_QT4_DEFINITIONS ${_PopplerQt4Cflags}) endif(NOT WIN32) -FIND_PATH(POPPLER_QT4_INCLUDE_DIR poppler-qt4.h - ${_PopplerQt4IncDir}/poppler - /usr/include/poppler - /usr/local/include/poppler -) - -FIND_LIBRARY(POPPLER_QT4_LIBRARIES poppler-qt4 +find_path(POPPLER_QT4_INCLUDE_DIR + NAMES poppler-qt4.h + PATH_SUFFIXES poppler + PATHS ${_PopplerQt4IncDir} +) + +find_library(POPPLER_QT4_LIBRARIES poppler-qt4 ${_PopplerQt4LinkDir} - /usr/lib - /usr/local/lib ) - + if (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) set(POPPLER_QT4_FOUND TRUE) else (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) @@ -52,4 +50,4 @@ else (POPPLER_QT4_FOUND) endif (PopplerQt4_FIND_REQUIRED) endif (POPPLER_QT4_FOUND) -MARK_AS_ADVANCED(POPPLER_QT4_INCLUDE_DIR POPPLER_QT4_LIBRARIES) +mark_as_advanced(POPPLER_QT4_INCLUDE_DIR POPPLER_QT4_LIBRARIES) -- cgit v1.2.1 From 41cbc7bb9079eaff5a73b69d4446dd778b4ae8f4 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 5 Jun 2007 14:39:59 +0000 Subject: Move into kdelibs (now used by koffice/libkexiv2 and digikam for the future) svn path=/trunk/KDE/kdelibs/; revision=671799 --- modules/FindLCMS.cmake | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 modules/FindLCMS.cmake (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake new file mode 100644 index 00000000..d992a651 --- /dev/null +++ b/modules/FindLCMS.cmake @@ -0,0 +1,89 @@ +# - Find LCMS +# Find the LCMS includes and library +# This module defines +# LCMS_INCLUDE_DIR, where to find lcms.h +# LCMS_LIBRARIES, the libraries needed to use LCMS. +# LCMS_VERSION, The value of LCMS_VERSION defined in lcms.h +# LCMS_FOUND, If false, do not try to use LCMS. + +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +if(NOT WIN32) +INCLUDE(UsePkgConfig) +PKGCONFIG(lcms _LcmsIncDir _LcmsLinkDir _LcmsLinkFlags _LcmsCflags) +SET(LCMS_DEFINITIONS ${_LcmsCflags}) +endif(NOT WIN32) + +find_path(LCMS_INCLUDE_DIR lcms.h + ${_LcmsIncDir} + ${CMAKE_INSTALL_PREFIX}/include + /usr/include + /usr/include/lcms + /usr/include/liblcms1 + /usr/local/include + /usr/local/include/lcms + NO_DEFAULT_PATH +) +find_path(LCMS_INCLUDE_DIR lcms.h +) + +find_library(LCMS_LIBRARIES NAMES lcms liblcms + PATHS + ${_LcmsLinkDir} + ${CMAKE_INSTALL_PREFIX}/lib + /usr/lib + /usr/lib/lcms + /usr/local/lib + /usr/local/lib/lcms + NO_DEFAULT_PATH +) +find_library(LCMS_LIBRARIES NAMES lcms liblcms +) + +if(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) + set(LCMS_FOUND TRUE) +else(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) + set(LCMS_FOUND FALSE) +endif(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) + +if(LCMS_FOUND) + set(FIND_LCMS_VERSION_SOURCE + "#include \n int main()\n {\n return LCMS_VERSION;\n }\n") + set(FIND_LCMS_VERSION_SOURCE_FILE ${CMAKE_BINARY_DIR}/CMakeTmp/FindLCMS.cxx) + file(WRITE "${FIND_LCMS_VERSION_SOURCE_FILE}" "${FIND_LCMS_VERSION_SOURCE}") + + set(FIND_LCMS_VERSION_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${LCMS_INCLUDE_DIR}") + + try_run(LCMS_VERSION LCMS_COMPILE_RESULT + ${CMAKE_BINARY_DIR} + ${FIND_LCMS_VERSION_SOURCE_FILE} + CMAKE_FLAGS "${FIND_LCMS_VERSION_ADD_INCLUDES}" + OUTPUT_VARIABLE OUTPUT) + + if(LCMS_COMPILE_RESULT AND NOT LCMS_VERSION STREQUAL FAILED_TO_RUN) + if(NOT LCMS_FIND_QUIETLY) + string(SUBSTRING ${LCMS_VERSION} 0 1 LCMS_MAJOR_VERSION) + string(SUBSTRING ${LCMS_VERSION} 1 2 LCMS_MINOR_VERSION) + message(STATUS "Found lcms version ${LCMS_MAJOR_VERSION}.${LCMS_MINOR_VERSION}, ${LCMS_LIBRARIES}") + endif(NOT LCMS_FIND_QUIETLY) + else(LCMS_COMPILE_RESULT AND NOT LCMS_VERSION STREQUAL FAILED_TO_RUN) + if(NOT LCMS_FIND_QUIETLY) + message(STATUS "Found lcms but failed to find version ${LCMS_LIBRARIES}") + file(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log + "Find lcms version failed with the following output:\n${OUTPUT}\nFindLCMS.cxx:\n${FIND_LCMS_VERSION_SOURCE}\n\n") + endif(NOT LCMS_FIND_QUIETLY) + set(LCMS_VERSION NOTFOUND) + endif(LCMS_COMPILE_RESULT AND NOT LCMS_VERSION STREQUAL FAILED_TO_RUN) +else(LCMS_FOUND) + if(NOT LCMS_FIND_QUIETLY) + if(LCMS_FIND_REQUIRED) + message(FATAL_ERROR "Required package lcms NOT found") + else(LCMS_FIND_REQUIRED) + message(STATUS "lcms NOT found") + endif(LCMS_FIND_REQUIRED) + endif(NOT LCMS_FIND_QUIETLY) +endif(LCMS_FOUND) + +mark_as_advanced(LCMS_INCLUDE_DIR LCMS_LIBRARIES LCMS_VERSION) + -- cgit v1.2.1 From 4d5310775b4989ea404037de35d5aefb646eb1d9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 6 Jun 2007 02:45:02 +0000 Subject: fix comment Alex svn path=/trunk/KDE/kdelibs/; revision=672019 --- modules/KDE4Macros.cmake | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0f82da9a..afd48e32 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -744,10 +744,7 @@ endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) # add an test executable # it will be built with RPATH poiting to the build dir -# with CMake 2.4.3, the executable is built only if the option -# KDE4_BUILD_TESTS is enabled, otherwise a ADD_CUSTOM_TARGET() is created -# so that the TARGET_LINK_LIBRARIES() commands don't produce errors -# With cmake > 2.4.3 the targets are always created, but only built for the "all" +# The targets are always created, but only built for the "all" # target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target # are created but not built by default. You can build them by manually building the target. macro (KDE4_ADD_TEST _target_NAME) -- cgit v1.2.1 From 7d5a849c70533c9f67024f818c0f240dd39ece12 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 6 Jun 2007 03:06:23 +0000 Subject: -more fixes to FindX11 with the help from Lubos X11_Xss_LIB and X11_Xss_FOUND will be removed soon, use X11_Xscreensaver_LIB and X11_Xscreensaver_FOUND instead Alex svn path=/trunk/KDE/kdelibs/; revision=672026 --- modules/FindX11.cmake | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 6b29dc51..11b2ca9f 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -13,8 +13,10 @@ # X11_Xcursor_INCLUDE_PATH, X11_Xcursor_LIB, X11_Xcursor_FOUND # X11_Xdamage_INCLUDE_PATH, X11_Xdamage_LIB, X11_Xdamage_FOUND # X11_Xdmcp_INCLUDE_PATH, X11_Xdmcp_LIB, X11_Xdmcp_FOUND -# X11_dpms_INCLUDE_PATH, X11_dpms_FOUND # X11_Xext_LIB, X11_Xext_FOUND +# X11_dpms_INCLUDE_PATH, (in X11_Xext_LIB), X11_dpms_FOUND +# X11_XShm_INCLUDE_PATH, (in X11_Xext_LIB), X11_XShm_FOUND +# X11_Xshape_INCLUDE_PATH, (in X11_Xext_LIB), X11_Xshape_FOUND # X11_Xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_Xf86misc_FOUND # X11_xf86vmode_INCLUDE_PATH, X11_Xf86vmode_FOUND # X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND @@ -25,13 +27,10 @@ # X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND # X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND # X11_XTest_INCLUDE_PATH, X11_XTest_LIB, X11_XTest_FOUND -# X11_XShm_INCLUDE_PATH, X11_XShm_FOUND # X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND # X11_Xrender_INCLUDE_PATH, X11_Xrender_LIB, X11_Xrender_FOUND -# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_FOUND -# X11_Xshape_INCLUDE_PATH, X11_Xshape_FOUND -# X11_Xss_LIB, X11_Xss_FOUND -# X11_Xt_LIB, X11_Xt_FOUND +# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_LIB, X11_Xscreensaver_FOUND +# X11_Xt_INCLUDE_PATH, X11_Xt_LIB, X11_Xt_FOUND # X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND # X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND @@ -97,6 +96,7 @@ IF (UNIX) FIND_PATH(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xt_INCLUDE_PATH X11/Intrinsic.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) @@ -117,7 +117,7 @@ IF (UNIX) FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xss_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_Xscreensaver_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) @@ -155,13 +155,9 @@ IF (UNIX) SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB}) ENDIF(X11_Xext_LIB) - IF(X11_Xss_LIB) - SET(X11_Xss_FOUND TRUE) - ENDIF(X11_Xss_LIB) - - IF(X11_Xt_LIB) + IF(X11_Xt_LIB AND X11_Xt_INCLUDE_PATH) SET(X11_Xt_FOUND TRUE) - ENDIF(X11_Xt_LIB) + ENDIF(X11_Xt_LIB AND X11_Xt_INCLUDE_PATH) IF(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) SET(X11_Xft_FOUND TRUE) @@ -252,10 +248,13 @@ IF (UNIX) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcursor_INCLUDE_PATH}) ENDIF (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB) - IF (X11_Xscreensaver_INCLUDE_PATH) + IF (X11_Xscreensaver_INCLUDE_PATH AND X11_Xscreensaver_LIB) SET(X11_Xscreensaver_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xscreensaver_INCLUDE_PATH}) - ENDIF (X11_Xscreensaver_INCLUDE_PATH) + ENDIF (X11_Xscreensaver_INCLUDE_PATH AND X11_Xscreensaver_LIB) + SET(X11_Xss_FOUND ${X11_Xscreensaver_FOUND}) + SET(X11_Xss_LIB ${X11_Xscreensaver_LIB}) + IF (X11_dpms_INCLUDE_PATH) SET(X11_dpms_FOUND TRUE) @@ -396,7 +395,7 @@ IF (UNIX) X11_Xcursor_INCLUDE_PATH X11_dpms_INCLUDE_PATH X11_Xt_LIB - X11_Xss_LIB + X11_Xt_INCLUDE_PATH X11_Xdmcp_LIB X11_LIBRARIES X11_Xaccessrules_INCLUDE_PATH @@ -406,6 +405,7 @@ IF (UNIX) X11_Xkb_INCLUDE_PATH X11_Xkblib_INCLUDE_PATH X11_Xscreensaver_INCLUDE_PATH + X11_Xscreensaver_LIB X11_Xpm_INCLUDE_PATH X11_Xpm_LIB X11_Xinput_LIB -- cgit v1.2.1 From 32408c49cf9f0b835e46f4ee321169a0ba1da79b Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Thu, 7 Jun 2007 09:56:41 +0000 Subject: fix comments svn path=/trunk/KDE/kdelibs/; revision=672499 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index bf9b4587..4d780ddf 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -29,7 +29,7 @@ # # macro QT4_WRAP_CPP(outfiles inputfile ... ) # macro QT4_WRAP_UI(outfiles inputfile ... ) -# macro QT4_ADD_RESOURCE(outfiles inputfile ... ) +# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) # macro QT4_AUTOMOC(inputfile ... ) # macro QT4_GENERATE_MOC(inputfile outputfile ) # @@ -937,7 +937,7 @@ IF (QT4_QMAKE_FOUND) ENDMACRO (QT4_WRAP_UI) - # QT4_ADD_RESOURCE(outfiles inputfile ... ) + # QT4_ADD_RESOURCES(outfiles inputfile ... ) # TODO perhaps consider adding support for compression and root options to rcc MACRO (QT4_ADD_RESOURCES outfiles ) -- cgit v1.2.1 From 04415ab3f093b2944985a525d65fe3a2555803cb Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 8 Jun 2007 04:24:25 +0000 Subject: -also put LIBEXEC_INSTALL_DIR into the dependencies file -only reuse the install dirs from kdelibs if the current CMAKE_INSTALL_PREFIX equals the kdelibs install dir Alex svn path=/trunk/KDE/kdelibs/; revision=672766 --- modules/FindKDE4Internal.cmake | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1d393e4c..74b86b8f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -259,12 +259,14 @@ endif (NOT _kdeBootStrapping) # parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. # But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location # this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. +# +# additionally if installing to the same location as kdelibs, the other install +# directories are reused from the installed kdelibs macro(_SET_FANCY _var _value _comment) - if (NOT DEFINED KDE4_${_var}) - set(predefinedvalue ${_value}) - else (NOT DEFINED KDE4_${_var}) - set(predefinedvalue ${KDE4_${_var}}) - endif(NOT DEFINED KDE4_${_var}) + set(predefinedvalue "${_value}") + if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + set(predefinedvalue "${KDE4_${_var}}") + endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) if (NOT DEFINED ${_var}) set(${_var} ${predefinedvalue}) @@ -282,9 +284,9 @@ _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") if(WIN32) -_set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") + _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") else(WIN32) -_set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") + _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") endif(WIN32) _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") -- cgit v1.2.1 From 7e7111d020a1d9859928b6e4c83efd81df6ad703 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 8 Jun 2007 07:44:16 +0000 Subject: - splitted KDEWIN32 and GUNWIN32 module into KDEWIN and KDEWIN32, where KDEWIN sets include/library search path for all other modules and KDEWIN32 search for kdewin32 library in the found locations. svn path=/trunk/KDE/kdelibs/; revision=672805 --- modules/FindGNUWIN32.cmake | 54 -------------- modules/FindKDE4Internal.cmake | 8 +- modules/FindKDEWIN.cmake | 56 ++++++++++++++ modules/FindKDEWIN32.cmake | 162 ++++++++++++++++++----------------------- 4 files changed, 130 insertions(+), 150 deletions(-) delete mode 100644 modules/FindGNUWIN32.cmake create mode 100644 modules/FindKDEWIN.cmake (limited to 'modules') diff --git a/modules/FindGNUWIN32.cmake b/modules/FindGNUWIN32.cmake deleted file mode 100644 index d41af6f9..00000000 --- a/modules/FindGNUWIN32.cmake +++ /dev/null @@ -1,54 +0,0 @@ - -# Copyright (c) 2006, Peter Kuemmel, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if (WIN32) - - IF (GNUWIN32_INCLUDE_DIR) - # Already in cache, be silent - SET(GNUWIN32_FIND_QUIETLY TRUE) - ENDIF (GNUWIN32_INCLUDE_DIR) - -# check if GNUWIN32_DIR is already set -# (e.g. by command line argument or the calling script) -if(NOT GNUWIN32_DIR) - # check for enviroment variable - file(TO_CMAKE_PATH "$ENV{GNUWIN32_DIR}" GNUWIN32_DIR) - if(NOT GNUWIN32_DIR) - # search in the default program install folder - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - find_file(GNUWIN32_DIR_tmp win32libs gnuwin32 - PATHS - "${_progFiles}" - "C:/" "D:/" "E:/" "F:/" "G:/" - ) - set(GNUWIN32_DIR ${GNUWIN32_DIR_tmp}) - endif(NOT GNUWIN32_DIR) -endif(NOT GNUWIN32_DIR) - -if (GNUWIN32_DIR) - set(GNUWIN32_INCLUDE_DIR ${GNUWIN32_DIR}/include) - set(GNUWIN32_LIBRARY_DIR ${GNUWIN32_DIR}/lib) - set(GNUWIN32_BINARY_DIR ${GNUWIN32_DIR}/bin) - set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${GNUWIN32_INCLUDE_DIR}) - set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${GNUWIN32_LIBRARY_DIR}) - set(GNUWIN32_FOUND TRUE) -else (GNUWIN32_DIR) - set(GNUWIN32_FOUND) -endif (GNUWIN32_DIR) - -if (GNUWIN32_FOUND) - if (NOT GNUWIN32_FIND_QUIETLY) - message(STATUS "Found GNUWIN32: ${GNUWIN32_DIR}") - endif (NOT GNUWIN32_FIND_QUIETLY) -else (GNUWIN32_FOUND) - if (GNUWIN32_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find GNUWIN32") - endif (GNUWIN32_FIND_REQUIRED) -endif (GNUWIN32_FOUND) - -endif (WIN32) - diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 74b86b8f..df3db208 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -533,11 +533,7 @@ if (WIN32) find_package(KDEWIN32 REQUIRED) - # is GnuWin32 required or does e.g. Visual Studio provide an own implementation? - #find_package(GNUWIN32 REQUIRED) - find_package(GNUWIN32) - - set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES} ${GNUWIN32_INCLUDE_DIR}) + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex @@ -777,7 +773,7 @@ endif (CMAKE_C_COMPILER MATCHES "icc") # we prefer to use a different postfix for debug libs only on Windows # does not work atm if (WIN32) - SET(CMAKE_DEBUG_POSTFIX "") + SET(CMAKE_DEBUG_POSTFIX "d") endif (WIN32) ########### end of platform specific stuff ########################## diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake new file mode 100644 index 00000000..3e40fd37 --- /dev/null +++ b/modules/FindKDEWIN.cmake @@ -0,0 +1,56 @@ +# - Try to find the KDEWIN library +# +# used environment vars +# KDEWIN_DIR - kdewin root dir +# +# this will define +# KDEWIN_FOUND - system has KDEWIN +# KDEWIN_DIR - the KDEWIN root installation dir +# +# Copyright (c) 2007, Ralf Habacker, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (WIN32) + IF (NOT KDEWIN_DIR) + # check for enviroment variable + file(TO_CMAKE_PATH "$ENV{KDEWIN_DIR}" KDEWIN_DIR) + if(NOT KDEWIN_DIR) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + if (MINGW) + set (DIR "kdewin-mingw") + else (MINGW) + set (DIR "kdewin-msvc") + endif (MINGW) + + # search in the default program install folder + find_file(KDEWIN_DIR_tmp ${DIR} kdewin kdewin32 gnuwin32 + PATHS + "${_progFiles}" + ) + set (KDEWIN_DIR ${KDEWIN_DIR_tmp}) + endif (NOT KDEWIN_DIR) + if (KDEWIN_DIR) + message(STATUS "Found windows supplementary package location: ${KDEWIN_DIR}") + endif (KDEWIN_DIR) + endif (NOT KDEWIN_DIR) + + # this must be set every time + if (KDEWIN_DIR) + # add include path and library to all targets, this is required because + # cmake's 2.4.6 FindZLib.cmake does not use CMAKE_REQUIRED... vars + set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${KDEWIN_DIR}/include) + set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${KDEWIN_DIR}/lib) + + set (KDEWIN_FOUND 1) + else(KDEWIN_DIR) + message(STATUS "Could not find the location of the windows supplementary packages which is \n" + "\t\tenvironment variable KDEWIN_DIR\n" + "\t\t/${DIR}\n" + "\t\t/kdewin\n" + "\t\t/kdewin32\n" + "\t\t/gnuwin32\n") + endif(KDEWIN_DIR) + +endif (WIN32) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index ac284cd4..17eab61d 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -7,119 +7,101 @@ # KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 # # Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007, Ralf Habacker, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. if (WIN32) - if (NOT KDEWIN32_DIR) - if(NOT QT4_FOUND) - find_package(Qt4 REQUIRED) - endif(NOT QT4_FOUND) - - # check for enviroment variable first - file(TO_CMAKE_PATH "$ENV{KDEWIN32_DIR}" KDEWIN32_DIR) - - # then check default installation dir - if (NOT KDEWIN32_DIR) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - find_file(KDEWIN32_DIR_tmp kdewin32 - PATHS - "${_progFiles}" - ) - set (KDEWIN32_DIR ${KDEWIN32_DIR_tmp}) - endif (NOT KDEWIN32_DIR) - endif (NOT KDEWIN32_DIR) - - find_path(KDEWIN32_INCLUDE_DIR winposix_export.h - ${KDEWIN32_DIR}/include - ${CMAKE_INSTALL_PREFIX}/include - ) + if(NOT KDEWIN_FOUND) + find_package(KDEWIN REQUIRED) + endif(NOT KDEWIN_FOUND) - # at first find the kdewin32 library, this has to be compiled and installed before kdelibs/ - # search for kdewin32 in the default install directory for applications (default of (n)make install) - - find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d - PATHS - ${KDEWIN32_DIR}/lib - ${CMAKE_INSTALL_PREFIX}/lib - NO_SYSTEM_ENVIRONMENT_PATH - ) + find_path(KDEWIN32_INCLUDE_DIR winposix_export.h + ${CMAKE_INCLUDE_PATH} + ${CMAKE_INSTALL_PREFIX}/include + ) + + # search for kdewin32 in the default install directory for applications (default of (n)make install) - find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 - PATHS - ${KDEWIN32_DIR}/lib - ${CMAKE_INSTALL_PREFIX}/lib - NO_SYSTEM_ENVIRONMENT_PATH - ) - - # msvc makes a difference between debug and release - if(MSVC) find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d PATHS - ${KDEWIN32_DIR}/lib + ${CMAKE_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib NO_SYSTEM_ENVIRONMENT_PATH ) - if(MSVC_IDE) - # the ide needs the debug and release version - if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") - endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) - else(MSVC_IDE) - string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) - else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - endif(MSVC_IDE) - else(MSVC) - if(KDEWIN32_LIBRARY_RELEASE) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) - else(KDEWIN32_LIBRARY_RELEASE) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) - endif(KDEWIN32_LIBRARY_RELEASE) - endif(MSVC) - # kdelibs/win/ has to be built before the rest of kdelibs/ - # eventually it will be moved out from kdelibs/ - if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - set(KDEWIN32_FOUND TRUE) - # add needed system libs - set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) - - if (MINGW) - #mingw compiler - set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - else (MINGW) - # msvc compiler - # add the MS SDK include directory if available - file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) - set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) - endif (MINGW) + find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 + PATHS + ${CMAKE_LIBRARY_PATH} + ${CMAKE_INSTALL_PREFIX}/lib + NO_SYSTEM_ENVIRONMENT_PATH + ) + + # msvc makes a difference between debug and release + if(MSVC) + find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d + PATHS + ${CMAKE_LIBRARY_PATH + ${CMAKE_INSTALL_PREFIX}/lib + NO_SYSTEM_ENVIRONMENT_PATH + ) + if(MSVC_IDE) + # the ide needs the debug and release version + if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") + endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) + SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) + else(MSVC_IDE) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + endif(MSVC_IDE) + else(MSVC) + if(KDEWIN32_LIBRARY_RELEASE) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) + else(KDEWIN32_LIBRARY_RELEASE) + set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) + endif(KDEWIN32_LIBRARY_RELEASE) + endif(MSVC) + + # kdelibs/win/ has to be built before the rest of kdelibs/ + # eventually it will be moved out from kdelibs/ + if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + set(KDEWIN32_FOUND TRUE) + # add needed system libs + set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) + + if (MINGW) + #mingw compiler + set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + else (MINGW) + # msvc compiler + # add the MS SDK include directory if available + file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) + set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + endif (MINGW) + + endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + # required for configure + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) - endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) + endif (NOT KDEWIN32_DIR) if (KDEWIN32_FOUND) if (NOT KDEWIN32_FIND_QUIETLY) - message(STATUS "Found KDEWIN32: ${KDEWIN32_LIBRARY}") + message(STATUS "Found kdewin32 library: ${KDEWIN32_LIBRARY}") endif (NOT KDEWIN32_FIND_QUIETLY) + else (KDEWIN32_FOUND) if (KDEWIN32_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease install it first") endif (KDEWIN32_FIND_REQUIRED) endif (KDEWIN32_FOUND) - - # add include path and library to all targets, this is required because - # cmake's 2.4.6 FindZLib.cmake does not use CMAKE_REQUIRED... vars - set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${KDEWIN32_INCLUDES}) - set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${KDEWIN32_DIR}/lib) - - set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) - set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) - endif (WIN32) -- cgit v1.2.1 From 7a881261831736b6702cf5b9e636060da0ac58d1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 8 Jun 2007 14:27:44 +0000 Subject: mark Xau_INCLUDE_PATH advanced Alex svn path=/trunk/KDE/kdelibs/; revision=672948 --- modules/FindX11.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 11b2ca9f..b3c0a4b7 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -371,6 +371,7 @@ IF (UNIX) X11_X11_LIB X11_Xext_LIB X11_Xau_LIB + X11_Xau_INCLUDE_PATH X11_Xlib_INCLUDE_PATH X11_Xutil_INCLUDE_PATH X11_Xcomposite_INCLUDE_PATH -- cgit v1.2.1 From 96876e082e44e6ee9a6e7f32722d52a8a95e4a60 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 8 Jun 2007 15:50:43 +0000 Subject: revert 'SET(CMAKE_DEBUG_POSTFIX "d")' for win32 -> the comment 'does not work atm' is corect... svn path=/trunk/KDE/kdelibs/; revision=672966 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index df3db208..dced461c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -773,7 +773,7 @@ endif (CMAKE_C_COMPILER MATCHES "icc") # we prefer to use a different postfix for debug libs only on Windows # does not work atm if (WIN32) - SET(CMAKE_DEBUG_POSTFIX "d") + SET(CMAKE_DEBUG_POSTFIX "") endif (WIN32) ########### end of platform specific stuff ########################## -- cgit v1.2.1 From c6ad4ece89f2b5437f0017a815d2c1ec8c3d9cd0 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 8 Jun 2007 16:54:51 +0000 Subject: SVN_SILENT typo svn path=/trunk/KDE/kdelibs/; revision=672975 --- modules/FindKDEWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 17eab61d..0bacd3fa 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -44,7 +44,7 @@ if (WIN32) if(MSVC) find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d PATHS - ${CMAKE_LIBRARY_PATH + ${CMAKE_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib NO_SYSTEM_ENVIRONMENT_PATH ) -- cgit v1.2.1 From c383c791ece6f71742632157919805506e1e74af Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 9 Jun 2007 12:11:33 +0000 Subject: This module allows to test if we installed depends package. For some cmake module it is not necessary to move them into kdelibs as FindLibKDEgames which is necessary by playground/games which failed if we didn t install kdegames before. Not it signaled that it depend under other modules. svn path=/trunk/KDE/kdelibs/; revision=673217 --- modules/MacroOptionalDependPackage.cmake | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 modules/MacroOptionalDependPackage.cmake (limited to 'modules') diff --git a/modules/MacroOptionalDependPackage.cmake b/modules/MacroOptionalDependPackage.cmake new file mode 100644 index 00000000..1a6df36a --- /dev/null +++ b/modules/MacroOptionalDependPackage.cmake @@ -0,0 +1,22 @@ +# Search if cmake module is installed in computer +# cmake will not fail but signal that we must install depend package before. +# add as previously name of cmake module "_name" and define package needed "_module_needed" +# if return DEPEND_PACKAGE_${_name} + +# Copyright (c) 2007, Montel Laurent +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +MACRO (MACRO_OPTIONAL_DEPEND_PACKAGE _name _module_needed) + set(_packagename Find${_name}.cmake) + find_file(_PACKAGE_DEPEND_FOUND ${_packagename} PATHS ${CMAKE_MODULE_PATH} ) + if(NOT _PACKAGE_DEPEND_FOUND) + MESSAGE(STATUS "cmake package ${_packagename} was not found. This package needs ${_module_needed} to be compile all program") + set(DEPEND_PACKAGE_${_name} FALSE) + else(NOT _PACKAGE_DEPEND_FOUND) + set(DEPEND_PACKAGE_${_name} TRUE) + endif(NOT _PACKAGE_DEPEND_FOUND) +ENDMACRO (MACRO_OPTIONAL_DEPEND_PACKAGE) + -- cgit v1.2.1 From f48606a15f65b1966722d301e5730e5d19cafa78 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 9 Jun 2007 14:24:46 +0000 Subject: small update for win32/msvc9 svn path=/trunk/KDE/kdelibs/; revision=673238 --- modules/FindKDE4Internal.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dced461c..bfcd1f07 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -553,9 +553,11 @@ if (WIN32) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) + # C4396: 'identifier' : 'function' the inline specifier cannot be used when a friend declaration refers to a specialization of a function template + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4396" ) if(CMAKE_COMPILER_2005) # to avoid a lot of deprecated warnings - add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE ) + add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS ) # 'identifier' : no suitable definition provided for explicit template instantiation request set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) endif(CMAKE_COMPILER_2005) -- cgit v1.2.1 From b1983b4c3a7968350db0e6eb4c9e6e7b2939f193 Mon Sep 17 00:00:00 2001 From: Benjamin Long Date: Sat, 9 Jun 2007 23:47:13 +0000 Subject: Get kdelib to build with Qtopia Core. Remove old Q_WS_QWS ifdefs. Add needed headers. svn path=/trunk/KDE/kdelibs/; revision=673342 --- modules/FindQt4.cmake | 4 ---- 1 file changed, 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 4d780ddf..22458560 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -802,10 +802,6 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTUITOOLS_LIBRARY ${QT_QTUITOOLS_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ) ENDIF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) - IF(Q_WS_QWS) - SET(QT_QTGUI_LIBRARY ${QT_QTGUI_LIBRARY} ${QT_QTNETWORK_LIBRARY}) - ENDIF(Q_WS_QWS) - ####################################### # # Check the executables of Qt -- cgit v1.2.1 From 02c7e311e874cc9e863da474e6fb7ee4a6cedcb1 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 11 Jun 2007 09:34:58 +0000 Subject: moved here from kdebase svn path=/trunk/KDE/kdelibs/; revision=673879 --- modules/FindKNepomuk.cmake | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 modules/FindKNepomuk.cmake (limited to 'modules') diff --git a/modules/FindKNepomuk.cmake b/modules/FindKNepomuk.cmake new file mode 100644 index 00000000..8074b031 --- /dev/null +++ b/modules/FindKNepomuk.cmake @@ -0,0 +1,35 @@ +# Once done this will define +# +# KNEPOMUK_FOUND - system has the Nepomuk-KDE backbone lib KNep +# KNEPOMUK_INCLUDES - the libKNep include directory +# KNEPOMUK_LIBRARIES - Link these to use libKNep +# + +FIND_PATH(KNEPOMUK_INCLUDES + NAMES + knepomuk/knepomuk.h + PATHS + /usr/include + /usr/local/include + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(KNEPOMUK_LIBRARIES + NAMES + knepomuk + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +if(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) + set(KNEPOMUK_FOUND TRUE) + message(STATUS "Found KNepomuk: ${KNEPOMUK_LIBRARIES}") +else(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) + if(KNepomuk_FIND_REQUIRED) + message(FATAL_ERROR "Could not find KNepomuk library.") + endif(KNepomuk_FIND_REQUIRED) +endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) -- cgit v1.2.1 From 46aa763e481365e55fe052b1028bf2f6d6e76918 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 11 Jun 2007 15:40:55 +0000 Subject: Move to kdelibs (needs by kipi-plugins and kdegraphics) svn path=/trunk/KDE/kdelibs/; revision=674018 --- modules/FindGphoto2.cmake | 50 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 modules/FindGphoto2.cmake (limited to 'modules') diff --git a/modules/FindGphoto2.cmake b/modules/FindGphoto2.cmake new file mode 100644 index 00000000..5a0ce432 --- /dev/null +++ b/modules/FindGphoto2.cmake @@ -0,0 +1,50 @@ +# cmake macro to test if we use gphoto2 +# GPHOTO2_FOUND - system has the GPHOTO2 library +# GPHOTO2_INCLUDE_DIR - the GPHOTO2 include directory +# GPHOTO2_LIBRARIES - The libraries needed to use GPHOTO2 + +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +option(KDE4_GPHOTO2 "do not build kamera (gphoto2 required)" ON) +if (KDE4_GPHOTO2 ) + IF (GPHOTO2_LIBRARIES AND GPHOTO2_INCLUDE_DIR) + # in cache already + SET(GPHOTO2_FOUND TRUE) + ELSE (GPHOTO2_LIBRARIES AND GPHOTO2_INCLUDE_DIR) + + FIND_PROGRAM(GHOTO2CONFIG_EXECUTABLE NAMES gphoto2-config PATHS + /usr/bin + /usr/local/bin + ) + + FIND_PROGRAM(GHOTO2PORTCONFIG_EXECUTABLE NAMES gphoto2-port-config PATHS + /usr/bin + /usr/local/bin + ) + set(GPHOTO2_LIBRARIES) + set(GPHOTO2_INCLUDE_DIRS) + # if gphoto2-port-config and gphoto2-config have been found + IF (GHOTO2PORTCONFIG_EXECUTABLE AND GHOTO2CONFIG_EXECUTABLE) + EXEC_PROGRAM(${GHOTO2PORTCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2PORT_LIBRARY) + EXEC_PROGRAM(${GHOTO2CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2_LIBRARY) + + EXEC_PROGRAM(${GHOTO2PORTCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2PORT_INCLUDE_DIR) + EXEC_PROGRAM(${GHOTO2CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2_INCLUDE_DIR) + + set(GPHOTO2_LIBRARIES ${GPHOTO2PORT_LIBRARY} ${GPHOTO2_LIBRARY}) + set(GPHOTO2_INCLUDE_DIRS ${GPHOTO2PORT_INCLUDE_DIR} ${GPHOTO2_INCLUDE_DIR} ) + endif(GHOTO2PORTCONFIG_EXECUTABLE AND GHOTO2CONFIG_EXECUTABLE) + + IF (GPHOTO2_LIBRARIES AND GPHOTO2_INCLUDE_DIRS) + SET(GPHOTO2_FOUND TRUE) + message(STATUS "Found gphoto2: ${GPHOTO2_LIBRARIES}") + ENDIF (GPHOTO2_LIBRARIES AND GPHOTO2_INCLUDE_DIRS) + ENDIF (GPHOTO2_LIBRARIES AND GPHOTO2_INCLUDE_DIR) + MARK_AS_ADVANCED(GPHOTO2_LIBRARIES GPHOTO2_INCLUDE_DIRS) + +endif(KDE4_GPHOTO2) + -- cgit v1.2.1 From ed1c174157fc39738f8d5d7a2a5d8a10e33e95d5 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 11 Jun 2007 15:50:13 +0000 Subject: Needs by kdegraphics and extragear/libs svn path=/trunk/KDE/kdelibs/; revision=674037 --- modules/FindExiv2.cmake | 82 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 modules/FindExiv2.cmake (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake new file mode 100644 index 00000000..bca87294 --- /dev/null +++ b/modules/FindExiv2.cmake @@ -0,0 +1,82 @@ +# - Try to find the Exiv2 library +# Once done this will define +# +# EXIV2_FOUND - system has libexiv2 +# EXIV2_INCLUDE_DIR - the libexiv2 include directory +# EXIV2_LIBRARIES - Link these to use libexiv2 +# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 +# + +if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + + # in cache already + SET(EXIV2_FOUND TRUE) + +else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) + + if(_EXIV2LinkFlags) + # query pkg-config asking for a Exiv2 >= 0.12 + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.12 exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found Exiv2 release >= 0.12") + set(EXIV2_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(FATAL_ERROR "Found Exiv2 release < 0.12") + endif(_return_VALUE STREQUAL "0") + else(_EXIV2LinkFlags) + set(EXIV2_FOUND FALSE) + set(EXIV2_VERSION_GOOD_FOUND FALSE) + message(FATAL_ERROR "Cannot find Exiv2 library!") + endif(_EXIV2LinkFlags) + + else(NOT WIN32) + #Better check + set(EXIV2_VERSION_GOOD_FOUND TRUE) + endif (NOT WIN32) + + if(EXIV2_VERSION_GOOD_FOUND) + set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) + + FIND_PATH(EXIV2_INCLUDE_DIR exiv2/exif.hpp + ${_EXIV2IncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(EXIV2_LIBRARIES NAMES exiv2 libexiv2 + PATHS + ${_EXIV2LinkDir} + /usr/lib + /usr/local/lib + ) + + if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + set(EXIV2_FOUND TRUE) + endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + + if (EXIV2_FOUND) + if (NOT Exiv2_FIND_QUIETLY) + message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") + endif (NOT Exiv2_FIND_QUIETLY) + else (EXIV2_FOUND) + if (Exiv2_FIND_REQUIRED) + if (NOT EXIV2_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find Exiv2 header files") + endif (NOT EXIV2_INCLUDE_DIR) + if (NOT EXIV2_LIBRARIES) + message(FATAL_ERROR "Could NOT find Exiv2 library") + endif (NOT EXIV2_LIBRARIES) + endif (Exiv2_FIND_REQUIRED) + endif (EXIV2_FOUND) + endif(EXIV2_VERSION_GOOD_FOUND) + + MARK_AS_ADVANCED(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) + +endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + -- cgit v1.2.1 From b579d6c4002a3f3825e873dfcee815ba3696b10e Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 11 Jun 2007 19:22:30 +0000 Subject: - Merged KMetaData, Konto, and KNepomuk into one nepomuk folder with two libs: 1. libnepomuk now contains KMetaData and Konto, only using one single namespace "Nepomuk" 2. libnepomuk-middleware is now what knepomuk was before and has the namespace "Nepomuk::Middleware" This makes the design much cleaner and less confusing since we have one name for everything: Nepomuk. I was not happy with Braid and we did not find another name so I stick to Nepomuk now. In the end people now already now this stuff as Nepomuk and it makes the project happy. ;) CCMAIL: nepomuk-kde.semanticdesktop.org svn path=/trunk/KDE/kdelibs/; revision=674110 --- modules/FindKMetaData.cmake | 43 ------------------------------------- modules/FindNepomuk.cmake | 43 +++++++++++++++++++++++++++++++++++++ modules/KMetaDataMacros.cmake | 49 ------------------------------------------- modules/NepomukMacros.cmake | 49 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 92 insertions(+), 92 deletions(-) delete mode 100644 modules/FindKMetaData.cmake create mode 100644 modules/FindNepomuk.cmake delete mode 100644 modules/KMetaDataMacros.cmake create mode 100644 modules/NepomukMacros.cmake (limited to 'modules') diff --git a/modules/FindKMetaData.cmake b/modules/FindKMetaData.cmake deleted file mode 100644 index 9cb59542..00000000 --- a/modules/FindKMetaData.cmake +++ /dev/null @@ -1,43 +0,0 @@ -# Once done this will define -# -# KMETADATA_FOUND - system has KMetaData -# KMETADATA_INCLUDE_DIR - the KMetaData include directory -# KMETADATA_LIBRARIES - Link these to use KMetaData -# KMETADATA_DEFINITIONS - Compiler switches required for using KMetaData -# - -FIND_PATH(KMETADATA_INCLUDE_DIR - NAMES - kmetadata/kmetadata.h - PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} -) - -FIND_LIBRARY(KMETADATA_LIBRARIES - NAMES - kmetadata - kmetadatatools - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} -) - -if(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) - set(KMetaData_FOUND TRUE) -endif(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARIES) - -if(KMetaData_FOUND) - if(NOT KMetaData_FIND_QUIETLY) - message(STATUS "Found KMetaData: ${KMETADATA_LIBRARIES}") - endif(NOT KMetaData_FIND_QUIETLY) -else(KMetaData_FOUND) - if(KMetaData_FIND_REQUIRED) - if(NOT KMETADATA_INCLUDE_DIR) - message(FATAL_ERROR "Could not find KMetaData includes.") - endif(NOT KMETADATA_INCLUDE_DIR) - if(NOT KMETADATA_LIBRARIES) - message(FATAL_ERROR "Could not find KMetaData library.") - endif(NOT KMETADATA_LIBRARIES) - endif(KMetaData_FIND_REQUIRED) -endif(KMetaData_FOUND) diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake new file mode 100644 index 00000000..dc1d36a7 --- /dev/null +++ b/modules/FindNepomuk.cmake @@ -0,0 +1,43 @@ +# Once done this will define +# +# NEPOMUK_FOUND - system has Nepomuk +# NEPOMUK_INCLUDE_DIR - the Nepomuk include directory +# NEPOMUK_LIBRARIES - Link these to use Nepomuk +# NEPOMUK_DEFINITIONS - Compiler switches required for using Nepomuk +# + +FIND_PATH(NEPOMUK_INCLUDE_DIR + NAMES + nepomuk/resource.h + PATHS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(NEPOMUK_LIBRARIES + NAMES + nepomuk + nepomuk-middleware + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +if(NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + set(Nepomuk_FOUND TRUE) +endif(NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + +if(Nepomuk_FOUND) + if(NOT Nepomuk_FIND_QUIETLY) + message(STATUS "Found Nepomuk: ${NEPOMUK_LIBRARIES}") + endif(NOT Nepomuk_FIND_QUIETLY) +else(Nepomuk_FOUND) + if(Nepomuk_FIND_REQUIRED) + if(NOT NEPOMUK_INCLUDE_DIR) + message(FATAL_ERROR "Could not find Nepomuk includes.") + endif(NOT NEPOMUK_INCLUDE_DIR) + if(NOT NEPOMUK_LIBRARIES) + message(FATAL_ERROR "Could not find Nepomuk library.") + endif(NOT NEPOMUK_LIBRARIES) + endif(Nepomuk_FIND_REQUIRED) +endif(Nepomuk_FOUND) diff --git a/modules/KMetaDataMacros.cmake b/modules/KMetaDataMacros.cmake deleted file mode 100644 index b65542e8..00000000 --- a/modules/KMetaDataMacros.cmake +++ /dev/null @@ -1,49 +0,0 @@ -# This file contains the following macros: -# -# KMETADATA_GENERATE_FROM_ONTOLOGY -# - - -# -# KMETADATA_GENERATE_FROM_ONTOLOGY -# (C) 2007 Sebastian Trueg -# -# Parameters: -# ontofile - Path to the NRL ontology defining the resources to be generated. -# targetdir - Folder to which the generated sources should be written. -# out_headers - Variable which will be filled with the names of all generated headers. -# out_sources - Variable which will be filled with the names of all generated sources. -# out_includes - Variable which will be filled with complete include statements of all -# generated resource classes. -# -# In addition to the parameters an arbitrary number of template filenames can be set as arguments -# -macro(KMETADATA_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources out_includes) - - FIND_PROGRAM(RCGEN kmetadata_rcgen PATHS ${BIN_INSTALL_DIR}) - if(RCGEN-NOTFOUND) - message( FATAL_ERROR "Failed to find the KMetaData source generator" ) - endif(RCGEN-NOTFOUND) - - FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) - - execute_process( - COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} - OUTPUT_VARIABLE ${out_headers} - ) - - execute_process( - COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ --ontologies ${ontofile} - OUTPUT_VARIABLE ${out_sources} - ) - - execute_process( - COMMAND ${RCGEN} --listincludes --ontologies ${ontofile} - OUTPUT_VARIABLE ${out_includes} - ) - - execute_process( - COMMAND ${RCGEN} --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} - ) - -endmacro(KMETADATA_GENERATE_FROM_ONTOLOGY) diff --git a/modules/NepomukMacros.cmake b/modules/NepomukMacros.cmake new file mode 100644 index 00000000..af534451 --- /dev/null +++ b/modules/NepomukMacros.cmake @@ -0,0 +1,49 @@ +# This file contains the following macros: +# +# NEPOMUK_GENERATE_FROM_ONTOLOGY +# + + +# +# NEPOMUK_GENERATE_FROM_ONTOLOGY +# (C) 2007 Sebastian Trueg +# +# Parameters: +# ontofile - Path to the NRL ontology defining the resources to be generated. +# targetdir - Folder to which the generated sources should be written. +# out_headers - Variable which will be filled with the names of all generated headers. +# out_sources - Variable which will be filled with the names of all generated sources. +# out_includes - Variable which will be filled with complete include statements of all +# generated resource classes. +# +# In addition to the parameters an arbitrary number of template filenames can be set as arguments +# +macro(NEPOMUK_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources out_includes) + + FIND_PROGRAM(RCGEN nepomuk-rcgen PATHS ${BIN_INSTALL_DIR}) + if(RCGEN-NOTFOUND) + message( FATAL_ERROR "Failed to find the KMetaData source generator" ) + endif(RCGEN-NOTFOUND) + + FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) + + execute_process( + COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} + OUTPUT_VARIABLE ${out_headers} + ) + + execute_process( + COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ --ontologies ${ontofile} + OUTPUT_VARIABLE ${out_sources} + ) + + execute_process( + COMMAND ${RCGEN} --listincludes --ontologies ${ontofile} + OUTPUT_VARIABLE ${out_includes} + ) + + execute_process( + COMMAND ${RCGEN} --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} + ) + +endmacro(NEPOMUK_GENERATE_FROM_ONTOLOGY) -- cgit v1.2.1 From bcac74e9c6a6e41c80aac23683c56fcea57aeb10 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 11 Jun 2007 21:21:52 +0000 Subject: Improved searching for nepomuk libs svn path=/trunk/KDE/kdelibs/; revision=674148 --- modules/FindNepomuk.cmake | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index dc1d36a7..e01741e7 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -12,16 +12,25 @@ FIND_PATH(NEPOMUK_INCLUDE_DIR PATHS ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} -) + ) -FIND_LIBRARY(NEPOMUK_LIBRARIES +FIND_LIBRARY(NEPOMUK_LIBRARY NAMES nepomuk + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + +FIND_LIBRARY(NEPOMUK_MIDDLEWARE_LIBRARY + NAMES nepomuk-middleware PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} -) + ) + +set(NEPOMUK_LIBRARIES ${NEPOMUK_LIBRARY} ${NEPOMUK_MIDDLEWARE_LIBRARY}) if(NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) set(Nepomuk_FOUND TRUE) -- cgit v1.2.1 From 3f660d41b2ee0548fffd72a8467ab2dcdc6edfe1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 12 Jun 2007 03:43:36 +0000 Subject: adapt to cmake 2.4.5 (IS_NEWER_THAN) Alex svn path=/trunk/KDE/kdelibs/; revision=674330 --- modules/kde4automoc.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake index c73d1e35..2a9baa55 100644 --- a/modules/kde4automoc.cmake +++ b/modules/kde4automoc.cmake @@ -8,12 +8,12 @@ include(${KDE4_AUTOMOC_FILE}) macro(PARSE_ONE_FILE _filename _moc_mark_FILE) - if (FILE_IS_NEWER ${_filename} ${_moc_mark_FILE}) - file(WRITE ${_moc_mark_FILE} "#file is autogenerated, do not edit\n") + if ("${_filename}" IS_NEWER_THAN "${_moc_mark_FILE}") + file(WRITE "${_moc_mark_FILE}" "#file is autogenerated, do not edit\n") - file(READ ${_filename} _contents) + file(READ "${_filename}" _contents) - get_filename_component(_abs_PATH ${_filename} PATH) + get_filename_component(_abs_PATH "${_filename}" PATH) message(STATUS "Automoc: Parsing ${_filename}") set(_mocs_PER_FILE) @@ -38,7 +38,7 @@ macro(PARSE_ONE_FILE _filename _moc_mark_FILE) endforeach (_current_MOC_INC) endif (_match) file(APPEND ${_moc_mark_FILE} "set(mocs ${_mocs_PER_FILE})\n") - endif (FILE_IS_NEWER ${_filename} ${_moc_mark_FILE}) + endif ("${_filename}" IS_NEWER_THAN "${_moc_mark_FILE}") endmacro(PARSE_ONE_FILE) @@ -59,11 +59,11 @@ foreach( _current_FILE ${MOC_FILES}) include(${_moc_mark_FILE}) foreach(_current_MOC ${mocs}) - if (FILE_IS_NEWER ${${_current_MOC}_HEADER} ${${_current_MOC}_MOC} OR _force_MOC) + if ("${${_current_MOC}_HEADER}" IS_NEWER_THAN "${${_current_MOC}_MOC}" OR _force_MOC) message(STATUS "Automoc: Generating ${${_current_MOC}_MOC} from ${${_current_MOC}_HEADER}") execute_process(COMMAND ${QT_MOC_EXECUTABLE} ${QT_MOC_INCS} ${${_current_MOC}_HEADER} -o ${${_current_MOC}_MOC}) - endif (FILE_IS_NEWER ${${_current_MOC}_HEADER} ${${_current_MOC}_MOC} OR _force_MOC) + endif ("${${_current_MOC}_HEADER}" IS_NEWER_THAN "${${_current_MOC}_MOC}" OR _force_MOC) endforeach(_current_MOC) -- cgit v1.2.1 From 5ce570ce42ec5acd658d129f6595679346671208 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 13 Jun 2007 08:19:37 +0000 Subject: Not a FATAL_MESSAGE but a STATUS otherwise it breaks optional_module svn path=/trunk/KDE/kdelibs/; revision=674821 --- modules/FindExiv2.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index bca87294..6e34d60e 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -27,12 +27,12 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) message(STATUS "Found Exiv2 release >= 0.12") set(EXIV2_VERSION_GOOD_FOUND TRUE) else(_return_VALUE STREQUAL "0") - message(FATAL_ERROR "Found Exiv2 release < 0.12") + message(STATUS "Found Exiv2 release < 0.12") endif(_return_VALUE STREQUAL "0") else(_EXIV2LinkFlags) set(EXIV2_FOUND FALSE) set(EXIV2_VERSION_GOOD_FOUND FALSE) - message(FATAL_ERROR "Cannot find Exiv2 library!") + message(STATUS "Cannot find Exiv2 library!") endif(_EXIV2LinkFlags) else(NOT WIN32) -- cgit v1.2.1 From b5e87e653d76fbbdd029bc8b3f0a616693137a8e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 13 Jun 2007 18:59:34 +0000 Subject: Minor fix svn path=/trunk/KDE/kdelibs/; revision=675138 --- modules/FindKNepomuk.cmake | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKNepomuk.cmake b/modules/FindKNepomuk.cmake index 8074b031..967dce42 100644 --- a/modules/FindKNepomuk.cmake +++ b/modules/FindKNepomuk.cmake @@ -5,6 +5,10 @@ # KNEPOMUK_LIBRARIES - Link these to use libKNep # +if(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) + set(KNepomuk_FIND_QUIETLY TRUE) +endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) + FIND_PATH(KNEPOMUK_INCLUDES NAMES knepomuk/knepomuk.h @@ -27,9 +31,17 @@ FIND_LIBRARY(KNEPOMUK_LIBRARIES if(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) set(KNEPOMUK_FOUND TRUE) - message(STATUS "Found KNepomuk: ${KNEPOMUK_LIBRARIES}") -else(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) +endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) + +if(KNEPOMUK_FOUND) + if(NOT KNepomuk_FIND_QUIETLY) + message(STATUS "Found KNepomuk: ${KNEPOMUK_LIBRARIES}") + endif(NOT KNepomuk_FIND_QUIETLY) +else(KNEPOMUK_FOUND) if(KNepomuk_FIND_REQUIRED) message(FATAL_ERROR "Could not find KNepomuk library.") endif(KNepomuk_FIND_REQUIRED) -endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) +endif(KNEPOMUK_FOUND) + +MARK_AS_ADVANCED(KNEPOMUK_INCLUDES KNEPOMUK_LIBRARIES) + -- cgit v1.2.1 From f530f8107e6d1ba64b49c1a134f69ab807be43b2 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 13 Jun 2007 19:04:45 +0000 Subject: I think that it's ok we removed all module (cmake-2.4.5 was required some months ago) svn path=/trunk/KDE/kdelibs/; revision=675145 --- modules/CMakeLists.txt | 33 ++++++++------------------------- 1 file changed, 8 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 225d291d..1e12a3aa 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -7,25 +7,8 @@ set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) install( FILES kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in ${cmakeFiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex -set(FILES_TO_REMOVE - ${module_install_dir}/CheckTypeSize.cmake - ${module_install_dir}/FindKDE3.cmake - ${module_install_dir}/FindKDE4.cmake - ${module_install_dir}/FindQtDBus.cmake - ${module_install_dir}/FindZLIB.cmake - ${module_install_dir}/KDE3Macros.cmake - ${module_install_dir}/MacroGetenvWinPath.cmake - ${module_install_dir}/QtDBusMacros.cmake - ${module_install_dir}/UsePkgconfig.cmake - ${module_install_dir}/kde3uic.cmake - ${module_install_dir}/kde3init_dummy.cpp.in - ${module_install_dir}/FindASPELL.cmake - ${module_install_dir}/FindHSPELL.cmake - ${module_install_dir}/FindJasper.cmake - ${module_install_dir}/CheckCXXCompilerFlag.cmake - ${module_install_dir}/FindBZip2.cmake - ${module_install_dir}/CheckCSourceRuns.cmake -) +#set(FILES_TO_REMOVE +#) # can be removed once we require merge into cmake # FindLibXslt.cmake @@ -35,10 +18,10 @@ set(FILES_TO_REMOVE # FindPkgConfig.cmake -install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) +#install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) -file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") -foreach ( _current_FILE ${FILES_TO_REMOVE}) - file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "message(STATUS \"Removing ${_current_FILE}\" )\n" ) - file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) -endforeach ( _current_FILE) +#file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") +#foreach ( _current_FILE ${FILES_TO_REMOVE}) +# file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "message(STATUS \"Removing ${_current_FILE}\" )\n" ) +# file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) +#endforeach ( _current_FILE) -- cgit v1.2.1 From 58a376c46e496cf3c57d82a45a998fc19b05b06b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 13 Jun 2007 19:09:44 +0000 Subject: don't try to use pkgconfig under Windows Minor fix svn path=/trunk/KDE/kdelibs/; revision=675150 --- modules/FindGLIB2.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 749dd671..5edbd7a4 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -9,9 +9,10 @@ if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) # Already in cache, be silent set(GLIB2_FIND_QUIETLY TRUE) endif(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) - -INCLUDE(UsePkgConfig) -PKGCONFIG(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) +IF (NOT WIN32) + INCLUDE(UsePkgConfig) + PKGCONFIG(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) +endif(NOT WIN32) FIND_PATH(GLIB2_INCLUDE_DIR glib.h ${_LibGLIB2IncDir} @@ -37,6 +38,10 @@ if(GLIB2_FOUND) if(NOT GLIB2_FIND_QUIETLY) message(STATUS "Found glib2: ${GLIB2_LIBRARIES} ${GLIB2_LIBRARIES}") endif(NOT GLIB2_FIND_QUIETLY) +else(GLIB2_FOUND) + if (GLIB2_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find glib2 library") + endif (GLIB2_FIND_REQUIRED) endif(GLIB2_FOUND) MARK_AS_ADVANCED(GLIB2_INCLUDE_DIR GLIB2_LIBRARIES) -- cgit v1.2.1 From 4d4782aeaa3d342bcc73554826fd7f01cb7e8b7d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 13 Jun 2007 20:04:34 +0000 Subject: Minor fix svn path=/trunk/KDE/kdelibs/; revision=675178 --- modules/FindPostgreSQL.cmake | 20 ++++++++++++++++---- modules/FindSasl2.cmake | 4 ++++ 2 files changed, 20 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake index db657240..d72aae8c 100644 --- a/modules/FindPostgreSQL.cmake +++ b/modules/FindPostgreSQL.cmake @@ -11,6 +11,12 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if (POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) + # Already in cache, be silent + set(PostgreSQL_FIND_QUIETLY TRUE) +endif (POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) + + find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h /usr/include/pgsql /usr/local/include/pgsql @@ -24,11 +30,17 @@ find_library(POSTGRESQL_LIBRARIES NAMES pq if(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) set(POSTGRESQL_FOUND TRUE) - message(STATUS "Found PostgreSQL: ${POSTGRESQL_INCLUDE_DIR}, ${POSTGRESQL_LIBRARIES}") -else(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) - set(POSTGRESQL_FOUND FALSE) - message(STATUS "PostgreSQL not found.") endif(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) +if(POSTGRESQL_FOUND) + if (NOT PostgreSQL_FIND_QUIETLY) + message(STATUS "Found PostgreSQL: ${POSTGRESQL_INCLUDE_DIR}, ${POSTGRESQL_LIBRARIES}") + endif(NOT PostgreSQL_FIND_QUIETLY) +else(POSTGRESQL_FOUND) + if (PostgreSQL_FIND_REQUIRED) + message(FATAL_ERROR "PostgreSQL not found.") + endif(PostgreSQL_FIND_REQUIRED) +endif(POSTGRESQL_FOUND) + mark_as_advanced(POSTGRESQL_INCLUDE_DIR POSTGRESQL_LIBRARIES) diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index 1f8603d7..855e21c8 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -37,6 +37,10 @@ if (SASL2_FOUND) if (NOT Sasl2_FIND_QUIETLY) message(STATUS "Found sasl2: ${SASL2_LIBRARIES}") endif (NOT Sasl2_FIND_QUIETLY) +else(SASL2_FOUND) + if (Sasl2_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find sals2 library") + endif (Sasl2_FIND_REQUIRED) endif (SASL2_FOUND) MARK_AS_ADVANCED(SASL2_INCLUDE_DIR SASL2_LIBRARIES) -- cgit v1.2.1 From 8405ccdb9d092aa35405ad0dd98252884ea38219 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 13 Jun 2007 22:40:08 +0000 Subject: Fix for Q_WS_MAC on mac when frameworks are enabled, based on patch by mac.younker gmail.com svn path=/trunk/KDE/kdelibs/; revision=675309 --- modules/FindQt4.cmake | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 22458560..9ce256fc 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -187,6 +187,7 @@ INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) +INCLUDE(MacroPushRequiredVars) SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) @@ -386,15 +387,19 @@ IF (QT4_QMAKE_FOUND) # Find out what window system we're using # ############################################# - # Save required includes variable - SET(CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) + # Save required includes and required_flags variables + macro_push_required_vars() # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") + # On Mac OS X when Qt has framework support, also add the framework path + IF( QT_USE_FRAMEWORKS ) + SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") + ENDIF( QT_USE_FRAMEWORKS ) # Check for Window system symbols (note: only one should end up being set) CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) - CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) IF (QT_QTCOPY_REQUIRED) CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) @@ -403,8 +408,8 @@ IF (QT4_QMAKE_FOUND) ENDIF (NOT QT_IS_QTCOPY) ENDIF (QT_QTCOPY_REQUIRED) - # Restore CMAKE_REQUIRED_INCLUDES variable - SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE}) + # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables + macro_pop_required_vars() # ############################################# -- cgit v1.2.1 From b1fc7c8162575b445f0550b524afa439b29564c8 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Sat, 16 Jun 2007 14:36:43 +0000 Subject: Redirection of translation calls generated by uic no longer necessary; KLocale::translateQt() now does the right thing. svn path=/trunk/KDE/kdelibs/; revision=676280 --- modules/kde4uic.cmake | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 92841663..94b177db 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -7,7 +7,7 @@ if (KDE3_IMPL) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} - -nounload -tr tr2i18n + -nounload -impl ${KDE_UIC_H_FILE} ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS @@ -19,7 +19,7 @@ endif (KDE3_IMPL) if (KDE3_HEADER) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} - -nounload -tr tr2i18n + -nounload ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS ERROR_QUIET @@ -31,7 +31,6 @@ endif (KDE3_HEADER) if (KDE4_HEADER) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} - -tr tr2i18n ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS ERROR_QUIET @@ -41,9 +40,6 @@ if (KDE4_HEADER) endif (KDE4_HEADER) -#replace tr218n("") with QString::null to avoid warning from KLocale -STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) -STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) #replace image15_data with img15_filename to make enable_final work STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") #fixup include guard -- cgit v1.2.1 From 6d1204bd641eda05a5ff5b82582d759ebce3ef68 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 16 Jun 2007 14:46:22 +0000 Subject: small fix for MAKE_FOO_EXPORT svn path=/trunk/KDE/kdelibs/; revision=676284 --- modules/KDE4Macros.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index afd48e32..0988291b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -649,6 +649,7 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) if (WIN32) # for shared libraries/plugins a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) + string(REPLACE "-" "_" _symbol ${_symbol}) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) @@ -850,6 +851,7 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) if (WIN32) # for shared libraries a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) + string(REPLACE "-" "_" _symbol ${_symbol}) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) @@ -907,7 +909,8 @@ ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) string(TOUPPER ${_libName} _libNameUpperCase) - # the next line is is required, because in CMake arguments to macros are not real + string(REPLACE "-" "_" _libNameUpperCase ${_libNameUpperCase}) + # the next line is is required, because in CMake arguments to macros are not real # variables, but handled differently. The next line create a real CMake variable, # so configure_file() will replace it correctly. set(_libName ${_libName}) -- cgit v1.2.1 From 27684b0b8b67c19afe4f724a3204c5b51e769525 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Sat, 16 Jun 2007 15:07:49 +0000 Subject: Revert commit 676280 (the uic -tr redirection may not be needed, but it is good performance wise). svn path=/trunk/KDE/kdelibs/; revision=676291 --- modules/kde4uic.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 94b177db..92841663 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -7,7 +7,7 @@ if (KDE3_IMPL) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} - -nounload + -nounload -tr tr2i18n -impl ${KDE_UIC_H_FILE} ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS @@ -19,7 +19,7 @@ endif (KDE3_IMPL) if (KDE3_HEADER) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} - -nounload + -nounload -tr tr2i18n ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS ERROR_QUIET @@ -31,6 +31,7 @@ endif (KDE3_HEADER) if (KDE4_HEADER) EXECUTE_PROCESS(COMMAND ${KDE_UIC_EXECUTABLE} + -tr tr2i18n ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS ERROR_QUIET @@ -40,6 +41,9 @@ if (KDE4_HEADER) endif (KDE4_HEADER) +#replace tr218n("") with QString::null to avoid warning from KLocale +STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) +STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) #replace image15_data with img15_filename to make enable_final work STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") #fixup include guard -- cgit v1.2.1 From c0aa4d1692a6b7b8c00b8d9203379469cf3be531 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 17 Jun 2007 21:13:37 +0000 Subject: As discussed on kde-buildsystem rename kde4_add_test to kde4_add_test_executable and introduce kde4_add_unit_test for unittests, which combines kde4_add_test_executable and cmake's add_test. Port the kdelibs module, the other modules will be comitted shortly. CCMAIL: kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=676857 --- modules/FindKDE4Internal.cmake | 15 +++++++++++++++ modules/KDE4Macros.cmake | 22 ++++++++++++++++++++-- 2 files changed, 35 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index bfcd1f07..1857f0cc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -178,6 +178,21 @@ # Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL # and under Windows it adds a -DMAKE__LIB definition to the compilation. # +# KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) +# add a unit test, which is executed when running make test +# it will be built with RPATH poiting to the build dir +# The targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. +# The name of the target can be specified using TESTNAME , if it is not given +# the macro will default to the +# +# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) +# add an test executable +# it will be built with RPATH poiting to the build dir +# The targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. # KDE4_INSTALL_ICONS( path theme) # Installs all png and svgz files in the current directory to the icon # directoy given in path, in the subdirectory for the given icon theme. diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0988291b..9e5494a6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -742,13 +742,31 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) +# add a unit test, which is executed when running make test +# it will be built with RPATH poiting to the build dir +# The targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. +# The name of the target can be specified using TESTNAME , if it is not given +# the macro will default to the +macro (KDE4_ADD_UNIT_TEST _test_NAME) + set(_srcList ${ARGN}) + set(_targetName ${_test_NAME}) + if( ${ARGV1} STREQUAL "TESTNAME" ) + set(_targetName ${ARGV2}) + LIST(REMOVE_AT _srcList 0 1) + endif( ${ARGV1} STREQUAL "TESTNAME" ) + kde4_add_test_executable( ${_test_NAME} ${_srcList} ) + get_target_property(_target_OUTPUT_PATH ${_test_NAME} EXECUTABLE_OUTPUT_PATH) + add_test( ${_targetName} ${_target_OUTPUT_PATH}/${_test_NAME} ) +endmacro (KDE4_ADD_UNIT_TEST) # add an test executable # it will be built with RPATH poiting to the build dir # The targets are always created, but only built for the "all" # target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target # are created but not built by default. You can build them by manually building the target. -macro (KDE4_ADD_TEST _target_NAME) +macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) set(_add_executable_param) @@ -770,7 +788,7 @@ macro (KDE4_ADD_TEST _target_NAME) target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) endif (WIN32) -endmacro (KDE4_ADD_TEST) +endmacro (KDE4_ADD_TEST_EXECUTABLE) macro (KDE4_ADD_EXECUTABLE _target_NAME) -- cgit v1.2.1 From 0f1e5c539059915a7803c799bb4ba8efcc7f9cb2 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 18 Jun 2007 06:26:31 +0000 Subject: Need by digikam/amarok svn path=/trunk/KDE/kdelibs/; revision=676977 --- modules/FindSqlite.cmake | 55 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 modules/FindSqlite.cmake (limited to 'modules') diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake new file mode 100644 index 00000000..a6041e62 --- /dev/null +++ b/modules/FindSqlite.cmake @@ -0,0 +1,55 @@ +# - Try to find the SQLITE library +# Once done this will define +# +# SQLITE_FOUND - system has sqlite +# SQLITE_INCLUDE_DIR - the sqlite include directory +# SQLITE_LIBRARIES - Link these to use sqlite +# SQLITE_DEFINITIONS - Compiler switches required for using sqlite +# + +if (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) + + # in cache already + SET(SQLITE_FOUND TRUE) + +else (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) + IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(sqlite3 _SQLITEIncDir _SQLITELinkDir _SQLITELinkFlags _SQLITECflags) + + set(SQLITE_DEFINITIONS ${_SQLITECflags}) + ENDIF (NOT WIN32) + + FIND_PATH(SQLITE_INCLUDE_DIR qlite3.h + ${_SQLITEIncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(SQLITE_LIBRARIES NAMES sqlite3 + PATHS + ${_SQLITELinkDir} + /usr/lib + /usr/local/lib + ) + + if (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) + set(SQLITE_FOUND TRUE) + endif (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) + + if (SQLITE_FOUND) + if (NOT Sqlite_FIND_QUIETLY) + message(STATUS "Found SQLITE: ${SQLITE_LIBRARIES}") + endif (NOT Sqlite_FIND_QUIETLY) + else (SQLITE_FOUND) + if (Sqlite_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find SQLITE") + endif (Sqlite_FIND_REQUIRED) + endif (SQLITE_FOUND) + + MARK_AS_ADVANCED(SQLITE_INCLUDE_DIR SQLITE_LIBRARIES) + +endif (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) -- cgit v1.2.1 From 7160513cae73e0b55f2175d4b258a59c8db5124b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 18 Jun 2007 06:35:01 +0000 Subject: Move into kdelibs needs by digikam/libkipip-plugins svn path=/trunk/KDE/kdelibs/; revision=676983 --- modules/FindKdcraw.cmake | 99 ++++++++++++++++++++++++++++++++++++++++++++++++ modules/FindKexiv2.cmake | 99 ++++++++++++++++++++++++++++++++++++++++++++++++ modules/FindKipi.cmake | 99 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 297 insertions(+) create mode 100644 modules/FindKdcraw.cmake create mode 100644 modules/FindKexiv2.cmake create mode 100644 modules/FindKipi.cmake (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake new file mode 100644 index 00000000..c6b10d43 --- /dev/null +++ b/modules/FindKdcraw.cmake @@ -0,0 +1,99 @@ +# - Try to find the Kdcraw library +# Once done this will define +# +# KDCRAW_FOUND - system has libkdcraw +# KDCRAW_INCLUDE_DIR - the libkdcraw include directory +# KDCRAW_LIBRARIES - Link these to use libkdcraw +# KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw +# + +if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + + message(STATUS "Found Kdcraw library in cache: ${KDCRAW_LIBRARIES}") + + # in cache already + SET(KDCRAW_FOUND TRUE) + +else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + + message(STATUS "Check Kdcraw library in local sub-folder...") + + # Check if library is not in local sub-folder + + FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/version.h ${CMAKE_BINARY_DIR}/libkdcraw NO_DEFAULT_PATH) + + if (KDCRAW_LOCAL_FOUND) + + set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) + set(KDCRAW_DEFINITIONS -I${KDCRAW_INCLUDE_DIR}) + set(KDCRAW_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libkdcraw.so) + message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_LIBRARIES}") + set(KDCRAW_FOUND TRUE) + MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) + + else(KDCRAW_LOCAL_FOUND) + + message(STATUS "Check Kdcraw library using pkg-config...") + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libkdcraw _KDCRAWIncDir _KDCRAWLinkDir _KDCRAWLinkFlags _KDCRAWCflags) + + if(_KDCRAWLinkFlags) + # query pkg-config asking for a libkdcraw >= 0.2.0 + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkdcraw RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found libkdcraw release >= 0.2.0") + set(KDCRAW_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(FATAL_ERROR "Found libkdcaw release < 0.2.0") + endif(_return_VALUE STREQUAL "0") + else(_KDCRAWLinkFlags) + set(KDCRAW_VERSION_GOOD_FOUND FALSE) + set(KDCRAW_FOUND FALSE) + message(FATAL_ERROR "Could NOT find libkdcraw library!") + endif(_KDCRAWLinkFlags) + + if(KDCRAW_VERSION_GOOD_FOUND) + set(KDCRAW_DEFINITIONS ${_KDCRAWCflags}) + + FIND_PATH(KDCRAW_INCLUDE_DIR libkdcraw/version.h + ${_KDCRAWIncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(KDCRAW_LIBRARIES NAMES kdcraw + PATHS + ${_KDCRAWLinkDir} + /usr/lib + /usr/local/lib + ) + + if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + set(KDCRAW_FOUND TRUE) + endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + + if (KDCRAW_FOUND) + if (NOT Kdcraw_FIND_QUIETLY) + message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") + endif (NOT Kdcraw_FIND_QUIETLY) + else (KDCRAW_FOUND) + if (Kdcraw_FIND_REQUIRED) + if (NOT KDCRAW_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkdcraw header files") + endif (NOT KDCRAW_INCLUDE_DIR) + if (NOT KDCRAW_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkdcraw library") + endif (NOT KDCRAW_LIBRARIES) + endif (Kdcraw_FIND_REQUIRED) + endif (KDCRAW_FOUND) + endif(KDCRAW_VERSION_GOOD_FOUND) + + MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) + + endif(KDCRAW_LOCAL_FOUND) + +endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake new file mode 100644 index 00000000..b8c54a2a --- /dev/null +++ b/modules/FindKexiv2.cmake @@ -0,0 +1,99 @@ +# - Try to find the KExiv2 library +# Once done this will define +# +# KEXIV2_FOUND - system has libkexiv2 +# KEXIV2_INCLUDE_DIR - the libkexiv2 include directory +# KEXIV2_LIBRARIES - Link these to use libkexiv2 +# KEXIV2_DEFINITIONS - Compiler switches required for using libkexiv2 +# + +if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + + message(STATUS "Found Kexiv2 library in cache: ${KEXIV2_LIBRARIES}") + + # in cache already + SET(KEXIV2_FOUND TRUE) + +else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + + message(STATUS "Check Kexiv2 library in local sub-folder...") + + # Check if library is not in local sub-folder + + FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h ${CMAKE_SOURCE_DIR}/libkexiv2 NO_DEFAULT_PATH) + + if (KEXIV2_LOCAL_FOUND) + + set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) + set(KEXIV2_DEFINITIONS -I${KEXIV2_INCLUDE_DIR}) + set(KEXIV2_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libkexiv2.so) + message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_LIBRARIES}") + set(KEXIV2_FOUND TRUE) + MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) + + else(KEXIV2_LOCAL_FOUND) + + message(STATUS "Check Kexiv2 library using pkg-config...") + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libkexiv2 _KEXIV2IncDir _KEXIV2LinkDir _KEXIV2LinkFlags _KEXIV2Cflags) + + if(_KEXIV2LinkFlags) + # query pkg-config asking for a libkexiv2 >= 0.2.0 + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkexiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found libkexiv2 release >= 0.2.0") + set(KEXIV2_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(FATAL_ERROR "Found libkexiv2 release < 0.2.0") + endif(_return_VALUE STREQUAL "0") + else(_KEXIV2LinkFlags) + set(KEXIV2_VERSION_GOOD_FOUND FALSE) + set(KEXIV2_FOUND FALSE) + message(FATAL_ERROR "Could NOT find libkexiv2 library!") + endif(_KEXIV2LinkFlags) + + if(KEXIV2_VERSION_GOOD_FOUND) + set(KEXIV2_DEFINITIONS ${_KEXIV2Cflags}) + + FIND_PATH(KEXIV2_INCLUDE_DIR libkexiv2/version.h + ${_KEXIV2IncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(KEXIV2_LIBRARIES NAMES kexiv2 + PATHS + ${_KEXIV2LinkDir} + /usr/lib + /usr/local/lib + ) + + if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + set(KEXIV2_FOUND TRUE) + endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + + if (KEXIV2_FOUND) + if (NOT Kexiv2_FIND_QUIETLY) + message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") + endif (NOT Kexiv2_FIND_QUIETLY) + else (KEXIV2_FOUND) + if (Kexiv2_FIND_REQUIRED) + if (NOT KEXIV2_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkexiv2 header files") + endif (NOT KEXIV2_INCLUDE_DIR) + if (NOT KEXIV2_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkexiv2 library") + endif (NOT KEXIV2_LIBRARIES) + endif (Kexiv2_FIND_REQUIRED) + endif (KEXIV2_FOUND) + endif(KEXIV2_VERSION_GOOD_FOUND) + + MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) + + endif(KEXIV2_LOCAL_FOUND) + +endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake new file mode 100644 index 00000000..da8902d6 --- /dev/null +++ b/modules/FindKipi.cmake @@ -0,0 +1,99 @@ +# - Try to find the Kipi library +# Once done this will define +# +# KIPI_FOUND - system has libkipi +# KIPI_INCLUDE_DIR - the libkipi include directory +# KIPI_LIBRARIES - Link these to use libkipi +# KIPI_DEFINITIONS - Compiler switches required for using libkipi +# + +if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + + message(STATUS "Found Kipi library in cache: ${KIPI_LIBRARIES}") + + # in cache already + SET(KIPI_FOUND TRUE) + +else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + + message(STATUS "Check Kipi library in local sub-folder...") + + # Check if library is not in local sub-folder + + FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h ${CMAKE_SOURCE_DIR}/libkipi NO_DEFAULT_PATH) + + if (KIPI_LOCAL_FOUND) + + set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkipi) + set(KIPI_DEFINITIONS -I${KIPI_INCLUDE_DIR}) + set(KIPI_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libkipi.so) + message(STATUS "Found Kipi library in local sub-folder: ${KIPI_LIBRARIES}") + set(KIPI_FOUND TRUE) + MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) + + else(KIPI_LOCAL_FOUND) + + message(STATUS "Check Kipi library using pkg-config...") + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libkipi _KIPIIncDir _KIPILinkDir _KIPILinkFlags _KIPICflags) + + if(_KIPILinkFlags) + # query pkg-config asking for a libkipi >= 0.2.0 + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkipi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found libkipi release >= 0.2.0") + set(KIPI_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(FATAL_ERROR "Found libkipi release < 0.2.0") + endif(_return_VALUE STREQUAL "0") + else(_KIPILinkFlags) + set(KIPI_VERSION_GOOD_FOUND FALSE) + set(KIPI_FOUND FALSE) + message(FATAL_ERROR "Could NOT find libkipi library!") + endif(_KIPILinkFlags) + + if(KIPI_VERSION_GOOD_FOUND) + set(KIPI_DEFINITIONS ${_KIPICflags}) + + FIND_PATH(KIPI_INCLUDE_DIR libkipi/version.h + ${_KIPIIncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(KIPI_LIBRARIES NAMES kipi + PATHS + ${_KIPILinkDir} + /usr/lib + /usr/local/lib + ) + + if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + set(KIPI_FOUND TRUE) + endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + + if (KIPI_FOUND) + if (NOT Kipi_FIND_QUIETLY) + message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") + endif (NOT Kipi_FIND_QUIETLY) + else (KIPI_FOUND) + if (Kipi_FIND_REQUIRED) + if (NOT KIPI_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkipi header files") + endif (NOT KIPI_INCLUDE_DIR) + if (NOT KIPI_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkipi library") + endif (NOT KIPI_LIBRARIES) + endif (Kipi_FIND_REQUIRED) + endif (KIPI_FOUND) + endif(KIPI_VERSION_GOOD_FOUND) + + MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) + + endif(KIPI_LOCAL_FOUND) + +endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) -- cgit v1.2.1 From e85c078c9a31bb5a50526bb4a734c4812ea682ca Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 18 Jun 2007 06:40:59 +0000 Subject: don't try to use pkgconfig under Windows svn path=/trunk/KDE/kdelibs/; revision=676990 --- modules/FindKdcraw.cmake | 21 ++++++++++++--------- modules/FindKexiv2.cmake | 23 +++++++++++++---------- modules/FindKipi.cmake | 21 ++++++++++++--------- 3 files changed, 37 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index c6b10d43..8d06a858 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -34,14 +34,14 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) else(KDCRAW_LOCAL_FOUND) message(STATUS "Check Kdcraw library using pkg-config...") - - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + if(NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) - PKGCONFIG(libkdcraw _KDCRAWIncDir _KDCRAWLinkDir _KDCRAWLinkFlags _KDCRAWCflags) + PKGCONFIG(libkdcraw _KDCRAWIncDir _KDCRAWLinkDir _KDCRAWLinkFlags _KDCRAWCflags) - if(_KDCRAWLinkFlags) + if(_KDCRAWLinkFlags) # query pkg-config asking for a libkdcraw >= 0.2.0 EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkdcraw RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") @@ -50,12 +50,15 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) else(_return_VALUE STREQUAL "0") message(FATAL_ERROR "Found libkdcaw release < 0.2.0") endif(_return_VALUE STREQUAL "0") - else(_KDCRAWLinkFlags) + else(_KDCRAWLinkFlags) set(KDCRAW_VERSION_GOOD_FOUND FALSE) set(KDCRAW_FOUND FALSE) message(FATAL_ERROR "Could NOT find libkdcraw library!") - endif(_KDCRAWLinkFlags) - + endif(_KDCRAWLinkFlags) + ELSE(NOT WIN32) + set(KDCRAW_VERSION_GOOD_FOUND TRUE) + ENDif(NOT WIN32) + if(KDCRAW_VERSION_GOOD_FOUND) set(KDCRAW_DEFINITIONS ${_KDCRAWCflags}) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index b8c54a2a..a9eca2dc 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -32,16 +32,16 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) else(KEXIV2_LOCAL_FOUND) + if(NOT WIN32) + message(STATUS "Check Kexiv2 library using pkg-config...") - message(STATUS "Check Kexiv2 library using pkg-config...") - - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) - PKGCONFIG(libkexiv2 _KEXIV2IncDir _KEXIV2LinkDir _KEXIV2LinkFlags _KEXIV2Cflags) + PKGCONFIG(libkexiv2 _KEXIV2IncDir _KEXIV2LinkDir _KEXIV2LinkFlags _KEXIV2Cflags) - if(_KEXIV2LinkFlags) + if(_KEXIV2LinkFlags) # query pkg-config asking for a libkexiv2 >= 0.2.0 EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkexiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") @@ -50,12 +50,15 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) else(_return_VALUE STREQUAL "0") message(FATAL_ERROR "Found libkexiv2 release < 0.2.0") endif(_return_VALUE STREQUAL "0") - else(_KEXIV2LinkFlags) + else(_KEXIV2LinkFlags) set(KEXIV2_VERSION_GOOD_FOUND FALSE) set(KEXIV2_FOUND FALSE) message(FATAL_ERROR "Could NOT find libkexiv2 library!") - endif(_KEXIV2LinkFlags) - + endif(_KEXIV2LinkFlags) + else(NOT WIN32) + set(KEXIV2_VERSION_GOOD_FOUND TRUE) + endif(NOT WIN32) + if(KEXIV2_VERSION_GOOD_FOUND) set(KEXIV2_DEFINITIONS ${_KEXIV2Cflags}) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index da8902d6..e7027ef0 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -33,15 +33,16 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) else(KIPI_LOCAL_FOUND) - message(STATUS "Check Kipi library using pkg-config...") + if(NOT WIN32) + message(STATUS "Check Kipi library using pkg-config...") - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) - PKGCONFIG(libkipi _KIPIIncDir _KIPILinkDir _KIPILinkFlags _KIPICflags) + PKGCONFIG(libkipi _KIPIIncDir _KIPILinkDir _KIPILinkFlags _KIPICflags) - if(_KIPILinkFlags) + if(_KIPILinkFlags) # query pkg-config asking for a libkipi >= 0.2.0 EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkipi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") @@ -50,12 +51,14 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) else(_return_VALUE STREQUAL "0") message(FATAL_ERROR "Found libkipi release < 0.2.0") endif(_return_VALUE STREQUAL "0") - else(_KIPILinkFlags) + else(_KIPILinkFlags) set(KIPI_VERSION_GOOD_FOUND FALSE) set(KIPI_FOUND FALSE) message(FATAL_ERROR "Could NOT find libkipi library!") - endif(_KIPILinkFlags) - + endif(_KIPILinkFlags) + else(NOT WIN32) + set(KIPI_VERSION_GOOD_FOUND TRUE) + endif(NOT WIN32) if(KIPI_VERSION_GOOD_FOUND) set(KIPI_DEFINITIONS ${_KIPICflags}) -- cgit v1.2.1 From b236d0e3257ee7c40b3056a2b9c43211e675b4c7 Mon Sep 17 00:00:00 2001 From: Gilles Caulier Date: Mon, 18 Jun 2007 12:23:56 +0000 Subject: fix qlite.h to sqlite.h svn path=/trunk/KDE/kdelibs/; revision=677073 --- modules/FindSqlite.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index a6041e62..b3cd2a08 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -23,7 +23,7 @@ else (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) set(SQLITE_DEFINITIONS ${_SQLITECflags}) ENDIF (NOT WIN32) - FIND_PATH(SQLITE_INCLUDE_DIR qlite3.h + FIND_PATH(SQLITE_INCLUDE_DIR sqlite3.h ${_SQLITEIncDir} /usr/include /usr/local/include -- cgit v1.2.1 From e2374ae393a442b7846937c7ddec393f330c2d43 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 19 Jun 2007 02:02:02 +0000 Subject: less messages Alex svn path=/trunk/KDE/kdelibs/; revision=677369 --- modules/kde4automoc.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake index 2a9baa55..70417672 100644 --- a/modules/kde4automoc.cmake +++ b/modules/kde4automoc.cmake @@ -43,7 +43,7 @@ macro(PARSE_ONE_FILE _filename _moc_mark_FILE) endmacro(PARSE_ONE_FILE) foreach( _current_FILE ${MOC_FILES}) - message(STATUS "Automoc: Checking ${_current_FILE}...") +# message(STATUS "Automoc: Checking ${_current_FILE}...") get_filename_component(_basename ${_current_FILE} NAME) set(_moc_mark_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_automoc.mark) -- cgit v1.2.1 From e9003c815444b9e90aff403375964386564e6457 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 20 Jun 2007 09:58:45 +0000 Subject: - added win32 packager support - added explorer integration for easier access to the build environment (shell scripts with predefined pathes for mingw and nmake and msvc) svn path=/trunk/KDE/kdelibs/; revision=677974 --- modules/FindKDE4Internal.cmake | 1746 +++++++++++++++++++------------------ modules/FindKDEWIN_Packager.cmake | 175 ++++ modules/Win32Macros.cmake | 44 + 3 files changed, 1098 insertions(+), 867 deletions(-) create mode 100644 modules/FindKDEWIN_Packager.cmake create mode 100644 modules/Win32Macros.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1857f0cc..d9976b2f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1,867 +1,879 @@ -# - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros -# -# This module defines the following variables: -# -# KDE4_FOUND - set to TRUE if everything required for building KDE software has been found -# -# KDE4_DEFINITIONS - compiler definitions required for compiling KDE software -# KDE4_INCLUDE_DIR - the KDE 4 include directory -# KDE4_INCLUDES - all include directories required for KDE, i.e. -# KDE4_INCLUDE_DIR, but also the Qt4 include directories -# and other platform specific include directories -# KDE4_LIB_DIR - the directory where the KDE libraries are installed, -# intended to be used with LINK_DIRECTORIES() -# -# The following variables are defined for the various tools required to -# compile KDE software: -# -# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable -# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable -# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable -# -# The following variables point to the location of the KDE libraries, -# but shouldn't be used directly: -# -# KDE4_KDECORE_LIBRARY - the kdecore library -# KDE4_KDEUI_LIBRARY - the kdeui library -# KDE4_KIO_LIBRARY - the kio library -# KDE4_KPARTS_LIBRARY - the kparts library -# KDE4_KUTILS_LIBRARY - the kutils library -# KDE4_KDE3SUPPORT_LIBRARY - the kde3support library -# KDE4_KFILE_LIBRARY - the kfile library -# KDE4_KHTML_LIBRARY - the khtml library -# KDE4_KJS_LIBRARY - the kjs library -# KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library -# KDE4_KDEPRINT_LIBRARY - the kdeprint library -# KDE4_KDNSSD_LIBRARY - the kdnssd library -# KDE4_PHONON_LIBRARY - the phonon library -# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library -# KDE4_KDEFX_LIBRARY - the kdefx library -# KDE4_THREADWEAVER_LIBRARY- the threadweaver library -# KDE4_SOLID_LIBRARY - the solid library -# KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library -# KDE4_KROSSCORE_LIBRARY - the krosscore library -# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library -# KDE4_KNEPOMUK_LIBRARY - the knepomuk library -# KDE4_KMETADATA_LIBRARY - the kmetadata library -# -# Compared to the variables above, the following variables -# also contain all of the depending libraries, so the variables below -# should be used instead of the ones above: -# -# KDE4_KDECORE_LIBS - the kdecore library and all depending libraries -# KDE4_KDEUI_LIBS - the kdeui library and all depending libraries -# KDE4_KIO_LIBS - the kio library and all depending libraries -# KDE4_KPARTS_LIBS - the kparts library and all depending libraries -# KDE4_KUTILS_LIBS - the kutils library and all depending libraries -# KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries -# KDE4_KFILE_LIBS - the kfile library and all depending libraries -# KDE4_KHTML_LIBS - the khtml library and all depending libraries -# KDE4_KJS_LIBS - the kjs library and all depending libraries -# KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries -# KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries -# KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries -# KDE4_KDESU_LIBS - the kdesu library and all depending libraries -# KDE4_PHONON_LIBS - the phonon library and all depending librairies -# KDE4_KDEFX_LIBS - the kdefx library and all depending librairies -# KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries -# KDE4_SOLID_LIBS - the solid library and all depending libraries -# KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries -# KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries -# KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries -# KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries -# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries -# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries -# -# This module defines a bunch of variables used as locations -# for install directories. They are all interpreted relative -# to CMAKE_INSTALL_PREFIX -# -# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) -# SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) -# LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) -# CONFIG_INSTALL_DIR - the config file install dir -# DATA_INSTALL_DIR - the parent directory where applications can install their data -# HTML_INSTALL_DIR - the HTML install dir for documentation -# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) -# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) -# KCFG_INSTALL_DIR - the install dir for kconfig files -# LOCALE_INSTALL_DIR - the install dir for translations -# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) -# MIME_INSTALL_DIR - the install dir for the mimetype desktop files -# PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) -# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files -# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files -# SOUND_INSTALL_DIR - the install dir for sound files -# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) -# WALLPAPER_INSTALL_DIR - the install dir for wallpapers -# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir -# XDG_APPS_DIR - the XDG apps dir -# XDG_DIRECTORY_DIR - the XDG directory -# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) -# DBUS_SERVICES_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) -# -# The following variables are provided, but are seem to be unused: -# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") -# APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") -# -# The following user adjustable options are provided: -# -# KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation -# KDE4_BUILD_TESTS - enable this to build the testcases -# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature -# -# It also adds the following macros (from KDE4Macros.cmake) -# KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) -# Use this to add Qt designer ui files to your application/library. -# -# KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) -# Use this to add Qt designer ui files from Qt version 3 to your application/library. -# -# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) -# Use this to add KDE config compiler files to your application/library. -# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. -# -# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) -# Use this to add widget description files for the makekdewidgets code generator -# for Qt Designer plugins. -# -# KDE4_AUTOMOC(file1 ... fileN) -# Call this if you want to have automatic moc file handling. -# This means if you include "foo.moc" in the source file foo.cpp -# a moc file for the header foo.h will be created automatically. -# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() -# to exclude some files in the list from being processed. -# If you don't want automoc, you can also use QT4_WRAP_CPP() or QT4_GENERATE_MOC() -# from FindQt4.cmake to have the moc files generated. This will be faster -# but require more manual work. -# -# KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) -# This will create and install a simple libtool file for the -# given target. This might be required for other software. -# The libtool file will be install in subdir, relative to CMAKE_INSTALL_PREFIX . -# -# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) -# This macro is intended mainly for internal uses. -# It is used for enable-final. It will generate two source files, -# one for the C files and one for the C++ files. -# These files will have the names given in filename_CXX and filename_C. -# -# KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN ) -# Create a KDE plugin (KPart, kioslave, etc.) from the given source files. -# It supports KDE4_ENABLE_FINAL. -# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. -# It creates and installs an appropriate libtool la-file. -# -# KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) -# Create a KDE application in the form of a module loadable via kdeinit. -# A library named kdeinit_ will be created and a small executable which links to it. -# It supports KDE4_ENABLE_FINAL -# If the executable has to be run from the buildtree (e.g. unit tests and code generators -# used later on when compiling), set the option RUN_UNINSTALLED. -# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X -# application bundles are created, with the NOGUI option no bundles but simple executables -# are created. Currently it doesn't have any effect on other platforms. -# -# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) -# Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: -# -support for KDE4_ENABLE_FINAL -# -support for automoc -# -automatic RPATH handling -# If the executable has to be run from the buildtree (e.g. unit tests and code generators -# used later on when compiling), set the option RUN_UNINSTALLED. -# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X -# application bundles are created, with the NOGUI option no bundles but simple executables -# are created. Currently it doesn't have any effect on other platforms. -# -# KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) -# Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL -# and under Windows it adds a -DMAKE__LIB definition to the compilation. -# -# KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) -# add a unit test, which is executed when running make test -# it will be built with RPATH poiting to the build dir -# The targets are always created, but only built for the "all" -# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target -# are created but not built by default. You can build them by manually building the target. -# The name of the target can be specified using TESTNAME , if it is not given -# the macro will default to the -# -# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) -# add an test executable -# it will be built with RPATH poiting to the build dir -# The targets are always created, but only built for the "all" -# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target -# are created but not built by default. You can build them by manually building the target. -# KDE4_INSTALL_ICONS( path theme) -# Installs all png and svgz files in the current directory to the icon -# directoy given in path, in the subdirectory for the given icon theme. -# -# KDE4_CREATE_HANDBOOK( docbookfile ) -# Create the handbook from the docbookfile (using meinproc) -# -# KDE4_INSTALL_HANDBOOK() -# Install the handbook documentation -# -# KDE4_CREATE_HTML_HANDBOOK( docbookfile ) -# Create HTML version of the handbook from the docbookfile (using meinproc) -# -# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally -# _KDE4_PLATFORM_DEFINITIONS is used only internally -# -# -# Copyright (c) 2006, Alexander Neundorf -# Copyright (c) 2006, Laurent Montel, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -include (MacroEnsureVersion) - -cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) - -set(QT_MIN_VERSION "4.3.0") -#this line includes FindQt4.cmake, which searches the Qt library and headers -find_package(Qt4 REQUIRED) - -if (NOT QT_DBUSXML2CPP_EXECUTABLE) - message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") -endif (NOT QT_DBUSXML2CPP_EXECUTABLE) - - -# Perl is required for building KDE software, -find_package(Perl REQUIRED) - -include (MacroLibrary) -include (CheckCXXCompilerFlag) -include (CheckCXXSourceCompiles) - -#add some KDE specific stuff - -# the following are directories where stuff will be installed to -set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) - -#are we trying to compile kdelibs ? -#then enter bootstrap mode -if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping TRUE) - message(STATUS "Building kdelibs...") -else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping FALSE) -endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - -# get the directory of the current file, used later on in the file -get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) - - -if (NOT _kdeBootStrapping) - # this file contains all dependencies of all libraries of kdelibs, Alex - include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) -endif (NOT _kdeBootStrapping) - -# this macro implements some very special logic how to deal with the cache -# by default the various install locations inherit their value from theit "parent" variable -# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will -# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX -# this would work completely without using the cache. -# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into -# the cache, otherwise it will be forgotten on the next cmake run. -# Once a variable is in the cache, it doesn't depend on its "parent" variables -# anymore and you can only change it by editing it directly. -# this macro helps in this regard, because as long as you don't set one of the -# variables explicitely to some location, it will always calculate its value from its -# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. -# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location -# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. -# -# additionally if installing to the same location as kdelibs, the other install -# directories are reused from the installed kdelibs -macro(_SET_FANCY _var _value _comment) - set(predefinedvalue "${_value}") - if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - set(predefinedvalue "${KDE4_${_var}}") - endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - - if (NOT DEFINED ${_var}) - set(${_var} ${predefinedvalue}) - else (NOT DEFINED ${_var}) - set(${_var} "${${_var}}" CACHE PATH "${_comment}") - endif (NOT DEFINED ${_var}) -endmacro(_SET_FANCY) - - -_set_fancy(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share "Base directory for files which go to share/") -_set_fancy(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} "Base directory for executables and libraries") - -_set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") -_set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") -_set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") - -if(WIN32) - _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") -else(WIN32) - _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") -endif(WIN32) -_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") - -_set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") -_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") -_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") -_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") -_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") -_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") -_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") - -# To help with the migration issue, this uses set instead of _set_fancy, temporarily. -# (Otherwise all modules would keep installing into the old dirs) -# This can be reverted starting from May 2007 -set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services") -set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes") -#_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") -#_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") - -_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") -_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") -_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") -_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") - # this one shouldn't be used anymore -_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") -_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") - -_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") -_set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") - -_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") -_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") -_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") -_set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") -_set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") - -################################# - - -# the following are directories where stuff will be installed to - - -option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") -option(KDE4_BUILD_TESTS "Build the tests") - -if( KDE4_ENABLE_FINAL) - add_definitions(-DKDE_USE_FINAL) -endif(KDE4_ENABLE_FINAL) - -#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable -#which is something between a shared library and a normal executable. -#Programs compiled with these features appear as ?shared object? with the file command. -#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" -option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") - -#now try to find some kde stuff - -if (_kdeBootStrapping) - set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) - set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) - set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) - set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) - set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) - set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) - set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) - set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) - set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) - set(KDE4_PHONON_LIBS ${QT_QTDBUS_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} phonon) - set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) - set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) - set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) - - set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - - if (WIN32) - set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) - # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) - else (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) - endif (WIN32) - - set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) - - # when building kdelibs, make the kcfg rules depend on the binaries... - set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) - set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) - set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) - - set(KDE4_INSTALLED_VERSION_OK TRUE) - -else (_kdeBootStrapping) - - # ... but NOT otherwise - set( _KDE4_KCONFIG_COMPILER_DEP) - set( _KDE4_MAKEKDEWIDGETS_DEP) - set( _KDE4_MEINPROC_EXECUTABLE_DEP) - - # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 - exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) - - string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") - if (KDEVERSION) - - string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") - - # we need at least this version: - if (NOT KDE_MIN_VERSION) - set(KDE_MIN_VERSION "3.9.0") - endif (NOT KDE_MIN_VERSION) - - #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") - - macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) - - else (KDEVERSION) - message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") - endif (KDEVERSION) - - - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - - # this file contains all dependencies of all libraries of kdelibs, Alex - include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) - - find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) - - find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - - find_library(KDE4_KDEFX_LIBRARY NAMES kdefx PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEFX_LIBS ${kdefx_LIB_DEPENDS} ${KDE4_KDEFX_LIBRARY} ) - - find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) - - find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) - - find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) - - find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) - - find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) - - find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) - - find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) - - find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) - - find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) - - find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) - - if (UNIX) - find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) - endif (UNIX) - - find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) - - find_library(KDE4_PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_PHONON_LIBS ${phonon_LIB_DEPENDS} ${KDE4_PHONON_LIBRARY} ) - - find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) - - find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) - - find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) - - find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) - - find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) - find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) - - find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) - - # Can't do that, it's not always compiled. - #find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - #set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) - - # Can't do that, it's not always compiled. See FindKMetaData.cmake - #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) - - get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) - - # kpassworddialog.h is new with KDE4 - # KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake - find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) - - # at first look in LIBEXEC_INSTALL_DIR and no default paths, - # if this didn't succeed, the second call makes cmake search again, but in the standard paths - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) - - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) - - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) - -endif (_kdeBootStrapping) - - -##################### and now the platform specific stuff ############################ - -# Set a default build type for single-configuration -# CMake generators if no build type is set. -if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE RelWithDebInfo) -endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) - - -if (WIN32) - - if(CYGWIN) - message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") - endif(CYGWIN) - - find_package(KDEWIN32 REQUIRED) - - set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) - - # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, - # otherwise they come from KDELibsDependencies.cmake, Alex - if (_kdeBootStrapping) - set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) - endif (_kdeBootStrapping) - - # windows, mingw - if(MINGW) - #hmmm, something special to do here ? - endif(MINGW) - - # windows, microsoft compiler - if(MSVC) - set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) - # C4250: 'class1' : inherits 'class2::member' via dominance - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) - # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) - # C4396: 'identifier' : 'function' the inline specifier cannot be used when a friend declaration refers to a specialization of a function template - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4396" ) - if(CMAKE_COMPILER_2005) - # to avoid a lot of deprecated warnings - add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS ) - # 'identifier' : no suitable definition provided for explicit template instantiation request - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) - endif(CMAKE_COMPILER_2005) - endif(MSVC) - - - # for visual studio IDE set the path correctly for custom commands - # maybe under windows bat-files should be generated for running apps during the build - if(MSVC_IDE) - get_filename_component(PERL_LOCATION "${PERL_EXECUTABLE}" PATH) - file(TO_NATIVE_PATH "${PERL_LOCATION}" PERL_PATH_WINDOWS) - file(TO_NATIVE_PATH "${QT_BINARY_DIR}" QT_BIN_DIR_WINDOWS) - set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" - CACHE STATIC "MSVC IDE Run path" FORCE) - endif(MSVC_IDE) - -endif (WIN32) - - -# also use /usr/local by default under UNIX, including Mac OS X -if (UNIX) - option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." OFF) - - link_directories(/usr/local/lib) - set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) - - # the rest is RPATH handling - # here the defaults are set - # which are partly overwritten in kde4_handle_rpath_for_library() - # and kde4_handle_rpath_for_executable(), both located in KDE4Macros.cmake, Alex - if (APPLE) - set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) - else (APPLE) - # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling - set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) - set(CMAKE_SKIP_BUILD_RPATH TRUE) - set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) - set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) - endif (APPLE) -endif (UNIX) - - -if (Q_WS_X11) - # Done by FindQt4.cmake already - #find_package(X11 REQUIRED) - # UNIX has already set _KDE4_PLATFORM_INCLUDE_DIRS, so append - set(_KDE4_PLATFORM_INCLUDE_DIRS ${_KDE4_PLATFORM_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) -endif (Q_WS_X11) - - -# This will need to be modified later to support either Qt/X11 or Qt/Mac builds -if (APPLE) - - set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) - - # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow - # -undefined dynamic_lookup; in the future we should do this programmatically - # hmm... why doesn't this work? - set (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) - - # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default - # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented - # or perhaps it already is, and I just don't know where to look ;) - - set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress ${CMAKE_SHARED_LINKER_FLAGS}") - set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress ${CMAKE_MODULE_LINKER_FLAGS}") - #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") - #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") - - # we profile... - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - - # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex - # optimization flags are set below for the various build types - set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") -endif (APPLE) - - -if (CMAKE_SYSTEM_NAME MATCHES Linux) - if (CMAKE_COMPILER_IS_GNUCXX) - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") - # we profile... - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - endif (CMAKE_COMPILER_IS_GNUCXX) - if (CMAKE_C_COMPILER MATCHES "icc") - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") - endif (CMAKE_C_COMPILER MATCHES "icc") -endif (CMAKE_SYSTEM_NAME MATCHES Linux) - -if (CMAKE_SYSTEM_NAME MATCHES BSD) - set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - set ( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lc") -endif (CMAKE_SYSTEM_NAME MATCHES BSD) - -# compiler specific stuff, maybe this should be done differently, Alex - -if (MSVC) - set (KDE4_ENABLE_EXCEPTIONS -EHsc) -endif(MSVC) - -if (MINGW) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols") -endif (MINGW) - -if (CMAKE_COMPILER_IS_GNUCXX) - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) - # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") - set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") - set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") - - if (CMAKE_SYSTEM_NAME MATCHES Linux) - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") - add_definitions (-D_BSD_SOURCE) - endif (CMAKE_SYSTEM_NAME MATCHES Linux) - - - check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) - if(KDE4_ENABLE_FPIE) - if(HAVE_FPIE_SUPPORT) - set (KDE4_CXX_FPIE_FLAGS "-fPIE") - set (KDE4_PIE_LDFLAGS "-pie") - else(HAVE_FPIE_SUPPORT) - MESSAGE(STATUS "Your compiler doesn't support PIE flag") - endif(HAVE_FPIE_SUPPORT) - endif(KDE4_ENABLE_FPIE) - # save a little by making local statics not threadsafe - check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) - if (__KDE_HAVE_NO_THREADSAFE_STATICS) - # currently disabled for Alpha1 due to what appears - # to be a compiler bug - # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806 - #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") - endif (__KDE_HAVE_NO_THREADSAFE_STATICS) - - # visibility support - check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) - - # get the gcc version - exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) - - string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") - # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: - if (NOT _gcc_version) - string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") - endif (NOT _gcc_version) - - macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) - macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) - - set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) - if (GCC_IS_NEWER_THAN_4_1) - exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) - string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") - endif (GCC_IS_NEWER_THAN_4_1) - - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - set (KDE4_C_FLAGS "-fvisibility=hidden") - - if (GCC_IS_NEWER_THAN_4_2) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") - endif (GCC_IS_NEWER_THAN_4_2) - else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - -endif (CMAKE_COMPILER_IS_GNUCXX) - -if (CMAKE_C_COMPILER MATCHES "icc") - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) - # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") - set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wpointer-arith -fno-common") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wpointer-arith -fno-exceptions -fno-common") - - # visibility support - set(__KDE_HAVE_ICC_VISIBILITY) -# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_ICC_VISIBILITY) -# if (__KDE_HAVE_ICC_VISIBILITY) -# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") -# endif (__KDE_HAVE_ICC_VISIBILITY) - -endif (CMAKE_C_COMPILER MATCHES "icc") - -# we prefer to use a different postfix for debug libs only on Windows -# does not work atm -if (WIN32) - SET(CMAKE_DEBUG_POSTFIX "") -endif (WIN32) - -########### end of platform specific stuff ########################## - - -# KDE4Macros.cmake contains all the KDE specific macros -include(${kde_cmake_module_dir}/KDE4Macros.cmake) - - -# decide whether KDE4 has been found -set(KDE4_FOUND FALSE) -if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) - set(KDE4_FOUND TRUE) -endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) - - -macro (KDE4_PRINT_RESULTS) - - # inside kdelibs the include dir and lib dir are internal, not "found" - if (NOT _kdeBootStrapping) - if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.0 include dir: ${KDE4_INCLUDE_DIR}") - else(KDE4_INCLUDE_DIR) - message(STATUS "ERROR: unable to find KDE 4 headers") - endif(KDE4_INCLUDE_DIR) - - if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4 library dir: ${KDE4_LIB_DIR}") - else(KDE4_LIB_DIR) - message(STATUS "ERROR: unable to find KDE 4 core library") - endif(KDE4_LIB_DIR) - endif (NOT _kdeBootStrapping) - - if(KDE4_KCFGC_EXECUTABLE) - message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") - else(KDE4_KCFGC_EXECUTABLE) - message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") - endif(KDE4_KCFGC_EXECUTABLE) -endmacro (KDE4_PRINT_RESULTS) - - -if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) - #bail out if something wasn't found - kde4_print_results() - if (NOT KDE4_INSTALLED_VERSION_OK) - message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") - endif (NOT KDE4_INSTALLED_VERSION_OK) - - if (NOT KDE4_KCFGC_EXECUTABLE) - message(FATAL_ERROR "ERROR: could not detect a usable kconfig-compiler") - endif (NOT KDE4_KCFGC_EXECUTABLE) - - message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") -endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) - - -if (NOT KDE4Internal_FIND_QUIETLY) - kde4_print_results() -endif (NOT KDE4Internal_FIND_QUIETLY) - -#add the found Qt and KDE include directories to the current include path -#the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include -set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ) - -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) - -if (NOT _kde4_uninstall_rule_created) - set(_kde4_uninstall_rule_created TRUE) - - configure_file("${kde_cmake_module_dir}/kde4_cmake_uninstall.cmake.in" "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake" @ONLY) - - add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake") - -endif (NOT _kde4_uninstall_rule_created) +# - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros +# +# This module defines the following variables: +# +# KDE4_FOUND - set to TRUE if everything required for building KDE software has been found +# +# KDE4_DEFINITIONS - compiler definitions required for compiling KDE software +# KDE4_INCLUDE_DIR - the KDE 4 include directory +# KDE4_INCLUDES - all include directories required for KDE, i.e. +# KDE4_INCLUDE_DIR, but also the Qt4 include directories +# and other platform specific include directories +# KDE4_LIB_DIR - the directory where the KDE libraries are installed, +# intended to be used with LINK_DIRECTORIES() +# +# The following variables are defined for the various tools required to +# compile KDE software: +# +# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable +# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable +# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable +# +# The following variables point to the location of the KDE libraries, +# but shouldn't be used directly: +# +# KDE4_KDECORE_LIBRARY - the kdecore library +# KDE4_KDEUI_LIBRARY - the kdeui library +# KDE4_KIO_LIBRARY - the kio library +# KDE4_KPARTS_LIBRARY - the kparts library +# KDE4_KUTILS_LIBRARY - the kutils library +# KDE4_KDE3SUPPORT_LIBRARY - the kde3support library +# KDE4_KFILE_LIBRARY - the kfile library +# KDE4_KHTML_LIBRARY - the khtml library +# KDE4_KJS_LIBRARY - the kjs library +# KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library +# KDE4_KDEPRINT_LIBRARY - the kdeprint library +# KDE4_KDNSSD_LIBRARY - the kdnssd library +# KDE4_PHONON_LIBRARY - the phonon library +# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library +# KDE4_KDEFX_LIBRARY - the kdefx library +# KDE4_THREADWEAVER_LIBRARY- the threadweaver library +# KDE4_SOLID_LIBRARY - the solid library +# KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library +# KDE4_KROSSCORE_LIBRARY - the krosscore library +# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library +# KDE4_KNEPOMUK_LIBRARY - the knepomuk library +# KDE4_KMETADATA_LIBRARY - the kmetadata library +# +# Compared to the variables above, the following variables +# also contain all of the depending libraries, so the variables below +# should be used instead of the ones above: +# +# KDE4_KDECORE_LIBS - the kdecore library and all depending libraries +# KDE4_KDEUI_LIBS - the kdeui library and all depending libraries +# KDE4_KIO_LIBS - the kio library and all depending libraries +# KDE4_KPARTS_LIBS - the kparts library and all depending libraries +# KDE4_KUTILS_LIBS - the kutils library and all depending libraries +# KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries +# KDE4_KFILE_LIBS - the kfile library and all depending libraries +# KDE4_KHTML_LIBS - the khtml library and all depending libraries +# KDE4_KJS_LIBS - the kjs library and all depending libraries +# KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries +# KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries +# KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries +# KDE4_KDESU_LIBS - the kdesu library and all depending libraries +# KDE4_PHONON_LIBS - the phonon library and all depending librairies +# KDE4_KDEFX_LIBS - the kdefx library and all depending librairies +# KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries +# KDE4_SOLID_LIBS - the solid library and all depending libraries +# KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries +# KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries +# KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries +# KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries +# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries +# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries +# +# This module defines a bunch of variables used as locations +# for install directories. They are all interpreted relative +# to CMAKE_INSTALL_PREFIX +# +# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) +# SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) +# LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) +# CONFIG_INSTALL_DIR - the config file install dir +# DATA_INSTALL_DIR - the parent directory where applications can install their data +# HTML_INSTALL_DIR - the HTML install dir for documentation +# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) +# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) +# KCFG_INSTALL_DIR - the install dir for kconfig files +# LOCALE_INSTALL_DIR - the install dir for translations +# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) +# MIME_INSTALL_DIR - the install dir for the mimetype desktop files +# PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) +# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files +# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files +# SOUND_INSTALL_DIR - the install dir for sound files +# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) +# WALLPAPER_INSTALL_DIR - the install dir for wallpapers +# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir +# XDG_APPS_DIR - the XDG apps dir +# XDG_DIRECTORY_DIR - the XDG directory +# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) +# DBUS_SERVICES_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) +# +# The following variables are provided, but are seem to be unused: +# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") +# APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") +# +# The following user adjustable options are provided: +# +# KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation +# KDE4_BUILD_TESTS - enable this to build the testcases +# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature +# +# It also adds the following macros (from KDE4Macros.cmake) +# KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) +# Use this to add Qt designer ui files to your application/library. +# +# KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) +# Use this to add Qt designer ui files from Qt version 3 to your application/library. +# +# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) +# Use this to add KDE config compiler files to your application/library. +# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. +# +# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) +# Use this to add widget description files for the makekdewidgets code generator +# for Qt Designer plugins. +# +# KDE4_AUTOMOC(file1 ... fileN) +# Call this if you want to have automatic moc file handling. +# This means if you include "foo.moc" in the source file foo.cpp +# a moc file for the header foo.h will be created automatically. +# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() +# to exclude some files in the list from being processed. +# If you don't want automoc, you can also use QT4_WRAP_CPP() or QT4_GENERATE_MOC() +# from FindQt4.cmake to have the moc files generated. This will be faster +# but require more manual work. +# +# KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) +# This will create and install a simple libtool file for the +# given target. This might be required for other software. +# The libtool file will be install in subdir, relative to CMAKE_INSTALL_PREFIX . +# +# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) +# This macro is intended mainly for internal uses. +# It is used for enable-final. It will generate two source files, +# one for the C files and one for the C++ files. +# These files will have the names given in filename_CXX and filename_C. +# +# KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN ) +# Create a KDE plugin (KPart, kioslave, etc.) from the given source files. +# It supports KDE4_ENABLE_FINAL. +# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. +# It creates and installs an appropriate libtool la-file. +# +# KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) +# Create a KDE application in the form of a module loadable via kdeinit. +# A library named kdeinit_ will be created and a small executable which links to it. +# It supports KDE4_ENABLE_FINAL +# If the executable has to be run from the buildtree (e.g. unit tests and code generators +# used later on when compiling), set the option RUN_UNINSTALLED. +# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X +# application bundles are created, with the NOGUI option no bundles but simple executables +# are created. Currently it doesn't have any effect on other platforms. +# +# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) +# Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: +# -support for KDE4_ENABLE_FINAL +# -support for automoc +# -automatic RPATH handling +# If the executable has to be run from the buildtree (e.g. unit tests and code generators +# used later on when compiling), set the option RUN_UNINSTALLED. +# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X +# application bundles are created, with the NOGUI option no bundles but simple executables +# are created. Currently it doesn't have any effect on other platforms. +# +# KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) +# Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL +# and under Windows it adds a -DMAKE__LIB definition to the compilation. +# +# KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) +# add a unit test, which is executed when running make test +# it will be built with RPATH poiting to the build dir +# The targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. +# The name of the target can be specified using TESTNAME , if it is not given +# the macro will default to the +# +# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) +# add an test executable +# it will be built with RPATH poiting to the build dir +# The targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. +# KDE4_INSTALL_ICONS( path theme) +# Installs all png and svgz files in the current directory to the icon +# directoy given in path, in the subdirectory for the given icon theme. +# +# KDE4_CREATE_HANDBOOK( docbookfile ) +# Create the handbook from the docbookfile (using meinproc) +# +# KDE4_INSTALL_HANDBOOK() +# Install the handbook documentation +# +# KDE4_CREATE_HTML_HANDBOOK( docbookfile ) +# Create HTML version of the handbook from the docbookfile (using meinproc) +# +# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally +# _KDE4_PLATFORM_DEFINITIONS is used only internally +# +# +# Copyright (c) 2006, Alexander Neundorf +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +include (MacroEnsureVersion) + +cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) + +set(QT_MIN_VERSION "4.3.0") +#this line includes FindQt4.cmake, which searches the Qt library and headers +find_package(Qt4 REQUIRED) + +if (NOT QT_DBUSXML2CPP_EXECUTABLE) + message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") +endif (NOT QT_DBUSXML2CPP_EXECUTABLE) + + +# Perl is required for building KDE software, +find_package(Perl REQUIRED) + +include (MacroLibrary) +include (CheckCXXCompilerFlag) +include (CheckCXXSourceCompiles) + +#add some KDE specific stuff + +# the following are directories where stuff will be installed to +set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) + +#are we trying to compile kdelibs ? +#then enter bootstrap mode +if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_kdeBootStrapping TRUE) + message(STATUS "Building kdelibs...") +else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_kdeBootStrapping FALSE) +endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + +# get the directory of the current file, used later on in the file +get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) + + +if (NOT _kdeBootStrapping) + # this file contains all dependencies of all libraries of kdelibs, Alex + include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) +endif (NOT _kdeBootStrapping) + +# this macro implements some very special logic how to deal with the cache +# by default the various install locations inherit their value from theit "parent" variable +# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will +# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX +# this would work completely without using the cache. +# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into +# the cache, otherwise it will be forgotten on the next cmake run. +# Once a variable is in the cache, it doesn't depend on its "parent" variables +# anymore and you can only change it by editing it directly. +# this macro helps in this regard, because as long as you don't set one of the +# variables explicitely to some location, it will always calculate its value from its +# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. +# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location +# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. +# +# additionally if installing to the same location as kdelibs, the other install +# directories are reused from the installed kdelibs +macro(_SET_FANCY _var _value _comment) + set(predefinedvalue "${_value}") + if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + set(predefinedvalue "${KDE4_${_var}}") + endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + + if (NOT DEFINED ${_var}) + set(${_var} ${predefinedvalue}) + else (NOT DEFINED ${_var}) + set(${_var} "${${_var}}" CACHE PATH "${_comment}") + endif (NOT DEFINED ${_var}) +endmacro(_SET_FANCY) + + +_set_fancy(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share "Base directory for files which go to share/") +_set_fancy(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} "Base directory for executables and libraries") + +_set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") +_set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") +_set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + +if(WIN32) + _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") +else(WIN32) + _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") +endif(WIN32) +_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") + +_set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") +_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") +_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") +_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") +_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") +_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") +_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") +_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") + +# To help with the migration issue, this uses set instead of _set_fancy, temporarily. +# (Otherwise all modules would keep installing into the old dirs) +# This can be reverted starting from May 2007 +set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services") +set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes") +#_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") +#_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") + +_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") +_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") +_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") +_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") + # this one shouldn't be used anymore +_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") +_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") + +_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") +_set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") + +_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") +_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") +_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") +_set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") +_set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + +################################# + + +# the following are directories where stuff will be installed to + + +option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") +option(KDE4_BUILD_TESTS "Build the tests") + +if( KDE4_ENABLE_FINAL) + add_definitions(-DKDE_USE_FINAL) +endif(KDE4_ENABLE_FINAL) + +#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable +#which is something between a shared library and a normal executable. +#Programs compiled with these features appear as ?shared object? with the file command. +#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" +option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") + +#now try to find some kde stuff + +if (_kdeBootStrapping) + set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) + set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) + set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) + set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) + set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) + set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) + set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) + set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) + set(KDE4_PHONON_LIBS ${QT_QTDBUS_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} phonon) + set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) + set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) + set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) + + set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + + if (WIN32) + set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) + else (WIN32) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) + endif (WIN32) + + set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) + + # when building kdelibs, make the kcfg rules depend on the binaries... + set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) + set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) + + set(KDE4_INSTALLED_VERSION_OK TRUE) + +else (_kdeBootStrapping) + + # ... but NOT otherwise + set( _KDE4_KCONFIG_COMPILER_DEP) + set( _KDE4_MAKEKDEWIDGETS_DEP) + set( _KDE4_MEINPROC_EXECUTABLE_DEP) + + # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 + exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) + + string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") + if (KDEVERSION) + + string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") + + # we need at least this version: + if (NOT KDE_MIN_VERSION) + set(KDE_MIN_VERSION "3.9.0") + endif (NOT KDE_MIN_VERSION) + + #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") + + macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) + + else (KDEVERSION) + message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") + endif (KDEVERSION) + + + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + + # this file contains all dependencies of all libraries of kdelibs, Alex + include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + + find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) + + find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) + + find_library(KDE4_KDEFX_LIBRARY NAMES kdefx PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEFX_LIBS ${kdefx_LIB_DEPENDS} ${KDE4_KDEFX_LIBRARY} ) + + find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) + + find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) + + find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) + + find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) + + find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) + + find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) + + find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) + + find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) + + find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) + + find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) + + if (UNIX) + find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + endif (UNIX) + + find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) + + find_library(KDE4_PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_PHONON_LIBS ${phonon_LIB_DEPENDS} ${KDE4_PHONON_LIBRARY} ) + + find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) + + find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) + + find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) + + find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) + + find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) + find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) + + find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) + + # Can't do that, it's not always compiled. + #find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + #set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) + + # Can't do that, it's not always compiled. See FindKMetaData.cmake + #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) + + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) + + # kpassworddialog.h is new with KDE4 + # KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake + find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) + + # at first look in LIBEXEC_INSTALL_DIR and no default paths, + # if this didn't succeed, the second call makes cmake search again, but in the standard paths + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) + + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) + + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) + +endif (_kdeBootStrapping) + + +##################### and now the platform specific stuff ############################ + +# Set a default build type for single-configuration +# CMake generators if no build type is set. +if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE RelWithDebInfo) +endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + + +if (WIN32) + + if(CYGWIN) + message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") + endif(CYGWIN) + + find_package(KDEWIN32 REQUIRED) + + # limit win32 packaging to kdelibs at now + # don't know if package name, version and notes are always available + if(_kdeBootStrapping) + find_package(KDEWIN_Packager) + if (KDEWIN_PACKAGER_FOUND) + KDEWIN_PACKAGER("kdelibs" "${KDE_VERSION}" "KDE base library" "") + endif (KDEWIN_PACKAGER_FOUND) + + include(Win32Macros) + addExplorerWrapper("kdelibs") + endif(_kdeBootStrapping) + + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) + + # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, + # otherwise they come from KDELibsDependencies.cmake, Alex + if (_kdeBootStrapping) + set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) + endif (_kdeBootStrapping) + + # windows, mingw + if(MINGW) + #hmmm, something special to do here ? + endif(MINGW) + + # windows, microsoft compiler + if(MSVC) + set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + # C4250: 'class1' : inherits 'class2::member' via dominance + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) + # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) + # C4396: 'identifier' : 'function' the inline specifier cannot be used when a friend declaration refers to a specialization of a function template + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4396" ) + if(CMAKE_COMPILER_2005) + # to avoid a lot of deprecated warnings + add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS ) + # 'identifier' : no suitable definition provided for explicit template instantiation request + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) + endif(CMAKE_COMPILER_2005) + endif(MSVC) + + + # for visual studio IDE set the path correctly for custom commands + # maybe under windows bat-files should be generated for running apps during the build + if(MSVC_IDE) + get_filename_component(PERL_LOCATION "${PERL_EXECUTABLE}" PATH) + file(TO_NATIVE_PATH "${PERL_LOCATION}" PERL_PATH_WINDOWS) + file(TO_NATIVE_PATH "${QT_BINARY_DIR}" QT_BIN_DIR_WINDOWS) + set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" + CACHE STATIC "MSVC IDE Run path" FORCE) + endif(MSVC_IDE) + +endif (WIN32) + + +# also use /usr/local by default under UNIX, including Mac OS X +if (UNIX) + option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." OFF) + + link_directories(/usr/local/lib) + set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) + + # the rest is RPATH handling + # here the defaults are set + # which are partly overwritten in kde4_handle_rpath_for_library() + # and kde4_handle_rpath_for_executable(), both located in KDE4Macros.cmake, Alex + if (APPLE) + set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) + else (APPLE) + # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling + set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) + set(CMAKE_SKIP_BUILD_RPATH TRUE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + endif (APPLE) +endif (UNIX) + + +if (Q_WS_X11) + # Done by FindQt4.cmake already + #find_package(X11 REQUIRED) + # UNIX has already set _KDE4_PLATFORM_INCLUDE_DIRS, so append + set(_KDE4_PLATFORM_INCLUDE_DIRS ${_KDE4_PLATFORM_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) +endif (Q_WS_X11) + + +# This will need to be modified later to support either Qt/X11 or Qt/Mac builds +if (APPLE) + + set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) + + # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow + # -undefined dynamic_lookup; in the future we should do this programmatically + # hmm... why doesn't this work? + set (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) + + # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default + # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented + # or perhaps it already is, and I just don't know where to look ;) + + set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress ${CMAKE_SHARED_LINKER_FLAGS}") + set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress ${CMAKE_MODULE_LINKER_FLAGS}") + #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") + #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") + + # we profile... + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + + # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex + # optimization flags are set below for the various build types + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") +endif (APPLE) + + +if (CMAKE_SYSTEM_NAME MATCHES Linux) + if (CMAKE_COMPILER_IS_GNUCXX) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") + # we profile... + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + endif (CMAKE_COMPILER_IS_GNUCXX) + if (CMAKE_C_COMPILER MATCHES "icc") + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") + endif (CMAKE_C_COMPILER MATCHES "icc") +endif (CMAKE_SYSTEM_NAME MATCHES Linux) + +if (CMAKE_SYSTEM_NAME MATCHES BSD) + set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) + set ( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lc") +endif (CMAKE_SYSTEM_NAME MATCHES BSD) + +# compiler specific stuff, maybe this should be done differently, Alex + +if (MSVC) + set (KDE4_ENABLE_EXCEPTIONS -EHsc) +endif(MSVC) + +if (MINGW) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols") +endif (MINGW) + +if (CMAKE_COMPILER_IS_GNUCXX) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + # Select flags. + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") + + if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") + add_definitions (-D_BSD_SOURCE) + endif (CMAKE_SYSTEM_NAME MATCHES Linux) + + + check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) + if(KDE4_ENABLE_FPIE) + if(HAVE_FPIE_SUPPORT) + set (KDE4_CXX_FPIE_FLAGS "-fPIE") + set (KDE4_PIE_LDFLAGS "-pie") + else(HAVE_FPIE_SUPPORT) + MESSAGE(STATUS "Your compiler doesn't support PIE flag") + endif(HAVE_FPIE_SUPPORT) + endif(KDE4_ENABLE_FPIE) + # save a little by making local statics not threadsafe + check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) + if (__KDE_HAVE_NO_THREADSAFE_STATICS) + # currently disabled for Alpha1 due to what appears + # to be a compiler bug + # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806 + #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") + endif (__KDE_HAVE_NO_THREADSAFE_STATICS) + + # visibility support + check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) + + # get the gcc version + exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) + + string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") + # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: + if (NOT _gcc_version) + string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") + endif (NOT _gcc_version) + + macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) + macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) + + set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) + if (GCC_IS_NEWER_THAN_4_1) + exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) + string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") + endif (GCC_IS_NEWER_THAN_4_1) + + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") + set (KDE4_C_FLAGS "-fvisibility=hidden") + + if (GCC_IS_NEWER_THAN_4_2) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") + endif (GCC_IS_NEWER_THAN_4_2) + else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + set (__KDE_HAVE_GCC_VISIBILITY 0) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + +endif (CMAKE_COMPILER_IS_GNUCXX) + +if (CMAKE_C_COMPILER MATCHES "icc") + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + # Select flags. + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") + set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") + + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wpointer-arith -fno-common") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wpointer-arith -fno-exceptions -fno-common") + + # visibility support + set(__KDE_HAVE_ICC_VISIBILITY) +# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_ICC_VISIBILITY) +# if (__KDE_HAVE_ICC_VISIBILITY) +# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") +# endif (__KDE_HAVE_ICC_VISIBILITY) + +endif (CMAKE_C_COMPILER MATCHES "icc") + +# we prefer to use a different postfix for debug libs only on Windows +# does not work atm +if (WIN32) + SET(CMAKE_DEBUG_POSTFIX "") +endif (WIN32) + +########### end of platform specific stuff ########################## + + +# KDE4Macros.cmake contains all the KDE specific macros +include(${kde_cmake_module_dir}/KDE4Macros.cmake) + + +# decide whether KDE4 has been found +set(KDE4_FOUND FALSE) +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) + set(KDE4_FOUND TRUE) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) + + +macro (KDE4_PRINT_RESULTS) + + # inside kdelibs the include dir and lib dir are internal, not "found" + if (NOT _kdeBootStrapping) + if(KDE4_INCLUDE_DIR) + message(STATUS "Found KDE 4.0 include dir: ${KDE4_INCLUDE_DIR}") + else(KDE4_INCLUDE_DIR) + message(STATUS "ERROR: unable to find KDE 4 headers") + endif(KDE4_INCLUDE_DIR) + + if(KDE4_LIB_DIR) + message(STATUS "Found KDE 4 library dir: ${KDE4_LIB_DIR}") + else(KDE4_LIB_DIR) + message(STATUS "ERROR: unable to find KDE 4 core library") + endif(KDE4_LIB_DIR) + endif (NOT _kdeBootStrapping) + + if(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") + else(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") + endif(KDE4_KCFGC_EXECUTABLE) +endmacro (KDE4_PRINT_RESULTS) + + +if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) + #bail out if something wasn't found + kde4_print_results() + if (NOT KDE4_INSTALLED_VERSION_OK) + message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") + endif (NOT KDE4_INSTALLED_VERSION_OK) + + if (NOT KDE4_KCFGC_EXECUTABLE) + message(FATAL_ERROR "ERROR: could not detect a usable kconfig-compiler") + endif (NOT KDE4_KCFGC_EXECUTABLE) + + message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") +endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) + + +if (NOT KDE4Internal_FIND_QUIETLY) + kde4_print_results() +endif (NOT KDE4Internal_FIND_QUIETLY) + +#add the found Qt and KDE include directories to the current include path +#the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include +set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ) + +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) + +if (NOT _kde4_uninstall_rule_created) + set(_kde4_uninstall_rule_created TRUE) + + configure_file("${kde_cmake_module_dir}/kde4_cmake_uninstall.cmake.in" "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake" @ONLY) + + add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake") + +endif (NOT _kde4_uninstall_rule_created) diff --git a/modules/FindKDEWIN_Packager.cmake b/modules/FindKDEWIN_Packager.cmake new file mode 100644 index 00000000..4d50b54f --- /dev/null +++ b/modules/FindKDEWIN_Packager.cmake @@ -0,0 +1,175 @@ +# +# KDEWIN packager support http://download.cegit.de/kde-windows/installer +# +# The kdewin packager is searched in the following pathes and order +# +# path specified by the environment dir KDEWIN_PACKAGER_DIR +# /kdewin-packager +# /kdewin-installer +# +# The macro KDEWIN_PACKAGER provides package building support and should be +# added to the top level CMakeLists.txt as shown below +# +# if (KDEWIN_PACKAGER_FOUND) +# KDEWIN_PACKAGER( +# "projectname" +# "version" +# "description" +# "additional options" +# ) +# endif (KDEWIN_PACKAGER_FOUND) + +# The macro KDEWIN_PACKAGER adds three additional makefile targets, which could be +# called using the regular make tool +# +# kdewin_package +# - build kdewin package with currently used compiler and build type +# kdewin_package_debug_and_release +# - build kdewin debug and release package with currently used compiler +# kdewin_package_debug_and_release_mingw_and_msvc +# - build kdewin debug and release package with mingw and msvc compiler +# +# +# +# Copyright (c) 2006-2007, Ralf Habacker +# +# Redistribution and use is allowed according to the terms of the BSD license. +# + +if (WIN32) + if(NOT KDEWIN_PACKAGER_DIR) + # check for enviroment variable + file(TO_CMAKE_PATH "$ENV{KDEWIN_PACKAGER_DIR}" KDEWIN_PACKAGER_DIR) + if(NOT KDEWIN_PACKAGER_DIR) + # search in the default program install folder + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + find_file(KDEWIN_PACKAGER_DIR_tmp kdewin-packager kdewin-installer + PATHS + "${_progFiles}" + ) + set(KDEWIN_PACKAGER_DIR ${KDEWIN_PACKAGER_DIR_tmp}) + endif(NOT KDEWIN_PACKAGER_DIR) + endif(NOT KDEWIN_PACKAGER_DIR) + + # added FindKDEWIN.cmake support + if (NOT KDEWIN_PACKAGER_DIR AND KDEWIN_DIR) + set (KDEWIN_PACKAGER_DIR ${KDEWIN_DIR}) + endif (NOT KDEWIN_PACKAGER_DIR AND KDEWIN_DIR) + + if (KDEWIN_PACKAGER_DIR) + + find_program(KDEWIN_PACKAGER_EXECUTABLE kdewin-packager + PATHS + ${KDEWIN_PACKAGER_DIR}/bin + ) + + set(KDEWIN_PACKAGER_FOUND TRUE) + else (KDEWIN_PACKAGER_DIR) + set(KDEWIN_PACKAGER_FOUND) + endif (KDEWIN_PACKAGER_DIR) + + if (KDEWIN_PACKAGER_FOUND) + if (NOT KDEWIN_PACKAGER_FIND_QUIETLY) + message(STATUS "Found KDEWIN Packager: ${KDEWIN_PACKAGER_DIR}") + endif (NOT KDEWIN_PACKAGER_FIND_QUIETLY) + else (KDEWIN_PACKAGER_FOUND) + if (KDEWIN_PACKAGER_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find KDEWIN PAckager") + endif (KDEWIN_PACKAGER_FIND_REQUIRED) + endif (KDEWIN_PACKAGER_FOUND) + +endif (WIN32) + +MACRO (KDEWIN_PACKAGER _name _version _notes _options) + if (KDEWIN_PACKAGER_FOUND) + if (MSVC) + set (type "msvc") + else (MSVC) + set (type "mingw") + endif (MSVC) + + add_custom_target(kdewin_package + COMMAND ${CMAKE_COMMAND} + -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/temp -P ${CMAKE_BINARY_DIR}/cmake_install.cmake + COMMAND ${KDEWIN_PACKAGER_EXECUTABLE} + -name ${_name} + -root ${CMAKE_BINARY_DIR}/temp + -srcroot ${CMAKE_SOURCE_DIR} + -version ${_version} + -notes "${_notes}" + -type ${type} + ${_options} + # FIXME: cleanup does not work + #COMMAND rmdir /Q /S ${CMAKE_BINARY_DIR}\temp + ) + # prelimary target + add_custom_target(kdewin_package_without_compiler + COMMAND ${CMAKE_COMMAND} + -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/temp -P ${CMAKE_BINARY_DIR}/cmake_install.cmake + COMMAND ${KDEWIN_PACKAGER_EXECUTABLE} + -name ${_name} + -root ${CMAKE_BINARY_DIR}/temp + -srcroot ${CMAKE_SOURCE_DIR} + -version ${_version} + -notes "${_notes}" + ${_options} + # FIXME: cleanup does not work + #COMMAND rmdir /Q /S ${CMAKE_BINARY_DIR}\temp + ) + add_custom_target(kdewin_package_debug_and_release + COMMAND ${CMAKE_COMMAND} + -H$(CMAKE_SOURCE_DIR) + -B$(CMAKE_BINARY_DIR) + -DCMAKE_BUILD_TYPE=Debug + COMMAND ${CMAKE_MAKE_PROGRAM} + clean + COMMAND ${CMAKE_MAKE_PROGRAM} + install/local + COMMAND ${CMAKE_COMMAND} + -H$(CMAKE_SOURCE_DIR) + -B$(CMAKE_BINARY_DIR) + -DCMAKE_BUILD_TYPE=Release + COMMAND ${CMAKE_MAKE_PROGRAM} + clean + COMMAND ${CMAKE_MAKE_PROGRAM} + install/local + COMMAND ${KDEWIN_PACKAGER_EXECUTABLE} + -name ${_name} + -root ${CMAKE_BINARY_DIR}/temp + -srcroot ${CMAKE_SOURCE_DIR} + -version ${_version} + -notes "${_notes}" + -type ${type} + ${_options} + # FIXME: cleanup does not work + #COMMAND rmdir /Q /S ${CMAKE_BINARY_DIR}\temp + ) +set (CONTENT " +if \"%1\" == \"package_only\" goto package_only + +del CMakeCache.txt +rmdir /Q /S ${CMAKE_BINARY_DIR}/temp +${CMAKE_COMMAND} ${CMAKE_SOURCE_DIR} -G \"MinGW Makefiles\" -DCMAKE_BUILD_TYPE=Debug +mingw32-make +${CMAKE_COMMAND} -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/temp -P cmake_install.cmake +${CMAKE_COMMAND} ${CMAKE_SOURCE_DIR} -G \"MinGW Makefiles\" -DCMAKE_BUILD_TYPE=Release +mingw32-make +${CMAKE_COMMAND} -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/temp -P cmake_install.cmake +del CMakeCache.txt +${CMAKE_COMMAND} ${CMAKE_SOURCE_DIR} -G \"NMake Makefiles\" -DCMAKE_BUILD_TYPE=Debug +nmake +${CMAKE_COMMAND} -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/temp -P cmake_install.cmake +${CMAKE_COMMAND} ${CMAKE_SOURCE_DIR} -G \"NMake Makefiles\" -DCMAKE_BUILD_TYPE=Release +nmake +${CMAKE_COMMAND} -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/temp -P cmake_install.cmake +:package_only +${KDEWIN_PACKAGER_EXECUTABLE} -name ${_name} -root ${CMAKE_BINARY_DIR}/temp -srcroot ${CMAKE_SOURCE_DIR} -version ${_version} -notes \"${_notes}\" ${_options} +" +) + write_file(${CMAKE_BINARY_DIR}/kdewin_package_debug_and_release_mingw_and_msvc.bat "${CONTENT}") + add_custom_target(kdewin_package_debug_and_release_mingw_and_msvc + COMMAND ${CMAKE_BINARY_DIR}/kdewin_package_debug_and_release_mingw_and_msvc.bat + ) + endif (KDEWIN_PACKAGER_FOUND) +ENDMACRO (KDEWIN_PACKAGER) + diff --git a/modules/Win32Macros.cmake b/modules/Win32Macros.cmake new file mode 100644 index 00000000..4385cc97 --- /dev/null +++ b/modules/Win32Macros.cmake @@ -0,0 +1,44 @@ +# +# win32 macros +# +# Copyright (c) 2006-2007, Ralf Habacker +# +# Redistribution and use is allowed according to the terms of the BSD license. +# + +if (WIN32) + # + # addExplorerWrapper creates batch files for fast access + # to the build environment from the win32 explorer. + # + # For mingw and nmake projects it's opens a command shell, + # for Visual Studio IDE's (at least tested with VS 8 2005) it + # opens the related .sln file with paths setting specified at + # configure time. + # + MACRO (addExplorerWrapper _projectname) + # write explorer wrappers + get_filename_component(CMAKE_BIN_PATH ${CMAKE_COMMAND} PATH) + set (ADD_PATH "${CMAKE_BIN_PATH}") + + if (QT_QMAKE_EXECUTABLE) + get_filename_component(QT_BIN_PATH ${QT_QMAKE_EXECUTABLE} PATH) + set (ADD_PATH "${ADD_PATH};${QT_BIN_PATH}") + endif (QT_QMAKE_EXECUTABLE) + + # add here more pathes + + if (MINGW) + get_filename_component(MINGW_BIN_PATH ${CMAKE_CXX_COMPILER} PATH) + set (ADD_PATH "${ADD_PATH};${MINGW_BIN_PATH}") + write_file (${CMAKE_BINARY_DIR}/${_projectname}-shell.bat "set PATH=${ADD_PATH};%PATH%\ncmd.exe") + else (MINGW) + if (CMAKE_BUILD_TOOL STREQUAL "nmake") + get_filename_component(VC_BIN_PATH ${CMAKE_CXX_COMPILER} PATH) + write_file (${CMAKE_BINARY_DIR}/${_projectname}-shell.bat "set PATH=${ADD_PATH};%PATH%\ncall \"${VC_BIN_PATH}\\vcvars32.bat\"\ncmd.exe") + else (CMAKE_BUILD_TOOL STREQUAL "nmake") + write_file (${CMAKE_BINARY_DIR}/${_projectname}-sln.bat "set PATH=${ADD_PATH};%PATH%\nstart ${_projectname}.sln") + endif (CMAKE_BUILD_TOOL STREQUAL "nmake") + endif (MINGW) + ENDMACRO (addExplorerWrapper) +endif(WIN32) -- cgit v1.2.1 From 984c5150c5d0aa14851d0cf75b5ce88708b0d8cf Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 20 Jun 2007 11:47:35 +0000 Subject: win32 fix: use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files svn path=/trunk/KDE/kdelibs/; revision=678005 --- modules/FindKDE4Internal.cmake | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d9976b2f..c3526c4d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -290,13 +290,20 @@ macro(_SET_FANCY _var _value _comment) endif (NOT DEFINED ${_var}) endmacro(_SET_FANCY) - -_set_fancy(SHARE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/share "Base directory for files which go to share/") -_set_fancy(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} "Base directory for executables and libraries") - -_set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") -_set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") -_set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") +if (WIN32) + # use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files + _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") +else (WIN32) + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") + _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") + _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") +endif (WIN32) if(WIN32) _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") @@ -305,7 +312,11 @@ else(WIN32) endif(WIN32) _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") +if (WIN32) +_set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") +else(WIN32) _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") +endif (WIN32) _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -- cgit v1.2.1 From 7fef784cb6eb4735a8d95cd05d57553b5f6ce407 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 20 Jun 2007 18:11:08 +0000 Subject: Fix typo svn path=/trunk/KDE/kdelibs/; revision=678111 --- modules/FindKDEWIN_Packager.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN_Packager.cmake b/modules/FindKDEWIN_Packager.cmake index 4d50b54f..c19f4115 100644 --- a/modules/FindKDEWIN_Packager.cmake +++ b/modules/FindKDEWIN_Packager.cmake @@ -69,13 +69,13 @@ if (WIN32) endif (KDEWIN_PACKAGER_DIR) if (KDEWIN_PACKAGER_FOUND) - if (NOT KDEWIN_PACKAGER_FIND_QUIETLY) + if (NOT KDEWIN_Packager_FIND_QUIETLY) message(STATUS "Found KDEWIN Packager: ${KDEWIN_PACKAGER_DIR}") - endif (NOT KDEWIN_PACKAGER_FIND_QUIETLY) + endif (NOT KDEWIN_Packager_FIND_QUIETLY) else (KDEWIN_PACKAGER_FOUND) - if (KDEWIN_PACKAGER_FIND_REQUIRED) + if (KDEWIN_Packager_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find KDEWIN PAckager") - endif (KDEWIN_PACKAGER_FIND_REQUIRED) + endif (KDEWIN_Packager_FIND_REQUIRED) endif (KDEWIN_PACKAGER_FOUND) endif (WIN32) -- cgit v1.2.1 From c03f75251d402279374ff280fedadaaa04112ee4 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 20 Jun 2007 18:32:05 +0000 Subject: link against a library so that cmake can actually figure out the dependencies and parallel build doesn't break. Hopefully with that, dashboard will finally be able to compile extragear-libs. Its been weeks. Yay. svn path=/trunk/KDE/kdelibs/; revision=678125 --- modules/FindKdcraw.cmake | 2 +- modules/FindKexiv2.cmake | 2 +- modules/FindKipi.cmake | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index 8d06a858..06e408d6 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -26,7 +26,7 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) set(KDCRAW_DEFINITIONS -I${KDCRAW_INCLUDE_DIR}) - set(KDCRAW_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libkdcraw.so) + set(KDCRAW_LIBRARIES kdcraw) message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_LIBRARIES}") set(KDCRAW_FOUND TRUE) MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index a9eca2dc..e292334b 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -26,7 +26,7 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) set(KEXIV2_DEFINITIONS -I${KEXIV2_INCLUDE_DIR}) - set(KEXIV2_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libkexiv2.so) + set(KEXIV2_LIBRARIES kexiv2) message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_LIBRARIES}") set(KEXIV2_FOUND TRUE) MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index e7027ef0..5f8430dc 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -26,7 +26,7 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkipi) set(KIPI_DEFINITIONS -I${KIPI_INCLUDE_DIR}) - set(KIPI_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libkipi.so) + set(KIPI_LIBRARIES kipi) message(STATUS "Found Kipi library in local sub-folder: ${KIPI_LIBRARIES}") set(KIPI_FOUND TRUE) MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) -- cgit v1.2.1 From 94503aa3c1d78be826a93e3d74e2222fbe277412 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Wed, 20 Jun 2007 19:37:24 +0000 Subject: Remove the now uncessary QtScript from QT_QTUITOOLS_LIBRARY. svn path=/trunk/KDE/kdelibs/; revision=678154 --- modules/FindQt4.cmake | 4 ---- 1 file changed, 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 9ce256fc..e453398b 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -803,10 +803,6 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTMAIN) ENDIF(WIN32) - IF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) - SET(QT_QTUITOOLS_LIBRARY ${QT_QTUITOOLS_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ) - ENDIF(QT_QTSCRIPT_LIBRARY AND QT_QTUITOOLS_LIBRARY) - ####################################### # # Check the executables of Qt -- cgit v1.2.1 From b742c4183e643088dda6777add2d49334fe52a5f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 21 Jun 2007 01:38:31 +0000 Subject: beautify Alex svn path=/trunk/KDE/kdelibs/; revision=678277 --- modules/FindKDE4Internal.cmake | 35 ++++++++++++++--------------------- 1 file changed, 14 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c3526c4d..ab9b97cc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -292,31 +292,24 @@ endmacro(_SET_FANCY) if (WIN32) # use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files - _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") - _set_fancy(SHARE_INSTALL_PREFIX "share" "Base directory for files which go to share/") - _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") - _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") - _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") + _set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") else (WIN32) - _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") - _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") - _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") - _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") - _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") + _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") endif (WIN32) -if(WIN32) - _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") -else(WIN32) - _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") -endif(WIN32) _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") - -if (WIN32) -_set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") -else(WIN32) -_set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") -endif (WIN32) _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -- cgit v1.2.1 From 61309356b69c450a46e00281e5e916ef8332e302 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 21 Jun 2007 06:48:05 +0000 Subject: Fix pb to search include with gphoto2 svn path=/trunk/KDE/kdelibs/; revision=678365 --- modules/FindGphoto2.cmake | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindGphoto2.cmake b/modules/FindGphoto2.cmake index 5a0ce432..6f966c02 100644 --- a/modules/FindGphoto2.cmake +++ b/modules/FindGphoto2.cmake @@ -32,10 +32,24 @@ if (KDE4_GPHOTO2 ) EXEC_PROGRAM(${GHOTO2PORTCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2PORT_LIBRARY) EXEC_PROGRAM(${GHOTO2CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2_LIBRARY) - EXEC_PROGRAM(${GHOTO2PORTCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2PORT_INCLUDE_DIR) - EXEC_PROGRAM(${GHOTO2CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GPHOTO2_INCLUDE_DIR) + EXEC_PROGRAM(${GHOTO2PORTCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _GPHOTO2PORT_RESULT_INCLUDE_DIR) + EXEC_PROGRAM(${GHOTO2CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _GPHOTO2_RESULT_INCLUDE_DIR) set(GPHOTO2_LIBRARIES ${GPHOTO2PORT_LIBRARY} ${GPHOTO2_LIBRARY}) + # the cflags for poppler-qt4 can contain more than one include path + separate_arguments(_GPHOTO2_RESULT_INCLUDE_DIR) + foreach(_includedir ${_GPHOTO2_RESULT_INCLUDE_DIR}) + string(REGEX REPLACE "-I(.+)" "\\1" _includedir "${_includedir}") + set(GPHOTO2_INCLUDE_DIR ${GPHOTO2_INCLUDE_DIR} ${_includedir}) + endforeach(_includedir) + separate_arguments(_GPHOTO2PORT_RESULT_INCLUDE_DIR) + foreach(_includedir ${_GPHOTO2PORT_RESULT_INCLUDE_DIR}) + string(REGEX REPLACE "-I(.+)" "\\1" _includedir "${_includedir}") + set(GPHOTO2PORT_INCLUDE_DIR ${GPHOTO2PORT_INCLUDE_DIR} ${_includedir}) + endforeach(_includedir) + + + set(GPHOTO2_INCLUDE_DIRS ${GPHOTO2PORT_INCLUDE_DIR} ${GPHOTO2_INCLUDE_DIR} ) endif(GHOTO2PORTCONFIG_EXECUTABLE AND GHOTO2CONFIG_EXECUTABLE) -- cgit v1.2.1 From 328b49619d76548e85f3e943eae4fe6fd7f149bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaros=C5=82aw=20Staniek?= Date: Thu, 21 Jun 2007 19:41:00 +0000 Subject: SVN_SILENT typos svn path=/trunk/KDE/kdelibs/; revision=678586 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9e5494a6..d31c75ee 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -267,7 +267,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2) - #Boostrap + #Bootsrap if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") @@ -289,7 +289,7 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) set(_bootstrapOption) - #Boostrap + #Bootsrap if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") -- cgit v1.2.1 From 9b9eda78bfdacb9217f020ab84da48c8f09572c5 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 22 Jun 2007 09:53:05 +0000 Subject: dos -> unix svn path=/trunk/KDE/kdelibs/; revision=678786 --- modules/FindKDE4Internal.cmake | 1766 ++++++++++++++++++++-------------------- 1 file changed, 883 insertions(+), 883 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ab9b97cc..adf9410e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1,883 +1,883 @@ -# - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros -# -# This module defines the following variables: -# -# KDE4_FOUND - set to TRUE if everything required for building KDE software has been found -# -# KDE4_DEFINITIONS - compiler definitions required for compiling KDE software -# KDE4_INCLUDE_DIR - the KDE 4 include directory -# KDE4_INCLUDES - all include directories required for KDE, i.e. -# KDE4_INCLUDE_DIR, but also the Qt4 include directories -# and other platform specific include directories -# KDE4_LIB_DIR - the directory where the KDE libraries are installed, -# intended to be used with LINK_DIRECTORIES() -# -# The following variables are defined for the various tools required to -# compile KDE software: -# -# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable -# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable -# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable -# -# The following variables point to the location of the KDE libraries, -# but shouldn't be used directly: -# -# KDE4_KDECORE_LIBRARY - the kdecore library -# KDE4_KDEUI_LIBRARY - the kdeui library -# KDE4_KIO_LIBRARY - the kio library -# KDE4_KPARTS_LIBRARY - the kparts library -# KDE4_KUTILS_LIBRARY - the kutils library -# KDE4_KDE3SUPPORT_LIBRARY - the kde3support library -# KDE4_KFILE_LIBRARY - the kfile library -# KDE4_KHTML_LIBRARY - the khtml library -# KDE4_KJS_LIBRARY - the kjs library -# KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library -# KDE4_KDEPRINT_LIBRARY - the kdeprint library -# KDE4_KDNSSD_LIBRARY - the kdnssd library -# KDE4_PHONON_LIBRARY - the phonon library -# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library -# KDE4_KDEFX_LIBRARY - the kdefx library -# KDE4_THREADWEAVER_LIBRARY- the threadweaver library -# KDE4_SOLID_LIBRARY - the solid library -# KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library -# KDE4_KROSSCORE_LIBRARY - the krosscore library -# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library -# KDE4_KNEPOMUK_LIBRARY - the knepomuk library -# KDE4_KMETADATA_LIBRARY - the kmetadata library -# -# Compared to the variables above, the following variables -# also contain all of the depending libraries, so the variables below -# should be used instead of the ones above: -# -# KDE4_KDECORE_LIBS - the kdecore library and all depending libraries -# KDE4_KDEUI_LIBS - the kdeui library and all depending libraries -# KDE4_KIO_LIBS - the kio library and all depending libraries -# KDE4_KPARTS_LIBS - the kparts library and all depending libraries -# KDE4_KUTILS_LIBS - the kutils library and all depending libraries -# KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries -# KDE4_KFILE_LIBS - the kfile library and all depending libraries -# KDE4_KHTML_LIBS - the khtml library and all depending libraries -# KDE4_KJS_LIBS - the kjs library and all depending libraries -# KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries -# KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries -# KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries -# KDE4_KDESU_LIBS - the kdesu library and all depending libraries -# KDE4_PHONON_LIBS - the phonon library and all depending librairies -# KDE4_KDEFX_LIBS - the kdefx library and all depending librairies -# KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries -# KDE4_SOLID_LIBS - the solid library and all depending libraries -# KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries -# KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries -# KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries -# KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries -# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries -# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries -# -# This module defines a bunch of variables used as locations -# for install directories. They are all interpreted relative -# to CMAKE_INSTALL_PREFIX -# -# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) -# SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) -# LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) -# CONFIG_INSTALL_DIR - the config file install dir -# DATA_INSTALL_DIR - the parent directory where applications can install their data -# HTML_INSTALL_DIR - the HTML install dir for documentation -# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) -# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) -# KCFG_INSTALL_DIR - the install dir for kconfig files -# LOCALE_INSTALL_DIR - the install dir for translations -# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) -# MIME_INSTALL_DIR - the install dir for the mimetype desktop files -# PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) -# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files -# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files -# SOUND_INSTALL_DIR - the install dir for sound files -# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) -# WALLPAPER_INSTALL_DIR - the install dir for wallpapers -# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir -# XDG_APPS_DIR - the XDG apps dir -# XDG_DIRECTORY_DIR - the XDG directory -# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) -# DBUS_SERVICES_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) -# -# The following variables are provided, but are seem to be unused: -# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") -# APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") -# -# The following user adjustable options are provided: -# -# KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation -# KDE4_BUILD_TESTS - enable this to build the testcases -# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature -# -# It also adds the following macros (from KDE4Macros.cmake) -# KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) -# Use this to add Qt designer ui files to your application/library. -# -# KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) -# Use this to add Qt designer ui files from Qt version 3 to your application/library. -# -# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) -# Use this to add KDE config compiler files to your application/library. -# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. -# -# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) -# Use this to add widget description files for the makekdewidgets code generator -# for Qt Designer plugins. -# -# KDE4_AUTOMOC(file1 ... fileN) -# Call this if you want to have automatic moc file handling. -# This means if you include "foo.moc" in the source file foo.cpp -# a moc file for the header foo.h will be created automatically. -# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() -# to exclude some files in the list from being processed. -# If you don't want automoc, you can also use QT4_WRAP_CPP() or QT4_GENERATE_MOC() -# from FindQt4.cmake to have the moc files generated. This will be faster -# but require more manual work. -# -# KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) -# This will create and install a simple libtool file for the -# given target. This might be required for other software. -# The libtool file will be install in subdir, relative to CMAKE_INSTALL_PREFIX . -# -# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) -# This macro is intended mainly for internal uses. -# It is used for enable-final. It will generate two source files, -# one for the C files and one for the C++ files. -# These files will have the names given in filename_CXX and filename_C. -# -# KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN ) -# Create a KDE plugin (KPart, kioslave, etc.) from the given source files. -# It supports KDE4_ENABLE_FINAL. -# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. -# It creates and installs an appropriate libtool la-file. -# -# KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) -# Create a KDE application in the form of a module loadable via kdeinit. -# A library named kdeinit_ will be created and a small executable which links to it. -# It supports KDE4_ENABLE_FINAL -# If the executable has to be run from the buildtree (e.g. unit tests and code generators -# used later on when compiling), set the option RUN_UNINSTALLED. -# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X -# application bundles are created, with the NOGUI option no bundles but simple executables -# are created. Currently it doesn't have any effect on other platforms. -# -# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) -# Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: -# -support for KDE4_ENABLE_FINAL -# -support for automoc -# -automatic RPATH handling -# If the executable has to be run from the buildtree (e.g. unit tests and code generators -# used later on when compiling), set the option RUN_UNINSTALLED. -# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X -# application bundles are created, with the NOGUI option no bundles but simple executables -# are created. Currently it doesn't have any effect on other platforms. -# -# KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) -# Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL -# and under Windows it adds a -DMAKE__LIB definition to the compilation. -# -# KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) -# add a unit test, which is executed when running make test -# it will be built with RPATH poiting to the build dir -# The targets are always created, but only built for the "all" -# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target -# are created but not built by default. You can build them by manually building the target. -# The name of the target can be specified using TESTNAME , if it is not given -# the macro will default to the -# -# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) -# add an test executable -# it will be built with RPATH poiting to the build dir -# The targets are always created, but only built for the "all" -# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target -# are created but not built by default. You can build them by manually building the target. -# KDE4_INSTALL_ICONS( path theme) -# Installs all png and svgz files in the current directory to the icon -# directoy given in path, in the subdirectory for the given icon theme. -# -# KDE4_CREATE_HANDBOOK( docbookfile ) -# Create the handbook from the docbookfile (using meinproc) -# -# KDE4_INSTALL_HANDBOOK() -# Install the handbook documentation -# -# KDE4_CREATE_HTML_HANDBOOK( docbookfile ) -# Create HTML version of the handbook from the docbookfile (using meinproc) -# -# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally -# _KDE4_PLATFORM_DEFINITIONS is used only internally -# -# -# Copyright (c) 2006, Alexander Neundorf -# Copyright (c) 2006, Laurent Montel, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -include (MacroEnsureVersion) - -cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) - -set(QT_MIN_VERSION "4.3.0") -#this line includes FindQt4.cmake, which searches the Qt library and headers -find_package(Qt4 REQUIRED) - -if (NOT QT_DBUSXML2CPP_EXECUTABLE) - message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") -endif (NOT QT_DBUSXML2CPP_EXECUTABLE) - - -# Perl is required for building KDE software, -find_package(Perl REQUIRED) - -include (MacroLibrary) -include (CheckCXXCompilerFlag) -include (CheckCXXSourceCompiles) - -#add some KDE specific stuff - -# the following are directories where stuff will be installed to -set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) - -#are we trying to compile kdelibs ? -#then enter bootstrap mode -if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping TRUE) - message(STATUS "Building kdelibs...") -else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping FALSE) -endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - -# get the directory of the current file, used later on in the file -get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) - - -if (NOT _kdeBootStrapping) - # this file contains all dependencies of all libraries of kdelibs, Alex - include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) -endif (NOT _kdeBootStrapping) - -# this macro implements some very special logic how to deal with the cache -# by default the various install locations inherit their value from theit "parent" variable -# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will -# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX -# this would work completely without using the cache. -# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into -# the cache, otherwise it will be forgotten on the next cmake run. -# Once a variable is in the cache, it doesn't depend on its "parent" variables -# anymore and you can only change it by editing it directly. -# this macro helps in this regard, because as long as you don't set one of the -# variables explicitely to some location, it will always calculate its value from its -# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. -# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location -# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. -# -# additionally if installing to the same location as kdelibs, the other install -# directories are reused from the installed kdelibs -macro(_SET_FANCY _var _value _comment) - set(predefinedvalue "${_value}") - if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - set(predefinedvalue "${KDE4_${_var}}") - endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - - if (NOT DEFINED ${_var}) - set(${_var} ${predefinedvalue}) - else (NOT DEFINED ${_var}) - set(${_var} "${${_var}}" CACHE PATH "${_comment}") - endif (NOT DEFINED ${_var}) -endmacro(_SET_FANCY) - -if (WIN32) - # use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files - _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") - _set_fancy(SHARE_INSTALL_PREFIX "share" "Base directory for files which go to share/") - _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") - _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") - _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") - _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") - _set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") -else (WIN32) - _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") - _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") - _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") - _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") - _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") - _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") - _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") -endif (WIN32) - -_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") -_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") -_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") -_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") -_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") -_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") -_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") - -# To help with the migration issue, this uses set instead of _set_fancy, temporarily. -# (Otherwise all modules would keep installing into the old dirs) -# This can be reverted starting from May 2007 -set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services") -set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes") -#_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") -#_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") - -_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") -_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") -_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") -_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") - # this one shouldn't be used anymore -_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") -_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") - -_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") -_set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") - -_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") -_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") -_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") -_set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") -_set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") - -################################# - - -# the following are directories where stuff will be installed to - - -option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") -option(KDE4_BUILD_TESTS "Build the tests") - -if( KDE4_ENABLE_FINAL) - add_definitions(-DKDE_USE_FINAL) -endif(KDE4_ENABLE_FINAL) - -#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable -#which is something between a shared library and a normal executable. -#Programs compiled with these features appear as ?shared object? with the file command. -#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" -option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") - -#now try to find some kde stuff - -if (_kdeBootStrapping) - set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) - set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) - set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) - set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) - set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) - set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) - set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) - set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) - set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) - set(KDE4_PHONON_LIBS ${QT_QTDBUS_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} phonon) - set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) - set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) - set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) - - set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - - if (WIN32) - set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) - # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) - else (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) - endif (WIN32) - - set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) - - # when building kdelibs, make the kcfg rules depend on the binaries... - set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) - set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) - set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) - - set(KDE4_INSTALLED_VERSION_OK TRUE) - -else (_kdeBootStrapping) - - # ... but NOT otherwise - set( _KDE4_KCONFIG_COMPILER_DEP) - set( _KDE4_MAKEKDEWIDGETS_DEP) - set( _KDE4_MEINPROC_EXECUTABLE_DEP) - - # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 - exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) - - string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") - if (KDEVERSION) - - string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") - - # we need at least this version: - if (NOT KDE_MIN_VERSION) - set(KDE_MIN_VERSION "3.9.0") - endif (NOT KDE_MIN_VERSION) - - #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") - - macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) - - else (KDEVERSION) - message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") - endif (KDEVERSION) - - - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - - # this file contains all dependencies of all libraries of kdelibs, Alex - include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) - - find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) - - find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - - find_library(KDE4_KDEFX_LIBRARY NAMES kdefx PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEFX_LIBS ${kdefx_LIB_DEPENDS} ${KDE4_KDEFX_LIBRARY} ) - - find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) - - find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) - - find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) - - find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) - - find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) - - find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) - - find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) - - find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) - - find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) - - find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) - - if (UNIX) - find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) - endif (UNIX) - - find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) - - find_library(KDE4_PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_PHONON_LIBS ${phonon_LIB_DEPENDS} ${KDE4_PHONON_LIBRARY} ) - - find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) - - find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) - - find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) - - find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) - - find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) - find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) - - find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) - - # Can't do that, it's not always compiled. - #find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - #set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) - - # Can't do that, it's not always compiled. See FindKMetaData.cmake - #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) - - get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) - - # kpassworddialog.h is new with KDE4 - # KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake - find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) - - # at first look in LIBEXEC_INSTALL_DIR and no default paths, - # if this didn't succeed, the second call makes cmake search again, but in the standard paths - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) - - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) - - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) - -endif (_kdeBootStrapping) - - -##################### and now the platform specific stuff ############################ - -# Set a default build type for single-configuration -# CMake generators if no build type is set. -if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE RelWithDebInfo) -endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) - - -if (WIN32) - - if(CYGWIN) - message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") - endif(CYGWIN) - - find_package(KDEWIN32 REQUIRED) - - # limit win32 packaging to kdelibs at now - # don't know if package name, version and notes are always available - if(_kdeBootStrapping) - find_package(KDEWIN_Packager) - if (KDEWIN_PACKAGER_FOUND) - KDEWIN_PACKAGER("kdelibs" "${KDE_VERSION}" "KDE base library" "") - endif (KDEWIN_PACKAGER_FOUND) - - include(Win32Macros) - addExplorerWrapper("kdelibs") - endif(_kdeBootStrapping) - - set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) - - # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, - # otherwise they come from KDELibsDependencies.cmake, Alex - if (_kdeBootStrapping) - set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) - endif (_kdeBootStrapping) - - # windows, mingw - if(MINGW) - #hmmm, something special to do here ? - endif(MINGW) - - # windows, microsoft compiler - if(MSVC) - set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) - # C4250: 'class1' : inherits 'class2::member' via dominance - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) - # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) - # C4396: 'identifier' : 'function' the inline specifier cannot be used when a friend declaration refers to a specialization of a function template - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4396" ) - if(CMAKE_COMPILER_2005) - # to avoid a lot of deprecated warnings - add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS ) - # 'identifier' : no suitable definition provided for explicit template instantiation request - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) - endif(CMAKE_COMPILER_2005) - endif(MSVC) - - - # for visual studio IDE set the path correctly for custom commands - # maybe under windows bat-files should be generated for running apps during the build - if(MSVC_IDE) - get_filename_component(PERL_LOCATION "${PERL_EXECUTABLE}" PATH) - file(TO_NATIVE_PATH "${PERL_LOCATION}" PERL_PATH_WINDOWS) - file(TO_NATIVE_PATH "${QT_BINARY_DIR}" QT_BIN_DIR_WINDOWS) - set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" - CACHE STATIC "MSVC IDE Run path" FORCE) - endif(MSVC_IDE) - -endif (WIN32) - - -# also use /usr/local by default under UNIX, including Mac OS X -if (UNIX) - option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." OFF) - - link_directories(/usr/local/lib) - set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) - - # the rest is RPATH handling - # here the defaults are set - # which are partly overwritten in kde4_handle_rpath_for_library() - # and kde4_handle_rpath_for_executable(), both located in KDE4Macros.cmake, Alex - if (APPLE) - set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) - else (APPLE) - # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling - set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) - set(CMAKE_SKIP_BUILD_RPATH TRUE) - set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) - set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) - endif (APPLE) -endif (UNIX) - - -if (Q_WS_X11) - # Done by FindQt4.cmake already - #find_package(X11 REQUIRED) - # UNIX has already set _KDE4_PLATFORM_INCLUDE_DIRS, so append - set(_KDE4_PLATFORM_INCLUDE_DIRS ${_KDE4_PLATFORM_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) -endif (Q_WS_X11) - - -# This will need to be modified later to support either Qt/X11 or Qt/Mac builds -if (APPLE) - - set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) - - # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow - # -undefined dynamic_lookup; in the future we should do this programmatically - # hmm... why doesn't this work? - set (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) - - # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default - # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented - # or perhaps it already is, and I just don't know where to look ;) - - set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress ${CMAKE_SHARED_LINKER_FLAGS}") - set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress ${CMAKE_MODULE_LINKER_FLAGS}") - #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") - #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") - - # we profile... - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - - # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex - # optimization flags are set below for the various build types - set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") -endif (APPLE) - - -if (CMAKE_SYSTEM_NAME MATCHES Linux) - if (CMAKE_COMPILER_IS_GNUCXX) - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") - # we profile... - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) - endif (CMAKE_COMPILER_IS_GNUCXX) - if (CMAKE_C_COMPILER MATCHES "icc") - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) - set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") - set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") - endif (CMAKE_C_COMPILER MATCHES "icc") -endif (CMAKE_SYSTEM_NAME MATCHES Linux) - -if (CMAKE_SYSTEM_NAME MATCHES BSD) - set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) - set ( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") - set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lc") -endif (CMAKE_SYSTEM_NAME MATCHES BSD) - -# compiler specific stuff, maybe this should be done differently, Alex - -if (MSVC) - set (KDE4_ENABLE_EXCEPTIONS -EHsc) -endif(MSVC) - -if (MINGW) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols") -endif (MINGW) - -if (CMAKE_COMPILER_IS_GNUCXX) - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) - # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") - set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") - set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") - - if (CMAKE_SYSTEM_NAME MATCHES Linux) - set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") - add_definitions (-D_BSD_SOURCE) - endif (CMAKE_SYSTEM_NAME MATCHES Linux) - - - check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) - if(KDE4_ENABLE_FPIE) - if(HAVE_FPIE_SUPPORT) - set (KDE4_CXX_FPIE_FLAGS "-fPIE") - set (KDE4_PIE_LDFLAGS "-pie") - else(HAVE_FPIE_SUPPORT) - MESSAGE(STATUS "Your compiler doesn't support PIE flag") - endif(HAVE_FPIE_SUPPORT) - endif(KDE4_ENABLE_FPIE) - # save a little by making local statics not threadsafe - check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) - if (__KDE_HAVE_NO_THREADSAFE_STATICS) - # currently disabled for Alpha1 due to what appears - # to be a compiler bug - # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806 - #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") - endif (__KDE_HAVE_NO_THREADSAFE_STATICS) - - # visibility support - check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) - - # get the gcc version - exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) - - string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") - # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: - if (NOT _gcc_version) - string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") - endif (NOT _gcc_version) - - macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) - macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) - - set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) - if (GCC_IS_NEWER_THAN_4_1) - exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) - string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") - endif (GCC_IS_NEWER_THAN_4_1) - - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") - set (KDE4_C_FLAGS "-fvisibility=hidden") - - if (GCC_IS_NEWER_THAN_4_2) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") - endif (GCC_IS_NEWER_THAN_4_2) - else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) - -endif (CMAKE_COMPILER_IS_GNUCXX) - -if (CMAKE_C_COMPILER MATCHES "icc") - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) - # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") - set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wpointer-arith -fno-common") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wpointer-arith -fno-exceptions -fno-common") - - # visibility support - set(__KDE_HAVE_ICC_VISIBILITY) -# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_ICC_VISIBILITY) -# if (__KDE_HAVE_ICC_VISIBILITY) -# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") -# endif (__KDE_HAVE_ICC_VISIBILITY) - -endif (CMAKE_C_COMPILER MATCHES "icc") - -# we prefer to use a different postfix for debug libs only on Windows -# does not work atm -if (WIN32) - SET(CMAKE_DEBUG_POSTFIX "") -endif (WIN32) - -########### end of platform specific stuff ########################## - - -# KDE4Macros.cmake contains all the KDE specific macros -include(${kde_cmake_module_dir}/KDE4Macros.cmake) - - -# decide whether KDE4 has been found -set(KDE4_FOUND FALSE) -if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) - set(KDE4_FOUND TRUE) -endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) - - -macro (KDE4_PRINT_RESULTS) - - # inside kdelibs the include dir and lib dir are internal, not "found" - if (NOT _kdeBootStrapping) - if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.0 include dir: ${KDE4_INCLUDE_DIR}") - else(KDE4_INCLUDE_DIR) - message(STATUS "ERROR: unable to find KDE 4 headers") - endif(KDE4_INCLUDE_DIR) - - if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4 library dir: ${KDE4_LIB_DIR}") - else(KDE4_LIB_DIR) - message(STATUS "ERROR: unable to find KDE 4 core library") - endif(KDE4_LIB_DIR) - endif (NOT _kdeBootStrapping) - - if(KDE4_KCFGC_EXECUTABLE) - message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") - else(KDE4_KCFGC_EXECUTABLE) - message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") - endif(KDE4_KCFGC_EXECUTABLE) -endmacro (KDE4_PRINT_RESULTS) - - -if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) - #bail out if something wasn't found - kde4_print_results() - if (NOT KDE4_INSTALLED_VERSION_OK) - message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") - endif (NOT KDE4_INSTALLED_VERSION_OK) - - if (NOT KDE4_KCFGC_EXECUTABLE) - message(FATAL_ERROR "ERROR: could not detect a usable kconfig-compiler") - endif (NOT KDE4_KCFGC_EXECUTABLE) - - message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") -endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) - - -if (NOT KDE4Internal_FIND_QUIETLY) - kde4_print_results() -endif (NOT KDE4Internal_FIND_QUIETLY) - -#add the found Qt and KDE include directories to the current include path -#the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include -set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ) - -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) - -if (NOT _kde4_uninstall_rule_created) - set(_kde4_uninstall_rule_created TRUE) - - configure_file("${kde_cmake_module_dir}/kde4_cmake_uninstall.cmake.in" "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake" @ONLY) - - add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake") - -endif (NOT _kde4_uninstall_rule_created) +# - Find the KDE4 include and library dirs, KDE preprocessors and define a some macros +# +# This module defines the following variables: +# +# KDE4_FOUND - set to TRUE if everything required for building KDE software has been found +# +# KDE4_DEFINITIONS - compiler definitions required for compiling KDE software +# KDE4_INCLUDE_DIR - the KDE 4 include directory +# KDE4_INCLUDES - all include directories required for KDE, i.e. +# KDE4_INCLUDE_DIR, but also the Qt4 include directories +# and other platform specific include directories +# KDE4_LIB_DIR - the directory where the KDE libraries are installed, +# intended to be used with LINK_DIRECTORIES() +# +# The following variables are defined for the various tools required to +# compile KDE software: +# +# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable +# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable +# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable +# +# The following variables point to the location of the KDE libraries, +# but shouldn't be used directly: +# +# KDE4_KDECORE_LIBRARY - the kdecore library +# KDE4_KDEUI_LIBRARY - the kdeui library +# KDE4_KIO_LIBRARY - the kio library +# KDE4_KPARTS_LIBRARY - the kparts library +# KDE4_KUTILS_LIBRARY - the kutils library +# KDE4_KDE3SUPPORT_LIBRARY - the kde3support library +# KDE4_KFILE_LIBRARY - the kfile library +# KDE4_KHTML_LIBRARY - the khtml library +# KDE4_KJS_LIBRARY - the kjs library +# KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library +# KDE4_KDEPRINT_LIBRARY - the kdeprint library +# KDE4_KDNSSD_LIBRARY - the kdnssd library +# KDE4_PHONON_LIBRARY - the phonon library +# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library +# KDE4_KDEFX_LIBRARY - the kdefx library +# KDE4_THREADWEAVER_LIBRARY- the threadweaver library +# KDE4_SOLID_LIBRARY - the solid library +# KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library +# KDE4_KROSSCORE_LIBRARY - the krosscore library +# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library +# KDE4_KNEPOMUK_LIBRARY - the knepomuk library +# KDE4_KMETADATA_LIBRARY - the kmetadata library +# +# Compared to the variables above, the following variables +# also contain all of the depending libraries, so the variables below +# should be used instead of the ones above: +# +# KDE4_KDECORE_LIBS - the kdecore library and all depending libraries +# KDE4_KDEUI_LIBS - the kdeui library and all depending libraries +# KDE4_KIO_LIBS - the kio library and all depending libraries +# KDE4_KPARTS_LIBS - the kparts library and all depending libraries +# KDE4_KUTILS_LIBS - the kutils library and all depending libraries +# KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries +# KDE4_KFILE_LIBS - the kfile library and all depending libraries +# KDE4_KHTML_LIBS - the khtml library and all depending libraries +# KDE4_KJS_LIBS - the kjs library and all depending libraries +# KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries +# KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries +# KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries +# KDE4_KDESU_LIBS - the kdesu library and all depending libraries +# KDE4_PHONON_LIBS - the phonon library and all depending librairies +# KDE4_KDEFX_LIBS - the kdefx library and all depending librairies +# KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries +# KDE4_SOLID_LIBS - the solid library and all depending libraries +# KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries +# KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries +# KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries +# KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries +# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries +# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries +# +# This module defines a bunch of variables used as locations +# for install directories. They are all interpreted relative +# to CMAKE_INSTALL_PREFIX +# +# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) +# SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) +# LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) +# CONFIG_INSTALL_DIR - the config file install dir +# DATA_INSTALL_DIR - the parent directory where applications can install their data +# HTML_INSTALL_DIR - the HTML install dir for documentation +# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) +# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) +# KCFG_INSTALL_DIR - the install dir for kconfig files +# LOCALE_INSTALL_DIR - the install dir for translations +# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) +# MIME_INSTALL_DIR - the install dir for the mimetype desktop files +# PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) +# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files +# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files +# SOUND_INSTALL_DIR - the install dir for sound files +# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) +# WALLPAPER_INSTALL_DIR - the install dir for wallpapers +# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir +# XDG_APPS_DIR - the XDG apps dir +# XDG_DIRECTORY_DIR - the XDG directory +# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) +# DBUS_SERVICES_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) +# +# The following variables are provided, but are seem to be unused: +# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") +# APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") +# +# The following user adjustable options are provided: +# +# KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation +# KDE4_BUILD_TESTS - enable this to build the testcases +# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature +# +# It also adds the following macros (from KDE4Macros.cmake) +# KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) +# Use this to add Qt designer ui files to your application/library. +# +# KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) +# Use this to add Qt designer ui files from Qt version 3 to your application/library. +# +# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) +# Use this to add KDE config compiler files to your application/library. +# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. +# +# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) +# Use this to add widget description files for the makekdewidgets code generator +# for Qt Designer plugins. +# +# KDE4_AUTOMOC(file1 ... fileN) +# Call this if you want to have automatic moc file handling. +# This means if you include "foo.moc" in the source file foo.cpp +# a moc file for the header foo.h will be created automatically. +# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() +# to exclude some files in the list from being processed. +# If you don't want automoc, you can also use QT4_WRAP_CPP() or QT4_GENERATE_MOC() +# from FindQt4.cmake to have the moc files generated. This will be faster +# but require more manual work. +# +# KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) +# This will create and install a simple libtool file for the +# given target. This might be required for other software. +# The libtool file will be install in subdir, relative to CMAKE_INSTALL_PREFIX . +# +# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) +# This macro is intended mainly for internal uses. +# It is used for enable-final. It will generate two source files, +# one for the C files and one for the C++ files. +# These files will have the names given in filename_CXX and filename_C. +# +# KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN ) +# Create a KDE plugin (KPart, kioslave, etc.) from the given source files. +# It supports KDE4_ENABLE_FINAL. +# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. +# It creates and installs an appropriate libtool la-file. +# +# KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) +# Create a KDE application in the form of a module loadable via kdeinit. +# A library named kdeinit_ will be created and a small executable which links to it. +# It supports KDE4_ENABLE_FINAL +# If the executable has to be run from the buildtree (e.g. unit tests and code generators +# used later on when compiling), set the option RUN_UNINSTALLED. +# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X +# application bundles are created, with the NOGUI option no bundles but simple executables +# are created. Currently it doesn't have any effect on other platforms. +# +# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) +# Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: +# -support for KDE4_ENABLE_FINAL +# -support for automoc +# -automatic RPATH handling +# If the executable has to be run from the buildtree (e.g. unit tests and code generators +# used later on when compiling), set the option RUN_UNINSTALLED. +# If the executable doesn't have a GUI, use the option NOGUI. By default on OS X +# application bundles are created, with the NOGUI option no bundles but simple executables +# are created. Currently it doesn't have any effect on other platforms. +# +# KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) +# Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL +# and under Windows it adds a -DMAKE__LIB definition to the compilation. +# +# KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) +# add a unit test, which is executed when running make test +# it will be built with RPATH poiting to the build dir +# The targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. +# The name of the target can be specified using TESTNAME , if it is not given +# the macro will default to the +# +# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) +# add an test executable +# it will be built with RPATH poiting to the build dir +# The targets are always created, but only built for the "all" +# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target +# are created but not built by default. You can build them by manually building the target. +# KDE4_INSTALL_ICONS( path theme) +# Installs all png and svgz files in the current directory to the icon +# directoy given in path, in the subdirectory for the given icon theme. +# +# KDE4_CREATE_HANDBOOK( docbookfile ) +# Create the handbook from the docbookfile (using meinproc) +# +# KDE4_INSTALL_HANDBOOK() +# Install the handbook documentation +# +# KDE4_CREATE_HTML_HANDBOOK( docbookfile ) +# Create HTML version of the handbook from the docbookfile (using meinproc) +# +# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally +# _KDE4_PLATFORM_DEFINITIONS is used only internally +# +# +# Copyright (c) 2006, Alexander Neundorf +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +include (MacroEnsureVersion) + +cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) + +set(QT_MIN_VERSION "4.3.0") +#this line includes FindQt4.cmake, which searches the Qt library and headers +find_package(Qt4 REQUIRED) + +if (NOT QT_DBUSXML2CPP_EXECUTABLE) + message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") +endif (NOT QT_DBUSXML2CPP_EXECUTABLE) + + +# Perl is required for building KDE software, +find_package(Perl REQUIRED) + +include (MacroLibrary) +include (CheckCXXCompilerFlag) +include (CheckCXXSourceCompiles) + +#add some KDE specific stuff + +# the following are directories where stuff will be installed to +set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) + +#are we trying to compile kdelibs ? +#then enter bootstrap mode +if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_kdeBootStrapping TRUE) + message(STATUS "Building kdelibs...") +else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + set(_kdeBootStrapping FALSE) +endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) + +# get the directory of the current file, used later on in the file +get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) + + +if (NOT _kdeBootStrapping) + # this file contains all dependencies of all libraries of kdelibs, Alex + include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) +endif (NOT _kdeBootStrapping) + +# this macro implements some very special logic how to deal with the cache +# by default the various install locations inherit their value from theit "parent" variable +# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will +# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX +# this would work completely without using the cache. +# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into +# the cache, otherwise it will be forgotten on the next cmake run. +# Once a variable is in the cache, it doesn't depend on its "parent" variables +# anymore and you can only change it by editing it directly. +# this macro helps in this regard, because as long as you don't set one of the +# variables explicitely to some location, it will always calculate its value from its +# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. +# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location +# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. +# +# additionally if installing to the same location as kdelibs, the other install +# directories are reused from the installed kdelibs +macro(_SET_FANCY _var _value _comment) + set(predefinedvalue "${_value}") + if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + set(predefinedvalue "${KDE4_${_var}}") + endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + + if (NOT DEFINED ${_var}) + set(${_var} ${predefinedvalue}) + else (NOT DEFINED ${_var}) + set(${_var} "${${_var}}" CACHE PATH "${_comment}") + endif (NOT DEFINED ${_var}) +endmacro(_SET_FANCY) + +if (WIN32) + # use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files + _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") + _set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") +else (WIN32) + _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") + _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") +endif (WIN32) + +_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") +_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") +_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") +_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") +_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") +_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") +_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") +_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") + +# To help with the migration issue, this uses set instead of _set_fancy, temporarily. +# (Otherwise all modules would keep installing into the old dirs) +# This can be reverted starting from May 2007 +set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services") +set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes") +#_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") +#_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") + +_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") +_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") +_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") +_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") + # this one shouldn't be used anymore +_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") +_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") + +_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") +_set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") + +_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") +_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") +_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") +_set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") +_set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + +################################# + + +# the following are directories where stuff will be installed to + + +option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") +option(KDE4_BUILD_TESTS "Build the tests") + +if( KDE4_ENABLE_FINAL) + add_definitions(-DKDE_USE_FINAL) +endif(KDE4_ENABLE_FINAL) + +#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable +#which is something between a shared library and a normal executable. +#Programs compiled with these features appear as ?shared object? with the file command. +#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" +option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") + +#now try to find some kde stuff + +if (_kdeBootStrapping) + set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) + set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) + set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) + set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) + set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) + set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) + set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) + set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) + set(KDE4_PHONON_LIBS ${QT_QTDBUS_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} phonon) + set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) + set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) + set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) + + set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + + if (WIN32) + set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) + else (WIN32) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) + endif (WIN32) + + set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) + + # when building kdelibs, make the kcfg rules depend on the binaries... + set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) + set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) + + set(KDE4_INSTALLED_VERSION_OK TRUE) + +else (_kdeBootStrapping) + + # ... but NOT otherwise + set( _KDE4_KCONFIG_COMPILER_DEP) + set( _KDE4_MAKEKDEWIDGETS_DEP) + set( _KDE4_MEINPROC_EXECUTABLE_DEP) + + # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 + exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) + + string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") + if (KDEVERSION) + + string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") + + # we need at least this version: + if (NOT KDE_MIN_VERSION) + set(KDE_MIN_VERSION "3.9.0") + endif (NOT KDE_MIN_VERSION) + + #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") + + macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) + + else (KDEVERSION) + message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") + endif (KDEVERSION) + + + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + + # this file contains all dependencies of all libraries of kdelibs, Alex + include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + + find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) + + find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) + + find_library(KDE4_KDEFX_LIBRARY NAMES kdefx PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEFX_LIBS ${kdefx_LIB_DEPENDS} ${KDE4_KDEFX_LIBRARY} ) + + find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) + + find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) + + find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) + + find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) + + find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) + + find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) + + find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) + + find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) + + find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) + + find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) + + if (UNIX) + find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + endif (UNIX) + + find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) + + find_library(KDE4_PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_PHONON_LIBS ${phonon_LIB_DEPENDS} ${KDE4_PHONON_LIBRARY} ) + + find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) + + find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) + + find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) + + find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) + + find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) + find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) + + find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) + + # Can't do that, it's not always compiled. + #find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + #set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) + + # Can't do that, it's not always compiled. See FindKMetaData.cmake + #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) + + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) + + # kpassworddialog.h is new with KDE4 + # KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake + find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) + + # at first look in LIBEXEC_INSTALL_DIR and no default paths, + # if this didn't succeed, the second call makes cmake search again, but in the standard paths + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) + + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) + + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) + +endif (_kdeBootStrapping) + + +##################### and now the platform specific stuff ############################ + +# Set a default build type for single-configuration +# CMake generators if no build type is set. +if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE RelWithDebInfo) +endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + + +if (WIN32) + + if(CYGWIN) + message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") + endif(CYGWIN) + + find_package(KDEWIN32 REQUIRED) + + # limit win32 packaging to kdelibs at now + # don't know if package name, version and notes are always available + if(_kdeBootStrapping) + find_package(KDEWIN_Packager) + if (KDEWIN_PACKAGER_FOUND) + KDEWIN_PACKAGER("kdelibs" "${KDE_VERSION}" "KDE base library" "") + endif (KDEWIN_PACKAGER_FOUND) + + include(Win32Macros) + addExplorerWrapper("kdelibs") + endif(_kdeBootStrapping) + + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) + + # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, + # otherwise they come from KDELibsDependencies.cmake, Alex + if (_kdeBootStrapping) + set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) + endif (_kdeBootStrapping) + + # windows, mingw + if(MINGW) + #hmmm, something special to do here ? + endif(MINGW) + + # windows, microsoft compiler + if(MSVC) + set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + # C4250: 'class1' : inherits 'class2::member' via dominance + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) + # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) + # C4396: 'identifier' : 'function' the inline specifier cannot be used when a friend declaration refers to a specialization of a function template + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4396" ) + if(CMAKE_COMPILER_2005) + # to avoid a lot of deprecated warnings + add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS ) + # 'identifier' : no suitable definition provided for explicit template instantiation request + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) + endif(CMAKE_COMPILER_2005) + endif(MSVC) + + + # for visual studio IDE set the path correctly for custom commands + # maybe under windows bat-files should be generated for running apps during the build + if(MSVC_IDE) + get_filename_component(PERL_LOCATION "${PERL_EXECUTABLE}" PATH) + file(TO_NATIVE_PATH "${PERL_LOCATION}" PERL_PATH_WINDOWS) + file(TO_NATIVE_PATH "${QT_BINARY_DIR}" QT_BIN_DIR_WINDOWS) + set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" + CACHE STATIC "MSVC IDE Run path" FORCE) + endif(MSVC_IDE) + +endif (WIN32) + + +# also use /usr/local by default under UNIX, including Mac OS X +if (UNIX) + option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." OFF) + + link_directories(/usr/local/lib) + set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) + + # the rest is RPATH handling + # here the defaults are set + # which are partly overwritten in kde4_handle_rpath_for_library() + # and kde4_handle_rpath_for_executable(), both located in KDE4Macros.cmake, Alex + if (APPLE) + set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) + else (APPLE) + # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling + set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) + set(CMAKE_SKIP_BUILD_RPATH TRUE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + endif (APPLE) +endif (UNIX) + + +if (Q_WS_X11) + # Done by FindQt4.cmake already + #find_package(X11 REQUIRED) + # UNIX has already set _KDE4_PLATFORM_INCLUDE_DIRS, so append + set(_KDE4_PLATFORM_INCLUDE_DIRS ${_KDE4_PLATFORM_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) +endif (Q_WS_X11) + + +# This will need to be modified later to support either Qt/X11 or Qt/Mac builds +if (APPLE) + + set ( _KDE4_PLATFORM_DEFINITIONS -D__APPLE_KDE__ ) + + # we need to set MACOSX_DEPLOYMENT_TARGET to (I believe) at least 10.2 or maybe 10.3 to allow + # -undefined dynamic_lookup; in the future we should do this programmatically + # hmm... why doesn't this work? + set (ENV{MACOSX_DEPLOYMENT_TARGET} 10.3) + + # "-undefined dynamic_lookup" means we don't care about missing symbols at link-time by default + # this is bad, but unavoidable until there is the equivalent of libtool -no-undefined implemented + # or perhaps it already is, and I just don't know where to look ;) + + set (CMAKE_SHARED_LINKER_FLAGS "-single_module -multiply_defined suppress ${CMAKE_SHARED_LINKER_FLAGS}") + set (CMAKE_MODULE_LINKER_FLAGS "-multiply_defined suppress ${CMAKE_MODULE_LINKER_FLAGS}") + #set(CMAKE_SHARED_LINKER_FLAGS "-single_module -undefined dynamic_lookup -multiply_defined suppress") + #set(CMAKE_MODULE_LINKER_FLAGS "-undefined dynamic_lookup -multiply_defined suppress") + + # we profile... + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + + # removed -Os, was there a special reason for using -Os instead of -O2 ?, Alex + # optimization flags are set below for the various build types + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") +endif (APPLE) + + +if (CMAKE_SYSTEM_NAME MATCHES Linux) + if (CMAKE_COMPILER_IS_GNUCXX) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") + # we profile... + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) + endif (CMAKE_COMPILER_IS_GNUCXX) + if (CMAKE_C_COMPILER MATCHES "icc") + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") + endif (CMAKE_C_COMPILER MATCHES "icc") +endif (CMAKE_SYSTEM_NAME MATCHES Linux) + +if (CMAKE_SYSTEM_NAME MATCHES BSD) + set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) + set ( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") + set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lc") +endif (CMAKE_SYSTEM_NAME MATCHES BSD) + +# compiler specific stuff, maybe this should be done differently, Alex + +if (MSVC) + set (KDE4_ENABLE_EXCEPTIONS -EHsc) +endif(MSVC) + +if (MINGW) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols") +endif (MINGW) + +if (CMAKE_COMPILER_IS_GNUCXX) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + # Select flags. + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") + set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") + + if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") + add_definitions (-D_BSD_SOURCE) + endif (CMAKE_SYSTEM_NAME MATCHES Linux) + + + check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) + if(KDE4_ENABLE_FPIE) + if(HAVE_FPIE_SUPPORT) + set (KDE4_CXX_FPIE_FLAGS "-fPIE") + set (KDE4_PIE_LDFLAGS "-pie") + else(HAVE_FPIE_SUPPORT) + MESSAGE(STATUS "Your compiler doesn't support PIE flag") + endif(HAVE_FPIE_SUPPORT) + endif(KDE4_ENABLE_FPIE) + # save a little by making local statics not threadsafe + check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) + if (__KDE_HAVE_NO_THREADSAFE_STATICS) + # currently disabled for Alpha1 due to what appears + # to be a compiler bug + # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806 + #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") + endif (__KDE_HAVE_NO_THREADSAFE_STATICS) + + # visibility support + check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) + + # get the gcc version + exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) + + string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") + # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: + if (NOT _gcc_version) + string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") + endif (NOT _gcc_version) + + macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) + macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) + + set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) + if (GCC_IS_NEWER_THAN_4_1) + exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) + string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") + endif (GCC_IS_NEWER_THAN_4_1) + + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") + set (KDE4_C_FLAGS "-fvisibility=hidden") + + if (GCC_IS_NEWER_THAN_4_2) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") + endif (GCC_IS_NEWER_THAN_4_2) + else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + set (__KDE_HAVE_GCC_VISIBILITY 0) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + +endif (CMAKE_COMPILER_IS_GNUCXX) + +if (CMAKE_C_COMPILER MATCHES "icc") + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + # Select flags. + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") + set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") + + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wpointer-arith -fno-common") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wpointer-arith -fno-exceptions -fno-common") + + # visibility support + set(__KDE_HAVE_ICC_VISIBILITY) +# check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_ICC_VISIBILITY) +# if (__KDE_HAVE_ICC_VISIBILITY) +# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") +# endif (__KDE_HAVE_ICC_VISIBILITY) + +endif (CMAKE_C_COMPILER MATCHES "icc") + +# we prefer to use a different postfix for debug libs only on Windows +# does not work atm +if (WIN32) + SET(CMAKE_DEBUG_POSTFIX "") +endif (WIN32) + +########### end of platform specific stuff ########################## + + +# KDE4Macros.cmake contains all the KDE specific macros +include(${kde_cmake_module_dir}/KDE4Macros.cmake) + + +# decide whether KDE4 has been found +set(KDE4_FOUND FALSE) +if (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) + set(KDE4_FOUND TRUE) +endif (KDE4_INCLUDE_DIR AND KDE4_LIB_DIR AND KDE4_KCFGC_EXECUTABLE AND KDE4_INSTALLED_VERSION_OK) + + +macro (KDE4_PRINT_RESULTS) + + # inside kdelibs the include dir and lib dir are internal, not "found" + if (NOT _kdeBootStrapping) + if(KDE4_INCLUDE_DIR) + message(STATUS "Found KDE 4.0 include dir: ${KDE4_INCLUDE_DIR}") + else(KDE4_INCLUDE_DIR) + message(STATUS "ERROR: unable to find KDE 4 headers") + endif(KDE4_INCLUDE_DIR) + + if(KDE4_LIB_DIR) + message(STATUS "Found KDE 4 library dir: ${KDE4_LIB_DIR}") + else(KDE4_LIB_DIR) + message(STATUS "ERROR: unable to find KDE 4 core library") + endif(KDE4_LIB_DIR) + endif (NOT _kdeBootStrapping) + + if(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") + else(KDE4_KCFGC_EXECUTABLE) + message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") + endif(KDE4_KCFGC_EXECUTABLE) +endmacro (KDE4_PRINT_RESULTS) + + +if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) + #bail out if something wasn't found + kde4_print_results() + if (NOT KDE4_INSTALLED_VERSION_OK) + message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") + endif (NOT KDE4_INSTALLED_VERSION_OK) + + if (NOT KDE4_KCFGC_EXECUTABLE) + message(FATAL_ERROR "ERROR: could not detect a usable kconfig-compiler") + endif (NOT KDE4_KCFGC_EXECUTABLE) + + message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") +endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) + + +if (NOT KDE4Internal_FIND_QUIETLY) + kde4_print_results() +endif (NOT KDE4Internal_FIND_QUIETLY) + +#add the found Qt and KDE include directories to the current include path +#the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include +set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ) + +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) + +if (NOT _kde4_uninstall_rule_created) + set(_kde4_uninstall_rule_created TRUE) + + configure_file("${kde_cmake_module_dir}/kde4_cmake_uninstall.cmake.in" "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake" @ONLY) + + add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake") + +endif (NOT _kde4_uninstall_rule_created) -- cgit v1.2.1 From 028401325bc88d5699693c774a6271b6bc49df93 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 22 Jun 2007 09:54:49 +0000 Subject: fatal error if KDE wants to compile with -fvisibility=hidden but Q_DECL_EXPORT expands to nothing svn path=/trunk/KDE/kdelibs/; revision=678787 --- modules/FindKDE4Internal.cmake | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index adf9410e..0c845c6d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -769,6 +769,21 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") set (KDE4_C_FLAGS "-fvisibility=hidden") + # check that Qt defines Q_DECL_EXPORT as __attribute__ ((visibility("default"))) + # if it doesn't and KDE compiles with hidden default visibiltiy plugins will break + set(_source "#include \n int main()\n {\n #ifdef QT_VISIBILITY_AVAILABLE \n return 0;\n #else \n return 1; \n #endif \n }\n") + set(_source_file ${CMAKE_BINARY_DIR}/CMakeTmp/check_qt_visibility.cpp) + file(WRITE "${_source_file}" "${_source}") + set(_include_dirs "-DINCLUDE_DIRECTORIES:STRING=${QT_INCLUDES}") + + try_run(_run_result _compile_result ${CMAKE_BINARY_DIR} ${_source_file} CMAKE_FLAGS "${_include_dirs}") + + if(NOT _compile_result) + message(FATAL_ERROR "Could not compile simple test program:\n ${_source}") + endif(NOT _compile_result) + if(_run_result) + message(FATAL_ERROR "Qt compiled without support for -fvisibility=hidden. This will break plugins and linking of some applications. Please fix your Qt installation.") + endif(_run_result) if (GCC_IS_NEWER_THAN_4_2) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") -- cgit v1.2.1 From 5fda52a7a7c4a8244c56dc3ab793404f2533f002 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 22 Jun 2007 10:24:05 +0000 Subject: make the automoc script work with moc_.cpp style moc includes for qmake compatibility svn path=/trunk/KDE/kdelibs/; revision=678809 --- modules/kde4automoc.cmake | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake index 70417672..0b37f54d 100644 --- a/modules/kde4automoc.cmake +++ b/modules/kde4automoc.cmake @@ -18,23 +18,28 @@ macro(PARSE_ONE_FILE _filename _moc_mark_FILE) set(_mocs_PER_FILE) - string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + string(REGEX MATCHALL "#include +([\"<]moc_[^ ]+\\.cpp|[^ ]+\\.moc)[\">]" _match "${_contents}") if (_match) foreach (_current_MOC_INC ${_match}) string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + if(_current_MOC) + get_filename_component(_basename ${_current_MOC} NAME_WE) + else(_current_MOC) + string(REGEX MATCH "moc_[^ <\"]+\\.cpp" _current_MOC "${_current_MOC_INC}") + get_filename_component(_basename ${_current_MOC} NAME_WE) + string(REPLACE "moc_" "" _basename "${_basename}") + endif(_current_MOC) - get_filename_component(_basename ${_current_MOC} NAME_WE) set(_header ${_abs_PATH}/${_basename}.h) set(_moc ${KDE4_CURRENT_BINARY_DIR}/${_current_MOC}) + if (NOT EXISTS ${_header}) + message(FATAL_ERROR "In the file \"${_filename}\" the moc file \"${_current_MOC}\" is included, but \"${_header}\" doesn't exist.") + endif (NOT EXISTS ${_header}) + list(APPEND _mocs_PER_FILE ${_basename}) file(APPEND ${_moc_mark_FILE} "set( ${_basename}_MOC ${_moc})\n") file(APPEND ${_moc_mark_FILE} "set( ${_basename}_HEADER ${_header})\n") - - if (NOT EXISTS ${_abs_PATH}/${_basename}.h) - message(FATAL_ERROR "In the file \"${_filename}\" the moc file \"${_current_MOC}\" is included, but \"${_abs_PATH}/${_basename}.h\" doesn't exist.") - endif (NOT EXISTS ${_abs_PATH}/${_basename}.h) - endforeach (_current_MOC_INC) endif (_match) file(APPEND ${_moc_mark_FILE} "set(mocs ${_mocs_PER_FILE})\n") -- cgit v1.2.1 From c6407c849879bd548c139a715367ec20455b78fc Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 23 Jun 2007 11:58:27 +0000 Subject: Fix logic (When we don't find mini version of lib we must exit) svn path=/trunk/KDE/kdelibs/; revision=679228 --- modules/FindExiv2.cmake | 29 ++++++++++++++--------------- modules/FindKdcraw.cmake | 31 +++++++++++++++---------------- modules/FindKexiv2.cmake | 31 +++++++++++++++---------------- modules/FindKipi.cmake | 31 +++++++++++++++---------------- 4 files changed, 59 insertions(+), 63 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 6e34d60e..2f6caa1d 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -59,22 +59,21 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) set(EXIV2_FOUND TRUE) endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) - - if (EXIV2_FOUND) - if (NOT Exiv2_FIND_QUIETLY) - message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") - endif (NOT Exiv2_FIND_QUIETLY) - else (EXIV2_FOUND) - if (Exiv2_FIND_REQUIRED) - if (NOT EXIV2_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find Exiv2 header files") - endif (NOT EXIV2_INCLUDE_DIR) - if (NOT EXIV2_LIBRARIES) + endif(EXIV2_VERSION_GOOD_FOUND) + if (EXIV2_FOUND) + if (NOT Exiv2_FIND_QUIETLY) + message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") + endif (NOT Exiv2_FIND_QUIETLY) + else (EXIV2_FOUND) + if (Exiv2_FIND_REQUIRED) + if (NOT EXIV2_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find Exiv2 header files") + endif (NOT EXIV2_INCLUDE_DIR) + if (NOT EXIV2_LIBRARIES) message(FATAL_ERROR "Could NOT find Exiv2 library") - endif (NOT EXIV2_LIBRARIES) - endif (Exiv2_FIND_REQUIRED) - endif (EXIV2_FOUND) - endif(EXIV2_VERSION_GOOD_FOUND) + endif (NOT EXIV2_LIBRARIES) + endif (Exiv2_FIND_REQUIRED) + endif (EXIV2_FOUND) MARK_AS_ADVANCED(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index 06e408d6..371ff9c3 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -78,22 +78,21 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) set(KDCRAW_FOUND TRUE) endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - - if (KDCRAW_FOUND) - if (NOT Kdcraw_FIND_QUIETLY) - message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") - endif (NOT Kdcraw_FIND_QUIETLY) - else (KDCRAW_FOUND) - if (Kdcraw_FIND_REQUIRED) - if (NOT KDCRAW_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find libkdcraw header files") - endif (NOT KDCRAW_INCLUDE_DIR) - if (NOT KDCRAW_LIBRARIES) - message(FATAL_ERROR "Could NOT find libkdcraw library") - endif (NOT KDCRAW_LIBRARIES) - endif (Kdcraw_FIND_REQUIRED) - endif (KDCRAW_FOUND) - endif(KDCRAW_VERSION_GOOD_FOUND) + endif(KDCRAW_VERSION_GOOD_FOUND) + if (KDCRAW_FOUND) + if (NOT Kdcraw_FIND_QUIETLY) + message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") + endif (NOT Kdcraw_FIND_QUIETLY) + else (KDCRAW_FOUND) + if (Kdcraw_FIND_REQUIRED) + if (NOT KDCRAW_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkdcraw header files") + endif (NOT KDCRAW_INCLUDE_DIR) + if (NOT KDCRAW_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkdcraw library") + endif (NOT KDCRAW_LIBRARIES) + endif (Kdcraw_FIND_REQUIRED) + endif (KDCRAW_FOUND) MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index e292334b..8093fbd4 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -78,22 +78,21 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) set(KEXIV2_FOUND TRUE) endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) - - if (KEXIV2_FOUND) - if (NOT Kexiv2_FIND_QUIETLY) - message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") - endif (NOT Kexiv2_FIND_QUIETLY) - else (KEXIV2_FOUND) - if (Kexiv2_FIND_REQUIRED) - if (NOT KEXIV2_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find libkexiv2 header files") - endif (NOT KEXIV2_INCLUDE_DIR) - if (NOT KEXIV2_LIBRARIES) - message(FATAL_ERROR "Could NOT find libkexiv2 library") - endif (NOT KEXIV2_LIBRARIES) - endif (Kexiv2_FIND_REQUIRED) - endif (KEXIV2_FOUND) - endif(KEXIV2_VERSION_GOOD_FOUND) + endif(KEXIV2_VERSION_GOOD_FOUND) + if (KEXIV2_FOUND) + if (NOT Kexiv2_FIND_QUIETLY) + message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") + endif (NOT Kexiv2_FIND_QUIETLY) + else (KEXIV2_FOUND) + if (Kexiv2_FIND_REQUIRED) + if (NOT KEXIV2_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkexiv2 header files") + endif (NOT KEXIV2_INCLUDE_DIR) + if (NOT KEXIV2_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkexiv2 library") + endif (NOT KEXIV2_LIBRARIES) + endif (Kexiv2_FIND_REQUIRED) + endif (KEXIV2_FOUND) MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 5f8430dc..9afbbcdd 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -78,22 +78,21 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) set(KIPI_FOUND TRUE) endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) - - if (KIPI_FOUND) - if (NOT Kipi_FIND_QUIETLY) - message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") - endif (NOT Kipi_FIND_QUIETLY) - else (KIPI_FOUND) - if (Kipi_FIND_REQUIRED) - if (NOT KIPI_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find libkipi header files") - endif (NOT KIPI_INCLUDE_DIR) - if (NOT KIPI_LIBRARIES) - message(FATAL_ERROR "Could NOT find libkipi library") - endif (NOT KIPI_LIBRARIES) - endif (Kipi_FIND_REQUIRED) - endif (KIPI_FOUND) - endif(KIPI_VERSION_GOOD_FOUND) + endif(KIPI_VERSION_GOOD_FOUND) + if (KIPI_FOUND) + if (NOT Kipi_FIND_QUIETLY) + message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") + endif (NOT Kipi_FIND_QUIETLY) + else (KIPI_FOUND) + if (Kipi_FIND_REQUIRED) + if (NOT KIPI_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkipi header files") + endif (NOT KIPI_INCLUDE_DIR) + if (NOT KIPI_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkipi library") + endif (NOT KIPI_LIBRARIES) + endif (Kipi_FIND_REQUIRED) + endif (KIPI_FOUND) MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) -- cgit v1.2.1 From a6b2d40be6e4cb4984a0a23ab8543f88b4570cf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Sun, 24 Jun 2007 22:06:49 +0000 Subject: XSync extension. svn path=/trunk/KDE/kdelibs/; revision=679787 --- modules/FindX11.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index b3c0a4b7..79fc2a61 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -33,6 +33,7 @@ # X11_Xt_INCLUDE_PATH, X11_Xt_LIB, X11_Xt_FOUND # X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND # X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND +# X11_XSync_INCLUDE_PATH, (in X11_Xext_LIB), X11_XSync_FOUND # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. @@ -98,6 +99,7 @@ IF (UNIX) FIND_PATH(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xt_INCLUDE_PATH X11/Intrinsic.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_XSync_INCLUDE_PATH X11/extensions/sync.h ${X11_INC_SEARCH_PATH}) FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) @@ -271,6 +273,11 @@ IF (UNIX) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) ENDIF (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) + IF (X11_XSync_INCLUDE_PATH) + SET(X11_XSync_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XSync_INCLUDE_PATH}) + ENDIF (X11_XSync_INCLUDE_PATH) + IF(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) SET(X11_ICE_FOUND TRUE) ENDIF(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) @@ -419,6 +426,7 @@ IF (UNIX) X11_XShm_INCLUDE_PATH X11_ICE_LIB X11_ICE_INCLUDE_PATH + X11_XSync_INCLUDE_PATH ) SET(CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK_SAVE}) ENDIF (UNIX) -- cgit v1.2.1 From 06b456e025ac2b511a7587d4758f49ad489b5189 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 24 Jun 2007 22:47:46 +0000 Subject: Fix the kde4_add_test_executable macro by setting EXECUTABLE_OUTPUT_PATH and add a convience define to not have to install xmlgui and other files. Adapt knotify and kdeui tests to this change (remove the extra add_definitions there) svn path=/trunk/KDE/kdelibs/; revision=679803 --- modules/FindKDE4Internal.cmake | 4 ++++ modules/KDE4Macros.cmake | 8 ++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0c845c6d..ac7c6e43 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -193,6 +193,10 @@ # The targets are always created, but only built for the "all" # target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target # are created but not built by default. You can build them by manually building the target. +# KDESRCDIR is set to the source directory of the test, this can be used with +# KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ); to be able to use xmlgui +# and other things in the test, that normally require installation +# # KDE4_INSTALL_ICONS( path theme) # Installs all png and svgz files in the current directory to the icon # directoy given in path, in the subdirectory for the given icon theme. diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d31c75ee..c3493c5e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -766,6 +766,9 @@ endmacro (KDE4_ADD_UNIT_TEST) # The targets are always created, but only built for the "all" # target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target # are created but not built by default. You can build them by manually building the target. +# KDESRCDIR is set to the source directory of the test, this can be used with +# KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ); to be able to use xmlgui +# and other things in the test, that normally require installation macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) set(_add_executable_param) @@ -774,13 +777,14 @@ macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) set(_add_executable_param EXCLUDE_FROM_ALL) endif (NOT KDE4_BUILD_TESTS) + set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) + kde4_get_automoc_files(_automoc_FILES ${ARGN}) add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) set_target_properties(${_target_NAME} PROPERTIES - EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} - DEFINITIONS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" + COMPILE_FLAGS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) -- cgit v1.2.1 From 07acb405620ec881bd2c8c137e86a417a40bf14b Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 25 Jun 2007 12:48:39 +0000 Subject: needed outside kdebase/workspace, so move them to kdelibs svn path=/trunk/KDE/kdelibs/; revision=680109 --- modules/FindBlueZ.cmake | 47 ++++++++++++++++++++++++++++++++ modules/FindNetworkManager.cmake | 59 ++++++++++++++++++++++++++++++++++++++++ modules/FindSamba.cmake | 56 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 162 insertions(+) create mode 100644 modules/FindBlueZ.cmake create mode 100644 modules/FindNetworkManager.cmake create mode 100644 modules/FindSamba.cmake (limited to 'modules') diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake new file mode 100644 index 00000000..9435258e --- /dev/null +++ b/modules/FindBlueZ.cmake @@ -0,0 +1,47 @@ +# - Try to find BlueZ +# Once done this will define +# +# BLUEZ_FOUND - system has BlueZ + +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007, Will Stephenson, +# Copyright (c) 2007, Daniel Gollub, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(bluez _BlueZIncDir _BlueZLinkDir _BlueZLinkFlags _BlueZCflags) +ENDIF (NOT WIN32) + +find_path(BLUEZ_INCLUDE_DIR bluetooth/bluetooth.h + PATHS + ${_BlueZIncDir} + /usr/X11/include + ) + +find_library(BLUEZ_LIBRARIES NAMES bluetooth + PATHS + ${_BlueZLinkDir} + ) + +if (BLUEZ_LIBRARIES AND BLUEZ_INCLUDE_DIR) + set(BLUEZ_FOUND TRUE) +endif (BLUEZ_LIBRARIES AND BLUEZ_INCLUDE_DIR) + + +IF (BLUEZ_FOUND) + if (NOT BlueZ_FIND_QUIETLY) + message(STATUS "Found bluez: ${BLUEZ_LIBRARIES}") + endif (NOT BlueZ_FIND_QUIETLY) +ELSE(BLUEZ_FOUND) + IF (BlueZ_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find BlueZ") + ENDIF (BlueZ_FIND_REQUIRED) +ENDIF (BLUEZ_FOUND) + +mark_as_advanced( BLUEZ_LIBRARIES BLUEZ_INCLUDE_DIR) diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake new file mode 100644 index 00000000..75f8e347 --- /dev/null +++ b/modules/FindNetworkManager.cmake @@ -0,0 +1,59 @@ +# - Try to find NetworkManager +# Once done this will define +# +# NETWORKMANAGER_FOUND - system has NetworkManager +# NETWORKMANAGER_INCLUDE_DIR - the NetworkManager include directory +# NETWORKMANAGER_LIBRARIES - the libraries needed to use NetworkManager +# NETWORKMANAGER_DEFINITIONS - Compiler switches required for using NetworkManager + +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007, Will Stephenson, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +IF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) + # in cache already + SET(NetworkManager_FIND_QUIETLY TRUE) +ENDIF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + PKGCONFIG(NetworkManager _NetworkManagerIncDir _NetworkManagerLinkDir _NetworkManagerLinkFlags _NetworkManagerCflags) + SET(NETWORKMANAGER_DEFINITIONS ${_NetworkManagerCflags}) + PKGCONFIG(libnm-util _libnm-utilIncDir _libnm-utilLinkDir _libnm-utilLinkFlags _libnm-utilCflags) + SET(NM-UTILS_DEFINITIONS ${_libnm-utilCflags}) +ENDIF (NOT WIN32) + +MESSAGE(STATUS "Found NetworkManager: ${_NetworkManagerLinkFlags}") +FIND_PATH(NETWORKMANAGER_INCLUDE_DIR NetworkManager/NetworkManager.h + PATHS + ${_NetworkManagerIncDir} + ) + +FIND_LIBRARY(NM-UTIL_LIBRARY NAMES nm-util + PATHS + ${_libnm-utilLinkDir} + ) + +IF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) + SET(NETWORKMANAGER_FOUND TRUE) +ELSE (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) + SET(NETWORKMANAGER_FOUND FALSE) +ENDIF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) + +IF (NETWORKMANAGER_FOUND) + IF (NOT NetworkManager_FIND_QUIETLY) + MESSAGE(STATUS "Found libnm-util: ${NM-UTIL_LIBRARY}") + ENDIF (NOT NetworkManager_FIND_QUIETLY) +ELSE (NETWORKMANAGER_FOUND) + IF (NetworkManager_FIND_REQUIRED) + MESSAGE(SEND_ERROR "Could NOT find NetworkManager") + ENDIF (NetworkManager_FIND_REQUIRED) +ENDIF (NETWORKMANAGER_FOUND) + +MARK_AS_ADVANCED(NETWORKMANAGER_INCLUDE_DIR NM-UTIL_LIBRARY) + diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake new file mode 100644 index 00000000..08c0fee3 --- /dev/null +++ b/modules/FindSamba.cmake @@ -0,0 +1,56 @@ +# - Try to find the samba directory library +# Once done this will define +# +# SAMBA_FOUND - system has SAMBA +# SAMBA_INCLUDE_DIR - the SAMBA include directory +# SAMBA_LIBRARIES - The libraries needed to use SAMBA +# Set SAMBA_REQUIRE_SMBC_SET_CONTEXT to TRUE if you need a version of Samba +# which comes with smbc_set_context() + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + # Already in cache, be silent + set(Samba_FIND_QUIETLY TRUE) +endif(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + +find_path(SAMBA_INCLUDE_DIR NAMES libsmbclient.h ) + +find_library(SAMBA_LIBRARIES NAMES smbclient ) + + +if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + set(SAMBA_FOUND TRUE) + # check whether libsmbclient has smbc_set_context() + include(CheckSymbolExists) + include(MacroPushRequiredVars) + macro_push_required_vars() + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) + check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) + macro_pop_required_vars() + # fail if smbc_set_context() was required but hasn't been found + if (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) + set(SAMBA_FOUND FALSE) + endif (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) + +else(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + set(SAMBA_FOUND FALSE) + set(SAMBA_HAVE_SMBC_SET_CONTEXT FALSE) +endif(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + + +if(SAMBA_FOUND) + if(NOT Samba_FIND_QUIETLY) + message(STATUS "Found samba: ${SAMBA_LIBRARIES}") + endif(NOT Samba_FIND_QUIETLY) +else(SAMBA_FOUND) + if (Samba_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Samba library") + endif (Samba_FIND_REQUIRED) +endif(SAMBA_FOUND) + +mark_as_advanced(SAMBA_INCLUDE_DIR SAMBA_LIBRARIES) + -- cgit v1.2.1 From 1a1f0b9f2cb1125b2cf15335a518f2fae6ce8047 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Mon, 25 Jun 2007 13:50:34 +0000 Subject: Fix make test, sorry for overlooking that one. svn path=/trunk/KDE/kdelibs/; revision=680131 --- modules/KDE4Macros.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c3493c5e..47b4acbb 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -757,8 +757,7 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) LIST(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) kde4_add_test_executable( ${_test_NAME} ${_srcList} ) - get_target_property(_target_OUTPUT_PATH ${_test_NAME} EXECUTABLE_OUTPUT_PATH) - add_test( ${_targetName} ${_target_OUTPUT_PATH}/${_test_NAME} ) + add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) endmacro (KDE4_ADD_UNIT_TEST) # add an test executable -- cgit v1.2.1 From bac6c156dae69deb403caa4ac4595a95d6030247 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 25 Jun 2007 17:15:52 +0000 Subject: moved here from kdebase svn path=/trunk/KDE/kdelibs/; revision=680226 --- modules/FindXKB.cmake | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 modules/FindXKB.cmake (limited to 'modules') diff --git a/modules/FindXKB.cmake b/modules/FindXKB.cmake new file mode 100644 index 00000000..a91078ad --- /dev/null +++ b/modules/FindXKB.cmake @@ -0,0 +1,15 @@ +# + + find_path(X11_XKB_INCLUDE_PATH X11/XKBlib.h "${X11_INC_SEARCH_PATH}") + if (X11_XKB_INCLUDE_PATH) + MACRO_PUSH_REQUIRED_VARS() + set(CMAKE_REQUIRED_LIBRARIES "${X11_LIBRARIES} ${CMAKE_REQUIRED_LIBRARIES}") + check_library_exists(X11 XkbLockModifiers "" HAVE_XKB) + MACRO_POP_REQUIRED_VARS() + if (HAVE_XKB) + set(XKB_FOUND TRUE) + endif (HAVE_XKB) + endif (X11_XKB_INCLUDE_PATH) + + + -- cgit v1.2.1 From ee504248b822e23d59b67a48b83bb3fe1f2bf5d8 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 26 Jun 2007 06:26:50 +0000 Subject: Fix typo svn path=/trunk/KDE/kdelibs/; revision=680418 --- modules/FindNetworkManager.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake index 75f8e347..cbaae5f1 100644 --- a/modules/FindNetworkManager.cmake +++ b/modules/FindNetworkManager.cmake @@ -51,7 +51,7 @@ IF (NETWORKMANAGER_FOUND) ENDIF (NOT NetworkManager_FIND_QUIETLY) ELSE (NETWORKMANAGER_FOUND) IF (NetworkManager_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could NOT find NetworkManager") + MESSAGE(FATAL_ERROR "Could NOT find NetworkManager") ENDIF (NetworkManager_FIND_REQUIRED) ENDIF (NETWORKMANAGER_FOUND) -- cgit v1.2.1 From d9894d647742f03d397e9510a72b6b7c0f7527e6 Mon Sep 17 00:00:00 2001 From: Gavin Beatty Date: Wed, 27 Jun 2007 15:57:51 +0000 Subject: Tiny changes such as added unit test changes to preamble and spelling mistakes svn path=/trunk/KDE/kdelibs/; revision=680973 --- modules/KDE4Macros.cmake | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 47b4acbb..44d7ec5e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -8,6 +8,8 @@ # KDE4_INSTALL_LIBTOOL_FILE # KDE4_CREATE_FINAL_FILES # KDE4_ADD_KDEINIT_EXECUTABLE +# KDE4_ADD_UNIT_TEST +# KDE4_ADD_TEST_EXECUTABLE # KDE4_ADD_EXECUTABLE # KDE4_ADD_WIDGET_FILES # KDE4_INSTALL_ICONS @@ -53,7 +55,7 @@ macro (KDE4_ADD_KCFG_FILES _sources ) if(_kcfg_generatemoc) qt4_generate_moc(${_header_FILE} ${_moc_FILE} ) - set_source_files_properties(${_src_FILE} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + set_source_files_properties(${_src_FILE} PROPERTIES SKIP_AUTOMOC TRUE) # don't run automoc on this file list(APPEND ${_sources} ${_moc_FILE}) endif(_kcfg_generatemoc) @@ -531,7 +533,7 @@ endmacro (KDE4_CREATE_FINAL_FILES) # This macro sets the RPATH related options for libraries, plugins and kdeinit executables. # It overrides the defaults set in FindKDE4Internal.cmake. -# If RPATH is not explicitely disabled, libraries and plugins are built without RPATH, in +# If RPATH is not explicitly disabled, libraries and plugins are built without RPATH, in # the hope that the RPATH which is compiled into the executable is good enough. macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) if (NOT CMAKE_SKIP_RPATH AND NOT KDE4_USE_ALWAYS_FULL_RPATH) @@ -743,7 +745,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) # add a unit test, which is executed when running make test -# it will be built with RPATH poiting to the build dir +# it will be built with RPATH pointing to the build dir # The targets are always created, but only built for the "all" # target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target # are created but not built by default. You can build them by manually building the target. @@ -761,7 +763,7 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endmacro (KDE4_ADD_UNIT_TEST) # add an test executable -# it will be built with RPATH poiting to the build dir +# it will be built with RPATH pointing to the build dir # The targets are always created, but only built for the "all" # target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target # are created but not built by default. You can build them by manually building the target. -- cgit v1.2.1 From a91a8972129f5f408779aac7d962e7b26a28b211 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 27 Jun 2007 18:24:55 +0000 Subject: Minor svn path=/trunk/KDE/kdelibs/; revision=681013 --- modules/NepomukMacros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/NepomukMacros.cmake b/modules/NepomukMacros.cmake index af534451..9476cf64 100644 --- a/modules/NepomukMacros.cmake +++ b/modules/NepomukMacros.cmake @@ -21,9 +21,9 @@ macro(NEPOMUK_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources out_includes) FIND_PROGRAM(RCGEN nepomuk-rcgen PATHS ${BIN_INSTALL_DIR}) - if(RCGEN-NOTFOUND) + if(NOT RCGEN) message( FATAL_ERROR "Failed to find the KMetaData source generator" ) - endif(RCGEN-NOTFOUND) + endif(NOT RCGEN) FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) -- cgit v1.2.1 From 8c37ee65ae144bcea05dde455a07da724ff5e800 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Thu, 28 Jun 2007 17:33:54 +0000 Subject: missing quotes for paths containing a space svn path=/trunk/KDE/kdelibs/; revision=681349 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 44d7ec5e..0109459e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -756,7 +756,7 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) set(_targetName ${_test_NAME}) if( ${ARGV1} STREQUAL "TESTNAME" ) set(_targetName ${ARGV2}) - LIST(REMOVE_AT _srcList 0 1) + LIST(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) kde4_add_test_executable( ${_test_NAME} ${_srcList} ) add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) @@ -785,7 +785,7 @@ macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) set_target_properties(${_target_NAME} PROPERTIES - COMPILE_FLAGS -DKDESRCDIR=\\"${CMAKE_CURRENT_SOURCE_DIR}\\" + COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"" SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) -- cgit v1.2.1 From cd33296b592dc60cb1ae9b3a05129232658eef2c Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 30 Jun 2007 14:46:55 +0000 Subject: add a bunch of kdepimlibs libraries to the KDE4_KFOO_LIBS variables. svn path=/trunk/KDE/kdelibs/; revision=681867 --- modules/FindKdepimLibs.cmake | 57 ++++++++++++++++++++++++++++++-------------- 1 file changed, 39 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 6d7bad78..80410e63 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -24,46 +24,67 @@ find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal_export.h if( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND TRUE) if (WIN32) + find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgmepp PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) + find_library(KDE4_KABC_LIBRARY NAMES kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KABC_LIBS ${kabc_LIB_DEPENDS} ${KDE4_KABC_LIBRARY} ) - find_library(KDE4_KPIMUTILS_LIBRARY NAMES kpimutils PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPIMUTILS_LIBS ${kpimutils_LIB_DEPENDS} ${KDE4_KPIMUTILS_LIBRARY} ) + find_library(KDE4_KBLOG_LIBRARY NAMES kblog PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KBLOG_LIBS ${kblog_LIB_DEPENDS} ${KDE4_KBLOG_LIBRARY} ) find_library(KDE4_KCAL_LIBRARY NAMES kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KCAL_LIBS ${kcal_LIB_DEPENDS} ${KDE4_KCAL_LIBRARY} ) - find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) + find_library(KDE4_KIMAP_LIBRARY NAMES kimap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KIMAP_LIBS ${kimap_LIB_DEPENDS} ${KDE4_KIMAP_LIBRARY} ) + + find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) + + find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) + + find_library(KDE4_KPIMIDENTITIES_LIBRARY NAMES kpimidentities PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPIMIDENTITIES_LIBS ${kpimidentities_LIB_DEPENDS} ${KDE4_KPIMIDENTITIES_LIBRARY} ) + + find_library(KDE4_KPIMUTILS_LIBRARY NAMES kpimutils PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPIMUTILS_LIBS ${kpimutils_LIB_DEPENDS} ${KDE4_KPIMUTILS_LIBRARY} ) find_library(KDE4_KRESOURCES_LIBRARY NAMES kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KRESOURCES_LIBS ${kresources_LIB_DEPENDS} ${KDE4_KRESOURCES_LIBRARY} ) + find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) + + find_library(KDE4_KXMLRPCCLIENT_LIBRARY NAMES kxmlrpcclient PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KXMLRPCCLIENT_LIBS ${kxmlrpcclient_LIB_DEPENDS} ${KDE4_KXMLRPCCLIENT_LIBRARY} ) + find_library(KDE4_MAILTRANSPORT_LIBRARY NAMES mailtransport PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_MAILTRANSPORT_LIBS ${mailtransport_LIB_DEPENDS} ${KDE4_MAILTRANSPORT_LIBRARY} ) - find_library(KDE4_SYNDICATION_LIBRARY NAMES syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_SYNDICATION_LIBS ${syndication_LIB_DEPENDS} ${KDE4_SYNDICATION_LIBRARY} ) - find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) + find_library(KDE4_QGPGME_LIBRARY NAMES qgpgme PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_QGPGME_LIBS ${qgpgme_LIB_DEPENDS} ${KDE4_QGPGME_LIBRARY} ) - find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) - - find_library(KDE4_KIMAP_LIBRARY NAMES kimap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KIMAP_LIBS ${kimap_LIB_DEPENDS} ${KDE4_KIMAP_LIBRARY} ) + find_library(KDE4_SYNDICATION_LIBRARY NAMES syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_SYNDICATION_LIBS ${syndication_LIB_DEPENDS} ${KDE4_SYNDICATION_LIBRARY} ) else (WIN32) - set(KDE4_KPIMUTILS_LIBS kpimutils) + set(KDE4_GPGMEPP_LIBS gpgmepp) set(KDE4_KABC_LIBS kabc) + set(KDE4_KBLOG_LIBS kblog) set(KDE4_KCAL_LIBS kcal) - set(KDE4_KTNEF_LIBS ktnef) + set(KDE4_KIMAP_LIBS kimap) + set(KDE4_KLDAP_LIBS kldap) + set(KDE4_KMIME_LIBS kmime) + set(KDE4_KPIMIDENTITIES_LIBS kpimidentities) + set(KDE4_KPIMUTILS_LIBS kpimutils) set(KDE4_KRESOURCES_LIBS kresources) + set(KDE4_KTNEF_LIBS ktnef) + set(KDE4_KXMLRPCCLIENT kxmlrpcclient) set(KDE4_MAILTRANSPORT_LIBS mailtransport) set(KDE4_SYNDICATION_LIBS syndication) - set(KDE4_KLDAP_LIBS kldap) - set(KDE4_KMIME_LIBS kmime) - set(KDE4_KIMAP_LIBS kimap) + set(KDE4_QGPGME_LIBS qgpgme) endif(WIN32) # setup global used KDE include -- cgit v1.2.1 From fe88df9546aac1e6d6a9401c4db33e4c8aa759f5 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 30 Jun 2007 15:39:46 +0000 Subject: add variables for kleo and kpgp libs. svn path=/trunk/KDE/kdelibs/; revision=681880 --- modules/FindKdepimLibs.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 80410e63..7d0fd9f5 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -42,9 +42,15 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) + find_library(KDE4_KLEO_LIBRARY NAMES kleo PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KLEO_LIBS ${kleo_LIB_DEPENDS} ${KDE4_KLEO_LIBRARY} ) + find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) + find_library(KDE4_KPGP_LIBRARY NAMES kpgp PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPGP_LIBS ${kpgp_LIB_DEPENDS} ${KDE4_KPGP_LIBRARY} ) + find_library(KDE4_KPIMIDENTITIES_LIBRARY NAMES kpimidentities PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KPIMIDENTITIES_LIBS ${kpimidentities_LIB_DEPENDS} ${KDE4_KPIMIDENTITIES_LIBRARY} ) @@ -76,7 +82,9 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set(KDE4_KCAL_LIBS kcal) set(KDE4_KIMAP_LIBS kimap) set(KDE4_KLDAP_LIBS kldap) + set(KDE4_KLEO_LIBS kleo) set(KDE4_KMIME_LIBS kmime) + set(KDE4_KPGP_LIBS kpgp) set(KDE4_KPIMIDENTITIES_LIBS kpimidentities) set(KDE4_KPIMUTILS_LIBS kpimutils) set(KDE4_KRESOURCES_LIBS kresources) -- cgit v1.2.1 From ae82ad3c5e2515007f1911faa261efb78ce6ea82 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 1 Jul 2007 13:45:31 +0000 Subject: Fix typo svn path=/trunk/KDE/kdelibs/; revision=682053 --- modules/FindQCA2.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index de855511..02c78a78 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -45,13 +45,13 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) set(QCA2_FOUND TRUE) else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) if (NOT QCA2_INCLUDE_DIR) - message(STATUS "Could NOT find QCA2 includes in ${_Qca2IncDir}") + message(STATUS "Could NOT find QCA2 includes") endif (NOT QCA2_INCLUDE_DIR) if (NOT QCA2_LIBRARIES) - message(STATUS "Could NOT find QCA2 libraries in ${_Qca2LinkDir}") + message(STATUS "Could NOT find QCA2 libraries") endif (NOT QCA2_LIBRARIES) if (QCA2_FIND_REQUIRED) - message(SEND_ERROR "Could NOT find QCA2") + message(FATAL_ERROR "Could NOT find QCA2") endif (QCA2_FIND_REQUIRED) endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) -- cgit v1.2.1 From e11951d7740d0294ae896db89c18662bc43ac00b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 2 Jul 2007 08:11:20 +0000 Subject: It's not into kdepimlibs svn path=/trunk/KDE/kdelibs/; revision=682241 --- modules/FindKdepimLibs.cmake | 4 ---- 1 file changed, 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 7d0fd9f5..5c8b33d5 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -42,9 +42,6 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) - find_library(KDE4_KLEO_LIBRARY NAMES kleo PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KLEO_LIBS ${kleo_LIB_DEPENDS} ${KDE4_KLEO_LIBRARY} ) - find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) @@ -82,7 +79,6 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set(KDE4_KCAL_LIBS kcal) set(KDE4_KIMAP_LIBS kimap) set(KDE4_KLDAP_LIBS kldap) - set(KDE4_KLEO_LIBS kleo) set(KDE4_KMIME_LIBS kmime) set(KDE4_KPGP_LIBS kpgp) set(KDE4_KPIMIDENTITIES_LIBS kpimidentities) -- cgit v1.2.1 From 68cefa4fe6aa956ecb3d57b169d69ec9ddfe98ba Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 2 Jul 2007 12:43:52 +0000 Subject: Alex is right. Keep as "NOTFOUND" if not found svn path=/trunk/KDE/kdelibs/; revision=682335 --- modules/FindDNSSD.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index 3374c310..7acb82fc 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -42,8 +42,6 @@ if (DNSSD_FOUND) message(STATUS "Found DNSSD: ${DNSSD_LIBRARIES}") endif (NOT DNSSD_FIND_QUIETLY) else (DNSSD_FOUND) - set(DNSSD_INCLUDE_DIR "") # this is not good, leaving it on "NOTFOUND" is better, why was it changed ? Alex - set(DNSSD_LIBRARIES "") if (DNSSD_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find DNSSD") endif (DNSSD_FIND_REQUIRED) -- cgit v1.2.1 From 509b5e18f3ba6f4c5ccd27470f48f89d7ec2fc5e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 2 Jul 2007 12:44:24 +0000 Subject: Be silent if already found svn path=/trunk/KDE/kdelibs/; revision=682336 --- modules/FindPlasma.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index f256a453..b0f1b377 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -8,10 +8,10 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (PLASMA_INCLUDE_DIR) +if (PLASMA_INCLUDE_DIR AND PLASMA_LIBRARIES) # Already in cache, be silent - set(PLASMA_FOUND TRUE) -endif (PLASMA_INCLUDE_DIR) + set(Plasma_FIND_QUIETLY TRUE) +endif (PLASMA_INCLUDE_DIR AND PLASMA_LIBRARIES) find_path(PLASMA_INCLUDE_DIR NAMES plasma/kpanelapplet.h -- cgit v1.2.1 From b3c293e69d2e14c2fb22b8dbbf41861e24314e7b Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Tue, 3 Jul 2007 16:49:24 +0000 Subject: do not issue a FATAL_ERROR if the library was not found, and the module is not REQUIRED svn path=/trunk/KDE/kdelibs/; revision=682901 --- modules/FindKdcraw.cmake | 1 - modules/FindKexiv2.cmake | 1 - modules/FindKipi.cmake | 1 - 3 files changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index 371ff9c3..f49fddaa 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -53,7 +53,6 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) else(_KDCRAWLinkFlags) set(KDCRAW_VERSION_GOOD_FOUND FALSE) set(KDCRAW_FOUND FALSE) - message(FATAL_ERROR "Could NOT find libkdcraw library!") endif(_KDCRAWLinkFlags) ELSE(NOT WIN32) set(KDCRAW_VERSION_GOOD_FOUND TRUE) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index 8093fbd4..0d42a747 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -53,7 +53,6 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) else(_KEXIV2LinkFlags) set(KEXIV2_VERSION_GOOD_FOUND FALSE) set(KEXIV2_FOUND FALSE) - message(FATAL_ERROR "Could NOT find libkexiv2 library!") endif(_KEXIV2LinkFlags) else(NOT WIN32) set(KEXIV2_VERSION_GOOD_FOUND TRUE) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 9afbbcdd..44deca3c 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -54,7 +54,6 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) else(_KIPILinkFlags) set(KIPI_VERSION_GOOD_FOUND FALSE) set(KIPI_FOUND FALSE) - message(FATAL_ERROR "Could NOT find libkipi library!") endif(_KIPILinkFlags) else(NOT WIN32) set(KIPI_VERSION_GOOD_FOUND TRUE) -- cgit v1.2.1 From 588e081f8919c561170793d20b048db7f286dd7d Mon Sep 17 00:00:00 2001 From: Tom Albers Date: Tue, 3 Jul 2007 18:56:09 +0000 Subject: Fix compilation kdepim. library is renamed. svn path=/trunk/KDE/kdelibs/; revision=682961 --- modules/FindKdepimLibs.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 5c8b33d5..eb303974 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -45,7 +45,7 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) - find_library(KDE4_KPGP_LIBRARY NAMES kpgp PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + find_library(KDE4_KPGP_LIBRARY NAMES kpgp-gpl PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KPGP_LIBS ${kpgp_LIB_DEPENDS} ${KDE4_KPGP_LIBRARY} ) find_library(KDE4_KPIMIDENTITIES_LIBRARY NAMES kpimidentities PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) @@ -80,7 +80,7 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set(KDE4_KIMAP_LIBS kimap) set(KDE4_KLDAP_LIBS kldap) set(KDE4_KMIME_LIBS kmime) - set(KDE4_KPGP_LIBS kpgp) + set(KDE4_KPGP_LIBS kpgp-gpl) set(KDE4_KPIMIDENTITIES_LIBS kpimidentities) set(KDE4_KPIMUTILS_LIBS kpimutils) set(KDE4_KRESOURCES_LIBS kresources) -- cgit v1.2.1 From 9dcedc87a745df564bee5ffddeba7071dc6bc884 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 4 Jul 2007 11:03:11 +0000 Subject: - make automoc implicit (no kde4_automoc needed in CMakeLists.txt anymore, the macro now expands to nothing) - delay the automoc to make time - add KDE4_MOC_HEADERS macro that you can use to create moc_foo.cpp files that get compiled into the target, without you having to include the moc file in the .cpp file - automoc finds Q_OBJECT macros in .cpp files creates the .moc file from the .cpp file then - automoc allows both .moc and moc_foo.cpp style includes for qmake compatibility svn path=/trunk/KDE/kdelibs/; revision=683192 --- modules/KDE4Macros.cmake | 193 ++++++++++++++++++++++++++-------------------- modules/kde4automoc.cmake | 145 +++++++++++++++++----------------- 2 files changed, 185 insertions(+), 153 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0109459e..3da9c5a1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -5,6 +5,11 @@ # KDE4_ADD_UI3_FILES # KDE4_ADD_KCFG_FILES # KDE4_AUTOMOC +# KDE4_SET_CUSTOM_TARGET_PROPERTY +# KDE4_GET_CUSTOM_TARGET_PROPERTY +# KDE4_MOC_HEADERS +# KDE4_APPEND_MOC_FILES +# KDE4_HANDLE_AUTOMOC # KDE4_INSTALL_LIBTOOL_FILE # KDE4_CREATE_FINAL_FILES # KDE4_ADD_KDEINIT_EXECUTABLE @@ -24,6 +29,7 @@ # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, +# Copyright (c) 2007 Matthias Kretz # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -147,76 +153,91 @@ macro (KDE4_ADD_UI3_FILES _sources ) endforeach (_current_FILE) endmacro (KDE4_ADD_UI3_FILES) - +# keep it here until it is removed everywhere macro (KDE4_AUTOMOC) - qt4_get_moc_inc_dirs(_moc_INCS) - - # iterate over all files - foreach (_current_FILE ${ARGN}) - - get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE) - # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # here. this is required to make bouic work correctly: - # we need to add generated .cpp files to the sources (to compile them), - # but we cannot let automoc handle them, as the .cpp files don't exist yet when - # cmake is run for the very first time on them -> however the .cpp files might - # exist at a later run. at that time we need to skip them, so that we don't add two - # different rules for the same moc file - get_source_file_property(_skip ${_abs_FILE} SKIP_AUTOMOC) - - # if the file exists and should not be skipped read it completely into memory - # and grep for all include lines - # for each found moc file generate a custom_target and collect - # the generated moc files in a list which will be set as a source files property - # and later be queried in kde4_add_library/executable/plugin() - if (EXISTS ${_abs_FILE} AND NOT _skip) - set(_moc_FILES_PROPERTY) - - file(READ ${_abs_FILE} _contents) - get_filename_component(_abs_PATH ${_abs_FILE} PATH) - - string(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - if (_match) - foreach (_current_MOC_INC ${_match}) - string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - get_filename_component(_basename ${_current_MOC} NAME_WE) - set(_header ${_abs_PATH}/${_basename}.h) - set(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - - if (NOT EXISTS ${_abs_PATH}/${_basename}.h) - message(FATAL_ERROR "In the file \"${_abs_FILE}\" the moc file \"${_current_MOC}\" is included, but \"${_abs_PATH}/${_basename}.h\" doesn't exist.") - endif (NOT EXISTS ${_abs_PATH}/${_basename}.h) - - add_custom_command(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_moc_INCS} ${_header} -o ${_moc} - MAIN_DEPENDENCY ${_header} - ) - - list(APPEND _moc_FILES_PROPERTY ${_moc}) - - endforeach (_current_MOC_INC) - endif (_match) - - set_source_files_properties(${_abs_FILE} PROPERTIES AUTOMOC_FILES "${_moc_FILES_PROPERTY}") - endif (EXISTS ${_abs_FILE} AND NOT _skip) - endforeach (_current_FILE) endmacro (KDE4_AUTOMOC) +macro (KDE4_SET_CUSTOM_TARGET_PROPERTY _target_name _property_name _property) + string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") + set(_kde4_${_dir}_${_target_name}_${_property_name} "${_property}") +endmacro (KDE4_SET_CUSTOM_TARGET_PROPERTY) -macro(KDE4_GET_AUTOMOC_FILES _list) - set(${_list}) +macro (KDE4_GET_CUSTOM_TARGET_PROPERTY _var _target_name _property_name) + string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") + set(${_var} "${_kde4_${_dir}_${_target_name}_${_property_name}}") +endmacro (KDE4_GET_CUSTOM_TARGET_PROPERTY) + +macro (KDE4_MOC_HEADERS _target_NAME) + set (_headers_to_moc) foreach (_current_FILE ${ARGN}) - set(_automoc_FILES_PROPERTY) - get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE) - get_source_file_property(_automoc_FILES_PROPERTY ${_abs_FILE} AUTOMOC_FILES) - if (_automoc_FILES_PROPERTY) - foreach (_current_MOC_FILE ${_automoc_FILES_PROPERTY}) - list(APPEND ${_list} ${_current_MOC_FILE}) - endforeach (_current_MOC_FILE) - endif (_automoc_FILES_PROPERTY) + get_filename_component(_suffix "${_current_FILE}" EXT) + if (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + set (_headers_to_moc ${_headers_to_moc} ${_current_FILE}) + else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + message(STATUS "KDE4_MOC_HEADERS: ignoring non-header file ${_current_FILE}") + endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") endforeach (_current_FILE) -endmacro(KDE4_GET_AUTOMOC_FILES) + # need to create moc_.cpp file using kde4automoc.cmake + # and add it to the target + if(_headers_to_moc) + KDE4_SET_CUSTOM_TARGET_PROPERTY(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") + endif(_headers_to_moc) +endmacro (KDE4_MOC_HEADERS) + +macro(KDE4_APPEND_MOC_FILES _target_name _SRCS) + KDE4_GET_CUSTOM_TARGET_PROPERTY(_headers_to_moc ${_target_name} AUTOMOC_HEADERS) + if(NOT _headers_to_moc STREQUAL "NOTFOUND") + qt4_get_moc_inc_dirs(_moc_INCS) + foreach (_current_FILE ${_headers_to_moc}) + get_filename_component(_basename "${_current_FILE}" NAME_WE) + set(_moc "${CMAKE_CURRENT_BINARY_DIR}/moc_${_basename}.cpp") + set_source_files_properties(${_moc} PROPERTIES GENERATED TRUE) + set(${_SRCS} ${${_SRCS}} ${_moc}) + add_custom_command(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ${_moc_INCS} ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -o ${_moc} + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) + endforeach (_current_FILE) + endif(NOT _headers_to_moc STREQUAL "NOTFOUND") +endmacro(KDE4_APPEND_MOC_FILES) + +macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) + set(_mark_file "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}.automoc") + set(_moc_files) + set(_moc_headers) + foreach (_current_FILE ${${_SRCS}}) + get_filename_component(_abs_current_FILE "${_current_FILE}" ABSOLUTE) + get_source_file_property(_skip "${_abs_current_FILE}" SKIP_AUTOMOC) + get_source_file_property(_generated "${_abs_current_FILE}" GENERATED) + + if(NOT _generated AND NOT _skip) + get_filename_component(_basename "${_current_FILE}" NAME_WE) + get_filename_component(_abs_path "${_abs_current_FILE}" PATH) + set(_header "${_abs_path}/${_basename}.h") + if(EXISTS "${_header}") + set(_moc_headers ${_moc_headers} ${_header}) + endif(EXISTS "${_header}") + #macro_additional_clean_files("${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc") + #macro_additional_clean_files("${CMAKE_CURRENT_BINARY_DIR}/moc_${_basename}.cpp") + set(_moc_files "${_moc_files}\;${_abs_current_FILE}") + endif(NOT _generated AND NOT _skip) + endforeach (_current_FILE) + + set(_moc_incs) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + FOREACH(_current ${_inc_DIRS}) + SET(_moc_incs "${_moc_incs}\;-I\;${_current}") + ENDFOREACH(_current) + add_custom_command(OUTPUT ${_mark_file} + COMMAND ${CMAKE_COMMAND} + -DKDE4_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} + -DQT_MOC_EXECUTABLE=${QT_MOC_EXECUTABLE} + -DQT_MOC_INCS="${_moc_incs}" + -DMOC_FILES="${_moc_files}" + -DMARK_FILE="${_mark_file}" + -P ${KDE4_MODULE_DIR}/kde4automoc.cmake + DEPENDS ${${_SRCS}} ${_moc_headers} + ) + set(${_SRCS} ${${_SRCS}} ${_mark_file}) +endmacro(KDE4_HANDLE_AUTOMOC) macro(KDE4_CREATE_PO_FILES) set(_list_gmo) @@ -633,13 +654,14 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) set(_first_SRC ${_with_PREFIX}) endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") - kde4_get_automoc_files(_automoc_FILES ${_first_SRC} ${ARGN}) - + set(_SRCS ${_first_SRC} ${ARGN}) + kde4_append_moc_files(${_target_NAME} _SRCS) + kde4_handle_automoc(${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_first_SRC} ${ARGN}) - add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) + add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) - add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN} ${_automoc_FILES}) + add_library(${_target_NAME} MODULE ${_SRCS}) endif (KDE4_ENABLE_FINAL) if (_first_SRC) @@ -720,14 +742,15 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library - kde4_get_automoc_files(_automoc_FILES ${_SRCS}) + kde4_append_moc_files(${_target_NAME} _SRCS) + kde4_handle_automoc(kdeinit_${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) + add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) - add_library(kdeinit_${_target_NAME} SHARED ${_SRCS} ${_automoc_FILES}) + add_library(kdeinit_${_target_NAME} SHARED ${_SRCS}) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) @@ -780,9 +803,10 @@ macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) - kde4_get_automoc_files(_automoc_FILES ${ARGN}) - - add_executable(${_target_NAME} ${_add_executable_param} ${ARGN} ${_automoc_FILES}) + set(_SRCS ${ARGN}) + kde4_append_moc_files(${_target_NAME} _SRCS) + kde4_handle_automoc(${_target_NAME} _SRCS) + add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"" @@ -823,13 +847,13 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set(_type "RUN_UNINSTALLED") endif (_uninst) - kde4_get_automoc_files(_automoc_FILES ${_SRCS}) - + kde4_append_moc_files(${_target_NAME} _SRCS) + kde4_handle_automoc(${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) - add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) + add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) - add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS} ${_automoc_FILES}) + add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) @@ -860,13 +884,14 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set(_add_lib_param MODULE) endif (${_lib_TYPE} STREQUAL "MODULE") - kde4_get_automoc_files(_automoc_FILES ${_first_SRC} ${ARGN}) - + set(_SRCS ${_first_SRC} ${ARGN}) + kde4_append_moc_files(${_target_NAME} _SRCS) + kde4_handle_automoc(${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_first_SRC} ${ARGN}) - add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files} ${_automoc_FILES}) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) + add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) - add_library(${_target_NAME} ${_add_lib_param} ${_first_SRC} ${ARGN} ${_automoc_FILES}) + add_library(${_target_NAME} ${_add_lib_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) kde4_handle_rpath_for_library(${_target_NAME}) diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake index 0b37f54d..35da4496 100644 --- a/modules/kde4automoc.cmake +++ b/modules/kde4automoc.cmake @@ -1,76 +1,83 @@ # do the automoc handling # Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007, Matthias Kretz, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -include(${KDE4_AUTOMOC_FILE}) - -macro(PARSE_ONE_FILE _filename _moc_mark_FILE) - if ("${_filename}" IS_NEWER_THAN "${_moc_mark_FILE}") - file(WRITE "${_moc_mark_FILE}" "#file is autogenerated, do not edit\n") - - file(READ "${_filename}" _contents) - - get_filename_component(_abs_PATH "${_filename}" PATH) - message(STATUS "Automoc: Parsing ${_filename}") - - set(_mocs_PER_FILE) - - string(REGEX MATCHALL "#include +([\"<]moc_[^ ]+\\.cpp|[^ ]+\\.moc)[\">]" _match "${_contents}") - if (_match) - foreach (_current_MOC_INC ${_match}) - string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - if(_current_MOC) - get_filename_component(_basename ${_current_MOC} NAME_WE) - else(_current_MOC) - string(REGEX MATCH "moc_[^ <\"]+\\.cpp" _current_MOC "${_current_MOC_INC}") - get_filename_component(_basename ${_current_MOC} NAME_WE) - string(REPLACE "moc_" "" _basename "${_basename}") - endif(_current_MOC) - - set(_header ${_abs_PATH}/${_basename}.h) - set(_moc ${KDE4_CURRENT_BINARY_DIR}/${_current_MOC}) - - if (NOT EXISTS ${_header}) - message(FATAL_ERROR "In the file \"${_filename}\" the moc file \"${_current_MOC}\" is included, but \"${_header}\" doesn't exist.") - endif (NOT EXISTS ${_header}) - - list(APPEND _mocs_PER_FILE ${_basename}) - file(APPEND ${_moc_mark_FILE} "set( ${_basename}_MOC ${_moc})\n") - file(APPEND ${_moc_mark_FILE} "set( ${_basename}_HEADER ${_header})\n") - endforeach (_current_MOC_INC) - endif (_match) - file(APPEND ${_moc_mark_FILE} "set(mocs ${_mocs_PER_FILE})\n") - endif ("${_filename}" IS_NEWER_THAN "${_moc_mark_FILE}") - -endmacro(PARSE_ONE_FILE) - -foreach( _current_FILE ${MOC_FILES}) -# message(STATUS "Automoc: Checking ${_current_FILE}...") - - get_filename_component(_basename ${_current_FILE} NAME) - set(_moc_mark_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_automoc.mark) - - if(EXISTS ${_moc_mark_FILE}) - set(_force_MOC FALSE) - else(EXISTS ${_moc_mark_FILE}) - set(_force_MOC TRUE) - endif(EXISTS ${_moc_mark_FILE}) - - parse_one_file(${_current_FILE} ${_moc_mark_FILE}) - - include(${_moc_mark_FILE}) - - foreach(_current_MOC ${mocs}) - if ("${${_current_MOC}_HEADER}" IS_NEWER_THAN "${${_current_MOC}_MOC}" OR _force_MOC) - message(STATUS "Automoc: Generating ${${_current_MOC}_MOC} from ${${_current_MOC}_HEADER}") - execute_process(COMMAND ${QT_MOC_EXECUTABLE} ${QT_MOC_INCS} ${${_current_MOC}_HEADER} -o ${${_current_MOC}_MOC}) - - endif ("${${_current_MOC}_HEADER}" IS_NEWER_THAN "${${_current_MOC}_MOC}" OR _force_MOC) - endforeach(_current_MOC) - - -endforeach( _current_FILE) - +macro (generate_moc _moc_source _current_MOC) + set(_moc ${KDE4_CURRENT_BINARY_DIR}/${_current_MOC}) + + if ("${_moc_source}" IS_NEWER_THAN "${_moc}" OR _force_moc) + message(STATUS "Automoc: Generating ${_moc} from ${_moc_source}") + execute_process(COMMAND ${QT_MOC_EXECUTABLE} ${QT_MOC_INCS} "${_moc_source}" -o "${_moc}") + endif ("${_moc_source}" IS_NEWER_THAN "${_moc}" OR _force_moc) +endmacro (generate_moc) + +STRING(REPLACE "\\ " " " MARK_FILE "${MARK_FILE}") +STRING(REPLACE "\\ " " " MOC_FILES "${MOC_FILES}") +STRING(REPLACE "\\ " " " QT_MOC_INCS "${QT_MOC_INCS}") +if (EXISTS "${MARK_FILE}") + set(_force_moc FALSE) +else (EXISTS "${MARK_FILE}") + set(_force_moc TRUE) +endif (EXISTS "${MARK_FILE}") +foreach(_filename ${MOC_FILES}) + get_filename_component(_name "${_filename}" NAME) + + get_filename_component(_abs_PATH "${_filename}" PATH) + get_filename_component(_basename "${_filename}" NAME_WE) + set(_moc_source ${_abs_PATH}/${_basename}.h) + if ("${_filename}" IS_NEWER_THAN "${MARK_FILE}" OR "${_moc_source}" IS_NEWER_THAN "${MARK_FILE}") + get_filename_component(_suffix "${_filename}" EXT) + if (".cpp" STREQUAL "${_suffix}" OR ".cc" STREQUAL "${_suffix}" OR ".cxx" STREQUAL "${_suffix}" OR ".C" STREQUAL "${_suffix}") + #message(STATUS "Automoc: Looking for outdated moc includes in ${_filename}") + + # read the whole file + file(READ ${_filename} _contents) + + string(REGEX MATCHALL "#include +([\"<]moc_[^ ]+\\.cpp|[^ ]+\\.moc)[\">]" _match "${_contents}") + if (_match) + foreach (_current_MOC_INC ${_match}) + string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + if(_current_MOC) + get_filename_component(_basename ${_current_MOC} NAME_WE) + + # if the .cpp file contains the Q_OBJECT macro we create the .moc file from the .cpp file + if (_contents MATCHES "[\n\r][\t ]*Q_OBJECT") + set(_moc_source ${_filename}) + else (_contents MATCHES "[\n\r][\t ]*Q_OBJECT") + set(_moc_source ${_abs_PATH}/${_basename}.h) + endif (_contents MATCHES "[\n\r][\t ]*Q_OBJECT") + else(_current_MOC) + string(REGEX MATCH "moc_[^ <\"]+\\.cpp" _current_MOC "${_current_MOC_INC}") + get_filename_component(_basename ${_current_MOC} NAME_WE) + string(REPLACE "moc_" "" _basename "${_basename}") + + # always create moc_foo.cpp from the .h + set(_moc_source ${_abs_PATH}/${_basename}.h) + endif(_current_MOC) + + if (NOT EXISTS ${_moc_source}) + message(FATAL_ERROR "In the file \"${_filename}\" the moc file \"${_current_MOC}\" is included, but \"${_moc_source}\" doesn't exist.") + endif (NOT EXISTS ${_moc_source}) + + generate_moc(${_moc_source} ${_current_MOC}) + endforeach (_current_MOC_INC) + endif (_match) + else (".cpp" STREQUAL "${_suffix}" OR ".cc" STREQUAL "${_suffix}" OR ".cxx" STREQUAL "${_suffix}" OR ".C" STREQUAL "${_suffix}") + if (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + get_filename_component(_basename ${_filename} NAME_WE) + set(_current_MOC "moc_${_basename}.cpp") + generate_moc(${_filename} ${_current_MOC}) + else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + message(STATUS "Automoc: ignoring file '${_filename}' with unknown suffix '${_suffix}'") + endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + endif (".cpp" STREQUAL "${_suffix}" OR ".cc" STREQUAL "${_suffix}" OR ".cxx" STREQUAL "${_suffix}" OR ".C" STREQUAL "${_suffix}") + endif ("${_filename}" IS_NEWER_THAN "${MARK_FILE}" OR "${_moc_source}" IS_NEWER_THAN "${MARK_FILE}") +endforeach(_filename) + +# touch .mark file +#message(STATUS "touch ${MARK_FILE}") +file(WRITE "${MARK_FILE}" "") -- cgit v1.2.1 From a8f664a620e803403f45d3197749286dacbfe522 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 4 Jul 2007 19:08:11 +0000 Subject: only be verbose when VERBOSE is set svn path=/trunk/KDE/kdelibs/; revision=683467 --- modules/kde4automoc.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake index 35da4496..d57f760d 100644 --- a/modules/kde4automoc.cmake +++ b/modules/kde4automoc.cmake @@ -10,7 +10,11 @@ macro (generate_moc _moc_source _current_MOC) set(_moc ${KDE4_CURRENT_BINARY_DIR}/${_current_MOC}) if ("${_moc_source}" IS_NEWER_THAN "${_moc}" OR _force_moc) - message(STATUS "Automoc: Generating ${_moc} from ${_moc_source}") + if($ENV{VERBOSE}) + message(STATUS "Automoc: Generating ${_moc} from ${_moc_source}") + else($ENV{VERBOSE}) + message(STATUS "Generating ${_current_MOC}") + endif($ENV{VERBOSE}) execute_process(COMMAND ${QT_MOC_EXECUTABLE} ${QT_MOC_INCS} "${_moc_source}" -o "${_moc}") endif ("${_moc_source}" IS_NEWER_THAN "${_moc}" OR _force_moc) endmacro (generate_moc) -- cgit v1.2.1 From 238e053ff4d6073e8cbe847bb8a4fed9bedd2505 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Thu, 5 Jul 2007 09:58:38 +0000 Subject: show message only in verbose mode svn path=/trunk/KDE/kdelibs/; revision=683791 --- modules/kde4automoc.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake index d57f760d..718a47a4 100644 --- a/modules/kde4automoc.cmake +++ b/modules/kde4automoc.cmake @@ -76,7 +76,9 @@ foreach(_filename ${MOC_FILES}) set(_current_MOC "moc_${_basename}.cpp") generate_moc(${_filename} ${_current_MOC}) else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - message(STATUS "Automoc: ignoring file '${_filename}' with unknown suffix '${_suffix}'") + if($ENV{VERBOSE}) + message(STATUS "Automoc: ignoring file '${_filename}' with unknown suffix '${_suffix}'") + endif($ENV{VERBOSE}) endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") endif (".cpp" STREQUAL "${_suffix}" OR ".cc" STREQUAL "${_suffix}" OR ".cxx" STREQUAL "${_suffix}" OR ".C" STREQUAL "${_suffix}") endif ("${_filename}" IS_NEWER_THAN "${MARK_FILE}" OR "${_moc_source}" IS_NEWER_THAN "${MARK_FILE}") -- cgit v1.2.1 From af879635f5ae90b2cf8f70b29c1591e3b1a1d3d0 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 5 Jul 2007 12:11:55 +0000 Subject: win32 fix: added non default search location using cmake option -DKDEPIMLIBS_DIR= svn path=/trunk/KDE/kdelibs/; revision=683875 --- modules/FindKdepimLibs.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index eb303974..4fd9833b 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -12,9 +12,14 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. if (WIN32) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${_progFiles}/kdepimlibs/include) - set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${_progFiles}/kdepimlibs/lib) + if (KDEPIMLIBS_DIR) + set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${KDEPIMLIBS_DIR}/include) + set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${KDEPIMLIBS_DIR}/lib) + else (KDEPIMLIBS_DIR) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) + set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${_progFiles}/kdepimlibs/include) + set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${_progFiles}/kdepimlibs/lib) + endif (KDEPIMLIBS_DIR) endif (WIN32) find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal_export.h -- cgit v1.2.1 From ce182ad897473c2661139855e52ba0df9508b4bc Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 6 Jul 2007 13:18:36 +0000 Subject: Better to test on plasma.h, kpanelapplet.h is into kicker svn path=/trunk/KDE/kdelibs/; revision=684281 --- modules/FindPlasma.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index b0f1b377..8aa0d1c9 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -14,7 +14,7 @@ if (PLASMA_INCLUDE_DIR AND PLASMA_LIBRARIES) endif (PLASMA_INCLUDE_DIR AND PLASMA_LIBRARIES) -find_path(PLASMA_INCLUDE_DIR NAMES plasma/kpanelapplet.h +find_path(PLASMA_INCLUDE_DIR NAMES plasma/plasma.h PATHS ${INCLUDE_INSTALL_DIR} ) -- cgit v1.2.1 From 4acbf04eb4cfbe4e5ea006c50984b1bb93ab201d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 6 Jul 2007 17:05:13 +0000 Subject: Don't "FATAL" when package is not required svn path=/trunk/KDE/kdelibs/; revision=684463 --- modules/FindKdepimLibs.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 4fd9833b..5cb601be 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -100,7 +100,6 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) else( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND FALSE) - message(FATAL_ERROR "Could NOT find a kdepimlibs installation in ${KDE4_INCLUDE_DIR}.\nPlease build and install kdepimlibs first.") endif( KDEPIMLIBS_INCLUDE_DIR ) if (KDEPIMLIBS_FOUND) @@ -109,7 +108,7 @@ if (KDEPIMLIBS_FOUND) endif (NOT KdepimLibs_FIND_QUIETLY) else (KDEPIMLIBS_FOUND) if (KdepimLibs_FIND_REQUIRED) - message(FATAL_ERROR "Could not find KDE PIM libraries") + message(FATAL_ERROR "Could NOT find a kdepimlibs installation in ${KDE4_INCLUDE_DIR}.\nPlease build and install kdepimlibs first.") endif (KdepimLibs_FIND_REQUIRED) endif (KDEPIMLIBS_FOUND) -- cgit v1.2.1 From 99a811f5090cb4aeba9214ebc04181bc8d641868 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 6 Jul 2007 22:47:32 +0000 Subject: It's necessary to several package (I will remove it into extragear next monday) svn path=/trunk/KDE/kdelibs/; revision=684567 --- modules/FindIW.cmake | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 modules/FindIW.cmake (limited to 'modules') diff --git a/modules/FindIW.cmake b/modules/FindIW.cmake new file mode 100644 index 00000000..68245216 --- /dev/null +++ b/modules/FindIW.cmake @@ -0,0 +1,46 @@ +# - Try to find wireless extensions support libraries +# Once done this will define +# +# IW_FOUND - system has IW +# IW_INCLUDE_DIR - the IW include directory +# IW_LIBRARIES - Link to these to use IW + +# Copyright (c) 2006, Thorsten Roeder, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (IW_INCLUDE_DIR) + # Already in cache, be silent + set(IW_FIND_QUIETLY TRUE) +endif (IW_INCLUDE_DIR) + +FIND_PATH(IW_INCLUDE_DIR iwlib.h + /usr/include + /usr/local/include +) + +FIND_LIBRARY(IW_LIBRARIES NAMES iw + PATHS + /usr/lib + /usr/local/lib +) + +IF(IW_INCLUDE_DIR AND IW_LIBRARIES) + SET(IW_FOUND TRUE) +ENDIF(IW_INCLUDE_DIR AND IW_LIBRARIES) + +IF(IW_FOUND) + IF(NOT IW_FIND_QUIETLY) + MESSAGE(STATUS "Found IW: ${IW_LIBRARIES}") + ENDIF(NOT IW_FIND_QUIETLY) +ELSE(IW_FOUND) + IF(IW_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find IW") + ENDIF(IW_FIND_REQUIRED) +ENDIF(IW_FOUND) + +# show the IW_INCLUDE_DIR and IW_LIBRARIES variables only in the advanced view +MARK_AS_ADVANCED(IW_INCLUDE_DIR IW_LIBRARIES ) + -- cgit v1.2.1 From 4efc2419089cbfe109840b14440b1572943a3a6c Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 7 Jul 2007 10:48:14 +0000 Subject: Dependancies was not correct. We didn't add all dependancy for all libraries. (Same for Win32 it was not correct because we didn't all depend) Now we generate file KDEPimLibsDependancy.cmake into kdepimlibs svn path=/trunk/KDE/kdelibs/; revision=684835 --- modules/FindKdepimLibs.cmake | 86 ++++++++++++++++++-------------------------- 1 file changed, 35 insertions(+), 51 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 5cb601be..a53b359c 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -28,73 +28,57 @@ find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal_export.h if( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND TRUE) - if (WIN32) - find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgmepp PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) - find_library(KDE4_KABC_LIBRARY NAMES kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KABC_LIBS ${kabc_LIB_DEPENDS} ${KDE4_KABC_LIBRARY} ) + # this file contains all dependencies of all libraries of kdepimlibs, Alex + include(${kde_cmake_module_dir}/KDEPimLibsDependencies.cmake) + + find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgmepp PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) - find_library(KDE4_KBLOG_LIBRARY NAMES kblog PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KBLOG_LIBS ${kblog_LIB_DEPENDS} ${KDE4_KBLOG_LIBRARY} ) + find_library(KDE4_KABC_LIBRARY NAMES kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KABC_LIBS ${kabc_LIB_DEPENDS} ${KDE4_KABC_LIBRARY} ) - find_library(KDE4_KCAL_LIBRARY NAMES kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KCAL_LIBS ${kcal_LIB_DEPENDS} ${KDE4_KCAL_LIBRARY} ) + find_library(KDE4_KBLOG_LIBRARY NAMES kblog PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KBLOG_LIBS ${kblog_LIB_DEPENDS} ${KDE4_KBLOG_LIBRARY} ) - find_library(KDE4_KIMAP_LIBRARY NAMES kimap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KIMAP_LIBS ${kimap_LIB_DEPENDS} ${KDE4_KIMAP_LIBRARY} ) + find_library(KDE4_KCAL_LIBRARY NAMES kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KCAL_LIBS ${kcal_LIB_DEPENDS} ${KDE4_KCAL_LIBRARY} ) - find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) + find_library(KDE4_KIMAP_LIBRARY NAMES kimap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KIMAP_LIBS ${kimap_LIB_DEPENDS} ${KDE4_KIMAP_LIBRARY} ) - find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) + find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) - find_library(KDE4_KPGP_LIBRARY NAMES kpgp-gpl PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPGP_LIBS ${kpgp_LIB_DEPENDS} ${KDE4_KPGP_LIBRARY} ) + find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) - find_library(KDE4_KPIMIDENTITIES_LIBRARY NAMES kpimidentities PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPIMIDENTITIES_LIBS ${kpimidentities_LIB_DEPENDS} ${KDE4_KPIMIDENTITIES_LIBRARY} ) + find_library(KDE4_KPGP_LIBRARY NAMES kpgp-gpl PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPGP_LIBS ${kpgp_LIB_DEPENDS} ${KDE4_KPGP_LIBRARY} ) - find_library(KDE4_KPIMUTILS_LIBRARY NAMES kpimutils PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPIMUTILS_LIBS ${kpimutils_LIB_DEPENDS} ${KDE4_KPIMUTILS_LIBRARY} ) + find_library(KDE4_KPIMIDENTITIES_LIBRARY NAMES kpimidentities PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPIMIDENTITIES_LIBS ${kpimidentities_LIB_DEPENDS} ${KDE4_KPIMIDENTITIES_LIBRARY} ) - find_library(KDE4_KRESOURCES_LIBRARY NAMES kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KRESOURCES_LIBS ${kresources_LIB_DEPENDS} ${KDE4_KRESOURCES_LIBRARY} ) + find_library(KDE4_KPIMUTILS_LIBRARY NAMES kpimutils PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPIMUTILS_LIBS ${kpimutils_LIB_DEPENDS} ${KDE4_KPIMUTILS_LIBRARY} ) - find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) + find_library(KDE4_KRESOURCES_LIBRARY NAMES kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KRESOURCES_LIBS ${kresources_LIB_DEPENDS} ${KDE4_KRESOURCES_LIBRARY} ) - find_library(KDE4_KXMLRPCCLIENT_LIBRARY NAMES kxmlrpcclient PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KXMLRPCCLIENT_LIBS ${kxmlrpcclient_LIB_DEPENDS} ${KDE4_KXMLRPCCLIENT_LIBRARY} ) + find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) - find_library(KDE4_MAILTRANSPORT_LIBRARY NAMES mailtransport PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_MAILTRANSPORT_LIBS ${mailtransport_LIB_DEPENDS} ${KDE4_MAILTRANSPORT_LIBRARY} ) + find_library(KDE4_KXMLRPCCLIENT_LIBRARY NAMES kxmlrpcclient PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KXMLRPCCLIENT_LIBS ${kxmlrpcclient_LIB_DEPENDS} ${KDE4_KXMLRPCCLIENT_LIBRARY} ) - find_library(KDE4_QGPGME_LIBRARY NAMES qgpgme PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_QGPGME_LIBS ${qgpgme_LIB_DEPENDS} ${KDE4_QGPGME_LIBRARY} ) + find_library(KDE4_MAILTRANSPORT_LIBRARY NAMES mailtransport PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_MAILTRANSPORT_LIBS ${mailtransport_LIB_DEPENDS} ${KDE4_MAILTRANSPORT_LIBRARY} ) - find_library(KDE4_SYNDICATION_LIBRARY NAMES syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_SYNDICATION_LIBS ${syndication_LIB_DEPENDS} ${KDE4_SYNDICATION_LIBRARY} ) + find_library(KDE4_QGPGME_LIBRARY NAMES qgpgme PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_QGPGME_LIBS ${qgpgme_LIB_DEPENDS} ${KDE4_QGPGME_LIBRARY} ) - else (WIN32) - set(KDE4_GPGMEPP_LIBS gpgmepp) - set(KDE4_KABC_LIBS kabc) - set(KDE4_KBLOG_LIBS kblog) - set(KDE4_KCAL_LIBS kcal) - set(KDE4_KIMAP_LIBS kimap) - set(KDE4_KLDAP_LIBS kldap) - set(KDE4_KMIME_LIBS kmime) - set(KDE4_KPGP_LIBS kpgp-gpl) - set(KDE4_KPIMIDENTITIES_LIBS kpimidentities) - set(KDE4_KPIMUTILS_LIBS kpimutils) - set(KDE4_KRESOURCES_LIBS kresources) - set(KDE4_KTNEF_LIBS ktnef) - set(KDE4_KXMLRPCCLIENT kxmlrpcclient) - set(KDE4_MAILTRANSPORT_LIBS mailtransport) - set(KDE4_SYNDICATION_LIBS syndication) - set(KDE4_QGPGME_LIBS qgpgme) - endif(WIN32) + find_library(KDE4_SYNDICATION_LIBRARY NAMES syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_SYNDICATION_LIBS ${syndication_LIB_DEPENDS} ${KDE4_SYNDICATION_LIBRARY} ) # setup global used KDE include set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) -- cgit v1.2.1 From 981ac12911d0d14ca6c3cc23901c2585f2bd6bdb Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 7 Jul 2007 14:17:35 +0000 Subject: Move the kpgp library back to kdepim from kdepimlibs. svn path=/trunk/KDE/kdelibs/; revision=684900 --- modules/FindKdepimLibs.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index a53b359c..96b78c86 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -53,9 +53,6 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) - find_library(KDE4_KPGP_LIBRARY NAMES kpgp-gpl PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPGP_LIBS ${kpgp_LIB_DEPENDS} ${KDE4_KPGP_LIBRARY} ) - find_library(KDE4_KPIMIDENTITIES_LIBRARY NAMES kpimidentities PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KPIMIDENTITIES_LIBS ${kpimidentities_LIB_DEPENDS} ${KDE4_KPIMIDENTITIES_LIBRARY} ) -- cgit v1.2.1 From 464f385103f648ec73dadeb6e92857ff47f1ef8f Mon Sep 17 00:00:00 2001 From: Frank Osterfeld Date: Mon, 9 Jul 2007 14:57:58 +0000 Subject: build with mingw svn path=/trunk/KDE/kdelibs/; revision=685707 --- modules/FindQt4.cmake | 2403 ++++++++++++++++++++++++------------------------- 1 file changed, 1201 insertions(+), 1202 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e453398b..bf4b41c3 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1,1202 +1,1201 @@ -# - Find QT 4 -# This module can be used to find Qt4. -# The most important issue is that the Qt4 qmake is available via the system path. -# This qmake is then used to detect basically everything else. -# This module defines a number of key variables and macros. First is -# QT_USE_FILE which is the path to a CMake file that can be included to compile -# Qt 4 applications and libraries. By default, the QtCore and QtGui -# libraries are loaded. This behavior can be changed by setting one or more -# of the following variables to true: -# QT_DONT_USE_QTCORE -# QT_DONT_USE_QTGUI -# QT_USE_QT3SUPPORT -# QT_USE_QTASSISTANT -# QT_USE_QTDESIGNER -# QT_USE_QTMOTIF -# QT_USE_QTMAIN -# QT_USE_QTNETWORK -# QT_USE_QTNSPLUGIN -# QT_USE_QTOPENGL -# QT_USE_QTSQL -# QT_USE_QTXML -# QT_USE_QTSVG -# QT_USE_QTTEST -# QT_USE_QTUITOOLS -# QT_USE_QTDBUS -# -# All the libraries required are stored in a variable called QT_LIBRARIES. -# Add this variable to your TARGET_LINK_LIBRARIES. -# -# macro QT4_WRAP_CPP(outfiles inputfile ... ) -# macro QT4_WRAP_UI(outfiles inputfile ... ) -# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) -# macro QT4_AUTOMOC(inputfile ... ) -# macro QT4_GENERATE_MOC(inputfile outputfile ) -# -# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) -# create a the interface header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) -# create the interface header and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) -# create a the interface without namespace header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) -# create the interface header without namespace and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) -# create a dbus adaptor (header and implementation file) from the xml file -# describing the interface, and add it to the list of sources. The adaptor -# forwards the calls to a parent class, defined in parentheader and named -# parentclassname. The name of the generated files will be -# adaptor.{cpp,h} where basename is the basename of the xml file. -# -# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) -# generate the xml interface file from the given header. -# If the optional argument interfacename is omitted, the name of the -# interface file is constructed from the basename of the header with -# the suffix .xml appended. -# -# QT_FOUND If false, don't try to use Qt. -# QT4_FOUND If false, don't try to use Qt 4. -# -# QT_QTCORE_FOUND True if QtCore was found. -# QT_QTGUI_FOUND True if QtGui was found. -# QT_QT3SUPPORT_FOUND True if Qt3Support was found. -# QT_QTASSISTANT_FOUND True if QtAssistant was found. -# QT_QTDBUS_FOUND True if QtDBus was found. -# QT_QTDESIGNER_FOUND True if QtDesigner was found. -# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. -# QT_QTMOTIF_FOUND True if QtMotif was found. -# QT_QTNETWORK_FOUND True if QtNetwork was found. -# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. -# QT_QTOPENGL_FOUND True if QtOpenGL was found. -# QT_QTSQL_FOUND True if QtSql was found. -# QT_QTXML_FOUND True if QtXml was found. -# QT_QTSVG_FOUND True if QtSvg was found. -# QT_QTSCRIPT_FOUND True if QtScript was found. -# QT_QTTEST_FOUND True if QtTest was found. -# QT_QTUITOOLS_FOUND True if QtUiTools was found. -# -# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. -# -# QT_INCLUDES List of paths to all include directories of -# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are -# always in this variable even if NOTFOUND, -# all other INCLUDE_DIRS are -# only added if they are found. -# -# QT_INCLUDE_DIR Path to "include" of Qt4 -# QT_QT_INCLUDE_DIR Path to "include/Qt" -# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" -# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" -# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" -# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" -# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" -# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" -# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" -# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" -# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" -# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" -# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" -# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" -# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# -# QT_LIBRARY_DIR Path to "lib" of Qt4 -# -# QT_PLUGINS_DIR Path to "plugins" for Qt4 -# -# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. -# -# So there are the following variables: -# The Qt3Support library: QT_QT3SUPPORT_LIBRARY -# -# The QtAssistant library: QT_QTASSISTANT_LIBRARY -# -# The QtCore library: QT_QTCORE_LIBRARY -# -# The QtDBus library: QT_QTDBUS_LIBRARY -# -# The QtDesigner library: QT_QTDESIGNER_LIBRARY -# -# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY -# -# The QtGui library: QT_QTGUI_LIBRARY -# -# The QtMotif library: QT_QTMOTIF_LIBRARY -# -# The QtNetwork library: QT_QTNETWORK_LIBRARY -# -# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY -# -# The QtOpenGL library: QT_QTOPENGL_LIBRARY -# -# The QtSql library: QT_QTSQL_LIBRARY -# -# The QtXml library: QT_QTXML_LIBRARY -# -# The QtSvg library: QT_QTSVG_LIBRARY -# -# The QtScript library: QT_QTSCRIPT_LIBRARY -# -# The QtTest library: QT_QTTEST_LIBRARY -# -# The qtmain library for Windows QT_QTMAIN_LIBRARY -# -# The QtUiTools library: QT_QTUITOOLS_LIBRARY -# -# also defined, but NOT for general use are -# QT_MOC_EXECUTABLE Where to find the moc tool. -# QT_UIC_EXECUTABLE Where to find the uic tool. -# QT_UIC3_EXECUTABLE Where to find the uic3 tool. -# QT_RCC_EXECUTABLE Where to find the rcc tool -# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. -# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. -# -# QT_DOC_DIR Path to "doc" of Qt4 -# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 -# -# -# These are around for backwards compatibility -# they will be set -# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found -# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found -# -# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) -# QT_MT_REQUIRED Qt4 is now always multithreaded -# -# These variables are set to "" Because Qt structure changed -# (They make no sense in Qt4) -# QT_QT_LIBRARY Qt-Library is now split - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -INCLUDE(CheckSymbolExists) -INCLUDE(MacroAddFileDependencies) -INCLUDE(MacroPushRequiredVars) - -SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) - -SET( QT_DEFINITIONS "") - -IF (WIN32) - SET(QT_DEFINITIONS -DQT_DLL) -ENDIF(WIN32) - -SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) - -# macro for asking qmake to process pro files -MACRO(QT_QUERY_QMAKE outvar invar) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro - "message(CMAKE_MESSAGE<$$${invar}>)") - - EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} - WORKING_DIRECTORY - ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake - OUTPUT_VARIABLE _qmake_query_output - ERROR_VARIABLE _qmake_query_output ) - - FILE(REMOVE_RECURSE - "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") - - STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") -ENDMACRO(QT_QUERY_QMAKE) - -# check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin -) - -IF (QT_QMAKE_EXECUTABLE) - - SET(QT4_QMAKE_FOUND FALSE) - - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - - # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path - IF("${QTVERSION}" MATCHES "Unknown") - SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) - FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin - ) - IF(QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - ENDIF(QT_QMAKE_EXECUTABLE) - ENDIF("${QTVERSION}" MATCHES "Unknown") - - # check that we found the Qt4 qmake, Qt3 qmake output won't match here - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") - IF (qt_version_tmp) - - # we need at least version 4.0.0 - IF (NOT QT_MIN_VERSION) - SET(QT_MIN_VERSION "4.0.0") - ENDIF (NOT QT_MIN_VERSION) - - #now parse the parts of the user given version string into variables - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") - IF (NOT req_qt_major_vers) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers) - - # now parse the parts of the user given version string into variables - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") - - IF (NOT req_qt_major_vers EQUAL 4) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers EQUAL 4) - - # and now the version string given by qmake - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") - - # compute an overall version number which can be compared at once - MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") - MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") - - IF (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND FALSE) - SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) - ELSE (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND TRUE) - ENDIF (found_vers LESS req_vers) - ENDIF (qt_version_tmp) - -ENDIF (QT_QMAKE_EXECUTABLE) - -IF (QT4_QMAKE_FOUND) - - # ask qmake for the library dir - # Set QT_LIBRARY_DIR - IF (NOT QT_LIBRARY_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_LIBS" - OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") - ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") - ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") - ENDIF(NOT QT_LIBRARY_DIR) - - IF (APPLE) - IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS ON - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS OFF - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) - ENDIF (APPLE) - - # ask qmake for the binary dir - IF (NOT QT_BINARY_DIR) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (NOT QT_BINARY_DIR) - - # ask qmake for the include dir - IF (NOT QT_HEADERS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(NOT QT_HEADERS_DIR) - - - # ask qmake for the documentation directory - IF (NOT QT_DOC_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_DOCS" - OUTPUT_VARIABLE qt_doc_dir ) - SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") - ENDIF (NOT QT_DOC_DIR) - - # ask qmake for the mkspecs directory - IF (NOT QT_MKSPECS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QMAKE_MKSPECS" - OUTPUT_VARIABLE qt_mkspecs_dir ) - SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") - ENDIF (NOT QT_MKSPECS_DIR) - - # ask qmake for the plugins directory - IF (NOT QT_PLUGINS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_PLUGINS" - OUTPUT_VARIABLE qt_plugins_dir ) - SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") - ENDIF (NOT QT_PLUGINS_DIR) - ######################################## - # - # Setting the INCLUDE-Variables - # - ######################################## - - FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal - ${QT_HEADERS_DIR}/QtCore - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - IF (QT_USE_FRAMEWORKS) - SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) - ELSE (QT_USE_FRAMEWORKS) - STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) - SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") - ENDIF (QT_USE_FRAMEWORKS) - ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - - IF( NOT QT_INCLUDE_DIR) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_INCLUDE_DIR) - - ############################################# - # - # Find out what window system we're using - # - ############################################# - # Save required includes and required_flags variables - macro_push_required_vars() - # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES - SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") - # On Mac OS X when Qt has framework support, also add the framework path - IF( QT_USE_FRAMEWORKS ) - SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") - ENDIF( QT_USE_FRAMEWORKS ) - # Check for Window system symbols (note: only one should end up being set) - CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) - CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) - CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) - CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) - - IF (QT_QTCOPY_REQUIRED) - CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) - IF (NOT QT_IS_QTCOPY) - MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") - ENDIF (NOT QT_IS_QTCOPY) - ENDIF (QT_QTCOPY_REQUIRED) - - # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables - macro_pop_required_vars() - # - ############################################# - - IF (QT_USE_FRAMEWORKS) - SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) - ENDIF (QT_USE_FRAMEWORKS) - - # Set QT_QT3SUPPORT_INCLUDE_DIR - FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support - PATHS - ${QT_INCLUDE_DIR}/Qt3Support - ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QT_INCLUDE_DIR - FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h - PATHS - ${QT_INCLUDE_DIR}/Qt - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTGUI_INCLUDE_DIR - FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui - PATHS - ${QT_INCLUDE_DIR}/QtGui - ${QT_LIBRARY_DIR}/QtGui.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg - PATHS - ${QT_INCLUDE_DIR}/QtSvg - ${QT_LIBRARY_DIR}/QtSvg.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript - PATHS - ${QT_INCLUDE_DIR}/QtScript - ${QT_LIBRARY_DIR}/QtScript.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTTEST_INCLUDE_DIR - FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest - PATHS - ${QT_INCLUDE_DIR}/QtTest - ${QT_LIBRARY_DIR}/QtTest.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTUITOOLS_INCLUDE_DIR - FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools - PATHS - ${QT_INCLUDE_DIR}/QtUiTools - ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers - NO_DEFAULT_PATH - ) - - - - # Set QT_QTMOTIF_INCLUDE_DIR - IF(Q_WS_X11) - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_INCLUDE_DIR - FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork - PATHS - ${QT_INCLUDE_DIR}/QtNetwork - ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTNSPLUGIN_INCLUDE_DIR - FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin - PATHS - ${QT_INCLUDE_DIR}/QtNsPlugin - ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTOPENGL_INCLUDE_DIR - FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL - PATHS - ${QT_INCLUDE_DIR}/QtOpenGL - ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSQL_INCLUDE_DIR - FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql - PATHS - ${QT_INCLUDE_DIR}/QtSql - ${QT_LIBRARY_DIR}/QtSql.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTXML_INCLUDE_DIR - FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml - PATHS - ${QT_INCLUDE_DIR}/QtXml - ${QT_LIBRARY_DIR}/QtXml.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTASSISTANT_INCLUDE_DIR - FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant - PATHS - ${QT_INCLUDE_DIR}/QtAssistant - ${QT_HEADERS_DIR}/QtAssistant - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNER_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - - # Set QT_QTDBUS_INCLUDE_DIR - FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus - PATHS - ${QT_INCLUDE_DIR}/QtDBus - ${QT_HEADERS_DIR}/QtDBus - NO_DEFAULT_PATH - ) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) - - # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) - - - ######################################## - # - # Setting the LIBRARY-Variables - # - ######################################## - - IF (QT_USE_FRAMEWORKS) - # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have - # to jump through these hoops. - IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND TRUE) - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND TRUE) - SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND TRUE) - SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND TRUE) - SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND TRUE) - SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND TRUE) - SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND TRUE) - SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND TRUE) - SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND TRUE) - SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND TRUE) - SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - - # WTF? why don't we have frameworks? :P - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) - - ELSE (QT_USE_FRAMEWORKS) - - # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - - # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMOTIF_LIBRARY - IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - IF(MSVC) - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(MSVC) - - ENDIF (QT_USE_FRAMEWORKS) - - IF( NOT QT_QTCORE_LIBRARY ) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_QTCORE_LIBRARY ) - - # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNERCOMPONENTS_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMAIN_LIBRARY - IF(WIN32) - FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(WIN32) - - ############################################ - # - # Check the existence of the libraries. - # - ############################################ - - MACRO (_QT4_ADJUST_LIB_VARS basename) - IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF(MSVC) - - # Both set - IF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - - # Only debug was found - IF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - - # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - - ENDIF(MSVC) - - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") - - IF (QT_${basename}_LIBRARY) - SET(QT_${basename}_FOUND 1) - ENDIF (QT_${basename}_LIBRARY) - - ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF (QT_${basename}_INCLUDE_DIR) - #add the include directory to QT_INCLUDES - SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") - ENDIF (QT_${basename}_INCLUDE_DIR) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) - ENDMACRO (_QT4_ADJUST_LIB_VARS) - - - # Set QT_xyz_LIBRARY variable and add - # library include path to QT_INCLUDES - _QT4_ADJUST_LIB_VARS(QTCORE) - _QT4_ADJUST_LIB_VARS(QTGUI) - _QT4_ADJUST_LIB_VARS(QT3SUPPORT) - _QT4_ADJUST_LIB_VARS(QTASSISTANT) - _QT4_ADJUST_LIB_VARS(QTDESIGNER) - _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) - _QT4_ADJUST_LIB_VARS(QTNETWORK) - _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) - _QT4_ADJUST_LIB_VARS(QTOPENGL) - _QT4_ADJUST_LIB_VARS(QTSQL) - _QT4_ADJUST_LIB_VARS(QTXML) - _QT4_ADJUST_LIB_VARS(QTSVG) - _QT4_ADJUST_LIB_VARS(QTSCRIPT) - _QT4_ADJUST_LIB_VARS(QTUITOOLS) - _QT4_ADJUST_LIB_VARS(QTTEST) - _QT4_ADJUST_LIB_VARS(QTDBUS) - - - # platform dependent libraries - IF(Q_WS_X11) - _QT4_ADJUST_LIB_VARS(QTMOTIF) - ENDIF(Q_WS_X11) - IF(WIN32) - _QT4_ADJUST_LIB_VARS(QTMAIN) - ENDIF(WIN32) - - ####################################### - # - # Check the executables of Qt - # ( moc, uic, rcc ) - # - ####################################### - - - # find moc and uic using qmake - QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") - QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") - - FILE(TO_CMAKE_PATH - "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) - FILE(TO_CMAKE_PATH - "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) - - SET(QT_MOC_EXECUTABLE - ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") - SET(QT_UIC_EXECUTABLE - ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") - - FIND_PROGRAM(QT_UIC3_EXECUTABLE - NAMES uic3 - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_RCC_EXECUTABLE - NAMES rcc - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE - NAMES qdbuscpp2xml - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE - NAMES qdbusxml2cpp - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - IF (QT_MOC_EXECUTABLE) - SET(QT_WRAP_CPP "YES") - ENDIF (QT_MOC_EXECUTABLE) - - IF (QT_UIC_EXECUTABLE) - SET(QT_WRAP_UI "YES") - ENDIF (QT_UIC_EXECUTABLE) - - - - MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) - - ###################################### - # - # Macros for building Qt files - # - ###################################### - - MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - - FOREACH(_current ${_inc_DIRS}) - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - ENDFOREACH(_current ${_inc_DIRS}) - ENDMACRO(QT4_GET_MOC_INC_DIRS) - - - MACRO (QT4_GENERATE_MOC infile outfile ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) - - SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file - - MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) - ENDMACRO (QT4_GENERATE_MOC) - - - # QT4_WRAP_CPP(outfiles inputfile ... ) - # TODO perhaps add support for -D, -U and other minor options - - MACRO (QT4_WRAP_CPP outfiles ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${it} - DEPENDS ${it}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) - - ENDMACRO (QT4_WRAP_CPP) - - - # QT4_WRAP_UI(outfiles inputfile ... ) - - MACRO (QT4_WRAP_UI outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_UIC_EXECUTABLE} - ARGS -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_WRAP_UI) - - - # QT4_ADD_RESOURCES(outfiles inputfile ... ) - # TODO perhaps consider adding support for compression and root options to rcc - - MACRO (QT4_ADD_RESOURCES outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(rc_path ${infile} PATH) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) - # parse file for dependencies - FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") - SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") - ENDFOREACH(_RC_FILE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_RCC_EXECUTABLE} - ARGS -name ${outfilename} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_ADD_RESOURCES) - - MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) - GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) - IF ( _nonamespace ) - SET(_params -N -m -p) - ELSE ( _nonamespace ) - SET(_params -m -p) - ENDIF ( _nonamespace ) - - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} - DEPENDS ${_infile}) - - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - - QT4_GENERATE_MOC(${_header} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - ENDMACRO(QT4_ADD_DBUS_INTERFACE) - - MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) - SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) - ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) - - # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES - MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) - GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) - # get the part before the ".xml" suffix - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) - STRING(TOLOWER ${_basename} _basename) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) - ENDMACRO(_QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES _sources) - FOREACH (_current_FILE ${ARGN}) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) - FOREACH (_current_FILE ${ARGN}) - SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) - - MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) - SET(_customName "${ARGV1}") - GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - - IF (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) - ELSE (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) - ENDIF (_customName) - - ADD_CUSTOM_COMMAND(OUTPUT ${_target} - COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} - DEPENDS ${_in_file} - ) - ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - - - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) - GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) - - SET(_optionalBasename "${ARGV4}") - IF (_optionalBasename) - SET(_basename ${_optionalBasename} ) - ELSE (_optionalBasename) - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) - STRING(TOLOWER ${_basename} _basename) - ENDIF (_optionalBasename) - - SET(_optionalClassName "${ARGV5}") - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - IF(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ELSE(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ENDIF(_optionalClassName) - - QT4_GENERATE_MOC(${_header} ${_moc}) - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - ENDMACRO(QT4_ADD_DBUS_ADAPTOR) - - MACRO(QT4_AUTOMOC) - QT4_GET_MOC_INC_DIRS(_moc_INCS) - - SET(_matching_FILES ) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # here. this is required to make bouic work correctly: - # we need to add generated .cpp files to the sources (to compile them), - # but we cannot let automoc handle them, as the .cpp files don't exist yet when - # cmake is run for the very first time on them -> however the .cpp files might - # exist at a later run. at that time we need to skip them, so that we don't add two - # different rules for the same moc file - GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - - IF ( NOT _skip AND EXISTS ${_abs_FILE} ) - - FILE(READ ${_abs_FILE} _contents) - - GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - - STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) - FOREACH (_current_MOC_INC ${_match}) - STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - - GET_filename_component(_basename ${_current_MOC} NAME_WE) - # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_moc_INCS} ${_header} -o ${_moc} - DEPENDS ${_header} - ) - - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) - ENDFOREACH (_current_MOC_INC) - ENDIF(_match) - ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_AUTOMOC) - - - - ###################################### - # - # decide if Qt got found - # - ###################################### - - # if the includes,libraries,moc,uic and rcc are found then we have it - IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "YES" ) - IF( NOT Qt4_FIND_QUIETLY) - IF (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") - ELSE (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") - ENDIF (WIN32) - ENDIF( NOT Qt4_FIND_QUIETLY) - ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "NO") - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF( Qt4_FIND_REQUIRED) - IF ( NOT QT_LIBRARY_DIR ) - MESSAGE(STATUS "Qt libraries NOT found!") - ENDIF(NOT QT_LIBRARY_DIR ) - IF ( NOT QT_INCLUDE_DIR ) - MESSAGE(STATUS "Qt includes NOT found!") - ENDIF( NOT QT_INCLUDE_DIR ) - IF ( NOT QT_MOC_EXECUTABLE ) - MESSAGE(STATUS "Qt's moc NOT found!") - ENDIF( NOT QT_MOC_EXECUTABLE ) - IF ( NOT QT_UIC_EXECUTABLE ) - MESSAGE(STATUS "Qt's uic NOT found!") - ENDIF( NOT QT_UIC_EXECUTABLE ) - IF ( NOT QT_RCC_EXECUTABLE ) - MESSAGE(STATUS "Qt's rcc NOT found!") - ENDIF( NOT QT_RCC_EXECUTABLE ) - MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") - ENDIF( Qt4_FIND_REQUIRED) - ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET(QT_FOUND ${QT4_FOUND}) - - - ####################################### - # - # System dependent settings - # - ####################################### - # for unix add X11 stuff - IF(UNIX) - # on OS X X11 may not be required - IF (Q_WS_X11) - FIND_PACKAGE(X11 REQUIRED) - ENDIF (Q_WS_X11) - FIND_PACKAGE(Threads) - SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - ENDIF(UNIX) - - - ####################################### - # - # compatibility settings - # - ####################################### - # Backwards compatibility for CMake1.4 and 1.2 - SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) - SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) - - SET( QT_QT_LIBRARY "") - -ELSE(QT4_QMAKE_FOUND) - - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ELSE(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE( FATAL_ERROR "Qt qmake not found!") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) - ELSE(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - ENDIF(Qt4_FIND_REQUIRED) - -ENDIF (QT4_QMAKE_FOUND) - +# - Find QT 4 +# This module can be used to find Qt4. +# The most important issue is that the Qt4 qmake is available via the system path. +# This qmake is then used to detect basically everything else. +# This module defines a number of key variables and macros. First is +# QT_USE_FILE which is the path to a CMake file that can be included to compile +# Qt 4 applications and libraries. By default, the QtCore and QtGui +# libraries are loaded. This behavior can be changed by setting one or more +# of the following variables to true: +# QT_DONT_USE_QTCORE +# QT_DONT_USE_QTGUI +# QT_USE_QT3SUPPORT +# QT_USE_QTASSISTANT +# QT_USE_QTDESIGNER +# QT_USE_QTMOTIF +# QT_USE_QTMAIN +# QT_USE_QTNETWORK +# QT_USE_QTNSPLUGIN +# QT_USE_QTOPENGL +# QT_USE_QTSQL +# QT_USE_QTXML +# QT_USE_QTSVG +# QT_USE_QTTEST +# QT_USE_QTUITOOLS +# QT_USE_QTDBUS +# +# All the libraries required are stored in a variable called QT_LIBRARIES. +# Add this variable to your TARGET_LINK_LIBRARIES. +# +# macro QT4_WRAP_CPP(outfiles inputfile ... ) +# macro QT4_WRAP_UI(outfiles inputfile ... ) +# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) +# macro QT4_AUTOMOC(inputfile ... ) +# macro QT4_GENERATE_MOC(inputfile outputfile ) +# +# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) +# create a the interface header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) +# create the interface header and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) +# create a the interface without namespace header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) +# create the interface header without namespace and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) +# create a dbus adaptor (header and implementation file) from the xml file +# describing the interface, and add it to the list of sources. The adaptor +# forwards the calls to a parent class, defined in parentheader and named +# parentclassname. The name of the generated files will be +# adaptor.{cpp,h} where basename is the basename of the xml file. +# +# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) +# generate the xml interface file from the given header. +# If the optional argument interfacename is omitted, the name of the +# interface file is constructed from the basename of the header with +# the suffix .xml appended. +# +# QT_FOUND If false, don't try to use Qt. +# QT4_FOUND If false, don't try to use Qt 4. +# +# QT_QTCORE_FOUND True if QtCore was found. +# QT_QTGUI_FOUND True if QtGui was found. +# QT_QT3SUPPORT_FOUND True if Qt3Support was found. +# QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTDBUS_FOUND True if QtDBus was found. +# QT_QTDESIGNER_FOUND True if QtDesigner was found. +# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. +# QT_QTMOTIF_FOUND True if QtMotif was found. +# QT_QTNETWORK_FOUND True if QtNetwork was found. +# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. +# QT_QTOPENGL_FOUND True if QtOpenGL was found. +# QT_QTSQL_FOUND True if QtSql was found. +# QT_QTXML_FOUND True if QtXml was found. +# QT_QTSVG_FOUND True if QtSvg was found. +# QT_QTSCRIPT_FOUND True if QtScript was found. +# QT_QTTEST_FOUND True if QtTest was found. +# QT_QTUITOOLS_FOUND True if QtUiTools was found. +# +# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. +# +# QT_INCLUDES List of paths to all include directories of +# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are +# always in this variable even if NOTFOUND, +# all other INCLUDE_DIRS are +# only added if they are found. +# +# QT_INCLUDE_DIR Path to "include" of Qt4 +# QT_QT_INCLUDE_DIR Path to "include/Qt" +# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" +# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" +# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" +# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" +# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" +# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" +# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" +# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" +# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" +# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" +# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" +# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" +# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" +# +# QT_LIBRARY_DIR Path to "lib" of Qt4 +# +# QT_PLUGINS_DIR Path to "plugins" for Qt4 +# +# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. +# +# So there are the following variables: +# The Qt3Support library: QT_QT3SUPPORT_LIBRARY +# +# The QtAssistant library: QT_QTASSISTANT_LIBRARY +# +# The QtCore library: QT_QTCORE_LIBRARY +# +# The QtDBus library: QT_QTDBUS_LIBRARY +# +# The QtDesigner library: QT_QTDESIGNER_LIBRARY +# +# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY +# +# The QtGui library: QT_QTGUI_LIBRARY +# +# The QtMotif library: QT_QTMOTIF_LIBRARY +# +# The QtNetwork library: QT_QTNETWORK_LIBRARY +# +# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY +# +# The QtOpenGL library: QT_QTOPENGL_LIBRARY +# +# The QtSql library: QT_QTSQL_LIBRARY +# +# The QtXml library: QT_QTXML_LIBRARY +# +# The QtSvg library: QT_QTSVG_LIBRARY +# +# The QtScript library: QT_QTSCRIPT_LIBRARY +# +# The QtTest library: QT_QTTEST_LIBRARY +# +# The qtmain library for Windows QT_QTMAIN_LIBRARY +# +# The QtUiTools library: QT_QTUITOOLS_LIBRARY +# +# also defined, but NOT for general use are +# QT_MOC_EXECUTABLE Where to find the moc tool. +# QT_UIC_EXECUTABLE Where to find the uic tool. +# QT_UIC3_EXECUTABLE Where to find the uic3 tool. +# QT_RCC_EXECUTABLE Where to find the rcc tool +# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. +# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. +# +# QT_DOC_DIR Path to "doc" of Qt4 +# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 +# +# +# These are around for backwards compatibility +# they will be set +# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found +# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found +# +# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) +# QT_MT_REQUIRED Qt4 is now always multithreaded +# +# These variables are set to "" Because Qt structure changed +# (They make no sense in Qt4) +# QT_QT_LIBRARY Qt-Library is now split + +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + +INCLUDE(CheckSymbolExists) +INCLUDE(MacroAddFileDependencies) +INCLUDE(MacroPushRequiredVars) + +SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) + +SET( QT_DEFINITIONS "") + +IF (WIN32) + SET(QT_DEFINITIONS -DQT_DLL) +ENDIF(WIN32) + +SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) + +# macro for asking qmake to process pro files +MACRO(QT_QUERY_QMAKE outvar invar) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro + "message(CMAKE_MESSAGE<$$${invar}>)") + + EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} + WORKING_DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake + OUTPUT_VARIABLE _qmake_query_output + ERROR_VARIABLE _qmake_query_output ) + + FILE(REMOVE_RECURSE + "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") + + STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") +ENDMACRO(QT_QUERY_QMAKE) + +# check for qmake +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin +) + +IF (QT_QMAKE_EXECUTABLE) + + SET(QT4_QMAKE_FOUND FALSE) + + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + + # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path + IF("${QTVERSION}" MATCHES "Unknown") + SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) + FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin + ) + IF(QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + ENDIF(QT_QMAKE_EXECUTABLE) + ENDIF("${QTVERSION}" MATCHES "Unknown") + + # check that we found the Qt4 qmake, Qt3 qmake output won't match here + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") + IF (qt_version_tmp) + + # we need at least version 4.0.0 + IF (NOT QT_MIN_VERSION) + SET(QT_MIN_VERSION "4.0.0") + ENDIF (NOT QT_MIN_VERSION) + + #now parse the parts of the user given version string into variables + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") + IF (NOT req_qt_major_vers) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers) + + # now parse the parts of the user given version string into variables + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + + IF (NOT req_qt_major_vers EQUAL 4) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers EQUAL 4) + + # and now the version string given by qmake + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") + MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") + + IF (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND FALSE) + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) + ELSE (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND TRUE) + ENDIF (found_vers LESS req_vers) + ENDIF (qt_version_tmp) + +ENDIF (QT_QMAKE_EXECUTABLE) + +IF (QT4_QMAKE_FOUND) + + # ask qmake for the library dir + # Set QT_LIBRARY_DIR + IF (NOT QT_LIBRARY_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_LIBS" + OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + IF(EXISTS "${QT_LIBRARY_DIR_TMP}") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") + ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") + ENDIF(NOT QT_LIBRARY_DIR) + + IF (APPLE) + IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS ON + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS OFF + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) + ENDIF (APPLE) + + # ask qmake for the binary dir + IF (NOT QT_BINARY_DIR) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + ENDIF (NOT QT_BINARY_DIR) + + # ask qmake for the include dir + IF (NOT QT_HEADERS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_HEADERS" + OUTPUT_VARIABLE qt_headers ) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + ENDIF(NOT QT_HEADERS_DIR) + + + # ask qmake for the documentation directory + IF (NOT QT_DOC_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_DOCS" + OUTPUT_VARIABLE qt_doc_dir ) + SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") + ENDIF (NOT QT_DOC_DIR) + + # ask qmake for the mkspecs directory + IF (NOT QT_MKSPECS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QMAKE_MKSPECS" + OUTPUT_VARIABLE qt_mkspecs_dir ) + SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") + ENDIF (NOT QT_MKSPECS_DIR) + + # ask qmake for the plugins directory + IF (NOT QT_PLUGINS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_PLUGINS" + OUTPUT_VARIABLE qt_plugins_dir ) + SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") + ENDIF (NOT QT_PLUGINS_DIR) + ######################################## + # + # Setting the INCLUDE-Variables + # + ######################################## + + FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal + ${QT_HEADERS_DIR}/QtCore + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} + IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF (QT_USE_FRAMEWORKS) + SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) + ELSE (QT_USE_FRAMEWORKS) + STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) + SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + ENDIF (QT_USE_FRAMEWORKS) + ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + + IF( NOT QT_INCLUDE_DIR) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_INCLUDE_DIR) + + ############################################# + # + # Find out what window system we're using + # + ############################################# + # Save required includes and required_flags variables + macro_push_required_vars() + # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES + SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") + # On Mac OS X when Qt has framework support, also add the framework path + IF( QT_USE_FRAMEWORKS ) + SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") + ENDIF( QT_USE_FRAMEWORKS ) + # Check for Window system symbols (note: only one should end up being set) + CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) + CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + + IF (QT_QTCOPY_REQUIRED) + CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) + IF (NOT QT_IS_QTCOPY) + MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") + ENDIF (NOT QT_IS_QTCOPY) + ENDIF (QT_QTCOPY_REQUIRED) + + # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables + macro_pop_required_vars() + # + ############################################# + + IF (QT_USE_FRAMEWORKS) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) + ENDIF (QT_USE_FRAMEWORKS) + + # Set QT_QT3SUPPORT_INCLUDE_DIR + FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support + PATHS + ${QT_INCLUDE_DIR}/Qt3Support + ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QT_INCLUDE_DIR + FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h + PATHS + ${QT_INCLUDE_DIR}/Qt + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTGUI_INCLUDE_DIR + FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui + PATHS + ${QT_INCLUDE_DIR}/QtGui + ${QT_LIBRARY_DIR}/QtGui.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg + PATHS + ${QT_INCLUDE_DIR}/QtSvg + ${QT_LIBRARY_DIR}/QtSvg.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript + PATHS + ${QT_INCLUDE_DIR}/QtScript + ${QT_LIBRARY_DIR}/QtScript.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTTEST_INCLUDE_DIR + FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest + PATHS + ${QT_INCLUDE_DIR}/QtTest + ${QT_LIBRARY_DIR}/QtTest.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTUITOOLS_INCLUDE_DIR + FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools + PATHS + ${QT_INCLUDE_DIR}/QtUiTools + ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers + NO_DEFAULT_PATH + ) + + + + # Set QT_QTMOTIF_INCLUDE_DIR + IF(Q_WS_X11) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_INCLUDE_DIR + FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork + PATHS + ${QT_INCLUDE_DIR}/QtNetwork + ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTNSPLUGIN_INCLUDE_DIR + FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin + PATHS + ${QT_INCLUDE_DIR}/QtNsPlugin + ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTOPENGL_INCLUDE_DIR + FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL + PATHS + ${QT_INCLUDE_DIR}/QtOpenGL + ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSQL_INCLUDE_DIR + FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql + PATHS + ${QT_INCLUDE_DIR}/QtSql + ${QT_LIBRARY_DIR}/QtSql.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTXML_INCLUDE_DIR + FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml + PATHS + ${QT_INCLUDE_DIR}/QtXml + ${QT_LIBRARY_DIR}/QtXml.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTASSISTANT_INCLUDE_DIR + FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant + PATHS + ${QT_INCLUDE_DIR}/QtAssistant + ${QT_HEADERS_DIR}/QtAssistant + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNER_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + + # Set QT_QTDBUS_INCLUDE_DIR + FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus + PATHS + ${QT_INCLUDE_DIR}/QtDBus + ${QT_HEADERS_DIR}/QtDBus + NO_DEFAULT_PATH + ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) + + # Set QT_INCLUDES + SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) + + + ######################################## + # + # Setting the LIBRARY-Variables + # + ######################################## + + IF (QT_USE_FRAMEWORKS) + # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have + # to jump through these hoops. + IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND TRUE) + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND TRUE) + SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND TRUE) + SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND TRUE) + SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND TRUE) + SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND TRUE) + SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND TRUE) + SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND TRUE) + SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND TRUE) + SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND TRUE) + SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + + # WTF? why don't we have frameworks? :P + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) + + ELSE (QT_USE_FRAMEWORKS) + + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCore4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + + # Set QT_QT3SUPPORT_LIBRARY + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Support4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTGUI_LIBRARY + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGui4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMOTIF_LIBRARY + IF(Q_WS_X11) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_LIBRARY + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetwork4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTNSPLUGIN_LIBRARY + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTOPENGL_LIBRARY + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGL4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSQL_LIBRARY + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSql4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTXML_LIBRARY + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXml4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSVG_LIBRARY + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvg4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScript4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiTools4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTTEST_LIBRARY + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTest4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBus4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + IF(MSVC) + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(MSVC) + ENDIF (QT_USE_FRAMEWORKS) + + IF( NOT QT_QTCORE_LIBRARY ) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_QTCORE_LIBRARY ) + + # Set QT_QTASSISTANT_LIBRARY + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistant4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNER_LIBRARY + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNERCOMPONENTS_LIBRARY + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponents4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMAIN_LIBRARY + IF(WIN32) + FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(WIN32) + + ############################################ + # + # Check the existence of the libraries. + # + ############################################ + + MACRO (_QT4_ADJUST_LIB_VARS basename) + IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF(MSVC) + + # Both set + IF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + + # Only debug was found + IF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + + # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + + ENDIF(MSVC) + + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") + + IF (QT_${basename}_LIBRARY) + SET(QT_${basename}_FOUND 1) + ENDIF (QT_${basename}_LIBRARY) + + ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF (QT_${basename}_INCLUDE_DIR) + #add the include directory to QT_INCLUDES + SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + ENDIF (QT_${basename}_INCLUDE_DIR) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) + ENDMACRO (_QT4_ADJUST_LIB_VARS) + + + # Set QT_xyz_LIBRARY variable and add + # library include path to QT_INCLUDES + _QT4_ADJUST_LIB_VARS(QTCORE) + _QT4_ADJUST_LIB_VARS(QTGUI) + _QT4_ADJUST_LIB_VARS(QT3SUPPORT) + _QT4_ADJUST_LIB_VARS(QTASSISTANT) + _QT4_ADJUST_LIB_VARS(QTDESIGNER) + _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) + _QT4_ADJUST_LIB_VARS(QTNETWORK) + _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) + _QT4_ADJUST_LIB_VARS(QTOPENGL) + _QT4_ADJUST_LIB_VARS(QTSQL) + _QT4_ADJUST_LIB_VARS(QTXML) + _QT4_ADJUST_LIB_VARS(QTSVG) + _QT4_ADJUST_LIB_VARS(QTSCRIPT) + _QT4_ADJUST_LIB_VARS(QTUITOOLS) + _QT4_ADJUST_LIB_VARS(QTTEST) + _QT4_ADJUST_LIB_VARS(QTDBUS) + + + # platform dependent libraries + IF(Q_WS_X11) + _QT4_ADJUST_LIB_VARS(QTMOTIF) + ENDIF(Q_WS_X11) + IF(WIN32) + _QT4_ADJUST_LIB_VARS(QTMAIN) + ENDIF(WIN32) + + ####################################### + # + # Check the executables of Qt + # ( moc, uic, rcc ) + # + ####################################### + + + # find moc and uic using qmake + QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") + QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") + + FILE(TO_CMAKE_PATH + "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) + FILE(TO_CMAKE_PATH + "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) + + SET(QT_MOC_EXECUTABLE + ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") + SET(QT_UIC_EXECUTABLE + ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") + + FIND_PROGRAM(QT_UIC3_EXECUTABLE + NAMES uic3 + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_RCC_EXECUTABLE + NAMES rcc + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE + NAMES qdbuscpp2xml + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE + NAMES qdbusxml2cpp + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + IF (QT_MOC_EXECUTABLE) + SET(QT_WRAP_CPP "YES") + ENDIF (QT_MOC_EXECUTABLE) + + IF (QT_UIC_EXECUTABLE) + SET(QT_WRAP_UI "YES") + ENDIF (QT_UIC_EXECUTABLE) + + + + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) + + ###################################### + # + # Macros for building Qt files + # + ###################################### + + MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) + SET(${_moc_INC_DIRS}) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + + FOREACH(_current ${_inc_DIRS}) + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) + + + MACRO (QT4_GENERATE_MOC infile outfile ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) + + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${abs_infile} + DEPENDS ${abs_infile}) + + SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + + MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) + ENDMACRO (QT4_GENERATE_MOC) + + + # QT4_WRAP_CPP(outfiles inputfile ... ) + # TODO perhaps add support for -D, -U and other minor options + + MACRO (QT4_WRAP_CPP outfiles ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${it} + DEPENDS ${it}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + + ENDMACRO (QT4_WRAP_CPP) + + + # QT4_WRAP_UI(outfiles inputfile ... ) + + MACRO (QT4_WRAP_UI outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_WRAP_UI) + + + # QT4_ADD_RESOURCES(outfiles inputfile ... ) + # TODO perhaps consider adding support for compression and root options to rcc + + MACRO (QT4_ADD_RESOURCES outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(rc_path ${infile} PATH) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + # parse file for dependencies + FILE(READ "${infile}" _RC_FILE_CONTENTS) + STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") + SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") + ENDFOREACH(_RC_FILE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_RCC_EXECUTABLE} + ARGS -name ${outfilename} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_ADD_RESOURCES) + + MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) + GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) + IF ( _nonamespace ) + SET(_params -N -m -p) + ELSE ( _nonamespace ) + SET(_params -m -p) + ENDIF ( _nonamespace ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} + DEPENDS ${_infile}) + + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + + QT4_GENERATE_MOC(${_header} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + ENDMACRO(QT4_ADD_DBUS_INTERFACE) + + MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) + SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) + ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) + + # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES + MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) + GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) + # get the part before the ".xml" suffix + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) + STRING(TOLOWER ${_basename} _basename) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + ENDMACRO(_QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) + FOREACH (_current_FILE ${ARGN}) + SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) + + MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) + SET(_customName "${ARGV1}") + GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) + + IF (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) + ELSE (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + ENDIF (_customName) + + ADD_CUSTOM_COMMAND(OUTPUT ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} + DEPENDS ${_in_file} + ) + ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) + + + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) + GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) + + SET(_optionalBasename "${ARGV4}") + IF (_optionalBasename) + SET(_basename ${_optionalBasename} ) + ELSE (_optionalBasename) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) + STRING(TOLOWER ${_basename} _basename) + ENDIF (_optionalBasename) + + SET(_optionalClassName "${ARGV5}") + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + IF(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ELSE(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ENDIF(_optionalClassName) + + QT4_GENERATE_MOC(${_header} ${_moc}) + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + ENDMACRO(QT4_ADD_DBUS_ADAPTOR) + + MACRO(QT4_AUTOMOC) + QT4_GET_MOC_INC_DIRS(_moc_INCS) + + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # here. this is required to make bouic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) + + IF ( NOT _skip AND EXISTS ${_abs_FILE} ) + + FILE(READ ${_abs_FILE} _contents) + + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_filename_component(_basename ${_current_MOC} NAME_WE) + # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_AUTOMOC) + + + + ###################################### + # + # decide if Qt got found + # + ###################################### + + # if the includes,libraries,moc,uic and rcc are found then we have it + IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "YES" ) + IF( NOT Qt4_FIND_QUIETLY) + IF (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") + ELSE (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") + ENDIF (WIN32) + ENDIF( NOT Qt4_FIND_QUIETLY) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "NO") + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF( Qt4_FIND_REQUIRED) + IF ( NOT QT_LIBRARY_DIR ) + MESSAGE(STATUS "Qt libraries NOT found!") + ENDIF(NOT QT_LIBRARY_DIR ) + IF ( NOT QT_INCLUDE_DIR ) + MESSAGE(STATUS "Qt includes NOT found!") + ENDIF( NOT QT_INCLUDE_DIR ) + IF ( NOT QT_MOC_EXECUTABLE ) + MESSAGE(STATUS "Qt's moc NOT found!") + ENDIF( NOT QT_MOC_EXECUTABLE ) + IF ( NOT QT_UIC_EXECUTABLE ) + MESSAGE(STATUS "Qt's uic NOT found!") + ENDIF( NOT QT_UIC_EXECUTABLE ) + IF ( NOT QT_RCC_EXECUTABLE ) + MESSAGE(STATUS "Qt's rcc NOT found!") + ENDIF( NOT QT_RCC_EXECUTABLE ) + MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + ENDIF( Qt4_FIND_REQUIRED) + ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET(QT_FOUND ${QT4_FOUND}) + + + ####################################### + # + # System dependent settings + # + ####################################### + # for unix add X11 stuff + IF(UNIX) + # on OS X X11 may not be required + IF (Q_WS_X11) + FIND_PACKAGE(X11 REQUIRED) + ENDIF (Q_WS_X11) + FIND_PACKAGE(Threads) + SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + ENDIF(UNIX) + + + ####################################### + # + # compatibility settings + # + ####################################### + # Backwards compatibility for CMake1.4 and 1.2 + SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + + SET( QT_QT_LIBRARY "") + +ELSE(QT4_QMAKE_FOUND) + + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ELSE(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE( FATAL_ERROR "Qt qmake not found!") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) + ELSE(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + ENDIF(Qt4_FIND_REQUIRED) + +ENDIF (QT4_QMAKE_FOUND) + -- cgit v1.2.1 From 789a43a8e400806a43b043860ca65d2ff538f8ac Mon Sep 17 00:00:00 2001 From: Frank Osterfeld Date: Mon, 9 Jul 2007 15:08:59 +0000 Subject: fix linebreaks svn path=/trunk/KDE/kdelibs/; revision=685713 --- modules/FindQt4.cmake | 2402 ++++++++++++++++++++++++------------------------- 1 file changed, 1201 insertions(+), 1201 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index bf4b41c3..e7cd9d83 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1,1201 +1,1201 @@ -# - Find QT 4 -# This module can be used to find Qt4. -# The most important issue is that the Qt4 qmake is available via the system path. -# This qmake is then used to detect basically everything else. -# This module defines a number of key variables and macros. First is -# QT_USE_FILE which is the path to a CMake file that can be included to compile -# Qt 4 applications and libraries. By default, the QtCore and QtGui -# libraries are loaded. This behavior can be changed by setting one or more -# of the following variables to true: -# QT_DONT_USE_QTCORE -# QT_DONT_USE_QTGUI -# QT_USE_QT3SUPPORT -# QT_USE_QTASSISTANT -# QT_USE_QTDESIGNER -# QT_USE_QTMOTIF -# QT_USE_QTMAIN -# QT_USE_QTNETWORK -# QT_USE_QTNSPLUGIN -# QT_USE_QTOPENGL -# QT_USE_QTSQL -# QT_USE_QTXML -# QT_USE_QTSVG -# QT_USE_QTTEST -# QT_USE_QTUITOOLS -# QT_USE_QTDBUS -# -# All the libraries required are stored in a variable called QT_LIBRARIES. -# Add this variable to your TARGET_LINK_LIBRARIES. -# -# macro QT4_WRAP_CPP(outfiles inputfile ... ) -# macro QT4_WRAP_UI(outfiles inputfile ... ) -# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) -# macro QT4_AUTOMOC(inputfile ... ) -# macro QT4_GENERATE_MOC(inputfile outputfile ) -# -# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) -# create a the interface header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) -# create the interface header and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) -# create a the interface without namespace header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) -# create the interface header without namespace and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) -# create a dbus adaptor (header and implementation file) from the xml file -# describing the interface, and add it to the list of sources. The adaptor -# forwards the calls to a parent class, defined in parentheader and named -# parentclassname. The name of the generated files will be -# adaptor.{cpp,h} where basename is the basename of the xml file. -# -# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) -# generate the xml interface file from the given header. -# If the optional argument interfacename is omitted, the name of the -# interface file is constructed from the basename of the header with -# the suffix .xml appended. -# -# QT_FOUND If false, don't try to use Qt. -# QT4_FOUND If false, don't try to use Qt 4. -# -# QT_QTCORE_FOUND True if QtCore was found. -# QT_QTGUI_FOUND True if QtGui was found. -# QT_QT3SUPPORT_FOUND True if Qt3Support was found. -# QT_QTASSISTANT_FOUND True if QtAssistant was found. -# QT_QTDBUS_FOUND True if QtDBus was found. -# QT_QTDESIGNER_FOUND True if QtDesigner was found. -# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. -# QT_QTMOTIF_FOUND True if QtMotif was found. -# QT_QTNETWORK_FOUND True if QtNetwork was found. -# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. -# QT_QTOPENGL_FOUND True if QtOpenGL was found. -# QT_QTSQL_FOUND True if QtSql was found. -# QT_QTXML_FOUND True if QtXml was found. -# QT_QTSVG_FOUND True if QtSvg was found. -# QT_QTSCRIPT_FOUND True if QtScript was found. -# QT_QTTEST_FOUND True if QtTest was found. -# QT_QTUITOOLS_FOUND True if QtUiTools was found. -# -# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. -# -# QT_INCLUDES List of paths to all include directories of -# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are -# always in this variable even if NOTFOUND, -# all other INCLUDE_DIRS are -# only added if they are found. -# -# QT_INCLUDE_DIR Path to "include" of Qt4 -# QT_QT_INCLUDE_DIR Path to "include/Qt" -# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" -# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" -# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" -# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" -# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" -# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" -# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" -# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" -# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" -# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" -# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" -# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" -# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# -# QT_LIBRARY_DIR Path to "lib" of Qt4 -# -# QT_PLUGINS_DIR Path to "plugins" for Qt4 -# -# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. -# -# So there are the following variables: -# The Qt3Support library: QT_QT3SUPPORT_LIBRARY -# -# The QtAssistant library: QT_QTASSISTANT_LIBRARY -# -# The QtCore library: QT_QTCORE_LIBRARY -# -# The QtDBus library: QT_QTDBUS_LIBRARY -# -# The QtDesigner library: QT_QTDESIGNER_LIBRARY -# -# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY -# -# The QtGui library: QT_QTGUI_LIBRARY -# -# The QtMotif library: QT_QTMOTIF_LIBRARY -# -# The QtNetwork library: QT_QTNETWORK_LIBRARY -# -# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY -# -# The QtOpenGL library: QT_QTOPENGL_LIBRARY -# -# The QtSql library: QT_QTSQL_LIBRARY -# -# The QtXml library: QT_QTXML_LIBRARY -# -# The QtSvg library: QT_QTSVG_LIBRARY -# -# The QtScript library: QT_QTSCRIPT_LIBRARY -# -# The QtTest library: QT_QTTEST_LIBRARY -# -# The qtmain library for Windows QT_QTMAIN_LIBRARY -# -# The QtUiTools library: QT_QTUITOOLS_LIBRARY -# -# also defined, but NOT for general use are -# QT_MOC_EXECUTABLE Where to find the moc tool. -# QT_UIC_EXECUTABLE Where to find the uic tool. -# QT_UIC3_EXECUTABLE Where to find the uic3 tool. -# QT_RCC_EXECUTABLE Where to find the rcc tool -# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. -# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. -# -# QT_DOC_DIR Path to "doc" of Qt4 -# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 -# -# -# These are around for backwards compatibility -# they will be set -# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found -# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found -# -# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) -# QT_MT_REQUIRED Qt4 is now always multithreaded -# -# These variables are set to "" Because Qt structure changed -# (They make no sense in Qt4) -# QT_QT_LIBRARY Qt-Library is now split - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -INCLUDE(CheckSymbolExists) -INCLUDE(MacroAddFileDependencies) -INCLUDE(MacroPushRequiredVars) - -SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) - -SET( QT_DEFINITIONS "") - -IF (WIN32) - SET(QT_DEFINITIONS -DQT_DLL) -ENDIF(WIN32) - -SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) - -# macro for asking qmake to process pro files -MACRO(QT_QUERY_QMAKE outvar invar) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro - "message(CMAKE_MESSAGE<$$${invar}>)") - - EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} - WORKING_DIRECTORY - ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake - OUTPUT_VARIABLE _qmake_query_output - ERROR_VARIABLE _qmake_query_output ) - - FILE(REMOVE_RECURSE - "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") - - STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") -ENDMACRO(QT_QUERY_QMAKE) - -# check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin -) - -IF (QT_QMAKE_EXECUTABLE) - - SET(QT4_QMAKE_FOUND FALSE) - - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - - # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path - IF("${QTVERSION}" MATCHES "Unknown") - SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) - FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin - ) - IF(QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - ENDIF(QT_QMAKE_EXECUTABLE) - ENDIF("${QTVERSION}" MATCHES "Unknown") - - # check that we found the Qt4 qmake, Qt3 qmake output won't match here - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") - IF (qt_version_tmp) - - # we need at least version 4.0.0 - IF (NOT QT_MIN_VERSION) - SET(QT_MIN_VERSION "4.0.0") - ENDIF (NOT QT_MIN_VERSION) - - #now parse the parts of the user given version string into variables - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") - IF (NOT req_qt_major_vers) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers) - - # now parse the parts of the user given version string into variables - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") - - IF (NOT req_qt_major_vers EQUAL 4) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers EQUAL 4) - - # and now the version string given by qmake - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") - - # compute an overall version number which can be compared at once - MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") - MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") - - IF (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND FALSE) - SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) - ELSE (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND TRUE) - ENDIF (found_vers LESS req_vers) - ENDIF (qt_version_tmp) - -ENDIF (QT_QMAKE_EXECUTABLE) - -IF (QT4_QMAKE_FOUND) - - # ask qmake for the library dir - # Set QT_LIBRARY_DIR - IF (NOT QT_LIBRARY_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_LIBS" - OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") - ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") - ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") - ENDIF(NOT QT_LIBRARY_DIR) - - IF (APPLE) - IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS ON - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS OFF - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) - ENDIF (APPLE) - - # ask qmake for the binary dir - IF (NOT QT_BINARY_DIR) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (NOT QT_BINARY_DIR) - - # ask qmake for the include dir - IF (NOT QT_HEADERS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(NOT QT_HEADERS_DIR) - - - # ask qmake for the documentation directory - IF (NOT QT_DOC_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_DOCS" - OUTPUT_VARIABLE qt_doc_dir ) - SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") - ENDIF (NOT QT_DOC_DIR) - - # ask qmake for the mkspecs directory - IF (NOT QT_MKSPECS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QMAKE_MKSPECS" - OUTPUT_VARIABLE qt_mkspecs_dir ) - SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") - ENDIF (NOT QT_MKSPECS_DIR) - - # ask qmake for the plugins directory - IF (NOT QT_PLUGINS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_PLUGINS" - OUTPUT_VARIABLE qt_plugins_dir ) - SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") - ENDIF (NOT QT_PLUGINS_DIR) - ######################################## - # - # Setting the INCLUDE-Variables - # - ######################################## - - FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal - ${QT_HEADERS_DIR}/QtCore - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - IF (QT_USE_FRAMEWORKS) - SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) - ELSE (QT_USE_FRAMEWORKS) - STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) - SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") - ENDIF (QT_USE_FRAMEWORKS) - ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - - IF( NOT QT_INCLUDE_DIR) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_INCLUDE_DIR) - - ############################################# - # - # Find out what window system we're using - # - ############################################# - # Save required includes and required_flags variables - macro_push_required_vars() - # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES - SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") - # On Mac OS X when Qt has framework support, also add the framework path - IF( QT_USE_FRAMEWORKS ) - SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") - ENDIF( QT_USE_FRAMEWORKS ) - # Check for Window system symbols (note: only one should end up being set) - CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) - CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) - CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) - CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) - - IF (QT_QTCOPY_REQUIRED) - CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) - IF (NOT QT_IS_QTCOPY) - MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") - ENDIF (NOT QT_IS_QTCOPY) - ENDIF (QT_QTCOPY_REQUIRED) - - # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables - macro_pop_required_vars() - # - ############################################# - - IF (QT_USE_FRAMEWORKS) - SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) - ENDIF (QT_USE_FRAMEWORKS) - - # Set QT_QT3SUPPORT_INCLUDE_DIR - FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support - PATHS - ${QT_INCLUDE_DIR}/Qt3Support - ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QT_INCLUDE_DIR - FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h - PATHS - ${QT_INCLUDE_DIR}/Qt - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTGUI_INCLUDE_DIR - FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui - PATHS - ${QT_INCLUDE_DIR}/QtGui - ${QT_LIBRARY_DIR}/QtGui.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg - PATHS - ${QT_INCLUDE_DIR}/QtSvg - ${QT_LIBRARY_DIR}/QtSvg.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript - PATHS - ${QT_INCLUDE_DIR}/QtScript - ${QT_LIBRARY_DIR}/QtScript.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTTEST_INCLUDE_DIR - FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest - PATHS - ${QT_INCLUDE_DIR}/QtTest - ${QT_LIBRARY_DIR}/QtTest.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTUITOOLS_INCLUDE_DIR - FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools - PATHS - ${QT_INCLUDE_DIR}/QtUiTools - ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers - NO_DEFAULT_PATH - ) - - - - # Set QT_QTMOTIF_INCLUDE_DIR - IF(Q_WS_X11) - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_INCLUDE_DIR - FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork - PATHS - ${QT_INCLUDE_DIR}/QtNetwork - ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTNSPLUGIN_INCLUDE_DIR - FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin - PATHS - ${QT_INCLUDE_DIR}/QtNsPlugin - ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTOPENGL_INCLUDE_DIR - FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL - PATHS - ${QT_INCLUDE_DIR}/QtOpenGL - ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSQL_INCLUDE_DIR - FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql - PATHS - ${QT_INCLUDE_DIR}/QtSql - ${QT_LIBRARY_DIR}/QtSql.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTXML_INCLUDE_DIR - FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml - PATHS - ${QT_INCLUDE_DIR}/QtXml - ${QT_LIBRARY_DIR}/QtXml.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTASSISTANT_INCLUDE_DIR - FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant - PATHS - ${QT_INCLUDE_DIR}/QtAssistant - ${QT_HEADERS_DIR}/QtAssistant - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNER_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - - # Set QT_QTDBUS_INCLUDE_DIR - FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus - PATHS - ${QT_INCLUDE_DIR}/QtDBus - ${QT_HEADERS_DIR}/QtDBus - NO_DEFAULT_PATH - ) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) - - # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) - - - ######################################## - # - # Setting the LIBRARY-Variables - # - ######################################## - - IF (QT_USE_FRAMEWORKS) - # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have - # to jump through these hoops. - IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND TRUE) - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND TRUE) - SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND TRUE) - SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND TRUE) - SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND TRUE) - SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND TRUE) - SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND TRUE) - SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND TRUE) - SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND TRUE) - SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND TRUE) - SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - - # WTF? why don't we have frameworks? :P - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) - - ELSE (QT_USE_FRAMEWORKS) - - # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCore4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - - # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Support4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGui4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMOTIF_LIBRARY - IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetwork4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGL4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSql4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXml4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvg4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScript4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiTools4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTest4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBus4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - IF(MSVC) - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(MSVC) - ENDIF (QT_USE_FRAMEWORKS) - - IF( NOT QT_QTCORE_LIBRARY ) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_QTCORE_LIBRARY ) - - # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistant4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNERCOMPONENTS_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponents4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMAIN_LIBRARY - IF(WIN32) - FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(WIN32) - - ############################################ - # - # Check the existence of the libraries. - # - ############################################ - - MACRO (_QT4_ADJUST_LIB_VARS basename) - IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF(MSVC) - - # Both set - IF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - - # Only debug was found - IF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - - # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - - ENDIF(MSVC) - - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") - - IF (QT_${basename}_LIBRARY) - SET(QT_${basename}_FOUND 1) - ENDIF (QT_${basename}_LIBRARY) - - ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF (QT_${basename}_INCLUDE_DIR) - #add the include directory to QT_INCLUDES - SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") - ENDIF (QT_${basename}_INCLUDE_DIR) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) - ENDMACRO (_QT4_ADJUST_LIB_VARS) - - - # Set QT_xyz_LIBRARY variable and add - # library include path to QT_INCLUDES - _QT4_ADJUST_LIB_VARS(QTCORE) - _QT4_ADJUST_LIB_VARS(QTGUI) - _QT4_ADJUST_LIB_VARS(QT3SUPPORT) - _QT4_ADJUST_LIB_VARS(QTASSISTANT) - _QT4_ADJUST_LIB_VARS(QTDESIGNER) - _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) - _QT4_ADJUST_LIB_VARS(QTNETWORK) - _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) - _QT4_ADJUST_LIB_VARS(QTOPENGL) - _QT4_ADJUST_LIB_VARS(QTSQL) - _QT4_ADJUST_LIB_VARS(QTXML) - _QT4_ADJUST_LIB_VARS(QTSVG) - _QT4_ADJUST_LIB_VARS(QTSCRIPT) - _QT4_ADJUST_LIB_VARS(QTUITOOLS) - _QT4_ADJUST_LIB_VARS(QTTEST) - _QT4_ADJUST_LIB_VARS(QTDBUS) - - - # platform dependent libraries - IF(Q_WS_X11) - _QT4_ADJUST_LIB_VARS(QTMOTIF) - ENDIF(Q_WS_X11) - IF(WIN32) - _QT4_ADJUST_LIB_VARS(QTMAIN) - ENDIF(WIN32) - - ####################################### - # - # Check the executables of Qt - # ( moc, uic, rcc ) - # - ####################################### - - - # find moc and uic using qmake - QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") - QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") - - FILE(TO_CMAKE_PATH - "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) - FILE(TO_CMAKE_PATH - "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) - - SET(QT_MOC_EXECUTABLE - ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") - SET(QT_UIC_EXECUTABLE - ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") - - FIND_PROGRAM(QT_UIC3_EXECUTABLE - NAMES uic3 - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_RCC_EXECUTABLE - NAMES rcc - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE - NAMES qdbuscpp2xml - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE - NAMES qdbusxml2cpp - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - IF (QT_MOC_EXECUTABLE) - SET(QT_WRAP_CPP "YES") - ENDIF (QT_MOC_EXECUTABLE) - - IF (QT_UIC_EXECUTABLE) - SET(QT_WRAP_UI "YES") - ENDIF (QT_UIC_EXECUTABLE) - - - - MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) - - ###################################### - # - # Macros for building Qt files - # - ###################################### - - MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - - FOREACH(_current ${_inc_DIRS}) - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - ENDFOREACH(_current ${_inc_DIRS}) - ENDMACRO(QT4_GET_MOC_INC_DIRS) - - - MACRO (QT4_GENERATE_MOC infile outfile ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) - - SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file - - MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) - ENDMACRO (QT4_GENERATE_MOC) - - - # QT4_WRAP_CPP(outfiles inputfile ... ) - # TODO perhaps add support for -D, -U and other minor options - - MACRO (QT4_WRAP_CPP outfiles ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${it} - DEPENDS ${it}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) - - ENDMACRO (QT4_WRAP_CPP) - - - # QT4_WRAP_UI(outfiles inputfile ... ) - - MACRO (QT4_WRAP_UI outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_UIC_EXECUTABLE} - ARGS -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_WRAP_UI) - - - # QT4_ADD_RESOURCES(outfiles inputfile ... ) - # TODO perhaps consider adding support for compression and root options to rcc - - MACRO (QT4_ADD_RESOURCES outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(rc_path ${infile} PATH) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) - # parse file for dependencies - FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") - SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") - ENDFOREACH(_RC_FILE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_RCC_EXECUTABLE} - ARGS -name ${outfilename} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_ADD_RESOURCES) - - MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) - GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) - IF ( _nonamespace ) - SET(_params -N -m -p) - ELSE ( _nonamespace ) - SET(_params -m -p) - ENDIF ( _nonamespace ) - - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} - DEPENDS ${_infile}) - - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - - QT4_GENERATE_MOC(${_header} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - ENDMACRO(QT4_ADD_DBUS_INTERFACE) - - MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) - SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) - ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) - - # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES - MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) - GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) - # get the part before the ".xml" suffix - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) - STRING(TOLOWER ${_basename} _basename) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) - ENDMACRO(_QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES _sources) - FOREACH (_current_FILE ${ARGN}) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) - FOREACH (_current_FILE ${ARGN}) - SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) - - MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) - SET(_customName "${ARGV1}") - GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - - IF (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) - ELSE (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) - ENDIF (_customName) - - ADD_CUSTOM_COMMAND(OUTPUT ${_target} - COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} - DEPENDS ${_in_file} - ) - ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - - - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) - GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) - - SET(_optionalBasename "${ARGV4}") - IF (_optionalBasename) - SET(_basename ${_optionalBasename} ) - ELSE (_optionalBasename) - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) - STRING(TOLOWER ${_basename} _basename) - ENDIF (_optionalBasename) - - SET(_optionalClassName "${ARGV5}") - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - IF(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ELSE(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ENDIF(_optionalClassName) - - QT4_GENERATE_MOC(${_header} ${_moc}) - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - ENDMACRO(QT4_ADD_DBUS_ADAPTOR) - - MACRO(QT4_AUTOMOC) - QT4_GET_MOC_INC_DIRS(_moc_INCS) - - SET(_matching_FILES ) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # here. this is required to make bouic work correctly: - # we need to add generated .cpp files to the sources (to compile them), - # but we cannot let automoc handle them, as the .cpp files don't exist yet when - # cmake is run for the very first time on them -> however the .cpp files might - # exist at a later run. at that time we need to skip them, so that we don't add two - # different rules for the same moc file - GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - - IF ( NOT _skip AND EXISTS ${_abs_FILE} ) - - FILE(READ ${_abs_FILE} _contents) - - GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - - STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) - FOREACH (_current_MOC_INC ${_match}) - STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - - GET_filename_component(_basename ${_current_MOC} NAME_WE) - # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_moc_INCS} ${_header} -o ${_moc} - DEPENDS ${_header} - ) - - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) - ENDFOREACH (_current_MOC_INC) - ENDIF(_match) - ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_AUTOMOC) - - - - ###################################### - # - # decide if Qt got found - # - ###################################### - - # if the includes,libraries,moc,uic and rcc are found then we have it - IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "YES" ) - IF( NOT Qt4_FIND_QUIETLY) - IF (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") - ELSE (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") - ENDIF (WIN32) - ENDIF( NOT Qt4_FIND_QUIETLY) - ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "NO") - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF( Qt4_FIND_REQUIRED) - IF ( NOT QT_LIBRARY_DIR ) - MESSAGE(STATUS "Qt libraries NOT found!") - ENDIF(NOT QT_LIBRARY_DIR ) - IF ( NOT QT_INCLUDE_DIR ) - MESSAGE(STATUS "Qt includes NOT found!") - ENDIF( NOT QT_INCLUDE_DIR ) - IF ( NOT QT_MOC_EXECUTABLE ) - MESSAGE(STATUS "Qt's moc NOT found!") - ENDIF( NOT QT_MOC_EXECUTABLE ) - IF ( NOT QT_UIC_EXECUTABLE ) - MESSAGE(STATUS "Qt's uic NOT found!") - ENDIF( NOT QT_UIC_EXECUTABLE ) - IF ( NOT QT_RCC_EXECUTABLE ) - MESSAGE(STATUS "Qt's rcc NOT found!") - ENDIF( NOT QT_RCC_EXECUTABLE ) - MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") - ENDIF( Qt4_FIND_REQUIRED) - ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET(QT_FOUND ${QT4_FOUND}) - - - ####################################### - # - # System dependent settings - # - ####################################### - # for unix add X11 stuff - IF(UNIX) - # on OS X X11 may not be required - IF (Q_WS_X11) - FIND_PACKAGE(X11 REQUIRED) - ENDIF (Q_WS_X11) - FIND_PACKAGE(Threads) - SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - ENDIF(UNIX) - - - ####################################### - # - # compatibility settings - # - ####################################### - # Backwards compatibility for CMake1.4 and 1.2 - SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) - SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) - - SET( QT_QT_LIBRARY "") - -ELSE(QT4_QMAKE_FOUND) - - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ELSE(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE( FATAL_ERROR "Qt qmake not found!") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) - ELSE(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - ENDIF(Qt4_FIND_REQUIRED) - -ENDIF (QT4_QMAKE_FOUND) - +# - Find QT 4 +# This module can be used to find Qt4. +# The most important issue is that the Qt4 qmake is available via the system path. +# This qmake is then used to detect basically everything else. +# This module defines a number of key variables and macros. First is +# QT_USE_FILE which is the path to a CMake file that can be included to compile +# Qt 4 applications and libraries. By default, the QtCore and QtGui +# libraries are loaded. This behavior can be changed by setting one or more +# of the following variables to true: +# QT_DONT_USE_QTCORE +# QT_DONT_USE_QTGUI +# QT_USE_QT3SUPPORT +# QT_USE_QTASSISTANT +# QT_USE_QTDESIGNER +# QT_USE_QTMOTIF +# QT_USE_QTMAIN +# QT_USE_QTNETWORK +# QT_USE_QTNSPLUGIN +# QT_USE_QTOPENGL +# QT_USE_QTSQL +# QT_USE_QTXML +# QT_USE_QTSVG +# QT_USE_QTTEST +# QT_USE_QTUITOOLS +# QT_USE_QTDBUS +# +# All the libraries required are stored in a variable called QT_LIBRARIES. +# Add this variable to your TARGET_LINK_LIBRARIES. +# +# macro QT4_WRAP_CPP(outfiles inputfile ... ) +# macro QT4_WRAP_UI(outfiles inputfile ... ) +# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) +# macro QT4_AUTOMOC(inputfile ... ) +# macro QT4_GENERATE_MOC(inputfile outputfile ) +# +# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) +# create a the interface header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) +# create the interface header and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) +# create a the interface without namespace header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) +# create the interface header without namespace and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) +# create a dbus adaptor (header and implementation file) from the xml file +# describing the interface, and add it to the list of sources. The adaptor +# forwards the calls to a parent class, defined in parentheader and named +# parentclassname. The name of the generated files will be +# adaptor.{cpp,h} where basename is the basename of the xml file. +# +# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) +# generate the xml interface file from the given header. +# If the optional argument interfacename is omitted, the name of the +# interface file is constructed from the basename of the header with +# the suffix .xml appended. +# +# QT_FOUND If false, don't try to use Qt. +# QT4_FOUND If false, don't try to use Qt 4. +# +# QT_QTCORE_FOUND True if QtCore was found. +# QT_QTGUI_FOUND True if QtGui was found. +# QT_QT3SUPPORT_FOUND True if Qt3Support was found. +# QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTDBUS_FOUND True if QtDBus was found. +# QT_QTDESIGNER_FOUND True if QtDesigner was found. +# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. +# QT_QTMOTIF_FOUND True if QtMotif was found. +# QT_QTNETWORK_FOUND True if QtNetwork was found. +# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. +# QT_QTOPENGL_FOUND True if QtOpenGL was found. +# QT_QTSQL_FOUND True if QtSql was found. +# QT_QTXML_FOUND True if QtXml was found. +# QT_QTSVG_FOUND True if QtSvg was found. +# QT_QTSCRIPT_FOUND True if QtScript was found. +# QT_QTTEST_FOUND True if QtTest was found. +# QT_QTUITOOLS_FOUND True if QtUiTools was found. +# +# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. +# +# QT_INCLUDES List of paths to all include directories of +# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are +# always in this variable even if NOTFOUND, +# all other INCLUDE_DIRS are +# only added if they are found. +# +# QT_INCLUDE_DIR Path to "include" of Qt4 +# QT_QT_INCLUDE_DIR Path to "include/Qt" +# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" +# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" +# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" +# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" +# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" +# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" +# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" +# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" +# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" +# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" +# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" +# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" +# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" +# +# QT_LIBRARY_DIR Path to "lib" of Qt4 +# +# QT_PLUGINS_DIR Path to "plugins" for Qt4 +# +# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. +# +# So there are the following variables: +# The Qt3Support library: QT_QT3SUPPORT_LIBRARY +# +# The QtAssistant library: QT_QTASSISTANT_LIBRARY +# +# The QtCore library: QT_QTCORE_LIBRARY +# +# The QtDBus library: QT_QTDBUS_LIBRARY +# +# The QtDesigner library: QT_QTDESIGNER_LIBRARY +# +# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY +# +# The QtGui library: QT_QTGUI_LIBRARY +# +# The QtMotif library: QT_QTMOTIF_LIBRARY +# +# The QtNetwork library: QT_QTNETWORK_LIBRARY +# +# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY +# +# The QtOpenGL library: QT_QTOPENGL_LIBRARY +# +# The QtSql library: QT_QTSQL_LIBRARY +# +# The QtXml library: QT_QTXML_LIBRARY +# +# The QtSvg library: QT_QTSVG_LIBRARY +# +# The QtScript library: QT_QTSCRIPT_LIBRARY +# +# The QtTest library: QT_QTTEST_LIBRARY +# +# The qtmain library for Windows QT_QTMAIN_LIBRARY +# +# The QtUiTools library: QT_QTUITOOLS_LIBRARY +# +# also defined, but NOT for general use are +# QT_MOC_EXECUTABLE Where to find the moc tool. +# QT_UIC_EXECUTABLE Where to find the uic tool. +# QT_UIC3_EXECUTABLE Where to find the uic3 tool. +# QT_RCC_EXECUTABLE Where to find the rcc tool +# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. +# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. +# +# QT_DOC_DIR Path to "doc" of Qt4 +# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 +# +# +# These are around for backwards compatibility +# they will be set +# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found +# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found +# +# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) +# QT_MT_REQUIRED Qt4 is now always multithreaded +# +# These variables are set to "" Because Qt structure changed +# (They make no sense in Qt4) +# QT_QT_LIBRARY Qt-Library is now split + +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + +INCLUDE(CheckSymbolExists) +INCLUDE(MacroAddFileDependencies) +INCLUDE(MacroPushRequiredVars) + +SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) + +SET( QT_DEFINITIONS "") + +IF (WIN32) + SET(QT_DEFINITIONS -DQT_DLL) +ENDIF(WIN32) + +SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) + +# macro for asking qmake to process pro files +MACRO(QT_QUERY_QMAKE outvar invar) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro + "message(CMAKE_MESSAGE<$$${invar}>)") + + EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} + WORKING_DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake + OUTPUT_VARIABLE _qmake_query_output + ERROR_VARIABLE _qmake_query_output ) + + FILE(REMOVE_RECURSE + "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") + + STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") +ENDMACRO(QT_QUERY_QMAKE) + +# check for qmake +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin +) + +IF (QT_QMAKE_EXECUTABLE) + + SET(QT4_QMAKE_FOUND FALSE) + + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + + # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path + IF("${QTVERSION}" MATCHES "Unknown") + SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) + FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin + ) + IF(QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + ENDIF(QT_QMAKE_EXECUTABLE) + ENDIF("${QTVERSION}" MATCHES "Unknown") + + # check that we found the Qt4 qmake, Qt3 qmake output won't match here + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") + IF (qt_version_tmp) + + # we need at least version 4.0.0 + IF (NOT QT_MIN_VERSION) + SET(QT_MIN_VERSION "4.0.0") + ENDIF (NOT QT_MIN_VERSION) + + #now parse the parts of the user given version string into variables + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") + IF (NOT req_qt_major_vers) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers) + + # now parse the parts of the user given version string into variables + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + + IF (NOT req_qt_major_vers EQUAL 4) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers EQUAL 4) + + # and now the version string given by qmake + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") + MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") + + IF (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND FALSE) + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) + ELSE (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND TRUE) + ENDIF (found_vers LESS req_vers) + ENDIF (qt_version_tmp) + +ENDIF (QT_QMAKE_EXECUTABLE) + +IF (QT4_QMAKE_FOUND) + + # ask qmake for the library dir + # Set QT_LIBRARY_DIR + IF (NOT QT_LIBRARY_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_LIBS" + OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + IF(EXISTS "${QT_LIBRARY_DIR_TMP}") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") + ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") + ENDIF(NOT QT_LIBRARY_DIR) + + IF (APPLE) + IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS ON + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS OFF + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) + ENDIF (APPLE) + + # ask qmake for the binary dir + IF (NOT QT_BINARY_DIR) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + ENDIF (NOT QT_BINARY_DIR) + + # ask qmake for the include dir + IF (NOT QT_HEADERS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_HEADERS" + OUTPUT_VARIABLE qt_headers ) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + ENDIF(NOT QT_HEADERS_DIR) + + + # ask qmake for the documentation directory + IF (NOT QT_DOC_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_DOCS" + OUTPUT_VARIABLE qt_doc_dir ) + SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") + ENDIF (NOT QT_DOC_DIR) + + # ask qmake for the mkspecs directory + IF (NOT QT_MKSPECS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QMAKE_MKSPECS" + OUTPUT_VARIABLE qt_mkspecs_dir ) + SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") + ENDIF (NOT QT_MKSPECS_DIR) + + # ask qmake for the plugins directory + IF (NOT QT_PLUGINS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_PLUGINS" + OUTPUT_VARIABLE qt_plugins_dir ) + SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") + ENDIF (NOT QT_PLUGINS_DIR) + ######################################## + # + # Setting the INCLUDE-Variables + # + ######################################## + + FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal + ${QT_HEADERS_DIR}/QtCore + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} + IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF (QT_USE_FRAMEWORKS) + SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) + ELSE (QT_USE_FRAMEWORKS) + STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) + SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + ENDIF (QT_USE_FRAMEWORKS) + ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + + IF( NOT QT_INCLUDE_DIR) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_INCLUDE_DIR) + + ############################################# + # + # Find out what window system we're using + # + ############################################# + # Save required includes and required_flags variables + macro_push_required_vars() + # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES + SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") + # On Mac OS X when Qt has framework support, also add the framework path + IF( QT_USE_FRAMEWORKS ) + SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") + ENDIF( QT_USE_FRAMEWORKS ) + # Check for Window system symbols (note: only one should end up being set) + CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) + CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + + IF (QT_QTCOPY_REQUIRED) + CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) + IF (NOT QT_IS_QTCOPY) + MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") + ENDIF (NOT QT_IS_QTCOPY) + ENDIF (QT_QTCOPY_REQUIRED) + + # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables + macro_pop_required_vars() + # + ############################################# + + IF (QT_USE_FRAMEWORKS) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) + ENDIF (QT_USE_FRAMEWORKS) + + # Set QT_QT3SUPPORT_INCLUDE_DIR + FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support + PATHS + ${QT_INCLUDE_DIR}/Qt3Support + ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QT_INCLUDE_DIR + FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h + PATHS + ${QT_INCLUDE_DIR}/Qt + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTGUI_INCLUDE_DIR + FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui + PATHS + ${QT_INCLUDE_DIR}/QtGui + ${QT_LIBRARY_DIR}/QtGui.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg + PATHS + ${QT_INCLUDE_DIR}/QtSvg + ${QT_LIBRARY_DIR}/QtSvg.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript + PATHS + ${QT_INCLUDE_DIR}/QtScript + ${QT_LIBRARY_DIR}/QtScript.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTTEST_INCLUDE_DIR + FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest + PATHS + ${QT_INCLUDE_DIR}/QtTest + ${QT_LIBRARY_DIR}/QtTest.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTUITOOLS_INCLUDE_DIR + FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools + PATHS + ${QT_INCLUDE_DIR}/QtUiTools + ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers + NO_DEFAULT_PATH + ) + + + + # Set QT_QTMOTIF_INCLUDE_DIR + IF(Q_WS_X11) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_INCLUDE_DIR + FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork + PATHS + ${QT_INCLUDE_DIR}/QtNetwork + ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTNSPLUGIN_INCLUDE_DIR + FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin + PATHS + ${QT_INCLUDE_DIR}/QtNsPlugin + ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTOPENGL_INCLUDE_DIR + FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL + PATHS + ${QT_INCLUDE_DIR}/QtOpenGL + ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSQL_INCLUDE_DIR + FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql + PATHS + ${QT_INCLUDE_DIR}/QtSql + ${QT_LIBRARY_DIR}/QtSql.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTXML_INCLUDE_DIR + FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml + PATHS + ${QT_INCLUDE_DIR}/QtXml + ${QT_LIBRARY_DIR}/QtXml.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTASSISTANT_INCLUDE_DIR + FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant + PATHS + ${QT_INCLUDE_DIR}/QtAssistant + ${QT_HEADERS_DIR}/QtAssistant + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNER_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + + # Set QT_QTDBUS_INCLUDE_DIR + FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus + PATHS + ${QT_INCLUDE_DIR}/QtDBus + ${QT_HEADERS_DIR}/QtDBus + NO_DEFAULT_PATH + ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) + + # Set QT_INCLUDES + SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) + + + ######################################## + # + # Setting the LIBRARY-Variables + # + ######################################## + + IF (QT_USE_FRAMEWORKS) + # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have + # to jump through these hoops. + IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND TRUE) + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND TRUE) + SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND TRUE) + SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND TRUE) + SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND TRUE) + SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND TRUE) + SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND TRUE) + SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND TRUE) + SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND TRUE) + SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND TRUE) + SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + + # WTF? why don't we have frameworks? :P + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) + + ELSE (QT_USE_FRAMEWORKS) + + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCore4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + + # Set QT_QT3SUPPORT_LIBRARY + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Support4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTGUI_LIBRARY + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGui4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMOTIF_LIBRARY + IF(Q_WS_X11) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_LIBRARY + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetwork4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTNSPLUGIN_LIBRARY + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTOPENGL_LIBRARY + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGL4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSQL_LIBRARY + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSql4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTXML_LIBRARY + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXml4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSVG_LIBRARY + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvg4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScript4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiTools4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTTEST_LIBRARY + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTest4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBus4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + IF(MSVC) + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(MSVC) + ENDIF (QT_USE_FRAMEWORKS) + + IF( NOT QT_QTCORE_LIBRARY ) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_QTCORE_LIBRARY ) + + # Set QT_QTASSISTANT_LIBRARY + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistant4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNER_LIBRARY + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNERCOMPONENTS_LIBRARY + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponents4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMAIN_LIBRARY + IF(WIN32) + FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(WIN32) + + ############################################ + # + # Check the existence of the libraries. + # + ############################################ + + MACRO (_QT4_ADJUST_LIB_VARS basename) + IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF(MSVC) + + # Both set + IF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + + # Only debug was found + IF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) + + # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + + ENDIF(MSVC) + + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") + + IF (QT_${basename}_LIBRARY) + SET(QT_${basename}_FOUND 1) + ENDIF (QT_${basename}_LIBRARY) + + ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF (QT_${basename}_INCLUDE_DIR) + #add the include directory to QT_INCLUDES + SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + ENDIF (QT_${basename}_INCLUDE_DIR) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) + ENDMACRO (_QT4_ADJUST_LIB_VARS) + + + # Set QT_xyz_LIBRARY variable and add + # library include path to QT_INCLUDES + _QT4_ADJUST_LIB_VARS(QTCORE) + _QT4_ADJUST_LIB_VARS(QTGUI) + _QT4_ADJUST_LIB_VARS(QT3SUPPORT) + _QT4_ADJUST_LIB_VARS(QTASSISTANT) + _QT4_ADJUST_LIB_VARS(QTDESIGNER) + _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) + _QT4_ADJUST_LIB_VARS(QTNETWORK) + _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) + _QT4_ADJUST_LIB_VARS(QTOPENGL) + _QT4_ADJUST_LIB_VARS(QTSQL) + _QT4_ADJUST_LIB_VARS(QTXML) + _QT4_ADJUST_LIB_VARS(QTSVG) + _QT4_ADJUST_LIB_VARS(QTSCRIPT) + _QT4_ADJUST_LIB_VARS(QTUITOOLS) + _QT4_ADJUST_LIB_VARS(QTTEST) + _QT4_ADJUST_LIB_VARS(QTDBUS) + + + # platform dependent libraries + IF(Q_WS_X11) + _QT4_ADJUST_LIB_VARS(QTMOTIF) + ENDIF(Q_WS_X11) + IF(WIN32) + _QT4_ADJUST_LIB_VARS(QTMAIN) + ENDIF(WIN32) + + ####################################### + # + # Check the executables of Qt + # ( moc, uic, rcc ) + # + ####################################### + + + # find moc and uic using qmake + QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") + QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") + + FILE(TO_CMAKE_PATH + "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) + FILE(TO_CMAKE_PATH + "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) + + SET(QT_MOC_EXECUTABLE + ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") + SET(QT_UIC_EXECUTABLE + ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") + + FIND_PROGRAM(QT_UIC3_EXECUTABLE + NAMES uic3 + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_RCC_EXECUTABLE + NAMES rcc + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE + NAMES qdbuscpp2xml + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE + NAMES qdbusxml2cpp + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + IF (QT_MOC_EXECUTABLE) + SET(QT_WRAP_CPP "YES") + ENDIF (QT_MOC_EXECUTABLE) + + IF (QT_UIC_EXECUTABLE) + SET(QT_WRAP_UI "YES") + ENDIF (QT_UIC_EXECUTABLE) + + + + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) + + ###################################### + # + # Macros for building Qt files + # + ###################################### + + MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) + SET(${_moc_INC_DIRS}) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + + FOREACH(_current ${_inc_DIRS}) + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) + + + MACRO (QT4_GENERATE_MOC infile outfile ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) + + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${abs_infile} + DEPENDS ${abs_infile}) + + SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + + MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) + ENDMACRO (QT4_GENERATE_MOC) + + + # QT4_WRAP_CPP(outfiles inputfile ... ) + # TODO perhaps add support for -D, -U and other minor options + + MACRO (QT4_WRAP_CPP outfiles ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${it} + DEPENDS ${it}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + + ENDMACRO (QT4_WRAP_CPP) + + + # QT4_WRAP_UI(outfiles inputfile ... ) + + MACRO (QT4_WRAP_UI outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_WRAP_UI) + + + # QT4_ADD_RESOURCES(outfiles inputfile ... ) + # TODO perhaps consider adding support for compression and root options to rcc + + MACRO (QT4_ADD_RESOURCES outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(rc_path ${infile} PATH) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + # parse file for dependencies + FILE(READ "${infile}" _RC_FILE_CONTENTS) + STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") + SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") + ENDFOREACH(_RC_FILE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_RCC_EXECUTABLE} + ARGS -name ${outfilename} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_ADD_RESOURCES) + + MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) + GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) + IF ( _nonamespace ) + SET(_params -N -m -p) + ELSE ( _nonamespace ) + SET(_params -m -p) + ENDIF ( _nonamespace ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} + DEPENDS ${_infile}) + + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + + QT4_GENERATE_MOC(${_header} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + ENDMACRO(QT4_ADD_DBUS_INTERFACE) + + MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) + SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) + ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) + + # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES + MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) + GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) + # get the part before the ".xml" suffix + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) + STRING(TOLOWER ${_basename} _basename) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + ENDMACRO(_QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) + FOREACH (_current_FILE ${ARGN}) + SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) + + MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) + SET(_customName "${ARGV1}") + GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) + + IF (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) + ELSE (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + ENDIF (_customName) + + ADD_CUSTOM_COMMAND(OUTPUT ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} + DEPENDS ${_in_file} + ) + ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) + + + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) + GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) + + SET(_optionalBasename "${ARGV4}") + IF (_optionalBasename) + SET(_basename ${_optionalBasename} ) + ELSE (_optionalBasename) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) + STRING(TOLOWER ${_basename} _basename) + ENDIF (_optionalBasename) + + SET(_optionalClassName "${ARGV5}") + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + IF(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ELSE(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ENDIF(_optionalClassName) + + QT4_GENERATE_MOC(${_header} ${_moc}) + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + ENDMACRO(QT4_ADD_DBUS_ADAPTOR) + + MACRO(QT4_AUTOMOC) + QT4_GET_MOC_INC_DIRS(_moc_INCS) + + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # here. this is required to make bouic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) + + IF ( NOT _skip AND EXISTS ${_abs_FILE} ) + + FILE(READ ${_abs_FILE} _contents) + + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_filename_component(_basename ${_current_MOC} NAME_WE) + # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_AUTOMOC) + + + + ###################################### + # + # decide if Qt got found + # + ###################################### + + # if the includes,libraries,moc,uic and rcc are found then we have it + IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "YES" ) + IF( NOT Qt4_FIND_QUIETLY) + IF (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") + ELSE (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") + ENDIF (WIN32) + ENDIF( NOT Qt4_FIND_QUIETLY) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "NO") + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF( Qt4_FIND_REQUIRED) + IF ( NOT QT_LIBRARY_DIR ) + MESSAGE(STATUS "Qt libraries NOT found!") + ENDIF(NOT QT_LIBRARY_DIR ) + IF ( NOT QT_INCLUDE_DIR ) + MESSAGE(STATUS "Qt includes NOT found!") + ENDIF( NOT QT_INCLUDE_DIR ) + IF ( NOT QT_MOC_EXECUTABLE ) + MESSAGE(STATUS "Qt's moc NOT found!") + ENDIF( NOT QT_MOC_EXECUTABLE ) + IF ( NOT QT_UIC_EXECUTABLE ) + MESSAGE(STATUS "Qt's uic NOT found!") + ENDIF( NOT QT_UIC_EXECUTABLE ) + IF ( NOT QT_RCC_EXECUTABLE ) + MESSAGE(STATUS "Qt's rcc NOT found!") + ENDIF( NOT QT_RCC_EXECUTABLE ) + MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + ENDIF( Qt4_FIND_REQUIRED) + ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET(QT_FOUND ${QT4_FOUND}) + + + ####################################### + # + # System dependent settings + # + ####################################### + # for unix add X11 stuff + IF(UNIX) + # on OS X X11 may not be required + IF (Q_WS_X11) + FIND_PACKAGE(X11 REQUIRED) + ENDIF (Q_WS_X11) + FIND_PACKAGE(Threads) + SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + ENDIF(UNIX) + + + ####################################### + # + # compatibility settings + # + ####################################### + # Backwards compatibility for CMake1.4 and 1.2 + SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + + SET( QT_QT_LIBRARY "") + +ELSE(QT4_QMAKE_FOUND) + + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ELSE(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE( FATAL_ERROR "Qt qmake not found!") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) + ELSE(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + ENDIF(Qt4_FIND_REQUIRED) + +ENDIF (QT4_QMAKE_FOUND) + -- cgit v1.2.1 From c0980c740022e025fb6c089092f03992ac8a90ba Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 9 Jul 2007 15:27:27 +0000 Subject: As posted to kde-buildsystem: I replaced kde4automoc.cmake with a C++/QtCore based program that can run more efficient. Instead of creating a .automoc file that is added to the target I create a _automoc.cpp file now that is compiled and linked into the target. This file #includes all moc files that are not included by other source files. This way the automoc can, at make-time, decide what mocs need to be compiled explicitly and linked into the target. E.g. the following is possible now: foo.h: class A : public QObject { Q_OBJECT ... }; foo.cpp does not #include "foo.moc" run make - everything compiles and links fine (without mentioning the header in KDE4_MOC_HEADERS either since the new automoc looks at all corresponding header files from the .cpp files by itself) now change foo.cpp to #include "foo.moc" running make now will just work, even with the /fast target. Next change I did was to create a _automoc.cpp.files file to pass the moc includes and the source files that belong to the target to the automoc. I could have kept it on the command line but I got a report that the command line was already too long for Windows' cmd.exe. Implementation details: - The messages of the automoc are written using cmake -E cmake_echo_color, so the automoc correctly colorizes its messages now. - The moc QProcesses are started in parallel (up to 10). svn path=/trunk/KDE/kdelibs/; revision=685719 --- modules/FindKDE4Internal.cmake | 14 +++++++++ modules/KDE4Macros.cmake | 67 +++++++++++++++++------------------------- 2 files changed, 41 insertions(+), 40 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ac7c6e43..24803eab 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -16,6 +16,7 @@ # compile KDE software: # # KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable +# KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable # KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable # KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable # @@ -389,11 +390,13 @@ if (_kdeBootStrapping) set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc ) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) + set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc.shell ) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) endif (WIN32) @@ -402,6 +405,7 @@ if (_kdeBootStrapping) # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + set( _KDE4_AUTOMOC_EXECUTABLE_DEP kde4automoc) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) @@ -411,6 +415,7 @@ else (_kdeBootStrapping) # ... but NOT otherwise set( _KDE4_KCONFIG_COMPILER_DEP) + set( _KDE4_AUTOMOC_EXECUTABLE_DEP) set( _KDE4_MAKEKDEWIDGETS_DEP) set( _KDE4_MEINPROC_EXECUTABLE_DEP) @@ -530,6 +535,9 @@ else (_kdeBootStrapping) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) + find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc ) + find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) @@ -864,6 +872,12 @@ macro (KDE4_PRINT_RESULTS) else(KDE4_KCFGC_EXECUTABLE) message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") endif(KDE4_KCFGC_EXECUTABLE) + + if(KDE4_AUTOMOC_EXECUTABLE) + message(STATUS "Found KDE4 automoc: ${KDE4_AUTOMOC_EXECUTABLE}") + else(KDE4_AUTOMOC_EXECUTABLE) + message(STATUS "Didn't find the KDE4 automoc") + endif(KDE4_AUTOMOC_EXECUTABLE) endmacro (KDE4_PRINT_RESULTS) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 3da9c5a1..d9891727 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -8,7 +8,6 @@ # KDE4_SET_CUSTOM_TARGET_PROPERTY # KDE4_GET_CUSTOM_TARGET_PROPERTY # KDE4_MOC_HEADERS -# KDE4_APPEND_MOC_FILES # KDE4_HANDLE_AUTOMOC # KDE4_INSTALL_LIBTOOL_FILE # KDE4_CREATE_FINAL_FILES @@ -184,25 +183,21 @@ macro (KDE4_MOC_HEADERS _target_NAME) endif(_headers_to_moc) endmacro (KDE4_MOC_HEADERS) -macro(KDE4_APPEND_MOC_FILES _target_name _SRCS) - KDE4_GET_CUSTOM_TARGET_PROPERTY(_headers_to_moc ${_target_name} AUTOMOC_HEADERS) - if(NOT _headers_to_moc STREQUAL "NOTFOUND") - qt4_get_moc_inc_dirs(_moc_INCS) - foreach (_current_FILE ${_headers_to_moc}) - get_filename_component(_basename "${_current_FILE}" NAME_WE) - set(_moc "${CMAKE_CURRENT_BINARY_DIR}/moc_${_basename}.cpp") - set_source_files_properties(${_moc} PROPERTIES GENERATED TRUE) - set(${_SRCS} ${${_SRCS}} ${_moc}) - add_custom_command(OUTPUT ${_moc} COMMAND ${QT_MOC_EXECUTABLE} ${_moc_INCS} ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} -o ${_moc} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE}) - endforeach (_current_FILE) - endif(NOT _headers_to_moc STREQUAL "NOTFOUND") -endmacro(KDE4_APPEND_MOC_FILES) - macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) - set(_mark_file "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}.automoc") set(_moc_files) set(_moc_headers) + + # first list all explicitly set headers + KDE4_GET_CUSTOM_TARGET_PROPERTY(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) + if(NOT _headers_to_moc STREQUAL "NOTFOUND") + foreach(_header_to_moc ${_headers_to_moc}) + get_filename_component(_abs_header ${_header_to_moc} ABSOLUTE) + set(_moc_files ${_moc_files} ${_abs_header}) + set(_moc_headers ${_moc_headers} ${_abs_header}) + endforeach(_header_to_moc) + endif(NOT _headers_to_moc STREQUAL "NOTFOUND") + + # now add all the sources for the automoc foreach (_current_FILE ${${_SRCS}}) get_filename_component(_abs_current_FILE "${_current_FILE}" ABSOLUTE) get_source_file_property(_skip "${_abs_current_FILE}" SKIP_AUTOMOC) @@ -215,28 +210,25 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) if(EXISTS "${_header}") set(_moc_headers ${_moc_headers} ${_header}) endif(EXISTS "${_header}") - #macro_additional_clean_files("${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc") - #macro_additional_clean_files("${CMAKE_CURRENT_BINARY_DIR}/moc_${_basename}.cpp") - set(_moc_files "${_moc_files}\;${_abs_current_FILE}") + set(_moc_files ${_moc_files} ${_abs_current_FILE}) endif(NOT _generated AND NOT _skip) endforeach (_current_FILE) - set(_moc_incs) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - FOREACH(_current ${_inc_DIRS}) - SET(_moc_incs "${_moc_incs}\;-I\;${_current}") - ENDFOREACH(_current) - add_custom_command(OUTPUT ${_mark_file} - COMMAND ${CMAKE_COMMAND} - -DKDE4_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} - -DQT_MOC_EXECUTABLE=${QT_MOC_EXECUTABLE} - -DQT_MOC_INCS="${_moc_incs}" - -DMOC_FILES="${_moc_files}" - -DMARK_FILE="${_mark_file}" - -P ${KDE4_MODULE_DIR}/kde4automoc.cmake - DEPENDS ${${_SRCS}} ${_moc_headers} + set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") + GET_DIRECTORY_PROPERTY(_moc_incs INCLUDE_DIRECTORIES) + FILE(WRITE ${_automoc_source}.files "MOC_INCLUDES:\n${_moc_incs}\nSOURCES:\n${_moc_files}") + add_custom_command(OUTPUT ${_automoc_source} + COMMAND ${KDE4_AUTOMOC_EXECUTABLE} + ${_automoc_source} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${QT_MOC_EXECUTABLE} + DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} ) - set(${_SRCS} ${${_SRCS}} ${_mark_file}) + # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file + # problem: the whole target is recompiled when the automoc.cpp file is touched + # set_source_files_properties(${${_SRCS}} PROPERTIES OBJECT_DEPENDS ${_automoc_source}) + set(${_SRCS} ${_automoc_source} ${${_SRCS}}) endmacro(KDE4_HANDLE_AUTOMOC) macro(KDE4_CREATE_PO_FILES) @@ -655,7 +647,6 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") set(_SRCS ${_first_SRC} ${ARGN}) - kde4_append_moc_files(${_target_NAME} _SRCS) kde4_handle_automoc(${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) @@ -743,7 +734,6 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # else (WIN32) # under UNIX, create a shared library and a small executable, which links to this library - kde4_append_moc_files(${_target_NAME} _SRCS) kde4_handle_automoc(kdeinit_${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) @@ -804,7 +794,6 @@ macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) set(_SRCS ${ARGN}) - kde4_append_moc_files(${_target_NAME} _SRCS) kde4_handle_automoc(${_target_NAME} _SRCS) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) @@ -847,7 +836,6 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set(_type "RUN_UNINSTALLED") endif (_uninst) - kde4_append_moc_files(${_target_NAME} _SRCS) kde4_handle_automoc(${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) @@ -885,7 +873,6 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endif (${_lib_TYPE} STREQUAL "MODULE") set(_SRCS ${_first_SRC} ${ARGN}) - kde4_append_moc_files(${_target_NAME} _SRCS) kde4_handle_automoc(${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) -- cgit v1.2.1 From 5e5a57da10f0fe4905e82d6de85207923799dbc1 Mon Sep 17 00:00:00 2001 From: Frank Osterfeld Date: Mon, 9 Jul 2007 16:47:15 +0000 Subject: it's d4, not 4d svn path=/trunk/KDE/kdelibs/; revision=685741 --- modules/FindQt4.cmake | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e7cd9d83..c0921140 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -648,13 +648,13 @@ IF (QT4_QMAKE_FOUND) ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCore4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Support4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGui4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMOTIF_LIBRARY IF(Q_WS_X11) @@ -662,33 +662,33 @@ IF (QT4_QMAKE_FOUND) ENDIF(Q_WS_X11) # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetwork4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTNSPLUGIN_LIBRARY FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGL4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSql4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXml4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvg4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScript4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiTools4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTest4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBus4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) IF(MSVC) FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -704,7 +704,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(MSVC) @@ -717,13 +717,13 @@ IF (QT4_QMAKE_FOUND) ENDIF( NOT QT_QTCORE_LIBRARY ) # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistant4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesigner4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNERCOMPONENTS_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponents4d PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMAIN_LIBRARY IF(WIN32) -- cgit v1.2.1 From d0007a2a50c9847bc12e62d244c8239715c2f8cf Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 9 Jul 2007 19:05:26 +0000 Subject: - use libasound to list virtual devices (I'm actually only interested in custom ones defined in e.g. ~/.asoundrc), currently still shows too much - adapt to Solid::AudioInterface change svn path=/trunk/KDE/kdelibs/; revision=685785 --- modules/FindAlsa.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index 966841a9..ee63f252 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -26,16 +26,16 @@ else(HAVE_LIBASOUND2) message(STATUS "ALSA not found") endif(HAVE_LIBASOUND2) set(ALSA_FOUND HAVE_LIBASOUND2) +FIND_PATH(ALSA_INCLUDES alsa/version.h) MACRO(ALSA_VERSION_STRING _result) # check for version in alsa/version.h - FIND_PATH(_ALSA_INCLUDE_DIR alsa/version.h) - IF(_ALSA_INCLUDE_DIR) - FILE(READ "${_ALSA_INCLUDE_DIR}/alsa/version.h" _ALSA_VERSION_CONTENT) + IF(ALSA_INCLUDES) + FILE(READ "${ALSA_INCLUDES}/alsa/version.h" _ALSA_VERSION_CONTENT) STRING(REGEX REPLACE ".*SND_LIB_VERSION_STR.*\"(.*)\".*" "\\1" ${_result} ${_ALSA_VERSION_CONTENT}) - ELSE(_ALSA_INCLUDE_DIR) + ELSE(ALSA_INCLUDES) MESSAGE(STATUS "ALSA version not known. ALSA output will probably not work correctly.") - ENDIF(_ALSA_INCLUDE_DIR) + ENDIF(ALSA_INCLUDES) ENDMACRO(ALSA_VERSION_STRING _result) get_filename_component(_FIND_ALSA_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) -- cgit v1.2.1 From 70dc85a661b066111d0aa63b64618e35b8d1e7fc Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 9 Jul 2007 21:02:13 +0000 Subject: cmake touches all .files files which results in all automocs being rerun and the targets relinked. :-( Change the dependency back to the CMakeLists.txt file, still not great but a lot better. svn path=/trunk/KDE/kdelibs/; revision=685841 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d9891727..586a6739 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -223,7 +223,7 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${QT_MOC_EXECUTABLE} - DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} + DEPENDS ${${_SRCS}} ${_moc_headers} ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${_KDE4_AUTOMOC_EXECUTABLE_DEP} ) # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file # problem: the whole target is recompiled when the automoc.cpp file is touched -- cgit v1.2.1 From d7afe91db8b90db6b6aab69430270895ea3546d4 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 9 Jul 2007 21:33:47 +0000 Subject: Duplicate from cmake module which inform when module is not install. I will send an email to cmake dev but not today, it's very difficult to have an adsl connection in my hostel svn path=/trunk/KDE/kdelibs/; revision=685861 --- modules/UsePkgConfig.cmake | 50 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 modules/UsePkgConfig.cmake (limited to 'modules') diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake new file mode 100644 index 00000000..a3f831e5 --- /dev/null +++ b/modules/UsePkgConfig.cmake @@ -0,0 +1,50 @@ +# - pkg-config module for CMake +# +# Defines the following macros: +# +# PKGCONFIG(package includedir libdir linkflags cflags) +# +# Calling PKGCONFIG will fill the desired information into the 4 given arguments, +# e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS) +# if pkg-config was NOT found or the specified software package doesn't exist, the +# variable will be empty when the function returns, otherwise they will contain the respective information +# + + + +FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) + +MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) +# reset the variables at the beginning + SET(${_include_DIR}) + SET(${_link_DIR}) + SET(${_link_FLAGS}) + SET(${_cflags}) + # if pkg-config has been found + IF(PKGCONFIG_EXECUTABLE) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + + # and if the package of interest also exists for pkg-config, then get the information + IF(NOT _return_VALUE) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir OUTPUT_VARIABLE ${_link_DIR} ) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs OUTPUT_VARIABLE ${_link_FLAGS} ) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) + + ELSE( NOT _return_VALUE) + + MESSAGE(STATUS "PKGCONFIG macro signal that ${_package} is not installed on your computer.") + MESSAGE(STATUS "Install package which contains ${_package}.pc if you want to support this feature.") + + ENDIF(NOT _return_VALUE) + + ENDIF(PKGCONFIG_EXECUTABLE) + +ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) + +MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) -- cgit v1.2.1 From b6fb631baeacc8232830d5e3f05ac467b8b2f1f0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 10 Jul 2007 02:50:18 +0000 Subject: remove unnecessary default search dirs Alex svn path=/trunk/KDE/kdelibs/; revision=685920 --- modules/FindIW.cmake | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindIW.cmake b/modules/FindIW.cmake index 68245216..902002d8 100644 --- a/modules/FindIW.cmake +++ b/modules/FindIW.cmake @@ -11,21 +11,14 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (IW_INCLUDE_DIR) +IF (IW_INCLUDE_DIR) # Already in cache, be silent - set(IW_FIND_QUIETLY TRUE) -endif (IW_INCLUDE_DIR) - -FIND_PATH(IW_INCLUDE_DIR iwlib.h - /usr/include - /usr/local/include -) - -FIND_LIBRARY(IW_LIBRARIES NAMES iw - PATHS - /usr/lib - /usr/local/lib -) + SET(IW_FIND_QUIETLY TRUE) +ENDIF (IW_INCLUDE_DIR) + +FIND_PATH(IW_INCLUDE_DIR iwlib.h) + +FIND_LIBRARY(IW_LIBRARIES NAMES iw) IF(IW_INCLUDE_DIR AND IW_LIBRARIES) SET(IW_FOUND TRUE) -- cgit v1.2.1 From 9acfb803ba35333263c31040f9fce81c2ac7bc0c Mon Sep 17 00:00:00 2001 From: Frank Osterfeld Date: Tue, 10 Jul 2007 06:51:36 +0000 Subject: fix HAVE_ALSA svn path=/trunk/KDE/kdelibs/; revision=685954 --- modules/FindAlsa.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index ee63f252..b4f28d0a 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -25,7 +25,7 @@ if(HAVE_LIBASOUND2) else(HAVE_LIBASOUND2) message(STATUS "ALSA not found") endif(HAVE_LIBASOUND2) -set(ALSA_FOUND HAVE_LIBASOUND2) +set(ALSA_FOUND ${HAVE_LIBASOUND2}) FIND_PATH(ALSA_INCLUDES alsa/version.h) MACRO(ALSA_VERSION_STRING _result) -- cgit v1.2.1 From cf2cfaf67614854651a5b754d718e2478ea042ad Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 10 Jul 2007 11:08:43 +0000 Subject: added support for searching cmake modules in all given kde install locations (KDEDIRS based) svn path=/trunk/KDE/kdelibs/; revision=686007 --- modules/FindKDE4Internal.cmake | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 24803eab..063531fc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -263,6 +263,28 @@ get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) if (NOT _kdeBootStrapping) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + + # allow searching cmake modules in all given kde install locations (KDEDIRS based) + exec_program(kde4-config ARGS --path data OUTPUT_VARIABLE _data_DIR) + file(TO_CMAKE_PATH "${_data_DIR}" _data_DIR) + foreach(dir ${_data_DIR}) + set (apath ${dir}/cmake/modules) + if (EXISTS ${apath}) + set (included 0) + STRING(TOLOWER ${apath} _apath) + # ignore already added pathes, case insensitive + foreach(adir ${CMAKE_MODULE_PATH}) + STRING(TOLOWER ${adir} _adir) + if (${_adir} STREQUAL ${_apath}) + set (included 1) + endif (${_adir} STREQUAL ${_apath}) + endforeach(adir) + if (NOT included) + message(STATUS "Adding ${dir}/cmake/modules to CMAKE_MODULE_PATH") + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${dir}/cmake/modules) + endif (NOT included) + endif (EXISTS ${apath}) + endforeach(dir) endif (NOT _kdeBootStrapping) # this macro implements some very special logic how to deal with the cache -- cgit v1.2.1 From 2d7cbc4447dd922bf8dc070d6f3c8aab796d6893 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 11 Jul 2007 01:34:37 +0000 Subject: -use ${KDE4_KDECONFIG_EXECUTABLE} coming from FindKDE4.cmake instead of just calling kde4-config which might be the wrong one or not in the path at all -some more qoutes can't hurt for dirs with spaces -use EXECUTE_PROCESS() instead of EXEC_PROGRAM() since this can separate stdout and stderr Alex svn path=/trunk/KDE/kdelibs/; revision=686304 --- modules/FindKDE4Internal.cmake | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 063531fc..3cfcecfd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -262,28 +262,28 @@ get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) if (NOT _kdeBootStrapping) # this file contains all dependencies of all libraries of kdelibs, Alex - include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) - + include("${kde_cmake_module_dir}/KDELibsDependencies.cmake") + # allow searching cmake modules in all given kde install locations (KDEDIRS based) - exec_program(kde4-config ARGS --path data OUTPUT_VARIABLE _data_DIR) + execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) file(TO_CMAKE_PATH "${_data_DIR}" _data_DIR) foreach(dir ${_data_DIR}) - set (apath ${dir}/cmake/modules) - if (EXISTS ${apath}) + set (apath "${dir}/cmake/modules") + if (EXISTS "${apath}") set (included 0) - STRING(TOLOWER ${apath} _apath) + string(TOLOWER "${apath}" _apath) # ignore already added pathes, case insensitive foreach(adir ${CMAKE_MODULE_PATH}) - STRING(TOLOWER ${adir} _adir) - if (${_adir} STREQUAL ${_apath}) + string(TOLOWER "${adir}" _adir) + if ("${_adir}" STREQUAL "${_apath}") set (included 1) - endif (${_adir} STREQUAL ${_apath}) - endforeach(adir) + endif ("${_adir}" STREQUAL "${_apath}") + endforeach(adir) if (NOT included) - message(STATUS "Adding ${dir}/cmake/modules to CMAKE_MODULE_PATH") - set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${dir}/cmake/modules) + message(STATUS "Adding ${apath} to CMAKE_MODULE_PATH") + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${apath}") endif (NOT included) - endif (EXISTS ${apath}) + endif (EXISTS "${apath}") endforeach(dir) endif (NOT _kdeBootStrapping) -- cgit v1.2.1 From f0bf2b11156fcb76f86b37298a29b759fb89af92 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 11 Jul 2007 13:24:12 +0000 Subject: Remove the no-op KDE4_AUTOMOC() macro. This call should be removed from all CMakeLists.txt file now. If I missed some, and you encounter problems, simply remove the call yourself from the offending CMakeLists.txt file. svn path=/trunk/KDE/kdelibs/; revision=686496 --- modules/KDE4Macros.cmake | 5 ----- 1 file changed, 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 586a6739..50ef3591 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -4,7 +4,6 @@ # KDE4_ADD_UI_FILES # KDE4_ADD_UI3_FILES # KDE4_ADD_KCFG_FILES -# KDE4_AUTOMOC # KDE4_SET_CUSTOM_TARGET_PROPERTY # KDE4_GET_CUSTOM_TARGET_PROPERTY # KDE4_MOC_HEADERS @@ -152,10 +151,6 @@ macro (KDE4_ADD_UI3_FILES _sources ) endforeach (_current_FILE) endmacro (KDE4_ADD_UI3_FILES) -# keep it here until it is removed everywhere -macro (KDE4_AUTOMOC) -endmacro (KDE4_AUTOMOC) - macro (KDE4_SET_CUSTOM_TARGET_PROPERTY _target_name _property_name _property) string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(_kde4_${_dir}_${_target_name}_${_property_name} "${_property}") -- cgit v1.2.1 From dbd9ded5439638a7d5599268acc6aa9e8f34f664 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 12 Jul 2007 02:56:08 +0000 Subject: -instead of simply removing KDE4_AUTOMOC(), it is better to make it just do message(SEND_ERROR), so the user gets a useful error message instead of suddenly "unknown command" -same for KDE4_INSTALL_LIBTOOL_FILE() -also remove the docs for both macros from FindKDE4Internal.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=686696 --- modules/FindKDE4Internal.cmake | 15 --------------- modules/KDE4Macros.cmake | 34 ++++++++-------------------------- 2 files changed, 8 insertions(+), 41 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3cfcecfd..96bbc66d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -127,21 +127,6 @@ # Use this to add widget description files for the makekdewidgets code generator # for Qt Designer plugins. # -# KDE4_AUTOMOC(file1 ... fileN) -# Call this if you want to have automatic moc file handling. -# This means if you include "foo.moc" in the source file foo.cpp -# a moc file for the header foo.h will be created automatically. -# You can set the property SKIP_AUTOMAKE using SET_SOURCE_FILES_PROPERTIES() -# to exclude some files in the list from being processed. -# If you don't want automoc, you can also use QT4_WRAP_CPP() or QT4_GENERATE_MOC() -# from FindQt4.cmake to have the moc files generated. This will be faster -# but require more manual work. -# -# KDE4_INSTALL_LIBTOOL_FILE ( subdir target ) -# This will create and install a simple libtool file for the -# given target. This might be required for other software. -# The libtool file will be install in subdir, relative to CMAKE_INSTALL_PREFIX . -# # KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) # This macro is intended mainly for internal uses. # It is used for enable-final. It will generate two source files, diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 50ef3591..606f8a9e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -8,7 +8,6 @@ # KDE4_GET_CUSTOM_TARGET_PROPERTY # KDE4_MOC_HEADERS # KDE4_HANDLE_AUTOMOC -# KDE4_INSTALL_LIBTOOL_FILE # KDE4_CREATE_FINAL_FILES # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_UNIT_TEST @@ -151,16 +150,22 @@ macro (KDE4_ADD_UI3_FILES _sources ) endforeach (_current_FILE) endmacro (KDE4_ADD_UI3_FILES) +macro (KDE4_AUTOMOC) + message(SEND_ERROR "KDE4_AUTOMOC() is not required anymore for automoc, please remove it") +endmacro (KDE4_AUTOMOC) + macro (KDE4_SET_CUSTOM_TARGET_PROPERTY _target_name _property_name _property) string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(_kde4_${_dir}_${_target_name}_${_property_name} "${_property}") endmacro (KDE4_SET_CUSTOM_TARGET_PROPERTY) + macro (KDE4_GET_CUSTOM_TARGET_PROPERTY _var _target_name _property_name) string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(${_var} "${_kde4_${_dir}_${_target_name}_${_property_name}}") endmacro (KDE4_GET_CUSTOM_TARGET_PROPERTY) + macro (KDE4_MOC_HEADERS _target_NAME) set (_headers_to_moc) foreach (_current_FILE ${ARGN}) @@ -482,31 +487,8 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) endmacro (KDE4_INSTALL_ICONS) -MACRO (KDE4_INSTALL_LIBTOOL_FILE _subdir _target) - GET_TARGET_PROPERTY(_target_location ${_target} LOCATION) - - GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE) - GET_FILENAME_COMPONENT(_soname ${_target_location} NAME) - set(_laname ${LIBRARY_OUTPUT_PATH}/${_laname}.la) - - FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n") - FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n") - FILE(APPEND ${_laname} "dlname='${_soname}'\n") - FILE(APPEND ${_laname} "# Names of this library\n") - FILE(APPEND ${_laname} "library_names='${_soname} ${_soname} ${_soname}'\n") - FILE(APPEND ${_laname} "# The name of the static archive\n") - FILE(APPEND ${_laname} "old_library=''\n") - FILE(APPEND ${_laname} "# Libraries that this one depends upon.\n") - FILE(APPEND ${_laname} "dependency_libs=''\n") -# FILE(APPEND ${_laname} "dependency_libs='${${_target}_LIB_DEPENDS}'\n") - FILE(APPEND ${_laname} "# Version information.\ncurrent=0\nage=0\nrevision=0\n") - FILE(APPEND ${_laname} "# Is this an already installed library?\ninstalled=yes\n") - 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}/${_subdir}'\n") - - INSTALL(FILES ${_laname} DESTINATION ${_subdir}) +MACRO (KDE4_INSTALL_LIBTOOL_FILE) + message(SEND_ERROR "KDE4_INSTALL_LIBTOOL_FILE() is deprecated, please remove it") ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) -- cgit v1.2.1 From ffdfd12a80c61d5b5a4abf96de76e5e1702fb619 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Thu, 12 Jul 2007 08:15:33 +0000 Subject: Use configure_file instead of file(write ...) so that the file is only touched when it really changes. Now the automoc target may depend on that file and doesn't have to depend on CMakeLists.txt anymore. svn path=/trunk/KDE/kdelibs/; revision=686821 --- modules/KDE4Macros.cmake | 5 +++-- modules/kde4automoc.files.in | 4 ++++ 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 modules/kde4automoc.files.in (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 606f8a9e..5613c8d6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -203,6 +203,7 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) get_source_file_property(_skip "${_abs_current_FILE}" SKIP_AUTOMOC) get_source_file_property(_generated "${_abs_current_FILE}" GENERATED) + # TODO: skip every source file that's not C++ if(NOT _generated AND NOT _skip) get_filename_component(_basename "${_current_FILE}" NAME_WE) get_filename_component(_abs_path "${_abs_current_FILE}" PATH) @@ -216,14 +217,14 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") GET_DIRECTORY_PROPERTY(_moc_incs INCLUDE_DIRECTORIES) - FILE(WRITE ${_automoc_source}.files "MOC_INCLUDES:\n${_moc_incs}\nSOURCES:\n${_moc_files}") + CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) add_custom_command(OUTPUT ${_automoc_source} COMMAND ${KDE4_AUTOMOC_EXECUTABLE} ${_automoc_source} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${QT_MOC_EXECUTABLE} - DEPENDS ${${_SRCS}} ${_moc_headers} ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${_KDE4_AUTOMOC_EXECUTABLE_DEP} + DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} ) # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file # problem: the whole target is recompiled when the automoc.cpp file is touched diff --git a/modules/kde4automoc.files.in b/modules/kde4automoc.files.in new file mode 100644 index 00000000..011c52a3 --- /dev/null +++ b/modules/kde4automoc.files.in @@ -0,0 +1,4 @@ +MOC_INCLUDES: +@_moc_incs@ +SOURCES: +@_moc_files@ -- cgit v1.2.1 From 9c71e133413a902b050c220ce1d614624e47fa9c Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Thu, 12 Jul 2007 11:09:34 +0000 Subject: Fix the build, by installing the new kde4automoc.files.in file svn path=/trunk/KDE/kdelibs/; revision=686887 --- modules/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 1e12a3aa..e8eba2e1 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -4,7 +4,7 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in ${cmakeFiles} DESTINATION ${module_install_dir} ) +install( FILES kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex #set(FILES_TO_REMOVE -- cgit v1.2.1 From 5022067c856b1d82e0acdf2f9279fdc5ad772eb1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 12 Jul 2007 18:48:22 +0000 Subject: -remove a lot of code duplication for the icon stuff by using "maps" instead of if/endif, this should even make it extendable for 3rd party themes Alex svn path=/trunk/KDE/kdelibs/; revision=687034 --- modules/KDE4Macros.cmake | 181 ++++++++++++++--------------------------------- 1 file changed, 53 insertions(+), 128 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 5613c8d6..dfa2571a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -283,7 +283,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2) - #Bootsrap + #Bootstrap if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") @@ -305,7 +305,7 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) set(_bootstrapOption) - #Bootsrap + #Bootstrap if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") @@ -320,68 +320,45 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) add_custom_target(htmlhandbook ALL DEPENDS ${_doc}) endmacro (KDE4_CREATE_HTML_HANDBOOK) -# only used internally by KDE4_INSTALL_ICONS -MACRO (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) - - # if the string doesn't match the pattern, the result is the full string, so all three have the same content - IF (NOT ${_group} STREQUAL ${_install_NAME} ) - SET(_icon_GROUP "actions") - - # KDE 3 compatibility - IF (${_group} STREQUAL "mime") - SET(_icon_GROUP "mimetypes") - ENDIF (${_group} STREQUAL "mime") - - IF (${_group} STREQUAL "filesys") - SET(_icon_GROUP "places") - ENDIF (${_group} STREQUAL "filesys") - - IF (${_group} STREQUAL "device") - SET(_icon_GROUP "devices") - ENDIF (${_group} STREQUAL "device") - - IF (${_group} STREQUAL "app") - SET(_icon_GROUP "apps") - ENDIF (${_group} STREQUAL "app") - - IF (${_group} STREQUAL "action") - SET(_icon_GROUP "actions") - ENDIF (${_group} STREQUAL "action") - # KDE 4 - IF (${_group} STREQUAL "mimetypes") - SET(_icon_GROUP "mimetypes") - ENDIF (${_group} STREQUAL "mimetypes") +# a "map" of short type names to the directories +# unknown names should give empty results +# KDE 3 compatibility +set(_KDE4_ICON_GROUP_mime "mimetypes") +set(_KDE4_ICON_GROUP_filesys "places") +set(_KDE4_ICON_GROUP_device "devices") +set(_KDE4_ICON_GROUP_app "apps") +set(_KDE4_ICON_GROUP_action "actions") +# KDE 4 compatibility +set(_KDE4_ICON_GROUP_mimetypes "mimetypes") +set(_KDE4_ICON_GROUP_places "places") +set(_KDE4_ICON_GROUP_devices "devices") +set(_KDE4_ICON_GROUP_apps "apps") +set(_KDE4_ICON_GROUP_actions "actions") +set(_KDE4_ICON_GROUP_categories "categories") +set(_KDE4_ICON_GROUP_emblems "emblems") + +# a "map" of short theme names to the theme directory +set(_KDE4_ICON_THEME_ox "oxygen") +set(_KDE4_ICON_THEME_cr "crystalsvg") +set(_KDE4_ICON_THEME_lo "locolor") +set(_KDE4_ICON_THEME_hi "hicolor") - IF (${_group} STREQUAL "places") - SET(_icon_GROUP "places") - ENDIF (${_group} STREQUAL "places") - IF (${_group} STREQUAL "devices") - SET(_icon_GROUP "devices") - ENDIF (${_group} STREQUAL "devices") - - IF (${_group} STREQUAL "apps") - SET(_icon_GROUP "apps") - ENDIF (${_group} STREQUAL "apps") - - IF (${_group} STREQUAL "actions") - SET(_icon_GROUP "actions") - ENDIF (${_group} STREQUAL "actions") - - IF (${_group} STREQUAL "categories") - SET(_icon_GROUP "categories") - ENDIF (${_group} STREQUAL "categories") - - IF (${_group} STREQUAL "emblems") - SET(_icon_GROUP "emblems") - ENDIF (${_group} STREQUAL "emblems") +# only used internally by KDE4_INSTALL_ICONS +macro (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) + # if the string doesn't match the pattern, the result is the full string, so all three have the same content + if (NOT ${_group} STREQUAL ${_install_NAME} ) + set(_icon_GROUP ${_KDE4_ICON_GROUP_${_group}}) + if(NOT _icon_GROUP) + set(_icon_GROUP "actions") + endif(NOT _icon_GROUP) # message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - INSTALL(FILES ${_orig_NAME} DESTINATION ${_install_PATH}/${_icon_GROUP}/ RENAME ${_install_NAME} ) - ENDIF (NOT ${_group} STREQUAL ${_install_NAME} ) + install(FILES ${_orig_NAME} DESTINATION ${_install_PATH}/${_icon_GROUP}/ RENAME ${_install_NAME} ) + endif (NOT ${_group} STREQUAL ${_install_NAME} ) -ENDMACRO (_KDE4_ADD_ICON_INSTALL_RULE) +endmacro (_KDE4_ADD_ICON_INSTALL_RULE) macro (KDE4_INSTALL_ICONS _defaultpath ) @@ -393,30 +370,13 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _size "${_current_ICON}") string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") - set(_theme_GROUP "nogroup") - - if( ${_type} STREQUAL "ox" ) - set(_theme_GROUP "oxygen") - endif(${_type} STREQUAL "ox" ) - - if( ${_type} STREQUAL "cr" ) - set(_theme_GROUP "crystalsvg") - endif(${_type} STREQUAL "cr" ) - if( ${_type} STREQUAL "lo" ) - set(_theme_GROUP "locolor") - endif(${_type} STREQUAL "lo" ) - - if( ${_type} STREQUAL "hi" ) - set(_theme_GROUP "hicolor") - endif(${_type} STREQUAL "hi" ) - - if( NOT ${_theme_GROUP} STREQUAL "nogroup") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) + if( _theme_GROUP) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme_GROUP}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) - endif( NOT ${_theme_GROUP} STREQUAL "nogroup") - + endif( _theme_GROUP) endforeach (_current_ICON) # mng icons @@ -426,63 +386,28 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _size "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _group "${_current_ICON}") STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\4" _name "${_current_ICON}") - SET(_theme_GROUP "nogroup") - - if( ${_type} STREQUAL "ox" ) - SET(_theme_GROUP "oxygen") - endif(${_type} STREQUAL "ox" ) - if( ${_type} STREQUAL "cr" ) - SET(_theme_GROUP "crystalsvg") - endif(${_type} STREQUAL "cr" ) - - if( ${_type} STREQUAL "lo" ) - set(_theme_GROUP "locolor") - endif(${_type} STREQUAL "lo" ) - - if( ${_type} STREQUAL "hi" ) - set(_theme_GROUP "hicolor") - endif(${_type} STREQUAL "hi" ) - - if( NOT ${_theme_GROUP} STREQUAL "nogroup") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) + if( _theme_GROUP) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme_GROUP}/${_size}x${_size} ${_group} ${_current_ICON} ${_name}) - endif( NOT ${_theme_GROUP} STREQUAL "nogroup") - + endif( _theme_GROUP) endforeach (_current_ICON) - # and now the svg icons file(GLOB _icons *.svgz) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _type "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\3" _name "${_current_ICON}") - SET(_theme_GROUP "nogroup") - - if(${_type} STREQUAL "ox" ) - SET(_theme_GROUP "oxygen") - endif(${_type} STREQUAL "ox" ) - - if(${_type} STREQUAL "cr" ) - SET(_theme_GROUP "crystalsvg") - endif(${_type} STREQUAL "cr" ) - - if(${_type} STREQUAL "hi" ) - SET(_theme_GROUP "hicolor") - endif(${_type} STREQUAL "hi" ) - - if(${_type} STREQUAL "lo" ) - SET(_theme_GROUP "locolor") - endif(${_type} STREQUAL "lo" ) - - if( NOT ${_theme_GROUP} STREQUAL "nogroup") - _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake - ${_defaultpath}/${_theme_GROUP}/scalable - ${_group} ${_current_ICON} ${_name}) - endif( NOT ${_theme_GROUP} STREQUAL "nogroup") - + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _type "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _group "${_current_ICON}") + STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\3" _name "${_current_ICON}") + + set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) + if( _theme_GROUP) + _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake + ${_defaultpath}/${_theme_GROUP}/scalable + ${_group} ${_current_ICON} ${_name}) + endif( _theme_GROUP) endforeach (_current_ICON) endmacro (KDE4_INSTALL_ICONS) -- cgit v1.2.1 From 56615f2661cbbe7b0b2b86224bee8134524b82ee Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 13 Jul 2007 07:42:02 +0000 Subject: kde variable is not defined at the begining into kdelibs and if we search directly into include_install_dir Remove old compatibility variable svn path=/trunk/KDE/kdelibs/; revision=687269 --- modules/FindStrigi.cmake | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 04d6c2c1..fada801c 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -16,26 +16,22 @@ endif(WIN32) FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS $ENV{STRIGI_HOME}/include - ${INCLUDE_INSTALL_DIR} + ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include ) FIND_LIBRARY(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS $ENV{STRIGI_HOME}/lib - ${LIB_INSTALL_DIR} + ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ) FIND_LIBRARY(STRIGI_STREAMS_LIBRARY NAMES streams PATHS $ENV{STRIGI_HOME}/lib - ${LIB_INSTALL_DIR} + ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ) -# for compatibility, remove ASAP (next BC monday), Alex -SET(STREAMANALYZER_LIBRARY ${STRIGI_STREAMANALYZER_LIBRARY} ) -SET(STREAMS_LIBRARY ${STRIGI_STREAMS_LIBRARY}) - IF(STRIGI_INCLUDE_DIR AND STRIGI_STREAMANALYZER_LIBRARY AND STRIGI_STREAMS_LIBRARY) SET(STRIGI_FOUND TRUE) ENDIF(STRIGI_INCLUDE_DIR AND STRIGI_STREAMANALYZER_LIBRARY AND STRIGI_STREAMS_LIBRARY) -- cgit v1.2.1 From 4e46daf32647480c7d9e49c838101e8221e928ed Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 13 Jul 2007 07:50:04 +0000 Subject: only pass C++ source files to kde4automoc svn path=/trunk/KDE/kdelibs/; revision=687273 --- modules/KDE4Macros.cmake | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index dfa2571a..e692f8c6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -9,6 +9,7 @@ # KDE4_MOC_HEADERS # KDE4_HANDLE_AUTOMOC # KDE4_CREATE_FINAL_FILES +# KDE4_ADD_PLUGIN # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_UNIT_TEST # KDE4_ADD_TEST_EXECUTABLE @@ -203,15 +204,18 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) get_source_file_property(_skip "${_abs_current_FILE}" SKIP_AUTOMOC) get_source_file_property(_generated "${_abs_current_FILE}" GENERATED) - # TODO: skip every source file that's not C++ if(NOT _generated AND NOT _skip) - get_filename_component(_basename "${_current_FILE}" NAME_WE) - get_filename_component(_abs_path "${_abs_current_FILE}" PATH) - set(_header "${_abs_path}/${_basename}.h") - if(EXISTS "${_header}") - set(_moc_headers ${_moc_headers} ${_header}) - endif(EXISTS "${_header}") - set(_moc_files ${_moc_files} ${_abs_current_FILE}) + get_filename_component(_suffix "${_current_FILE}" EXT) + # skip every source file that's not C++ + if(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") + get_filename_component(_basename "${_current_FILE}" NAME_WE) + get_filename_component(_abs_path "${_abs_current_FILE}" PATH) + set(_header "${_abs_path}/${_basename}.h") + if(EXISTS "${_header}") + set(_moc_headers ${_moc_headers} ${_header}) + endif(EXISTS "${_header}") + set(_moc_files ${_moc_files} ${_abs_current_FILE}) + endif(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") endif(NOT _generated AND NOT _skip) endforeach (_current_FILE) -- cgit v1.2.1 From 044398c552f385bf7c66db81379f497e15b0486a Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 13 Jul 2007 20:18:04 +0000 Subject: alex says list(append is faster than set(foo ${foo} svn path=/trunk/KDE/kdelibs/; revision=687518 --- modules/KDE4Macros.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e692f8c6..af0f2448 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -172,7 +172,7 @@ macro (KDE4_MOC_HEADERS _target_NAME) foreach (_current_FILE ${ARGN}) get_filename_component(_suffix "${_current_FILE}" EXT) if (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - set (_headers_to_moc ${_headers_to_moc} ${_current_FILE}) + list(APPEND _headers_to_moc ${_current_FILE}) else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") message(STATUS "KDE4_MOC_HEADERS: ignoring non-header file ${_current_FILE}") endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") @@ -193,8 +193,8 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) if(NOT _headers_to_moc STREQUAL "NOTFOUND") foreach(_header_to_moc ${_headers_to_moc}) get_filename_component(_abs_header ${_header_to_moc} ABSOLUTE) - set(_moc_files ${_moc_files} ${_abs_header}) - set(_moc_headers ${_moc_headers} ${_abs_header}) + list(APPEND _moc_files ${_abs_header}) + list(APPEND _moc_headers ${_abs_header}) endforeach(_header_to_moc) endif(NOT _headers_to_moc STREQUAL "NOTFOUND") @@ -212,9 +212,9 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) get_filename_component(_abs_path "${_abs_current_FILE}" PATH) set(_header "${_abs_path}/${_basename}.h") if(EXISTS "${_header}") - set(_moc_headers ${_moc_headers} ${_header}) + list(APPEND _moc_headers ${_header}) endif(EXISTS "${_header}") - set(_moc_files ${_moc_files} ${_abs_current_FILE}) + list(APPEND _moc_files ${_abs_current_FILE}) endif(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") endif(NOT _generated AND NOT _skip) endforeach (_current_FILE) -- cgit v1.2.1 From 502d7d070802a88554fd6b2f6065f88873ebfc79 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 14 Jul 2007 11:17:16 +0000 Subject: Now kleopatra was moved to kdepimlibs svn path=/trunk/KDE/kdelibs/; revision=687792 --- modules/FindKdepimLibs.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 96b78c86..de282e3c 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -65,6 +65,9 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) + find_library(KDE4_KLEOPATRA_LIBRARY NAMES kleopatra PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KLEOPATRA_LIBS ${kleopatra_LIB_DEPENDS} ${KDE4_KLEOPATRA_LIBRARY} ) + find_library(KDE4_KXMLRPCCLIENT_LIBRARY NAMES kxmlrpcclient PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KXMLRPCCLIENT_LIBS ${kxmlrpcclient_LIB_DEPENDS} ${KDE4_KXMLRPCCLIENT_LIBRARY} ) -- cgit v1.2.1 From 5f2e345c139bf30b12d87f4fe5735e10983019a5 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Sat, 14 Jul 2007 14:26:01 +0000 Subject: not used anymore svn path=/trunk/KDE/kdelibs/; revision=687850 --- modules/kde4automoc.cmake | 89 ----------------------------------------------- 1 file changed, 89 deletions(-) delete mode 100644 modules/kde4automoc.cmake (limited to 'modules') diff --git a/modules/kde4automoc.cmake b/modules/kde4automoc.cmake deleted file mode 100644 index 718a47a4..00000000 --- a/modules/kde4automoc.cmake +++ /dev/null @@ -1,89 +0,0 @@ -# do the automoc handling - -# Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2007, Matthias Kretz, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -macro (generate_moc _moc_source _current_MOC) - set(_moc ${KDE4_CURRENT_BINARY_DIR}/${_current_MOC}) - - if ("${_moc_source}" IS_NEWER_THAN "${_moc}" OR _force_moc) - if($ENV{VERBOSE}) - message(STATUS "Automoc: Generating ${_moc} from ${_moc_source}") - else($ENV{VERBOSE}) - message(STATUS "Generating ${_current_MOC}") - endif($ENV{VERBOSE}) - execute_process(COMMAND ${QT_MOC_EXECUTABLE} ${QT_MOC_INCS} "${_moc_source}" -o "${_moc}") - endif ("${_moc_source}" IS_NEWER_THAN "${_moc}" OR _force_moc) -endmacro (generate_moc) - -STRING(REPLACE "\\ " " " MARK_FILE "${MARK_FILE}") -STRING(REPLACE "\\ " " " MOC_FILES "${MOC_FILES}") -STRING(REPLACE "\\ " " " QT_MOC_INCS "${QT_MOC_INCS}") -if (EXISTS "${MARK_FILE}") - set(_force_moc FALSE) -else (EXISTS "${MARK_FILE}") - set(_force_moc TRUE) -endif (EXISTS "${MARK_FILE}") -foreach(_filename ${MOC_FILES}) - get_filename_component(_name "${_filename}" NAME) - - get_filename_component(_abs_PATH "${_filename}" PATH) - get_filename_component(_basename "${_filename}" NAME_WE) - set(_moc_source ${_abs_PATH}/${_basename}.h) - if ("${_filename}" IS_NEWER_THAN "${MARK_FILE}" OR "${_moc_source}" IS_NEWER_THAN "${MARK_FILE}") - get_filename_component(_suffix "${_filename}" EXT) - if (".cpp" STREQUAL "${_suffix}" OR ".cc" STREQUAL "${_suffix}" OR ".cxx" STREQUAL "${_suffix}" OR ".C" STREQUAL "${_suffix}") - #message(STATUS "Automoc: Looking for outdated moc includes in ${_filename}") - - # read the whole file - file(READ ${_filename} _contents) - - string(REGEX MATCHALL "#include +([\"<]moc_[^ ]+\\.cpp|[^ ]+\\.moc)[\">]" _match "${_contents}") - if (_match) - foreach (_current_MOC_INC ${_match}) - string(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - if(_current_MOC) - get_filename_component(_basename ${_current_MOC} NAME_WE) - - # if the .cpp file contains the Q_OBJECT macro we create the .moc file from the .cpp file - if (_contents MATCHES "[\n\r][\t ]*Q_OBJECT") - set(_moc_source ${_filename}) - else (_contents MATCHES "[\n\r][\t ]*Q_OBJECT") - set(_moc_source ${_abs_PATH}/${_basename}.h) - endif (_contents MATCHES "[\n\r][\t ]*Q_OBJECT") - else(_current_MOC) - string(REGEX MATCH "moc_[^ <\"]+\\.cpp" _current_MOC "${_current_MOC_INC}") - get_filename_component(_basename ${_current_MOC} NAME_WE) - string(REPLACE "moc_" "" _basename "${_basename}") - - # always create moc_foo.cpp from the .h - set(_moc_source ${_abs_PATH}/${_basename}.h) - endif(_current_MOC) - - if (NOT EXISTS ${_moc_source}) - message(FATAL_ERROR "In the file \"${_filename}\" the moc file \"${_current_MOC}\" is included, but \"${_moc_source}\" doesn't exist.") - endif (NOT EXISTS ${_moc_source}) - - generate_moc(${_moc_source} ${_current_MOC}) - endforeach (_current_MOC_INC) - endif (_match) - else (".cpp" STREQUAL "${_suffix}" OR ".cc" STREQUAL "${_suffix}" OR ".cxx" STREQUAL "${_suffix}" OR ".C" STREQUAL "${_suffix}") - if (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - get_filename_component(_basename ${_filename} NAME_WE) - set(_current_MOC "moc_${_basename}.cpp") - generate_moc(${_filename} ${_current_MOC}) - else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - if($ENV{VERBOSE}) - message(STATUS "Automoc: ignoring file '${_filename}' with unknown suffix '${_suffix}'") - endif($ENV{VERBOSE}) - endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - endif (".cpp" STREQUAL "${_suffix}" OR ".cc" STREQUAL "${_suffix}" OR ".cxx" STREQUAL "${_suffix}" OR ".C" STREQUAL "${_suffix}") - endif ("${_filename}" IS_NEWER_THAN "${MARK_FILE}" OR "${_moc_source}" IS_NEWER_THAN "${MARK_FILE}") -endforeach(_filename) - -# touch .mark file -#message(STATUS "touch ${MARK_FILE}") -file(WRITE "${MARK_FILE}" "") -- cgit v1.2.1 From 3312108dd24796e1baa49a2d3d840438b5ac4108 Mon Sep 17 00:00:00 2001 From: Charles Connell Date: Sat, 14 Jul 2007 15:21:42 +0000 Subject: macro to find libkleo svn path=/trunk/KDE/kdelibs/; revision=687864 --- modules/FindLibkleo.cmake | 52 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 modules/FindLibkleo.cmake (limited to 'modules') diff --git a/modules/FindLibkleo.cmake b/modules/FindLibkleo.cmake new file mode 100644 index 00000000..3b70938e --- /dev/null +++ b/modules/FindLibkleo.cmake @@ -0,0 +1,52 @@ + + +if(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) + + # read from cache + set(LIBKLEO_FOUND TRUE) + +else(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) + + FIND_PATH(LIBKLEO_INCLUDE_DIR + NAMES + libkleo/libkleo_export.h + libkleo/ui/keyrequester.h + libklep/kleo/decryptjob.h + PATHS + /usr/include + /usr/local/include + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + + FIND_LIBRARY(LIBKLEO_LIBRARIES + NAMES + kleo-gpl + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + if(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) + set(LIBKLEO_FOUND TRUE) + endif(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) + + if(LIBKLEO_FOUND) + if(NOT LIBKLEO_FIND_QUIETLY) + message(STATUS "Found LIBKLEO: ${LIBKLEO_LIBRARIES}") + endif(NOT LIBKLEO_FIND_QUIETLY) + else(LIBKLEO_FOUND) + if(LIBKLEO_FIND_REQUIRED) + if(NOT LIBKLEO_INCLUDE_DIR) + message(STATUS "Could not find LIBKLEO includes.") + endif(NOT LIBKLEO_INCLUDE_DIR) + if(NOT LIBKLEO_LIBRARIES) + message(STATUS "Could not find LIBKLEO library.") + endif(NOT LIBKLEO_LIBRARIES) + endif(LIBKLEO_FIND_REQUIRED) + endif(LIBKLEO_FOUND) + +endif(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) + +mark_as_advanced(LIBKLEO_INCLUDE_DIR LIBKLEO_LIBRARIES) -- cgit v1.2.1 From 96617a29b5d56bdbf2e2ccc3404135152120e54e Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 14 Jul 2007 17:47:10 +0000 Subject: fix for msvc when find_package(Qt) is called more than once. see also http://lists.kde.org/?l=kde-buildsystem&m=118431477014099&w=2 Patch from nhuh put add web de svn path=/trunk/KDE/kdelibs/; revision=687903 --- modules/FindQt4.cmake | 2422 +++++++++++++++++++++++++------------------------ 1 file changed, 1221 insertions(+), 1201 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index c0921140..0dee28e8 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1,1201 +1,1221 @@ -# - Find QT 4 -# This module can be used to find Qt4. -# The most important issue is that the Qt4 qmake is available via the system path. -# This qmake is then used to detect basically everything else. -# This module defines a number of key variables and macros. First is -# QT_USE_FILE which is the path to a CMake file that can be included to compile -# Qt 4 applications and libraries. By default, the QtCore and QtGui -# libraries are loaded. This behavior can be changed by setting one or more -# of the following variables to true: -# QT_DONT_USE_QTCORE -# QT_DONT_USE_QTGUI -# QT_USE_QT3SUPPORT -# QT_USE_QTASSISTANT -# QT_USE_QTDESIGNER -# QT_USE_QTMOTIF -# QT_USE_QTMAIN -# QT_USE_QTNETWORK -# QT_USE_QTNSPLUGIN -# QT_USE_QTOPENGL -# QT_USE_QTSQL -# QT_USE_QTXML -# QT_USE_QTSVG -# QT_USE_QTTEST -# QT_USE_QTUITOOLS -# QT_USE_QTDBUS -# -# All the libraries required are stored in a variable called QT_LIBRARIES. -# Add this variable to your TARGET_LINK_LIBRARIES. -# -# macro QT4_WRAP_CPP(outfiles inputfile ... ) -# macro QT4_WRAP_UI(outfiles inputfile ... ) -# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) -# macro QT4_AUTOMOC(inputfile ... ) -# macro QT4_GENERATE_MOC(inputfile outputfile ) -# -# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) -# create a the interface header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) -# create the interface header and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) -# create a the interface without namespace header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) -# create the interface header without namespace and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) -# create a dbus adaptor (header and implementation file) from the xml file -# describing the interface, and add it to the list of sources. The adaptor -# forwards the calls to a parent class, defined in parentheader and named -# parentclassname. The name of the generated files will be -# adaptor.{cpp,h} where basename is the basename of the xml file. -# -# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) -# generate the xml interface file from the given header. -# If the optional argument interfacename is omitted, the name of the -# interface file is constructed from the basename of the header with -# the suffix .xml appended. -# -# QT_FOUND If false, don't try to use Qt. -# QT4_FOUND If false, don't try to use Qt 4. -# -# QT_QTCORE_FOUND True if QtCore was found. -# QT_QTGUI_FOUND True if QtGui was found. -# QT_QT3SUPPORT_FOUND True if Qt3Support was found. -# QT_QTASSISTANT_FOUND True if QtAssistant was found. -# QT_QTDBUS_FOUND True if QtDBus was found. -# QT_QTDESIGNER_FOUND True if QtDesigner was found. -# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. -# QT_QTMOTIF_FOUND True if QtMotif was found. -# QT_QTNETWORK_FOUND True if QtNetwork was found. -# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. -# QT_QTOPENGL_FOUND True if QtOpenGL was found. -# QT_QTSQL_FOUND True if QtSql was found. -# QT_QTXML_FOUND True if QtXml was found. -# QT_QTSVG_FOUND True if QtSvg was found. -# QT_QTSCRIPT_FOUND True if QtScript was found. -# QT_QTTEST_FOUND True if QtTest was found. -# QT_QTUITOOLS_FOUND True if QtUiTools was found. -# -# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. -# -# QT_INCLUDES List of paths to all include directories of -# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are -# always in this variable even if NOTFOUND, -# all other INCLUDE_DIRS are -# only added if they are found. -# -# QT_INCLUDE_DIR Path to "include" of Qt4 -# QT_QT_INCLUDE_DIR Path to "include/Qt" -# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" -# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" -# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" -# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" -# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" -# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" -# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" -# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" -# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" -# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" -# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" -# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" -# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# -# QT_LIBRARY_DIR Path to "lib" of Qt4 -# -# QT_PLUGINS_DIR Path to "plugins" for Qt4 -# -# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. -# -# So there are the following variables: -# The Qt3Support library: QT_QT3SUPPORT_LIBRARY -# -# The QtAssistant library: QT_QTASSISTANT_LIBRARY -# -# The QtCore library: QT_QTCORE_LIBRARY -# -# The QtDBus library: QT_QTDBUS_LIBRARY -# -# The QtDesigner library: QT_QTDESIGNER_LIBRARY -# -# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY -# -# The QtGui library: QT_QTGUI_LIBRARY -# -# The QtMotif library: QT_QTMOTIF_LIBRARY -# -# The QtNetwork library: QT_QTNETWORK_LIBRARY -# -# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY -# -# The QtOpenGL library: QT_QTOPENGL_LIBRARY -# -# The QtSql library: QT_QTSQL_LIBRARY -# -# The QtXml library: QT_QTXML_LIBRARY -# -# The QtSvg library: QT_QTSVG_LIBRARY -# -# The QtScript library: QT_QTSCRIPT_LIBRARY -# -# The QtTest library: QT_QTTEST_LIBRARY -# -# The qtmain library for Windows QT_QTMAIN_LIBRARY -# -# The QtUiTools library: QT_QTUITOOLS_LIBRARY -# -# also defined, but NOT for general use are -# QT_MOC_EXECUTABLE Where to find the moc tool. -# QT_UIC_EXECUTABLE Where to find the uic tool. -# QT_UIC3_EXECUTABLE Where to find the uic3 tool. -# QT_RCC_EXECUTABLE Where to find the rcc tool -# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. -# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. -# -# QT_DOC_DIR Path to "doc" of Qt4 -# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 -# -# -# These are around for backwards compatibility -# they will be set -# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found -# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found -# -# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) -# QT_MT_REQUIRED Qt4 is now always multithreaded -# -# These variables are set to "" Because Qt structure changed -# (They make no sense in Qt4) -# QT_QT_LIBRARY Qt-Library is now split - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -INCLUDE(CheckSymbolExists) -INCLUDE(MacroAddFileDependencies) -INCLUDE(MacroPushRequiredVars) - -SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) - -SET( QT_DEFINITIONS "") - -IF (WIN32) - SET(QT_DEFINITIONS -DQT_DLL) -ENDIF(WIN32) - -SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) - -# macro for asking qmake to process pro files -MACRO(QT_QUERY_QMAKE outvar invar) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro - "message(CMAKE_MESSAGE<$$${invar}>)") - - EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} - WORKING_DIRECTORY - ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake - OUTPUT_VARIABLE _qmake_query_output - ERROR_VARIABLE _qmake_query_output ) - - FILE(REMOVE_RECURSE - "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") - - STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") -ENDMACRO(QT_QUERY_QMAKE) - -# check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin -) - -IF (QT_QMAKE_EXECUTABLE) - - SET(QT4_QMAKE_FOUND FALSE) - - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - - # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path - IF("${QTVERSION}" MATCHES "Unknown") - SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) - FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin - ) - IF(QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - ENDIF(QT_QMAKE_EXECUTABLE) - ENDIF("${QTVERSION}" MATCHES "Unknown") - - # check that we found the Qt4 qmake, Qt3 qmake output won't match here - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") - IF (qt_version_tmp) - - # we need at least version 4.0.0 - IF (NOT QT_MIN_VERSION) - SET(QT_MIN_VERSION "4.0.0") - ENDIF (NOT QT_MIN_VERSION) - - #now parse the parts of the user given version string into variables - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") - IF (NOT req_qt_major_vers) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers) - - # now parse the parts of the user given version string into variables - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") - - IF (NOT req_qt_major_vers EQUAL 4) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers EQUAL 4) - - # and now the version string given by qmake - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") - - # compute an overall version number which can be compared at once - MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") - MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") - - IF (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND FALSE) - SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) - ELSE (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND TRUE) - ENDIF (found_vers LESS req_vers) - ENDIF (qt_version_tmp) - -ENDIF (QT_QMAKE_EXECUTABLE) - -IF (QT4_QMAKE_FOUND) - - # ask qmake for the library dir - # Set QT_LIBRARY_DIR - IF (NOT QT_LIBRARY_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_LIBS" - OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") - ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") - ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") - ENDIF(NOT QT_LIBRARY_DIR) - - IF (APPLE) - IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS ON - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS OFF - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) - ENDIF (APPLE) - - # ask qmake for the binary dir - IF (NOT QT_BINARY_DIR) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (NOT QT_BINARY_DIR) - - # ask qmake for the include dir - IF (NOT QT_HEADERS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(NOT QT_HEADERS_DIR) - - - # ask qmake for the documentation directory - IF (NOT QT_DOC_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_DOCS" - OUTPUT_VARIABLE qt_doc_dir ) - SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") - ENDIF (NOT QT_DOC_DIR) - - # ask qmake for the mkspecs directory - IF (NOT QT_MKSPECS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QMAKE_MKSPECS" - OUTPUT_VARIABLE qt_mkspecs_dir ) - SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") - ENDIF (NOT QT_MKSPECS_DIR) - - # ask qmake for the plugins directory - IF (NOT QT_PLUGINS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_PLUGINS" - OUTPUT_VARIABLE qt_plugins_dir ) - SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") - ENDIF (NOT QT_PLUGINS_DIR) - ######################################## - # - # Setting the INCLUDE-Variables - # - ######################################## - - FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal - ${QT_HEADERS_DIR}/QtCore - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - IF (QT_USE_FRAMEWORKS) - SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) - ELSE (QT_USE_FRAMEWORKS) - STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) - SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") - ENDIF (QT_USE_FRAMEWORKS) - ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - - IF( NOT QT_INCLUDE_DIR) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_INCLUDE_DIR) - - ############################################# - # - # Find out what window system we're using - # - ############################################# - # Save required includes and required_flags variables - macro_push_required_vars() - # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES - SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") - # On Mac OS X when Qt has framework support, also add the framework path - IF( QT_USE_FRAMEWORKS ) - SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") - ENDIF( QT_USE_FRAMEWORKS ) - # Check for Window system symbols (note: only one should end up being set) - CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) - CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) - CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) - CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) - - IF (QT_QTCOPY_REQUIRED) - CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) - IF (NOT QT_IS_QTCOPY) - MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") - ENDIF (NOT QT_IS_QTCOPY) - ENDIF (QT_QTCOPY_REQUIRED) - - # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables - macro_pop_required_vars() - # - ############################################# - - IF (QT_USE_FRAMEWORKS) - SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) - ENDIF (QT_USE_FRAMEWORKS) - - # Set QT_QT3SUPPORT_INCLUDE_DIR - FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support - PATHS - ${QT_INCLUDE_DIR}/Qt3Support - ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QT_INCLUDE_DIR - FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h - PATHS - ${QT_INCLUDE_DIR}/Qt - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTGUI_INCLUDE_DIR - FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui - PATHS - ${QT_INCLUDE_DIR}/QtGui - ${QT_LIBRARY_DIR}/QtGui.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg - PATHS - ${QT_INCLUDE_DIR}/QtSvg - ${QT_LIBRARY_DIR}/QtSvg.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript - PATHS - ${QT_INCLUDE_DIR}/QtScript - ${QT_LIBRARY_DIR}/QtScript.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTTEST_INCLUDE_DIR - FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest - PATHS - ${QT_INCLUDE_DIR}/QtTest - ${QT_LIBRARY_DIR}/QtTest.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTUITOOLS_INCLUDE_DIR - FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools - PATHS - ${QT_INCLUDE_DIR}/QtUiTools - ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers - NO_DEFAULT_PATH - ) - - - - # Set QT_QTMOTIF_INCLUDE_DIR - IF(Q_WS_X11) - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_INCLUDE_DIR - FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork - PATHS - ${QT_INCLUDE_DIR}/QtNetwork - ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTNSPLUGIN_INCLUDE_DIR - FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin - PATHS - ${QT_INCLUDE_DIR}/QtNsPlugin - ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTOPENGL_INCLUDE_DIR - FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL - PATHS - ${QT_INCLUDE_DIR}/QtOpenGL - ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSQL_INCLUDE_DIR - FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql - PATHS - ${QT_INCLUDE_DIR}/QtSql - ${QT_LIBRARY_DIR}/QtSql.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTXML_INCLUDE_DIR - FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml - PATHS - ${QT_INCLUDE_DIR}/QtXml - ${QT_LIBRARY_DIR}/QtXml.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTASSISTANT_INCLUDE_DIR - FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant - PATHS - ${QT_INCLUDE_DIR}/QtAssistant - ${QT_HEADERS_DIR}/QtAssistant - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNER_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - - # Set QT_QTDBUS_INCLUDE_DIR - FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus - PATHS - ${QT_INCLUDE_DIR}/QtDBus - ${QT_HEADERS_DIR}/QtDBus - NO_DEFAULT_PATH - ) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) - - # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) - - - ######################################## - # - # Setting the LIBRARY-Variables - # - ######################################## - - IF (QT_USE_FRAMEWORKS) - # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have - # to jump through these hoops. - IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND TRUE) - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND TRUE) - SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND TRUE) - SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND TRUE) - SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND TRUE) - SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND TRUE) - SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND TRUE) - SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND TRUE) - SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND TRUE) - SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND TRUE) - SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - - # WTF? why don't we have frameworks? :P - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) - - ELSE (QT_USE_FRAMEWORKS) - - # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - - # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMOTIF_LIBRARY - IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - IF(MSVC) - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(MSVC) - ENDIF (QT_USE_FRAMEWORKS) - - IF( NOT QT_QTCORE_LIBRARY ) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_QTCORE_LIBRARY ) - - # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNERCOMPONENTS_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMAIN_LIBRARY - IF(WIN32) - FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(WIN32) - - ############################################ - # - # Check the existence of the libraries. - # - ############################################ - - MACRO (_QT4_ADJUST_LIB_VARS basename) - IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF(MSVC) - - # Both set - IF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - - # Only debug was found - IF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (NOT QT_${basename}_LIBRARY AND QT_${basename}_LIBRARY_DEBUG) - - # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - - ENDIF(MSVC) - - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") - - IF (QT_${basename}_LIBRARY) - SET(QT_${basename}_FOUND 1) - ENDIF (QT_${basename}_LIBRARY) - - ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF (QT_${basename}_INCLUDE_DIR) - #add the include directory to QT_INCLUDES - SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") - ENDIF (QT_${basename}_INCLUDE_DIR) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) - ENDMACRO (_QT4_ADJUST_LIB_VARS) - - - # Set QT_xyz_LIBRARY variable and add - # library include path to QT_INCLUDES - _QT4_ADJUST_LIB_VARS(QTCORE) - _QT4_ADJUST_LIB_VARS(QTGUI) - _QT4_ADJUST_LIB_VARS(QT3SUPPORT) - _QT4_ADJUST_LIB_VARS(QTASSISTANT) - _QT4_ADJUST_LIB_VARS(QTDESIGNER) - _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) - _QT4_ADJUST_LIB_VARS(QTNETWORK) - _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) - _QT4_ADJUST_LIB_VARS(QTOPENGL) - _QT4_ADJUST_LIB_VARS(QTSQL) - _QT4_ADJUST_LIB_VARS(QTXML) - _QT4_ADJUST_LIB_VARS(QTSVG) - _QT4_ADJUST_LIB_VARS(QTSCRIPT) - _QT4_ADJUST_LIB_VARS(QTUITOOLS) - _QT4_ADJUST_LIB_VARS(QTTEST) - _QT4_ADJUST_LIB_VARS(QTDBUS) - - - # platform dependent libraries - IF(Q_WS_X11) - _QT4_ADJUST_LIB_VARS(QTMOTIF) - ENDIF(Q_WS_X11) - IF(WIN32) - _QT4_ADJUST_LIB_VARS(QTMAIN) - ENDIF(WIN32) - - ####################################### - # - # Check the executables of Qt - # ( moc, uic, rcc ) - # - ####################################### - - - # find moc and uic using qmake - QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") - QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") - - FILE(TO_CMAKE_PATH - "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) - FILE(TO_CMAKE_PATH - "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) - - SET(QT_MOC_EXECUTABLE - ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") - SET(QT_UIC_EXECUTABLE - ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") - - FIND_PROGRAM(QT_UIC3_EXECUTABLE - NAMES uic3 - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_RCC_EXECUTABLE - NAMES rcc - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE - NAMES qdbuscpp2xml - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE - NAMES qdbusxml2cpp - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - IF (QT_MOC_EXECUTABLE) - SET(QT_WRAP_CPP "YES") - ENDIF (QT_MOC_EXECUTABLE) - - IF (QT_UIC_EXECUTABLE) - SET(QT_WRAP_UI "YES") - ENDIF (QT_UIC_EXECUTABLE) - - - - MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) - - ###################################### - # - # Macros for building Qt files - # - ###################################### - - MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - - FOREACH(_current ${_inc_DIRS}) - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - ENDFOREACH(_current ${_inc_DIRS}) - ENDMACRO(QT4_GET_MOC_INC_DIRS) - - - MACRO (QT4_GENERATE_MOC infile outfile ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) - - SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file - - MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) - ENDMACRO (QT4_GENERATE_MOC) - - - # QT4_WRAP_CPP(outfiles inputfile ... ) - # TODO perhaps add support for -D, -U and other minor options - - MACRO (QT4_WRAP_CPP outfiles ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${it} - DEPENDS ${it}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) - - ENDMACRO (QT4_WRAP_CPP) - - - # QT4_WRAP_UI(outfiles inputfile ... ) - - MACRO (QT4_WRAP_UI outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_UIC_EXECUTABLE} - ARGS -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_WRAP_UI) - - - # QT4_ADD_RESOURCES(outfiles inputfile ... ) - # TODO perhaps consider adding support for compression and root options to rcc - - MACRO (QT4_ADD_RESOURCES outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(rc_path ${infile} PATH) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) - # parse file for dependencies - FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") - SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") - ENDFOREACH(_RC_FILE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_RCC_EXECUTABLE} - ARGS -name ${outfilename} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_ADD_RESOURCES) - - MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) - GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) - IF ( _nonamespace ) - SET(_params -N -m -p) - ELSE ( _nonamespace ) - SET(_params -m -p) - ENDIF ( _nonamespace ) - - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} - DEPENDS ${_infile}) - - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - - QT4_GENERATE_MOC(${_header} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - ENDMACRO(QT4_ADD_DBUS_INTERFACE) - - MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) - SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) - ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) - - # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES - MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) - GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) - # get the part before the ".xml" suffix - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) - STRING(TOLOWER ${_basename} _basename) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) - ENDMACRO(_QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES _sources) - FOREACH (_current_FILE ${ARGN}) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) - FOREACH (_current_FILE ${ARGN}) - SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) - - MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) - SET(_customName "${ARGV1}") - GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - - IF (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) - ELSE (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) - ENDIF (_customName) - - ADD_CUSTOM_COMMAND(OUTPUT ${_target} - COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} - DEPENDS ${_in_file} - ) - ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - - - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) - GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) - - SET(_optionalBasename "${ARGV4}") - IF (_optionalBasename) - SET(_basename ${_optionalBasename} ) - ELSE (_optionalBasename) - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) - STRING(TOLOWER ${_basename} _basename) - ENDIF (_optionalBasename) - - SET(_optionalClassName "${ARGV5}") - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - IF(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ELSE(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ENDIF(_optionalClassName) - - QT4_GENERATE_MOC(${_header} ${_moc}) - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - ENDMACRO(QT4_ADD_DBUS_ADAPTOR) - - MACRO(QT4_AUTOMOC) - QT4_GET_MOC_INC_DIRS(_moc_INCS) - - SET(_matching_FILES ) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # here. this is required to make bouic work correctly: - # we need to add generated .cpp files to the sources (to compile them), - # but we cannot let automoc handle them, as the .cpp files don't exist yet when - # cmake is run for the very first time on them -> however the .cpp files might - # exist at a later run. at that time we need to skip them, so that we don't add two - # different rules for the same moc file - GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - - IF ( NOT _skip AND EXISTS ${_abs_FILE} ) - - FILE(READ ${_abs_FILE} _contents) - - GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - - STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) - FOREACH (_current_MOC_INC ${_match}) - STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - - GET_filename_component(_basename ${_current_MOC} NAME_WE) - # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_moc_INCS} ${_header} -o ${_moc} - DEPENDS ${_header} - ) - - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) - ENDFOREACH (_current_MOC_INC) - ENDIF(_match) - ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_AUTOMOC) - - - - ###################################### - # - # decide if Qt got found - # - ###################################### - - # if the includes,libraries,moc,uic and rcc are found then we have it - IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "YES" ) - IF( NOT Qt4_FIND_QUIETLY) - IF (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") - ELSE (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") - ENDIF (WIN32) - ENDIF( NOT Qt4_FIND_QUIETLY) - ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "NO") - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF( Qt4_FIND_REQUIRED) - IF ( NOT QT_LIBRARY_DIR ) - MESSAGE(STATUS "Qt libraries NOT found!") - ENDIF(NOT QT_LIBRARY_DIR ) - IF ( NOT QT_INCLUDE_DIR ) - MESSAGE(STATUS "Qt includes NOT found!") - ENDIF( NOT QT_INCLUDE_DIR ) - IF ( NOT QT_MOC_EXECUTABLE ) - MESSAGE(STATUS "Qt's moc NOT found!") - ENDIF( NOT QT_MOC_EXECUTABLE ) - IF ( NOT QT_UIC_EXECUTABLE ) - MESSAGE(STATUS "Qt's uic NOT found!") - ENDIF( NOT QT_UIC_EXECUTABLE ) - IF ( NOT QT_RCC_EXECUTABLE ) - MESSAGE(STATUS "Qt's rcc NOT found!") - ENDIF( NOT QT_RCC_EXECUTABLE ) - MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") - ENDIF( Qt4_FIND_REQUIRED) - ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET(QT_FOUND ${QT4_FOUND}) - - - ####################################### - # - # System dependent settings - # - ####################################### - # for unix add X11 stuff - IF(UNIX) - # on OS X X11 may not be required - IF (Q_WS_X11) - FIND_PACKAGE(X11 REQUIRED) - ENDIF (Q_WS_X11) - FIND_PACKAGE(Threads) - SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - ENDIF(UNIX) - - - ####################################### - # - # compatibility settings - # - ####################################### - # Backwards compatibility for CMake1.4 and 1.2 - SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) - SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) - - SET( QT_QT_LIBRARY "") - -ELSE(QT4_QMAKE_FOUND) - - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ELSE(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE( FATAL_ERROR "Qt qmake not found!") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) - ELSE(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - ENDIF(Qt4_FIND_REQUIRED) - -ENDIF (QT4_QMAKE_FOUND) - +# - Find QT 4 +# This module can be used to find Qt4. +# The most important issue is that the Qt4 qmake is available via the system path. +# This qmake is then used to detect basically everything else. +# This module defines a number of key variables and macros. First is +# QT_USE_FILE which is the path to a CMake file that can be included to compile +# Qt 4 applications and libraries. By default, the QtCore and QtGui +# libraries are loaded. This behavior can be changed by setting one or more +# of the following variables to true: +# QT_DONT_USE_QTCORE +# QT_DONT_USE_QTGUI +# QT_USE_QT3SUPPORT +# QT_USE_QTASSISTANT +# QT_USE_QTDESIGNER +# QT_USE_QTMOTIF +# QT_USE_QTMAIN +# QT_USE_QTNETWORK +# QT_USE_QTNSPLUGIN +# QT_USE_QTOPENGL +# QT_USE_QTSQL +# QT_USE_QTXML +# QT_USE_QTSVG +# QT_USE_QTTEST +# QT_USE_QTUITOOLS +# QT_USE_QTDBUS +# +# All the libraries required are stored in a variable called QT_LIBRARIES. +# Add this variable to your TARGET_LINK_LIBRARIES. +# +# macro QT4_WRAP_CPP(outfiles inputfile ... ) +# macro QT4_WRAP_UI(outfiles inputfile ... ) +# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) +# macro QT4_AUTOMOC(inputfile ... ) +# macro QT4_GENERATE_MOC(inputfile outputfile ) +# +# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) +# create a the interface header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) +# create the interface header and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) +# create a the interface without namespace header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) +# create the interface header without namespace and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) +# create a dbus adaptor (header and implementation file) from the xml file +# describing the interface, and add it to the list of sources. The adaptor +# forwards the calls to a parent class, defined in parentheader and named +# parentclassname. The name of the generated files will be +# adaptor.{cpp,h} where basename is the basename of the xml file. +# +# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) +# generate the xml interface file from the given header. +# If the optional argument interfacename is omitted, the name of the +# interface file is constructed from the basename of the header with +# the suffix .xml appended. +# +# QT_FOUND If false, don't try to use Qt. +# QT4_FOUND If false, don't try to use Qt 4. +# +# QT_QTCORE_FOUND True if QtCore was found. +# QT_QTGUI_FOUND True if QtGui was found. +# QT_QT3SUPPORT_FOUND True if Qt3Support was found. +# QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTDBUS_FOUND True if QtDBus was found. +# QT_QTDESIGNER_FOUND True if QtDesigner was found. +# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. +# QT_QTMOTIF_FOUND True if QtMotif was found. +# QT_QTNETWORK_FOUND True if QtNetwork was found. +# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. +# QT_QTOPENGL_FOUND True if QtOpenGL was found. +# QT_QTSQL_FOUND True if QtSql was found. +# QT_QTXML_FOUND True if QtXml was found. +# QT_QTSVG_FOUND True if QtSvg was found. +# QT_QTSCRIPT_FOUND True if QtScript was found. +# QT_QTTEST_FOUND True if QtTest was found. +# QT_QTUITOOLS_FOUND True if QtUiTools was found. +# +# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. +# +# QT_INCLUDES List of paths to all include directories of +# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are +# always in this variable even if NOTFOUND, +# all other INCLUDE_DIRS are +# only added if they are found. +# +# QT_INCLUDE_DIR Path to "include" of Qt4 +# QT_QT_INCLUDE_DIR Path to "include/Qt" +# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" +# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" +# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" +# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" +# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" +# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" +# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" +# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" +# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" +# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" +# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" +# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" +# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" +# +# QT_LIBRARY_DIR Path to "lib" of Qt4 +# +# QT_PLUGINS_DIR Path to "plugins" for Qt4 +# +# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. +# +# So there are the following variables: +# The Qt3Support library: QT_QT3SUPPORT_LIBRARY +# +# The QtAssistant library: QT_QTASSISTANT_LIBRARY +# +# The QtCore library: QT_QTCORE_LIBRARY +# +# The QtDBus library: QT_QTDBUS_LIBRARY +# +# The QtDesigner library: QT_QTDESIGNER_LIBRARY +# +# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY +# +# The QtGui library: QT_QTGUI_LIBRARY +# +# The QtMotif library: QT_QTMOTIF_LIBRARY +# +# The QtNetwork library: QT_QTNETWORK_LIBRARY +# +# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY +# +# The QtOpenGL library: QT_QTOPENGL_LIBRARY +# +# The QtSql library: QT_QTSQL_LIBRARY +# +# The QtXml library: QT_QTXML_LIBRARY +# +# The QtSvg library: QT_QTSVG_LIBRARY +# +# The QtScript library: QT_QTSCRIPT_LIBRARY +# +# The QtTest library: QT_QTTEST_LIBRARY +# +# The qtmain library for Windows QT_QTMAIN_LIBRARY +# +# The QtUiTools library: QT_QTUITOOLS_LIBRARY +# +# also defined, but NOT for general use are +# QT_MOC_EXECUTABLE Where to find the moc tool. +# QT_UIC_EXECUTABLE Where to find the uic tool. +# QT_UIC3_EXECUTABLE Where to find the uic3 tool. +# QT_RCC_EXECUTABLE Where to find the rcc tool +# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. +# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. +# +# QT_DOC_DIR Path to "doc" of Qt4 +# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 +# +# +# These are around for backwards compatibility +# they will be set +# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found +# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found +# +# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) +# QT_MT_REQUIRED Qt4 is now always multithreaded +# +# These variables are set to "" Because Qt structure changed +# (They make no sense in Qt4) +# QT_QT_LIBRARY Qt-Library is now split + +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + +INCLUDE(CheckSymbolExists) +INCLUDE(MacroAddFileDependencies) +INCLUDE(MacroPushRequiredVars) + +SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) + +SET( QT_DEFINITIONS "") + +IF (WIN32) + SET(QT_DEFINITIONS -DQT_DLL) +ENDIF(WIN32) + +SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) + +# macro for asking qmake to process pro files +MACRO(QT_QUERY_QMAKE outvar invar) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro + "message(CMAKE_MESSAGE<$$${invar}>)") + + EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} + WORKING_DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake + OUTPUT_VARIABLE _qmake_query_output + ERROR_VARIABLE _qmake_query_output ) + + FILE(REMOVE_RECURSE + "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") + + STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") +ENDMACRO(QT_QUERY_QMAKE) + +# check for qmake +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin +) + +IF (QT_QMAKE_EXECUTABLE) + + SET(QT4_QMAKE_FOUND FALSE) + + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + + # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path + IF("${QTVERSION}" MATCHES "Unknown") + SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) + FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin + ) + IF(QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + ENDIF(QT_QMAKE_EXECUTABLE) + ENDIF("${QTVERSION}" MATCHES "Unknown") + + # check that we found the Qt4 qmake, Qt3 qmake output won't match here + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") + IF (qt_version_tmp) + + # we need at least version 4.0.0 + IF (NOT QT_MIN_VERSION) + SET(QT_MIN_VERSION "4.0.0") + ENDIF (NOT QT_MIN_VERSION) + + #now parse the parts of the user given version string into variables + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") + IF (NOT req_qt_major_vers) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers) + + # now parse the parts of the user given version string into variables + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + + IF (NOT req_qt_major_vers EQUAL 4) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers EQUAL 4) + + # and now the version string given by qmake + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") + MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") + + IF (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND FALSE) + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) + ELSE (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND TRUE) + ENDIF (found_vers LESS req_vers) + ENDIF (qt_version_tmp) + +ENDIF (QT_QMAKE_EXECUTABLE) + +IF (QT4_QMAKE_FOUND) + + # ask qmake for the library dir + # Set QT_LIBRARY_DIR + IF (NOT QT_LIBRARY_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_LIBS" + OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + IF(EXISTS "${QT_LIBRARY_DIR_TMP}") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") + ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") + ENDIF(NOT QT_LIBRARY_DIR) + + IF (APPLE) + IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS ON + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS OFF + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) + ENDIF (APPLE) + + # ask qmake for the binary dir + IF (NOT QT_BINARY_DIR) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + ENDIF (NOT QT_BINARY_DIR) + + # ask qmake for the include dir + IF (NOT QT_HEADERS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_HEADERS" + OUTPUT_VARIABLE qt_headers ) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + ENDIF(NOT QT_HEADERS_DIR) + + + # ask qmake for the documentation directory + IF (NOT QT_DOC_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_DOCS" + OUTPUT_VARIABLE qt_doc_dir ) + SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") + ENDIF (NOT QT_DOC_DIR) + + # ask qmake for the mkspecs directory + IF (NOT QT_MKSPECS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QMAKE_MKSPECS" + OUTPUT_VARIABLE qt_mkspecs_dir ) + SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") + ENDIF (NOT QT_MKSPECS_DIR) + + # ask qmake for the plugins directory + IF (NOT QT_PLUGINS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_PLUGINS" + OUTPUT_VARIABLE qt_plugins_dir ) + SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") + ENDIF (NOT QT_PLUGINS_DIR) + ######################################## + # + # Setting the INCLUDE-Variables + # + ######################################## + + FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal + ${QT_HEADERS_DIR}/QtCore + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} + IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF (QT_USE_FRAMEWORKS) + SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) + ELSE (QT_USE_FRAMEWORKS) + STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) + SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + ENDIF (QT_USE_FRAMEWORKS) + ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + + IF( NOT QT_INCLUDE_DIR) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_INCLUDE_DIR) + + ############################################# + # + # Find out what window system we're using + # + ############################################# + # Save required includes and required_flags variables + macro_push_required_vars() + # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES + SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") + # On Mac OS X when Qt has framework support, also add the framework path + IF( QT_USE_FRAMEWORKS ) + SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") + ENDIF( QT_USE_FRAMEWORKS ) + # Check for Window system symbols (note: only one should end up being set) + CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) + CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + + IF (QT_QTCOPY_REQUIRED) + CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) + IF (NOT QT_IS_QTCOPY) + MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") + ENDIF (NOT QT_IS_QTCOPY) + ENDIF (QT_QTCOPY_REQUIRED) + + # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables + macro_pop_required_vars() + # + ############################################# + + IF (QT_USE_FRAMEWORKS) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) + ENDIF (QT_USE_FRAMEWORKS) + + # Set QT_QT3SUPPORT_INCLUDE_DIR + FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support + PATHS + ${QT_INCLUDE_DIR}/Qt3Support + ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QT_INCLUDE_DIR + FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h + PATHS + ${QT_INCLUDE_DIR}/Qt + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTGUI_INCLUDE_DIR + FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui + PATHS + ${QT_INCLUDE_DIR}/QtGui + ${QT_LIBRARY_DIR}/QtGui.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg + PATHS + ${QT_INCLUDE_DIR}/QtSvg + ${QT_LIBRARY_DIR}/QtSvg.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript + PATHS + ${QT_INCLUDE_DIR}/QtScript + ${QT_LIBRARY_DIR}/QtScript.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTTEST_INCLUDE_DIR + FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest + PATHS + ${QT_INCLUDE_DIR}/QtTest + ${QT_LIBRARY_DIR}/QtTest.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTUITOOLS_INCLUDE_DIR + FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools + PATHS + ${QT_INCLUDE_DIR}/QtUiTools + ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers + NO_DEFAULT_PATH + ) + + + + # Set QT_QTMOTIF_INCLUDE_DIR + IF(Q_WS_X11) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_INCLUDE_DIR + FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork + PATHS + ${QT_INCLUDE_DIR}/QtNetwork + ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTNSPLUGIN_INCLUDE_DIR + FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin + PATHS + ${QT_INCLUDE_DIR}/QtNsPlugin + ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTOPENGL_INCLUDE_DIR + FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL + PATHS + ${QT_INCLUDE_DIR}/QtOpenGL + ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSQL_INCLUDE_DIR + FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql + PATHS + ${QT_INCLUDE_DIR}/QtSql + ${QT_LIBRARY_DIR}/QtSql.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTXML_INCLUDE_DIR + FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml + PATHS + ${QT_INCLUDE_DIR}/QtXml + ${QT_LIBRARY_DIR}/QtXml.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTASSISTANT_INCLUDE_DIR + FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant + PATHS + ${QT_INCLUDE_DIR}/QtAssistant + ${QT_HEADERS_DIR}/QtAssistant + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNER_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + + # Set QT_QTDBUS_INCLUDE_DIR + FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus + PATHS + ${QT_INCLUDE_DIR}/QtDBus + ${QT_HEADERS_DIR}/QtDBus + NO_DEFAULT_PATH + ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) + + # Set QT_INCLUDES + SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) + + + ######################################## + # + # Setting the LIBRARY-Variables + # + ######################################## + + IF (QT_USE_FRAMEWORKS) + # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have + # to jump through these hoops. + IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND TRUE) + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND TRUE) + SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND TRUE) + SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND TRUE) + SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND TRUE) + SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND TRUE) + SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND TRUE) + SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND TRUE) + SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND TRUE) + SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND TRUE) + SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + + # WTF? why don't we have frameworks? :P + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) + + ELSE (QT_USE_FRAMEWORKS) + + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + + # Set QT_QT3SUPPORT_LIBRARY + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTGUI_LIBRARY + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMOTIF_LIBRARY + IF(Q_WS_X11) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_LIBRARY + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTNSPLUGIN_LIBRARY + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTOPENGL_LIBRARY + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSQL_LIBRARY + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTXML_LIBRARY + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSVG_LIBRARY + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTTEST_LIBRARY + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + IF(MSVC) + FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_RELEASE NAMES QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(MSVC) + ENDIF (QT_USE_FRAMEWORKS) + + IF( NOT QT_QTCORE_LIBRARY ) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_QTCORE_LIBRARY ) + + # Set QT_QTASSISTANT_LIBRARY + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNER_LIBRARY + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNERCOMPONENTS_LIBRARY + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMAIN_LIBRARY + IF(WIN32) + FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(WIN32) + + ############################################ + # + # Check the existence of the libraries. + # + ############################################ + + MACRO (_QT4_ADJUST_LIB_VARS basename) + IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF(MSVC) + # Both set + IF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + + # Only debug was found + IF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + + # Only release was found + IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + + # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + + ENDIF(MSVC) + + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") + + IF (QT_${basename}_LIBRARY) + SET(QT_${basename}_FOUND 1) + ENDIF (QT_${basename}_LIBRARY) + + ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF (QT_${basename}_INCLUDE_DIR) + #add the include directory to QT_INCLUDES + SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + ENDIF (QT_${basename}_INCLUDE_DIR) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) + ENDMACRO (_QT4_ADJUST_LIB_VARS) + + + # Set QT_xyz_LIBRARY variable and add + # library include path to QT_INCLUDES + _QT4_ADJUST_LIB_VARS(QTCORE) + _QT4_ADJUST_LIB_VARS(QTGUI) + _QT4_ADJUST_LIB_VARS(QT3SUPPORT) + _QT4_ADJUST_LIB_VARS(QTASSISTANT) + _QT4_ADJUST_LIB_VARS(QTDESIGNER) + _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) + _QT4_ADJUST_LIB_VARS(QTNETWORK) + _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) + _QT4_ADJUST_LIB_VARS(QTOPENGL) + _QT4_ADJUST_LIB_VARS(QTSQL) + _QT4_ADJUST_LIB_VARS(QTXML) + _QT4_ADJUST_LIB_VARS(QTSVG) + _QT4_ADJUST_LIB_VARS(QTSCRIPT) + _QT4_ADJUST_LIB_VARS(QTUITOOLS) + _QT4_ADJUST_LIB_VARS(QTTEST) + _QT4_ADJUST_LIB_VARS(QTDBUS) + + + # platform dependent libraries + IF(Q_WS_X11) + _QT4_ADJUST_LIB_VARS(QTMOTIF) + ENDIF(Q_WS_X11) + IF(WIN32) + _QT4_ADJUST_LIB_VARS(QTMAIN) + ENDIF(WIN32) + + ####################################### + # + # Check the executables of Qt + # ( moc, uic, rcc ) + # + ####################################### + + + # find moc and uic using qmake + QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") + QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") + + FILE(TO_CMAKE_PATH + "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) + FILE(TO_CMAKE_PATH + "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) + + SET(QT_MOC_EXECUTABLE + ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") + SET(QT_UIC_EXECUTABLE + ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") + + FIND_PROGRAM(QT_UIC3_EXECUTABLE + NAMES uic3 + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_RCC_EXECUTABLE + NAMES rcc + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE + NAMES qdbuscpp2xml + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE + NAMES qdbusxml2cpp + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + IF (QT_MOC_EXECUTABLE) + SET(QT_WRAP_CPP "YES") + ENDIF (QT_MOC_EXECUTABLE) + + IF (QT_UIC_EXECUTABLE) + SET(QT_WRAP_UI "YES") + ENDIF (QT_UIC_EXECUTABLE) + + + + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) + + ###################################### + # + # Macros for building Qt files + # + ###################################### + + MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) + SET(${_moc_INC_DIRS}) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + + FOREACH(_current ${_inc_DIRS}) + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) + + + MACRO (QT4_GENERATE_MOC infile outfile ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) + + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${abs_infile} + DEPENDS ${abs_infile}) + + SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + + MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) + ENDMACRO (QT4_GENERATE_MOC) + + + # QT4_WRAP_CPP(outfiles inputfile ... ) + # TODO perhaps add support for -D, -U and other minor options + + MACRO (QT4_WRAP_CPP outfiles ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${it} + DEPENDS ${it}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + + ENDMACRO (QT4_WRAP_CPP) + + + # QT4_WRAP_UI(outfiles inputfile ... ) + + MACRO (QT4_WRAP_UI outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_WRAP_UI) + + + # QT4_ADD_RESOURCES(outfiles inputfile ... ) + # TODO perhaps consider adding support for compression and root options to rcc + + MACRO (QT4_ADD_RESOURCES outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(rc_path ${infile} PATH) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + # parse file for dependencies + FILE(READ "${infile}" _RC_FILE_CONTENTS) + STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") + SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") + ENDFOREACH(_RC_FILE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_RCC_EXECUTABLE} + ARGS -name ${outfilename} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_ADD_RESOURCES) + + MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) + GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) + IF ( _nonamespace ) + SET(_params -N -m -p) + ELSE ( _nonamespace ) + SET(_params -m -p) + ENDIF ( _nonamespace ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} + DEPENDS ${_infile}) + + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + + QT4_GENERATE_MOC(${_header} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + ENDMACRO(QT4_ADD_DBUS_INTERFACE) + + MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) + SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) + ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) + + # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES + MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) + GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) + # get the part before the ".xml" suffix + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) + STRING(TOLOWER ${_basename} _basename) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + ENDMACRO(_QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) + FOREACH (_current_FILE ${ARGN}) + SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) + + MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) + SET(_customName "${ARGV1}") + GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) + + IF (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) + ELSE (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + ENDIF (_customName) + + ADD_CUSTOM_COMMAND(OUTPUT ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} + DEPENDS ${_in_file} + ) + ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) + + + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) + GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) + + SET(_optionalBasename "${ARGV4}") + IF (_optionalBasename) + SET(_basename ${_optionalBasename} ) + ELSE (_optionalBasename) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) + STRING(TOLOWER ${_basename} _basename) + ENDIF (_optionalBasename) + + SET(_optionalClassName "${ARGV5}") + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + IF(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ELSE(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ENDIF(_optionalClassName) + + QT4_GENERATE_MOC(${_header} ${_moc}) + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + ENDMACRO(QT4_ADD_DBUS_ADAPTOR) + + MACRO(QT4_AUTOMOC) + QT4_GET_MOC_INC_DIRS(_moc_INCS) + + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # here. this is required to make bouic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) + + IF ( NOT _skip AND EXISTS ${_abs_FILE} ) + + FILE(READ ${_abs_FILE} _contents) + + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_filename_component(_basename ${_current_MOC} NAME_WE) + # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_AUTOMOC) + + + + ###################################### + # + # decide if Qt got found + # + ###################################### + + # if the includes,libraries,moc,uic and rcc are found then we have it + IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "YES" ) + IF( NOT Qt4_FIND_QUIETLY) + IF (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") + ELSE (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") + ENDIF (WIN32) + ENDIF( NOT Qt4_FIND_QUIETLY) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "NO") + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF( Qt4_FIND_REQUIRED) + IF ( NOT QT_LIBRARY_DIR ) + MESSAGE(STATUS "Qt libraries NOT found!") + ENDIF(NOT QT_LIBRARY_DIR ) + IF ( NOT QT_INCLUDE_DIR ) + MESSAGE(STATUS "Qt includes NOT found!") + ENDIF( NOT QT_INCLUDE_DIR ) + IF ( NOT QT_MOC_EXECUTABLE ) + MESSAGE(STATUS "Qt's moc NOT found!") + ENDIF( NOT QT_MOC_EXECUTABLE ) + IF ( NOT QT_UIC_EXECUTABLE ) + MESSAGE(STATUS "Qt's uic NOT found!") + ENDIF( NOT QT_UIC_EXECUTABLE ) + IF ( NOT QT_RCC_EXECUTABLE ) + MESSAGE(STATUS "Qt's rcc NOT found!") + ENDIF( NOT QT_RCC_EXECUTABLE ) + MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + ENDIF( Qt4_FIND_REQUIRED) + ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET(QT_FOUND ${QT4_FOUND}) + + + ####################################### + # + # System dependent settings + # + ####################################### + # for unix add X11 stuff + IF(UNIX) + # on OS X X11 may not be required + IF (Q_WS_X11) + FIND_PACKAGE(X11 REQUIRED) + ENDIF (Q_WS_X11) + FIND_PACKAGE(Threads) + SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + ENDIF(UNIX) + + + ####################################### + # + # compatibility settings + # + ####################################### + # Backwards compatibility for CMake1.4 and 1.2 + SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + + SET( QT_QT_LIBRARY "") + +ELSE(QT4_QMAKE_FOUND) + + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ELSE(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE( FATAL_ERROR "Qt qmake not found!") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) + ELSE(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + ENDIF(Qt4_FIND_REQUIRED) + +ENDIF (QT4_QMAKE_FOUND) + -- cgit v1.2.1 From 210a0cf7146000bac09fb18e9bcbfd1e063ecb1a Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 14 Jul 2007 20:15:39 +0000 Subject: back to unix style svn path=/trunk/KDE/kdelibs/; revision=687941 --- modules/FindQt4.cmake | 2442 ++++++++++++++++++++++++------------------------- 1 file changed, 1221 insertions(+), 1221 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0dee28e8..8ba01cbb 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1,1221 +1,1221 @@ -# - Find QT 4 -# This module can be used to find Qt4. -# The most important issue is that the Qt4 qmake is available via the system path. -# This qmake is then used to detect basically everything else. -# This module defines a number of key variables and macros. First is -# QT_USE_FILE which is the path to a CMake file that can be included to compile -# Qt 4 applications and libraries. By default, the QtCore and QtGui -# libraries are loaded. This behavior can be changed by setting one or more -# of the following variables to true: -# QT_DONT_USE_QTCORE -# QT_DONT_USE_QTGUI -# QT_USE_QT3SUPPORT -# QT_USE_QTASSISTANT -# QT_USE_QTDESIGNER -# QT_USE_QTMOTIF -# QT_USE_QTMAIN -# QT_USE_QTNETWORK -# QT_USE_QTNSPLUGIN -# QT_USE_QTOPENGL -# QT_USE_QTSQL -# QT_USE_QTXML -# QT_USE_QTSVG -# QT_USE_QTTEST -# QT_USE_QTUITOOLS -# QT_USE_QTDBUS -# -# All the libraries required are stored in a variable called QT_LIBRARIES. -# Add this variable to your TARGET_LINK_LIBRARIES. -# -# macro QT4_WRAP_CPP(outfiles inputfile ... ) -# macro QT4_WRAP_UI(outfiles inputfile ... ) -# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) -# macro QT4_AUTOMOC(inputfile ... ) -# macro QT4_GENERATE_MOC(inputfile outputfile ) -# -# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) -# create a the interface header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) -# create the interface header and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) -# create a the interface without namespace header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) -# create the interface header without namespace and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) -# create a dbus adaptor (header and implementation file) from the xml file -# describing the interface, and add it to the list of sources. The adaptor -# forwards the calls to a parent class, defined in parentheader and named -# parentclassname. The name of the generated files will be -# adaptor.{cpp,h} where basename is the basename of the xml file. -# -# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) -# generate the xml interface file from the given header. -# If the optional argument interfacename is omitted, the name of the -# interface file is constructed from the basename of the header with -# the suffix .xml appended. -# -# QT_FOUND If false, don't try to use Qt. -# QT4_FOUND If false, don't try to use Qt 4. -# -# QT_QTCORE_FOUND True if QtCore was found. -# QT_QTGUI_FOUND True if QtGui was found. -# QT_QT3SUPPORT_FOUND True if Qt3Support was found. -# QT_QTASSISTANT_FOUND True if QtAssistant was found. -# QT_QTDBUS_FOUND True if QtDBus was found. -# QT_QTDESIGNER_FOUND True if QtDesigner was found. -# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. -# QT_QTMOTIF_FOUND True if QtMotif was found. -# QT_QTNETWORK_FOUND True if QtNetwork was found. -# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. -# QT_QTOPENGL_FOUND True if QtOpenGL was found. -# QT_QTSQL_FOUND True if QtSql was found. -# QT_QTXML_FOUND True if QtXml was found. -# QT_QTSVG_FOUND True if QtSvg was found. -# QT_QTSCRIPT_FOUND True if QtScript was found. -# QT_QTTEST_FOUND True if QtTest was found. -# QT_QTUITOOLS_FOUND True if QtUiTools was found. -# -# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. -# -# QT_INCLUDES List of paths to all include directories of -# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are -# always in this variable even if NOTFOUND, -# all other INCLUDE_DIRS are -# only added if they are found. -# -# QT_INCLUDE_DIR Path to "include" of Qt4 -# QT_QT_INCLUDE_DIR Path to "include/Qt" -# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" -# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" -# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" -# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" -# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" -# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" -# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" -# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" -# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" -# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" -# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" -# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" -# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# -# QT_LIBRARY_DIR Path to "lib" of Qt4 -# -# QT_PLUGINS_DIR Path to "plugins" for Qt4 -# -# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. -# -# So there are the following variables: -# The Qt3Support library: QT_QT3SUPPORT_LIBRARY -# -# The QtAssistant library: QT_QTASSISTANT_LIBRARY -# -# The QtCore library: QT_QTCORE_LIBRARY -# -# The QtDBus library: QT_QTDBUS_LIBRARY -# -# The QtDesigner library: QT_QTDESIGNER_LIBRARY -# -# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY -# -# The QtGui library: QT_QTGUI_LIBRARY -# -# The QtMotif library: QT_QTMOTIF_LIBRARY -# -# The QtNetwork library: QT_QTNETWORK_LIBRARY -# -# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY -# -# The QtOpenGL library: QT_QTOPENGL_LIBRARY -# -# The QtSql library: QT_QTSQL_LIBRARY -# -# The QtXml library: QT_QTXML_LIBRARY -# -# The QtSvg library: QT_QTSVG_LIBRARY -# -# The QtScript library: QT_QTSCRIPT_LIBRARY -# -# The QtTest library: QT_QTTEST_LIBRARY -# -# The qtmain library for Windows QT_QTMAIN_LIBRARY -# -# The QtUiTools library: QT_QTUITOOLS_LIBRARY -# -# also defined, but NOT for general use are -# QT_MOC_EXECUTABLE Where to find the moc tool. -# QT_UIC_EXECUTABLE Where to find the uic tool. -# QT_UIC3_EXECUTABLE Where to find the uic3 tool. -# QT_RCC_EXECUTABLE Where to find the rcc tool -# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. -# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. -# -# QT_DOC_DIR Path to "doc" of Qt4 -# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 -# -# -# These are around for backwards compatibility -# they will be set -# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found -# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found -# -# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) -# QT_MT_REQUIRED Qt4 is now always multithreaded -# -# These variables are set to "" Because Qt structure changed -# (They make no sense in Qt4) -# QT_QT_LIBRARY Qt-Library is now split - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -INCLUDE(CheckSymbolExists) -INCLUDE(MacroAddFileDependencies) -INCLUDE(MacroPushRequiredVars) - -SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) - -SET( QT_DEFINITIONS "") - -IF (WIN32) - SET(QT_DEFINITIONS -DQT_DLL) -ENDIF(WIN32) - -SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) - -# macro for asking qmake to process pro files -MACRO(QT_QUERY_QMAKE outvar invar) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro - "message(CMAKE_MESSAGE<$$${invar}>)") - - EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} - WORKING_DIRECTORY - ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake - OUTPUT_VARIABLE _qmake_query_output - ERROR_VARIABLE _qmake_query_output ) - - FILE(REMOVE_RECURSE - "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") - - STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") -ENDMACRO(QT_QUERY_QMAKE) - -# check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin -) - -IF (QT_QMAKE_EXECUTABLE) - - SET(QT4_QMAKE_FOUND FALSE) - - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - - # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path - IF("${QTVERSION}" MATCHES "Unknown") - SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) - FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - $ENV{QTDIR}/bin - ) - IF(QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) - ENDIF(QT_QMAKE_EXECUTABLE) - ENDIF("${QTVERSION}" MATCHES "Unknown") - - # check that we found the Qt4 qmake, Qt3 qmake output won't match here - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") - IF (qt_version_tmp) - - # we need at least version 4.0.0 - IF (NOT QT_MIN_VERSION) - SET(QT_MIN_VERSION "4.0.0") - ENDIF (NOT QT_MIN_VERSION) - - #now parse the parts of the user given version string into variables - STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") - IF (NOT req_qt_major_vers) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers) - - # now parse the parts of the user given version string into variables - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") - - IF (NOT req_qt_major_vers EQUAL 4) - MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") - ENDIF (NOT req_qt_major_vers EQUAL 4) - - # and now the version string given by qmake - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") - - # compute an overall version number which can be compared at once - MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") - MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") - - IF (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND FALSE) - SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) - ELSE (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND TRUE) - ENDIF (found_vers LESS req_vers) - ENDIF (qt_version_tmp) - -ENDIF (QT_QMAKE_EXECUTABLE) - -IF (QT4_QMAKE_FOUND) - - # ask qmake for the library dir - # Set QT_LIBRARY_DIR - IF (NOT QT_LIBRARY_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_LIBS" - OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") - ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") - ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") - ENDIF(NOT QT_LIBRARY_DIR) - - IF (APPLE) - IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS ON - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_USE_FRAMEWORKS OFF - CACHE BOOL "Set to ON if Qt build uses frameworks.") - ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) - ENDIF (APPLE) - - # ask qmake for the binary dir - IF (NOT QT_BINARY_DIR) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (NOT QT_BINARY_DIR) - - # ask qmake for the include dir - IF (NOT QT_HEADERS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(NOT QT_HEADERS_DIR) - - - # ask qmake for the documentation directory - IF (NOT QT_DOC_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_DOCS" - OUTPUT_VARIABLE qt_doc_dir ) - SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") - ENDIF (NOT QT_DOC_DIR) - - # ask qmake for the mkspecs directory - IF (NOT QT_MKSPECS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QMAKE_MKSPECS" - OUTPUT_VARIABLE qt_mkspecs_dir ) - SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") - ENDIF (NOT QT_MKSPECS_DIR) - - # ask qmake for the plugins directory - IF (NOT QT_PLUGINS_DIR) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_PLUGINS" - OUTPUT_VARIABLE qt_plugins_dir ) - SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") - ENDIF (NOT QT_PLUGINS_DIR) - ######################################## - # - # Setting the INCLUDE-Variables - # - ######################################## - - FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal - ${QT_HEADERS_DIR}/QtCore - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} - IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - IF (QT_USE_FRAMEWORKS) - SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) - ELSE (QT_USE_FRAMEWORKS) - STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) - SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") - ENDIF (QT_USE_FRAMEWORKS) - ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) - - IF( NOT QT_INCLUDE_DIR) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_INCLUDE_DIR) - - ############################################# - # - # Find out what window system we're using - # - ############################################# - # Save required includes and required_flags variables - macro_push_required_vars() - # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES - SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") - # On Mac OS X when Qt has framework support, also add the framework path - IF( QT_USE_FRAMEWORKS ) - SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") - ENDIF( QT_USE_FRAMEWORKS ) - # Check for Window system symbols (note: only one should end up being set) - CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) - CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) - CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) - CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) - - IF (QT_QTCOPY_REQUIRED) - CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) - IF (NOT QT_IS_QTCOPY) - MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") - ENDIF (NOT QT_IS_QTCOPY) - ENDIF (QT_QTCOPY_REQUIRED) - - # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables - macro_pop_required_vars() - # - ############################################# - - IF (QT_USE_FRAMEWORKS) - SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) - ENDIF (QT_USE_FRAMEWORKS) - - # Set QT_QT3SUPPORT_INCLUDE_DIR - FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support - PATHS - ${QT_INCLUDE_DIR}/Qt3Support - ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QT_INCLUDE_DIR - FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h - PATHS - ${QT_INCLUDE_DIR}/Qt - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTGUI_INCLUDE_DIR - FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui - PATHS - ${QT_INCLUDE_DIR}/QtGui - ${QT_LIBRARY_DIR}/QtGui.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg - PATHS - ${QT_INCLUDE_DIR}/QtSvg - ${QT_LIBRARY_DIR}/QtSvg.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript - PATHS - ${QT_INCLUDE_DIR}/QtScript - ${QT_LIBRARY_DIR}/QtScript.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTTEST_INCLUDE_DIR - FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest - PATHS - ${QT_INCLUDE_DIR}/QtTest - ${QT_LIBRARY_DIR}/QtTest.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTUITOOLS_INCLUDE_DIR - FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools - PATHS - ${QT_INCLUDE_DIR}/QtUiTools - ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers - NO_DEFAULT_PATH - ) - - - - # Set QT_QTMOTIF_INCLUDE_DIR - IF(Q_WS_X11) - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_INCLUDE_DIR - FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork - PATHS - ${QT_INCLUDE_DIR}/QtNetwork - ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTNSPLUGIN_INCLUDE_DIR - FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin - PATHS - ${QT_INCLUDE_DIR}/QtNsPlugin - ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTOPENGL_INCLUDE_DIR - FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL - PATHS - ${QT_INCLUDE_DIR}/QtOpenGL - ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSQL_INCLUDE_DIR - FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql - PATHS - ${QT_INCLUDE_DIR}/QtSql - ${QT_LIBRARY_DIR}/QtSql.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTXML_INCLUDE_DIR - FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml - PATHS - ${QT_INCLUDE_DIR}/QtXml - ${QT_LIBRARY_DIR}/QtXml.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTASSISTANT_INCLUDE_DIR - FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant - PATHS - ${QT_INCLUDE_DIR}/QtAssistant - ${QT_HEADERS_DIR}/QtAssistant - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNER_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - - # Set QT_QTDBUS_INCLUDE_DIR - FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus - PATHS - ${QT_INCLUDE_DIR}/QtDBus - ${QT_HEADERS_DIR}/QtDBus - NO_DEFAULT_PATH - ) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) - - # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) - - - ######################################## - # - # Setting the LIBRARY-Variables - # - ######################################## - - IF (QT_USE_FRAMEWORKS) - # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have - # to jump through these hoops. - IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND TRUE) - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND TRUE) - SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND TRUE) - SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND TRUE) - SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND TRUE) - SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND TRUE) - SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND TRUE) - SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND TRUE) - SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND TRUE) - SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND TRUE) - SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - - # WTF? why don't we have frameworks? :P - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) - - ELSE (QT_USE_FRAMEWORKS) - - # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - - # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMOTIF_LIBRARY - IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - IF(MSVC) - FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_RELEASE NAMES QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(MSVC) - ENDIF (QT_USE_FRAMEWORKS) - - IF( NOT QT_QTCORE_LIBRARY ) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - ENDIF( NOT QT_QTCORE_LIBRARY ) - - # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNERCOMPONENTS_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMAIN_LIBRARY - IF(WIN32) - FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(WIN32) - - ############################################ - # - # Check the existence of the libraries. - # - ############################################ - - MACRO (_QT4_ADJUST_LIB_VARS basename) - IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF(MSVC) - # Both set - IF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - - # Only debug was found - IF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - - # Only release was found - IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) - ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - - # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - - ENDIF(MSVC) - - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") - - IF (QT_${basename}_LIBRARY) - SET(QT_${basename}_FOUND 1) - ENDIF (QT_${basename}_LIBRARY) - - ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF (QT_${basename}_INCLUDE_DIR) - #add the include directory to QT_INCLUDES - SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") - ENDIF (QT_${basename}_INCLUDE_DIR) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) - ENDMACRO (_QT4_ADJUST_LIB_VARS) - - - # Set QT_xyz_LIBRARY variable and add - # library include path to QT_INCLUDES - _QT4_ADJUST_LIB_VARS(QTCORE) - _QT4_ADJUST_LIB_VARS(QTGUI) - _QT4_ADJUST_LIB_VARS(QT3SUPPORT) - _QT4_ADJUST_LIB_VARS(QTASSISTANT) - _QT4_ADJUST_LIB_VARS(QTDESIGNER) - _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) - _QT4_ADJUST_LIB_VARS(QTNETWORK) - _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) - _QT4_ADJUST_LIB_VARS(QTOPENGL) - _QT4_ADJUST_LIB_VARS(QTSQL) - _QT4_ADJUST_LIB_VARS(QTXML) - _QT4_ADJUST_LIB_VARS(QTSVG) - _QT4_ADJUST_LIB_VARS(QTSCRIPT) - _QT4_ADJUST_LIB_VARS(QTUITOOLS) - _QT4_ADJUST_LIB_VARS(QTTEST) - _QT4_ADJUST_LIB_VARS(QTDBUS) - - - # platform dependent libraries - IF(Q_WS_X11) - _QT4_ADJUST_LIB_VARS(QTMOTIF) - ENDIF(Q_WS_X11) - IF(WIN32) - _QT4_ADJUST_LIB_VARS(QTMAIN) - ENDIF(WIN32) - - ####################################### - # - # Check the executables of Qt - # ( moc, uic, rcc ) - # - ####################################### - - - # find moc and uic using qmake - QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") - QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") - - FILE(TO_CMAKE_PATH - "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) - FILE(TO_CMAKE_PATH - "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) - - SET(QT_MOC_EXECUTABLE - ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") - SET(QT_UIC_EXECUTABLE - ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") - - FIND_PROGRAM(QT_UIC3_EXECUTABLE - NAMES uic3 - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_RCC_EXECUTABLE - NAMES rcc - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE - NAMES qdbuscpp2xml - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE - NAMES qdbusxml2cpp - PATHS ${QT_BINARY_DIR} - NO_DEFAULT_PATH - ) - - IF (QT_MOC_EXECUTABLE) - SET(QT_WRAP_CPP "YES") - ENDIF (QT_MOC_EXECUTABLE) - - IF (QT_UIC_EXECUTABLE) - SET(QT_WRAP_UI "YES") - ENDIF (QT_UIC_EXECUTABLE) - - - - MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) - - ###################################### - # - # Macros for building Qt files - # - ###################################### - - MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - - FOREACH(_current ${_inc_DIRS}) - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) - ENDFOREACH(_current ${_inc_DIRS}) - ENDMACRO(QT4_GET_MOC_INC_DIRS) - - - MACRO (QT4_GENERATE_MOC infile outfile ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) - - SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file - - MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) - ENDMACRO (QT4_GENERATE_MOC) - - - # QT4_WRAP_CPP(outfiles inputfile ... ) - # TODO perhaps add support for -D, -U and other minor options - - MACRO (QT4_WRAP_CPP outfiles ) - # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${it} - DEPENDS ${it}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) - - ENDMACRO (QT4_WRAP_CPP) - - - # QT4_WRAP_UI(outfiles inputfile ... ) - - MACRO (QT4_WRAP_UI outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_UIC_EXECUTABLE} - ARGS -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_WRAP_UI) - - - # QT4_ADD_RESOURCES(outfiles inputfile ... ) - # TODO perhaps consider adding support for compression and root options to rcc - - MACRO (QT4_ADD_RESOURCES outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(rc_path ${infile} PATH) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) - # parse file for dependencies - FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") - SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") - ENDFOREACH(_RC_FILE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_RCC_EXECUTABLE} - ARGS -name ${outfilename} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_ADD_RESOURCES) - - MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) - GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) - IF ( _nonamespace ) - SET(_params -N -m -p) - ELSE ( _nonamespace ) - SET(_params -m -p) - ENDIF ( _nonamespace ) - - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} - DEPENDS ${_infile}) - - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - - QT4_GENERATE_MOC(${_header} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - ENDMACRO(QT4_ADD_DBUS_INTERFACE) - - MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) - SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) - ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) - - # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES - MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) - GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) - # get the part before the ".xml" suffix - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) - STRING(TOLOWER ${_basename} _basename) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) - ENDMACRO(_QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES _sources) - FOREACH (_current_FILE ${ARGN}) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) - FOREACH (_current_FILE ${ARGN}) - SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) - - MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) - SET(_customName "${ARGV1}") - GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - - IF (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) - ELSE (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) - ENDIF (_customName) - - ADD_CUSTOM_COMMAND(OUTPUT ${_target} - COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} - DEPENDS ${_in_file} - ) - ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - - - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) - GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) - - SET(_optionalBasename "${ARGV4}") - IF (_optionalBasename) - SET(_basename ${_optionalBasename} ) - ELSE (_optionalBasename) - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) - STRING(TOLOWER ${_basename} _basename) - ENDIF (_optionalBasename) - - SET(_optionalClassName "${ARGV5}") - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - IF(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ELSE(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ENDIF(_optionalClassName) - - QT4_GENERATE_MOC(${_header} ${_moc}) - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - ENDMACRO(QT4_ADD_DBUS_ADAPTOR) - - MACRO(QT4_AUTOMOC) - QT4_GET_MOC_INC_DIRS(_moc_INCS) - - SET(_matching_FILES ) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # here. this is required to make bouic work correctly: - # we need to add generated .cpp files to the sources (to compile them), - # but we cannot let automoc handle them, as the .cpp files don't exist yet when - # cmake is run for the very first time on them -> however the .cpp files might - # exist at a later run. at that time we need to skip them, so that we don't add two - # different rules for the same moc file - GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - - IF ( NOT _skip AND EXISTS ${_abs_FILE} ) - - FILE(READ ${_abs_FILE} _contents) - - GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - - STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) - FOREACH (_current_MOC_INC ${_match}) - STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - - GET_filename_component(_basename ${_current_MOC} NAME_WE) - # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_moc_INCS} ${_header} -o ${_moc} - DEPENDS ${_header} - ) - - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) - ENDFOREACH (_current_MOC_INC) - ENDIF(_match) - ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_AUTOMOC) - - - - ###################################### - # - # decide if Qt got found - # - ###################################### - - # if the includes,libraries,moc,uic and rcc are found then we have it - IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "YES" ) - IF( NOT Qt4_FIND_QUIETLY) - IF (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") - ELSE (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") - ENDIF (WIN32) - ENDIF( NOT Qt4_FIND_QUIETLY) - ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET( QT4_FOUND "NO") - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF( Qt4_FIND_REQUIRED) - IF ( NOT QT_LIBRARY_DIR ) - MESSAGE(STATUS "Qt libraries NOT found!") - ENDIF(NOT QT_LIBRARY_DIR ) - IF ( NOT QT_INCLUDE_DIR ) - MESSAGE(STATUS "Qt includes NOT found!") - ENDIF( NOT QT_INCLUDE_DIR ) - IF ( NOT QT_MOC_EXECUTABLE ) - MESSAGE(STATUS "Qt's moc NOT found!") - ENDIF( NOT QT_MOC_EXECUTABLE ) - IF ( NOT QT_UIC_EXECUTABLE ) - MESSAGE(STATUS "Qt's uic NOT found!") - ENDIF( NOT QT_UIC_EXECUTABLE ) - IF ( NOT QT_RCC_EXECUTABLE ) - MESSAGE(STATUS "Qt's rcc NOT found!") - ENDIF( NOT QT_RCC_EXECUTABLE ) - MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") - ENDIF( Qt4_FIND_REQUIRED) - ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) - SET(QT_FOUND ${QT4_FOUND}) - - - ####################################### - # - # System dependent settings - # - ####################################### - # for unix add X11 stuff - IF(UNIX) - # on OS X X11 may not be required - IF (Q_WS_X11) - FIND_PACKAGE(X11 REQUIRED) - ENDIF (Q_WS_X11) - FIND_PACKAGE(Threads) - SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - ENDIF(UNIX) - - - ####################################### - # - # compatibility settings - # - ####################################### - # Backwards compatibility for CMake1.4 and 1.2 - SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) - SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) - - SET( QT_QT_LIBRARY "") - -ELSE(QT4_QMAKE_FOUND) - - SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) - IF(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ELSE(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE( FATAL_ERROR "Qt qmake not found!") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) - ELSE(Qt4_FIND_REQUIRED) - IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") - ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) - ENDIF(Qt4_FIND_REQUIRED) - -ENDIF (QT4_QMAKE_FOUND) - +# - Find QT 4 +# This module can be used to find Qt4. +# The most important issue is that the Qt4 qmake is available via the system path. +# This qmake is then used to detect basically everything else. +# This module defines a number of key variables and macros. First is +# QT_USE_FILE which is the path to a CMake file that can be included to compile +# Qt 4 applications and libraries. By default, the QtCore and QtGui +# libraries are loaded. This behavior can be changed by setting one or more +# of the following variables to true: +# QT_DONT_USE_QTCORE +# QT_DONT_USE_QTGUI +# QT_USE_QT3SUPPORT +# QT_USE_QTASSISTANT +# QT_USE_QTDESIGNER +# QT_USE_QTMOTIF +# QT_USE_QTMAIN +# QT_USE_QTNETWORK +# QT_USE_QTNSPLUGIN +# QT_USE_QTOPENGL +# QT_USE_QTSQL +# QT_USE_QTXML +# QT_USE_QTSVG +# QT_USE_QTTEST +# QT_USE_QTUITOOLS +# QT_USE_QTDBUS +# +# All the libraries required are stored in a variable called QT_LIBRARIES. +# Add this variable to your TARGET_LINK_LIBRARIES. +# +# macro QT4_WRAP_CPP(outfiles inputfile ... ) +# macro QT4_WRAP_UI(outfiles inputfile ... ) +# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) +# macro QT4_AUTOMOC(inputfile ... ) +# macro QT4_GENERATE_MOC(inputfile outputfile ) +# +# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) +# create a the interface header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) +# create the interface header and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) +# create a the interface without namespace header and implementation files with the +# given basename from the given interface xml file and add it to +# the list of sources +# +# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) +# create the interface header without namespace and implementation files +# for all listed interface xml files +# the name will be automatically determined from the name of the xml file +# +# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) +# create a dbus adaptor (header and implementation file) from the xml file +# describing the interface, and add it to the list of sources. The adaptor +# forwards the calls to a parent class, defined in parentheader and named +# parentclassname. The name of the generated files will be +# adaptor.{cpp,h} where basename is the basename of the xml file. +# +# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) +# generate the xml interface file from the given header. +# If the optional argument interfacename is omitted, the name of the +# interface file is constructed from the basename of the header with +# the suffix .xml appended. +# +# QT_FOUND If false, don't try to use Qt. +# QT4_FOUND If false, don't try to use Qt 4. +# +# QT_QTCORE_FOUND True if QtCore was found. +# QT_QTGUI_FOUND True if QtGui was found. +# QT_QT3SUPPORT_FOUND True if Qt3Support was found. +# QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTDBUS_FOUND True if QtDBus was found. +# QT_QTDESIGNER_FOUND True if QtDesigner was found. +# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. +# QT_QTMOTIF_FOUND True if QtMotif was found. +# QT_QTNETWORK_FOUND True if QtNetwork was found. +# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. +# QT_QTOPENGL_FOUND True if QtOpenGL was found. +# QT_QTSQL_FOUND True if QtSql was found. +# QT_QTXML_FOUND True if QtXml was found. +# QT_QTSVG_FOUND True if QtSvg was found. +# QT_QTSCRIPT_FOUND True if QtScript was found. +# QT_QTTEST_FOUND True if QtTest was found. +# QT_QTUITOOLS_FOUND True if QtUiTools was found. +# +# QT_DEFINITIONS Definitions to use when compiling code that uses Qt. +# +# QT_INCLUDES List of paths to all include directories of +# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are +# always in this variable even if NOTFOUND, +# all other INCLUDE_DIRS are +# only added if they are found. +# +# QT_INCLUDE_DIR Path to "include" of Qt4 +# QT_QT_INCLUDE_DIR Path to "include/Qt" +# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" +# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" +# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" +# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" +# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" +# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" +# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" +# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" +# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" +# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" +# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" +# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" +# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" +# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" +# +# QT_LIBRARY_DIR Path to "lib" of Qt4 +# +# QT_PLUGINS_DIR Path to "plugins" for Qt4 +# +# For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. +# +# So there are the following variables: +# The Qt3Support library: QT_QT3SUPPORT_LIBRARY +# +# The QtAssistant library: QT_QTASSISTANT_LIBRARY +# +# The QtCore library: QT_QTCORE_LIBRARY +# +# The QtDBus library: QT_QTDBUS_LIBRARY +# +# The QtDesigner library: QT_QTDESIGNER_LIBRARY +# +# The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY +# +# The QtGui library: QT_QTGUI_LIBRARY +# +# The QtMotif library: QT_QTMOTIF_LIBRARY +# +# The QtNetwork library: QT_QTNETWORK_LIBRARY +# +# The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY +# +# The QtOpenGL library: QT_QTOPENGL_LIBRARY +# +# The QtSql library: QT_QTSQL_LIBRARY +# +# The QtXml library: QT_QTXML_LIBRARY +# +# The QtSvg library: QT_QTSVG_LIBRARY +# +# The QtScript library: QT_QTSCRIPT_LIBRARY +# +# The QtTest library: QT_QTTEST_LIBRARY +# +# The qtmain library for Windows QT_QTMAIN_LIBRARY +# +# The QtUiTools library: QT_QTUITOOLS_LIBRARY +# +# also defined, but NOT for general use are +# QT_MOC_EXECUTABLE Where to find the moc tool. +# QT_UIC_EXECUTABLE Where to find the uic tool. +# QT_UIC3_EXECUTABLE Where to find the uic3 tool. +# QT_RCC_EXECUTABLE Where to find the rcc tool +# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. +# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. +# +# QT_DOC_DIR Path to "doc" of Qt4 +# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 +# +# +# These are around for backwards compatibility +# they will be set +# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found +# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found +# +# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake) +# QT_MT_REQUIRED Qt4 is now always multithreaded +# +# These variables are set to "" Because Qt structure changed +# (They make no sense in Qt4) +# QT_QT_LIBRARY Qt-Library is now split + +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + +INCLUDE(CheckSymbolExists) +INCLUDE(MacroAddFileDependencies) +INCLUDE(MacroPushRequiredVars) + +SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) + +SET( QT_DEFINITIONS "") + +IF (WIN32) + SET(QT_DEFINITIONS -DQT_DLL) +ENDIF(WIN32) + +SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) + +# macro for asking qmake to process pro files +MACRO(QT_QUERY_QMAKE outvar invar) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro + "message(CMAKE_MESSAGE<$$${invar}>)") + + EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} + WORKING_DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake + OUTPUT_VARIABLE _qmake_query_output + ERROR_VARIABLE _qmake_query_output ) + + FILE(REMOVE_RECURSE + "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") + + STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") +ENDMACRO(QT_QUERY_QMAKE) + +# check for qmake +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin +) + +IF (QT_QMAKE_EXECUTABLE) + + SET(QT4_QMAKE_FOUND FALSE) + + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + + # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path + IF("${QTVERSION}" MATCHES "Unknown") + SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) + FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + $ENV{QTDIR}/bin + ) + IF(QT_QMAKE_EXECUTABLE) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + ENDIF(QT_QMAKE_EXECUTABLE) + ENDIF("${QTVERSION}" MATCHES "Unknown") + + # check that we found the Qt4 qmake, Qt3 qmake output won't match here + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") + IF (qt_version_tmp) + + # we need at least version 4.0.0 + IF (NOT QT_MIN_VERSION) + SET(QT_MIN_VERSION "4.0.0") + ENDIF (NOT QT_MIN_VERSION) + + #now parse the parts of the user given version string into variables + STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}") + IF (NOT req_qt_major_vers) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers) + + # now parse the parts of the user given version string into variables + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + + IF (NOT req_qt_major_vers EQUAL 4) + MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") + ENDIF (NOT req_qt_major_vers EQUAL 4) + + # and now the version string given by qmake + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") + + # compute an overall version number which can be compared at once + MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") + MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") + + IF (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND FALSE) + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) + ELSE (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND TRUE) + ENDIF (found_vers LESS req_vers) + ENDIF (qt_version_tmp) + +ENDIF (QT_QMAKE_EXECUTABLE) + +IF (QT4_QMAKE_FOUND) + + # ask qmake for the library dir + # Set QT_LIBRARY_DIR + IF (NOT QT_LIBRARY_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_LIBS" + OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + IF(EXISTS "${QT_LIBRARY_DIR_TMP}") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") + ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") + ENDIF(NOT QT_LIBRARY_DIR) + + IF (APPLE) + IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS ON + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_USE_FRAMEWORKS OFF + CACHE BOOL "Set to ON if Qt build uses frameworks.") + ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) + ENDIF (APPLE) + + # ask qmake for the binary dir + IF (NOT QT_BINARY_DIR) + EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") + ENDIF (NOT QT_BINARY_DIR) + + # ask qmake for the include dir + IF (NOT QT_HEADERS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_HEADERS" + OUTPUT_VARIABLE qt_headers ) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") + ENDIF(NOT QT_HEADERS_DIR) + + + # ask qmake for the documentation directory + IF (NOT QT_DOC_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_DOCS" + OUTPUT_VARIABLE qt_doc_dir ) + SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") + ENDIF (NOT QT_DOC_DIR) + + # ask qmake for the mkspecs directory + IF (NOT QT_MKSPECS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QMAKE_MKSPECS" + OUTPUT_VARIABLE qt_mkspecs_dir ) + SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") + ENDIF (NOT QT_MKSPECS_DIR) + + # ask qmake for the plugins directory + IF (NOT QT_PLUGINS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_PLUGINS" + OUTPUT_VARIABLE qt_plugins_dir ) + SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") + ENDIF (NOT QT_PLUGINS_DIR) + ######################################## + # + # Setting the INCLUDE-Variables + # + ######################################## + + FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal + ${QT_HEADERS_DIR}/QtCore + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} + IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + IF (QT_USE_FRAMEWORKS) + SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR}) + ELSE (QT_USE_FRAMEWORKS) + STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR}) + SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "") + ENDIF (QT_USE_FRAMEWORKS) + ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) + + IF( NOT QT_INCLUDE_DIR) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_INCLUDE_DIR) + + ############################################# + # + # Find out what window system we're using + # + ############################################# + # Save required includes and required_flags variables + macro_push_required_vars() + # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES + SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") + # On Mac OS X when Qt has framework support, also add the framework path + IF( QT_USE_FRAMEWORKS ) + SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") + ENDIF( QT_USE_FRAMEWORKS ) + # Check for Window system symbols (note: only one should end up being set) + CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) + CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + + IF (QT_QTCOPY_REQUIRED) + CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) + IF (NOT QT_IS_QTCOPY) + MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") + ENDIF (NOT QT_IS_QTCOPY) + ENDIF (QT_QTCOPY_REQUIRED) + + # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables + macro_pop_required_vars() + # + ############################################# + + IF (QT_USE_FRAMEWORKS) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) + ENDIF (QT_USE_FRAMEWORKS) + + # Set QT_QT3SUPPORT_INCLUDE_DIR + FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support + PATHS + ${QT_INCLUDE_DIR}/Qt3Support + ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QT_INCLUDE_DIR + FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h + PATHS + ${QT_INCLUDE_DIR}/Qt + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTGUI_INCLUDE_DIR + FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui + PATHS + ${QT_INCLUDE_DIR}/QtGui + ${QT_LIBRARY_DIR}/QtGui.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg + PATHS + ${QT_INCLUDE_DIR}/QtSvg + ${QT_LIBRARY_DIR}/QtSvg.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSVG_INCLUDE_DIR + FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript + PATHS + ${QT_INCLUDE_DIR}/QtScript + ${QT_LIBRARY_DIR}/QtScript.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTTEST_INCLUDE_DIR + FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest + PATHS + ${QT_INCLUDE_DIR}/QtTest + ${QT_LIBRARY_DIR}/QtTest.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTUITOOLS_INCLUDE_DIR + FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools + PATHS + ${QT_INCLUDE_DIR}/QtUiTools + ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers + NO_DEFAULT_PATH + ) + + + + # Set QT_QTMOTIF_INCLUDE_DIR + IF(Q_WS_X11) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_INCLUDE_DIR + FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork + PATHS + ${QT_INCLUDE_DIR}/QtNetwork + ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTNSPLUGIN_INCLUDE_DIR + FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin + PATHS + ${QT_INCLUDE_DIR}/QtNsPlugin + ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTOPENGL_INCLUDE_DIR + FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL + PATHS + ${QT_INCLUDE_DIR}/QtOpenGL + ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTSQL_INCLUDE_DIR + FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql + PATHS + ${QT_INCLUDE_DIR}/QtSql + ${QT_LIBRARY_DIR}/QtSql.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTXML_INCLUDE_DIR + FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml + PATHS + ${QT_INCLUDE_DIR}/QtXml + ${QT_LIBRARY_DIR}/QtXml.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTASSISTANT_INCLUDE_DIR + FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant + PATHS + ${QT_INCLUDE_DIR}/QtAssistant + ${QT_HEADERS_DIR}/QtAssistant + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNER_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_INCLUDE_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + NO_DEFAULT_PATH + ) + + + # Set QT_QTDBUS_INCLUDE_DIR + FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus + PATHS + ${QT_INCLUDE_DIR}/QtDBus + ${QT_HEADERS_DIR}/QtDBus + NO_DEFAULT_PATH + ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) + + # Set QT_INCLUDES + SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) + + + ######################################## + # + # Setting the LIBRARY-Variables + # + ######################################## + + IF (QT_USE_FRAMEWORKS) + # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have + # to jump through these hoops. + IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND TRUE) + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND TRUE) + SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND TRUE) + SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND TRUE) + SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND TRUE) + SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND TRUE) + SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND TRUE) + SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND TRUE) + SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND TRUE) + SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND TRUE) + SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + + # WTF? why don't we have frameworks? :P + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) + + ELSE (QT_USE_FRAMEWORKS) + + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + + # Set QT_QT3SUPPORT_LIBRARY + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTGUI_LIBRARY + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMOTIF_LIBRARY + IF(Q_WS_X11) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(Q_WS_X11) + + # Set QT_QTNETWORK_LIBRARY + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTNSPLUGIN_LIBRARY + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTOPENGL_LIBRARY + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSQL_LIBRARY + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTXML_LIBRARY + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSVG_LIBRARY + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTTEST_LIBRARY + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + IF(MSVC) + FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_RELEASE NAMES QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(MSVC) + ENDIF (QT_USE_FRAMEWORKS) + + IF( NOT QT_QTCORE_LIBRARY ) + IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") + ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF( NOT QT_QTCORE_LIBRARY ) + + # Set QT_QTASSISTANT_LIBRARY + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNER_LIBRARY + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTDESIGNERCOMPONENTS_LIBRARY + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTMAIN_LIBRARY + IF(WIN32) + FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(WIN32) + + ############################################ + # + # Check the existence of the libraries. + # + ############################################ + + MACRO (_QT4_ADJUST_LIB_VARS basename) + IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF(MSVC) + # Both set + IF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + + # Only debug was found + IF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) + + # Only release was found + IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + + # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) + + ENDIF(MSVC) + + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") + + IF (QT_${basename}_LIBRARY) + SET(QT_${basename}_FOUND 1) + ENDIF (QT_${basename}_LIBRARY) + + ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) + + IF (QT_${basename}_INCLUDE_DIR) + #add the include directory to QT_INCLUDES + SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + ENDIF (QT_${basename}_INCLUDE_DIR) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) + ENDMACRO (_QT4_ADJUST_LIB_VARS) + + + # Set QT_xyz_LIBRARY variable and add + # library include path to QT_INCLUDES + _QT4_ADJUST_LIB_VARS(QTCORE) + _QT4_ADJUST_LIB_VARS(QTGUI) + _QT4_ADJUST_LIB_VARS(QT3SUPPORT) + _QT4_ADJUST_LIB_VARS(QTASSISTANT) + _QT4_ADJUST_LIB_VARS(QTDESIGNER) + _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) + _QT4_ADJUST_LIB_VARS(QTNETWORK) + _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) + _QT4_ADJUST_LIB_VARS(QTOPENGL) + _QT4_ADJUST_LIB_VARS(QTSQL) + _QT4_ADJUST_LIB_VARS(QTXML) + _QT4_ADJUST_LIB_VARS(QTSVG) + _QT4_ADJUST_LIB_VARS(QTSCRIPT) + _QT4_ADJUST_LIB_VARS(QTUITOOLS) + _QT4_ADJUST_LIB_VARS(QTTEST) + _QT4_ADJUST_LIB_VARS(QTDBUS) + + + # platform dependent libraries + IF(Q_WS_X11) + _QT4_ADJUST_LIB_VARS(QTMOTIF) + ENDIF(Q_WS_X11) + IF(WIN32) + _QT4_ADJUST_LIB_VARS(QTMAIN) + ENDIF(WIN32) + + ####################################### + # + # Check the executables of Qt + # ( moc, uic, rcc ) + # + ####################################### + + + # find moc and uic using qmake + QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") + QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") + + FILE(TO_CMAKE_PATH + "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) + FILE(TO_CMAKE_PATH + "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) + + SET(QT_MOC_EXECUTABLE + ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") + SET(QT_UIC_EXECUTABLE + ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") + + FIND_PROGRAM(QT_UIC3_EXECUTABLE + NAMES uic3 + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_RCC_EXECUTABLE + NAMES rcc + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE + NAMES qdbuscpp2xml + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE + NAMES qdbusxml2cpp + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + IF (QT_MOC_EXECUTABLE) + SET(QT_WRAP_CPP "YES") + ENDIF (QT_MOC_EXECUTABLE) + + IF (QT_UIC_EXECUTABLE) + SET(QT_WRAP_UI "YES") + ENDIF (QT_UIC_EXECUTABLE) + + + + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) + + ###################################### + # + # Macros for building Qt files + # + ###################################### + + MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) + SET(${_moc_INC_DIRS}) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + + FOREACH(_current ${_inc_DIRS}) + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) + + + MACRO (QT4_GENERATE_MOC infile outfile ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) + + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${abs_infile} + DEPENDS ${abs_infile}) + + SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + + MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) + ENDMACRO (QT4_GENERATE_MOC) + + + # QT4_WRAP_CPP(outfiles inputfile ... ) + # TODO perhaps add support for -D, -U and other minor options + + MACRO (QT4_WRAP_CPP outfiles ) + # get include dirs + QT4_GET_MOC_INC_DIRS(moc_includes) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${it} + DEPENDS ${it}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + + ENDMACRO (QT4_WRAP_CPP) + + + # QT4_WRAP_UI(outfiles inputfile ... ) + + MACRO (QT4_WRAP_UI outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_WRAP_UI) + + + # QT4_ADD_RESOURCES(outfiles inputfile ... ) + # TODO perhaps consider adding support for compression and root options to rcc + + MACRO (QT4_ADD_RESOURCES outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(rc_path ${infile} PATH) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + # parse file for dependencies + FILE(READ "${infile}" _RC_FILE_CONTENTS) + STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") + SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") + ENDFOREACH(_RC_FILE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_RCC_EXECUTABLE} + ARGS -name ${outfilename} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (QT4_ADD_RESOURCES) + + MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) + GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) + IF ( _nonamespace ) + SET(_params -N -m -p) + ELSE ( _nonamespace ) + SET(_params -m -p) + ENDIF ( _nonamespace ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} + DEPENDS ${_infile}) + + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + + QT4_GENERATE_MOC(${_header} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + ENDMACRO(QT4_ADD_DBUS_INTERFACE) + + MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) + SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) + ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) + + # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES + MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) + GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) + # get the part before the ".xml" suffix + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) + STRING(TOLOWER ${_basename} _basename) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + ENDMACRO(_QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES) + + MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) + FOREACH (_current_FILE ${ARGN}) + SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) + _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) + + MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) + SET(_customName "${ARGV1}") + GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) + + IF (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) + ELSE (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + ENDIF (_customName) + + ADD_CUSTOM_COMMAND(OUTPUT ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} + DEPENDS ${_in_file} + ) + ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) + + + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) + GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) + + SET(_optionalBasename "${ARGV4}") + IF (_optionalBasename) + SET(_basename ${_optionalBasename} ) + ELSE (_optionalBasename) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) + STRING(TOLOWER ${_basename} _basename) + ENDIF (_optionalBasename) + + SET(_optionalClassName "${ARGV5}") + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + IF(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ELSE(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ENDIF(_optionalClassName) + + QT4_GENERATE_MOC(${_header} ${_moc}) + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + ENDMACRO(QT4_ADD_DBUS_ADAPTOR) + + MACRO(QT4_AUTOMOC) + QT4_GET_MOC_INC_DIRS(_moc_INCS) + + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # here. this is required to make bouic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) + + IF ( NOT _skip AND EXISTS ${_abs_FILE} ) + + FILE(READ ${_abs_FILE} _contents) + + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_filename_component(_basename ${_current_MOC} NAME_WE) + # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) + SET(_header ${_abs_PATH}/${_basename}.h) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + ADD_CUSTOM_COMMAND(OUTPUT ${_moc} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${_moc_INCS} ${_header} -o ${_moc} + DEPENDS ${_header} + ) + + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_AUTOMOC) + + + + ###################################### + # + # decide if Qt got found + # + ###################################### + + # if the includes,libraries,moc,uic and rcc are found then we have it + IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "YES" ) + IF( NOT Qt4_FIND_QUIETLY) + IF (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") + ELSE (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") + ENDIF (WIN32) + ENDIF( NOT Qt4_FIND_QUIETLY) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET( QT4_FOUND "NO") + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF( Qt4_FIND_REQUIRED) + IF ( NOT QT_LIBRARY_DIR ) + MESSAGE(STATUS "Qt libraries NOT found!") + ENDIF(NOT QT_LIBRARY_DIR ) + IF ( NOT QT_INCLUDE_DIR ) + MESSAGE(STATUS "Qt includes NOT found!") + ENDIF( NOT QT_INCLUDE_DIR ) + IF ( NOT QT_MOC_EXECUTABLE ) + MESSAGE(STATUS "Qt's moc NOT found!") + ENDIF( NOT QT_MOC_EXECUTABLE ) + IF ( NOT QT_UIC_EXECUTABLE ) + MESSAGE(STATUS "Qt's uic NOT found!") + ENDIF( NOT QT_UIC_EXECUTABLE ) + IF ( NOT QT_RCC_EXECUTABLE ) + MESSAGE(STATUS "Qt's rcc NOT found!") + ENDIF( NOT QT_RCC_EXECUTABLE ) + MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") + ENDIF( Qt4_FIND_REQUIRED) + ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + SET(QT_FOUND ${QT4_FOUND}) + + + ####################################### + # + # System dependent settings + # + ####################################### + # for unix add X11 stuff + IF(UNIX) + # on OS X X11 may not be required + IF (Q_WS_X11) + FIND_PACKAGE(X11 REQUIRED) + ENDIF (Q_WS_X11) + FIND_PACKAGE(Threads) + SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + ENDIF(UNIX) + + + ####################################### + # + # compatibility settings + # + ####################################### + # Backwards compatibility for CMake1.4 and 1.2 + SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} ) + SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} ) + + SET( QT_QT_LIBRARY "") + +ELSE(QT4_QMAKE_FOUND) + + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + IF(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ELSE(QT4_INSTALLED_VERSION_TOO_OLD) + MESSAGE( FATAL_ERROR "Qt qmake not found!") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) + ELSE(Qt4_FIND_REQUIRED) + IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) + ENDIF(Qt4_FIND_REQUIRED) + +ENDIF (QT4_QMAKE_FOUND) + -- cgit v1.2.1 From 19ef2f6d9782bee485f20f77eb66ca2d6cf04605 Mon Sep 17 00:00:00 2001 From: Charles Connell Date: Sat, 14 Jul 2007 20:48:19 +0000 Subject: Oops, this is not needed svn path=/trunk/KDE/kdelibs/; revision=687949 --- modules/FindLibkleo.cmake | 52 ----------------------------------------------- 1 file changed, 52 deletions(-) delete mode 100644 modules/FindLibkleo.cmake (limited to 'modules') diff --git a/modules/FindLibkleo.cmake b/modules/FindLibkleo.cmake deleted file mode 100644 index 3b70938e..00000000 --- a/modules/FindLibkleo.cmake +++ /dev/null @@ -1,52 +0,0 @@ - - -if(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) - - # read from cache - set(LIBKLEO_FOUND TRUE) - -else(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) - - FIND_PATH(LIBKLEO_INCLUDE_DIR - NAMES - libkleo/libkleo_export.h - libkleo/ui/keyrequester.h - libklep/kleo/decryptjob.h - PATHS - /usr/include - /usr/local/include - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} - ) - - FIND_LIBRARY(LIBKLEO_LIBRARIES - NAMES - kleo-gpl - PATHS - /usr/lib - /usr/local/lib - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - if(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) - set(LIBKLEO_FOUND TRUE) - endif(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) - - if(LIBKLEO_FOUND) - if(NOT LIBKLEO_FIND_QUIETLY) - message(STATUS "Found LIBKLEO: ${LIBKLEO_LIBRARIES}") - endif(NOT LIBKLEO_FIND_QUIETLY) - else(LIBKLEO_FOUND) - if(LIBKLEO_FIND_REQUIRED) - if(NOT LIBKLEO_INCLUDE_DIR) - message(STATUS "Could not find LIBKLEO includes.") - endif(NOT LIBKLEO_INCLUDE_DIR) - if(NOT LIBKLEO_LIBRARIES) - message(STATUS "Could not find LIBKLEO library.") - endif(NOT LIBKLEO_LIBRARIES) - endif(LIBKLEO_FIND_REQUIRED) - endif(LIBKLEO_FOUND) - -endif(LIBKLEO_INCLUDE_DIR AND LIBKLEO_LIBRARIES) - -mark_as_advanced(LIBKLEO_INCLUDE_DIR LIBKLEO_LIBRARIES) -- cgit v1.2.1 From c59a60af070ece837376f87b5835bc6a8f65aa14 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 15 Jul 2007 14:03:09 +0000 Subject: KLEO, not KLEOPATRA. Also, the lib will have a "-gpl" extension. svn path=/trunk/KDE/kdelibs/; revision=688235 --- modules/FindKdepimLibs.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index de282e3c..de499be7 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -65,8 +65,8 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) - find_library(KDE4_KLEOPATRA_LIBRARY NAMES kleopatra PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KLEOPATRA_LIBS ${kleopatra_LIB_DEPENDS} ${KDE4_KLEOPATRA_LIBRARY} ) + find_library(KDE4_KLEO_LIBRARY NAMES kleo-gpl PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_KLEO_LIBS ${kleo_LIB_DEPENDS} ${KDE4_KLEO_LIBRARY} ) find_library(KDE4_KXMLRPCCLIENT_LIBRARY NAMES kxmlrpcclient PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KXMLRPCCLIENT_LIBS ${kxmlrpcclient_LIB_DEPENDS} ${KDE4_KXMLRPCCLIENT_LIBRARY} ) -- cgit v1.2.1 From 1d2435529fd29b8e94030eccae526f617e907373 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 16 Jul 2007 06:48:02 +0000 Subject: Rename it as discussed with Alex svn path=/trunk/KDE/kdelibs/; revision=688461 --- modules/FindIW.cmake | 39 ------------------------------------ modules/FindLinuxWirelesstools.cmake | 39 ++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 39 deletions(-) delete mode 100644 modules/FindIW.cmake create mode 100644 modules/FindLinuxWirelesstools.cmake (limited to 'modules') diff --git a/modules/FindIW.cmake b/modules/FindIW.cmake deleted file mode 100644 index 902002d8..00000000 --- a/modules/FindIW.cmake +++ /dev/null @@ -1,39 +0,0 @@ -# - Try to find wireless extensions support libraries -# Once done this will define -# -# IW_FOUND - system has IW -# IW_INCLUDE_DIR - the IW include directory -# IW_LIBRARIES - Link to these to use IW - -# Copyright (c) 2006, Thorsten Roeder, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -IF (IW_INCLUDE_DIR) - # Already in cache, be silent - SET(IW_FIND_QUIETLY TRUE) -ENDIF (IW_INCLUDE_DIR) - -FIND_PATH(IW_INCLUDE_DIR iwlib.h) - -FIND_LIBRARY(IW_LIBRARIES NAMES iw) - -IF(IW_INCLUDE_DIR AND IW_LIBRARIES) - SET(IW_FOUND TRUE) -ENDIF(IW_INCLUDE_DIR AND IW_LIBRARIES) - -IF(IW_FOUND) - IF(NOT IW_FIND_QUIETLY) - MESSAGE(STATUS "Found IW: ${IW_LIBRARIES}") - ENDIF(NOT IW_FIND_QUIETLY) -ELSE(IW_FOUND) - IF(IW_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find IW") - ENDIF(IW_FIND_REQUIRED) -ENDIF(IW_FOUND) - -# show the IW_INCLUDE_DIR and IW_LIBRARIES variables only in the advanced view -MARK_AS_ADVANCED(IW_INCLUDE_DIR IW_LIBRARIES ) - diff --git a/modules/FindLinuxWirelesstools.cmake b/modules/FindLinuxWirelesstools.cmake new file mode 100644 index 00000000..844e6c56 --- /dev/null +++ b/modules/FindLinuxWirelesstools.cmake @@ -0,0 +1,39 @@ +# - Try to find wireless extensions support libraries +# Once done this will define +# +# IW_FOUND - system has IW +# IW_INCLUDE_DIR - the IW include directory +# IW_LIBRARIES - Link to these to use IW + +# Copyright (c) 2006, Thorsten Roeder, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +IF (IW_INCLUDE_DIR) + # Already in cache, be silent + SET(LinuxWirelesstools_FIND_QUIETLY TRUE) +ENDIF (IW_INCLUDE_DIR) + +FIND_PATH(IW_INCLUDE_DIR iwlib.h) + +FIND_LIBRARY(IW_LIBRARIES NAMES iw) + +IF(IW_INCLUDE_DIR AND IW_LIBRARIES) + SET(IW_FOUND TRUE) +ENDIF(IW_INCLUDE_DIR AND IW_LIBRARIES) + +IF(IW_FOUND) + IF(NOT LinuxWirelesstools_FIND_QUIETLY) + MESSAGE(STATUS "Found Linux Wirelesstools lib : ${IW_LIBRARIES}") + ENDIF(NOT LinuxWirelesstools_FIND_QUIETLY) +ELSE(IW_FOUND) + IF(LinuxWirelesstools_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Linux Wirelesstools (libIW)") + ENDIF(LinuxWirelesstools_FIND_REQUIRED) +ENDIF(IW_FOUND) + +# show the IW_INCLUDE_DIR and IW_LIBRARIES variables only in the advanced view +MARK_AS_ADVANCED(IW_INCLUDE_DIR IW_LIBRARIES ) + -- cgit v1.2.1 From 83efbe6af8134dd337e81a6526a6b116224afc67 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 16 Jul 2007 08:31:44 +0000 Subject: - change back the generic version to be in sync | with the major KDE version and instead define | an override for those libraries that clash svn path=/trunk/KDE/kdelibs/; revision=688504 --- modules/KDE4Defaults.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index d4279930..162dd2f4 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -23,8 +23,11 @@ set(CMAKE_COLOR_MAKEFILE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes -set(GENERIC_LIB_VERSION "5.0.0") -set(GENERIC_LIB_SOVERSION "5") +set(GENERIC_LIB_VERSION "4.0.0") +set(GENERIC_LIB_SOVERSION "4") + +set(KDE_NON_GENERIC_LIB_VERSION "5.0.0") +set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar # all searchable directories has to be defined by the PATH environment var -- cgit v1.2.1 From 0215d39d1aaac8e682085776006affb3e04a6e0a Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 17 Jul 2007 12:13:19 +0000 Subject: let search KDEPimLibsDependencies.cmake in CMAKE_MODULE_PATH, not only in hardcoded path svn path=/trunk/KDE/kdelibs/; revision=689007 --- modules/FindKdepimLibs.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index de499be7..08c9f50b 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -30,7 +30,7 @@ if( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND TRUE) # this file contains all dependencies of all libraries of kdepimlibs, Alex - include(${kde_cmake_module_dir}/KDEPimLibsDependencies.cmake) + include(KDEPimLibsDependencies) find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgmepp PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) -- cgit v1.2.1 From dd01e68e0fe612b7793887fa26004fd3d9fd9442 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 17 Jul 2007 13:13:54 +0000 Subject: Define this symbol everywhere, not just on Windows svn path=/trunk/KDE/kdelibs/; revision=689027 --- modules/KDE4Macros.cmake | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index af0f2448..178c9724 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -790,13 +790,11 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) kde4_handle_rpath_for_library(${_target_NAME}) - if (WIN32) - # for shared libraries a -DMAKE_target_LIB is required - string(TOUPPER ${_target_NAME} _symbol) - string(REPLACE "-" "_" _symbol ${_symbol}) - set(_symbol "MAKE_${_symbol}_LIB") - set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) - endif (WIN32) + # for shared libraries a -DMAKE_target_LIB is required + string(TOUPPER ${_target_NAME} _symbol) + string(REPLACE "-" "_" _symbol ${_symbol}) + set(_symbol "MAKE_${_symbol}_LIB") + set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -- cgit v1.2.1 From 03bfecd1cc3e1c9677762d315bc3e7cd4ee76767 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Wed, 18 Jul 2007 00:04:58 +0000 Subject: Do not install SVN support files in l10n/ll/scripts. svn path=/trunk/KDE/kdelibs/; revision=689251 --- modules/KDE4Macros.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 178c9724..419205be 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -262,8 +262,11 @@ endmacro(KDE4_INSTALL_PO_FILES) macro(KDE4_INSTALL_TS_FILES _lang _sdir) file(GLOB_RECURSE _ts_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${_sdir}/*) foreach(_current_TS_FILES ${_ts_files}) - get_filename_component(_subpath ${_current_TS_FILES} PATH) - install(FILES ${_current_TS_FILES} DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_SCRIPTS/${_subpath}) + string(REGEX MATCH "\\.svn/" _in_svn ${_current_TS_FILES}) + if(NOT _in_svn) + get_filename_component(_subpath ${_current_TS_FILES} PATH) + install(FILES ${_current_TS_FILES} DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_SCRIPTS/${_subpath}) + endif(NOT _in_svn) endforeach(_current_TS_FILES) endmacro(KDE4_INSTALL_TS_FILES) -- cgit v1.2.1 From c5f5f0a72e04d5b07e3b68f08856fcbdb853b7e8 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 18 Jul 2007 09:15:18 +0000 Subject: win32 fix: make sure no dll is build using auto-import because it makes trouble in some cases svn path=/trunk/KDE/kdelibs/; revision=689445 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 96bbc66d..db0daae1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -721,8 +721,8 @@ if (MSVC) endif(MSVC) if (MINGW) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols") + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") endif (MINGW) if (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From 0b663fd8d27f18fcf7f7519dfc68768a2cd5b3ce Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 18 Jul 2007 20:34:14 +0000 Subject: fix for win32 svn path=/trunk/KDE/kdelibs/; revision=689661 --- modules/FindQCA2.cmake | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 02c78a78..795aa7cb 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -27,19 +27,17 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) PKGCONFIG(qca QCA2_INCLUDE_DIR _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) set(QCA2_DEFINITIONS ${_Qca2Cflags}) - ELSE (NOT WIN32) - FIND_PATH(QCA2_INCLUDE_DIR QtCrypto + FIND_LIBRARY(QCA2_LIBRARIES NAMES qca PATHS - ${_Qca2IncDir} - ) + ${_Qca2LinkDir} + NO_DEFAULT_PATH + ) + ELSE (NOT WIN32) + FIND_PATH(QCA2_INCLUDE_DIR QtCrypto) + FIND_LIBRARY(QCA2_LIBRARIES NAMES qca) ENDIF (NOT WIN32) - FIND_LIBRARY(QCA2_LIBRARIES NAMES qca - PATHS - ${_Qca2LinkDir} - NO_DEFAULT_PATH - ) if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) set(QCA2_FOUND TRUE) -- cgit v1.2.1 From 7f040e43ab1778150bac0c305104ff6a5ad86676 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 19 Jul 2007 20:06:53 +0000 Subject: - fixed comments - added /win32libs to KDEWIN search svn path=/trunk/KDE/kdelibs/; revision=690003 --- modules/FindKDEWIN.cmake | 8 +++++--- modules/FindKDEWIN32.cmake | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake index 3e40fd37..4626ca7c 100644 --- a/modules/FindKDEWIN.cmake +++ b/modules/FindKDEWIN.cmake @@ -1,4 +1,4 @@ -# - Try to find the KDEWIN library +# - Try to find the directory in which the kdewin32 library and other win32 related libraries lives # # used environment vars # KDEWIN_DIR - kdewin root dir @@ -25,7 +25,7 @@ if (WIN32) endif (MINGW) # search in the default program install folder - find_file(KDEWIN_DIR_tmp ${DIR} kdewin kdewin32 gnuwin32 + find_file(KDEWIN_DIR_tmp ${DIR} kdewin kdewin32 win32libs gnuwin32 PATHS "${_progFiles}" ) @@ -50,7 +50,9 @@ if (WIN32) "\t\t/${DIR}\n" "\t\t/kdewin\n" "\t\t/kdewin32\n" - "\t\t/gnuwin32\n") + "\t\t/win32libs\n" + "\t\t/gnuwin32\n" + ) endif(KDEWIN_DIR) endif (WIN32) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 0bacd3fa..68a2f68a 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -1,4 +1,4 @@ -# - Try to find the directory in which the kdewin32 library and other win32 related libraries lives +# - Try to find the KDEWIN32 library # # Once done this will define # -- cgit v1.2.1 From d6b28c54b7465f79d026a867c1204f67de46823b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sat, 21 Jul 2007 21:05:38 +0000 Subject: too much parameters for the msvc IDE, put them into a file and use the moc option '@' svn path=/trunk/KDE/kdelibs/; revision=690693 --- modules/FindQt4.cmake | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8ba01cbb..6e6e6915 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -902,10 +902,21 @@ IF (QT4_QMAKE_FOUND) GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) + IF (MSVC_IDE) + SET (_moc_parameter_file ${outfile}_parameters) + SET (_moc_param "${moc_includes} \n-o${outfile} \n${abs_infile}") + STRING(REGEX REPLACE ";-I;" "\\n-I" _moc_param "${_moc_param}") + FILE (WRITE ${_moc_parameter_file} "${_moc_param}") + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS @"${_moc_parameter_file}" + DEPENDS ${abs_infile}) + ELSE (MSVC_IDE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${abs_infile} + DEPENDS ${abs_infile}) + ENDIF (MSVC_IDE) SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file -- cgit v1.2.1 From 2199b64af161e7722021bc1508f50a50e11588f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Sat, 21 Jul 2007 21:09:09 +0000 Subject: remove tabs svn path=/trunk/KDE/kdelibs/; revision=690694 --- modules/FindQt4.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 6e6e6915..e1642404 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -912,10 +912,10 @@ IF (QT4_QMAKE_FOUND) ARGS @"${_moc_parameter_file}" DEPENDS ${abs_infile}) ELSE (MSVC_IDE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_includes} -o ${outfile} ${abs_infile} + DEPENDS ${abs_infile}) ENDIF (MSVC_IDE) SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file @@ -1041,7 +1041,7 @@ IF (QT4_QMAKE_FOUND) MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) FOREACH (_current_FILE ${ARGN}) - SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) + SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) ENDFOREACH (_current_FILE) ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) @@ -1166,10 +1166,10 @@ IF (QT4_QMAKE_FOUND) SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF( Qt4_FIND_REQUIRED) IF ( NOT QT_LIBRARY_DIR ) - MESSAGE(STATUS "Qt libraries NOT found!") + MESSAGE(STATUS "Qt libraries NOT found!") ENDIF(NOT QT_LIBRARY_DIR ) IF ( NOT QT_INCLUDE_DIR ) - MESSAGE(STATUS "Qt includes NOT found!") + MESSAGE(STATUS "Qt includes NOT found!") ENDIF( NOT QT_INCLUDE_DIR ) IF ( NOT QT_MOC_EXECUTABLE ) MESSAGE(STATUS "Qt's moc NOT found!") -- cgit v1.2.1 From df1b2f4f7d9ecc7f887115f9046155970b80d55e Mon Sep 17 00:00:00 2001 From: Tom Albers Date: Sun, 22 Jul 2007 22:03:41 +0000 Subject: libkleo will move back to kdepim svn path=/trunk/KDE/kdelibs/; revision=691082 --- modules/FindKdepimLibs.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 08c9f50b..50fdf390 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -65,9 +65,6 @@ if( KDEPIMLIBS_INCLUDE_DIR ) find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) - find_library(KDE4_KLEO_LIBRARY NAMES kleo-gpl PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KLEO_LIBS ${kleo_LIB_DEPENDS} ${KDE4_KLEO_LIBRARY} ) - find_library(KDE4_KXMLRPCCLIENT_LIBRARY NAMES kxmlrpcclient PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_KXMLRPCCLIENT_LIBS ${kxmlrpcclient_LIB_DEPENDS} ${KDE4_KXMLRPCCLIENT_LIBRARY} ) -- cgit v1.2.1 From 4c8e458321e0ae7a983f537f7737b5ca3f6978e2 Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Sun, 22 Jul 2007 23:02:52 +0000 Subject: Bump minimum supported CUPS version to 1.1.20, and drop some compatibility code. svn path=/trunk/KDE/kdelibs/; revision=691112 --- modules/FindCups.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 0fd0ae5b..92c958d9 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -6,6 +6,8 @@ # CUPS_LIBRARIES - Libraries needed to use Cups # Set CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE if you need a version which # features this function (i.e. at least 1.1.19) +# Set CUPS_REQUIRE_CUPS_DO_AUTHENTICATION to TRUE if you need a version which +# features this function (i.e. at least 1.1.20) # Copyright (c) 2006, Alexander Neundorf, # @@ -28,6 +30,12 @@ IF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) SET(CUPS_FOUND FALSE) ENDIF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) + # cupsDoAuthentication is new in cups-1.1.20 (and used by kdeprint) + CHECK_LIBRARY_EXISTS(cups cupsDoAuthentication "" CUPS_HAS_CUPS_DO_AUTHENTICATION) + IF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) + SET(CUPS_FOUND FALSE) + ENDIF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) + ELSE (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) SET(CUPS_FOUND FALSE) ENDIF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) -- cgit v1.2.1 From 6fcde8cd082947a3559310675c1b72a5b5780230 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 23 Jul 2007 04:06:48 +0000 Subject: move the mimetype update macro to FindSharedMimeInfo.cmake, since it belongs to this stuff and not really to KDE4 Alex svn path=/trunk/KDE/kdelibs/; revision=691173 --- modules/FindKDE4Internal.cmake | 4 +++- modules/FindSharedMimeInfo.cmake | 20 ++++++++++++++++---- modules/KDE4Macros.cmake | 37 +++++++++---------------------------- 3 files changed, 28 insertions(+), 33 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index db0daae1..24c0d8d8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -99,6 +99,7 @@ # KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir # XDG_APPS_DIR - the XDG apps dir # XDG_DIRECTORY_DIR - the XDG directory +# XDG_MIME_INSTALL_DIR - the XDG mimetypes install dir # DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) # DBUS_SERVICES_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) # @@ -346,8 +347,9 @@ _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The _set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") _set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") -_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") +_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") _set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") +_set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") _set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 83da92e3..8b10d208 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -3,7 +3,7 @@ # # SHARED_MIME_INFO_FOUND - system has the shared-mime-info package # UPDATE_MIME_DATABASE_EXECUTABLE - the update-mime-database executable -# + # Copyright (c) 2007, Pino Toscano, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -49,7 +49,19 @@ else (UPDATE_MIME_DATABASE_EXECUTABLE) endif (SharedMimeInfo_FIND_REQUIRED) endif (SHARED_MIME_INFO_FOUND) - # ensure that they are cached - set(UPDATE_MIME_DATABASE_EXECUTABLE ${UPDATE_MIME_DATABASE_EXECUTABLE} CACHE INTERNAL "The update-mime-database executable") - endif (UPDATE_MIME_DATABASE_EXECUTABLE) + +macro(UPDATE_XDG_MIMETYPES _path) + get_filename_component(_xdgmimeDir "${_path}" NAME) + if("${_xdgmimeDir}" STREQUAL packages ) + get_filename_component(_xdgmimeDir "${_path}" PATH) + else("${_xdgmimeDir}" STREQUAL packages ) + set(_xdgmimeDir "${_path}") + endif("${_xdgmimeDir}" STREQUAL packages ) + install(CODE " +set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") +if (NOT DESTDIR_VALUE) + execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir}) +endif (NOT DESTDIR_VALUE) +") +endmacro (UPDATE_XDG_MIMETYPES) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 419205be..492cf8b3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -23,7 +23,6 @@ # KDE4_INSTALL_HANDBOOK # KDE4_CREATE_PO_FILES # KDE4_INSTALL_PO_FILES -# KDE4_INSTALL_XDG_MIMETYPES # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, @@ -151,10 +150,6 @@ macro (KDE4_ADD_UI3_FILES _sources ) endforeach (_current_FILE) endmacro (KDE4_ADD_UI3_FILES) -macro (KDE4_AUTOMOC) - message(SEND_ERROR "KDE4_AUTOMOC() is not required anymore for automoc, please remove it") -endmacro (KDE4_AUTOMOC) - macro (KDE4_SET_CUSTOM_TARGET_PROPERTY _target_name _property_name _property) string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(_kde4_${_dir}_${_target_name}_${_property_name} "${_property}") @@ -420,11 +415,6 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) endmacro (KDE4_INSTALL_ICONS) -MACRO (KDE4_INSTALL_LIBTOOL_FILE) - message(SEND_ERROR "KDE4_INSTALL_LIBTOOL_FILE() is deprecated, please remove it") -ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) - - # For all C++ sources a big source file which includes all the files # is created. # This is not done for the C sources, they are just gathered in a separate list @@ -863,25 +853,16 @@ macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) endmacro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) -macro (INSTALL_XDG_MIMETYPES _path ) - - foreach (_current_FILE ${ARGN}) - - install(FILES ${_current_FILE} DESTINATION ${_path}/share/mime/packages) - - install(CODE " -set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") -if (NOT DESTDIR_VALUE) - exec_program(update-mime-database ARGS ${_path}/share/mime/) -endif (NOT DESTDIR_VALUE) -") - - endforeach (_current_FILE) +macro (KDE4_INSTALL_XDG_MIMETYPES) + message(SEND_ERROR "KDE4_INSTALL_XDG_MIMETYPES() is deprecated, see kdelibs/mimetypes/CMakeLists.txt for an example") +endmacro (KDE4_INSTALL_XDG_MIMETYPES) -endmacro (INSTALL_XDG_MIMETYPES) +macro (KDE4_AUTOMOC) + message(SEND_ERROR "KDE4_AUTOMOC() is not required anymore for automoc, please remove it") +endmacro (KDE4_AUTOMOC) -macro (KDE4_INSTALL_XDG_MIMETYPES) +MACRO (KDE4_INSTALL_LIBTOOL_FILE) + message(SEND_ERROR "KDE4_INSTALL_LIBTOOL_FILE() is deprecated, please remove it") +ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) - install_xdg_mimetypes(${CMAKE_INSTALL_PREFIX} ${ARGN}) -endmacro (KDE4_INSTALL_XDG_MIMETYPES) -- cgit v1.2.1 From a63c25826690dcf298aad1f67ea895b23ff9869c Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 23 Jul 2007 06:54:39 +0000 Subject: change XDG_APPS_DIR -> XDG_APPS_INSTALL_DIR, XDG_DIRECTORY_DIR->XDG_DIRECTORY_INSTALL_DIR, DBUS_INTERFACES_DIR->DBUS_INTERFACES_INSTALL_ DIR, DBUS_SERVICES_DIR->DBUS_SERVICES_INSTALL_DIR to have same naming convention as discussed with Alex. Fix into khtml cmakefile to try to fix enable-final (generate khtml_final_cpp.cpp before to use it) svn path=/trunk/KDE/kdelibs/; revision=691212 --- modules/FindKDE4Internal.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 24c0d8d8..95189c87 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -97,11 +97,11 @@ # TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) # WALLPAPER_INSTALL_DIR - the install dir for wallpapers # KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir -# XDG_APPS_DIR - the XDG apps dir -# XDG_DIRECTORY_DIR - the XDG directory +# XDG_APPS_INSTALL_DIR - the XDG apps dir +# XDG_DIRECTORY_INSTALL_DIR- the XDG directory # XDG_MIME_INSTALL_DIR - the XDG mimetypes install dir -# DBUS_INTERFACES_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) -# DBUS_SERVICES_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) +# DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) +# DBUS_SERVICES_INSTALL_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) # # The following variables are provided, but are seem to be unused: # LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") @@ -347,15 +347,15 @@ _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The _set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") _set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") -_set_fancy(XDG_APPS_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") -_set_fancy(XDG_DIRECTORY_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") +_set_fancy(XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") +_set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") _set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") _set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") _set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") -_set_fancy(DBUS_INTERFACES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") -_set_fancy(DBUS_SERVICES_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") +_set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") +_set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") ################################# -- cgit v1.2.1 From 2a29a2307adbadd15d0c46e632b3cb7f0a673193 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 23 Jul 2007 15:29:38 +0000 Subject: fix for QCA2 include dir on win32 svn path=/trunk/KDE/kdelibs/; revision=691401 --- modules/FindQCA2.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 795aa7cb..87c93b96 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -34,8 +34,11 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) NO_DEFAULT_PATH ) ELSE (NOT WIN32) - FIND_PATH(QCA2_INCLUDE_DIR QtCrypto) + FIND_PATH(QCA2_INCLUDE_DIR QtCrypto/qca.h) FIND_LIBRARY(QCA2_LIBRARIES NAMES qca) + IF(QCA2_INCLUDE_DIR) + SET(QCA2_INCLUDE_DIR ${QCA2_INCLUDE_DIR}/QtCrypto CACHE TYPE PATH FORCE) + ENDIF(QCA2_INCLUDE_DIR) ENDIF (NOT WIN32) -- cgit v1.2.1 From d7a84fc9dad43df4723093aa26290e503f515c5e Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Mon, 23 Jul 2007 16:22:07 +0000 Subject: Be more robust when creating export macro defines svn path=/trunk/KDE/kdelibs/; revision=691419 --- modules/KDE4Macros.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 492cf8b3..483ce233 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -564,7 +564,7 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) if (WIN32) # for shared libraries/plugins a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) - string(REPLACE "-" "_" _symbol ${_symbol}) + string(REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) @@ -785,7 +785,7 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) # for shared libraries a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) - string(REPLACE "-" "_" _symbol ${_symbol}) + string(REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) @@ -842,7 +842,7 @@ ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) string(TOUPPER ${_libName} _libNameUpperCase) - string(REPLACE "-" "_" _libNameUpperCase ${_libNameUpperCase}) + string(REPLACE "[^_A-Za-z0-9]" "_" _libNameUpperCase ${_libNameUpperCase}) # the next line is is required, because in CMake arguments to macros are not real # variables, but handled differently. The next line create a real CMake variable, # so configure_file() will replace it correctly. -- cgit v1.2.1 From 4d9d2a83f64120ba95d1726c1a922c2004a3c85d Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 23 Jul 2007 19:15:50 +0000 Subject: subtle attempt to break win32 compilation - read the docs marc ! ;-) CCMAIL: mutz@kde.org svn path=/trunk/KDE/kdelibs/; revision=691495 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 483ce233..4bbb7235 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -564,7 +564,7 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) if (WIN32) # for shared libraries/plugins a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) - string(REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) + string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endif (WIN32) @@ -785,7 +785,7 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) # for shared libraries a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) - string(REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) + string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) -- cgit v1.2.1 From 5483186e8c8430eb363fb4ac631bae9aa74e9e40 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 23 Jul 2007 19:33:02 +0000 Subject: ok, this is a hack to make update-mime-database work again. We need to find a better solution with all those paths... CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=691498 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 95189c87..f5d606fe 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -306,7 +306,7 @@ endmacro(_SET_FANCY) if (WIN32) # use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") - _set_fancy(SHARE_INSTALL_PREFIX "share" "Base directory for files which go to share/") + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") -- cgit v1.2.1 From 3b1d39a184b1bac7d62bc97d2ae8061b91fded13 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Tue, 24 Jul 2007 05:00:54 +0000 Subject: REPLACE -> REGEX REPLACE svn path=/trunk/KDE/kdelibs/; revision=691631 --- modules/KDE4Macros.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4bbb7235..87acc626 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -151,13 +151,13 @@ macro (KDE4_ADD_UI3_FILES _sources ) endmacro (KDE4_ADD_UI3_FILES) macro (KDE4_SET_CUSTOM_TARGET_PROPERTY _target_name _property_name _property) - string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") + string(REGEX REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(_kde4_${_dir}_${_target_name}_${_property_name} "${_property}") endmacro (KDE4_SET_CUSTOM_TARGET_PROPERTY) macro (KDE4_GET_CUSTOM_TARGET_PROPERTY _var _target_name _property_name) - string(REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") + string(REGEX REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(${_var} "${_kde4_${_dir}_${_target_name}_${_property_name}}") endmacro (KDE4_GET_CUSTOM_TARGET_PROPERTY) @@ -842,7 +842,7 @@ ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) string(TOUPPER ${_libName} _libNameUpperCase) - string(REPLACE "[^_A-Za-z0-9]" "_" _libNameUpperCase ${_libNameUpperCase}) + string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _libNameUpperCase ${_libNameUpperCase}) # the next line is is required, because in CMake arguments to macros are not real # variables, but handled differently. The next line create a real CMake variable, # so configure_file() will replace it correctly. -- cgit v1.2.1 From 8a35b80aa3013bdf6b1d717c7357e14de7c44da6 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 24 Jul 2007 14:23:20 +0000 Subject: the name of the installed library is "libgpgme++" now svn path=/trunk/KDE/kdelibs/; revision=691881 --- modules/FindKdepimLibs.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 50fdf390..66ba5d9f 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -32,7 +32,7 @@ if( KDEPIMLIBS_INCLUDE_DIR ) # this file contains all dependencies of all libraries of kdepimlibs, Alex include(KDEPimLibsDependencies) - find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgmepp PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgme++ PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) find_library(KDE4_KABC_LIBRARY NAMES kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) -- cgit v1.2.1 From fda274b64c61ae5a65153af082c40a454f696d1c Mon Sep 17 00:00:00 2001 From: "Aaron J. Seigo" Date: Tue, 24 Jul 2007 15:02:12 +0000 Subject: PLASMA_LIBS not PLASMA_LIBRARIES svn path=/trunk/KDE/kdelibs/; revision=691895 --- modules/FindPlasma.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index 8aa0d1c9..469779ce 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -8,10 +8,10 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (PLASMA_INCLUDE_DIR AND PLASMA_LIBRARIES) +if (PLASMA_INCLUDE_DIR AND PLASMA_LIBS) # Already in cache, be silent set(Plasma_FIND_QUIETLY TRUE) -endif (PLASMA_INCLUDE_DIR AND PLASMA_LIBRARIES) +endif (PLASMA_INCLUDE_DIR AND PLASMA_LIBS) find_path(PLASMA_INCLUDE_DIR NAMES plasma/plasma.h @@ -19,17 +19,17 @@ find_path(PLASMA_INCLUDE_DIR NAMES plasma/plasma.h ${INCLUDE_INSTALL_DIR} ) -find_library(PLASMA_LIBRARIES NAMES plasma +find_library(PLASMA_LIBS NAMES plasma PATHS ${LIB_INSTALL_DIR} ) -if (PLASMA_LIBRARIES AND PLASMA_INCLUDE_DIR) +if (PLASMA_LIBS AND PLASMA_INCLUDE_DIR) set(PLASMA_FOUND TRUE) -endif (PLASMA_LIBRARIES AND PLASMA_INCLUDE_DIR) +endif (PLASMA_LIBS AND PLASMA_INCLUDE_DIR) if (PLASMA_FOUND) if (NOT Plasma_FIND_QUIETLY) - message(STATUS "Found Plasma: ${PLASMA_LIBRARIES}") + message(STATUS "Found Plasma: ${PLASMA_LIBS}") endif (NOT Plasma_FIND_QUIETLY) else (PLASMA_FOUND) if (Plasma_FIND_REQUIRED) @@ -37,4 +37,4 @@ else (PLASMA_FOUND) endif (Plasma_FIND_REQUIRED) endif (PLASMA_FOUND) -mark_as_advanced(PLASMA_INCLUDE_DIR PLASMA_LIBRARIES) +mark_as_advanced(PLASMA_INCLUDE_DIR PLASMA_LIBS) -- cgit v1.2.1 From 820f870c30d2c33ec9af47237573e44c526d406f Mon Sep 17 00:00:00 2001 From: Rivo Laks Date: Tue, 24 Jul 2007 19:03:50 +0000 Subject: Add KDE4_UPDATE_ICONCACHE() macro and call it from KDE4_INSTALL_ICONS() svn path=/trunk/KDE/kdelibs/; revision=691973 --- modules/FindKDE4Internal.cmake | 4 ++++ modules/KDE4Macros.cmake | 11 +++++++++++ 2 files changed, 15 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f5d606fe..a0305d87 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -184,6 +184,10 @@ # KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ); to be able to use xmlgui # and other things in the test, that normally require installation # +# KDE4_UPDATE_ICONCACHE() +# Notifies the icon cache that new icons have been installed by updating +# mtime of ${ICON_INSTALL_DIR}/hicolor directory. +# # KDE4_INSTALL_ICONS( path theme) # Installs all png and svgz files in the current directory to the icon # directoy given in path, in the subdirectory for the given icon theme. diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 87acc626..cf7d769f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -15,6 +15,7 @@ # KDE4_ADD_TEST_EXECUTABLE # KDE4_ADD_EXECUTABLE # KDE4_ADD_WIDGET_FILES +# KDE4_UPDATE_ICONCACHE # KDE4_INSTALL_ICONS # KDE4_REMOVE_OBSOLETE_CMAKE_FILES # KDE4_NO_ENABLE_FINAL @@ -323,6 +324,14 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) endmacro (KDE4_CREATE_HTML_HANDBOOK) +macro (KDE4_UPDATE_ICONCACHE) + # Update mtime of hicolor icon theme dir. + # We don't always have touch command (e.g. on Windows), so instead create + # and delete a temporary file in the theme dir. + install(CODE "file(WRITE \"${ICON_INSTALL_DIR}/hicolor/temp.txt\" \"update\")") + install(CODE "file(REMOVE \"${ICON_INSTALL_DIR}/hicolor/temp.txt\")") +endmacro (KDE4_UPDATE_ICONCACHE) + # a "map" of short type names to the directories # unknown names should give empty results # KDE 3 compatibility @@ -412,6 +421,8 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) endif( _theme_GROUP) endforeach (_current_ICON) + KDE4_UPDATE_ICONCACHE() + endmacro (KDE4_INSTALL_ICONS) -- cgit v1.2.1 From 05f030a4a13b3d9d473bfd7f2b74b45067509deb Mon Sep 17 00:00:00 2001 From: Rivo Laks Date: Tue, 24 Jul 2007 21:56:42 +0000 Subject: Make KDE4_UPDATE_ICONCACHE() no-op if DESTDIR is set svn path=/trunk/KDE/kdelibs/; revision=692029 --- modules/KDE4Macros.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index cf7d769f..3b957308 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -328,8 +328,13 @@ macro (KDE4_UPDATE_ICONCACHE) # Update mtime of hicolor icon theme dir. # We don't always have touch command (e.g. on Windows), so instead create # and delete a temporary file in the theme dir. - install(CODE "file(WRITE \"${ICON_INSTALL_DIR}/hicolor/temp.txt\" \"update\")") - install(CODE "file(REMOVE \"${ICON_INSTALL_DIR}/hicolor/temp.txt\")") + install(CODE " + set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") + if (NOT DESTDIR_VALUE) + file(WRITE \"${ICON_INSTALL_DIR}/hicolor/temp.txt\" \"update\") + file(REMOVE \"${ICON_INSTALL_DIR}/hicolor/temp.txt\") + endif (NOT DESTDIR_VALUE) + ") endmacro (KDE4_UPDATE_ICONCACHE) # a "map" of short type names to the directories -- cgit v1.2.1 From 3d129ea54f483730f508125fd8fa7cccab2fbdfb Mon Sep 17 00:00:00 2001 From: "Aaron J. Seigo" Date: Tue, 24 Jul 2007 22:11:46 +0000 Subject: PLASMA_OPENGL_FOUND svn path=/trunk/KDE/kdelibs/; revision=692033 --- modules/FindPlasma.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index 469779ce..6779cd04 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -25,6 +25,10 @@ find_library(PLASMA_LIBS NAMES plasma ) if (PLASMA_LIBS AND PLASMA_INCLUDE_DIR) set(PLASMA_FOUND TRUE) + + find_file(PLASMA_OPENGL_FOUND glapplet.h + PATHS ${PLASMA_INCLUDE_DIR} + NO_DEFAULT_PATH) endif (PLASMA_LIBS AND PLASMA_INCLUDE_DIR) if (PLASMA_FOUND) -- cgit v1.2.1 From 58143773fcf78a2c719d434b5623779d0b9b3a1f Mon Sep 17 00:00:00 2001 From: Jason vanRijn Kasper Date: Wed, 25 Jul 2007 21:12:40 +0000 Subject: - okayed by thiago - commenting the fact that QT4_ADD_DBUS_ADAPTOR actually has 6 parameters. the 5th and 6th are optional and allow for configuring the basename and classname of the generated adaptor classes. svn path=/trunk/KDE/kdelibs/; revision=692557 --- modules/FindQt4.cmake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e1642404..ae757c17 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -53,12 +53,14 @@ # for all listed interface xml files # the name will be automatically determined from the name of the xml file # -# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] ) +# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname]) # create a dbus adaptor (header and implementation file) from the xml file # describing the interface, and add it to the list of sources. The adaptor # forwards the calls to a parent class, defined in parentheader and named # parentclassname. The name of the generated files will be -# adaptor.{cpp,h} where basename is the basename of the xml file. +# adaptor.{cpp,h} where basename defaults to the basename of the xml file. +# If is provided, then it will be used as the classname of the +# adaptor itself. # # macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) # generate the xml interface file from the given header. @@ -1064,7 +1066,7 @@ IF (QT4_QMAKE_FOUND) ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename ) + MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename _optionalClassName) GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) SET(_optionalBasename "${ARGV4}") -- cgit v1.2.1 From 1fbd4c65f0cc84a140e503f8a74dc672cff11c88 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 26 Jul 2007 12:59:43 +0000 Subject: replace the incorrect message about "recent strigi" with 0.5.3. svn path=/trunk/KDE/kdelibs/; revision=692857 --- modules/FindStrigi.cmake | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index fada801c..360f3a74 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -8,6 +8,7 @@ # STRIGI_LIBRARIES - Link these to use both Strigi libraries +set(STRIGI_MIN_VERSION "0.5.3") if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) @@ -19,6 +20,22 @@ FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include ) + +if (NOT WIN32) + include(UsePkgConfig) + + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} + libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + + if(NOT _return_VALUE STREQUAL "0") + message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") + else(NOT _return_VALUE STREQUAL "0") + if(NOT Strigi_FIND_QUIETLY) + message(STATUS "Found Strigi >= ${STRIGI_MIN_VERSION}") + endif(NOT Strigi_FIND_QUIETLY) + endif(NOT _return_VALUE STREQUAL "0") +endif (NOT WIN32) + FIND_LIBRARY(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS $ENV{STRIGI_HOME}/lib @@ -38,11 +55,9 @@ ENDIF(STRIGI_INCLUDE_DIR AND STRIGI_STREAMANALYZER_LIBRARY AND STRIGI_STREAMS_LI IF(STRIGI_FOUND) SET(STRIGI_LIBRARIES ${STRIGI_STREAMANALYZER_LIBRARY} ${STRIGI_STREAMS_LIBRARY}) + IF(NOT Strigi_FIND_QUIETLY) - MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMANALYZER_LIBRARY}") - MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMS_LIBRARY}") - MESSAGE(STATUS "Make sure Strigi is a recent SVN version!") - MESSAGE(STATUS "** svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi") + MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMANALYZER_LIBRARY} ${STRIGI_STREAMS_LIBRARY} ") ENDIF(NOT Strigi_FIND_QUIETLY) ELSE(STRIGI_FOUND) IF(Strigi_FIND_REQUIRED) -- cgit v1.2.1 From 1650c538b2f09a0582f5d1e0000414839c96cc11 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 26 Jul 2007 13:49:39 +0000 Subject: give a hint svn path=/trunk/KDE/kdelibs/; revision=692881 --- modules/FindStrigi.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 360f3a74..7405f8c3 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -28,6 +28,7 @@ if (NOT WIN32) libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(NOT _return_VALUE STREQUAL "0") + message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi is installed?") message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") else(NOT _return_VALUE STREQUAL "0") if(NOT Strigi_FIND_QUIETLY) -- cgit v1.2.1 From 23849aeb06feba90f7edf62449abbee6562abcff Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Sun, 29 Jul 2007 16:44:53 +0000 Subject: Give extra hints on failure to find Strigi svn path=/trunk/KDE/kdelibs/; revision=693961 --- modules/FindStrigi.cmake | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 7405f8c3..a76bc51d 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -61,6 +61,15 @@ IF(STRIGI_FOUND) MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMANALYZER_LIBRARY} ${STRIGI_STREAMS_LIBRARY} ") ENDIF(NOT Strigi_FIND_QUIETLY) ELSE(STRIGI_FOUND) + IF(NOT Strigi_FIND_QUIETLY) + IF(NOT STRIGI_STREAMANALYZER_LIBRARY) + MESSAGE(STATUS "Couldn't find Strigi streamanalyzer library in $ENV{STRIGI_HOME}/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib") + ENDIF(NOT STRIGI_STREAMANALYZER_LIBRARY) + + IF(NOT STRIGI_STREAMS_LIBRARY) + MESSAGE(STATUS "Couldn't find Strigi streams library in $ENV{STRIGI_HOME}/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib") + ENDIF(NOT STRIGI_STREAMS_LIBRARY) + ENDIF(NOT Strigi_FIND_QUIETLY) IF(Strigi_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find Strigi") ENDIF(Strigi_FIND_REQUIRED) -- cgit v1.2.1 From 14a79609c4840735b9eb9159fe91f3907868865b Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 1 Aug 2007 23:02:01 +0000 Subject: add macro KDE4_CREATE_MANPAGE(). This macro creates a roff file from a manpage docbook. Still todo: write the macro to install the manpages. FYI: I don't think we have any such docbook files yet, but I am working on one for konsolekalendar as a test case. svn path=/trunk/KDE/kdelibs/; revision=695367 --- modules/KDE4Macros.cmake | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 3b957308..36b401f4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -324,6 +324,27 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) endmacro (KDE4_CREATE_HTML_HANDBOOK) +macro (KDE4_CREATE_MANPAGE _docbook) + get_filename_component(_input ${_docbook} ABSOLUTE) + set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.1) + + set(_bootstrapOption) + #Bootstrap + if (_kdeBootStrapping) + set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/docbook/xsl/manpages/docbook.xsl) + set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") + else (_kdeBootStrapping) + set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl) + endif (_kdeBootStrapping) + + add_custom_command(OUTPUT ${_doc} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} -o ${_doc} ${_input} + DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} + ) + add_custom_target(manpage ALL DEPENDS ${_doc}) +endmacro (KDE4_CREATE_MANPAGE) + + macro (KDE4_UPDATE_ICONCACHE) # Update mtime of hicolor icon theme dir. # We don't always have touch command (e.g. on Windows), so instead create -- cgit v1.2.1 From 4ad5360c8ecbe5a8a9c38082231bb978d183980c Mon Sep 17 00:00:00 2001 From: Richard Dale Date: Thu, 2 Aug 2007 18:42:23 +0000 Subject: * Improve the error message when the strigi pkgconfig test fails svn path=/trunk/KDE/kdelibs/; revision=695716 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a76bc51d..c6c2a883 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -28,7 +28,7 @@ if (NOT WIN32) libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(NOT _return_VALUE STREQUAL "0") - message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi is installed?") + message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") else(NOT _return_VALUE STREQUAL "0") if(NOT Strigi_FIND_QUIETLY) -- cgit v1.2.1 From b934aae5f61f38183cd62a459c61b2625e71b52c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Aug 2007 01:13:21 +0000 Subject: remove unnecessary default search paths Alex svn path=/trunk/KDE/kdelibs/; revision=695813 --- modules/FindACL.cmake | 14 +++----------- modules/FindAGG.cmake | 4 ---- modules/FindBerkeleyDB.cmake | 7 +------ modules/FindFAM.cmake | 13 +++---------- modules/FindFreetype.cmake | 2 -- modules/FindPNG.cmake | 3 --- 6 files changed, 7 insertions(+), 36 deletions(-) (limited to 'modules') diff --git a/modules/FindACL.cmake b/modules/FindACL.cmake index 9fb06782..e21e25fa 100644 --- a/modules/FindACL.cmake +++ b/modules/FindACL.cmake @@ -21,17 +21,9 @@ if (HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIB endif (HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) if (ACL_HEADERS_FOUND) - FIND_LIBRARY(ACL_LIBS NAMES acl - PATHS - /usr/lib - /usr/local/lib - ) - - FIND_LIBRARY(ATTR_LIBS NAMES attr - PATHS - /usr/lib - /usr/local/lib - ) + FIND_LIBRARY(ACL_LIBS NAMES acl ) + + FIND_LIBRARY(ATTR_LIBS NAMES attr ) endif (ACL_HEADERS_FOUND) if (ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 178c772b..57b1d29f 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -28,15 +28,11 @@ IF (NOT WIN32) ENDIF (NOT WIN32) FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h ${_AGGIncDir} - /usr/include - /usr/local/include ) FIND_LIBRARY(AGG_LIBRARIES NAMES agg PATHS ${_AGGLinkDir} - /usr/lib - /usr/local/lib ) if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake index 2a8ba293..e68af609 100644 --- a/modules/FindBerkeleyDB.cmake +++ b/modules/FindBerkeleyDB.cmake @@ -12,16 +12,11 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. FIND_PATH(BERKELEY_DB_INCLUDE_DIR db.h - /usr/include/ /usr/include/db4 /usr/local/include/db4 ) -FIND_LIBRARY(BERKELEY_DB_LIBRARIES NAMES db - PATHS - /usr/lib - /usr/local/lib -) +FIND_LIBRARY(BERKELEY_DB_LIBRARIES NAMES db ) IF(BERKELEY_DB_INCLUDE_DIR AND BERKELEY_DB_LIBRARIES) SET(BERKELEY_DB_FOUND TRUE) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index bdfa0e03..d7144d52 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -16,16 +16,9 @@ if (FAM_INCLUDE_DIR) set(FAM_FIND_QUIETLY TRUE) endif (FAM_INCLUDE_DIR) -FIND_PATH(FAM_INCLUDE_DIR fam.h - /usr/include - /usr/local/include -) - -FIND_LIBRARY(FAM_LIBRARIES NAMES fam - PATHS - /usr/lib - /usr/local/lib -) +FIND_PATH(FAM_INCLUDE_DIR fam.h) + +FIND_LIBRARY(FAM_LIBRARIES NAMES fam ) if (FAM_INCLUDE_DIR AND FAM_LIBRARIES) diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 2ce6eab3..f061e71a 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -19,8 +19,6 @@ if (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) FIND_PROGRAM(FREETYPECONFIG_EXECUTABLE NAMES freetype-config PATHS - /usr/bin - /usr/local/bin /opt/local/bin ) diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake index c0c18d8e..1648d82e 100644 --- a/modules/FindPNG.cmake +++ b/modules/FindPNG.cmake @@ -21,15 +21,12 @@ SET(PNG_FOUND "NO") IF(ZLIB_FOUND) FIND_PATH(PNG_PNG_INCLUDE_DIR png.h - /usr/local/include - /usr/include /usr/local/include/libpng # OpenBSD ) SET(PNG_NAMES ${PNG_NAMES} png libpng) FIND_LIBRARY(PNG_LIBRARY NAMES ${PNG_NAMES} - PATHS /usr/lib /usr/local/lib ) IF (PNG_LIBRARY AND PNG_PNG_INCLUDE_DIR) -- cgit v1.2.1 From 2b9a0f1b3d7a91d93a63d4cf85c2d08e71d0906d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Aug 2007 01:15:06 +0000 Subject: remove unnecessary default search path Alex svn path=/trunk/KDE/kdelibs/; revision=695815 --- modules/UsePkgConfig.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index a3f831e5..8874c94e 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -12,7 +12,7 @@ -FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) +FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config ) MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) # reset the variables at the beginning -- cgit v1.2.1 From ac081e93559fc128b739647478781a0159697f2f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Aug 2007 01:40:00 +0000 Subject: -add FindPackageHandleStandardArgs.cmake from cmake cvs, which adds a macro for handling the QUIETLY and REQUIRED arguments for FIND_PACKAGE() and which sets the foo_FOUND variable if all additional variables are TRUE -use this new macro in FindStrigi. -put the successful query of pkgfconfig for the strigi version in the cache, so it doesn't have to do it again the next time -if pkgconfig doesn't find strigi at all, print a warning message but don't fail Alex svn path=/trunk/KDE/kdelibs/; revision=695818 --- modules/FindPackageHandleStandardArgs.cmake | 54 +++++++++++++++++++++++ modules/FindStrigi.cmake | 68 ++++++++++++----------------- 2 files changed, 82 insertions(+), 40 deletions(-) create mode 100644 modules/FindPackageHandleStandardArgs.cmake (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake new file mode 100644 index 00000000..3f5156cf --- /dev/null +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -0,0 +1,54 @@ +# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME (DEFAULT_MSG|"Custom failure message") VAR1 ... ) +# This macro is intended to be used in FindXXX.cmake modules files. +# It handles the REQUIRED and QUIET argument to FIND_PACKAGE() and +# it also sets the _FOUND variable. +# The package is found if all variables listed are TRUE. +# Example: +# +# FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) +# +# LibXml2 is considered to be found, if both LIBXML2_LIBRARIES and +# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set tto TRUE. +# If it is not found and REQUIRED was used, it fails with FATAL_ERROR, +# independent whether QUIET was used or not. +# If it is found, the location is reported using the VAR1 argument, so +# here a message "Found LibXml2: /usr/lib/libxml2.so" will be printed out. +# If the second argument is DEFAULT_MSG, the message in the failure case will +# be "Could NOT find LibXml2", if you don't like this message you can specify +# your own custom failure message there. + +MACRO(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) + + IF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") + SET(_FAIL_MESSAGE "Could NOT find ${_NAME}") + ELSE("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") + SET(_FAIL_MESSAGE "${_FAIL_MSG}") + ENDIF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") + + STRING(TOUPPER ${_NAME} _NAME_UPPER) + + SET(${_NAME_UPPER}_FOUND TRUE) + IF(NOT ${_VAR1}) + SET(${_NAME_UPPER}_FOUND FALSE) + ENDIF(NOT ${_VAR1}) + + FOREACH(_CURRENT_VAR ${ARGN}) + IF(NOT ${_CURRENT_VAR}) + SET(${_NAME_UPPER}_FOUND FALSE) + ENDIF(NOT ${_CURRENT_VAR}) + ENDFOREACH(_CURRENT_VAR) + + IF (${_NAME_UPPER}_FOUND) + IF (NOT ${_NAME}_FIND_QUIETLY) + MESSAGE(STATUS "Found ${_NAME}: ${${_VAR1}}") + ENDIF (NOT ${_NAME}_FIND_QUIETLY) + ELSE (${_NAME_UPPER}_FOUND) + IF (${_NAME}_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "${_FAIL_MESSAGE}") + ELSE (${_NAME}_FIND_REQUIRED) + IF (NOT ${_NAME}_FIND_QUIETLY) + MESSAGE(STATUS "${_FAIL_MESSAGE}") + ENDIF (NOT ${_NAME}_FIND_QUIETLY) + ENDIF (${_NAME}_FIND_REQUIRED) + ENDIF (${_NAME_UPPER}_FOUND) +ENDMACRO(FIND_PACKAGE_HANDLE_STANDARD_ARGS) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index c6c2a883..5c24aa58 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -14,64 +14,52 @@ if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) endif(WIN32) -FIND_PATH(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h +find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS $ENV{STRIGI_HOME}/include ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include ) -if (NOT WIN32) - include(UsePkgConfig) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} - libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - - if(NOT _return_VALUE STREQUAL "0") - message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") - message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") - else(NOT _return_VALUE STREQUAL "0") - if(NOT Strigi_FIND_QUIETLY) - message(STATUS "Found Strigi >= ${STRIGI_MIN_VERSION}") - endif(NOT Strigi_FIND_QUIETLY) - endif(NOT _return_VALUE STREQUAL "0") -endif (NOT WIN32) - -FIND_LIBRARY(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer +find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ) -FIND_LIBRARY(STRIGI_STREAMS_LIBRARY NAMES streams + +find_library(STRIGI_STREAMS_LIBRARY NAMES streams PATHS $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ) -IF(STRIGI_INCLUDE_DIR AND STRIGI_STREAMANALYZER_LIBRARY AND STRIGI_STREAMS_LIBRARY) - SET(STRIGI_FOUND TRUE) -ENDIF(STRIGI_INCLUDE_DIR AND STRIGI_STREAMANALYZER_LIBRARY AND STRIGI_STREAMS_LIBRARY) +if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) + include(UsePkgConfig) + pkgconfig(libstreamanalyzer _dummyIncDir _dummyLinkDir _dummyLinkFlags _dummyCflags) -IF(STRIGI_FOUND) - SET(STRIGI_LIBRARIES ${STRIGI_STREAMANALYZER_LIBRARY} ${STRIGI_STREAMS_LIBRARY}) + # if pkgconfig found strigi, check the version, otherwise print a warning + if(_dummyLinkFlags) - IF(NOT Strigi_FIND_QUIETLY) - MESSAGE(STATUS "Found Strigi: ${STRIGI_STREAMANALYZER_LIBRARY} ${STRIGI_STREAMS_LIBRARY} ") - ENDIF(NOT Strigi_FIND_QUIETLY) -ELSE(STRIGI_FOUND) - IF(NOT Strigi_FIND_QUIETLY) - IF(NOT STRIGI_STREAMANALYZER_LIBRARY) - MESSAGE(STATUS "Couldn't find Strigi streamanalyzer library in $ENV{STRIGI_HOME}/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib") - ENDIF(NOT STRIGI_STREAMANALYZER_LIBRARY) + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} + libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - IF(NOT STRIGI_STREAMS_LIBRARY) - MESSAGE(STATUS "Couldn't find Strigi streams library in $ENV{STRIGI_HOME}/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib") - ENDIF(NOT STRIGI_STREAMS_LIBRARY) - ENDIF(NOT Strigi_FIND_QUIETLY) - IF(Strigi_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Strigi") - ENDIF(Strigi_FIND_REQUIRED) -ENDIF(STRIGI_FOUND) + if(NOT _return_VALUE STREQUAL "0") + message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") + message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") + else(NOT _return_VALUE STREQUAL "0") + set(HAVE_STRIGI_VERSION TRUE CACHE BOOL "Have strigi version returned by pkgconfig") + if(NOT Strigi_FIND_QUIETLY) + message(STATUS "Found Strigi >= ${STRIGI_MIN_VERSION}") + endif(NOT Strigi_FIND_QUIETLY) + endif(NOT _return_VALUE STREQUAL "0") + else(_dummyLinkFlags) + message(STATUS "pkgconfig didn't find strigi, couldn't check strigi version") + endif(_dummyLinkFlags) +endif (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Strigi + "Couldn't find Strigi streams library in $ENV{STRIGI_HOME}/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib" + STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) -- cgit v1.2.1 From 550bf85aab5e2995dd90b9126cb0fd8a8b0d48d8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Aug 2007 02:05:27 +0000 Subject: -don't load KDELibsDependencies.cmake twice -use the project specific kdelibs_SOURCE_DIR and kdelibs_PROJECT_DIR variables to detect whether we are compiling kdelibs -some cosmetics Alex svn path=/trunk/KDE/kdelibs/; revision=695821 --- modules/FindKDE4Internal.cmake | 314 ++++++++++++++++++++--------------------- 1 file changed, 154 insertions(+), 160 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a0305d87..ef8b2e0b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -232,158 +232,24 @@ include (MacroLibrary) include (CheckCXXCompilerFlag) include (CheckCXXSourceCompiles) -#add some KDE specific stuff - -# the following are directories where stuff will be installed to -set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) - -#are we trying to compile kdelibs ? -#then enter bootstrap mode -if(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping TRUE) - message(STATUS "Building kdelibs...") -else(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) - set(_kdeBootStrapping FALSE) -endif(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kernel/kglobal.h) # get the directory of the current file, used later on in the file get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) +# are we trying to compile kdelibs ? kdelibs_SOURCE_DIR comes from "project(kdelibs)" in kdelibs/CMakeLists.txt +# then enter bootstrap mode -if (NOT _kdeBootStrapping) - # this file contains all dependencies of all libraries of kdelibs, Alex - include("${kde_cmake_module_dir}/KDELibsDependencies.cmake") - - # allow searching cmake modules in all given kde install locations (KDEDIRS based) - execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) - file(TO_CMAKE_PATH "${_data_DIR}" _data_DIR) - foreach(dir ${_data_DIR}) - set (apath "${dir}/cmake/modules") - if (EXISTS "${apath}") - set (included 0) - string(TOLOWER "${apath}" _apath) - # ignore already added pathes, case insensitive - foreach(adir ${CMAKE_MODULE_PATH}) - string(TOLOWER "${adir}" _adir) - if ("${_adir}" STREQUAL "${_apath}") - set (included 1) - endif ("${_adir}" STREQUAL "${_apath}") - endforeach(adir) - if (NOT included) - message(STATUS "Adding ${apath} to CMAKE_MODULE_PATH") - set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${apath}") - endif (NOT included) - endif (EXISTS "${apath}") - endforeach(dir) -endif (NOT _kdeBootStrapping) - -# this macro implements some very special logic how to deal with the cache -# by default the various install locations inherit their value from theit "parent" variable -# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will -# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX -# this would work completely without using the cache. -# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into -# the cache, otherwise it will be forgotten on the next cmake run. -# Once a variable is in the cache, it doesn't depend on its "parent" variables -# anymore and you can only change it by editing it directly. -# this macro helps in this regard, because as long as you don't set one of the -# variables explicitely to some location, it will always calculate its value from its -# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. -# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location -# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. -# -# additionally if installing to the same location as kdelibs, the other install -# directories are reused from the installed kdelibs -macro(_SET_FANCY _var _value _comment) - set(predefinedvalue "${_value}") - if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - set(predefinedvalue "${KDE4_${_var}}") - endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - - if (NOT DEFINED ${_var}) - set(${_var} ${predefinedvalue}) - else (NOT DEFINED ${_var}) - set(${_var} "${${_var}}" CACHE PATH "${_comment}") - endif (NOT DEFINED ${_var}) -endmacro(_SET_FANCY) - -if (WIN32) - # use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files - _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") - _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") - _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") - _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") - _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") - _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") - _set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") -else (WIN32) - _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") - _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") - _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") - _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") - _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") - _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") - _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") -endif (WIN32) - -_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") -_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") -_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") -_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") -_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") -_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") -_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") - -# To help with the migration issue, this uses set instead of _set_fancy, temporarily. -# (Otherwise all modules would keep installing into the old dirs) -# This can be reverted starting from May 2007 -set(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services") -set(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes") -#_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") -#_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") - -_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") -_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") -_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") -_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") - # this one shouldn't be used anymore -_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") -_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") - -_set_fancy(XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") -_set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") -_set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") - -_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") -_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") -_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") -_set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") -_set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") - -################################# - - -# the following are directories where stuff will be installed to - - -option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") -option(KDE4_BUILD_TESTS "Build the tests") - -if( KDE4_ENABLE_FINAL) - add_definitions(-DKDE_USE_FINAL) -endif(KDE4_ENABLE_FINAL) - -#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable -#which is something between a shared library and a normal executable. -#Programs compiled with these features appear as ?shared object? with the file command. -#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" -option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") +if(kdelibs_SOURCE_DIR) + set(_kdeBootStrapping TRUE) + message(STATUS "Building kdelibs...") +else(kdelibs_SOURCE_DIR) + set(_kdeBootStrapping FALSE) +endif(kdelibs_SOURCE_DIR) -#now try to find some kde stuff +####################### #now try to find some kde stuff ################################ if (_kdeBootStrapping) - set(KDE4_INCLUDE_DIR ${CMAKE_SOURCE_DIR}) + set(KDE4_INCLUDE_DIR ${kdelibs_SOURCE_DIR}) set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) @@ -397,21 +263,21 @@ if (_kdeBootStrapping) set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) - set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + set(EXECUTABLE_OUTPUT_PATH ${kdelibs_BINARY_DIR}/bin ) if (WIN32) - set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) - set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc.shell ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) + set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc.shell ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -446,7 +312,6 @@ else (_kdeBootStrapping) endif (NOT KDE_MIN_VERSION) #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") - macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) else (KDEVERSION) @@ -523,6 +388,7 @@ else (_kdeBootStrapping) find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) + find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) @@ -557,9 +423,132 @@ else (_kdeBootStrapping) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) + # allow searching cmake modules in all given kde install locations (KDEDIRS based) + execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) + file(TO_CMAKE_PATH "${_data_DIR}" _data_DIR) + foreach(dir ${_data_DIR}) + set (apath "${dir}/cmake/modules") + if (EXISTS "${apath}") + set (included 0) + string(TOLOWER "${apath}" _apath) + # ignore already added pathes, case insensitive + foreach(adir ${CMAKE_MODULE_PATH}) + string(TOLOWER "${adir}" _adir) + if ("${_adir}" STREQUAL "${_apath}") + set (included 1) + endif ("${_adir}" STREQUAL "${_apath}") + endforeach(adir) + if (NOT included) + message(STATUS "Adding ${apath} to CMAKE_MODULE_PATH") + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${apath}") + endif (NOT included) + endif (EXISTS "${apath}") + endforeach(dir) + endif (_kdeBootStrapping) +##################### provide some options ########################################## + +option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") +option(KDE4_BUILD_TESTS "Build the tests") + +if( KDE4_ENABLE_FINAL) + add_definitions(-DKDE_USE_FINAL) +endif(KDE4_ENABLE_FINAL) + +#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable +#which is something between a shared library and a normal executable. +#Programs compiled with these features appear as ?shared object? with the file command. +#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" +option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") + +set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) + +########## the following are directories where stuff will be installed to ########### +# +# this has to be after find_xxx() block above, since there KDELibsDependencies.cmake is included +# which contains the install dirs from kdelibs, which are reused below + +# this macro implements some very special logic how to deal with the cache +# by default the various install locations inherit their value from theit "parent" variable +# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will +# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX +# this would work completely without using the cache. +# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into +# the cache, otherwise it will be forgotten on the next cmake run. +# Once a variable is in the cache, it doesn't depend on its "parent" variables +# anymore and you can only change it by editing it directly. +# this macro helps in this regard, because as long as you don't set one of the +# variables explicitely to some location, it will always calculate its value from its +# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. +# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location +# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. +# +# additionally if installing to the same location as kdelibs, the other install +# directories are reused from the installed kdelibs +macro(_SET_FANCY _var _value _comment) + set(predefinedvalue "${_value}") + if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + set(predefinedvalue "${KDE4_${_var}}") + endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + + if (NOT DEFINED ${_var}) + set(${_var} ${predefinedvalue}) + else (NOT DEFINED ${_var}) + set(${_var} "${${_var}}" CACHE PATH "${_comment}") + endif (NOT DEFINED ${_var}) +endmacro(_SET_FANCY) + + +if (WIN32) +# use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files + _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") + _set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") +else (WIN32) + _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") + _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") + _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") +endif (WIN32) + +_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") +_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") +_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") +_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") +_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") +_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") +_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") +_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") +_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") +_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") +_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") +_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") +_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") +_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") +# this one shouldn't be used anymore +_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") +_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") + +_set_fancy(XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") +_set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") +_set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") + +_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") +_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") +_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") +_set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") +_set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + + ##################### and now the platform specific stuff ############################ # Set a default build type for single-configuration @@ -572,7 +561,7 @@ endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) if (WIN32) if(CYGWIN) - message(FATAL_ERROR "Support for Cygwin NOT yet implemented, please edit FindKDE4.cmake to enable it") + message(FATAL_ERROR "Cygwin NOT supported, please edit FindKDE4.cmake to enable it") endif(CYGWIN) find_package(KDEWIN32 REQUIRED) @@ -581,8 +570,8 @@ if (WIN32) # don't know if package name, version and notes are always available if(_kdeBootStrapping) find_package(KDEWIN_Packager) - if (KDEWIN_PACKAGER_FOUND) - KDEWIN_PACKAGER("kdelibs" "${KDE_VERSION}" "KDE base library" "") + if (KDEWIN_PACKAGER_FOUND) + kdewin_packager("kdelibs" "${KDE_VERSION}" "KDE base library" "") endif (KDEWIN_PACKAGER_FOUND) include(Win32Macros) @@ -714,6 +703,7 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) endif (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_SYSTEM_NAME MATCHES Linux) + if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) set ( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lc") @@ -726,11 +716,13 @@ if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) endif(MSVC) + if (MINGW) set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") endif (MINGW) + if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. @@ -758,9 +750,10 @@ if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_CXX_FPIE_FLAGS "-fPIE") set (KDE4_PIE_LDFLAGS "-pie") else(HAVE_FPIE_SUPPORT) - MESSAGE(STATUS "Your compiler doesn't support PIE flag") + message(STATUS "Your compiler doesn't support PIE flag") endif(HAVE_FPIE_SUPPORT) endif(KDE4_ENABLE_FPIE) + # save a little by making local statics not threadsafe check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) if (__KDE_HAVE_NO_THREADSAFE_STATICS) @@ -819,6 +812,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (CMAKE_COMPILER_IS_GNUCXX) + if (CMAKE_C_COMPILER MATCHES "icc") set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. -- cgit v1.2.1 From f7c12dd145666ba162f0903910b7644c936d2123 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Aug 2007 02:16:24 +0000 Subject: -more default search paths: always also search in the current install prefix and also in the directory where the current cmake is installed Alex svn path=/trunk/KDE/kdelibs/; revision=695825 --- modules/FindKDE4Internal.cmake | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ef8b2e0b..1d317ce1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -549,6 +549,36 @@ _set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/inte _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") +############## add some more default search paths ############### +# always search in the directory where cmake is installed +# and in the current installation prefix +# they will be set by default starting with cmake 2.6.0, maybe already 2.4.8 + +# also add the install directory of the running cmake to the search directories +# CMAKE_ROOT is CMAKE_INSTALL_PREFIX/share/cmake, so we need to go two levels up +get_filename_component(_CMAKE_INSTALL_DIR "${CMAKE_ROOT}" PATH) +get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) + +set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SYSTEM_INCLUDE_PATH} + "${_CMAKE_INSTALL_DIR}/include" + "${CMAKE_INSTALL_PREFIX}/include" ) + +set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH} + "${_CMAKE_INSTALL_DIR}/bin" + "${CMAKE_INSTALL_PREFIX}/bin" ) + +set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} + "${_CMAKE_INSTALL_DIR}/lib" + "${CMAKE_INSTALL_PREFIX}/lib" ) + +# under Windows dlls may be also installed in bin/ +if(WIN32) + set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} + "${_CMAKE_INSTALL_DIR}/bin" + "${CMAKE_INSTALL_PREFIX}/bin" ) +endif(WIN32) + + ##################### and now the platform specific stuff ############################ # Set a default build type for single-configuration -- cgit v1.2.1 From f872324286ba5138b5f62f36060369694729fd0e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Aug 2007 02:24:38 +0000 Subject: also search in the kde4 install dirs Alex svn path=/trunk/KDE/kdelibs/; revision=695827 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1d317ce1..8ce4a045 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -552,6 +552,8 @@ _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/servic ############## add some more default search paths ############### # always search in the directory where cmake is installed # and in the current installation prefix +# the KDE4_xxx_INSTALL_DIR variables are empty when building kdelibs itself +# and otherwise point to the kde4 install dirs # they will be set by default starting with cmake 2.6.0, maybe already 2.4.8 # also add the install directory of the running cmake to the search directories @@ -560,14 +562,17 @@ get_filename_component(_CMAKE_INSTALL_DIR "${CMAKE_ROOT}" PATH) get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SYSTEM_INCLUDE_PATH} + "${KDE4_INCLUDE_INSTALL_DIR}" "${_CMAKE_INSTALL_DIR}/include" "${CMAKE_INSTALL_PREFIX}/include" ) set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH} + "${KDE4_BIN_INSTALL_DIR}" "${_CMAKE_INSTALL_DIR}/bin" "${CMAKE_INSTALL_PREFIX}/bin" ) set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} + "${KDE4_LIB_INSTALL_DIR}" "${_CMAKE_INSTALL_DIR}/lib" "${CMAKE_INSTALL_PREFIX}/lib" ) -- cgit v1.2.1 From 92f5a6c8cc0b20e322dc46cb4f2caef5b8345e77 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 3 Aug 2007 21:52:56 +0000 Subject: don't use $ENV{foo} in MESSAGE(), can mess up parsing under windows Alex svn path=/trunk/KDE/kdelibs/; revision=696118 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 5c24aa58..3cf32e79 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -61,5 +61,5 @@ endif (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi - "Couldn't find Strigi streams library in $ENV{STRIGI_HOME}/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib" + "Couldn't find Strigi streams library in $STRIGI_HOME/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib" STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) -- cgit v1.2.1 From 7097cddbca41ee8b817a89191db5d39e89ce0b5a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 5 Aug 2007 01:55:47 +0000 Subject: add a target "buildtests" which builds all tests in this and its subdirs Alex svn path=/trunk/KDE/kdelibs/; revision=696490 --- modules/KDE4Macros.cmake | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 36b401f4..1d92101a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -706,10 +706,21 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) set(_targetName ${_test_NAME}) if( ${ARGV1} STREQUAL "TESTNAME" ) set(_targetName ${ARGV2}) - LIST(REMOVE_AT _srcList 0 1) + list(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) kde4_add_test_executable( ${_test_NAME} ${_srcList} ) add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) + + # if the tests are EXCLUDE_FROM_ALL, add a target "buildtests" to build all tests + if (NOT KDE4_BUILD_TESTS) + get_directory_property(_buildtestsAdded BUILDTESTS_ADDED) + if(NOT _buildtestsAdded) + add_custom_target(buildtests) + set_directory_properties(PROPERTIES BUILDTESTS_ADDED TRUE) + endif(NOT _buildtestsAdded) + add_dependencies(buildtests ${_test_NAME}) + endif (NOT KDE4_BUILD_TESTS) + endmacro (KDE4_ADD_UNIT_TEST) # add an test executable -- cgit v1.2.1 From 180eea9f858006ad5c000a5f48f431a735dc7004 Mon Sep 17 00:00:00 2001 From: Bernhard Loos Date: Mon, 6 Aug 2007 01:42:44 +0000 Subject: don't create the buildtests target for the MSVC IDE it's not needed and creates errors svn path=/trunk/KDE/kdelibs/; revision=696838 --- modules/KDE4Macros.cmake | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1d92101a..6e4dbcb4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -711,15 +711,17 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) kde4_add_test_executable( ${_test_NAME} ${_srcList} ) add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) - # if the tests are EXCLUDE_FROM_ALL, add a target "buildtests" to build all tests - if (NOT KDE4_BUILD_TESTS) - get_directory_property(_buildtestsAdded BUILDTESTS_ADDED) - if(NOT _buildtestsAdded) - add_custom_target(buildtests) - set_directory_properties(PROPERTIES BUILDTESTS_ADDED TRUE) - endif(NOT _buildtestsAdded) - add_dependencies(buildtests ${_test_NAME}) - endif (NOT KDE4_BUILD_TESTS) + if (NOT MSVC_IDE) #not needed for the ide + # if the tests are EXCLUDE_FROM_ALL, add a target "buildtests" to build all tests + if (NOT KDE4_BUILD_TESTS) + get_directory_property(_buildtestsAdded BUILDTESTS_ADDED) + if(NOT _buildtestsAdded) + add_custom_target(buildtests) + set_directory_properties(PROPERTIES BUILDTESTS_ADDED TRUE) + endif(NOT _buildtestsAdded) + add_dependencies(buildtests ${_test_NAME}) + endif (NOT KDE4_BUILD_TESTS) + endif (NOT MSVC_IDE) endmacro (KDE4_ADD_UNIT_TEST) -- cgit v1.2.1 From 1cd5bcd762c769fe07b6e5a54710677b00f2fedd Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 6 Aug 2007 17:03:55 +0000 Subject: SVN_SILENT: typo svn path=/trunk/KDE/kdelibs/; revision=697054 --- modules/FindPackageHandleStandardArgs.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index 3f5156cf..8d683cb3 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -8,7 +8,7 @@ # FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) # # LibXml2 is considered to be found, if both LIBXML2_LIBRARIES and -# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set tto TRUE. +# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE. # If it is not found and REQUIRED was used, it fails with FATAL_ERROR, # independent whether QUIET was used or not. # If it is found, the location is reported using the VAR1 argument, so -- cgit v1.2.1 From 4ed58bd8160e73a6b66d1ac1a44a67c0d7e062be Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 6 Aug 2007 17:26:45 +0000 Subject: Remove not necessary path svn path=/trunk/KDE/kdelibs/; revision=697062 --- modules/FindKdcraw.cmake | 4 ---- modules/FindLibArt.cmake | 2 -- modules/FindPCRE.cmake | 21 +++++---------------- modules/FindSoprano.cmake | 6 ------ 4 files changed, 5 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index f49fddaa..b9cca05e 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -63,15 +63,11 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) FIND_PATH(KDCRAW_INCLUDE_DIR libkdcraw/version.h ${_KDCRAWIncDir} - /usr/include - /usr/local/include ) FIND_LIBRARY(KDCRAW_LIBRARIES NAMES kdcraw PATHS ${_KDCRAWLinkDir} - /usr/lib - /usr/local/lib ) if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index dacd4b2f..86282196 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -37,8 +37,6 @@ else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 PATHS ${_libArtLinkDir} - /usr/lib - /usr/local/lib ) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 27ea971d..8989130f 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -16,22 +16,11 @@ if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) set(PCRE_FIND_QUIETLY TRUE) endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) -FIND_PATH(PCRE_INCLUDE_DIR pcre.h - /usr/include/ - /usr/local/include/ -) - -FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre - PATHS - /usr/lib - /usr/local/lib -) - -FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix - PATHS - /usr/lib - /usr/local/lib -) +FIND_PATH(PCRE_INCLUDE_DIR pcre.h ) + +FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre) + +FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix) set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 541ee9db..096d9b3f 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -11,8 +11,6 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) NAMES soprano/soprano.h PATHS - /usr/include - /usr/local/include ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -21,8 +19,6 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) NAMES soprano PATHS - /usr/lib - /usr/local/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) @@ -35,8 +31,6 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) NAMES sopranod PATHS - /usr/lib - /usr/local/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From 9d5410493b0c4b2413f44f84d06bb847f2174fa8 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 6 Aug 2007 17:30:55 +0000 Subject: Remove not necessary path here too svn path=/trunk/KDE/kdelibs/; revision=697065 --- modules/FindEigen.cmake | 2 -- modules/FindGLIB2.cmake | 4 ---- modules/FindKNepomuk.cmake | 4 ---- modules/FindSasl2.cmake | 5 ----- modules/FindSqlite.cmake | 4 ---- 5 files changed, 19 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen.cmake b/modules/FindEigen.cmake index f7922cc2..847239e0 100644 --- a/modules/FindEigen.cmake +++ b/modules/FindEigen.cmake @@ -18,8 +18,6 @@ else (EIGEN_INCLUDE_DIR) find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h PATHS ${INCLUDE_INSTALL_DIR} - /usr/include - /usr/local/include ) if(EIGEN_INCLUDE_DIR) diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 5edbd7a4..65f65bea 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -18,16 +18,12 @@ FIND_PATH(GLIB2_INCLUDE_DIR glib.h ${_LibGLIB2IncDir} ${_LibGLIB2IncDir}/glib-2.0 /usr/include/glib-2.0 - /usr/include /usr/local/include/glib-2.0 - /usr/local/include ) FIND_LIBRARY(GLIB2_LIBRARIES NAMES glib-2.0 PATHS ${_LibGLIB2LinkDir} - /usr/lib - /usr/local/lib ) if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) diff --git a/modules/FindKNepomuk.cmake b/modules/FindKNepomuk.cmake index 967dce42..ba483a8e 100644 --- a/modules/FindKNepomuk.cmake +++ b/modules/FindKNepomuk.cmake @@ -13,8 +13,6 @@ FIND_PATH(KNEPOMUK_INCLUDES NAMES knepomuk/knepomuk.h PATHS - /usr/include - /usr/local/include ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -23,8 +21,6 @@ FIND_LIBRARY(KNEPOMUK_LIBRARIES NAMES knepomuk PATHS - /usr/lib - /usr/local/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index 855e21c8..f9144bfe 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -17,14 +17,9 @@ if (SASL2_INCLUDE_DIR) endif (SASL2_INCLUDE_DIR) FIND_PATH(SASL2_INCLUDE_DIR sasl/sasl.h - /usr/include - /usr/local/include ) FIND_LIBRARY(SASL2_LIBRARIES NAMES sasl2 - PATHS - /usr/lib - /usr/local/lib ) diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index b3cd2a08..b1a4ecba 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -25,15 +25,11 @@ else (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) FIND_PATH(SQLITE_INCLUDE_DIR sqlite3.h ${_SQLITEIncDir} - /usr/include - /usr/local/include ) FIND_LIBRARY(SQLITE_LIBRARIES NAMES sqlite3 PATHS ${_SQLITELinkDir} - /usr/lib - /usr/local/lib ) if (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) -- cgit v1.2.1 From a7c4888bb864b525568df10219915c3925d3dd61 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 6 Aug 2007 18:53:48 +0000 Subject: Remove not necessary path svn path=/trunk/KDE/kdelibs/; revision=697081 --- modules/FindExiv2.cmake | 4 ---- modules/FindGettext.cmake | 7 ++----- modules/FindKdepim.cmake | 4 ---- modules/FindKexiv2.cmake | 2 -- modules/FindKipi.cmake | 4 ---- modules/FindLCMS.cmake | 4 ---- modules/FindOpenEXR.cmake | 10 ---------- 7 files changed, 2 insertions(+), 33 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 2f6caa1d..884be4ed 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -45,15 +45,11 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) FIND_PATH(EXIV2_INCLUDE_DIR exiv2/exif.hpp ${_EXIV2IncDir} - /usr/include - /usr/local/include ) FIND_LIBRARY(EXIV2_LIBRARIES NAMES exiv2 libexiv2 PATHS ${_EXIV2LinkDir} - /usr/lib - /usr/local/lib ) if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index c6b096c8..24c2f98a 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -38,11 +38,8 @@ else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) set(GETTEXT_SOURCE "built in libc") set(GETTEXT_FOUND TRUE) else (LIBC_HAS_DGETTEXT) - FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl - PATHS - /usr/lib - /usr/local/lib - ) + FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl ) + CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT) if (LIBINTL_HAS_DGETTEXT) set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") diff --git a/modules/FindKdepim.cmake b/modules/FindKdepim.cmake index ac33bc1f..f468c883 100644 --- a/modules/FindKdepim.cmake +++ b/modules/FindKdepim.cmake @@ -17,15 +17,11 @@ endif (KDEPIM_INCLUDE_DIR) FIND_PATH(KDEPIM_INCLUDE_DIR NAMES kdepimprotocols.h PATHS ${INCLUDE_INSTALL_DIR} - /usr/include - /usr/local/include ) FIND_LIBRARY(KDEPIM_LIBRARIES NAMES kdepim PATHS ${LIB_INSTALL_DIR} - /usr/lib - /usr/local/lib ) if (KDEPIM_LIBRARIES AND KDEPIM_INCLUDE_DIR) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index 0d42a747..68df0c1e 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -70,8 +70,6 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) FIND_LIBRARY(KEXIV2_LIBRARIES NAMES kexiv2 PATHS ${_KEXIV2LinkDir} - /usr/lib - /usr/local/lib ) if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 44deca3c..15e2643e 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -63,15 +63,11 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) FIND_PATH(KIPI_INCLUDE_DIR libkipi/version.h ${_KIPIIncDir} - /usr/include - /usr/local/include ) FIND_LIBRARY(KIPI_LIBRARIES NAMES kipi PATHS ${_KIPILinkDir} - /usr/lib - /usr/local/lib ) if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index d992a651..835242f6 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -17,10 +17,8 @@ endif(NOT WIN32) find_path(LCMS_INCLUDE_DIR lcms.h ${_LcmsIncDir} ${CMAKE_INSTALL_PREFIX}/include - /usr/include /usr/include/lcms /usr/include/liblcms1 - /usr/local/include /usr/local/include/lcms NO_DEFAULT_PATH ) @@ -31,9 +29,7 @@ find_library(LCMS_LIBRARIES NAMES lcms liblcms PATHS ${_LcmsLinkDir} ${CMAKE_INSTALL_PREFIX}/lib - /usr/lib /usr/lib/lcms - /usr/local/lib /usr/local/lib/lcms NO_DEFAULT_PATH ) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 36950b83..fafde519 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -26,38 +26,28 @@ ENDIF (NOT WIN32) FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h ${_OpenEXRIncDir} ${_OpenEXRIncDir}/OpenEXR/ - /usr/include - /usr/local/include ) FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half PATHS ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib ) FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex PATHS ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib ) FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath PATHS ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib ) FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf PATHS ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib ) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) -- cgit v1.2.1 From f078487d1b9e273d2b2af81cbaba6f1b6f65f92e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 7 Aug 2007 02:11:45 +0000 Subject: -use PATH_SUFFIXES in FindGLIB2.cmake to make the command even shorter -remove unecessary search path for msgfmt Alex svn path=/trunk/KDE/kdelibs/; revision=697172 --- modules/FindGLIB2.cmake | 40 +++++++++++++--------------------------- modules/FindMsgfmt.cmake | 2 +- 2 files changed, 14 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 65f65bea..bb4dc72f 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -9,35 +9,21 @@ if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) # Already in cache, be silent set(GLIB2_FIND_QUIETLY TRUE) endif(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) -IF (NOT WIN32) - INCLUDE(UsePkgConfig) - PKGCONFIG(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) -endif(NOT WIN32) -FIND_PATH(GLIB2_INCLUDE_DIR glib.h - ${_LibGLIB2IncDir} - ${_LibGLIB2IncDir}/glib-2.0 - /usr/include/glib-2.0 - /usr/local/include/glib-2.0 -) +if (NOT WIN32) + include(UsePkgConfig) + pkgconfig(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) +endif(NOT WIN32) -FIND_LIBRARY(GLIB2_LIBRARIES NAMES glib-2.0 - PATHS - ${_LibGLIB2LinkDir} -) +find_path(GLIB2_INCLUDE_DIR glib.h + PATH_SUFFIXES glib-2.0 + PATHS ${_LibGLIB2IncDir} ) -if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) - set(GLIB2_FOUND TRUE) -endif(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) +find_library(GLIB2_LIBRARIES + NAMES glib-2.0 + PATHS ${_LibGLIB2LinkDir} ) -if(GLIB2_FOUND) - if(NOT GLIB2_FIND_QUIETLY) - message(STATUS "Found glib2: ${GLIB2_LIBRARIES} ${GLIB2_LIBRARIES}") - endif(NOT GLIB2_FIND_QUIETLY) -else(GLIB2_FOUND) - if (GLIB2_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find glib2 library") - endif (GLIB2_FIND_REQUIRED) -endif(GLIB2_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(GLIB2 DEFAULT_MSG GLIB2_LIBRARIES GLIB2_INCLUDE_DIR) -MARK_AS_ADVANCED(GLIB2_INCLUDE_DIR GLIB2_LIBRARIES) +mark_as_advanced(GLIB2_INCLUDE_DIR GLIB2_LIBRARIES) diff --git a/modules/FindMsgfmt.cmake b/modules/FindMsgfmt.cmake index cc9912ea..f578b3a2 100644 --- a/modules/FindMsgfmt.cmake +++ b/modules/FindMsgfmt.cmake @@ -14,7 +14,7 @@ if(MSGFMT_EXECUTABLE) set(MSGFMT_FOUND TRUE) else(MSGFMT_EXECUTABLE) - FIND_PROGRAM(MSGFMT_EXECUTABLE NAMES msgfmt PATHS /usr/local/bin ) + FIND_PROGRAM(MSGFMT_EXECUTABLE NAMES msgfmt) if (MSGFMT_EXECUTABLE) set(MSGFMT_FOUND TRUE) else (MSGFMT_EXECUTABLE) -- cgit v1.2.1 From b6c97d5c0d66816053b615873b76eddb47cc3cca Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 7 Aug 2007 11:33:58 +0000 Subject: fix typo found by pino svn path=/trunk/KDE/kdelibs/; revision=697289 --- modules/FindUSB.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 6499fc4f..91263fd5 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -22,7 +22,7 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) - PKGCONFIG(libUSB _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) + PKGCONFIG(libusb _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) ENDIF(NOT WIN32) FIND_PATH(LIBUSB_INCLUDE_DIR usb.h ) -- cgit v1.2.1 From 9d32d67f6a70cb867a26400b6107f3ed7600c3eb Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 7 Aug 2007 20:03:40 +0000 Subject: Use FIND_PACKAGE_HANDLE_STANDARD_ARGS svn path=/trunk/KDE/kdelibs/; revision=697445 --- modules/FindFAM.cmake | 17 ++--------------- modules/FindKonto.cmake | 16 ++-------------- 2 files changed, 4 insertions(+), 29 deletions(-) (limited to 'modules') diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index d7144d52..62e34e15 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -20,21 +20,8 @@ FIND_PATH(FAM_INCLUDE_DIR fam.h) FIND_LIBRARY(FAM_LIBRARIES NAMES fam ) - -if (FAM_INCLUDE_DIR AND FAM_LIBRARIES) - set(FAM_FOUND TRUE) -endif (FAM_INCLUDE_DIR AND FAM_LIBRARIES) - - -if (FAM_FOUND) - if (NOT FAM_FIND_QUIETLY) - message(STATUS "Found fam: ${FAM_LIBRARIES}") - endif (NOT FAM_FIND_QUIETLY) -else (FAM_FOUND) - if (FAM_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find fam library") - endif (FAM_FIND_REQUIRED) -endif (FAM_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(FAM DEFAULT_MSG FAM_INCLUDE_DIR FAM_LIBRARIES ) MARK_AS_ADVANCED(FAM_INCLUDE_DIR FAM_LIBRARIES) diff --git a/modules/FindKonto.cmake b/modules/FindKonto.cmake index 2042719c..0aeccedf 100644 --- a/modules/FindKonto.cmake +++ b/modules/FindKonto.cmake @@ -27,18 +27,6 @@ FIND_LIBRARY(KONTO_LIBRARIES ${LIB_INSTALL_DIR} ) - -if(KONTO_INCLUDES AND KONTO_LIBRARIES) - set(KONTO_FOUND TRUE) -endif(KONTO_INCLUDES AND KONTO_LIBRARIES) - -if(KONTO_FOUND) - if (NOT Konto_FIND_QUIETLY) - message(STATUS "Found Konto: ${KONTO_LIBRARIES}") - endif (NOT Konto_FIND_QUIETLY) -else(KONTO_FOUND) - if(Konto_FIND_REQUIRED) - message(FATAL_ERROR "Could not find Konto library.") - endif(Konto_FIND_REQUIRED) -endif(KONTO_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Kondo DEFAULT_MSG KONTO_INCLUDES KONTO_LIBRARIES) -- cgit v1.2.1 From 690417dad6d76147043d0295decc7982ab9245e5 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 8 Aug 2007 07:36:11 +0000 Subject: Use FIND_PACKAGE_HANDLE_STANDARD_ARGS svn path=/trunk/KDE/kdelibs/; revision=697619 --- modules/FindBlueZ.cmake | 16 ++-------------- modules/FindPCRE.cmake | 15 ++------------- 2 files changed, 4 insertions(+), 27 deletions(-) (limited to 'modules') diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake index 9435258e..8db4a08b 100644 --- a/modules/FindBlueZ.cmake +++ b/modules/FindBlueZ.cmake @@ -29,19 +29,7 @@ find_library(BLUEZ_LIBRARIES NAMES bluetooth ${_BlueZLinkDir} ) -if (BLUEZ_LIBRARIES AND BLUEZ_INCLUDE_DIR) - set(BLUEZ_FOUND TRUE) -endif (BLUEZ_LIBRARIES AND BLUEZ_INCLUDE_DIR) - - -IF (BLUEZ_FOUND) - if (NOT BlueZ_FIND_QUIETLY) - message(STATUS "Found bluez: ${BLUEZ_LIBRARIES}") - endif (NOT BlueZ_FIND_QUIETLY) -ELSE(BLUEZ_FOUND) - IF (BlueZ_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find BlueZ") - ENDIF (BlueZ_FIND_REQUIRED) -ENDIF (BLUEZ_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(BlueZ DEFAULT_MSG BLUEZ_LIBRARIES BLUEZ_INCLUDE_DIR ) mark_as_advanced( BLUEZ_LIBRARIES BLUEZ_INCLUDE_DIR) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 8989130f..a3469e59 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -24,18 +24,7 @@ FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix) set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") -if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - set(PCRE_FOUND TRUE) -endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) - -if (PCRE_FOUND) - if (NOT PCRE_FIND_QUIETLY) - message(STATUS "Found PCRE: ${PCRE_LIBRARIES}") - endif (NOT PCRE_FIND_QUIETLY) -else (PCRE_FOUND) - if (PCRE_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find PCRE") - endif (PCRE_FIND_REQUIRED) -endif (PCRE_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_LIBRARIES ) MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) -- cgit v1.2.1 From 4642fd327fdf3f7b1f660bd066bb38ee41e2f401 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 8 Aug 2007 07:48:20 +0000 Subject: Use FIND_PACKAGE_HANDLE_STANDARD_ARGS svn path=/trunk/KDE/kdelibs/; revision=697621 --- modules/FindKdepim.cmake | 15 ++------------- modules/FindSasl2.cmake | 19 +++---------------- 2 files changed, 5 insertions(+), 29 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepim.cmake b/modules/FindKdepim.cmake index f468c883..d04886af 100644 --- a/modules/FindKdepim.cmake +++ b/modules/FindKdepim.cmake @@ -24,19 +24,8 @@ FIND_LIBRARY(KDEPIM_LIBRARIES NAMES kdepim ${LIB_INSTALL_DIR} ) -if (KDEPIM_LIBRARIES AND KDEPIM_INCLUDE_DIR) - set(KDEPIM_FOUND TRUE) -endif (KDEPIM_LIBRARIES AND KDEPIM_INCLUDE_DIR) - -if (KDEPIM_FOUND) - if (NOT Kdepim_FIND_QUIETLY) - message(STATUS "Found Kdepim: ${KDEPIM_LIBRARIES}") - endif (NOT Kdepim_FIND_QUIETLY) -else (KDEPIM_FOUND) - if (Kdepim_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Kdepim") - endif (Kdepim_FIND_REQUIRED) -endif (KDEPIM_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Kdepim DEFAULT_MSG KDEPIM_LIBRARIES KDEPIM_INCLUDE_DIR ) MARK_AS_ADVANCED(KDEPIM_INCLUDE_DIR KDEPIM_LIBRARIES) diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index f9144bfe..f69aea6f 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -5,7 +5,7 @@ # SASL2_INCLUDE_DIR - the SASL2 include directory # SASL2_LIBRARIES - The libraries needed to use SASL2 # -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006, 2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -22,21 +22,8 @@ FIND_PATH(SASL2_INCLUDE_DIR sasl/sasl.h FIND_LIBRARY(SASL2_LIBRARIES NAMES sasl2 ) - -if (SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) - set(SASL2_FOUND TRUE) -endif (SASL2_INCLUDE_DIR AND SASL2_LIBRARIES) - - -if (SASL2_FOUND) - if (NOT Sasl2_FIND_QUIETLY) - message(STATUS "Found sasl2: ${SASL2_LIBRARIES}") - endif (NOT Sasl2_FIND_QUIETLY) -else(SASL2_FOUND) - if (Sasl2_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find sals2 library") - endif (Sasl2_FIND_REQUIRED) -endif (SASL2_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sasl2 DEFAULT_MSG SASL2_INCLUDE_DIR SASL2_LIBRARIES) MARK_AS_ADVANCED(SASL2_INCLUDE_DIR SASL2_LIBRARIES) -- cgit v1.2.1 From 6b0cda9db133c1e449d59dd4519ba18425c564bd Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 8 Aug 2007 11:28:42 +0000 Subject: Make it "fatal" svn path=/trunk/KDE/kdelibs/; revision=697668 --- modules/FindGettext.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 24c2f98a..3b7422ff 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -55,7 +55,7 @@ else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) endif (NOT Gettext_FIND_QUIETLY) else (GETTEXT_FOUND) if (Gettext_FIND_REQUIRED) - message(STATUS "Could NOT find Gettext") + message(FATAL_ERROR "Could NOT find Gettext") endif (Gettext_FIND_REQUIRED) endif (GETTEXT_FOUND) -- cgit v1.2.1 From 7c13fc7bce1d1df1338bd5c4a2e023994776b36e Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 8 Aug 2007 11:35:11 +0000 Subject: Look at all variable and not just libs variable which can be not empty but some variable can be null svn path=/trunk/KDE/kdelibs/; revision=697674 --- modules/FindPCRE.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index a3469e59..f0cc940d 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -11,10 +11,10 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) +if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) # Already in cache, be silent set(PCRE_FIND_QUIETLY TRUE) -endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES) +endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) FIND_PATH(PCRE_INCLUDE_DIR pcre.h ) -- cgit v1.2.1 From 7414281e067da7260f800381af7b58844394bb1a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 9 Aug 2007 19:36:35 +0000 Subject: Use FIND_PACKAGE_HANDLE_STANDARD_ARGS svn path=/trunk/KDE/kdelibs/; revision=698299 --- modules/FindAkode.cmake | 5 +---- modules/FindTIFF.cmake | 19 +++---------------- 2 files changed, 4 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index 156bf958..72061d37 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -18,10 +18,7 @@ IF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) ELSE (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) - FIND_PROGRAM(AKODECONFIG_EXECUTABLE NAMES akode-config PATHS - /usr/bin - /usr/local/bin - ) + FIND_PROGRAM(AKODECONFIG_EXECUTABLE NAMES akode-config) # if akode-config has been found IF (AKODECONFIG_EXECUTABLE) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 81931e8a..8c8f921a 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -20,21 +20,8 @@ find_path(TIFF_INCLUDE_DIR NAMES tiff.h ) set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) find_library(TIFF_LIBRARY NAMES ${TIFF_NAMES} ) -if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - set(TIFF_FOUND TRUE) - set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) -else (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - set(TIFF_FOUND FALSE) -endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - -if (TIFF_FOUND) - if (NOT TIFF_FIND_QUIETLY) - message(STATUS "Found TIFF: ${TIFF_LIBRARY}") - endif (NOT TIFF_FIND_QUIETLY) -else (TIFF_FOUND) - if (TIFF_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find TIFF") - endif (TIFF_FIND_REQUIRED) -endif (TIFF_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(TIFF DEFAULT_MSG TIFF_INCLUDE_DIR TIFF_LIBRARY) +set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) mark_as_advanced(TIFF_INCLUDE_DIR TIFF_LIBRARY) -- cgit v1.2.1 From 5298c8ba82af22d4f7fd093388a4add4ef332a4f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 11 Aug 2007 02:01:10 +0000 Subject: add stuff from cmake cvs and macros for processing po and pot files Alex svn path=/trunk/KDE/kdelibs/; revision=698778 --- modules/FindGettext.cmake | 171 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 171 insertions(+) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 3b7422ff..b461fe51 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -62,3 +62,174 @@ else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) endif (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) + + +# - Find GNU gettext tools +# This module looks for the GNU gettext tools. This module defines the +# following values: +# GETTEXT_MSGMERGE_EXECUTABLE: the full path to the msgmerge tool. +# GETTEXT_MSGFMT_EXECUTABLE: the full path to the msgfmt tool. +# GETTEXT_FOUND: True if gettext has been found. +# +# Additionally it provides the following macros: +# GETTEXT_CREATE_TRANSLATIONS ( outputFile [ALL] file1 ... fileN ) +# This will create a target "translations" which will convert the +# given input po files into the binary output mo file. If the +# ALL option is used, the translations will also be created when +# building the default target. +# GETTEXT_PROCESS_POT( [ALL] [INSTALL_DESTINATION ] ... ) +# Process the given pot file to mo files. +# If INSTALL_DESTINATION is given then automatically install rules will be created, +# the language subdirectory will be taken into account (by default use share/locale/). +# If ALL is specified, the pot file is processed when building the all traget. +# It creates a custom target "potfile". +# +# GETTEXT_PROCESS_PO_FILES( [ALL] [INSTALL_DESTINATION ] ...) +# Process the given po files to mo files for the given language. +# If INSTALL_DESTINATION is given then automatically install rules will be created, +# the language subdirectory will be taken into account (by default use share/locale/). +# If ALL is specified, the po files are processed when building the all traget. +# It creates a custom target "pofiles". + + + +FIND_PROGRAM(GETTEXT_MSGMERGE_EXECUTABLE msgmerge) + +FIND_PROGRAM(GETTEXT_MSGFMT_EXECUTABLE msgfmt) + +MACRO(GETTEXT_CREATE_TRANSLATIONS _potFile _firstPoFile) + + SET(_gmoFiles) + GET_FILENAME_COMPONENT(_potBasename ${_potFile} NAME_WE) + GET_FILENAME_COMPONENT(_absPotFile ${_potFile} ABSOLUTE) + + SET(_addToAll) + IF(${_firstPoFile} STREQUAL "ALL") + SET(_addToAll "ALL") + SET(_firstPoFile) + ENDIF(${_firstPoFile} STREQUAL "ALL") + + FOREACH (_currentPoFile ${ARGN}) + GET_FILENAME_COMPONENT(_absFile ${_currentPoFile} ABSOLUTE) + GET_FILENAME_COMPONENT(_abs_PATH ${_absFile} PATH) + GET_FILENAME_COMPONENT(_lang ${_absFile} NAME_WE) + SET(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo) + + ADD_CUSTOM_COMMAND( + OUTPUT ${_gmoFile} + COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --update --backup=none -s ${_absFile} ${_absPotFile} + COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_absFile} + DEPENDS ${_absPotFile} ${_absFile} + ) + + INSTALL(FILES ${_gmoFile} DESTINATION share/locale/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo) + SET(_gmoFiles ${_gmoFiles} ${_gmoFile}) + + ENDFOREACH (_currentPoFile ) + + ADD_CUSTOM_TARGET(translations ${_addToAll} DEPENDS ${_gmoFiles}) + +ENDMACRO(GETTEXT_CREATE_TRANSLATIONS ) + +# GETTEXT_PROCESS_POT( [ALL] [INSTALL_DESTINATION ] ... ) +MACRO(GETTEXT_PROCESS_POT_FILE _potFile) + + SET(_gmoFiles) + SET(_args ${ARGN}) + SET(_addToAll) + SET(_installDest) + + LIST(GET _args 0 _tmp) + IF("${_tmp}" STREQUAL "ALL") + SET(_addToAll ALL) + LIST(REMOVE_AT _args 0) + ENDIF("${_tmp}" STREQUAL "ALL") + + LIST(GET _args 0 _tmp) + IF("${_tmp}" STREQUAL "INSTALL_DESTINATION") + LIST(GET _args 1 _installDest ) + LIST(REMOVE_AT _args 0 1) + ENDIF("${_tmp}" STREQUAL "INSTALL_DESTINATION") + + GET_FILENAME_COMPONENT(_potBasename ${_potFile} NAME_WE) + GET_FILENAME_COMPONENT(_absPotFile ${_potFile} ABSOLUTE) + +# message(STATUS "1 all ${_addToAll} dest ${_installDest} args: ${_args}") + + FOREACH (_lang ${_args}) + SET(_poFile "${CMAKE_CURRENT_BINARY_DIR}/${_lang}.po") + SET(_gmoFile "${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo") + + ADD_CUSTOM_COMMAND( + OUTPUT "${_poFile}" + COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --update --backup=none -s ${_poFile} ${_absPotFile} + DEPENDS ${_absPotFile} + ) + + ADD_CUSTOM_COMMAND( + OUTPUT "${_gmoFile}" + COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_poFile} + DEPENDS ${_absPotFile} ${_poFile} + ) + + IF(_installDest) + INSTALL(FILES ${_gmoFile} DESTINATION ${_installDest}/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo) + ENDIF(_installDest) + LIST(APPEND _gmoFiles ${_gmoFile}) + + ENDFOREACH (_lang ) + + ADD_CUSTOM_TARGET(potfile ${_addToAll} DEPENDS ${_gmoFiles}) + +ENDMACRO(GETTEXT_PROCESS_POT_FILE) + + +# GETTEXT_PROCESS_PO_FILES( [ALL] [INSTALL_DESTINATION ] ...) +MACRO(GETTEXT_PROCESS_PO_FILES _lang) + SET(_gmoFiles) + SET(_args ${ARGN}) + SET(_addToAll) + SET(_installDest) + + LIST(GET _args 0 _tmp) + IF("${_tmp}" STREQUAL "ALL") + SET(_addToAll ALL) + LIST(REMOVE_AT _args 0) + ENDIF("${_tmp}" STREQUAL "ALL") + + LIST(GET _args 0 _tmp) + IF("${_tmp}" STREQUAL "INSTALL_DESTINATION") + LIST(GET _args 1 _installDest ) + LIST(REMOVE_AT _args 0 1) + ENDIF("${_tmp}" STREQUAL "INSTALL_DESTINATION") + +# message(STATUS "2 all ${_addToAll} dest ${_installDest} args: ${_args}") + + FOREACH(_current_PO_FILE ${_args}) + GET_FILENAME_COMPONENT(_basename ${_current_PO_FILE} NAME_WE) + SET(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo) + add_custom_command(OUTPUT ${_gmoFile} + COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_current_PO_FILE} + DEPENDS ${_current_PO_FILE} + ) + + IF(_installDest) + INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo DESTINATION ${_installDest}/${_lang}/LC_MESSAGES/ RENAME ${_basename}.mo) + ENDIF(_installDest) + LIST(APPEND _gmoFiles ${_gmoFile}) + ENDFOREACH(_current_PO_FILE) + ADD_CUSTOM_TARGET(pofiles ${_addToAll} DEPENDS ${_gmoFiles}) +ENDMACRO(GETTEXT_PROCESS_PO_FILES) + + +#IF (GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE ) +# SET(GETTEXT_FOUND TRUE) +#ELSE (GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE ) +# SET(GETTEXT_FOUND FALSE) +# IF (GetText_REQUIRED) +# MESSAGE(FATAL_ERROR "GetText not found") +# ENDIF (GetText_REQUIRED) +#ENDIF (GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE ) + + + -- cgit v1.2.1 From 405bd044f07ebf785d977331c94df5ba23666290 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 11 Aug 2007 16:16:54 +0000 Subject: Now KDE4_CREATE_PO_FILES is not necessary svn path=/trunk/KDE/kdelibs/; revision=698957 --- modules/KDE4Macros.cmake | 25 ------------------------- 1 file changed, 25 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6e4dbcb4..d3feaf13 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -22,8 +22,6 @@ # KDE4_CREATE_HANDBOOK # KDE4_CREATE_HTML_HANDBOOK # KDE4_INSTALL_HANDBOOK -# KDE4_CREATE_PO_FILES -# KDE4_INSTALL_PO_FILES # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, @@ -232,29 +230,6 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) set(${_SRCS} ${_automoc_source} ${${_SRCS}}) endmacro(KDE4_HANDLE_AUTOMOC) -macro(KDE4_CREATE_PO_FILES) - set(_list_gmo) - file(GLOB _po_files *.po) - foreach(_current_PO_FILES ${_po_files}) - get_filename_component(_basename ${_current_PO_FILES} NAME_WE) - set(_gmo_file ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo) - add_custom_command(OUTPUT ${_gmo_file} - COMMAND ${MSGFMT_EXECUTABLE} -o ${_gmo_file} ${_current_PO_FILES} - DEPENDS ${_current_PO_FILES} - ) - SET(_list_gmo ${_list_gmo} ${_gmo_file}) - endforeach(_current_PO_FILES) - add_custom_target(filepo ALL DEPENDS ${_list_gmo}) -endmacro(KDE4_CREATE_PO_FILES) - -macro(KDE4_INSTALL_PO_FILES _lang) - file(GLOB _po_files *.po) - foreach(_current_PO_FILES ${_po_files}) - get_filename_component(_basename ${_current_PO_FILES} NAME_WE) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${_basename}.mo) - endforeach(_current_PO_FILES) -endmacro(KDE4_INSTALL_PO_FILES) - macro(KDE4_INSTALL_TS_FILES _lang _sdir) file(GLOB_RECURSE _ts_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${_sdir}/*) foreach(_current_TS_FILES ${_ts_files}) -- cgit v1.2.1 From ef58c66fe84de22ceba437c3900102ca8cffb0be Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 12 Aug 2007 14:34:59 +0000 Subject: Find Blitz svn path=/trunk/KDE/kdelibs/; revision=699271 --- modules/FindBlitz.cmake | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 modules/FindBlitz.cmake (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake new file mode 100644 index 00000000..ed3e0989 --- /dev/null +++ b/modules/FindBlitz.cmake @@ -0,0 +1,41 @@ +# - Try to find blitz lib +# Once done this will define +# +# BLITZ_FOUND - system has blitz lib +# BLITZ_INCLUDE_DIR - the blitz include directory +# +# Copyright (c) 2006, Montel Laurent, +# Copyright (c) 2007, Allen Winter, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (BLITZ_INCLUDE_DIR) + + # in cache already + set(BLITZ_FOUND TRUE) + +else (BLITZ_INCLUDE_DIR) + +find_path(BLITZ_INCLUDE_DIR NAMES blitz.h + PATHS + ${INCLUDE_INSTALL_DIR} + ) + +if(BLITZ_INCLUDE_DIR) + set(BLITZ_FOUND TRUE) +endif(BLITZ_INCLUDE_DIR) + +if(BLITZ_FOUND) + if(NOT Blitz_FIND_QUIETLY) + message(STATUS "Found Blitz: ${BLITZ_INCLUDE_DIR}") + endif(NOT Blitz_FIND_QUIETLY) +else(BLITZ_FOUND) + if(Blitz_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Blitz") + endif(Blitz_FIND_REQUIRED) +endif(BLITZ_FOUND) + +mark_as_advanced(BLITZ_INCLUDE_DIR) + +endif(BLITZ_INCLUDE_DIR) + -- cgit v1.2.1 From a6add265eb1d0f5f2eb64bba26eb6c983d21cfdd Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 12 Aug 2007 15:05:00 +0000 Subject: total rewrite. the last version didn't even look for the blitz libs. svn path=/trunk/KDE/kdelibs/; revision=699279 --- modules/FindBlitz.cmake | 56 +++++++++++++++++++++++++++---------------------- 1 file changed, 31 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index ed3e0989..9acf2471 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -2,40 +2,46 @@ # Once done this will define # # BLITZ_FOUND - system has blitz lib -# BLITZ_INCLUDE_DIR - the blitz include directory +# BLITZ_INCLUDES - the blitz include directory +# BLITZ_LIBRARIES - The libraries needed to use blitz # # Copyright (c) 2006, Montel Laurent, # Copyright (c) 2007, Allen Winter, # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (BLITZ_INCLUDE_DIR) - - # in cache already +if (BLITZ_INCLUDES AND BLITZ_LIBRARIES) + set(Blitz_FIND_QUIETLY TRUE) +endif (BLITZ_INCLUDES AND BLITZ_LIBRARIES) + +find_path(BLITZ_INCLUDES + NAMES + blitz.h + PATHS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(BLITZ_LIBRARIES + NAMES + blitz + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +if(BLITZ_INCLUDES AND BLITZ_LIBRARIES) set(BLITZ_FOUND TRUE) - -else (BLITZ_INCLUDE_DIR) - -find_path(BLITZ_INCLUDE_DIR NAMES blitz.h - PATHS - ${INCLUDE_INSTALL_DIR} - ) - -if(BLITZ_INCLUDE_DIR) - set(BLITZ_FOUND TRUE) -endif(BLITZ_INCLUDE_DIR) +endif(BLITZ_INCLUDES AND BLITZ_LIBRARIES) if(BLITZ_FOUND) - if(NOT Blitz_FIND_QUIETLY) - message(STATUS "Found Blitz: ${BLITZ_INCLUDE_DIR}") - endif(NOT Blitz_FIND_QUIETLY) + if(NOT Blitz_FIND_QUIETLY) + message(STATUS "Found Blitz: ${BLITZ_INCLUDES}") + endif(NOT Blitz_FIND_QUIETLY) else(BLITZ_FOUND) - if(Blitz_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Blitz") - endif(Blitz_FIND_REQUIRED) + if(Blitz_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Blitz") + endif(Blitz_FIND_REQUIRED) endif(BLITZ_FOUND) -mark_as_advanced(BLITZ_INCLUDE_DIR) - -endif(BLITZ_INCLUDE_DIR) - +mark_as_advanced(BLITZ_INCLUDES BLITZ_LIBRARIES) -- cgit v1.2.1 From 81e0a7f4d98ae38a4792a6ad0fbdf0315dd2f5d2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 13 Aug 2007 01:18:12 +0000 Subject: some cosmetics Alex svn path=/trunk/KDE/kdelibs/; revision=699424 --- modules/FindTIFF.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 8c8f921a..d9668ac6 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -21,7 +21,7 @@ set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) find_library(TIFF_LIBRARY NAMES ${TIFF_NAMES} ) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(TIFF DEFAULT_MSG TIFF_INCLUDE_DIR TIFF_LIBRARY) +find_package_handle_standard_args(TIFF DEFAULT_MSG TIFF_INCLUDE_DIR TIFF_LIBRARY) set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) mark_as_advanced(TIFF_INCLUDE_DIR TIFF_LIBRARY) -- cgit v1.2.1 From 50376939795034a4637367b6d24ff269358790e1 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 13 Aug 2007 06:22:50 +0000 Subject: Adapt macro to be able to give language name svn path=/trunk/KDE/kdelibs/; revision=699448 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d3feaf13..26104149 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -241,18 +241,18 @@ macro(KDE4_INSTALL_TS_FILES _lang _sdir) endforeach(_current_TS_FILES) endmacro(KDE4_INSTALL_TS_FILES) -macro (KDE4_INSTALL_HANDBOOK) +macro (KDE4_INSTALL_HANDBOOK _lang) get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) get_filename_component(_basename ${_tmp_FILE} NAME_WE) file(GLOB _books *.docbook) file(GLOB _images *.png) - set(relative ${ARGV0}) + set(relative ${ARGV1}) set( dirname ${relative}/${_basename}) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/en/${dirname}) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/${_lang}/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) # execute some cmake code on make install which creates the symlink - install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${HTML_INSTALL_DIR}/en/common\" \"${HTML_INSTALL_DIR}/en/${dirname}/common\" )" ) + install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${HTML_INSTALL_DIR}/${_lang}/common\" \"${HTML_INSTALL_DIR}/${_lang}/${dirname}/common\" )" ) endif (UNIX) endmacro (KDE4_INSTALL_HANDBOOK ) -- cgit v1.2.1 From 27ceca57128f058e899f170716fd70b2b379a303 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 13 Aug 2007 20:49:20 +0000 Subject: make use of the new FindPackageHandleStandardArgs() macro CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=699657 --- modules/FindBlitz.cmake | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 9acf2471..8551e770 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -30,18 +30,8 @@ FIND_LIBRARY(BLITZ_LIBRARIES ${LIB_INSTALL_DIR} ) -if(BLITZ_INCLUDES AND BLITZ_LIBRARIES) - set(BLITZ_FOUND TRUE) -endif(BLITZ_INCLUDES AND BLITZ_LIBRARIES) - -if(BLITZ_FOUND) - if(NOT Blitz_FIND_QUIETLY) - message(STATUS "Found Blitz: ${BLITZ_INCLUDES}") - endif(NOT Blitz_FIND_QUIETLY) -else(BLITZ_FOUND) - if(Blitz_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Blitz") - endif(Blitz_FIND_REQUIRED) -endif(BLITZ_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Blitz DEFAULT_MSG + BLITZ_INCLUDES BLITZ_LIBRARIES) mark_as_advanced(BLITZ_INCLUDES BLITZ_LIBRARIES) -- cgit v1.2.1 From 90ff64277a72c3be7b1dd93827d2ab7f13e5c4f2 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 14 Aug 2007 07:07:01 +0000 Subject: Use find_package_handle_standard_args Remove not necessary path svn path=/trunk/KDE/kdelibs/; revision=699875 --- modules/FindPostgreSQL.cmake | 18 ++++-------------- modules/FindX11.cmake | 4 ---- 2 files changed, 4 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake index d72aae8c..49acf7be 100644 --- a/modules/FindPostgreSQL.cmake +++ b/modules/FindPostgreSQL.cmake @@ -22,25 +22,15 @@ find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h /usr/local/include/pgsql ) -find_library(POSTGRESQL_LIBRARIES NAMES pq - PATHS - /usr/lib - /usr/local/lib -) +find_library(POSTGRESQL_LIBRARIES NAMES pq) if(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) set(POSTGRESQL_FOUND TRUE) endif(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) -if(POSTGRESQL_FOUND) - if (NOT PostgreSQL_FIND_QUIETLY) - message(STATUS "Found PostgreSQL: ${POSTGRESQL_INCLUDE_DIR}, ${POSTGRESQL_LIBRARIES}") - endif(NOT PostgreSQL_FIND_QUIETLY) -else(POSTGRESQL_FOUND) - if (PostgreSQL_FIND_REQUIRED) - message(FATAL_ERROR "PostgreSQL not found.") - endif(PostgreSQL_FIND_REQUIRED) -endif(POSTGRESQL_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(PostgreSQL DEFAULT_MSG + POSTGRESQL_INCLUDE_DIR POSTGRESQL_LIBRARIES ) mark_as_advanced(POSTGRESQL_INCLUDE_DIR POSTGRESQL_LIBRARIES) diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 79fc2a61..e641e04f 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -48,21 +48,17 @@ IF (UNIX) /usr/pkg/xorg/include /usr/pkg/include /usr/X11R6/include - /usr/local/include /usr/include/X11 /usr/openwin/include /usr/openwin/share/include /opt/graphics/OpenGL/include - /usr/include ) SET(X11_LIB_SEARCH_PATH /usr/pkg/xorg/lib /usr/pkg/lib /usr/X11R6/lib - /usr/local/lib /usr/openwin/lib - /usr/lib ) FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) -- cgit v1.2.1 From 186950a4056ca1260bee1431baabb099f9cb7c20 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 14 Aug 2007 07:11:34 +0000 Subject: Use find_package_handle_standard_args Fix previous commit Remove not necessary path svn path=/trunk/KDE/kdelibs/; revision=699877 --- modules/FindAvahi.cmake | 22 ++++------------------ modules/FindDNSSD.cmake | 2 -- modules/FindPostgreSQL.cmake | 4 ---- 3 files changed, 4 insertions(+), 24 deletions(-) (limited to 'modules') diff --git a/modules/FindAvahi.cmake b/modules/FindAvahi.cmake index 3707b7cd..d328bf19 100644 --- a/modules/FindAvahi.cmake +++ b/modules/FindAvahi.cmake @@ -12,25 +12,11 @@ if (AVAHI_INCLUDE_DIR) endif (AVAHI_INCLUDE_DIR) -FIND_PATH(AVAHI_INCLUDE_DIR avahi-common/defs.h - /usr/include - /usr/local/include - ) +FIND_PATH(AVAHI_INCLUDE_DIR avahi-common/defs.h) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Avahi DEFAULT_MSG + AVAHI_INCLUDE_DIR) -if(AVAHI_INCLUDE_DIR) - set(AVAHI_FOUND TRUE) -endif(AVAHI_INCLUDE_DIR) - - -if(AVAHI_FOUND) - if(NOT Avahi_FIND_QUIETLY) - MESSAGE( STATUS "Avahi common includes found in ${AVAHI_INCLUDE_DIR}") - endif(NOT Avahi_FIND_QUIETLY) -else(AVAHI_FOUND) - if(Avahi_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Avahi not found") - endif(Avahi_FIND_REQUIRED) -endif(AVAHI_FOUND) MARK_AS_ADVANCED(AVAHI_INCLUDE_DIR) diff --git a/modules/FindDNSSD.cmake b/modules/FindDNSSD.cmake index 7acb82fc..8604bd57 100644 --- a/modules/FindDNSSD.cmake +++ b/modules/FindDNSSD.cmake @@ -14,8 +14,6 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. FIND_PATH(DNSSD_INCLUDE_DIR dns_sd.h - /usr/include - /usr/local/include /usr/include/avahi-compat-libdns_sd/ ) diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake index 49acf7be..43cb1865 100644 --- a/modules/FindPostgreSQL.cmake +++ b/modules/FindPostgreSQL.cmake @@ -24,10 +24,6 @@ find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h find_library(POSTGRESQL_LIBRARIES NAMES pq) -if(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) - set(POSTGRESQL_FOUND TRUE) -endif(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) - include(FindPackageHandleStandardArgs) find_package_handle_standard_args(PostgreSQL DEFAULT_MSG POSTGRESQL_INCLUDE_DIR POSTGRESQL_LIBRARIES ) -- cgit v1.2.1 From 5d418dcdf5faf708d61790ef19e56f8c30aa1c97 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 14 Aug 2007 07:16:00 +0000 Subject: Other clean svn path=/trunk/KDE/kdelibs/; revision=699883 --- modules/FindKexiv2.cmake | 2 -- modules/FindMusicBrainz.cmake | 15 ++++----------- 2 files changed, 4 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index 68df0c1e..f9d73ce1 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -63,8 +63,6 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) FIND_PATH(KEXIV2_INCLUDE_DIR libkexiv2/version.h ${_KEXIV2IncDir} - /usr/include - /usr/local/include ) FIND_LIBRARY(KEXIV2_LIBRARIES NAMES kexiv2 diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake index c4ccef80..a30e2973 100644 --- a/modules/FindMusicBrainz.cmake +++ b/modules/FindMusicBrainz.cmake @@ -6,17 +6,10 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -FIND_PATH(MUSICBRAINZ_INCLUDE_DIR musicbrainz/musicbrainz.h - /usr/include - /usr/local/include - ) - -if(MUSICBRAINZ_INCLUDE_DIR) - set(MUSICBRAINZ_FOUND TRUE) - MESSAGE( STATUS "music brainz found in <${MUSICBRAINZ_INCLUDE_DIR}>") -else(MUSICBRAINZ_INCLUDE_DIR) - MESSAGE( STATUS "music brainz not found") -endif(MUSICBRAINZ_INCLUDE_DIR) +FIND_PATH(MUSICBRAINZ_INCLUDE_DIR musicbrainz/musicbrainz.h) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args( MusicBrainz DEFAULT_MSG + MUSICBRAINZ_INCLUDE_DIR) MARK_AS_ADVANCED(MUSICBRAINZ_INCLUDE_DIR) -- cgit v1.2.1 From d1058df393549b8c388f3960b8253b56bcc05f1e Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Tue, 14 Aug 2007 08:34:09 +0000 Subject: As the system paths were removed, tell cmake to look for the X libraries in those paths as well. Laurent, could you also please actually test the changes you do? Thanks. svn path=/trunk/KDE/kdelibs/; revision=699907 --- modules/FindX11.cmake | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index e641e04f..7a456016 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -98,28 +98,28 @@ IF (UNIX) FIND_PATH(X11_XSync_INCLUDE_PATH X11/extensions/sync.h ${X11_INC_SEARCH_PATH}) - FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH}) # Find additional X libraries. Keep list sorted by library name. - FIND_LIBRARY(X11_ICE_LIB ICE ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xscreensaver_LIB Xss ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) - FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH} NO_SYSTEM_PATH) + FIND_LIBRARY(X11_ICE_LIB ICE ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xscreensaver_LIB Xss ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH}) SET(X11_LIBRARY_DIR "") IF(X11_X11_LIB) -- cgit v1.2.1 From 3131bf6a9c9860678609fcbb664ff6be3fe1bc87 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Tue, 14 Aug 2007 21:30:58 +0000 Subject: On FreeBSD, CUPS lives in /usr/local/lib which needs to be added to the link path; use the technique from FindX11 to get the dir of the library and pass that on to check_library_exists. Fixes CUPS detection on FreeBSD. CCMAIL: neundorf@kde.org CCMAIL: kde@freebsd.org svn path=/trunk/KDE/kdelibs/; revision=700122 --- modules/FindCups.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 92c958d9..f1e8b21c 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -23,15 +23,16 @@ FIND_LIBRARY(CUPS_LIBRARIES NAMES cups ) IF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) SET(CUPS_FOUND TRUE) + GET_FILENAME_COMPONENT(CUPS_LIBRARY_DIR ${CUPS_LIBRARIES} PATH) # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) - CHECK_LIBRARY_EXISTS(cups ippDeleteAttribute "" CUPS_HAS_IPP_DELETE_ATTRIBUTE) + CHECK_LIBRARY_EXISTS(cups ippDeleteAttribute ${CUPS_LIBRARY_DIR} CUPS_HAS_IPP_DELETE_ATTRIBUTE) IF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) SET(CUPS_FOUND FALSE) ENDIF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) # cupsDoAuthentication is new in cups-1.1.20 (and used by kdeprint) - CHECK_LIBRARY_EXISTS(cups cupsDoAuthentication "" CUPS_HAS_CUPS_DO_AUTHENTICATION) + CHECK_LIBRARY_EXISTS(cups cupsDoAuthentication ${CUPS_LIBRARY_DIR} CUPS_HAS_CUPS_DO_AUTHENTICATION) IF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) SET(CUPS_FOUND FALSE) ENDIF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) -- cgit v1.2.1 From 005a8e6f0b77ac0c7984ef3f8dc2b1c3b485a62c Mon Sep 17 00:00:00 2001 From: "Daniel M. Duley" Date: Tue, 14 Aug 2007 22:35:18 +0000 Subject: Look in the new subdirectory. Hope this build stuff is all correct >:) svn path=/trunk/KDE/kdelibs/; revision=700143 --- modules/FindBlitz.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 8551e770..891f82e3 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -18,8 +18,8 @@ find_path(BLITZ_INCLUDES NAMES blitz.h PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} + ${KDE4_INCLUDE_DIR}/blitz + ${INCLUDE_INSTALL_DIR}/blitz ) FIND_LIBRARY(BLITZ_LIBRARIES -- cgit v1.2.1 From d1932ac9e1d64905a8b3081928dec91e138a47e0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 15 Aug 2007 00:42:43 +0000 Subject: -add quotes around the filenames, so it should work better with directories containing spaces (probably quite seldom) Alex CCMAIL:groot@kde.org svn path=/trunk/KDE/kdelibs/; revision=700180 --- modules/FindCups.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index f1e8b21c..c0afec9f 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -23,16 +23,16 @@ FIND_LIBRARY(CUPS_LIBRARIES NAMES cups ) IF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) SET(CUPS_FOUND TRUE) - GET_FILENAME_COMPONENT(CUPS_LIBRARY_DIR ${CUPS_LIBRARIES} PATH) + GET_FILENAME_COMPONENT(CUPS_LIBRARY_DIR "${CUPS_LIBRARIES}" PATH) # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) - CHECK_LIBRARY_EXISTS(cups ippDeleteAttribute ${CUPS_LIBRARY_DIR} CUPS_HAS_IPP_DELETE_ATTRIBUTE) + CHECK_LIBRARY_EXISTS(cups ippDeleteAttribute "${CUPS_LIBRARY_DIR}" CUPS_HAS_IPP_DELETE_ATTRIBUTE) IF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) SET(CUPS_FOUND FALSE) ENDIF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) # cupsDoAuthentication is new in cups-1.1.20 (and used by kdeprint) - CHECK_LIBRARY_EXISTS(cups cupsDoAuthentication ${CUPS_LIBRARY_DIR} CUPS_HAS_CUPS_DO_AUTHENTICATION) + CHECK_LIBRARY_EXISTS(cups cupsDoAuthentication "${CUPS_LIBRARY_DIR}" CUPS_HAS_CUPS_DO_AUTHENTICATION) IF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) SET(CUPS_FOUND FALSE) ENDIF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) -- cgit v1.2.1 From 1d8b82b14931c06ce0cf9341eb0890028ddd955f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 15 Aug 2007 00:45:40 +0000 Subject: -change was correct, using PATH_SUFFIXES should be even better, then the header will be also found in /usr/include/blitz, /usr/local/include/blitz etc. Alex CCMAIL: daniel.duley@verizon.net svn path=/trunk/KDE/kdelibs/; revision=700184 --- modules/FindBlitz.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 891f82e3..4d88fb92 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -17,9 +17,10 @@ endif (BLITZ_INCLUDES AND BLITZ_LIBRARIES) find_path(BLITZ_INCLUDES NAMES blitz.h + PATH_SUFFIXES blitz PATHS - ${KDE4_INCLUDE_DIR}/blitz - ${INCLUDE_INSTALL_DIR}/blitz + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} ) FIND_LIBRARY(BLITZ_LIBRARIES -- cgit v1.2.1 From b26ad7eca3a4b6ed2d23906c5965cc335bfee2eb Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 15 Aug 2007 01:48:19 +0000 Subject: add some comments Alex svn path=/trunk/KDE/kdelibs/; revision=700189 --- modules/KDE4Macros.cmake | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 26104149..878194c6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -275,6 +275,38 @@ macro (KDE4_CREATE_HANDBOOK _docbook) DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) add_custom_target(handbook ALL DEPENDS ${_doc}) + +# kde4_create_handbook( [INSTALL_DESTINATION ] [SUBDIR ] ) +# e.g. kde4_create_handbook(index.docbook) +# kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en ) +# kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kinfocenter/dma) + +# set(_args ${ARGN}) +# +# set(_installDest) +# list(GET _args 0 _tmp) +# if("${_tmp}" STREQUAL "INSTALL_DESTINATION") +# list(GET _args 1 _installDest ) +# list(REMOVE_AT _args 0 1) +# endif("${_tmp}" STREQUAL "INSTALL_DESTINATION") +# +# get_filename_component(dirname ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE) +# list(GET _args 0 _tmp) +# if("${_tmp}" STREQUAL "SUBDIR") +# list(GET _args 1 dirname ) +# list(REMOVE_AT _args 0 1) +# endif("${_tmp}" STREQUAL "SUBDIR") +# +# if(_installDest) +# file(GLOB _images *.png) +# install(FILES ${_doc} ${_input} ${_images} DESTINATION ${_installDest}/${dirname}) +# # TODO symlinks on non-unix platforms +# if (UNIX) +# # execute some cmake code on make install which creates the symlink +# install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${_installDest}/common\" \"${_installDest}/${dirname}/common\" )" ) +# endif (UNIX) +# endif(_installDest) + endmacro (KDE4_CREATE_HANDBOOK) -- cgit v1.2.1 From 34aee9dc819ead4b597175ff9262ba7bc6c276a6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 15 Aug 2007 02:23:41 +0000 Subject: copy stuff from FindGettext.cmake, which actually searches libintl to a new FindLibintl.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=700191 --- modules/FindLibintl.cmake | 50 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 modules/FindLibintl.cmake (limited to 'modules') diff --git a/modules/FindLibintl.cmake b/modules/FindLibintl.cmake new file mode 100644 index 00000000..3b444d4c --- /dev/null +++ b/modules/FindLibintl.cmake @@ -0,0 +1,50 @@ +# Try to find Gettext functionality +# Once done this will define +# +# GETTEXT_FOUND - system has Gettext +# GETTEXT_INCLUDE_DIR - Gettext include directory +# GETTEXT_LIBRARIES - Libraries needed to use Gettext +# +# HAVE_LIBINTL_H +# LIBC_HAS_DGETTEXT +# LIBINTL_HAS_DGETTEXT +# +# TODO: This will enable translations only if Gettext functionality is +# present in libc. Must have more robust system for release, where Gettext +# functionality can also reside in standalone Gettext library, or the one +# embedded within kdelibs (cf. gettext.m4 from Gettext source). +# +# Copyright (c) 2006, Chusslove Illich, +# Copyright (c) 2007, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND) + set(Libintl_FIND_QUIETLY TRUE) +endif(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND) + +find_path(LIBINTL_INCLUDE_DIR libintl.h) + +set(LIBINTL_LIB_FOUND FALSE) + +if(LIBINTL_INCLUDE_DIR) + include(CheckFunctionExists) + check_function_exists(dgettext LIBINTL_LIBC_HAS_DGETTEXT) + + if (LIBINTL_LIBC_HAS_DGETTEXT) + set(LIBINTL_LIBRARIES) + set(LIBINTL_LIB_FOUND TRUE CACHE BOOL "Libintl found" FORCE) + else (LIBINTL_LIBC_HAS_DGETTEXT) + find_library(LIBINTL_LIBRARIES NAMES intl libintl ) + if(LIBINTL_LIBRARIES) + set(LIBINTL_LIB_FOUND TRUE CACHE BOOL "Libintl found" FORCE) + endif(LIBINTL_LIBRARIES) + endif (LIBINTL_LIBC_HAS_DGETTEXT) + +endif(LIBINTL_INCLUDE_DIR) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libintl DEFAULT_MSG LIBINTL_INCLUDE_DIR LIBINTL_LIB_FOUND) + +mark_as_advanced(LIBINTL_INCLUDE_DIR LIBINTL_LIBRARIES LIBINTL_LIBC_HAS_DGETTEXT) -- cgit v1.2.1 From c47e6423b497b2f51b0fda36fbae524b3efa61fb Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 15 Aug 2007 03:03:19 +0000 Subject: use FindLibintl.cmake instead of FindGettext.cmake in kdelibs Alex svn path=/trunk/KDE/kdelibs/; revision=700195 --- modules/FindLibintl.cmake | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindLibintl.cmake b/modules/FindLibintl.cmake index 3b444d4c..e4d0539e 100644 --- a/modules/FindLibintl.cmake +++ b/modules/FindLibintl.cmake @@ -1,13 +1,9 @@ -# Try to find Gettext functionality +# Try to find Libintl functionality # Once done this will define # -# GETTEXT_FOUND - system has Gettext -# GETTEXT_INCLUDE_DIR - Gettext include directory -# GETTEXT_LIBRARIES - Libraries needed to use Gettext -# -# HAVE_LIBINTL_H -# LIBC_HAS_DGETTEXT -# LIBINTL_HAS_DGETTEXT +# LIBINTL_FOUND - system has Libintl +# LIBINTL_INCLUDE_DIR - Libintl include directory +# LIBINTL_LIBRARIES - Libraries needed to use Libintl # # TODO: This will enable translations only if Gettext functionality is # present in libc. Must have more robust system for release, where Gettext -- cgit v1.2.1 From 00b3f6e99df7075d56e07edc8a90c4794744f2ec Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 15 Aug 2007 03:55:48 +0000 Subject: -fix indentation -remove old macros which failed with SEND_ERROR since several weeks already -deprecated KDE4_CREATE_HTML_HANDBOOK() and added option KDE4_ENABLE_HTMLHANDBOOK instead, if enabled, you get targets "htmlhandbook", which can be used to create the html docs Alex CCMAIL:winter@kde.org Tip of the day: using "make edit_cache" you can easily change cmake settings svn path=/trunk/KDE/kdelibs/; revision=700205 --- modules/FindKDE4Internal.cmake | 33 ++++++++++++++++--------------- modules/KDE4Macros.cmake | 44 ++++++++++++------------------------------ 2 files changed, 29 insertions(+), 48 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8ce4a045..6029d9e5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -423,27 +423,27 @@ else (_kdeBootStrapping) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) - # allow searching cmake modules in all given kde install locations (KDEDIRS based) - execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) - file(TO_CMAKE_PATH "${_data_DIR}" _data_DIR) - foreach(dir ${_data_DIR}) - set (apath "${dir}/cmake/modules") - if (EXISTS "${apath}") - set (included 0) - string(TOLOWER "${apath}" _apath) - # ignore already added pathes, case insensitive - foreach(adir ${CMAKE_MODULE_PATH}) + # allow searching cmake modules in all given kde install locations (KDEDIRS based) + execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) + file(TO_CMAKE_PATH "${_data_DIR}" _data_DIR) + foreach(dir ${_data_DIR}) + set (apath "${dir}/cmake/modules") + if (EXISTS "${apath}") + set (included 0) + string(TOLOWER "${apath}" _apath) + # ignore already added pathes, case insensitive + foreach(adir ${CMAKE_MODULE_PATH}) string(TOLOWER "${adir}" _adir) if ("${_adir}" STREQUAL "${_apath}") - set (included 1) + set (included 1) endif ("${_adir}" STREQUAL "${_apath}") - endforeach(adir) - if (NOT included) + endforeach(adir) + if (NOT included) message(STATUS "Adding ${apath} to CMAKE_MODULE_PATH") set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${apath}") - endif (NOT included) - endif (EXISTS "${apath}") - endforeach(dir) + endif (NOT included) + endif (EXISTS "${apath}") + endforeach(dir) endif (_kdeBootStrapping) @@ -452,6 +452,7 @@ endif (_kdeBootStrapping) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") +option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 878194c6..2ddd8d70 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -276,6 +276,15 @@ macro (KDE4_CREATE_HANDBOOK _docbook) ) add_custom_target(handbook ALL DEPENDS ${_doc}) + if(KDE4_ENABLE_HTMLHANDBOOK) + set(_htmlDoc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) + add_custom_command(OUTPUT ${_doc} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} -o ${_doc} ${_input} + DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} + ) + add_custom_target(htmlhandbook DEPENDS ${_doc}) + endif(KDE4_ENABLE_HTMLHANDBOOK) + # kde4_create_handbook( [INSTALL_DESTINATION ] [SUBDIR ] ) # e.g. kde4_create_handbook(index.docbook) # kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en ) @@ -310,27 +319,6 @@ macro (KDE4_CREATE_HANDBOOK _docbook) endmacro (KDE4_CREATE_HANDBOOK) -macro (KDE4_CREATE_HTML_HANDBOOK _docbook) - get_filename_component(_input ${_docbook} ABSOLUTE) - set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) - - set(_bootstrapOption) - #Bootstrap - if (_kdeBootStrapping) - set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) - set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") - else (_kdeBootStrapping) - set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) - endif (_kdeBootStrapping) - - add_custom_command(OUTPUT ${_doc} - COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} -o ${_doc} ${_input} - DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} - ) - add_custom_target(htmlhandbook ALL DEPENDS ${_doc}) -endmacro (KDE4_CREATE_HTML_HANDBOOK) - - macro (KDE4_CREATE_MANPAGE _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.1) @@ -910,16 +898,8 @@ macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) endmacro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) -macro (KDE4_INSTALL_XDG_MIMETYPES) - message(SEND_ERROR "KDE4_INSTALL_XDG_MIMETYPES() is deprecated, see kdelibs/mimetypes/CMakeLists.txt for an example") -endmacro (KDE4_INSTALL_XDG_MIMETYPES) - -macro (KDE4_AUTOMOC) - message(SEND_ERROR "KDE4_AUTOMOC() is not required anymore for automoc, please remove it") -endmacro (KDE4_AUTOMOC) - -MACRO (KDE4_INSTALL_LIBTOOL_FILE) - message(SEND_ERROR "KDE4_INSTALL_LIBTOOL_FILE() is deprecated, please remove it") -ENDMACRO (KDE4_INSTALL_LIBTOOL_FILE) +macro (KDE4_CREATE_HTML_HANDBOOK _docbook) + message(STATUS "KDE4_CREATE_HTML_HANDBOOK() is deprecated. Enable the option KDE4_ENABLE_HTMLHANDBOOK instead, this will give you targets htmlhandbook for creating the html help.") +endmacro (KDE4_CREATE_HTML_HANDBOOK) -- cgit v1.2.1 From 2f2f14289d4a63d53140fdbd336890f51d332a78 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 16 Aug 2007 02:18:48 +0000 Subject: also work if used with too few arguments Alex svn path=/trunk/KDE/kdelibs/; revision=700613 --- modules/FindGettext.cmake | 26 +++++++++++++++----------- modules/KDE4Macros.cmake | 24 ++++++++++++++---------- 2 files changed, 29 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index b461fe51..121c59a5 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -139,17 +139,21 @@ MACRO(GETTEXT_PROCESS_POT_FILE _potFile) SET(_addToAll) SET(_installDest) - LIST(GET _args 0 _tmp) - IF("${_tmp}" STREQUAL "ALL") - SET(_addToAll ALL) - LIST(REMOVE_AT _args 0) - ENDIF("${_tmp}" STREQUAL "ALL") - - LIST(GET _args 0 _tmp) - IF("${_tmp}" STREQUAL "INSTALL_DESTINATION") - LIST(GET _args 1 _installDest ) - LIST(REMOVE_AT _args 0 1) - ENDIF("${_tmp}" STREQUAL "INSTALL_DESTINATION") + IF(_args) + LIST(GET _args 0 _tmp) + IF("${_tmp}" STREQUAL "ALL") + SET(_addToAll ALL) + LIST(REMOVE_AT _args 0) + ENDIF("${_tmp}" STREQUAL "ALL") + ENDIF(_args) + + IF(_args) + LIST(GET _args 0 _tmp) + IF("${_tmp}" STREQUAL "INSTALL_DESTINATION") + LIST(GET _args 1 _installDest ) + LIST(REMOVE_AT _args 0 1) + ENDIF("${_tmp}" STREQUAL "INSTALL_DESTINATION") + ENDIF(_args) GET_FILENAME_COMPONENT(_potBasename ${_potFile} NAME_WE) GET_FILENAME_COMPONENT(_absPotFile ${_potFile} ABSOLUTE) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2ddd8d70..b857ac4f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -293,18 +293,22 @@ macro (KDE4_CREATE_HANDBOOK _docbook) # set(_args ${ARGN}) # # set(_installDest) -# list(GET _args 0 _tmp) -# if("${_tmp}" STREQUAL "INSTALL_DESTINATION") -# list(GET _args 1 _installDest ) -# list(REMOVE_AT _args 0 1) -# endif("${_tmp}" STREQUAL "INSTALL_DESTINATION") +# if(_args) +# list(GET _args 0 _tmp) +# if("${_tmp}" STREQUAL "INSTALL_DESTINATION") +# list(GET _args 1 _installDest ) +# list(REMOVE_AT _args 0 1) +# endif("${_tmp}" STREQUAL "INSTALL_DESTINATION") +# endif(_args) # # get_filename_component(dirname ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE) -# list(GET _args 0 _tmp) -# if("${_tmp}" STREQUAL "SUBDIR") -# list(GET _args 1 dirname ) -# list(REMOVE_AT _args 0 1) -# endif("${_tmp}" STREQUAL "SUBDIR") +# if(_args) +# list(GET _args 0 _tmp) +# if("${_tmp}" STREQUAL "SUBDIR") +# list(GET _args 1 dirname ) +# list(REMOVE_AT _args 0 1) +# endif("${_tmp}" STREQUAL "SUBDIR") +# endif(_args) # # if(_installDest) # file(GLOB _images *.png) -- cgit v1.2.1 From 468f523bb5cfd6f2394fa05f9112d734abf72930 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Aug 2007 06:20:33 +0000 Subject: Now use one uniq macro to create doc svn path=/trunk/KDE/kdelibs/; revision=702108 --- modules/KDE4Macros.cmake | 71 ++++++++++++++++++++---------------------------- 1 file changed, 30 insertions(+), 41 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b857ac4f..94b0ce10 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -242,18 +242,7 @@ macro(KDE4_INSTALL_TS_FILES _lang _sdir) endmacro(KDE4_INSTALL_TS_FILES) macro (KDE4_INSTALL_HANDBOOK _lang) - get_filename_component(_tmp_FILE ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE) - get_filename_component(_basename ${_tmp_FILE} NAME_WE) - file(GLOB _books *.docbook) - file(GLOB _images *.png) - set(relative ${ARGV1}) - set( dirname ${relative}/${_basename}) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ${_books} ${_images} DESTINATION ${HTML_INSTALL_DIR}/${_lang}/${dirname}) - # TODO symlinks on non-unix platforms - if (UNIX) - # execute some cmake code on make install which creates the symlink - install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${HTML_INSTALL_DIR}/${_lang}/common\" \"${HTML_INSTALL_DIR}/${_lang}/${dirname}/common\" )" ) - endif (UNIX) + message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") endmacro (KDE4_INSTALL_HANDBOOK ) @@ -290,35 +279,35 @@ macro (KDE4_CREATE_HANDBOOK _docbook) # kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en ) # kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kinfocenter/dma) -# set(_args ${ARGN}) -# -# set(_installDest) -# if(_args) -# list(GET _args 0 _tmp) -# if("${_tmp}" STREQUAL "INSTALL_DESTINATION") -# list(GET _args 1 _installDest ) -# list(REMOVE_AT _args 0 1) -# endif("${_tmp}" STREQUAL "INSTALL_DESTINATION") -# endif(_args) -# -# get_filename_component(dirname ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE) -# if(_args) -# list(GET _args 0 _tmp) -# if("${_tmp}" STREQUAL "SUBDIR") -# list(GET _args 1 dirname ) -# list(REMOVE_AT _args 0 1) -# endif("${_tmp}" STREQUAL "SUBDIR") -# endif(_args) -# -# if(_installDest) -# file(GLOB _images *.png) -# install(FILES ${_doc} ${_input} ${_images} DESTINATION ${_installDest}/${dirname}) -# # TODO symlinks on non-unix platforms -# if (UNIX) -# # execute some cmake code on make install which creates the symlink -# install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${_installDest}/common\" \"${_installDest}/${dirname}/common\" )" ) -# endif (UNIX) -# endif(_installDest) + set(_args ${ARGN}) + + set(_installDest) + if(_args) + list(GET _args 0 _tmp) + if("${_tmp}" STREQUAL "INSTALL_DESTINATION") + list(GET _args 1 _installDest ) + list(REMOVE_AT _args 0 1) + endif("${_tmp}" STREQUAL "INSTALL_DESTINATION") + endif(_args) + + get_filename_component(dirname ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE) + if(_args) + list(GET _args 0 _tmp) + if("${_tmp}" STREQUAL "SUBDIR") + list(GET _args 1 dirname ) + list(REMOVE_AT _args 0 1) + endif("${_tmp}" STREQUAL "SUBDIR") + endif(_args) + + if(_installDest) + file(GLOB _images *.png) + install(FILES ${_doc} ${_input} ${_images} DESTINATION ${_installDest}/${dirname}) + # TODO symlinks on non-unix platforms + if (UNIX) + # execute some cmake code on make install which creates the symlink + install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${_installDest}/common\" \"${_installDest}/${dirname}/common\" )" ) + endif (UNIX) + endif(_installDest) endmacro (KDE4_CREATE_HANDBOOK) -- cgit v1.2.1 From a0ac74e03721c2b1441a733d57377f177ceff7a3 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Aug 2007 06:51:13 +0000 Subject: Use FIND_PACKAGE_HANDLE_STANDARD_ARGS Fix typo svn path=/trunk/KDE/kdelibs/; revision=702150 --- modules/FindBerkeleyDB.cmake | 16 ++-------------- modules/FindENCHANT.cmake | 17 +++-------------- modules/FindFontconfig.cmake | 21 +++++---------------- modules/FindKDE4Internal.cmake | 3 --- modules/FindKNepomuk.cmake | 14 ++------------ modules/FindNetworkManager.cmake | 2 +- modules/FindSqlite.cmake | 16 +++------------- modules/FindStrigi.cmake | 1 - modules/KDE4Macros.cmake | 1 - 9 files changed, 16 insertions(+), 75 deletions(-) (limited to 'modules') diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake index e68af609..07a39a17 100644 --- a/modules/FindBerkeleyDB.cmake +++ b/modules/FindBerkeleyDB.cmake @@ -18,20 +18,8 @@ FIND_PATH(BERKELEY_DB_INCLUDE_DIR db.h FIND_LIBRARY(BERKELEY_DB_LIBRARIES NAMES db ) -IF(BERKELEY_DB_INCLUDE_DIR AND BERKELEY_DB_LIBRARIES) - SET(BERKELEY_DB_FOUND TRUE) -ENDIF(BERKELEY_DB_INCLUDE_DIR AND BERKELEY_DB_LIBRARIES) - -IF(BERKELEY_DB_FOUND) - IF(NOT Berkeley_DB_FIND_QUIETLY) - MESSAGE(STATUS "Found Berkeley DB: ${BERKELEY_DB_LIBRARIES}") - ENDIF(NOT Berkeley_DB_FIND_QUIETLY) -ELSE(BERKELEY_DB_FOUND) - IF(Berkeley_DB_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Berkeley DB >= 4.1") - ENDIF(Berkeley_DB_FIND_REQUIRED) -ENDIF(BERKELEY_DB_FOUND) - +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Berkeley "Could not find Berkeley DB >= 4.1" BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES # show the BERKELEY_DB_INCLUDE_DIR and BERKELEY_DB_LIBRARIES variables only in the advanced view MARK_AS_ADVANCED(BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES ) diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 591230f7..82455c1f 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -36,20 +36,9 @@ else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) find_library(ENCHANT_LIBRARIES NAMES enchant PATHS ${_ENCHANTLinkDir} ) - if (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) - set(ENCHANT_FOUND TRUE) - endif (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) - - if (ENCHANT_FOUND) - if (NOT ENCHANT_FIND_QUIETLY) - message(STATUS "Found ENCHANT: ${ENCHANT_LIBRARIES}") - endif (NOT ENCHANT_FIND_QUIETLY) - else (ENCHANT_FOUND) - if (ENCHANT_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find ENCHANT") - endif (ENCHANT_FIND_REQUIRED) - endif (ENCHANT_FOUND) - + include(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES ) + mark_as_advanced(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES) endif (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 791d05ea..10408b12 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -5,7 +5,7 @@ # FONTCONFIG_LIBRARIES - Link these to use FONTCONFIG # FONTCONFIG_DEFINITIONS - Compiler switches required for using FONTCONFIG -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006,2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -39,20 +39,9 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) ${_FONTCONFIGLinkDir} ) - if (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) - set(FONTCONFIG_FOUND TRUE) - endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) - - if (FONTCONFIG_FOUND) - if (NOT Fontconfig_FIND_QUIETLY) - message(STATUS "Found FONTCONFIG: ${FONTCONFIG_LIBRARIES}") - endif (NOT Fontconfig_FIND_QUIETLY) - else (FONTCONFIG_FOUND) - if (Fontconfig_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find FONTCONFIG") - endif (Fontconfig_FIND_REQUIRED) - endif (FONTCONFIG_FOUND) - - mark_as_advanced(FONTCONFIG_LIBRARIES) + include(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(Fontconfig DEFAULT_MSG FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR ) + + mark_as_advanced(FONTCONFIG_LIBRARIES FONTCONFIG_INCLUDE_DIR) endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6029d9e5..5ccdc881 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -198,9 +198,6 @@ # KDE4_INSTALL_HANDBOOK() # Install the handbook documentation # -# KDE4_CREATE_HTML_HANDBOOK( docbookfile ) -# Create HTML version of the handbook from the docbookfile (using meinproc) -# # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally # diff --git a/modules/FindKNepomuk.cmake b/modules/FindKNepomuk.cmake index ba483a8e..dbbadfeb 100644 --- a/modules/FindKNepomuk.cmake +++ b/modules/FindKNepomuk.cmake @@ -25,19 +25,9 @@ FIND_LIBRARY(KNEPOMUK_LIBRARIES ${LIB_INSTALL_DIR} ) -if(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) - set(KNEPOMUK_FOUND TRUE) -endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(KNepomuk DEFAULT_MSG KNEPOMUK_INCLUDES KNEPOMUK_LIBRARIES ) -if(KNEPOMUK_FOUND) - if(NOT KNepomuk_FIND_QUIETLY) - message(STATUS "Found KNepomuk: ${KNEPOMUK_LIBRARIES}") - endif(NOT KNepomuk_FIND_QUIETLY) -else(KNEPOMUK_FOUND) - if(KNepomuk_FIND_REQUIRED) - message(FATAL_ERROR "Could not find KNepomuk library.") - endif(KNepomuk_FIND_REQUIRED) -endif(KNEPOMUK_FOUND) MARK_AS_ADVANCED(KNEPOMUK_INCLUDES KNEPOMUK_LIBRARIES) diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake index cbaae5f1..e931d091 100644 --- a/modules/FindNetworkManager.cmake +++ b/modules/FindNetworkManager.cmake @@ -3,7 +3,7 @@ # # NETWORKMANAGER_FOUND - system has NetworkManager # NETWORKMANAGER_INCLUDE_DIR - the NetworkManager include directory -# NETWORKMANAGER_LIBRARIES - the libraries needed to use NetworkManager +# NETWORKMANAGER_LIBRARY - the libraries needed to use NetworkManager # NETWORKMANAGER_DEFINITIONS - Compiler switches required for using NetworkManager # Copyright (c) 2006, Alexander Neundorf, diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index b1a4ecba..fdf09c32 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -31,20 +31,10 @@ else (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) PATHS ${_SQLITELinkDir} ) + - if (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) - set(SQLITE_FOUND TRUE) - endif (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) - - if (SQLITE_FOUND) - if (NOT Sqlite_FIND_QUIETLY) - message(STATUS "Found SQLITE: ${SQLITE_LIBRARIES}") - endif (NOT Sqlite_FIND_QUIETLY) - else (SQLITE_FOUND) - if (Sqlite_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find SQLITE") - endif (Sqlite_FIND_REQUIRED) - endif (SQLITE_FOUND) + include(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sqlite DEFAULT_MSG SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) MARK_AS_ADVANCED(SQLITE_INCLUDE_DIR SQLITE_LIBRARIES) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 3cf32e79..a85ada8a 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -5,7 +5,6 @@ # STRIGI_INCLUDE_DIR - the Strigi include directory # STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer # STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams -# STRIGI_LIBRARIES - Link these to use both Strigi libraries set(STRIGI_MIN_VERSION "0.5.3") diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 94b0ce10..49323d49 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -20,7 +20,6 @@ # KDE4_REMOVE_OBSOLETE_CMAKE_FILES # KDE4_NO_ENABLE_FINAL # KDE4_CREATE_HANDBOOK -# KDE4_CREATE_HTML_HANDBOOK # KDE4_INSTALL_HANDBOOK # Copyright (c) 2006, 2007, Alexander Neundorf, -- cgit v1.2.1 From 31b2684133466f00dfdab15bfe56ee65d926dab0 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Aug 2007 07:43:07 +0000 Subject: This macro is obsolete now svn path=/trunk/KDE/kdelibs/; revision=702217 --- modules/KDE4Macros.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 49323d49..d1383e70 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -20,7 +20,6 @@ # KDE4_REMOVE_OBSOLETE_CMAKE_FILES # KDE4_NO_ENABLE_FINAL # KDE4_CREATE_HANDBOOK -# KDE4_INSTALL_HANDBOOK # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, -- cgit v1.2.1 From 0e04b2ba503d2dcf3b441e7af64763ba0fe6d8ec Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Aug 2007 09:07:53 +0000 Subject: Missing a ')' svn path=/trunk/KDE/kdelibs/; revision=702247 --- modules/FindBerkeleyDB.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake index 07a39a17..68e4fb63 100644 --- a/modules/FindBerkeleyDB.cmake +++ b/modules/FindBerkeleyDB.cmake @@ -19,7 +19,7 @@ FIND_PATH(BERKELEY_DB_INCLUDE_DIR db.h FIND_LIBRARY(BERKELEY_DB_LIBRARIES NAMES db ) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Berkeley "Could not find Berkeley DB >= 4.1" BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES +find_package_handle_standard_args(Berkeley "Could not find Berkeley DB >= 4.1" BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIE # show the BERKELEY_DB_INCLUDE_DIR and BERKELEY_DB_LIBRARIES variables only in the advanced view MARK_AS_ADVANCED(BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES ) -- cgit v1.2.1 From 2abb23d445acbc16177f684a000cd12c62ee1c1f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Aug 2007 09:10:05 +0000 Subject: SVN_SILENT: I hate my keyboard svn path=/trunk/KDE/kdelibs/; revision=702248 --- modules/FindBerkeleyDB.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake index 68e4fb63..18d475bd 100644 --- a/modules/FindBerkeleyDB.cmake +++ b/modules/FindBerkeleyDB.cmake @@ -19,7 +19,7 @@ FIND_PATH(BERKELEY_DB_INCLUDE_DIR db.h FIND_LIBRARY(BERKELEY_DB_LIBRARIES NAMES db ) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Berkeley "Could not find Berkeley DB >= 4.1" BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIE +find_package_handle_standard_args(Berkeley "Could not find Berkeley DB >= 4.1" BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES) # show the BERKELEY_DB_INCLUDE_DIR and BERKELEY_DB_LIBRARIES variables only in the advanced view MARK_AS_ADVANCED(BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES ) -- cgit v1.2.1 From 2f57dbc1a730680bdf1376a61a83c14b78245b8b Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Mon, 20 Aug 2007 11:32:21 +0000 Subject: If Strigi is found via pkg-config but not found in the normal installation paths, (double) check in the directories returned by pkg-config. Handles the case where Strigi is installed in a different prefix from KDE. svn path=/trunk/KDE/kdelibs/; revision=702314 --- modules/FindStrigi.cmake | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a85ada8a..55fec492 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -53,6 +53,18 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) message(STATUS "Found Strigi >= ${STRIGI_MIN_VERSION}") endif(NOT Strigi_FIND_QUIETLY) endif(NOT _return_VALUE STREQUAL "0") + if (NOT STRIGI_STREAMANALYZER_LIBRARY) + find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer + PATHS ${_dummyLinkDir}) + endif(NOT STRIGI_STREAMANALYZER_LIBRARY) + if (NOT STRIGI_STREAMS_LIBRARY) + find_library(STRIGI_STREAMS_LIBRARY NAMES streams + PATHS ${_dummyLinkDir}) + endif(NOT STRIGI_STREAMS_LIBRARY) + if (NOT STRIGI_INCLUDE_DIR) + find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h + PATHS ${_dummyIncDir}) + endif(NOT STRIGI_INCLUDE_DIR) else(_dummyLinkFlags) message(STATUS "pkgconfig didn't find strigi, couldn't check strigi version") endif(_dummyLinkFlags) @@ -62,3 +74,4 @@ include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi "Couldn't find Strigi streams library in $STRIGI_HOME/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib" STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) + -- cgit v1.2.1 From f73e58154385cbf67296ba52c616d37164340eb0 Mon Sep 17 00:00:00 2001 From: Tuomas Suutari Date: Mon, 20 Aug 2007 12:54:23 +0000 Subject: When finding an optional library don't fail if old version is found. Just mark as not found. Will still fail at the end if finding a required library. svn path=/trunk/KDE/kdelibs/; revision=702344 --- modules/FindKdcraw.cmake | 4 +++- modules/FindKexiv2.cmake | 4 +++- modules/FindKipi.cmake | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index b9cca05e..ebd37382 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -48,7 +48,9 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) message(STATUS "Found libkdcraw release >= 0.2.0") set(KDCRAW_VERSION_GOOD_FOUND TRUE) else(_return_VALUE STREQUAL "0") - message(FATAL_ERROR "Found libkdcaw release < 0.2.0") + message(STATUS "Found libkdcaw release < 0.2.0, too old") + set(KDCRAW_VERSION_GOOD_FOUND FALSE) + set(KDCRAW_FOUND FALSE) endif(_return_VALUE STREQUAL "0") else(_KDCRAWLinkFlags) set(KDCRAW_VERSION_GOOD_FOUND FALSE) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index f9d73ce1..3365d7e1 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -48,7 +48,9 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) message(STATUS "Found libkexiv2 release >= 0.2.0") set(KEXIV2_VERSION_GOOD_FOUND TRUE) else(_return_VALUE STREQUAL "0") - message(FATAL_ERROR "Found libkexiv2 release < 0.2.0") + message(STATUS "Found libkexiv2 release < 0.2.0, too old") + set(KEXIV2_VERSION_GOOD_FOUND FALSE) + set(KEXIV2_FOUND FALSE) endif(_return_VALUE STREQUAL "0") else(_KEXIV2LinkFlags) set(KEXIV2_VERSION_GOOD_FOUND FALSE) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 15e2643e..bde22e50 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -49,7 +49,9 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) message(STATUS "Found libkipi release >= 0.2.0") set(KIPI_VERSION_GOOD_FOUND TRUE) else(_return_VALUE STREQUAL "0") - message(FATAL_ERROR "Found libkipi release < 0.2.0") + message(STATUS "Found libkipi release < 0.2.0, too old") + set(KIPI_VERSION_GOOD_FOUND FALSE) + set(KIPI_FOUND FALSE) endif(_return_VALUE STREQUAL "0") else(_KIPILinkFlags) set(KIPI_VERSION_GOOD_FOUND FALSE) -- cgit v1.2.1 From c6204d8966e3359915185d5f5b8018db1b6857a5 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Mon, 20 Aug 2007 15:00:00 +0000 Subject: Not all krb5 implementations have GSSAPI; the krb5-config script then returns an error message which isn't a useful library name svn path=/trunk/KDE/kdelibs/; revision=702399 --- modules/FindGSSAPI.cmake | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'modules') diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 64182fdc..36dffc85 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -30,7 +30,12 @@ ELSE(GSSAPI_LIBS AND GSSAPI_FLAVOR) IF(KRB5_CONFIG) + SET(HAVE_KRB5_GSSAPI TRUE) EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) + IF(_return_VALUE) + MESSAGE(STATUS "GSSAPI configure check failed.") + SET(HAVE_KRB5_GSSAPI FALSE) + ENDIF(_return_VALUE) EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) string(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") @@ -44,6 +49,16 @@ ELSE(GSSAPI_LIBS AND GSSAPI_FLAVOR) SET(GSSAPI_FLAVOR "HEIMDAL") ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + IF(NOT HAVE_KRB5_GSSAPI) + IF (gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + MESSAGE(STATUS "Solaris Kerberos does not have GSSAPI; this is normal.") + SET(GSSAPI_LIBS) + SET(GSSAPI_INCS) + ELSE(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + MESSAGE(WARNING "${KRB5_CONFIG} failed unexpectedly.") + ENDIF(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + ENDIF(NOT HAVE_KRB5_GSSAPI) + IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that SET(GSSAPI_FOUND TRUE) message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") -- cgit v1.2.1 From 2da6dc51b6d685534d11147913bebc36f48af1cf Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Tue, 21 Aug 2007 08:13:33 +0000 Subject: make the enchant check working again svn path=/trunk/KDE/kdelibs/; revision=702823 --- modules/FindENCHANT.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 82455c1f..7b3e4163 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -37,7 +37,7 @@ else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) PATHS ${_ENCHANTLinkDir} ) include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES ) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES ) mark_as_advanced(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES) -- cgit v1.2.1 From 371e2b8e20c2fe891f5fc83b90d0d1e097cb49b4 Mon Sep 17 00:00:00 2001 From: Brad Hards Date: Tue, 21 Aug 2007 16:21:34 +0000 Subject: Change the way we search to make sure that if we have more than one copy of OpenEXR (say 1.4 in /usr/lib and 1.6 in /usr/local/lib) that the paths given by pkg-config are actually used. svn path=/trunk/KDE/kdelibs/; revision=702948 --- modules/FindOpenEXR.cmake | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index fafde519..bfdb471d 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -27,27 +27,31 @@ ENDIF (NOT WIN32) ${_OpenEXRIncDir} ${_OpenEXRIncDir}/OpenEXR/ ) - + FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half PATHS - ${_OPENEXRLinkDir} + ${_OpenEXRLinkDir} + NO_DEFAULT_PATH ) FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex PATHS - ${_OPENEXRLinkDir} + ${_OpenEXRLinkDir} + NO_DEFAULT_PATH ) FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath PATHS - ${_OPENEXRLinkDir} + ${_OpenEXRLinkDir} + NO_DEFAULT_PATH ) FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf PATHS - ${_OPENEXRLinkDir} + ${_OpenEXRLinkDir} + NO_DEFAULT_PATH ) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) -- cgit v1.2.1 From 452b605607d732ef1c77ad4cfbc489ba363728e0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 21 Aug 2007 20:49:53 +0000 Subject: typo Alex svn path=/trunk/KDE/kdelibs/; revision=703061 --- modules/FindQt4.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index ae757c17..d493a4ee 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -23,6 +23,7 @@ # QT_USE_QTTEST # QT_USE_QTUITOOLS # QT_USE_QTDBUS +# QT_USE_QTSCRIPT # # All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. @@ -451,7 +452,7 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) - # Set QT_QTSVG_INCLUDE_DIR + # Set QT_QTSCRIPT_INCLUDE_DIR FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript PATHS ${QT_INCLUDE_DIR}/QtScript -- cgit v1.2.1 From 44235cf3486a0124fc42da0d91f338d46709cfe2 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 23 Aug 2007 12:58:09 +0000 Subject: a little nicer default message. svn path=/trunk/KDE/kdelibs/; revision=703857 --- modules/FindPackageHandleStandardArgs.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index 8d683cb3..151d8125 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -20,7 +20,11 @@ MACRO(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) IF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") - SET(_FAIL_MESSAGE "Could NOT find ${_NAME}") + IF (${_NAME}_FIND_REQUIRED) + SET(_FAIL_MESSAGE "Could not find REQUIRED package ${_NAME}") + ELSE (${_NAME}_FIND_REQUIRED) + SET(_FAIL_MESSAGE "Could not find OPTIONAL package ${_NAME}") + ENDIF (${_NAME}_FIND_REQUIRED) ELSE("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") SET(_FAIL_MESSAGE "${_FAIL_MSG}") ENDIF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") -- cgit v1.2.1 From 774a92f000c11eb7fc6d4d0032596d35b0c27de4 Mon Sep 17 00:00:00 2001 From: Stephan Binner Date: Thu, 23 Aug 2007 22:14:18 +0000 Subject: unbreak checks svn path=/trunk/KDE/kdelibs/; revision=704013 --- modules/FindFontconfig.cmake | 2 +- modules/FindSqlite.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 10408b12..c6a8c6ab 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -40,7 +40,7 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) ) include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(Fontconfig DEFAULT_MSG FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR ) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(Fontconfig DEFAULT_MSG FONTCONFIG_LIBRARIES FONTCONFIG_INCLUDE_DIR ) mark_as_advanced(FONTCONFIG_LIBRARIES FONTCONFIG_INCLUDE_DIR) diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index fdf09c32..96f32929 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -34,7 +34,7 @@ else (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sqlite DEFAULT_MSG SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sqlite DEFAULT_MSG SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) MARK_AS_ADVANCED(SQLITE_INCLUDE_DIR SQLITE_LIBRARIES) -- cgit v1.2.1 From 7c2dbce61c2e54afab9eef2574a06aea45d1e11f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 25 Aug 2007 16:00:04 +0000 Subject: typo svn path=/trunk/KDE/kdelibs/; revision=704632 --- modules/FindPkgConfig.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPkgConfig.cmake b/modules/FindPkgConfig.cmake index afae15cb..34ef039a 100644 --- a/modules/FindPkgConfig.cmake +++ b/modules/FindPkgConfig.cmake @@ -11,9 +11,9 @@ # when module(s) could not be found # # It sets the following variables: -# PKG_CONFIG_FOUND ... true iff pkg-config works on the system +# PKG_CONFIG_FOUND ... true if pkg-config works on the system # PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program -# _FOUND ... set to 1 iff module(s) exist +# _FOUND ... set to 1 if module(s) exist # # For the following variables two sets of values exist; first one is the # common one and has the given PREFIX. The second set contains flags -- cgit v1.2.1 From 0e6e562f6144cb145c893aaf81c200e9bc4d8b73 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 26 Aug 2007 13:49:18 +0000 Subject: Use FIND_PACKAGE_HANDLE_STANDARD_ARGS svn path=/trunk/KDE/kdelibs/; revision=704860 --- modules/FindEigen.cmake | 16 +++------------- modules/FindLinuxWirelesstools.cmake | 16 +++------------- modules/FindPlasma.cmake | 16 ++++------------ modules/FindTIFF.cmake | 4 ++-- modules/FindUSB.cmake | 15 ++------------- 5 files changed, 14 insertions(+), 53 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen.cmake b/modules/FindEigen.cmake index 847239e0..733b2963 100644 --- a/modules/FindEigen.cmake +++ b/modules/FindEigen.cmake @@ -4,7 +4,7 @@ # EIGEN_FOUND - system has eigen lib # EIGEN_INCLUDE_DIR - the eigen include directory # -# Copyright (c) 2006, Montel Laurent, +# Copyright (c) 2006, 2007 Montel Laurent, # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -20,19 +20,9 @@ find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h ${INCLUDE_INSTALL_DIR} ) -if(EIGEN_INCLUDE_DIR) - set(EIGEN_FOUND TRUE) -endif(EIGEN_INCLUDE_DIR) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Eigen DEFAULT_MSG EIGEN_INCLUDE_DIR ) -if(EIGEN_FOUND) - if(NOT Eigen_FIND_QUIETLY) - message(STATUS "Found Eigen: ${EIGEN_INCLUDE_DIR}") - endif(NOT Eigen_FIND_QUIETLY) -else(EIGEN_FOUND) - if(Eigen_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Eigen") - endif(Eigen_FIND_REQUIRED) -endif(EIGEN_FOUND) mark_as_advanced(EIGEN_INCLUDE_DIR) diff --git a/modules/FindLinuxWirelesstools.cmake b/modules/FindLinuxWirelesstools.cmake index 844e6c56..794bba77 100644 --- a/modules/FindLinuxWirelesstools.cmake +++ b/modules/FindLinuxWirelesstools.cmake @@ -20,19 +20,9 @@ FIND_PATH(IW_INCLUDE_DIR iwlib.h) FIND_LIBRARY(IW_LIBRARIES NAMES iw) -IF(IW_INCLUDE_DIR AND IW_LIBRARIES) - SET(IW_FOUND TRUE) -ENDIF(IW_INCLUDE_DIR AND IW_LIBRARIES) - -IF(IW_FOUND) - IF(NOT LinuxWirelesstools_FIND_QUIETLY) - MESSAGE(STATUS "Found Linux Wirelesstools lib : ${IW_LIBRARIES}") - ENDIF(NOT LinuxWirelesstools_FIND_QUIETLY) -ELSE(IW_FOUND) - IF(LinuxWirelesstools_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Linux Wirelesstools (libIW)") - ENDIF(LinuxWirelesstools_FIND_REQUIRED) -ENDIF(IW_FOUND) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(IW "Could not find Linux Wirelesstools (libIW)" IW_INCLUDE_DIR IW_LIBRARIES ) + # show the IW_INCLUDE_DIR and IW_LIBRARIES variables only in the advanced view MARK_AS_ADVANCED(IW_INCLUDE_DIR IW_LIBRARIES ) diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index 6779cd04..ca7953df 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -23,22 +23,14 @@ find_library(PLASMA_LIBS NAMES plasma PATHS ${LIB_INSTALL_DIR} ) -if (PLASMA_LIBS AND PLASMA_INCLUDE_DIR) - set(PLASMA_FOUND TRUE) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Plasma DEFAULT_MSG PLASMA_LIBS PLASMA_INCLUDE_DIR ) + +if (PLASMA_FOUND) find_file(PLASMA_OPENGL_FOUND glapplet.h PATHS ${PLASMA_INCLUDE_DIR} NO_DEFAULT_PATH) -endif (PLASMA_LIBS AND PLASMA_INCLUDE_DIR) - -if (PLASMA_FOUND) - if (NOT Plasma_FIND_QUIETLY) - message(STATUS "Found Plasma: ${PLASMA_LIBS}") - endif (NOT Plasma_FIND_QUIETLY) -else (PLASMA_FOUND) - if (Plasma_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Plasma") - endif (Plasma_FIND_REQUIRED) endif (PLASMA_FOUND) mark_as_advanced(PLASMA_INCLUDE_DIR PLASMA_LIBS) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index d9668ac6..6bdd53d6 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -10,10 +10,10 @@ # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. -if (TIFF_INCLUDE_DIR) +if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) # Already in cache, be silent set(TIFF_FIND_QUIETLY TRUE) -endif (TIFF_INCLUDE_DIR) +endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) find_path(TIFF_INCLUDE_DIR NAMES tiff.h ) diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 91263fd5..6909b05a 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -32,19 +32,8 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) set( LIBUSB_LIBRARIES ${LIBUSB_LIBRARY} CACHE INTERNAL "The libraries for libusb" ) - if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) - set( LIBUSB_FOUND TRUE) - endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) - - if (LIBUSB_FOUND) - if (NOT USB_FIND_QUIETLY) - message(STATUS "Found LIBUSB: ${LIBUSB_LIBRARIES}") - endif (NOT USB_FIND_QUIETLY) - else (LIBUSB_FOUND) - if (USB_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find LIBUSB") - endif (USB_FIND_REQUIRED) - endif (LIBUSB_FOUND) + include(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(USB DEFAULT_MSG LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) MARK_AS_ADVANCED( LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES -- cgit v1.2.1 From 483afe0580252378d2260cdff67b42055dda3471 Mon Sep 17 00:00:00 2001 From: "Daniel M. Duley" Date: Mon, 27 Aug 2007 07:32:48 +0000 Subject: Use new name, svn path=/trunk/KDE/kdelibs/; revision=705108 --- modules/FindBlitz.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 4d88fb92..9bffab7f 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -16,7 +16,7 @@ endif (BLITZ_INCLUDES AND BLITZ_LIBRARIES) find_path(BLITZ_INCLUDES NAMES - blitz.h + qimageblitz.h PATH_SUFFIXES blitz PATHS ${KDE4_INCLUDE_DIR} @@ -25,7 +25,7 @@ find_path(BLITZ_INCLUDES FIND_LIBRARY(BLITZ_LIBRARIES NAMES - blitz + qimageblitz PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} -- cgit v1.2.1 From 61026da4fe5527de4ea380293d1d4fb987d2c4db Mon Sep 17 00:00:00 2001 From: "Daniel M. Duley" Date: Mon, 27 Aug 2007 11:01:28 +0000 Subject: Another fix for Dirk's change... svn path=/trunk/KDE/kdelibs/; revision=705167 --- modules/FindBlitz.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 9bffab7f..9a348805 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -17,7 +17,7 @@ endif (BLITZ_INCLUDES AND BLITZ_LIBRARIES) find_path(BLITZ_INCLUDES NAMES qimageblitz.h - PATH_SUFFIXES blitz + PATH_SUFFIXES qimageblitz PATHS ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} -- cgit v1.2.1 From f87d0f4ea71c055601957db2a41195476405f224 Mon Sep 17 00:00:00 2001 From: Brad Hards Date: Mon, 27 Aug 2007 15:18:10 +0000 Subject: Add fallback search for EXR libraries, so we can work on platforms where there is no pkg-config support. Thanks to Alex for pointing out the problem and helping with the solution. CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=705247 --- modules/FindOpenEXR.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index bfdb471d..f7f78bf9 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -33,6 +33,7 @@ ENDIF (NOT WIN32) ${_OpenEXRLinkDir} NO_DEFAULT_PATH ) + FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half ) FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex @@ -40,19 +41,21 @@ ENDIF (NOT WIN32) ${_OpenEXRLinkDir} NO_DEFAULT_PATH ) + FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex ) FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath PATHS ${_OpenEXRLinkDir} NO_DEFAULT_PATH ) - + FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath ) FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf PATHS ${_OpenEXRLinkDir} NO_DEFAULT_PATH ) + FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf ) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) set(OPENEXR_FOUND TRUE) -- cgit v1.2.1 From bfbb19c3e5b5a621e953abaf28aa554f1ca7f019 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 28 Aug 2007 07:13:47 +0000 Subject: Define to 1 svn path=/trunk/KDE/kdelibs/; revision=705589 --- modules/config-alsa.h.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/config-alsa.h.cmake b/modules/config-alsa.h.cmake index 44374cfa..fb9cb8ca 100644 --- a/modules/config-alsa.h.cmake +++ b/modules/config-alsa.h.cmake @@ -6,11 +6,11 @@ /* Define to 1 if you have the header file. */ -#cmakedefine HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H +#cmakedefine HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H 1 /* Define to 1 if you have the header file. */ -#cmakedefine HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H +#cmakedefine HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H 1 /* Define to 1 if you have the header file. */ #cmakedefine HAVE_AWE_VOICE_H 1 -- cgit v1.2.1 From de28279ebeb82d922f75294df81c211972936287 Mon Sep 17 00:00:00 2001 From: Volker Krause Date: Tue, 28 Aug 2007 15:10:15 +0000 Subject: these files have been renamed svn path=/trunk/KDE/kdelibs/; revision=705782 --- modules/FindKexiv2.cmake | 2 +- modules/FindKipi.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index 3365d7e1..a94658ea 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -20,7 +20,7 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) # Check if library is not in local sub-folder - FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h ${CMAKE_SOURCE_DIR}/libkexiv2 NO_DEFAULT_PATH) + FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 NO_DEFAULT_PATH) if (KEXIV2_LOCAL_FOUND) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index bde22e50..4cc48159 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -20,7 +20,7 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) # Check if library is not in local sub-folder - FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h ${CMAKE_SOURCE_DIR}/libkipi NO_DEFAULT_PATH) + FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi NO_DEFAULT_PATH) if (KIPI_LOCAL_FOUND) -- cgit v1.2.1 From b36c90bd51bcd7d23a8bba16ae01def70e5314c6 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 31 Aug 2007 14:47:42 +0000 Subject: Add xml output to QTest unit tests, in order to produce a more readable report. By Thibault. CCMAIL: thibault.normand@gmail.com svn path=/trunk/KDE/kdelibs/; revision=706909 --- modules/KDE4Macros.cmake | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d1383e70..f0347422 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -695,7 +695,22 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) list(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) kde4_add_test_executable( ${_test_NAME} ${_srcList} ) - add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) + + SET(using_qtest "") + FOREACH(_filename ${_srcList}) + IF(NOT using_qtest) + FILE(READ ${_filename} file_CONTENT) + STRING(REGEX MATCH "QTEST_(KDE)?MAIN" using_qtest "${file_CONTENT}") + ENDIF(NOT using_qtest) + ENDFOREACH(_filename) + + if (using_qtest) + #MESSAGE(STATUS "${_targetName} : Using QTestLib, can produce XML report.") + add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_targetName}.tml) + else (using_qtest) + #MESSAGE(STATUS "${_targetName} : NOT using QTestLib, can't produce XML report, please use QTestLib to write your unit tests.") + add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) + endif (using_qtest) if (NOT MSVC_IDE) #not needed for the ide # if the tests are EXCLUDE_FROM_ALL, add a target "buildtests" to build all tests -- cgit v1.2.1 From 613cfdee27116a334979f8939fb7adbebf2093e6 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 31 Aug 2007 17:05:17 +0000 Subject: revert XML formatted logfile changes. svn path=/trunk/KDE/kdelibs/; revision=706969 --- modules/KDE4Macros.cmake | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f0347422..b4604d93 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -695,22 +695,7 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) list(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) kde4_add_test_executable( ${_test_NAME} ${_srcList} ) - - SET(using_qtest "") - FOREACH(_filename ${_srcList}) - IF(NOT using_qtest) - FILE(READ ${_filename} file_CONTENT) - STRING(REGEX MATCH "QTEST_(KDE)?MAIN" using_qtest "${file_CONTENT}") - ENDIF(NOT using_qtest) - ENDFOREACH(_filename) - - if (using_qtest) - #MESSAGE(STATUS "${_targetName} : Using QTestLib, can produce XML report.") - add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_targetName}.tml) - else (using_qtest) - #MESSAGE(STATUS "${_targetName} : NOT using QTestLib, can't produce XML report, please use QTestLib to write your unit tests.") - add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) - endif (using_qtest) + add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) if (NOT MSVC_IDE) #not needed for the ide # if the tests are EXCLUDE_FROM_ALL, add a target "buildtests" to build all tests -- cgit v1.2.1 From 44aff7160b5dce390bef2795849a0bcf7fc91ed6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 31 Aug 2007 22:58:20 +0000 Subject: also search glibconfig.h Alex svn path=/trunk/KDE/kdelibs/; revision=707068 --- modules/FindGLIB2.cmake | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index bb4dc72f..c5bb604d 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -15,15 +15,30 @@ if (NOT WIN32) pkgconfig(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) endif(NOT WIN32) -find_path(GLIB2_INCLUDE_DIR glib.h +find_path(GLIB2_MAIN_INCLUDE_DIR glib.h PATH_SUFFIXES glib-2.0 PATHS ${_LibGLIB2IncDir} ) +# search the glibconfig.h include dir under the same root where the library is found find_library(GLIB2_LIBRARIES NAMES glib-2.0 PATHS ${_LibGLIB2LinkDir} ) +get_filename_component(glib2LibDir "${GLIB2_LIBRARIES}" PATH) + +find_path(GLIB2_INTERNAL_INCLUDE_DIR glibconfig.h + PATH_SUFFIXES glib-2.0/include + PATHS ${_LibGLIB2IncDir} "${glib2LibDir}" ) + +set(GLIB2_INCLUDE_DIR "${GLIB2_MAIN_INCLUDE_DIR}") + +# not sure if this include dir is optional or required +# for now it is optional +if(GLIB2_INTERNAL_INCLUDE_DIR) + set(GLIB2_INCLUDE_DIR ${GLIB2_INCLUDE_DIR} "${GLIB2_INTERNAL_INCLUDE_DIR}") +endif(GLIB2_INTERNAL_INCLUDE_DIR) + include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(GLIB2 DEFAULT_MSG GLIB2_LIBRARIES GLIB2_INCLUDE_DIR) +find_package_handle_standard_args(GLIB2 DEFAULT_MSG GLIB2_LIBRARIES GLIB2_MAIN_INCLUDE_DIR) mark_as_advanced(GLIB2_INCLUDE_DIR GLIB2_LIBRARIES) -- cgit v1.2.1 From e680617f2eb9de7188f1f219204f208377e300a5 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 1 Sep 2007 15:30:15 +0000 Subject: also search /usr/lib and /usr/local/lib for glibconfig.h svn path=/trunk/KDE/kdelibs/; revision=707341 --- modules/FindGLIB2.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index c5bb604d..1f95b3a0 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -28,7 +28,7 @@ get_filename_component(glib2LibDir "${GLIB2_LIBRARIES}" PATH) find_path(GLIB2_INTERNAL_INCLUDE_DIR glibconfig.h PATH_SUFFIXES glib-2.0/include - PATHS ${_LibGLIB2IncDir} "${glib2LibDir}" ) + PATHS ${_LibGLIB2IncDir} "${glib2LibDir}" /usr/lib /usr/local/lib) set(GLIB2_INCLUDE_DIR "${GLIB2_MAIN_INCLUDE_DIR}") -- cgit v1.2.1 From bf3c9f9a492d63d82368fc46fbc11bb0f3a3eb93 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 2 Sep 2007 16:43:55 +0000 Subject: additional library name libpng12 svn path=/trunk/KDE/kdelibs/; revision=707676 --- modules/FindPNG.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake index 1648d82e..6939805b 100644 --- a/modules/FindPNG.cmake +++ b/modules/FindPNG.cmake @@ -24,7 +24,7 @@ IF(ZLIB_FOUND) /usr/local/include/libpng # OpenBSD ) - SET(PNG_NAMES ${PNG_NAMES} png libpng) + SET(PNG_NAMES ${PNG_NAMES} png libpng png12 libpng12) FIND_LIBRARY(PNG_LIBRARY NAMES ${PNG_NAMES} ) -- cgit v1.2.1 From a3d7b228cbd5a315dc7dc9f08e262fca196c2399 Mon Sep 17 00:00:00 2001 From: Harald Sitter Date: Mon, 3 Sep 2007 15:36:40 +0000 Subject: I tend to like stuff which is actually working -.- svn path=/trunk/KDE/kdelibs/; revision=708000 --- modules/FindPlasma.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index ca7953df..bafa6495 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -28,7 +28,7 @@ include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Plasma DEFAULT_MSG PLASMA_LIBS PLASMA_INCLUDE_DIR ) if (PLASMA_FOUND) - find_file(PLASMA_OPENGL_FOUND glapplet.h + find_file(PLASMA_OPENGL_FOUND plasma/glapplet.h PATHS ${PLASMA_INCLUDE_DIR} NO_DEFAULT_PATH) endif (PLASMA_FOUND) -- cgit v1.2.1 From 1af88ae08df736f6c9866b4b2e85102603ad30dd Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Tue, 4 Sep 2007 18:50:22 +0000 Subject: Also search for the debug version of qimageblitz svn path=/trunk/KDE/kdelibs/; revision=708391 --- modules/FindBlitz.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 9a348805..e18558db 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -26,6 +26,7 @@ find_path(BLITZ_INCLUDES FIND_LIBRARY(BLITZ_LIBRARIES NAMES qimageblitz + qimageblitzd PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} -- cgit v1.2.1 From a5be30967ab67b8cea69e6e3d1693616f0aa33a0 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 8 Sep 2007 00:32:51 +0000 Subject: remove not necessary path svn path=/trunk/KDE/kdelibs/; revision=709638 --- modules/FindGphoto2.cmake | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindGphoto2.cmake b/modules/FindGphoto2.cmake index 6f966c02..b1bd6270 100644 --- a/modules/FindGphoto2.cmake +++ b/modules/FindGphoto2.cmake @@ -3,7 +3,7 @@ # GPHOTO2_INCLUDE_DIR - the GPHOTO2 include directory # GPHOTO2_LIBRARIES - The libraries needed to use GPHOTO2 -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006, 2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -16,14 +16,10 @@ if (KDE4_GPHOTO2 ) SET(GPHOTO2_FOUND TRUE) ELSE (GPHOTO2_LIBRARIES AND GPHOTO2_INCLUDE_DIR) - FIND_PROGRAM(GHOTO2CONFIG_EXECUTABLE NAMES gphoto2-config PATHS - /usr/bin - /usr/local/bin + FIND_PROGRAM(GHOTO2CONFIG_EXECUTABLE NAMES gphoto2-config ) - FIND_PROGRAM(GHOTO2PORTCONFIG_EXECUTABLE NAMES gphoto2-port-config PATHS - /usr/bin - /usr/local/bin + FIND_PROGRAM(GHOTO2PORTCONFIG_EXECUTABLE NAMES gphoto2-port-config ) set(GPHOTO2_LIBRARIES) set(GPHOTO2_INCLUDE_DIRS) -- cgit v1.2.1 From 6be6e9eb878160f723ccdbf57897eb42ddcc660a Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 10 Sep 2007 20:12:24 +0000 Subject: Make it possible to find blitz in $QIMAGEBLITZDIR; this is useful when installing kdesupport into its own prefix. No idea where to document this though... svn path=/trunk/KDE/kdelibs/; revision=710752 --- modules/FindBlitz.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index e18558db..10b97f86 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -19,6 +19,7 @@ find_path(BLITZ_INCLUDES qimageblitz.h PATH_SUFFIXES qimageblitz PATHS + $ENV{QIMAGEBLITZDIR}/include ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -28,6 +29,7 @@ FIND_LIBRARY(BLITZ_LIBRARIES qimageblitz qimageblitzd PATHS + $ENV{QIMAGEBLITZDIR}/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From f488ef88726de28d2596c2bed13b470e601c9908 Mon Sep 17 00:00:00 2001 From: Adrian Page Date: Mon, 10 Sep 2007 20:27:04 +0000 Subject: - Look for OpenEXR headers in the standard sub-directory of default paths too. - OPENEXR_DLL must be defined to use OpenEXR on windows. svn path=/trunk/KDE/kdelibs/; revision=710757 --- modules/FindOpenEXR.cmake | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index f7f78bf9..33560ff5 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -4,6 +4,7 @@ # OPENEXR_FOUND - system has OpenEXR # OPENEXR_INCLUDE_DIR - OpenEXR include directory # OPENEXR_LIBRARIES - Libraries needed to use OpenEXR +# OPENEXR_DEFINITIONS - definitions required to use OpenEXR # # Copyright (c) 2006, Alexander Neundorf, # @@ -25,7 +26,7 @@ IF (NOT WIN32) ENDIF (NOT WIN32) FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h ${_OpenEXRIncDir} - ${_OpenEXRIncDir}/OpenEXR/ + PATH_SUFFIXES /OpenEXR/ ) FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half @@ -60,6 +61,15 @@ ENDIF (NOT WIN32) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) set(OPENEXR_FOUND TRUE) set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + + if (WIN32) + set(_OPENEXR_DEFINITIONS -DOPENEXR_DLL) + else (WIN32) + set(_OPENEXR_DEFINITIONS) + endif (WIN32) + + set(OPENEXR_DEFINITIONS ${_OPENEXR_DEFINITIONS} CACHE STRING "Definitions needed to use OpenEXR") + endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) @@ -80,6 +90,7 @@ ENDIF (NOT WIN32) OPENEXR_ILMIMF_LIBRARY OPENEXR_IMATH_LIBRARY OPENEXR_IEX_LIBRARY - OPENEXR_HALF_LIBRARY ) + OPENEXR_HALF_LIBRARY + OPENEXR_DEFINITIONS ) endif (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) -- cgit v1.2.1 From eb5eb0fa13e74fbfe3c8e95e9b0fb9360d14a7c8 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 13:06:59 +0000 Subject: I believe outside kdelibs KDE4_DATA_INSTALL_DIR should be used instead of DATA_INSTALL_DIR svn path=/trunk/KDE/kdelibs/; revision=711107 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b4604d93..c4f30699 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -320,7 +320,7 @@ macro (KDE4_CREATE_MANPAGE _docbook) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/docbook/xsl/manpages/docbook.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") else (_kdeBootStrapping) - set(_ssheet ${DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl) + set(_ssheet ${KDE4_DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl) endif (_kdeBootStrapping) add_custom_command(OUTPUT ${_doc} -- cgit v1.2.1 From 0b2c28854a84b829db93d318759cfe315807c42b Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 13:22:30 +0000 Subject: win32 fix: KDE and QT install dir's are determined on runtime not install time, a patch fixing KDELibsDependencies.cmake will follow svn path=/trunk/KDE/kdelibs/; revision=711114 --- modules/FindKDE4Internal.cmake | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5ccdc881..dec3fd3e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -315,8 +315,18 @@ else (_kdeBootStrapping) message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") endif (KDEVERSION) - - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + if (WIN32) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + # on win32 the install dir is determined on runtime not install time + # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup + # kde install pathes and library dependencies + get_filename_component(_DIR ${KDE4_KDECONFIG_EXECUTABLE} PATH ) + get_filename_component(KDELIBS_INSTALL_DIR ${_DIR} PATH ) + get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) + get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) + else (WIN32) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + endif (WIN32) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) -- cgit v1.2.1 From bddc41623e84bf78e606097567657677424039a8 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 16:59:26 +0000 Subject: win32 requires a variable containing the qt install dir svn path=/trunk/KDE/kdelibs/; revision=711183 --- modules/FindQt4.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d493a4ee..31117da0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -291,6 +291,12 @@ ENDIF (QT_QMAKE_EXECUTABLE) IF (QT4_QMAKE_FOUND) + if (WIN32) + # get qt install dir + get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) + get_filename_component(QT4_INSTALL_DIR ${_DIR} PATH ) + endif (WIN32) + # ask qmake for the library dir # Set QT_LIBRARY_DIR IF (NOT QT_LIBRARY_DIR) -- cgit v1.2.1 From de2d94c74080a05dde9b741943d660066938f3a1 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 17:00:49 +0000 Subject: setup LIBEXSLT_LIBRARIES it is required by some packages svn path=/trunk/KDE/kdelibs/; revision=711184 --- modules/FindLibXslt.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index c605ce2a..2c7f2551 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -35,6 +35,11 @@ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt ${_LibXsltLinkDir} ) +FIND_LIBRARY(LIBEXSLT_LIBRARIES NAMES exslt libexslt + PATHS + ${_LibXsltLinkDir} + ) + IF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) SET(LIBXSLT_FOUND TRUE) ELSE (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) -- cgit v1.2.1 From c9d3b8bd84f2d0f71a0117326393dc7e865ad62b Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 17:01:25 +0000 Subject: fixed spelling error svn path=/trunk/KDE/kdelibs/; revision=711185 --- modules/Win32Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/Win32Macros.cmake b/modules/Win32Macros.cmake index 4385cc97..3b2df54b 100644 --- a/modules/Win32Macros.cmake +++ b/modules/Win32Macros.cmake @@ -11,7 +11,7 @@ if (WIN32) # addExplorerWrapper creates batch files for fast access # to the build environment from the win32 explorer. # - # For mingw and nmake projects it's opens a command shell, + # For mingw and nmake projects it opens a command shell, # for Visual Studio IDE's (at least tested with VS 8 2005) it # opens the related .sln file with paths setting specified at # configure time. -- cgit v1.2.1 From 7aa8d70c5c2f6e1a718d0029379764ee35990a5c Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 17:26:13 +0000 Subject: some minor win32 fix svn path=/trunk/KDE/kdelibs/; revision=711192 --- modules/FindKDE4Internal.cmake | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dec3fd3e..c34a8190 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -316,18 +316,22 @@ else (_kdeBootStrapping) endif (KDEVERSION) if (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + # we don't want to be forced to set two pathes into the build tree + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + else (WIN32) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + endif (WIN32) + + if (WIN32) # on win32 the install dir is determined on runtime not install time # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup - # kde install pathes and library dependencies + # kde install pathes and library dependencies get_filename_component(_DIR ${KDE4_KDECONFIG_EXECUTABLE} PATH ) - get_filename_component(KDELIBS_INSTALL_DIR ${_DIR} PATH ) + get_filename_component(KDE4_INSTALL_DIR ${_DIR} PATH ) get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) - else (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) endif (WIN32) - + # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) -- cgit v1.2.1 From c36ab0c82a6e94f127d3654526946645638cd1aa Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 17:28:45 +0000 Subject: all variables starts with QT_, we should too svn path=/trunk/KDE/kdelibs/; revision=711193 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 31117da0..be5025c0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -294,8 +294,8 @@ IF (QT4_QMAKE_FOUND) if (WIN32) # get qt install dir get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) - get_filename_component(QT4_INSTALL_DIR ${_DIR} PATH ) - endif (WIN32) + get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) + endif (WIN32 # ask qmake for the library dir # Set QT_LIBRARY_DIR -- cgit v1.2.1 From 8ae35f3ff5fd6c65cda52a1ae7fece79ff41eb13 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 17:29:40 +0000 Subject: compile fix svn path=/trunk/KDE/kdelibs/; revision=711194 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index be5025c0..5314b99a 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -295,7 +295,7 @@ IF (QT4_QMAKE_FOUND) # get qt install dir get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) - endif (WIN32 + endif (WIN32) # ask qmake for the library dir # Set QT_LIBRARY_DIR -- cgit v1.2.1 From 1e04907bba497d5d24d50d0320631ed7d13e4318 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 11 Sep 2007 17:32:06 +0000 Subject: added macro for win32 application icon named KDE4_ADD_APP_ICON svn path=/trunk/KDE/kdelibs/; revision=711195 --- modules/KDE4Macros.cmake | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c4f30699..0be16ff1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -894,3 +894,31 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) endmacro (KDE4_CREATE_HTML_HANDBOOK) +# +# add application icon to a set of source files +# +macro (KDE4_ADD_APP_ICON outfiles) + if (WIN32) + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(_name ${it} NAME_WE) + set (_icons ${_icons} ${it}) + ENDFOREACH (it) + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name}) + add_custom_command(OUTPUT ${_outfilename}.ico + COMMAND png2ico + ARGS ${_outfilename}.ico ${_icons} + DEPENDS ${_icons} + ) + file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n") + if (MINGW) + add_custom_command(OUTPUT ${_outfilename}_res.o + COMMAND windres + ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${_outfilename}.ico ${_outfilename}.rc + ) + list(APPEND ${outfiles} ${_outfilename}_res.o) + else(MINGW) + list(APPEND ${outfiles} ${_outfilename}.rc) + endif(MINGW) + endif(WIN32) +endmacro (KDE4_ADD_APP_ICON) -- cgit v1.2.1 From 33a5cc9e620d667543453dc455b1004b94fff702 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 12 Sep 2007 13:31:21 +0000 Subject: Commit Thibault's and Andreas' patch that allows XML output for QTestLib unit tests. To use, one must run cmake with the -DKDE4_TEST_OUTPUT=xml option. Else, the output format is typical plain text. CCMAIL: thibault.normand@gmail.com,apaku@gmx.de,ervin@kde.org svn path=/trunk/KDE/kdelibs/; revision=711631 --- modules/KDE4Macros.cmake | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0be16ff1..c8260f85 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -695,7 +695,31 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) list(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) kde4_add_test_executable( ${_test_NAME} ${_srcList} ) - add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) + + if(NOT KDE4_TEST_OUTPUT) + set(KDE4_TEST_OUTPUT plaintext) + endif(NOT KDE4_TEST_OUTPUT) + set(KDE4_TEST_OUTPUT ${KDE4_TEST_OUTPUT} CACHE STRING "The output to generate when running the QTest unit tests") + + set(using_qtest "") + foreach(_filename ${_srcList}) + if(NOT using_qtest) + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${_filename}") + file(READ ${_filename} file_CONTENT) + string(REGEX MATCH "QTEST_(KDE)?MAIN" using_qtest "${file_CONTENT}") + endif(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${_filename}") + endif(NOT using_qtest) + endforeach(_filename) + + if (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") + #MESSAGE(STATUS "${_targetName} : Using QTestLib, can produce XML report.") + add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_targetName}.tml) + else (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") + #MESSAGE(STATUS "${_targetName} : NOT using QTestLib, can't produce XML report, please use QTestLib to write your unit tests.") + add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) + endif (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") + +# add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_test_NAME}.tml ) if (NOT MSVC_IDE) #not needed for the ide # if the tests are EXCLUDE_FROM_ALL, add a target "buildtests" to build all tests -- cgit v1.2.1 From 427fd815fa9f4723f4684dca7b64a2051bdbf533 Mon Sep 17 00:00:00 2001 From: Frank Osterfeld Date: Fri, 14 Sep 2007 09:19:13 +0000 Subject: fix confusing typo, it's kconfig_compiler svn path=/trunk/KDE/kdelibs/; revision=712346 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c34a8190..b747e258 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -943,7 +943,7 @@ if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) endif (NOT KDE4_INSTALLED_VERSION_OK) if (NOT KDE4_KCFGC_EXECUTABLE) - message(FATAL_ERROR "ERROR: could not detect a usable kconfig-compiler") + message(FATAL_ERROR "ERROR: could not detect a usable kconfig_compiler") endif (NOT KDE4_KCFGC_EXECUTABLE) message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") -- cgit v1.2.1 From d43f2320c869aa51acd556209cad5fd9a9e5c619 Mon Sep 17 00:00:00 2001 From: Charles Connell Date: Fri, 14 Sep 2007 19:40:11 +0000 Subject: Find Kopete First use is in extragear/kopete-plugins svn path=/trunk/KDE/kdelibs/; revision=712561 --- modules/FindKopete.cmake | 87 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 modules/FindKopete.cmake (limited to 'modules') diff --git a/modules/FindKopete.cmake b/modules/FindKopete.cmake new file mode 100644 index 00000000..cf65b5a1 --- /dev/null +++ b/modules/FindKopete.cmake @@ -0,0 +1,87 @@ +# - Try to find the Kopete library +# Once done this will define +# +# Kopete_FOUND - system has kopete +# KOPETE_INCLUDE_DIR - the kopete include directory +# KOPETE_LIBRARIES - Link these to use kopete + +# Copyright (c) 2007 Charles Connell +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(KOPETE_INCLUDE_DIR AND KOPETE_LIBRARIES) + + # read from cache + set(Kopete_FOUND TRUE) + +else(KOPETE_INCLUDE_DIR AND KOPETE_LIBRARIES) + + FIND_PATH(KOPETE_INCLUDE_DIR + NAMES + kopete/kopete_export.h + PATHS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + + FIND_LIBRARY(KOPETE_LIBRARIES + NAMES + kopete + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + if(KOPETE_INCLUDE_DIR AND KOPETE_LIBRARIES) + set(Kopete_FOUND TRUE) + endif(KOPETE_INCLUDE_DIR AND KOPETE_LIBRARIES) + + if(MSVC) + FIND_LIBRARY(KOPETE_LIBRARIES_DEBUG + NAMES + kopeted + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + if(NOT KOPETE_LIBRARIES_DEBUG) + set(Kopete_FOUND FALSE) + endif(NOT KOPETE_LIBRARIES_DEBUG) + + if(MSVC_IDE) + if( NOT KOPETE_LIBRARIES_DEBUG OR NOT KOPETE_LIBRARIES) + message(FATAL_ERROR "\nCould NOT find the debug AND release version of the Kopete library.\nYou need to have both to use MSVC projects.\nPlease build and install both kopete libraries first.\n") + endif( NOT KOPETE_LIBRARIES_DEBUG OR NOT KOPETE_LIBRARIES) + else(MSVC_IDE) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KOPETE_LIBRARIES ${KOPETE_LIBRARIES_DEBUG}) + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(KOPETE_LIBRARIES ${KOPETE_LIBRARIES}) + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + endif(MSVC_IDE) + endif(MSVC) + + if(Kopete_FOUND) + if(NOT Kopete_FIND_QUIETLY) + message(STATUS "Found Kopete: ${KOPETE_LIBRARIES}") + endif(NOT Kopete_FIND_QUIETLY) + else(Kopete_FOUND) + if(Kopete_FIND_REQUIRED) + if(NOT KOPETE_INCLUDE_DIR) + message(FATAL_ERROR "Could not find Kopete includes.") + endif(NOT KOPETE_INCLUDE_DIR) + if(NOT KOPETE_LIBRARIES) + message(FATAL_ERROR "Could not find Kopete library.") + endif(NOT KOPETE_LIBRARIES) + else(Kopete_FIND_REQUIRED) + if(NOT KOPETE_INCLUDE_DIR) + message(STATUS "Could not find Kopete includes.") + endif(NOT KOPETE_INCLUDE_DIR) + if(NOT KOPETE_LIBRARIES) + message(STATUS "Could not find Kopete library.") + endif(NOT KOPETE_LIBRARIES) + endif(Kopete_FIND_REQUIRED) + endif(Kopete_FOUND) + +endif(KOPETE_INCLUDE_DIR AND KOPETE_LIBRARIES) -- cgit v1.2.1 From f6033e468574a60eeeea2658872e8d906be85aa5 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 15 Sep 2007 17:28:12 +0000 Subject: adopt them to the new win32 library names svn path=/trunk/KDE/kdelibs/; revision=712919 --- modules/FindBlitz.cmake | 34 +++++++++++++++++++------- modules/FindQCA2.cmake | 17 ++++++++++++- modules/FindSoprano.cmake | 61 +++++++++++++++++++++++++---------------------- modules/FindStrigi.cmake | 59 +++++++++++++++++++++++++++++++++++---------- 4 files changed, 121 insertions(+), 50 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 10b97f86..ae337d95 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -23,16 +23,32 @@ find_path(BLITZ_INCLUDES ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) +if(MSVC) + FIND_LIBRARY(BLITZ_LIBRARIES_DEBUG NAMES qimageblitzd) + FIND_LIBRARY(BLITZ_LIBRARIES_RELEASE NAMES qimageblitz) -FIND_LIBRARY(BLITZ_LIBRARIES - NAMES - qimageblitz - qimageblitzd - PATHS - $ENV{QIMAGEBLITZDIR}/lib - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} -) + if(BLITZ_LIBRARIES_DEBUG AND BLITZ_LIBRARIES_RELEASE) + set(BLITZ_LIBRARIES optimized ${BLITZ_LIBRARIES_RELEASE} + debug ${BLITZ_LIBRARIES_DEBUG}) + else(BLITZ_LIBRARIES_DEBUG AND BLITZ_LIBRARIES_RELEASE) + if(BLITZ_LIBRARIES_DEBUG) + set(BLITZ_LIBRARIES ${BLITZ_LIBRARIES_DEBUG}) + else(BLITZ_LIBRARIES_DEBUG) + if(BLITZ_LIBRARIES_RELEASE) + set(BLITZ_LIBRARIES ${BLITZ_LIBRARIES_RELEASE}) + endif(BLITZ_LIBRARIES_RELEASE) + endif(BLITZ_LIBRARIES_DEBUG) + endif(BLITZ_LIBRARIES_DEBUG AND BLITZ_LIBRARIES_RELEASE) +else(MSVC) + FIND_LIBRARY(BLITZ_LIBRARIES + NAMES + qimageblitz + PATHS + $ENV{QIMAGEBLITZDIR}/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) +endif(MSVC) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Blitz DEFAULT_MSG diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 87c93b96..d8b74733 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -34,8 +34,23 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) NO_DEFAULT_PATH ) ELSE (NOT WIN32) + FIND_LIBRARY(QCA2_LIBRARIES_DEBUG NAMES qcad) + FIND_LIBRARY(QCA2_LIBRARIES_RELEASE NAMES qca) + + if(QCA2_LIBRARIES_DEBUG AND QCA2_LIBRARIES_RELEASE) + set(QCA2_LIBRARIES optimized ${QCA2_LIBRARIES_RELEASE} + debug ${QCA2_LIBRARIES_DEBUG}) + else(QCA2_LIBRARIES_DEBUG AND QCA2_LIBRARIES_RELEASE) + if(QCA2_LIBRARIES_DEBUG) + set(QCA2_LIBRARIES ${QCA2_LIBRARIES_DEBUG}) + else(QCA2_LIBRARIES_DEBUG) + if(QCA2_LIBRARIES_RELEASE) + set(QCA2_LIBRARIES ${QCA2_LIBRARIES_RELEASE}) + endif(QCA2_LIBRARIES_RELEASE) + endif(QCA2_LIBRARIES_DEBUG) + endif(QCA2_LIBRARIES_DEBUG AND QCA2_LIBRARIES_RELEASE) + FIND_PATH(QCA2_INCLUDE_DIR QtCrypto/qca.h) - FIND_LIBRARY(QCA2_LIBRARIES NAMES qca) IF(QCA2_INCLUDE_DIR) SET(QCA2_INCLUDE_DIR ${QCA2_INCLUDE_DIR}/QtCrypto CACHE TYPE PATH FORCE) ENDIF(QCA2_INCLUDE_DIR) diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 096d9b3f..c2b4774c 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -14,42 +14,47 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) - - FIND_LIBRARY(SOPRANO_LIBRARIES - NAMES - soprano - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) - set(Soprano_FOUND TRUE) - endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) if(MSVC) - FIND_LIBRARY(SOPRANO_LIBRARIES_DEBUG + FIND_LIBRARY(SOPRANO_LIBRARIES_DEBUG NAMES sopranod PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} - ) - if(NOT SOPRANO_LIBRARIES_DEBUG) - set(Soprano_FOUND FALSE) - endif(NOT SOPRANO_LIBRARIES_DEBUG) - - if(MSVC_IDE) - if( NOT SOPRANO_LIBRARIES_DEBUG OR NOT SOPRANO_LIBRARIES) - message(FATAL_ERROR "\nCould NOT find the debug AND release version of the Soprano library.\nYou need to have both to use MSVC projects.\nPlease build and install both soprano libraries first.\n") - endif( NOT SOPRANO_LIBRARIES_DEBUG OR NOT SOPRANO_LIBRARIES) - else(MSVC_IDE) - string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + ) + FIND_LIBRARY(SOPRANO_LIBRARIES_RELEASE + NAMES + soprano + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + if(SOPRANO_LIBRARIES_DEBUG AND SOPRANO_LIBRARIES_RELEASE) + set(SOPRANO_LIBRARIES optimized ${SOPRANO_LIBRARIES_RELEASE} + debug ${SOPRANO_LIBRARIES_DEBUG}) + else(SOPRANO_LIBRARIES_DEBUG AND SOPRANO_LIBRARIES_RELEASE) + if(SOPRANO_LIBRARIES_DEBUG) set(SOPRANO_LIBRARIES ${SOPRANO_LIBRARIES_DEBUG}) - else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(SOPRANO_LIBRARIES ${SOPRANO_LIBRARIES}) - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - endif(MSVC_IDE) + else(SOPRANO_LIBRARIES_DEBUG) + if(SOPRANO_LIBRARIES_RELEASE) + set(SOPRANO_LIBRARIES ${SOPRANO_LIBRARIES_RELEASE}) + endif(SOPRANO_LIBRARIES_RELEASE) + endif(SOPRANO_LIBRARIES_DEBUG) + endif(SOPRANO_LIBRARIES_DEBUG AND SOPRANO_LIBRARIES_RELEASE) + + else(MSVC) + FIND_LIBRARY(SOPRANO_LIBRARIES + NAMES + soprano + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + set(Soprano_FOUND TRUE) + endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) endif(MSVC) if(Soprano_FOUND) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 55fec492..1a323706 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -20,19 +20,54 @@ find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h ${_program_FILES_DIR}/strigi/include ) -find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer - PATHS - $ENV{STRIGI_HOME}/lib - ${CMAKE_INSTALL_PREFIX}/lib - ${_program_FILES_DIR}/strigi/lib -) +if(MSVC) + FIND_LIBRARY(STREAMANALYZER_LIBRARY_DEBUG NAMES streamanalyzerd) + FIND_LIBRARY(STREAMANALYZER_LIBRARY_RELEASE NAMES streamanalyzer) -find_library(STRIGI_STREAMS_LIBRARY NAMES streams - PATHS - $ENV{STRIGI_HOME}/lib - ${CMAKE_INSTALL_PREFIX}/lib - ${_program_FILES_DIR}/strigi/lib -) + if(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) + set(STREAMANALYZER_LIBRARY optimized ${STREAMANALYZER_LIBRARY_RELEASE} + debug ${STREAMANALYZER_LIBRARY_DEBUG}) + else(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) + if(STREAMANALYZER_LIBRARY_DEBUG) + set(STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_DEBUG}) + else(STREAMANALYZER_LIBRARY_DEBUG) + if(STREAMANALYZER_LIBRARY_RELEASE) + set(STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_RELEASE}) + endif(STREAMANALYZER_LIBRARY_RELEASE) + endif(STREAMANALYZER_LIBRARY_DEBUG) + endif(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) + + FIND_LIBRARY(STREAMS_LIBRARY_DEBUG NAMES streamsd) + FIND_LIBRARY(STREAMS_LIBRARY_RELEASE NAMES streams) + + if(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) + set(STREAMS_LIBRARY optimized ${STREAMS_LIBRARY_RELEASE} + debug ${STREAMS_LIBRARY_DEBUG}) + else(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) + if(STREAMS_LIBRARY_DEBUG) + set(STREAMS_LIBRARY ${STREAMS_LIBRARY_DEBUG}) + else(STREAMS_LIBRARY_DEBUG) + if(STREAMS_LIBRARY_RELEASE) + set(STREAMS_LIBRARY ${STREAMS_LIBRARY_RELEASE}) + endif(STREAMS_LIBRARY_RELEASE) + endif(STREAMS_LIBRARY_DEBUG) + endif(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) + +else(MSVC) + find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer + PATHS + $ENV{STRIGI_HOME}/lib + ${CMAKE_INSTALL_PREFIX}/lib + ${_program_FILES_DIR}/strigi/lib + ) + + find_library(STRIGI_STREAMS_LIBRARY NAMES streams + PATHS + $ENV{STRIGI_HOME}/lib + ${CMAKE_INSTALL_PREFIX}/lib + ${_program_FILES_DIR}/strigi/lib + ) +endif(MSVC) if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(UsePkgConfig) -- cgit v1.2.1 From 3751c933b71201dd7de44141be3585254347154f Mon Sep 17 00:00:00 2001 From: Adrian Page Date: Sat, 15 Sep 2007 21:37:24 +0000 Subject: Fix find for msvc. svn path=/trunk/KDE/kdelibs/; revision=712967 --- modules/FindSoprano.cmake | 7 ++++--- modules/FindStrigi.cmake | 12 ++++++------ 2 files changed, 10 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index c2b4774c..30491fca 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -52,11 +52,12 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) - set(Soprano_FOUND TRUE) - endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) endif(MSVC) + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + set(Soprano_FOUND TRUE) + endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 1a323706..a9f854db 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -25,14 +25,14 @@ if(MSVC) FIND_LIBRARY(STREAMANALYZER_LIBRARY_RELEASE NAMES streamanalyzer) if(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) - set(STREAMANALYZER_LIBRARY optimized ${STREAMANALYZER_LIBRARY_RELEASE} + set(STRIGI_STREAMANALYZER_LIBRARY optimized ${STREAMANALYZER_LIBRARY_RELEASE} debug ${STREAMANALYZER_LIBRARY_DEBUG}) else(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) if(STREAMANALYZER_LIBRARY_DEBUG) - set(STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_DEBUG}) + set(STRIGI_STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_DEBUG}) else(STREAMANALYZER_LIBRARY_DEBUG) if(STREAMANALYZER_LIBRARY_RELEASE) - set(STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_RELEASE}) + set(STRIGI_STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_RELEASE}) endif(STREAMANALYZER_LIBRARY_RELEASE) endif(STREAMANALYZER_LIBRARY_DEBUG) endif(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) @@ -41,14 +41,14 @@ if(MSVC) FIND_LIBRARY(STREAMS_LIBRARY_RELEASE NAMES streams) if(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) - set(STREAMS_LIBRARY optimized ${STREAMS_LIBRARY_RELEASE} + set(STRIGI_STREAMS_LIBRARY optimized ${STREAMS_LIBRARY_RELEASE} debug ${STREAMS_LIBRARY_DEBUG}) else(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) if(STREAMS_LIBRARY_DEBUG) - set(STREAMS_LIBRARY ${STREAMS_LIBRARY_DEBUG}) + set(STRIGI_STREAMS_LIBRARY ${STREAMS_LIBRARY_DEBUG}) else(STREAMS_LIBRARY_DEBUG) if(STREAMS_LIBRARY_RELEASE) - set(STREAMS_LIBRARY ${STREAMS_LIBRARY_RELEASE}) + set(STRIGI_STREAMS_LIBRARY ${STREAMS_LIBRARY_RELEASE}) endif(STREAMS_LIBRARY_RELEASE) endif(STREAMS_LIBRARY_DEBUG) endif(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) -- cgit v1.2.1 From f41ba94fab116a39bd997f143b94b98a44e6096b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 16 Sep 2007 12:11:47 +0000 Subject: Update svn path=/trunk/KDE/kdelibs/; revision=713109 --- modules/KDE4Macros.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c8260f85..08405b73 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -20,6 +20,8 @@ # KDE4_REMOVE_OBSOLETE_CMAKE_FILES # KDE4_NO_ENABLE_FINAL # KDE4_CREATE_HANDBOOK +# KDE4_ADD_APP_ICON (Use on Win32) +# KDE4_CREATE_MANPAGE # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, -- cgit v1.2.1 From 6b52e5f8926f8f0e6fa39360ecccf60241bb5c8f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 17 Sep 2007 06:16:43 +0000 Subject: Use by kdegraphics and extragear/libs/libksane svn path=/trunk/KDE/kdelibs/; revision=713339 --- modules/FindSane.cmake | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 modules/FindSane.cmake (limited to 'modules') diff --git a/modules/FindSane.cmake b/modules/FindSane.cmake new file mode 100644 index 00000000..897b2fb2 --- /dev/null +++ b/modules/FindSane.cmake @@ -0,0 +1,28 @@ +# cmake macro to test if we use sane +# +# SANE_FOUND - system has SANE libs +# SANE_INCLUDE_DIR - the SANE include directory +# SANE_LIBRARIES - The libraries needed to use SANE + +# Copyright (c) 2006, Marcus Hufgard 2006 +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (SANE_INCLUDE_DIR AND SANE_LIBRARY) + # Already in cache, be silent + set(Sane_FIND_QUIETLY TRUE) +endif (SANE_INCLUDE_DIR AND SANE_LIBRARY) + +FIND_PATH(SANE_INCLUDE_DIR sane/sane.h) + +FIND_LIBRARY(SANE_LIBRARY NAMES sane libsane + PATHS + /usr/lib/sane + /usr/local/lib/sane +) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sane DEFAULT_MSG SANE_INCLUDE_DIR SANE_LIBRARY ) + +MARK_AS_ADVANCED(SANE_INCLUDE_DIR SANE_LIBRARIES SANE_LIBRARY) -- cgit v1.2.1 From 7f7d3515acc8c800d9b197f521af94ee731cc01a Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 17 Sep 2007 18:35:46 +0000 Subject: fix for win32 svn path=/trunk/KDE/kdelibs/; revision=713533 --- modules/FindLCMS.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 835242f6..12b575c5 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -25,7 +25,7 @@ find_path(LCMS_INCLUDE_DIR lcms.h find_path(LCMS_INCLUDE_DIR lcms.h ) -find_library(LCMS_LIBRARIES NAMES lcms liblcms +find_library(LCMS_LIBRARIES NAMES lcms liblcms lcms-1 liblcms-1 PATHS ${_LcmsLinkDir} ${CMAKE_INSTALL_PREFIX}/lib @@ -33,7 +33,7 @@ find_library(LCMS_LIBRARIES NAMES lcms liblcms /usr/local/lib/lcms NO_DEFAULT_PATH ) -find_library(LCMS_LIBRARIES NAMES lcms liblcms +find_library(LCMS_LIBRARIES NAMES lcms liblcms lcms-1 liblcms-1 ) if(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) -- cgit v1.2.1 From 1eddbcbe310fbd69e387d79bf1faf2aef3626ef3 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Tue, 18 Sep 2007 13:30:39 +0000 Subject: don't require tablib-config on windows svn path=/trunk/KDE/kdelibs/; revision=713994 --- modules/FindTaglib.cmake | 39 ++++++++++++++++++++++++++++++--------- 1 file changed, 30 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index dea293cd..1602fe1d 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -10,13 +10,13 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS - /usr/bin - /usr/local/bin - ${BIN_INSTALL_DIR} -) - +IF(NOT WIN32) + FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS + /usr/bin + /usr/local/bin + ${BIN_INSTALL_DIR} + ) +ENDIF(NOT WIN32) #reset vars set(TAGLIB_LIBRARIES) set(TAGLIB_CFLAGS) @@ -34,13 +34,34 @@ IF(TAGLIBCONFIG_EXECUTABLE) ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) +ELSE(TAGLIBCONFIG_EXECUTABLE) + find_path(TAGLIB_INCLUDES + NAMES + tag.h + PATH_SUFFIXES taglib + PATHS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + FIND_LIBRARY(TAGLIB_LIBRARIES + NAMES + tag + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + INCLUDE(FindPackageHandleStandardArgs) + find_package_handle_standard_args(Taglib DEFAULT_MSG + TAGLIB_INCLUDES TAGLIB_LIBRARIES) ENDIF(TAGLIBCONFIG_EXECUTABLE) + if(TAGLIB_FOUND) - IF(NOT Taglib_FIND_QUIETLY) + IF(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) MESSAGE(STATUS "Taglib found: ${TAGLIB_LIBRARIES}") - ENDIF(NOT Taglib_FIND_QUIETLY) + ENDIF(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) ELSE(TAGLIB_FOUND) IF(Taglib_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find Taglib") -- cgit v1.2.1 From f5d237a37d9b3f9e5a60e862c1ad707ed85d0f9b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 19 Sep 2007 13:25:17 +0000 Subject: partly sync with cmake cvs: handle relative/absolute paths in Qt rc files better, handle qmake errors better Alex svn path=/trunk/KDE/kdelibs/; revision=714403 --- modules/FindQt4.cmake | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 5314b99a..36d63383 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -207,16 +207,25 @@ MACRO(QT_QUERY_QMAKE outvar invar) FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro "message(CMAKE_MESSAGE<$$${invar}>)") + # Invoke qmake with the tmp.pro program to get the desired + # information. Use the same variable for both stdout and stderr + # to make sure we get the output on all platforms. EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake OUTPUT_VARIABLE _qmake_query_output + RESULT_VARIABLE _qmake_result ERROR_VARIABLE _qmake_query_output ) - + FILE(REMOVE_RECURSE "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") - STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") + IF(_qmake_result) + MESSAGE(WARNING " querying qmake for ${invar}. qmake reported:\n${_qmake_query_output}") + ELSE(_qmake_result) + STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") + ENDIF(_qmake_result) + ENDMACRO(QT_QUERY_QMAKE) # check for qmake @@ -830,6 +839,7 @@ IF (QT4_QMAKE_FOUND) IF(WIN32) _QT4_ADJUST_LIB_VARS(QTMAIN) ENDIF(WIN32) + ####################################### # @@ -983,14 +993,18 @@ IF (QT4_QMAKE_FOUND) GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) GET_FILENAME_COMPONENT(rc_path ${infile} PATH) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) - # parse file for dependencies + # parse file for dependencies + # all files are absolute paths or relative to the location of the qrc file FILE(READ "${infile}" _RC_FILE_CONTENTS) STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") - SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") + STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}") + IF(NOT _ABS_PATH_INDICATOR) + SET(_RC_FILE "${rc_path}/${_RC_FILE}") + ENDIF(NOT _ABS_PATH_INDICATOR) + SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}") ENDFOREACH(_RC_FILE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_RCC_EXECUTABLE} @@ -1018,7 +1032,7 @@ IF (QT4_QMAKE_FOUND) ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} DEPENDS ${_infile}) - + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) QT4_GENERATE_MOC(${_header} ${_moc}) -- cgit v1.2.1 From c3533d11af49c55fff2212ced0bffe5e11583dfa Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 19 Sep 2007 14:20:12 +0000 Subject: -make QT4_ADD_DBUS_INTERFACES work not-by-accident and remove some unnecessary code Alex svn path=/trunk/KDE/kdelibs/; revision=714423 --- modules/FindQt4.cmake | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 36d63383..a9a19048 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1047,26 +1047,19 @@ IF (QT4_QMAKE_FOUND) QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) - # Internal (avoid to duplicate code between QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES - MACRO(_QT4_ADD_DBUS_INTERFACES _sources _filename) - GET_FILENAME_COMPONENT(_infile ${_filename} ABSOLUTE) + MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE) # get the part before the ".xml" suffix STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) STRING(TOLOWER ${_basename} _basename) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) - ENDMACRO(_QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_ADD_DBUS_INTERFACES _sources) - FOREACH (_current_FILE ${ARGN}) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES) + ENDMACRO(_QT4_ADD_DBUS_INTERFACES) MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) - FOREACH (_current_FILE ${ARGN}) - SET_SOURCE_FILES_PROPERTIES(${_current_FILE} PROPERTIES NO_NAMESPACE TRUE) - _QT4_ADD_DBUS_INTERFACES(${_sources} ${_current_FILE}) - ENDFOREACH (_current_FILE) + SET_SOURCE_FILES_PROPERTIES(${ARGN} PROPERTIES NO_NAMESPACE TRUE) + QT4_ADD_DBUS_INTERFACES(${_sources} ${ARGN}) ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) -- cgit v1.2.1 From 57aec8768312df2b624765d7f46a2553f8808a2c Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Wed, 19 Sep 2007 15:34:17 +0000 Subject: unbreak svn path=/trunk/KDE/kdelibs/; revision=714451 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a9a19048..fc58141c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1055,7 +1055,7 @@ IF (QT4_QMAKE_FOUND) STRING(TOLOWER ${_basename} _basename) QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) ENDFOREACH (_current_FILE) - ENDMACRO(_QT4_ADD_DBUS_INTERFACES) + ENDMACRO(QT4_ADD_DBUS_INTERFACES) MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) SET_SOURCE_FILES_PROPERTIES(${ARGN} PROPERTIES NO_NAMESPACE TRUE) -- cgit v1.2.1 From b1d65290828a4c66f93264378826e2a85f4f889e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 20 Sep 2007 22:49:19 +0000 Subject: fix html handbook creation ? Alex CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=714925 --- modules/KDE4Macros.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 08405b73..87479b8b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -267,11 +267,11 @@ macro (KDE4_CREATE_HANDBOOK _docbook) if(KDE4_ENABLE_HTMLHANDBOOK) set(_htmlDoc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) - add_custom_command(OUTPUT ${_doc} - COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} -o ${_doc} ${_input} + add_custom_command(OUTPUT ${_htmlDoc} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} -o ${_htmlDoc} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) - add_custom_target(htmlhandbook DEPENDS ${_doc}) + add_custom_target(htmlhandbook DEPENDS ${_htmlDoc}) endif(KDE4_ENABLE_HTMLHANDBOOK) # kde4_create_handbook( [INSTALL_DESTINATION ] [SUBDIR ] ) -- cgit v1.2.1 From fe55c51b9139309ce32ca18389c45279272a5d4a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 21 Sep 2007 13:44:04 +0000 Subject: SANE_LIBRARIES doesn't exist, find it when I debug it with blackie svn path=/trunk/KDE/kdelibs/; revision=715204 --- modules/FindSane.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSane.cmake b/modules/FindSane.cmake index 897b2fb2..6c60cf63 100644 --- a/modules/FindSane.cmake +++ b/modules/FindSane.cmake @@ -25,4 +25,4 @@ FIND_LIBRARY(SANE_LIBRARY NAMES sane libsane include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sane DEFAULT_MSG SANE_INCLUDE_DIR SANE_LIBRARY ) -MARK_AS_ADVANCED(SANE_INCLUDE_DIR SANE_LIBRARIES SANE_LIBRARY) +MARK_AS_ADVANCED(SANE_INCLUDE_DIR SANE_LIBRARY) -- cgit v1.2.1 From af86510dc0c1aabc1ab42ac98250812635e32323 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 24 Sep 2007 06:23:52 +0000 Subject: Adapt CMakeLists.txt as discussed with Alex. KDE4_ADD_TEST_EXECUTABLE is deprecated now use KDE4_ADD_EXECUTABLE( TEST ) instead QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE and QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE are deprecated too used SET_SOURCE_FILES_PROPERTIES( PROPERTIES NO_NAMESPACE TRUE) QT4_ADD_DBUS_INTERFACES( ) set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) is put in each CMakeLists.txt where KDE4_ADD_EXECUTABLE( TEST ) and KDE4_ADD_UNIT_TEST were used. svn path=/trunk/KDE/kdelibs/; revision=716146 --- modules/FindQt4.cmake | 32 +++++++++++-------------- modules/KDE4Macros.cmake | 62 +++++++++++++++++++----------------------------- 2 files changed, 39 insertions(+), 55 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index fc58141c..2a52a5f0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -37,22 +37,16 @@ # macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) # create a the interface header and implementation files with the # given basename from the given interface xml file and add it to -# the list of sources +# the list of sources. +# To disable generating a namespace header, set the source file property +# NO_NAMESPACE to TRUE on the interface file. # # macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) # create the interface header and implementation files # for all listed interface xml files # the name will be automatically determined from the name of the xml file -# -# macro QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE(outfiles interface basename) -# create a the interface without namespace header and implementation files with the -# given basename from the given interface xml file and add it to -# the list of sources -# -# macro QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(outfiles inputfile ... ) -# create the interface header without namespace and implementation files -# for all listed interface xml files -# the name will be automatically determined from the name of the xml file +# To disable generating namespace headers, set the source file property +# NO_NAMESPACE to TRUE for these inputfiles. # # macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname]) # create a dbus adaptor (header and implementation file) from the xml file @@ -1042,11 +1036,6 @@ IF (QT4_QMAKE_FOUND) ENDMACRO(QT4_ADD_DBUS_INTERFACE) - MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) - SET_SOURCE_FILES_PROPERTIES(${_interface} PROPERTIES NO_NAMESPACE TRUE) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_interface} ${_basename}) - ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) - MACRO(QT4_ADD_DBUS_INTERFACES _sources) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE) @@ -1057,9 +1046,16 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH (_current_FILE) ENDMACRO(QT4_ADD_DBUS_INTERFACES) + MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) + MESSAGE(SEND_ERROR "QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE() is deprecated. Use the following instead: +SET_SOURCE_FILES_PROPERTIES( PROPERTIES NO_NAMESPACE TRUE) +QT4_ADD_DBUS_INTERFACE( )\n") + ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) + MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) - SET_SOURCE_FILES_PROPERTIES(${ARGN} PROPERTIES NO_NAMESPACE TRUE) - QT4_ADD_DBUS_INTERFACES(${_sources} ${ARGN}) + MESSAGE(SEND_ERROR "QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE() is deprecated. Use the following instead: +SET_SOURCE_FILES_PROPERTIES( PROPERTIES NO_NAMESPACE TRUE) +QT4_ADD_DBUS_INTERFACES( )\n") ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 87479b8b..6e69fb33 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -12,7 +12,6 @@ # KDE4_ADD_PLUGIN # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_UNIT_TEST -# KDE4_ADD_TEST_EXECUTABLE # KDE4_ADD_EXECUTABLE # KDE4_ADD_WIDGET_FILES # KDE4_UPDATE_ICONCACHE @@ -607,9 +606,13 @@ endmacro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) # if "RUN_UNINSTALLED" is in the list of files, the _uninst argument is set to # "RUN_UNINSTALLED" (which evaluates to TRUE in cmake), otherwise it is set empty # (which evaluates to FALSE in cmake) -macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) +# if "TEST" is in the list of files, the _test argument is set to +# "TEST" (which evaluates to TRUE in cmake), otherwise it is set empty +# (which evaluates to FALSE in cmake) +macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst _test) set(${_nogui}) set(${_uninst}) + set(${_test}) set(${_output_LIST} ${ARGN}) list(LENGTH ${_output_LIST} count) @@ -642,6 +645,12 @@ macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst) set(remove 0;1) endif (${second_PARAM} STREQUAL "RUN_UNINSTALLED") + if (${first_PARAM} STREQUAL "TEST") + set(${_test} "TEST") + set(remove 0) + endif (${first_PARAM} STREQUAL "TEST") + + if (NOT "${remove}" STREQUAL "NOTFOUND") list(REMOVE_AT ${_output_LIST} ${remove}) endif (NOT "${remove}" STREQUAL "NOTFOUND") @@ -651,7 +660,7 @@ endmacro(KDE4_CHECK_EXECUTABLE_PARAMS) macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) - kde4_check_executable_params(_SRCS _nogui _uninst ${ARGN}) + kde4_check_executable_params(_SRCS _nogui _uninst _test ${ARGN}) # if (WIN32) # # under windows, just build a normal executable @@ -696,7 +705,7 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) set(_targetName ${ARGV2}) list(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) - kde4_add_test_executable( ${_test_NAME} ${_srcList} ) + kde4_add_executable( ${_test_NAME} TEST ${_srcList} ) if(NOT KDE4_TEST_OUTPUT) set(KDE4_TEST_OUTPUT plaintext) @@ -737,43 +746,14 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endmacro (KDE4_ADD_UNIT_TEST) -# add an test executable -# it will be built with RPATH pointing to the build dir -# The targets are always created, but only built for the "all" -# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target -# are created but not built by default. You can build them by manually building the target. -# KDESRCDIR is set to the source directory of the test, this can be used with -# KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ); to be able to use xmlgui -# and other things in the test, that normally require installation macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) - - set(_add_executable_param) - - if (NOT KDE4_BUILD_TESTS) - set(_add_executable_param EXCLUDE_FROM_ALL) - endif (NOT KDE4_BUILD_TESTS) - - set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) - - set(_SRCS ${ARGN}) - kde4_handle_automoc(${_target_NAME} _SRCS) - add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) - - set_target_properties(${_target_NAME} PROPERTIES - COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"" - SKIP_BUILD_RPATH FALSE - BUILD_WITH_INSTALL_RPATH FALSE) - - if (WIN32) - target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) - endif (WIN32) - + MESSAGE(SEND_ERROR "KDE4_ADD_TEST_EXECUTABLE is deprecated use KDE4_ADD_EXECUTABLE( TEST instead") endmacro (KDE4_ADD_TEST_EXECUTABLE) macro (KDE4_ADD_EXECUTABLE _target_NAME) - kde4_check_executable_params( _SRCS _nogui _uninst ${ARGN}) + kde4_check_executable_params( _SRCS _nogui _uninst _test ${ARGN}) set(_add_executable_param) set(_type "GUI") @@ -794,9 +774,13 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set(_add_executable_param) endif (_nogui) - if (_uninst) + if (_uninst OR _test) set(_type "RUN_UNINSTALLED") - endif (_uninst) + endif (_uninst OR _test) + + if (_test AND NOT KDE4_BUILD_TESTS) + set(_add_executable_param ${_add_executable_param} EXCLUDE_FROM_ALL) + endif (_test AND NOT KDE4_BUILD_TESTS) kde4_handle_automoc(${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) @@ -806,6 +790,10 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) + if (_test) + set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"") + endif (_test) + kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) if (WIN32) -- cgit v1.2.1 From 7b4afb2127ceda17d05653fcb89d58b1d5c591e0 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 24 Sep 2007 07:08:43 +0000 Subject: typo svn path=/trunk/KDE/kdelibs/; revision=716194 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6e69fb33..c4bc773f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -747,7 +747,7 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endmacro (KDE4_ADD_UNIT_TEST) macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) - MESSAGE(SEND_ERROR "KDE4_ADD_TEST_EXECUTABLE is deprecated use KDE4_ADD_EXECUTABLE( TEST instead") + MESSAGE(SEND_ERROR "KDE4_ADD_TEST_EXECUTABLE is deprecated use KDE4_ADD_EXECUTABLE( TEST ) instead") endmacro (KDE4_ADD_TEST_EXECUTABLE) -- cgit v1.2.1 From f835d46e735a731e38cfcfa39a91a97851123ad6 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 24 Sep 2007 10:52:04 +0000 Subject: new macro FIND_LIBRARY_EX() for win32 svn path=/trunk/KDE/kdelibs/; revision=716251 --- modules/FindLibraryEx.cmake | 111 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 modules/FindLibraryEx.cmake (limited to 'modules') diff --git a/modules/FindLibraryEx.cmake b/modules/FindLibraryEx.cmake new file mode 100644 index 00000000..30dc87b8 --- /dev/null +++ b/modules/FindLibraryEx.cmake @@ -0,0 +1,111 @@ +# +# FIND_LIBRARY_EX - enhanced FIND_LIBRARY to allow the search for an +# optional debug library with a WIN32_DEBUG_POSTFIX similar +# to CMAKE_DEBUG_POSTFIX when creating a shared lib +# it has to be the second and third argument +# +# Copyright (c) 2007, Christian Ehrlicher, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +MACRO(FIND_LIBRARY_EX var_name win32_dbg_postfix_name dgb_postfix libname) + + IF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + + # no WIN32_DEBUG_POSTFIX -> simply pass all arguments to FIND_LIBRARY + FIND_LIBRARY(${var_name} + ${win32_dbg_postfix_name} + ${dgb_postfix} + ${libname} + ${ARGN} + ) + + ELSE(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + + IF(NOT WIN32) + # on non-win32 we don't need to take care about WIN32_DEBUG_POSTFIX + + FIND_LIBRARY(var_name ${libname} ${ARGN}) + + ELSE(NOT WIN32) + + # 1. get all possible libnames + SET(args ${ARGN}) + SET(libnames_release "") + SET(libnames_debug "") + + LIST(LENGTH args listCount) + + IF("${libname}" STREQUAL "NAMES") + SET(append_rest 0) + LIST(APPEND args " ") + + FOREACH(i RANGE ${listCount}) + LIST(GET args ${i} val) + + IF(append_rest) + LIST(APPEND newargs ${val}) + ELSE(append_rest) + IF("${val}" STREQUAL "PATHS") + LIST(APPEND newargs ${val}) + SET(append_rest 1) + ELSE("${val}" STREQUAL "PATHS") + LIST(APPEND libnames_release "${val}") + LIST(APPEND libnames_debug "${val}${dgb_postfix}") + ENDIF("${val}" STREQUAL "PATHS") + ENDIF(append_rest) + + ENDFOREACH(i) + + ELSE("${libname}" STREQUAL "NAMES") + + # just one name + LIST(APPEND libnames_release "${libname}") + LIST(APPEND libnames_debug "${libname}${dgb_postfix}") + + SET(newargs ${args}) + + ENDIF("${libname}" STREQUAL "NAMES") + + # search the release lib + FIND_LIBRARY(${var_name}_RELEASE + NAMES ${libnames_release} + ${newargs} + ) + + # search the debug lib + FIND_LIBRARY(${var_name}_DEBUG + NAMES ${libnames_debug} + ${newargs} + ) + + IF(${var_name}_RELEASE AND ${var_name}_DEBUG) + + # both libs found + SET(${var_name} optimized ${${var_name}_RELEASE} + debug ${${var_name}_DEBUG}) + + ELSE(${var_name}_RELEASE AND ${var_name}_DEBUG) + + IF(${var_name}_RELEASE) + + # only release found + SET(${var_name} ${${var_name}_RELEASE}) + + ELSE(${var_name}_RELEASE) + + # only debug (or nothing) found + SET(${var_name} ${${var_name}_DEBUG}) + + ENDIF(${var_name}_RELEASE) + + ENDIF(${var_name}_RELEASE AND ${var_name}_DEBUG) + + MARK_AS_ADVANCED(${var_name}_RELEASE) + MARK_AS_ADVANCED(${var_name}_DEBUG) + + ENDIF(NOT WIN32) + + ENDIF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + +ENDMACRO(FIND_LIBRARY_EX) -- cgit v1.2.1 From 0e93aecc9d6e8736fa9b2bf0b9a8c6adc30e6337 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 24 Sep 2007 10:53:59 +0000 Subject: switch to new macro FIND_LIBRARY_EX() to avoid code duplication svn path=/trunk/KDE/kdelibs/; revision=716254 --- modules/FindBlitz.cmake | 35 +++------- modules/FindKDEWIN32.cmake | 43 ++---------- modules/FindOpenSSL.cmake | 170 +++++++++++++++++---------------------------- modules/FindQCA2.cmake | 20 ++---- modules/FindSoprano.cmake | 45 ++---------- modules/FindStrigi.cmake | 64 +++++------------ modules/FindTaglib.cmake | 14 ++-- 7 files changed, 114 insertions(+), 277 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index ae337d95..cd5f3e98 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -10,6 +10,8 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +include(FindLibraryEx) + if (BLITZ_INCLUDES AND BLITZ_LIBRARIES) set(Blitz_FIND_QUIETLY TRUE) endif (BLITZ_INCLUDES AND BLITZ_LIBRARIES) @@ -23,32 +25,15 @@ find_path(BLITZ_INCLUDES ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) -if(MSVC) - FIND_LIBRARY(BLITZ_LIBRARIES_DEBUG NAMES qimageblitzd) - FIND_LIBRARY(BLITZ_LIBRARIES_RELEASE NAMES qimageblitz) - if(BLITZ_LIBRARIES_DEBUG AND BLITZ_LIBRARIES_RELEASE) - set(BLITZ_LIBRARIES optimized ${BLITZ_LIBRARIES_RELEASE} - debug ${BLITZ_LIBRARIES_DEBUG}) - else(BLITZ_LIBRARIES_DEBUG AND BLITZ_LIBRARIES_RELEASE) - if(BLITZ_LIBRARIES_DEBUG) - set(BLITZ_LIBRARIES ${BLITZ_LIBRARIES_DEBUG}) - else(BLITZ_LIBRARIES_DEBUG) - if(BLITZ_LIBRARIES_RELEASE) - set(BLITZ_LIBRARIES ${BLITZ_LIBRARIES_RELEASE}) - endif(BLITZ_LIBRARIES_RELEASE) - endif(BLITZ_LIBRARIES_DEBUG) - endif(BLITZ_LIBRARIES_DEBUG AND BLITZ_LIBRARIES_RELEASE) -else(MSVC) - FIND_LIBRARY(BLITZ_LIBRARIES - NAMES - qimageblitz - PATHS - $ENV{QIMAGEBLITZDIR}/lib - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) -endif(MSVC) +FIND_LIBRARY_EX(BLITZ_LIBRARIES + WIN32_DEBUG_POSTFIX d + qimageblitz + PATHS + $ENV{QIMAGEBLITZDIR}/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Blitz DEFAULT_MSG diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 68a2f68a..de3f25d6 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -14,6 +14,8 @@ if (WIN32) + include(FindLibraryEx) + if (NOT KDEWIN32_DIR) if(NOT KDEWIN_FOUND) find_package(KDEWIN REQUIRED) @@ -26,50 +28,15 @@ if (WIN32) # search for kdewin32 in the default install directory for applications (default of (n)make install) - find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d + find_library_ex(KDEWIN32_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES kdewin32 PATHS ${CMAKE_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib NO_SYSTEM_ENVIRONMENT_PATH ) - find_library(KDEWIN32_LIBRARY_RELEASE NAMES kdewin32 - PATHS - ${CMAKE_LIBRARY_PATH} - ${CMAKE_INSTALL_PREFIX}/lib - NO_SYSTEM_ENVIRONMENT_PATH - ) - - # msvc makes a difference between debug and release - if(MSVC) - find_library(KDEWIN32_LIBRARY_DEBUG NAMES kdewin32d - PATHS - ${CMAKE_LIBRARY_PATH} - ${CMAKE_INSTALL_PREFIX}/lib - NO_SYSTEM_ENVIRONMENT_PATH - ) - if(MSVC_IDE) - # the ide needs the debug and release version - if( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - message(FATAL_ERROR "\nCould NOT find the debug AND release version of the KDEWIN32 library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n") - endif( NOT KDEWIN32_LIBRARY_DEBUG OR NOT KDEWIN32_LIBRARY_RELEASE) - SET(KDEWIN32_LIBRARY optimized ${KDEWIN32_LIBRARY_RELEASE} debug ${KDEWIN32_LIBRARY_DEBUG}) - else(MSVC_IDE) - string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) - else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) - endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - endif(MSVC_IDE) - else(MSVC) - if(KDEWIN32_LIBRARY_RELEASE) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_RELEASE}) - else(KDEWIN32_LIBRARY_RELEASE) - set(KDEWIN32_LIBRARY ${KDEWIN32_LIBRARY_DEBUG}) - endif(KDEWIN32_LIBRARY_RELEASE) - endif(MSVC) - # kdelibs/win/ has to be built before the rest of kdelibs/ # eventually it will be moved out from kdelibs/ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 4c2a3f7d..44cfa50f 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -1,108 +1,62 @@ -# - Try to find the OpenSSL encryption library -# Once done this will define -# -# OPENSSL_FOUND - system has the OpenSSL library -# OPENSSL_INCLUDE_DIR - the OpenSSL include directory -# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL -# OPENSSL_EAY_LIBRARIES - The additional libraries needed to use OpenSSL on windows -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -# on win32 we additional need to link to libeay32.lib -MACRO(OPENSSL_ADD_LIB_EAY_LIBS) - IF(MSVC) - # /MD and /MDd are the standard values - if somone wants to use - # others, the libnames have to change here too - # use also eay and libeay32 in debug as fallback for openssl < 0.9.8b - - FIND_LIBRARY(LIB_EAY_DEBUG NAMES libeay32MDd eay libeay libeay32) - FIND_LIBRARY(LIB_EAY_RELEASE NAMES libeay32MD eay libeay libeay32) - - IF(MSVC_IDE) - IF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) - SET(OPENSSL_EAY_LIBRARIES optimized ${LIB_EAY_RELEASE} debug ${LIB_EAY_DEBUG}) - ELSE(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) - MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl (libeay)") - ENDIF(LIB_EAY_DEBUG AND LIB_EAY_RELEASE) - ELSE(MSVC_IDE) - STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_DEBUG}) - ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_EAY_LIBRARIES ${LIB_EAY_RELEASE}) - ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - ENDIF(MSVC_IDE) - MARK_AS_ADVANCED(LIB_EAY_DEBUG LIB_EAY_RELEASE) - ELSE(MSVC) - FIND_LIBRARY(OPENSSL_EAY_LIBRARIES NAMES eay libeay libeay32 ) - ENDIF(MSVC) -ENDMACRO(OPENSSL_ADD_LIB_EAY_LIBS) - -IF(OPENSSL_LIBRARIES) - SET(OpenSSL_FIND_QUIETLY TRUE) -ENDIF(OPENSSL_LIBRARIES) - -IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - SET(LIB_FOUND 1) -ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - -FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h ) - -IF(WIN32 AND MSVC) - # /MD and /MDd are the standard values - if somone wants to use - # others, the libnames have to change here too - # use also ssl and ssleay32 in debug as fallback for openssl < 0.9.8b - - FIND_LIBRARY(SSL_EAY_DEBUG NAMES ssleay32MDd ssl ssleay32) - FIND_LIBRARY(SSL_EAY_RELEASE NAMES ssleay32MD ssl ssleay32) - - IF(MSVC_IDE) - IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - SET(OPENSSL_LIBRARIES optimized ${SSL_EAY_RELEASE} debug ${SSL_EAY_DEBUG}) - ELSE(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - MESSAGE(FATAL_ERROR "Could not find the debug and release version of openssl") - ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) - ELSE(MSVC_IDE) - STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_LIBRARIES ${SSL_EAY_DEBUG}) - ELSE(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - SET(OPENSSL_LIBRARIES ${SSL_EAY_RELEASE}) - ENDIF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - ENDIF(MSVC_IDE) - MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE) -ELSE(WIN32 AND MSVC) - - FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD ) - -ENDIF(WIN32 AND MSVC) - -IF(WIN32) - OPENSSL_ADD_LIB_EAY_LIBS() - IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) - SET(OPENSSL_FOUND TRUE) - ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) - SET(OPENSSL_FOUND FALSE) - ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) -ELSE(WIN32) - IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - SET(OPENSSL_FOUND TRUE) - ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) - SET(OPENSSL_FOUND FALSE) - ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) -ENDIF(WIN32) - -IF (OPENSSL_FOUND) - IF (NOT OpenSSL_FIND_QUIETLY) - MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") - ENDIF (NOT OpenSSL_FIND_QUIETLY) -ELSE (OPENSSL_FOUND) - IF (OpenSSL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find OpenSSL") - ENDIF (OpenSSL_FIND_REQUIRED) -ENDIF (OPENSSL_FOUND) - -MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) - +# - Try to find the OpenSSL encryption library +# Once done this will define +# +# OPENSSL_FOUND - system has the OpenSSL library +# OPENSSL_INCLUDE_DIR - the OpenSSL include directory +# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL +# OPENSSL_EAY_LIBRARIES - The additional libraries needed to use OpenSSL on windows +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +include(FindLibraryEx) + +# on win32 we additional need to link to libeay32.lib +MACRO(OPENSSL_ADD_LIB_EAY_LIBS) + FIND_LIBRARY_EX(OPENSSL_EAY_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES eay libeay libeay32 libeay32MD) +ENDMACRO(OPENSSL_ADD_LIB_EAY_LIBS) + +IF(OPENSSL_LIBRARIES) + SET(OpenSSL_FIND_QUIETLY TRUE) +ENDIF(OPENSSL_LIBRARIES) + +IF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + SET(LIB_FOUND 1) +ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) + +FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h ) + +FIND_LIBRARY_EX(OPENSSL_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES ssl ssleay ssleay32 ssleay32MD) + +IF(WIN32) + OPENSSL_ADD_LIB_EAY_LIBS() + IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) + SET(OPENSSL_FOUND TRUE) + ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) + SET(OPENSSL_FOUND FALSE) + ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES AND OPENSSL_EAY_LIBRARIES) +ELSE(WIN32) + IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + SET(OPENSSL_FOUND TRUE) + ELSE(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) + SET(OPENSSL_FOUND FALSE) + ENDIF (OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARIES) +ENDIF(WIN32) + +IF (OPENSSL_FOUND) + IF (NOT OpenSSL_FIND_QUIETLY) + MESSAGE(STATUS "Found OpenSSL: ${OPENSSL_LIBRARIES}") + ENDIF (NOT OpenSSL_FIND_QUIETLY) +ELSE (OPENSSL_FOUND) + IF (OpenSSL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find OpenSSL") + ENDIF (OpenSSL_FIND_REQUIRED) +ENDIF (OPENSSL_FOUND) + +MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) + diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index d8b74733..2f4835bf 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -14,6 +14,8 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +include(FindLibraryEx) + if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) # in cache already @@ -34,21 +36,9 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) NO_DEFAULT_PATH ) ELSE (NOT WIN32) - FIND_LIBRARY(QCA2_LIBRARIES_DEBUG NAMES qcad) - FIND_LIBRARY(QCA2_LIBRARIES_RELEASE NAMES qca) - - if(QCA2_LIBRARIES_DEBUG AND QCA2_LIBRARIES_RELEASE) - set(QCA2_LIBRARIES optimized ${QCA2_LIBRARIES_RELEASE} - debug ${QCA2_LIBRARIES_DEBUG}) - else(QCA2_LIBRARIES_DEBUG AND QCA2_LIBRARIES_RELEASE) - if(QCA2_LIBRARIES_DEBUG) - set(QCA2_LIBRARIES ${QCA2_LIBRARIES_DEBUG}) - else(QCA2_LIBRARIES_DEBUG) - if(QCA2_LIBRARIES_RELEASE) - set(QCA2_LIBRARIES ${QCA2_LIBRARIES_RELEASE}) - endif(QCA2_LIBRARIES_RELEASE) - endif(QCA2_LIBRARIES_DEBUG) - endif(QCA2_LIBRARIES_DEBUG AND QCA2_LIBRARIES_RELEASE) + FIND_LIBRARY_EX(QCA2_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES qca) FIND_PATH(QCA2_INCLUDE_DIR QtCrypto/qca.h) IF(QCA2_INCLUDE_DIR) diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 30491fca..18c0893e 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -15,44 +15,13 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) ${INCLUDE_INSTALL_DIR} ) - if(MSVC) - FIND_LIBRARY(SOPRANO_LIBRARIES_DEBUG - NAMES - sopranod - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - FIND_LIBRARY(SOPRANO_LIBRARIES_RELEASE - NAMES - soprano - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - - if(SOPRANO_LIBRARIES_DEBUG AND SOPRANO_LIBRARIES_RELEASE) - set(SOPRANO_LIBRARIES optimized ${SOPRANO_LIBRARIES_RELEASE} - debug ${SOPRANO_LIBRARIES_DEBUG}) - else(SOPRANO_LIBRARIES_DEBUG AND SOPRANO_LIBRARIES_RELEASE) - if(SOPRANO_LIBRARIES_DEBUG) - set(SOPRANO_LIBRARIES ${SOPRANO_LIBRARIES_DEBUG}) - else(SOPRANO_LIBRARIES_DEBUG) - if(SOPRANO_LIBRARIES_RELEASE) - set(SOPRANO_LIBRARIES ${SOPRANO_LIBRARIES_RELEASE}) - endif(SOPRANO_LIBRARIES_RELEASE) - endif(SOPRANO_LIBRARIES_DEBUG) - endif(SOPRANO_LIBRARIES_DEBUG AND SOPRANO_LIBRARIES_RELEASE) - - else(MSVC) - FIND_LIBRARY(SOPRANO_LIBRARIES - NAMES - soprano - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - endif(MSVC) + FIND_LIBRARY_EX(SOPRANO_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES soprano + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) set(Soprano_FOUND TRUE) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a9f854db..462c9869 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -6,6 +6,7 @@ # STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer # STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams +include(FindLibraryEx) set(STRIGI_MIN_VERSION "0.5.3") @@ -20,54 +21,23 @@ find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h ${_program_FILES_DIR}/strigi/include ) -if(MSVC) - FIND_LIBRARY(STREAMANALYZER_LIBRARY_DEBUG NAMES streamanalyzerd) - FIND_LIBRARY(STREAMANALYZER_LIBRARY_RELEASE NAMES streamanalyzer) - - if(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) - set(STRIGI_STREAMANALYZER_LIBRARY optimized ${STREAMANALYZER_LIBRARY_RELEASE} - debug ${STREAMANALYZER_LIBRARY_DEBUG}) - else(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) - if(STREAMANALYZER_LIBRARY_DEBUG) - set(STRIGI_STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_DEBUG}) - else(STREAMANALYZER_LIBRARY_DEBUG) - if(STREAMANALYZER_LIBRARY_RELEASE) - set(STRIGI_STREAMANALYZER_LIBRARY ${STREAMANALYZER_LIBRARY_RELEASE}) - endif(STREAMANALYZER_LIBRARY_RELEASE) - endif(STREAMANALYZER_LIBRARY_DEBUG) - endif(STREAMANALYZER_LIBRARY_DEBUG AND STREAMANALYZER_LIBRARY_RELEASE) - - FIND_LIBRARY(STREAMS_LIBRARY_DEBUG NAMES streamsd) - FIND_LIBRARY(STREAMS_LIBRARY_RELEASE NAMES streams) - - if(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) - set(STRIGI_STREAMS_LIBRARY optimized ${STREAMS_LIBRARY_RELEASE} - debug ${STREAMS_LIBRARY_DEBUG}) - else(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) - if(STREAMS_LIBRARY_DEBUG) - set(STRIGI_STREAMS_LIBRARY ${STREAMS_LIBRARY_DEBUG}) - else(STREAMS_LIBRARY_DEBUG) - if(STREAMS_LIBRARY_RELEASE) - set(STRIGI_STREAMS_LIBRARY ${STREAMS_LIBRARY_RELEASE}) - endif(STREAMS_LIBRARY_RELEASE) - endif(STREAMS_LIBRARY_DEBUG) - endif(STREAMS_LIBRARY_DEBUG AND STREAMS_LIBRARY_RELEASE) - -else(MSVC) - find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer - PATHS - $ENV{STRIGI_HOME}/lib - ${CMAKE_INSTALL_PREFIX}/lib - ${_program_FILES_DIR}/strigi/lib - ) +find_library_ex(STRIGI_STREAMANALYZER_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES streamanalyzer + PATHS + $ENV{STRIGI_HOME}/lib + ${CMAKE_INSTALL_PREFIX}/lib + ${_program_FILES_DIR}/strigi/lib +) - find_library(STRIGI_STREAMS_LIBRARY NAMES streams - PATHS - $ENV{STRIGI_HOME}/lib - ${CMAKE_INSTALL_PREFIX}/lib - ${_program_FILES_DIR}/strigi/lib - ) -endif(MSVC) +find_library_ex(STRIGI_STREAMS_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES streams + PATHS + $ENV{STRIGI_HOME}/lib + ${CMAKE_INSTALL_PREFIX}/lib + ${_program_FILES_DIR}/strigi/lib +) if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(UsePkgConfig) diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 1602fe1d..7b5ffc39 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -10,6 +10,8 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +include(FindLibraryEx) + IF(NOT WIN32) FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS /usr/bin @@ -44,12 +46,12 @@ ELSE(TAGLIBCONFIG_EXECUTABLE) ${INCLUDE_INSTALL_DIR} ) - FIND_LIBRARY(TAGLIB_LIBRARIES - NAMES - tag - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} + FIND_LIBRARY_EX(TAGLIB_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES tag + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} ) INCLUDE(FindPackageHandleStandardArgs) -- cgit v1.2.1 From e470ff64e894fbe7c8ce1c0ce3333eb0d92d1b80 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 24 Sep 2007 10:56:16 +0000 Subject: another name for the tiff lib -> libtiff3 svn path=/trunk/KDE/kdelibs/; revision=716257 --- modules/FindTIFF.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 6bdd53d6..49261dd7 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -17,7 +17,7 @@ endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) find_path(TIFF_INCLUDE_DIR NAMES tiff.h ) -set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff) +set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff libtiff3) find_library(TIFF_LIBRARY NAMES ${TIFF_NAMES} ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 783cde1f0c62d68d25c6e6627f7e53108da1c6f9 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 24 Sep 2007 12:15:38 +0000 Subject: also create moc files for _p.h files that contain a Q_OBJECT macro svn path=/trunk/KDE/kdelibs/; revision=716270 --- modules/KDE4Macros.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c4bc773f..078577b2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -207,6 +207,10 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) if(EXISTS "${_header}") list(APPEND _moc_headers ${_header}) endif(EXISTS "${_header}") + set(_pheader "${_abs_path}/${_basename}_p.h") + if(EXISTS "${_pheader}") + list(APPEND _moc_headers ${_pheader}) + endif(EXISTS "${_pheader}") list(APPEND _moc_files ${_abs_current_FILE}) endif(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") endif(NOT _generated AND NOT _skip) -- cgit v1.2.1 From b39e393363141e698087445d723a1ee1eb266e8b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 24 Sep 2007 12:56:38 +0000 Subject: Allow to put TEST arg as second argument svn path=/trunk/KDE/kdelibs/; revision=716277 --- modules/KDE4Macros.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 078577b2..a3bf028a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -654,6 +654,12 @@ macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst _test) set(remove 0) endif (${first_PARAM} STREQUAL "TEST") + if (${second_PARAM} STREQUAL "TEST") + set(${_test} "TEST") + set(remove 0;1) + endif (${second_PARAM} STREQUAL "TEST") + + if (NOT "${remove}" STREQUAL "NOTFOUND") list(REMOVE_AT ${_output_LIST} ${remove}) -- cgit v1.2.1 From efe26453ac089e5bcfe7ac43001b0944299eb87f Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 24 Sep 2007 13:19:24 +0000 Subject: Use the proper dbus service name for the repository. New FindSoprano cmake module to find Soprano2. svn path=/trunk/KDE/kdelibs/; revision=716289 --- modules/FindSoprano.cmake | 39 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 18c0893e..af3f9155 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -1,11 +1,11 @@ -if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) +if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) # read from cache set(Soprano_FOUND TRUE) -else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) +else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) FIND_PATH(SOPRANO_INCLUDE_DIR NAMES @@ -23,13 +23,46 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) ${LIB_INSTALL_DIR} ) + + FIND_LIBRARY(SOPRANO_INDEX_LIBRARIES + NAMES + sopranoindex + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + FIND_LIBRARY(SOPRANO_CLIENT_LIBRARIES + NAMES + sopranoclient + PATHS + /usr/lib + /usr/local/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) set(Soprano_FOUND TRUE) + if(SOPRANO_INDEX_LIBRARIES) + set(SopranoIndex_FOUND TRUE) + endif(SOPRANO_INDEX_LIBRARIES) + if(SOPRANO_CLIENT_LIBRARIES) + set(SopranoClient_FOUND TRUE) + endif(SOPRANO_CLIENT_LIBRARIES) endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") + if(SopranoIndex_FOUND) + message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") + endif(SopranoIndex_FOUND) + if(SopranoClient_FOUND) + message(STATUS "Found Soprano Client: ${SOPRANO_INDEX_LIBRARIES}") + endif(SopranoClient_FOUND) endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) @@ -49,4 +82,4 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) endif(Soprano_FIND_REQUIRED) endif(Soprano_FOUND) -endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) +endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) -- cgit v1.2.1 From 2c58ae82bb513a7477feb9c8960b9bf8f76585fd Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Mon, 24 Sep 2007 13:54:47 +0000 Subject: pass var_name correctly svn path=/trunk/KDE/kdelibs/; revision=716313 --- modules/FindLibraryEx.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindLibraryEx.cmake b/modules/FindLibraryEx.cmake index 30dc87b8..aee3bf9e 100644 --- a/modules/FindLibraryEx.cmake +++ b/modules/FindLibraryEx.cmake @@ -25,7 +25,7 @@ MACRO(FIND_LIBRARY_EX var_name win32_dbg_postfix_name dgb_postfix libname) IF(NOT WIN32) # on non-win32 we don't need to take care about WIN32_DEBUG_POSTFIX - FIND_LIBRARY(var_name ${libname} ${ARGN}) + FIND_LIBRARY(${var_name} ${libname} ${ARGN}) ELSE(NOT WIN32) -- cgit v1.2.1 From faf712102ec52da6d01b2d492edfd5fa60efbba5 Mon Sep 17 00:00:00 2001 From: Bernhard Loos Date: Mon, 24 Sep 2007 17:46:54 +0000 Subject: some more needed libraries for the KUser port svn path=/trunk/KDE/kdelibs/; revision=716430 --- modules/FindKDEWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index de3f25d6..e6d044d7 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -42,7 +42,7 @@ if (WIN32) if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) set(KDEWIN32_FOUND TRUE) # add needed system libs - set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32) + set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) if (MINGW) #mingw compiler -- cgit v1.2.1 From aa3512ae8d383d03cc0973c4e019c5e6024922eb Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 24 Sep 2007 19:12:30 +0000 Subject: Not necessary svn path=/trunk/KDE/kdelibs/; revision=716482 --- modules/FindSoprano.cmake | 4 ---- 1 file changed, 4 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index af3f9155..6f294846 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -28,8 +28,6 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) NAMES sopranoindex PATHS - /usr/lib - /usr/local/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) @@ -38,8 +36,6 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) NAMES sopranoclient PATHS - /usr/lib - /usr/local/lib ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From b94565d55fbee031cbdba268fbe8e6cd4c0e41fd Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 25 Sep 2007 07:32:57 +0000 Subject: Add search strigiqtdbusclient necessary for new kick-off svn path=/trunk/KDE/kdelibs/; revision=716763 --- modules/FindStrigi.cmake | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 462c9869..1526c2c2 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -39,6 +39,16 @@ find_library_ex(STRIGI_STREAMS_LIBRARY ${_program_FILES_DIR}/strigi/lib ) +find_library_ex(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES strigiqtdbusclient + PATHS + $ENV{STRIGI_HOME}/lib + ${CMAKE_INSTALL_PREFIX}/lib + ${_program_FILES_DIR}/strigi/lib +) + + if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(UsePkgConfig) pkgconfig(libstreamanalyzer _dummyIncDir _dummyLinkDir _dummyLinkFlags _dummyCflags) @@ -62,6 +72,10 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS ${_dummyLinkDir}) endif(NOT STRIGI_STREAMANALYZER_LIBRARY) + if( NOT STRIGI_STRIGIQTDBUSCLIENT_LIBRARY) + find_library(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY NAMES strigiqtdbusclient + PATHS ${_dummyLinkDir}) + endif(NOT STRIGI_STRIGIQTDBUSCLIENT_LIBRARY) if (NOT STRIGI_STREAMS_LIBRARY) find_library(STRIGI_STREAMS_LIBRARY NAMES streams PATHS ${_dummyLinkDir}) -- cgit v1.2.1 From 36adf4c2c46261f1967b19e5b692153fafddbeb0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 25 Sep 2007 10:06:57 +0000 Subject: soprano needs client and index libraries now, so search for them svn path=/trunk/KDE/kdelibs/; revision=716815 --- modules/FindSoprano.cmake | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 6f294846..7857cbdb 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -40,25 +40,17 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) ${LIB_INSTALL_DIR} ) - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) set(Soprano_FOUND TRUE) - if(SOPRANO_INDEX_LIBRARIES) - set(SopranoIndex_FOUND TRUE) - endif(SOPRANO_INDEX_LIBRARIES) - if(SOPRANO_CLIENT_LIBRARIES) - set(SopranoClient_FOUND TRUE) - endif(SOPRANO_CLIENT_LIBRARIES) - endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + set(SopranoIndex_FOUND TRUE) + set(SopranoClient_FOUND TRUE) + endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") - if(SopranoIndex_FOUND) - message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") - endif(SopranoIndex_FOUND) - if(SopranoClient_FOUND) - message(STATUS "Found Soprano Client: ${SOPRANO_INDEX_LIBRARIES}") - endif(SopranoClient_FOUND) + message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") + message(STATUS "Found Soprano Client: ${SOPRANO_INDEX_LIBRARIES}") endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) -- cgit v1.2.1 From cdba8640db9ca11cb8b86f727c79f42659fdae53 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 26 Sep 2007 13:42:14 +0000 Subject: add an optional "section" argument to the KDE4_CREATE_MANPAGE() macro svn path=/trunk/KDE/kdelibs/; revision=717265 --- modules/KDE4Macros.cmake | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a3bf028a..8387c98b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -315,17 +315,23 @@ macro (KDE4_CREATE_HANDBOOK _docbook) endmacro (KDE4_CREATE_HANDBOOK) -macro (KDE4_CREATE_MANPAGE _docbook) +macro (KDE4_CREATE_MANPAGE _docbook) # _section get_filename_component(_input ${_docbook} ABSOLUTE) - set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/index.1) + get_filename_component(_base ${_input} NAME_WE) + + set(_section "${ARGV1}") + if (NOT ${_section}) + set(_section "1") + endif(NOT ${_section}) + set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/${_base}.${_section}) - set(_bootstrapOption) #Bootstrap if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/docbook/xsl/manpages/docbook.xsl) set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") else (_kdeBootStrapping) set(_ssheet ${KDE4_DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl) + set(_bootstrapOption) endif (_kdeBootStrapping) add_custom_command(OUTPUT ${_doc} -- cgit v1.2.1 From 1deb8975ca3e58dae49b595e25d5f78950bea9d8 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 26 Sep 2007 14:01:18 +0000 Subject: install manpages and infopages into destdir/share svn path=/trunk/KDE/kdelibs/; revision=717270 --- modules/FindGLIB2.cmake | 2 +- modules/FindKDE4Internal.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 1f95b3a0..3467562a 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -28,7 +28,7 @@ get_filename_component(glib2LibDir "${GLIB2_LIBRARIES}" PATH) find_path(GLIB2_INTERNAL_INCLUDE_DIR glibconfig.h PATH_SUFFIXES glib-2.0/include - PATHS ${_LibGLIB2IncDir} "${glib2LibDir}" /usr/lib /usr/local/lib) + PATHS ${_LibGLIB2IncDir} "${glib2LibDir}" ${CMAKE_SYSTEM_LIBRARY_PATH}) set(GLIB2_INCLUDE_DIR "${GLIB2_MAIN_INCLUDE_DIR}") diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b747e258..f68a1ff1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -555,8 +555,8 @@ _set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directorie _set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") -_set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") -_set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") +_set_fancy(MAN_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/man" "The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/)") +_set_fancy(INFO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/info" "The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") _set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") -- cgit v1.2.1 From 8a5e72cd3f863ecfe04017d289874193f311cab2 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 26 Sep 2007 15:38:26 +0000 Subject: Changes to the KDE4_CREATE_MANPAGE() macro: - the section argument is now required - the output roff file goes into the builddir - now provides optional INSTALL_DESTINATION arguments, just like KDE4_CREATE_HANDBOOK() svn path=/trunk/KDE/kdelibs/; revision=717306 --- modules/KDE4Macros.cmake | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 8387c98b..0ce4961e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -315,15 +315,11 @@ macro (KDE4_CREATE_HANDBOOK _docbook) endmacro (KDE4_CREATE_HANDBOOK) -macro (KDE4_CREATE_MANPAGE _docbook) # _section +macro (KDE4_CREATE_MANPAGE _docbook _section) get_filename_component(_input ${_docbook} ABSOLUTE) get_filename_component(_base ${_input} NAME_WE) - set(_section "${ARGV1}") - if (NOT ${_section}) - set(_section "1") - endif(NOT ${_section}) - set(_doc ${CMAKE_CURRENT_SOURCE_DIR}/${_base}.${_section}) + set(_doc ${CMAKE_CURRENT_BINARY_DIR}/${_base}.${_section}) #Bootstrap if (_kdeBootStrapping) @@ -339,6 +335,30 @@ macro (KDE4_CREATE_MANPAGE _docbook) # _section DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) add_custom_target(manpage ALL DEPENDS ${_doc}) + + set(_args ${ARGN}) + + set(_installDest) + if(_args) + list(GET _args 0 _tmp) + if("${_tmp}" STREQUAL "INSTALL_DESTINATION") + list(GET _args 1 _installDest ) + list(REMOVE_AT _args 0 1) + endif("${_tmp}" STREQUAL "INSTALL_DESTINATION") + endif(_args) + + get_filename_component(dirname ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE) + if(_args) + list(GET _args 0 _tmp) + if("${_tmp}" STREQUAL "SUBDIR") + list(GET _args 1 dirname ) + list(REMOVE_AT _args 0 1) + endif("${_tmp}" STREQUAL "SUBDIR") + endif(_args) + + if(_installDest) + install(FILES ${_doc} DESTINATION ${_installDest}/man${_section}) + endif(_installDest) endmacro (KDE4_CREATE_MANPAGE) -- cgit v1.2.1 From 4587ff182b62eab5c8c7e4816678b1ed207e7a90 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 26 Sep 2007 21:35:47 +0000 Subject: Sometimes we name our manpage docbook files as "man-foo.docbook", but the contents of that same file will say to generate a manpage called foo.1. (see in the docbook). So, we change the kde4_create_manpage() macro to do a s+/man-+/+ when creating the output file from the input file, i.e., man-foo.docbook becomes foo.1. The safer way would be to parse the docbook file, looking for the value. Then create the output file from that. Rather not, unless required later. svn path=/trunk/KDE/kdelibs/; revision=717431 --- modules/KDE4Macros.cmake | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0ce4961e..b0803423 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -277,11 +277,6 @@ macro (KDE4_CREATE_HANDBOOK _docbook) add_custom_target(htmlhandbook DEPENDS ${_htmlDoc}) endif(KDE4_ENABLE_HTMLHANDBOOK) -# kde4_create_handbook( [INSTALL_DESTINATION ] [SUBDIR ] ) -# e.g. kde4_create_handbook(index.docbook) -# kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en ) -# kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kinfocenter/dma) - set(_args ${ARGN}) set(_installDest) @@ -320,6 +315,8 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) get_filename_component(_base ${_input} NAME_WE) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/${_base}.${_section}) + # sometimes we have "man-" prepended + string(REGEX REPLACE "/man-" "/" _outdoc ${_doc}) #Bootstrap if (_kdeBootStrapping) @@ -330,11 +327,11 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) set(_bootstrapOption) endif (_kdeBootStrapping) - add_custom_command(OUTPUT ${_doc} - COMMAND ${KDE4_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} -o ${_doc} ${_input} + add_custom_command(OUTPUT ${_outdoc} + COMMAND ${KDE4_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) - add_custom_target(manpage ALL DEPENDS ${_doc}) + add_custom_target(manpage ALL DEPENDS ${_outdoc}) set(_args ${ARGN}) @@ -357,7 +354,7 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) endif(_args) if(_installDest) - install(FILES ${_doc} DESTINATION ${_installDest}/man${_section}) + install(FILES ${_outdoc} DESTINATION ${_installDest}/man${_section}) endif(_installDest) endmacro (KDE4_CREATE_MANPAGE) -- cgit v1.2.1 From 1c2960927c3db2b06208722bc1fde307b9015d9b Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 26 Sep 2007 21:36:22 +0000 Subject: update the documentation for KDE4_CREATE_HANDBOOK() and KDE4_CREATE_MANPAGE(). svn path=/trunk/KDE/kdelibs/; revision=717432 --- modules/FindKDE4Internal.cmake | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f68a1ff1..72686c84 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -192,11 +192,17 @@ # Installs all png and svgz files in the current directory to the icon # directoy given in path, in the subdirectory for the given icon theme. # -# KDE4_CREATE_HANDBOOK( docbookfile ) +# KDE4_CREATE_HANDBOOK( docbookfile [INSTALL_DESTINATION installdest] [SUBDIR subdir]) # Create the handbook from the docbookfile (using meinproc) -# -# KDE4_INSTALL_HANDBOOK() -# Install the handbook documentation +# The resulting handbook will be installed to when using +# INSTALL_DESTINATION , or to / if +# SUBDIR is specified. +# +# KDE4_CREATE_MANPAGE( docbookfile section ) +# Create the manpage for the specified section from the docbookfile (using meinproc) +# The resulting manpage will be installed to when using +# INSTALL_DESTINATION , or to / if +# SUBDIR is specified. # # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally -- cgit v1.2.1 From c91e14a6accb5a78cb51845dd1cb627e22d823e6 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 27 Sep 2007 05:54:28 +0000 Subject: renamed KDE4_ADD_APP_ICON to KDE4_ADD_WIN32_APP_ICON based on alex request svn path=/trunk/KDE/kdelibs/; revision=717545 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b0803423..605d6aed 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -944,7 +944,7 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) # # add application icon to a set of source files # -macro (KDE4_ADD_APP_ICON outfiles) +macro (KDE4_ADD_WIN32_APP_ICON outfiles) if (WIN32) FOREACH (it ${ARGN}) GET_FILENAME_COMPONENT(_name ${it} NAME_WE) @@ -968,4 +968,4 @@ macro (KDE4_ADD_APP_ICON outfiles) list(APPEND ${outfiles} ${_outfilename}.rc) endif(MINGW) endif(WIN32) -endmacro (KDE4_ADD_APP_ICON) +endmacro (KDE4_ADD_WIN32_APP_ICON) -- cgit v1.2.1 From aa586468d5a968ce7467cd92bf75d65be05eb605 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Sun, 30 Sep 2007 12:12:09 +0000 Subject: don't prefer /usr/include over /include svn path=/trunk/KDE/kdelibs/; revision=719138 --- modules/FindStrigi.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 1526c2c2..f0d1e03b 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -19,6 +19,7 @@ find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h $ENV{STRIGI_HOME}/include ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include + NO_DEFAULT_PATH ) find_library_ex(STRIGI_STREAMANALYZER_LIBRARY -- cgit v1.2.1 From b94768531ef8881f2b6e7b93c4f0324f02b80487 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 30 Sep 2007 16:19:18 +0000 Subject: FIND_LIBRARY_EX -> FIND_LIBRARY_WITH_DEBUG svn path=/trunk/KDE/kdelibs/; revision=719224 --- modules/FindBlitz.cmake | 4 +- modules/FindKDEWIN32.cmake | 6 +- modules/FindLibraryEx.cmake | 111 ------------------------------------ modules/FindLibraryWithDebug.cmake | 112 +++++++++++++++++++++++++++++++++++++ modules/FindOpenSSL.cmake | 6 +- modules/FindQCA2.cmake | 4 +- modules/FindSoprano.cmake | 3 +- modules/FindStrigi.cmake | 8 +-- modules/FindTaglib.cmake | 8 +-- 9 files changed, 132 insertions(+), 130 deletions(-) delete mode 100644 modules/FindLibraryEx.cmake create mode 100644 modules/FindLibraryWithDebug.cmake (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index cd5f3e98..6f3e912b 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -10,7 +10,7 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -include(FindLibraryEx) +include(FindLibraryWithDebug) if (BLITZ_INCLUDES AND BLITZ_LIBRARIES) set(Blitz_FIND_QUIETLY TRUE) @@ -26,7 +26,7 @@ find_path(BLITZ_INCLUDES ${INCLUDE_INSTALL_DIR} ) -FIND_LIBRARY_EX(BLITZ_LIBRARIES +find_library_with_debug(BLITZ_LIBRARIES WIN32_DEBUG_POSTFIX d qimageblitz PATHS diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index e6d044d7..5d4499af 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -14,21 +14,21 @@ if (WIN32) - include(FindLibraryEx) + include(FindLibraryWithDebug) if (NOT KDEWIN32_DIR) if(NOT KDEWIN_FOUND) find_package(KDEWIN REQUIRED) endif(NOT KDEWIN_FOUND) - find_path(KDEWIN32_INCLUDE_DIR winposix_export.h + find_path(KDEWIN32_INCLUDE_DIR winposix_export.h ${CMAKE_INCLUDE_PATH} ${CMAKE_INSTALL_PREFIX}/include ) # search for kdewin32 in the default install directory for applications (default of (n)make install) - find_library_ex(KDEWIN32_LIBRARY + find_library_with_debug(KDEWIN32_LIBRARY WIN32_DEBUG_POSTFIX d NAMES kdewin32 PATHS diff --git a/modules/FindLibraryEx.cmake b/modules/FindLibraryEx.cmake deleted file mode 100644 index aee3bf9e..00000000 --- a/modules/FindLibraryEx.cmake +++ /dev/null @@ -1,111 +0,0 @@ -# -# FIND_LIBRARY_EX - enhanced FIND_LIBRARY to allow the search for an -# optional debug library with a WIN32_DEBUG_POSTFIX similar -# to CMAKE_DEBUG_POSTFIX when creating a shared lib -# it has to be the second and third argument -# -# Copyright (c) 2007, Christian Ehrlicher, -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -MACRO(FIND_LIBRARY_EX var_name win32_dbg_postfix_name dgb_postfix libname) - - IF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") - - # no WIN32_DEBUG_POSTFIX -> simply pass all arguments to FIND_LIBRARY - FIND_LIBRARY(${var_name} - ${win32_dbg_postfix_name} - ${dgb_postfix} - ${libname} - ${ARGN} - ) - - ELSE(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") - - IF(NOT WIN32) - # on non-win32 we don't need to take care about WIN32_DEBUG_POSTFIX - - FIND_LIBRARY(${var_name} ${libname} ${ARGN}) - - ELSE(NOT WIN32) - - # 1. get all possible libnames - SET(args ${ARGN}) - SET(libnames_release "") - SET(libnames_debug "") - - LIST(LENGTH args listCount) - - IF("${libname}" STREQUAL "NAMES") - SET(append_rest 0) - LIST(APPEND args " ") - - FOREACH(i RANGE ${listCount}) - LIST(GET args ${i} val) - - IF(append_rest) - LIST(APPEND newargs ${val}) - ELSE(append_rest) - IF("${val}" STREQUAL "PATHS") - LIST(APPEND newargs ${val}) - SET(append_rest 1) - ELSE("${val}" STREQUAL "PATHS") - LIST(APPEND libnames_release "${val}") - LIST(APPEND libnames_debug "${val}${dgb_postfix}") - ENDIF("${val}" STREQUAL "PATHS") - ENDIF(append_rest) - - ENDFOREACH(i) - - ELSE("${libname}" STREQUAL "NAMES") - - # just one name - LIST(APPEND libnames_release "${libname}") - LIST(APPEND libnames_debug "${libname}${dgb_postfix}") - - SET(newargs ${args}) - - ENDIF("${libname}" STREQUAL "NAMES") - - # search the release lib - FIND_LIBRARY(${var_name}_RELEASE - NAMES ${libnames_release} - ${newargs} - ) - - # search the debug lib - FIND_LIBRARY(${var_name}_DEBUG - NAMES ${libnames_debug} - ${newargs} - ) - - IF(${var_name}_RELEASE AND ${var_name}_DEBUG) - - # both libs found - SET(${var_name} optimized ${${var_name}_RELEASE} - debug ${${var_name}_DEBUG}) - - ELSE(${var_name}_RELEASE AND ${var_name}_DEBUG) - - IF(${var_name}_RELEASE) - - # only release found - SET(${var_name} ${${var_name}_RELEASE}) - - ELSE(${var_name}_RELEASE) - - # only debug (or nothing) found - SET(${var_name} ${${var_name}_DEBUG}) - - ENDIF(${var_name}_RELEASE) - - ENDIF(${var_name}_RELEASE AND ${var_name}_DEBUG) - - MARK_AS_ADVANCED(${var_name}_RELEASE) - MARK_AS_ADVANCED(${var_name}_DEBUG) - - ENDIF(NOT WIN32) - - ENDIF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") - -ENDMACRO(FIND_LIBRARY_EX) diff --git a/modules/FindLibraryWithDebug.cmake b/modules/FindLibraryWithDebug.cmake new file mode 100644 index 00000000..d3450a2a --- /dev/null +++ b/modules/FindLibraryWithDebug.cmake @@ -0,0 +1,112 @@ +# +# FIND_LIBRARY_WITH_DEBUG +# -> enhanced FIND_LIBRARY to allow the search for an +# optional debug library with a WIN32_DEBUG_POSTFIX similar +# to CMAKE_DEBUG_POSTFIX when creating a shared lib +# it has to be the second and third argument +# +# Copyright (c) 2007, Christian Ehrlicher, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +MACRO(FIND_LIBRARY_WITH_DEBUG var_name win32_dbg_postfix_name dgb_postfix libname) + + IF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + + # no WIN32_DEBUG_POSTFIX -> simply pass all arguments to FIND_LIBRARY + FIND_LIBRARY(${var_name} + ${win32_dbg_postfix_name} + ${dgb_postfix} + ${libname} + ${ARGN} + ) + + ELSE(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + + IF(NOT WIN32) + # on non-win32 we don't need to take care about WIN32_DEBUG_POSTFIX + + FIND_LIBRARY(${var_name} ${libname} ${ARGN}) + + ELSE(NOT WIN32) + + # 1. get all possible libnames + SET(args ${ARGN}) + SET(libnames_release "") + SET(libnames_debug "") + + LIST(LENGTH args listCount) + + IF("${libname}" STREQUAL "NAMES") + SET(append_rest 0) + LIST(APPEND args " ") + + FOREACH(i RANGE ${listCount}) + LIST(GET args ${i} val) + + IF(append_rest) + LIST(APPEND newargs ${val}) + ELSE(append_rest) + IF("${val}" STREQUAL "PATHS") + LIST(APPEND newargs ${val}) + SET(append_rest 1) + ELSE("${val}" STREQUAL "PATHS") + LIST(APPEND libnames_release "${val}") + LIST(APPEND libnames_debug "${val}${dgb_postfix}") + ENDIF("${val}" STREQUAL "PATHS") + ENDIF(append_rest) + + ENDFOREACH(i) + + ELSE("${libname}" STREQUAL "NAMES") + + # just one name + LIST(APPEND libnames_release "${libname}") + LIST(APPEND libnames_debug "${libname}${dgb_postfix}") + + SET(newargs ${args}) + + ENDIF("${libname}" STREQUAL "NAMES") + + # search the release lib + FIND_LIBRARY(${var_name}_RELEASE + NAMES ${libnames_release} + ${newargs} + ) + + # search the debug lib + FIND_LIBRARY(${var_name}_DEBUG + NAMES ${libnames_debug} + ${newargs} + ) + + IF(${var_name}_RELEASE AND ${var_name}_DEBUG) + + # both libs found + SET(${var_name} optimized ${${var_name}_RELEASE} + debug ${${var_name}_DEBUG}) + + ELSE(${var_name}_RELEASE AND ${var_name}_DEBUG) + + IF(${var_name}_RELEASE) + + # only release found + SET(${var_name} ${${var_name}_RELEASE}) + + ELSE(${var_name}_RELEASE) + + # only debug (or nothing) found + SET(${var_name} ${${var_name}_DEBUG}) + + ENDIF(${var_name}_RELEASE) + + ENDIF(${var_name}_RELEASE AND ${var_name}_DEBUG) + + MARK_AS_ADVANCED(${var_name}_RELEASE) + MARK_AS_ADVANCED(${var_name}_DEBUG) + + ENDIF(NOT WIN32) + + ENDIF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + +ENDMACRO(FIND_LIBRARY_WITH_DEBUG) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 44cfa50f..2b5313d9 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -10,11 +10,11 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -include(FindLibraryEx) +INCLUDE(FindLibraryWithDebug) # on win32 we additional need to link to libeay32.lib MACRO(OPENSSL_ADD_LIB_EAY_LIBS) - FIND_LIBRARY_EX(OPENSSL_EAY_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(OPENSSL_EAY_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES eay libeay libeay32 libeay32MD) ENDMACRO(OPENSSL_ADD_LIB_EAY_LIBS) @@ -29,7 +29,7 @@ ENDIF(SSL_EAY_DEBUG AND SSL_EAY_RELEASE) FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h ) -FIND_LIBRARY_EX(OPENSSL_LIBRARIES +FIND_LIBRARY_WITH_DEBUG(OPENSSL_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES ssl ssleay ssleay32 ssleay32MD) diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 2f4835bf..877e4143 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -14,7 +14,7 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -include(FindLibraryEx) +include(FindLibraryWithDebug) if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) @@ -36,7 +36,7 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) NO_DEFAULT_PATH ) ELSE (NOT WIN32) - FIND_LIBRARY_EX(QCA2_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(QCA2_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES qca) diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 7857cbdb..f5d23b3b 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -6,6 +6,7 @@ if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) set(Soprano_FOUND TRUE) else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) + INCLUDE(FindLibraryWithDebug) FIND_PATH(SOPRANO_INCLUDE_DIR NAMES @@ -15,7 +16,7 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) ${INCLUDE_INSTALL_DIR} ) - FIND_LIBRARY_EX(SOPRANO_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES soprano PATHS diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index f0d1e03b..0d4435e3 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -6,7 +6,7 @@ # STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer # STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams -include(FindLibraryEx) +include(FindLibraryWithDebug) set(STRIGI_MIN_VERSION "0.5.3") @@ -22,7 +22,7 @@ find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h NO_DEFAULT_PATH ) -find_library_ex(STRIGI_STREAMANALYZER_LIBRARY +find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streamanalyzer PATHS @@ -31,7 +31,7 @@ find_library_ex(STRIGI_STREAMANALYZER_LIBRARY ${_program_FILES_DIR}/strigi/lib ) -find_library_ex(STRIGI_STREAMS_LIBRARY +find_library_with_debug(STRIGI_STREAMS_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streams PATHS @@ -40,7 +40,7 @@ find_library_ex(STRIGI_STREAMS_LIBRARY ${_program_FILES_DIR}/strigi/lib ) -find_library_ex(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY +find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY WIN32_DEBUG_POSTFIX d NAMES strigiqtdbusclient PATHS diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 7b5ffc39..a66ae57b 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -10,8 +10,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -include(FindLibraryEx) - IF(NOT WIN32) FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS /usr/bin @@ -37,6 +35,9 @@ IF(TAGLIBCONFIG_EXECUTABLE) MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) ELSE(TAGLIBCONFIG_EXECUTABLE) + include(FindLibraryWithDebug) + include(FindPackageHandleStandardArgs) + find_path(TAGLIB_INCLUDES NAMES tag.h @@ -46,7 +47,7 @@ ELSE(TAGLIBCONFIG_EXECUTABLE) ${INCLUDE_INSTALL_DIR} ) - FIND_LIBRARY_EX(TAGLIB_LIBRARIES + find_library_with_debug(TAGLIB_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES tag PATHS @@ -54,7 +55,6 @@ ELSE(TAGLIBCONFIG_EXECUTABLE) ${LIB_INSTALL_DIR} ) - INCLUDE(FindPackageHandleStandardArgs) find_package_handle_standard_args(Taglib DEFAULT_MSG TAGLIB_INCLUDES TAGLIB_LIBRARIES) ENDIF(TAGLIBCONFIG_EXECUTABLE) -- cgit v1.2.1 From 1d1023ac8eab9d4471ae3ea31f458359e18d4f24 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 1 Oct 2007 13:36:29 +0000 Subject: There is no reason to export KDE4_APPLNK_INSTALL_DIR to the outside; define it only within kdelibs (so that KStandardDirs can look there for compatibility), but don't tempt people into installing new stuff into that dir. svn path=/trunk/KDE/kdelibs/; revision=719613 --- modules/FindKDE4Internal.cmake | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 72686c84..a1e5efce 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -103,9 +103,8 @@ # DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) # DBUS_SERVICES_INSTALL_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) # -# The following variables are provided, but are seem to be unused: +# The following variable is provided, but seem to be unused: # LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") -# APPLNK_INSTALL_DIR /share/applnk CACHE STRING "Is this still used ?") # # The following user adjustable options are provided: # @@ -552,8 +551,6 @@ _set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "Th _set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") _set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") -# this one shouldn't be used anymore -_set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") _set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") _set_fancy(XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") -- cgit v1.2.1 From 0bfac8ba14c487f3e798a4c71ea373f56e19e16d Mon Sep 17 00:00:00 2001 From: Matthew Woehlke Date: Tue, 2 Oct 2007 03:25:09 +0000 Subject: kdefx is dead. Long live... something that is not kdefx :-). Here's to hoping I found all the users first. I sure tried. svn path=/trunk/KDE/kdelibs/; revision=719903 --- modules/FindKDE4Internal.cmake | 6 ------ 1 file changed, 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a1e5efce..9bc4888a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -37,7 +37,6 @@ # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONON_LIBRARY - the phonon library # KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library -# KDE4_KDEFX_LIBRARY - the kdefx library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library # KDE4_SOLID_LIBRARY - the solid library # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library @@ -64,7 +63,6 @@ # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries # KDE4_PHONON_LIBS - the phonon library and all depending librairies -# KDE4_KDEFX_LIBS - the kdefx library and all depending librairies # KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries # KDE4_SOLID_LIBS - the solid library and all depending libraries # KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries @@ -258,7 +256,6 @@ if (_kdeBootStrapping) set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) - set(KDE4_KDEFX_LIBS ${KDE4_KDEFX_LIBS} kdefx) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) set(KDE4_PHONON_LIBS ${QT_QTDBUS_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} phonon) set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) @@ -346,9 +343,6 @@ else (_kdeBootStrapping) find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - find_library(KDE4_KDEFX_LIBRARY NAMES kdefx PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEFX_LIBS ${kdefx_LIB_DEPENDS} ${KDE4_KDEFX_LIBRARY} ) - find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) -- cgit v1.2.1 From 7016b3045eff834557266cf13a63a2b304fe1967 Mon Sep 17 00:00:00 2001 From: Anders Lund Date: Tue, 2 Oct 2007 08:53:37 +0000 Subject: Find libraries in $STRIGI_HOME instead of system ones, as discussed with Vir on irc svn path=/trunk/KDE/kdelibs/; revision=720053 --- modules/FindStrigi.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 0d4435e3..e7967367 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -29,6 +29,7 @@ find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib + NO_DEFAULT_PATH ) find_library_with_debug(STRIGI_STREAMS_LIBRARY @@ -38,6 +39,7 @@ find_library_with_debug(STRIGI_STREAMS_LIBRARY $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib + NO_DEFAULT_PATH ) find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY @@ -47,6 +49,7 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib + NO_DEFAULT_PATH ) -- cgit v1.2.1 From 1c2cdb9af5e5c766014dcd7396e94af7cae25872 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 2 Oct 2007 23:04:35 +0000 Subject: When looking for local libs in extragear, allow extragear to be configured as a whole instead of per-subdir. svn path=/trunk/KDE/kdelibs/; revision=720306 --- modules/FindKdcraw.cmake | 2 +- modules/FindKexiv2.cmake | 2 +- modules/FindKipi.cmake | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index ebd37382..8a903309 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -20,7 +20,7 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) # Check if library is not in local sub-folder - FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/version.h ${CMAKE_BINARY_DIR}/libkdcraw NO_DEFAULT_PATH) + FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/version.h ${CMAKE_BINARY_DIR}/libkdcraw ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) if (KDCRAW_LOCAL_FOUND) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index a94658ea..f493da41 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -20,7 +20,7 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) # Check if library is not in local sub-folder - FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 NO_DEFAULT_PATH) + FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) if (KEXIV2_LOCAL_FOUND) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 4cc48159..863f47fc 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -20,7 +20,7 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) # Check if library is not in local sub-folder - FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi NO_DEFAULT_PATH) + FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) if (KIPI_LOCAL_FOUND) -- cgit v1.2.1 From 51d39c2e434b820c555dc249d47e69c840d9db00 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Tue, 2 Oct 2007 23:45:16 +0000 Subject: extract kpty* into an own lib svn path=/trunk/KDE/kdelibs/; revision=720322 --- modules/FindKDE4Internal.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9bc4888a..778a4534 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -62,6 +62,7 @@ # KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries +# KDE4_KPTY_LIBS - the kpty library and all depending libraries # KDE4_PHONON_LIBS - the phonon library and all depending librairies # KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries # KDE4_SOLID_LIBS - the solid library and all depending libraries @@ -254,6 +255,9 @@ if (_kdeBootStrapping) set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) + if (UNIX) + set(KDE4_KPTY_LIBS ${KDE4_KDECORE_LIBS} kpty) + endif (UNIX) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) @@ -374,6 +378,9 @@ else (_kdeBootStrapping) set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) if (UNIX) + find_library(KDE4_KPTY_LIBRARY NAMES kpty PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KPTY_LIBS ${kpty_LIB_DEPENDS} ${KDE4_KPTY_LIBRARY} ) + find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) endif (UNIX) -- cgit v1.2.1 From 56a4726821f27c4537c729cd68ba2307db727fdc Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 3 Oct 2007 13:41:51 +0000 Subject: we need Strigi 0.5.5 now svn path=/trunk/KDE/kdelibs/; revision=720685 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index e7967367..78e32dd1 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -8,7 +8,7 @@ include(FindLibraryWithDebug) -set(STRIGI_MIN_VERSION "0.5.3") +set(STRIGI_MIN_VERSION "0.5.5") if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) -- cgit v1.2.1 From 320616a8cbbc65b69e1e78bae0b5ba805e445326 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 3 Oct 2007 15:51:52 +0000 Subject: sopranoindex and sopranoclient also have a debug postfix on win32 svn path=/trunk/KDE/kdelibs/; revision=720734 --- modules/FindLibraryWithDebug.cmake | 1 + modules/FindSoprano.cmake | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindLibraryWithDebug.cmake b/modules/FindLibraryWithDebug.cmake index d3450a2a..a2593974 100644 --- a/modules/FindLibraryWithDebug.cmake +++ b/modules/FindLibraryWithDebug.cmake @@ -32,6 +32,7 @@ MACRO(FIND_LIBRARY_WITH_DEBUG var_name win32_dbg_postfix_name dgb_postfix libnam # 1. get all possible libnames SET(args ${ARGN}) + SET(newargs "") SET(libnames_release "") SET(libnames_debug "") diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index f5d23b3b..e09a311e 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -24,8 +24,8 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) ${LIB_INSTALL_DIR} ) - - FIND_LIBRARY(SOPRANO_INDEX_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_INDEX_LIBRARIES + WIN32_DEBUG_POSTFIX d NAMES sopranoindex PATHS @@ -33,7 +33,8 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) ${LIB_INSTALL_DIR} ) - FIND_LIBRARY(SOPRANO_CLIENT_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_CLIENT_LIBRARIES + WIN32_DEBUG_POSTFIX d NAMES sopranoclient PATHS -- cgit v1.2.1 From 588db94185d429593dcb23473c00b29cd32f3229 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 3 Oct 2007 17:39:32 +0000 Subject: fixes for KDE4_ADD_WIN32_APP_ICON - merged dir/pattern parameter into one parameter - implemented regular expression search for application icons - excluded icons with size 22x22, they are not allowed on windows - added a workaround for non working add_custom_command svn path=/trunk/KDE/kdelibs/; revision=720773 --- modules/KDE4Macros.cmake | 39 ++++++++++++++++++++++++++++----------- 1 file changed, 28 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 605d6aed..98e00c7b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -19,7 +19,7 @@ # KDE4_REMOVE_OBSOLETE_CMAKE_FILES # KDE4_NO_ENABLE_FINAL # KDE4_CREATE_HANDBOOK -# KDE4_ADD_APP_ICON (Use on Win32) +# KDE4_ADD_WIN32_APP_ICON (Use on Win32) # KDE4_CREATE_MANPAGE # Copyright (c) 2006, 2007, Alexander Neundorf, @@ -941,21 +941,38 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) endmacro (KDE4_CREATE_HTML_HANDBOOK) -# -# add application icon to a set of source files -# -macro (KDE4_ADD_WIN32_APP_ICON outfiles) +# adds application icon to target source list +# 'outfiles' - specifies the list of source files +# 'pattern' - regular expression for searching application icons +# example: KDE4_ADD_WIN32_APP_ICON(myapp_sources "pics/cr*-myapp.png") + +macro (KDE4_ADD_WIN32_APP_ICON outfiles pattern) if (WIN32) - FOREACH (it ${ARGN}) + #if (NOT PNG2ICO_EXECUTABLE) + # find_executable(PNG2ICO_EXECUTABLE + #endif (NOT PNG2ICO_EXECUTABLE) + file(GLOB files "${pattern}") + MESSAGE(${files}) + FOREACH (it ${files}) GET_FILENAME_COMPONENT(_name ${it} NAME_WE) - set (_icons ${_icons} ${it}) + #exclude 22'er icons, they does not fix into ico format + if (it MATCHES ".*22-.*") + else(it MATCHES ".*22-.*") + set (_icons "${_icons} ${it}") + endif (it MATCHES ".*22-.*") ENDFOREACH (it) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name}) - add_custom_command(OUTPUT ${_outfilename}.ico - COMMAND png2ico - ARGS ${_outfilename}.ico ${_icons} - DEPENDS ${_icons} + # png2ico is located in the recommended kdewin32 package + MESSAGE("png2ico ${_outfilename}.ico ${_icons}") + EXEC_PROGRAM(png2ico + ARGS ${_outfilename}.ico ${_icons} ) +# does not work for unkwown reason +# add_custom_command(OUTPUT ${_outfilename}.ico +# COMMAND c:/Programme/kdewin-msvc/bin/png2ico.exe +# ARGS ${_outfilename}.ico ${_icons} +# DEPENDS ${_icons} +# ) file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n") if (MINGW) add_custom_command(OUTPUT ${_outfilename}_res.o -- cgit v1.2.1 From 430e3ca856e28e7bbda4d03dbe2037038c6e6cfa Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 4 Oct 2007 07:00:34 +0000 Subject: Remove not necessary path svn path=/trunk/KDE/kdelibs/; revision=720967 --- modules/FindTaglib.cmake | 2 -- modules/FindXmms.cmake | 6 ++---- 2 files changed, 2 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index a66ae57b..225fa53d 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -12,8 +12,6 @@ IF(NOT WIN32) FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS - /usr/bin - /usr/local/bin ${BIN_INSTALL_DIR} ) ENDIF(NOT WIN32) diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index 8718baf6..6b93a916 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -1,6 +1,6 @@ # Search xmms # -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006, 2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -9,9 +9,7 @@ OPTION(KDE4_XMMS "enable support for XMMS") if(KDE4_XMMS) - FIND_PROGRAM(XMMSCONFIG_EXECUTABLE NAMES xmms-config PATHS - /usr/bin - /usr/local/bin + FIND_PROGRAM(XMMSCONFIG_EXECUTABLE NAMES xmms-config ) #reset vars set(XMMS_LIBRARIES) -- cgit v1.2.1 From cf18b4ca7c49a50809a199b74e0d6cc681d8efb1 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Thu, 4 Oct 2007 20:28:18 +0000 Subject: all docbooks have to be installed, not just index.docbook svn path=/trunk/KDE/kdelibs/; revision=721224 --- modules/KDE4Macros.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 98e00c7b..525fde55 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -299,7 +299,8 @@ macro (KDE4_CREATE_HANDBOOK _docbook) if(_installDest) file(GLOB _images *.png) - install(FILES ${_doc} ${_input} ${_images} DESTINATION ${_installDest}/${dirname}) + file(GLOB _docs *.docbook) + install(FILES ${_docs} ${_input} ${_images} DESTINATION ${_installDest}/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) # execute some cmake code on make install which creates the symlink -- cgit v1.2.1 From fa5d3e29e15ca0831a1b26c1669627e7a625dcbc Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 5 Oct 2007 09:14:03 +0000 Subject: Merged KIO::JobFlags branch svn path=/trunk/KDE/kdelibs/; revision=721447 --- modules/FindKDE4Internal.cmake | 6 ++++++ modules/FindQt4.cmake | 5 +++++ 2 files changed, 11 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 778a4534..d4ac2e8a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -212,6 +212,9 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if(KDE4_FOUND) + # Already found in this cmake run, nothing more to do +else(KDE4_FOUND) include (MacroEnsureVersion) @@ -972,3 +975,6 @@ if (NOT _kde4_uninstall_rule_created) add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake") endif (NOT _kde4_uninstall_rule_created) + +endif(KDE4_FOUND) + diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2a52a5f0..36b64088 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -181,6 +181,10 @@ # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. +if (QT4_QMAKE_FOUND) + # Check already done in this cmake run, nothing more to do + +else (QT4_QMAKE_FOUND) INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) @@ -1241,4 +1245,5 @@ ELSE(QT4_QMAKE_FOUND) ENDIF(Qt4_FIND_REQUIRED) ENDIF (QT4_QMAKE_FOUND) +ENDIF (QT4_QMAKE_FOUND) -- cgit v1.2.1 From ff59b701fa4017082031812223ac4a3507a9d5e5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 5 Oct 2007 16:07:08 +0000 Subject: -make it possible for the module user to override the required strigi version Alex svn path=/trunk/KDE/kdelibs/; revision=721587 --- modules/FindStrigi.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 78e32dd1..e67618ef 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -8,7 +8,9 @@ include(FindLibraryWithDebug) -set(STRIGI_MIN_VERSION "0.5.5") +if(NOT STRIGI_MIN_VERSION) + set(STRIGI_MIN_VERSION "0.5.5") +endif(NOT STRIGI_MIN_VERSION) if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) -- cgit v1.2.1 From 462a82fbaa136f32f4d119953dd5cd94018f87ab Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Fri, 5 Oct 2007 22:21:25 +0000 Subject: Merge the KConfig branch. This are the 3 main modules (+kdeadmin), which are needed now because friday is the last BC day. The rest of the modules will follow as fast as my laptop allows. svn path=/trunk/KDE/kdelibs/; revision=721704 --- modules/FindNepomuk.cmake | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index e01741e7..c8c4aec5 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -22,15 +22,7 @@ FIND_LIBRARY(NEPOMUK_LIBRARY ${LIB_INSTALL_DIR} ) -FIND_LIBRARY(NEPOMUK_MIDDLEWARE_LIBRARY - NAMES - nepomuk-middleware - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - -set(NEPOMUK_LIBRARIES ${NEPOMUK_LIBRARY} ${NEPOMUK_MIDDLEWARE_LIBRARY}) +set(NEPOMUK_LIBRARIES ${NEPOMUK_LIBRARY}) if(NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) set(Nepomuk_FOUND TRUE) -- cgit v1.2.1 From 43fe390dd074582295bcd2a0f023188b01958c5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Burkhard=20L=C3=BCck?= Date: Sat, 6 Oct 2007 07:12:07 +0000 Subject: dont install index.docbook twice CCMAIL:aacid@kde.org svn path=/trunk/KDE/kdelibs/; revision=721847 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 525fde55..ecbad889 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -300,7 +300,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) if(_installDest) file(GLOB _images *.png) file(GLOB _docs *.docbook) - install(FILES ${_docs} ${_input} ${_images} DESTINATION ${_installDest}/${dirname}) + install(FILES ${_docs} ${_images} DESTINATION ${_installDest}/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) # execute some cmake code on make install which creates the symlink -- cgit v1.2.1 From fc8329f8573fe63c8ea7225b94a1497b57f7c304 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Sun, 7 Oct 2007 13:48:56 +0000 Subject: do not depend only on index.docbook but on all docbooks to trigger recompilation found while working on ktuberling docu svn path=/trunk/KDE/kdelibs/; revision=722511 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ecbad889..b9eea1f8 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -262,9 +262,10 @@ macro (KDE4_CREATE_HANDBOOK _docbook) set(_bootstrapOption) endif (_kdeBootStrapping) + file(GLOB _docs *.docbook) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} --cache ${_doc} ${_input} - DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} + DEPENDS ${_docs} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) add_custom_target(handbook ALL DEPENDS ${_doc}) @@ -299,7 +300,6 @@ macro (KDE4_CREATE_HANDBOOK _docbook) if(_installDest) file(GLOB _images *.png) - file(GLOB _docs *.docbook) install(FILES ${_docs} ${_images} DESTINATION ${_installDest}/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) -- cgit v1.2.1 From 153d1df182a833c0f5ce71fc9105a2b475152c68 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 7 Oct 2007 14:16:28 +0000 Subject: NO_DEFAULT_PATH is not good on win32 - remove it for windows svn path=/trunk/KDE/kdelibs/; revision=722518 --- modules/FindStrigi.cmake | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index e67618ef..f90e3bd6 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -14,6 +14,9 @@ endif(NOT STRIGI_MIN_VERSION) if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) + set(STRIGI_NO_DEF_PATH "") +else(WIN32) + set(STRIGI_NO_DEF_PATH NO_DEFAULT_PATH) endif(WIN32) find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h @@ -21,7 +24,7 @@ find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h $ENV{STRIGI_HOME}/include ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include - NO_DEFAULT_PATH + ${STRIGI_NO_DEF_PATH} ) find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY @@ -31,7 +34,7 @@ find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib - NO_DEFAULT_PATH + ${STRIGI_NO_DEF_PATH} ) find_library_with_debug(STRIGI_STREAMS_LIBRARY @@ -41,7 +44,7 @@ find_library_with_debug(STRIGI_STREAMS_LIBRARY $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib - NO_DEFAULT_PATH + ${STRIGI_NO_DEF_PATH} ) find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY @@ -51,7 +54,7 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY $ENV{STRIGI_HOME}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib - NO_DEFAULT_PATH + ${STRIGI_NO_DEF_PATH} ) -- cgit v1.2.1 From 133a932ce19147d9f46fd05c7501a78ea6fc5f66 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Tue, 9 Oct 2007 17:33:54 +0000 Subject: Also check for Soprano index, server, and client libs svn path=/trunk/KDE/kdelibs/; revision=723443 --- modules/FindSoprano.cmake | 34 +++++++++++++++++++++++++++------- 1 file changed, 27 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index e09a311e..6c5d687f 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -1,11 +1,11 @@ -if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) +if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) # read from cache set(Soprano_FOUND TRUE) -else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) +else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) INCLUDE(FindLibraryWithDebug) FIND_PATH(SOPRANO_INCLUDE_DIR @@ -24,7 +24,8 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_INDEX_LIBRARIES + + FIND_LIBRARY_WITH_DEBUG(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoindex @@ -33,7 +34,7 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_CLIENT_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_CLIENT_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoclient @@ -42,11 +43,30 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) ${LIB_INSTALL_DIR} ) - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) + FIND_LIBRARY_WITH_DEBUG(SOPRANO_SERVER_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES + sopranoserver + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) set(Soprano_FOUND TRUE) + endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + + if(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) set(SopranoIndex_FOUND TRUE) + endif(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) + + if(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) set(SopranoClient_FOUND TRUE) - endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) + endif(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) + + if(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) + set(SopranoServer_FOUND TRUE) + endif(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) @@ -72,4 +92,4 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) endif(Soprano_FIND_REQUIRED) endif(Soprano_FOUND) -endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) +endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) -- cgit v1.2.1 From 7c0735f604c05b3b28640adba96d522008d3bb87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Burkhard=20L=C3=BCck?= Date: Wed, 10 Oct 2007 06:08:56 +0000 Subject: install also index.cache.bz2 which is used by khelpcenter CCMAIL:tsdgeos@terra.es svn path=/trunk/KDE/kdelibs/; revision=723587 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b9eea1f8..0c79e45c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -300,7 +300,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) if(_installDest) file(GLOB _images *.png) - install(FILES ${_docs} ${_images} DESTINATION ${_installDest}/${dirname}) + install(FILES ${_doc} ${_docs} ${_images} DESTINATION ${_installDest}/${dirname}) # TODO symlinks on non-unix platforms if (UNIX) # execute some cmake code on make install which creates the symlink -- cgit v1.2.1 From ce908ad54e4c633fdb557edb073b03d2630b358e Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Wed, 10 Oct 2007 06:42:52 +0000 Subject: Make sure to not use an old version of Soprano. Sorry for the previous breaking. svn path=/trunk/KDE/kdelibs/; revision=723600 --- modules/FindSoprano.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 6c5d687f..caf52b2b 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -52,9 +52,11 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S ${LIB_INSTALL_DIR} ) - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + # check for all the libs as required to make sure that we do not try to compile with an old version + # FIXME: introduce a Soprano version check + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) set(Soprano_FOUND TRUE) - endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) if(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) set(SopranoIndex_FOUND TRUE) -- cgit v1.2.1 From 196d3adb29445a643059a3b2fd60814e6d30b5ce Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 11 Oct 2007 09:29:35 +0000 Subject: workaround for cmake error: "syntax error, unexpected cal_ERROR, expecting $end (19)," on win32 svn path=/trunk/KDE/kdelibs/; revision=724081 --- modules/FindLibraryWithDebug.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindLibraryWithDebug.cmake b/modules/FindLibraryWithDebug.cmake index a2593974..9022d80c 100644 --- a/modules/FindLibraryWithDebug.cmake +++ b/modules/FindLibraryWithDebug.cmake @@ -31,7 +31,10 @@ MACRO(FIND_LIBRARY_WITH_DEBUG var_name win32_dbg_postfix_name dgb_postfix libnam ELSE(NOT WIN32) # 1. get all possible libnames - SET(args ${ARGN}) + LIST(LENGTH ARGN listCount) + if (listCount GREATER 0) + set (args ${ARGN}) + endif (listCount GREATER 0) SET(newargs "") SET(libnames_release "") SET(libnames_debug "") -- cgit v1.2.1 From 1f61714735fa73514aafaa29601d79b1b86f76bd Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 11 Oct 2007 15:36:20 +0000 Subject: win32 fix: avoid adding QtCrypto multiple times to QCA_INCLUDE_DIR svn path=/trunk/KDE/kdelibs/; revision=724146 --- modules/FindQCA2.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 877e4143..0e4b5892 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -40,10 +40,10 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) WIN32_DEBUG_POSTFIX d NAMES qca) - FIND_PATH(QCA2_INCLUDE_DIR QtCrypto/qca.h) - IF(QCA2_INCLUDE_DIR) - SET(QCA2_INCLUDE_DIR ${QCA2_INCLUDE_DIR}/QtCrypto CACHE TYPE PATH FORCE) - ENDIF(QCA2_INCLUDE_DIR) + FIND_PATH(QCA2_INCLUDE_DIR_tmp QtCrypto/qca.h) + IF(QCA2_INCLUDE_DIR_tmp) + SET(QCA2_INCLUDE_DIR ${QCA2_INCLUDE_DIR_tmp}/QtCrypto CACHE TYPE PATH FORCE) + ENDIF(QCA2_INCLUDE_DIR_tmp) ENDIF (NOT WIN32) -- cgit v1.2.1 From d260babfdd862601fb6872bde79369ab66f00b77 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 11 Oct 2007 19:03:39 +0000 Subject: I'm sorry Ralf, but your fix was wrong and breaks build. The error is in FindStrigi.cmake which adds paths without converting them to cmake (==unix) style svn path=/trunk/KDE/kdelibs/; revision=724221 --- modules/FindLibraryWithDebug.cmake | 5 +---- modules/FindStrigi.cmake | 12 ++++++++---- 2 files changed, 9 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindLibraryWithDebug.cmake b/modules/FindLibraryWithDebug.cmake index 9022d80c..a2593974 100644 --- a/modules/FindLibraryWithDebug.cmake +++ b/modules/FindLibraryWithDebug.cmake @@ -31,10 +31,7 @@ MACRO(FIND_LIBRARY_WITH_DEBUG var_name win32_dbg_postfix_name dgb_postfix libnam ELSE(NOT WIN32) # 1. get all possible libnames - LIST(LENGTH ARGN listCount) - if (listCount GREATER 0) - set (args ${ARGN}) - endif (listCount GREATER 0) + SET(args ${ARGN}) SET(newargs "") SET(libnames_release "") SET(libnames_debug "") diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index f90e3bd6..c15e57e2 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -14,14 +14,18 @@ endif(NOT STRIGI_MIN_VERSION) if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) + string(REPLACE "\\" "/" _program_FILES_DIR ${_program_FILES_DIR}) set(STRIGI_NO_DEF_PATH "") else(WIN32) set(STRIGI_NO_DEF_PATH NO_DEFAULT_PATH) endif(WIN32) +string(REPLACE "\\" "/" strigi_home $ENV{STRIGI_HOME}) +message(STATUS "strigi_home: ${strigi_home}") + find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS - $ENV{STRIGI_HOME}/include + ${strigi_home}/include ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include ${STRIGI_NO_DEF_PATH} @@ -31,7 +35,7 @@ find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streamanalyzer PATHS - $ENV{STRIGI_HOME}/lib + ${strigi_home}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ${STRIGI_NO_DEF_PATH} @@ -41,7 +45,7 @@ find_library_with_debug(STRIGI_STREAMS_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streams PATHS - $ENV{STRIGI_HOME}/lib + ${strigi_home}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ${STRIGI_NO_DEF_PATH} @@ -51,7 +55,7 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY WIN32_DEBUG_POSTFIX d NAMES strigiqtdbusclient PATHS - $ENV{STRIGI_HOME}/lib + ${strigi_home}/lib ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib ${STRIGI_NO_DEF_PATH} -- cgit v1.2.1 From 4604ba2ba8813205b36cd3fe7b91e6a37ccebe43 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 11 Oct 2007 20:13:32 +0000 Subject: cmake's string handling is suboptimal... :( svn path=/trunk/KDE/kdelibs/; revision=724235 --- modules/FindStrigi.cmake | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index c15e57e2..f28f733a 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -14,14 +14,13 @@ endif(NOT STRIGI_MIN_VERSION) if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) - string(REPLACE "\\" "/" _program_FILES_DIR ${_program_FILES_DIR}) + string(REPLACE "\\" "/" _program_FILES_DIR "${_program_FILES_DIR}") set(STRIGI_NO_DEF_PATH "") else(WIN32) set(STRIGI_NO_DEF_PATH NO_DEFAULT_PATH) endif(WIN32) -string(REPLACE "\\" "/" strigi_home $ENV{STRIGI_HOME}) -message(STATUS "strigi_home: ${strigi_home}") +string(REPLACE "\\" "/" strigi_home "$ENV{STRIGI_HOME}") find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS -- cgit v1.2.1 From 5f04433168efd8e167fc79e817ba863959db1880 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 18 Oct 2007 14:25:04 +0000 Subject: extragear-libs might be installed in KDE4 prefix as well so look there svn path=/trunk/KDE/kdelibs/; revision=726670 --- modules/FindKipi.cmake | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 863f47fc..dcf04e5b 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -19,8 +19,8 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) message(STATUS "Check Kipi library in local sub-folder...") # Check if library is not in local sub-folder - - FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + + find_file (KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) if (KIPI_LOCAL_FOUND) @@ -29,22 +29,22 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) set(KIPI_LIBRARIES kipi) message(STATUS "Found Kipi library in local sub-folder: ${KIPI_LIBRARIES}") set(KIPI_FOUND TRUE) - MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) + mark_as_advanced(KIPI_INCLUDE_DIR KIPI_LIBRARIES) else(KIPI_LOCAL_FOUND) - if(NOT WIN32) + if(NOT WIN32) message(STATUS "Check Kipi library using pkg-config...") # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) - + PKGCONFIG(libkipi _KIPIIncDir _KIPILinkDir _KIPILinkFlags _KIPICflags) - + if(_KIPILinkFlags) # query pkg-config asking for a libkipi >= 0.2.0 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkipi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkipi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") message(STATUS "Found libkipi release >= 0.2.0") set(KIPI_VERSION_GOOD_FOUND TRUE) @@ -58,20 +58,14 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) set(KIPI_FOUND FALSE) endif(_KIPILinkFlags) else(NOT WIN32) - set(KIPI_VERSION_GOOD_FOUND TRUE) + set(KIPI_VERSION_GOOD_FOUND TRUE) endif(NOT WIN32) if(KIPI_VERSION_GOOD_FOUND) set(KIPI_DEFINITIONS ${_KIPICflags}) - - FIND_PATH(KIPI_INCLUDE_DIR libkipi/version.h - ${_KIPIIncDir} - ) - - FIND_LIBRARY(KIPI_LIBRARIES NAMES kipi - PATHS - ${_KIPILinkDir} - ) - + + find_path(KIPI_INCLUDE_DIR NAMES libkipi/version.h PATHS ${KDE4_INCLUDE_DIR} ${_KIPIIncDir}) + find_library(KIPI_LIBRARIES NAMES kipi PATHS ${KDE4_LIB_DIR} ${_KIPILinkDir}) + if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) set(KIPI_FOUND TRUE) endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) -- cgit v1.2.1 From 088286a94a427fb4aa665fff9daac3fa5a474df0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 18 Oct 2007 15:15:13 +0000 Subject: the package config file is qca2.pc, not qca svn path=/trunk/KDE/kdelibs/; revision=726683 --- modules/FindQCA2.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 0e4b5892..b0f898f7 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -26,7 +26,7 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) INCLUDE(UsePkgConfig) IF (NOT WIN32) - PKGCONFIG(qca QCA2_INCLUDE_DIR _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) + PKGCONFIG(qca2 QCA2_INCLUDE_DIR _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) set(QCA2_DEFINITIONS ${_Qca2Cflags}) -- cgit v1.2.1 From 9b0119c83769c87434a97b278c71c949e2340763 Mon Sep 17 00:00:00 2001 From: Charles Samuels Date: Mon, 22 Oct 2007 16:12:19 +0000 Subject: allow enable-final on kdepimlibs svn path=/trunk/KDE/kdelibs/; revision=728169 --- modules/KDE4Macros.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0c79e45c..e37eeb32 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -486,11 +486,12 @@ macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesExcludedFromFinalFile ) # don't include c-files in the final-file, because they usually come # from a 3rd party and as such are not intended to be compiled all-in-one string(REGEX MATCH ".+\\.c$" _isCFile ${_abs_FILE}) - if (_isCFile) + string(REGEX MATCH ".+\\.h$" _isHFile ${_abs_FILE}) + if (_isCFile OR _isHFile) list(APPEND ${_filesExcludedFromFinalFile} ${_abs_FILE}) - else (_isCFile) + else (_isCFile OR _isHFile) file(APPEND ${_filenameCPP} "#include \"${_abs_FILE}\"\n") - endif (_isCFile) + endif (_isCFile OR _isHFile) endif (_isGenerated) endforeach (_current_FILE) -- cgit v1.2.1 From f32f8b49d6db6bef172ce2a635c1926cb72ea07e Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Mon, 22 Oct 2007 21:00:04 +0000 Subject: Goodbye, libkdeprint, how we loved thee. svn path=/trunk/KDE/kdelibs/; revision=728266 --- modules/FindCups.cmake | 56 ------------------------------------------ modules/FindKDE4Internal.cmake | 5 ---- 2 files changed, 61 deletions(-) delete mode 100644 modules/FindCups.cmake (limited to 'modules') diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake deleted file mode 100644 index c0afec9f..00000000 --- a/modules/FindCups.cmake +++ /dev/null @@ -1,56 +0,0 @@ -# - Try to find the Cups printing system -# Once done this will define -# -# CUPS_FOUND - system has Cups -# CUPS_INCLUDE_DIR - the Cups include directory -# CUPS_LIBRARIES - Libraries needed to use Cups -# Set CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE if you need a version which -# features this function (i.e. at least 1.1.19) -# Set CUPS_REQUIRE_CUPS_DO_AUTHENTICATION to TRUE if you need a version which -# features this function (i.e. at least 1.1.20) - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -INCLUDE(CheckLibraryExists) - -FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h ) - -FIND_LIBRARY(CUPS_LIBRARIES NAMES cups ) - -IF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - SET(CUPS_FOUND TRUE) - GET_FILENAME_COMPONENT(CUPS_LIBRARY_DIR "${CUPS_LIBRARIES}" PATH) - - # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) - CHECK_LIBRARY_EXISTS(cups ippDeleteAttribute "${CUPS_LIBRARY_DIR}" CUPS_HAS_IPP_DELETE_ATTRIBUTE) - IF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) - SET(CUPS_FOUND FALSE) - ENDIF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE) - - # cupsDoAuthentication is new in cups-1.1.20 (and used by kdeprint) - CHECK_LIBRARY_EXISTS(cups cupsDoAuthentication "${CUPS_LIBRARY_DIR}" CUPS_HAS_CUPS_DO_AUTHENTICATION) - IF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) - SET(CUPS_FOUND FALSE) - ENDIF (CUPS_REQUIRE_CUPS_DO_AUTHENTICATION AND NOT CUPS_HAS_CUPS_DO_AUTHENTICATION) - -ELSE (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - SET(CUPS_FOUND FALSE) -ENDIF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - -IF (CUPS_FOUND) - IF (NOT Cups_FIND_QUIETLY) - MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARIES}") - ENDIF (NOT Cups_FIND_QUIETLY) -ELSE (CUPS_FOUND) - SET(CUPS_LIBRARIES ) - IF (Cups_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find Cups") - ENDIF (Cups_FIND_REQUIRED) -ENDIF (CUPS_FOUND) - -MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) - diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d4ac2e8a..fdcf14f3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -33,7 +33,6 @@ # KDE4_KHTML_LIBRARY - the khtml library # KDE4_KJS_LIBRARY - the kjs library # KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library -# KDE4_KDEPRINT_LIBRARY - the kdeprint library # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONON_LIBRARY - the phonon library # KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library @@ -59,7 +58,6 @@ # KDE4_KHTML_LIBS - the khtml library and all depending libraries # KDE4_KJS_LIBS - the kjs library and all depending libraries # KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries -# KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries # KDE4_KPTY_LIBS - the kpty library and all depending libraries @@ -377,9 +375,6 @@ else (_kdeBootStrapping) find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) - find_library(KDE4_KDEPRINT_LIBRARY NAMES kdeprint PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEPRINT_LIBS ${kdeprint_LIB_DEPENDS} ${KDE4_KDEPRINT_LIBRARY} ) - if (UNIX) find_library(KDE4_KPTY_LIBRARY NAMES kpty PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KPTY_LIBS ${kpty_LIB_DEPENDS} ${KDE4_KPTY_LIBRARY} ) -- cgit v1.2.1 From e705d741fe590a1889019d2cd7721fffe8c9bcea Mon Sep 17 00:00:00 2001 From: Andriy Rysin Date: Tue, 23 Oct 2007 02:21:45 +0000 Subject: - include xkbfile into FindX11 svn path=/trunk/KDE/kdelibs/; revision=728345 --- modules/FindX11.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 7a456016..bf23d44d 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -25,6 +25,7 @@ # X11_Xinput_INCLUDE_PATH, X11_Xinput_LIB, X11_Xinput_FOUND # X11_Xkb_INCLUDE_PATH, X11_Xkb_FOUND # X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND +# X11_Xkbfile_INCLUDE_PATH, X11_Xkbfile_LIB, X11_Xkbfile_FOUND # X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND # X11_XTest_INCLUDE_PATH, X11_XTest_LIB, X11_XTest_FOUND # X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND @@ -85,6 +86,7 @@ IF (UNIX) FIND_PATH(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_Xkbfile_INCLUDE_PATH X11/extensions/XKBfile.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH}) @@ -112,6 +114,7 @@ IF (UNIX) FIND_LIBRARY(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_Xkbfile_LIB xkbfile ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH}) @@ -264,6 +267,11 @@ IF (UNIX) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkb_INCLUDE_PATH} ) ENDIF (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH) + IF (X11_Xkbfile_INCLUDE_PATH AND X11_Xkbfile_LIB AND X11_Xlib_INCLUDE_PATH) + SET(X11_Xkbfile_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkbfile_INCLUDE_PATH} ) + ENDIF (X11_Xkbfile_INCLUDE_PATH AND X11_Xkbfile_LIB AND X11_Xlib_INCLUDE_PATH) + IF (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB) SET(X11_Xinput_FOUND TRUE) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH}) @@ -408,6 +416,8 @@ IF (UNIX) X11_Xf86misc_INCLUDE_PATH X11_Xkb_INCLUDE_PATH X11_Xkblib_INCLUDE_PATH + X11_Xkbfile_INCLUDE_PATH + X11_Xkbfile_LIB X11_Xscreensaver_INCLUDE_PATH X11_Xscreensaver_LIB X11_Xpm_INCLUDE_PATH -- cgit v1.2.1 From 20206c04dea20cf11ef4dd02357dd2348c164950 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 24 Oct 2007 15:04:14 +0000 Subject: Support for passing "-i includefile" to qdbusxml2cpp. Can be useful for the QList issue of the kcookieserver dbus interface for instance. svn path=/trunk/KDE/kdelibs/; revision=728883 --- modules/FindQt4.cmake | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 36b64088..03f9af27 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1020,15 +1020,20 @@ IF (QT4_QMAKE_FOUND) SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - GET_SOURCE_FILE_PROPERTY(_nonamespace ${_infile} NO_NAMESPACE) + GET_SOURCE_FILE_PROPERTY(_nonamespace ${_interface} NO_NAMESPACE) IF ( _nonamespace ) - SET(_params -N -m -p) + SET(_params -N -m) ELSE ( _nonamespace ) - SET(_params -m -p) + SET(_params -m) ENDIF ( _nonamespace ) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} ${_basename} ${_infile} + GET_SOURCE_FILE_PROPERTY(_include ${_interface} INCLUDE) + IF ( _include ) + SET(_params ${_params} -i ${_include}) + ENDIF ( _include ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} -p ${_basename} ${_infile} DEPENDS ${_infile}) SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) -- cgit v1.2.1 From 28407e8ba0150dc14b6678d3c452ba3931a8d5e7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 29 Oct 2007 13:59:13 +0000 Subject: only put C++ files in the final-file (maybe I should use GET_SOURCE_FILE_PROPERTY(LANGUAGE) for this) Alex svn path=/trunk/KDE/kdelibs/; revision=730753 --- modules/KDE4Macros.cmake | 43 ++++++++++++++++++++----------------------- 1 file changed, 20 insertions(+), 23 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e37eeb32..2bd0581a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -307,7 +307,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${_installDest}/common\" \"${_installDest}/${dirname}/common\" )" ) endif (UNIX) endif(_installDest) - + endmacro (KDE4_CREATE_HANDBOOK) @@ -474,24 +474,21 @@ endmacro (KDE4_INSTALL_ICONS) # compiled all-in-one. macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesExcludedFromFinalFile ) set(${_filesExcludedFromFinalFile}) - file(WRITE ${_filenameCPP} "//autogenerated file\n") + file(WRITE "${_filenameCPP}" "//autogenerated file\n") foreach (_current_FILE ${ARGN}) - get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_abs_FILE "${_current_FILE}" ABSOLUTE) # don't include any generated files in the final-file # because then cmake will not know the dependencies - get_source_file_property(_isGenerated ${_abs_FILE} GENERATED) + get_source_file_property(_isGenerated "${_abs_FILE}" GENERATED) if (_isGenerated) - list(APPEND ${_filesExcludedFromFinalFile} ${_abs_FILE}) + list(APPEND ${_filesExcludedFromFinalFile} "${_abs_FILE}") else (_isGenerated) - # don't include c-files in the final-file, because they usually come - # from a 3rd party and as such are not intended to be compiled all-in-one - string(REGEX MATCH ".+\\.c$" _isCFile ${_abs_FILE}) - string(REGEX MATCH ".+\\.h$" _isHFile ${_abs_FILE}) - if (_isCFile OR _isHFile) - list(APPEND ${_filesExcludedFromFinalFile} ${_abs_FILE}) - else (_isCFile OR _isHFile) - file(APPEND ${_filenameCPP} "#include \"${_abs_FILE}\"\n") - endif (_isCFile OR _isHFile) + # only put C++ files in the final-file + if("${_abs_FILE}" MATCHES ".+\\.(cpp|cc|cxx|C)$") + file(APPEND "${_filenameCPP}" "#include \"${_abs_FILE}\"\n") + else("${_abs_FILE}" MATCHES ".+\\.(cpp|cc|cxx|C)$") + list(APPEND ${_filesExcludedFromFinalFile} "${_abs_FILE}") + endif("${_abs_FILE}" MATCHES ".+\\.(cpp|cc|cxx|C)$") endif (_isGenerated) endforeach (_current_FILE) @@ -765,7 +762,7 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) endif (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") -# add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_test_NAME}.tml ) +# add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_test_NAME}.tml ) if (NOT MSVC_IDE) #not needed for the ide # if the tests are EXCLUDE_FROM_ALL, add a target "buildtests" to build all tests @@ -943,21 +940,21 @@ macro (KDE4_CREATE_HTML_HANDBOOK _docbook) endmacro (KDE4_CREATE_HTML_HANDBOOK) -# adds application icon to target source list -# 'outfiles' - specifies the list of source files -# 'pattern' - regular expression for searching application icons +# adds application icon to target source list +# 'outfiles' - specifies the list of source files +# 'pattern' - regular expression for searching application icons # example: KDE4_ADD_WIN32_APP_ICON(myapp_sources "pics/cr*-myapp.png") macro (KDE4_ADD_WIN32_APP_ICON outfiles pattern) if (WIN32) #if (NOT PNG2ICO_EXECUTABLE) - # find_executable(PNG2ICO_EXECUTABLE + # find_executable(PNG2ICO_EXECUTABLE #endif (NOT PNG2ICO_EXECUTABLE) file(GLOB files "${pattern}") MESSAGE(${files}) FOREACH (it ${files}) GET_FILENAME_COMPONENT(_name ${it} NAME_WE) - #exclude 22'er icons, they does not fix into ico format + #exclude 22'er icons, they does not fix into ico format if (it MATCHES ".*22-.*") else(it MATCHES ".*22-.*") set (_icons "${_icons} ${it}") @@ -967,18 +964,18 @@ macro (KDE4_ADD_WIN32_APP_ICON outfiles pattern) # png2ico is located in the recommended kdewin32 package MESSAGE("png2ico ${_outfilename}.ico ${_icons}") EXEC_PROGRAM(png2ico - ARGS ${_outfilename}.ico ${_icons} + ARGS ${_outfilename}.ico ${_icons} ) # does not work for unkwown reason # add_custom_command(OUTPUT ${_outfilename}.ico # COMMAND c:/Programme/kdewin-msvc/bin/png2ico.exe -# ARGS ${_outfilename}.ico ${_icons} +# ARGS ${_outfilename}.ico ${_icons} # DEPENDS ${_icons} # ) file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n") if (MINGW) add_custom_command(OUTPUT ${_outfilename}_res.o - COMMAND windres + COMMAND windres ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${_outfilename}.ico ${_outfilename}.rc ) -- cgit v1.2.1 From 2164a91f19ea2f9df6a3fa5ee38c89dca583bb9d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 29 Oct 2007 14:06:38 +0000 Subject: -use if(NOT ...) instead of an empty if() branch -all lower case in KDE4_ADD_WIN32_APP_ICON Alex svn path=/trunk/KDE/kdelibs/; revision=730756 --- modules/KDE4Macros.cmake | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2bd0581a..7e4b5222 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -951,19 +951,18 @@ macro (KDE4_ADD_WIN32_APP_ICON outfiles pattern) # find_executable(PNG2ICO_EXECUTABLE #endif (NOT PNG2ICO_EXECUTABLE) file(GLOB files "${pattern}") - MESSAGE(${files}) - FOREACH (it ${files}) - GET_FILENAME_COMPONENT(_name ${it} NAME_WE) - #exclude 22'er icons, they does not fix into ico format - if (it MATCHES ".*22-.*") - else(it MATCHES ".*22-.*") +# message(${files}) + foreach (it ${files}) + get_filename_component(_name ${it} NAME_WE) + #exclude 22'er icons, they do not fit into ico format + if (NOT it MATCHES ".*22-.*") set (_icons "${_icons} ${it}") - endif (it MATCHES ".*22-.*") - ENDFOREACH (it) + endif (NOT it MATCHES ".*22-.*") + endforeach (it) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name}) # png2ico is located in the recommended kdewin32 package - MESSAGE("png2ico ${_outfilename}.ico ${_icons}") - EXEC_PROGRAM(png2ico + message("png2ico ${_outfilename}.ico ${_icons}") + exec_program(png2ico ARGS ${_outfilename}.ico ${_icons} ) # does not work for unkwown reason -- cgit v1.2.1 From 50506371468ac066b587a31848be2b1117ea058b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 29 Oct 2007 14:34:00 +0000 Subject: -don't hardcode the include/lib dirs /usr/local/lib and /usr/local/include for UNIX, they should be found by the various FIND_PACKAGE() calls Alex svn path=/trunk/KDE/kdelibs/; revision=730766 --- modules/FindKDE4Internal.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fdcf14f3..0acba2a8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -675,8 +675,7 @@ endif (WIN32) if (UNIX) option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." OFF) - link_directories(/usr/local/lib) - set( _KDE4_PLATFORM_INCLUDE_DIRS /usr/local/include ) + set( _KDE4_PLATFORM_INCLUDE_DIRS) # the rest is RPATH handling # here the defaults are set -- cgit v1.2.1 From d8727081eb1354692bc74602defc9fa19ceef0af Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 30 Oct 2007 08:17:16 +0000 Subject: It's meinproc4 svn path=/trunk/KDE/kdelibs/; revision=730940 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0acba2a8..3a4f2e72 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -189,13 +189,13 @@ # directoy given in path, in the subdirectory for the given icon theme. # # KDE4_CREATE_HANDBOOK( docbookfile [INSTALL_DESTINATION installdest] [SUBDIR subdir]) -# Create the handbook from the docbookfile (using meinproc) +# Create the handbook from the docbookfile (using meinproc4) # The resulting handbook will be installed to when using # INSTALL_DESTINATION , or to / if # SUBDIR is specified. # # KDE4_CREATE_MANPAGE( docbookfile section ) -# Create the manpage for the specified section from the docbookfile (using meinproc) +# Create the manpage for the specified section from the docbookfile (using meinproc4) # The resulting manpage will be installed to when using # INSTALL_DESTINATION , or to / if # SUBDIR is specified. -- cgit v1.2.1 From c3ddcaecda7052cce0c3a687cd346bb38990c034 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 30 Oct 2007 14:05:17 +0000 Subject: make the index library detection optional svn path=/trunk/KDE/kdelibs/; revision=731032 --- modules/FindSoprano.cmake | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index caf52b2b..d3845a03 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -11,14 +11,6 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S FIND_PATH(SOPRANO_INCLUDE_DIR NAMES soprano/soprano.h - PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} - ) - - FIND_LIBRARY_WITH_DEBUG(SOPRANO_LIBRARIES - WIN32_DEBUG_POSTFIX d - NAMES soprano PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} @@ -38,10 +30,17 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S WIN32_DEBUG_POSTFIX d NAMES sopranoclient + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + + FIND_LIBRARY_WITH_DEBUG(SOPRANO_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES soprano PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} - ) + ) FIND_LIBRARY_WITH_DEBUG(SOPRANO_SERVER_LIBRARIES WIN32_DEBUG_POSTFIX d @@ -54,9 +53,10 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S # check for all the libs as required to make sure that we do not try to compile with an old version # FIXME: introduce a Soprano version check - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) + + if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) set(Soprano_FOUND TRUE) - endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_CLIENT_LIBRARIES AND SOPRANO_INDEX_LIBRARIES) + endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) if(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) set(SopranoIndex_FOUND TRUE) @@ -73,8 +73,9 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") + message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") - message(STATUS "Found Soprano Client: ${SOPRANO_INDEX_LIBRARIES}") + message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) -- cgit v1.2.1 From d14a403a1920235c678380d4cac55c853c6813df Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 30 Oct 2007 16:14:59 +0000 Subject: fix search path messup svn path=/trunk/KDE/kdelibs/; revision=731061 --- modules/FindSoprano.cmake | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index d3845a03..e2b1997f 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -12,10 +12,9 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S NAMES soprano/soprano.h PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) FIND_LIBRARY_WITH_DEBUG(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d @@ -30,8 +29,8 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S WIN32_DEBUG_POSTFIX d NAMES sopranoclient - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} ) FIND_LIBRARY_WITH_DEBUG(SOPRANO_LIBRARIES -- cgit v1.2.1 From 55f810ed4e6bba5c2f31c062218f58a45d4e8403 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Wed, 31 Oct 2007 21:03:07 +0000 Subject: copy the chack to reflect the real name of the qimageblitz library svn path=/trunk/KDE/kdelibs/; revision=731497 --- modules/FindQImageBlitz.cmake | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 modules/FindQImageBlitz.cmake (limited to 'modules') diff --git a/modules/FindQImageBlitz.cmake b/modules/FindQImageBlitz.cmake new file mode 100644 index 00000000..24a5d142 --- /dev/null +++ b/modules/FindQImageBlitz.cmake @@ -0,0 +1,42 @@ +# - Try to find the qimageblitz lib +# Once done this will define +# +# QIMAGEBLITZ_FOUND - system has qimageblitz lib +# QIMAGEBLITZ_INCLUDES - the qimageblitz include directory +# QIMAGEBLITZ_LIBRARIES - The libraries needed to use qimageblitz +# +# Copyright (c) 2006, Montel Laurent, +# Copyright (c) 2007, Allen Winter, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +include(FindLibraryWithDebug) + +if (QIMAGEBLITZ_INCLUDES AND QIMAGEBLITZ_LIBRARIES) + set(QImageBlitz_FIND_QUIETLY TRUE) +endif (QIMAGEBLITZ_INCLUDES AND QIMAGEBLITZ_LIBRARIES) + +find_path(QIMAGEBLITZ_INCLUDES + NAMES + qimageblitz.h + PATH_SUFFIXES qimageblitz + PATHS + $ENV{QIMAGEBLITZDIR}/include + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +find_library_with_debug(QIMAGEBLITZ_LIBRARIES + WIN32_DEBUG_POSTFIX d + qimageblitz + PATHS + $ENV{QIMAGEBLITZDIR}/lib + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(QImageBlitz DEFAULT_MSG + QIMAGEBLITZ_INCLUDES QIMAGEBLITZ_LIBRARIES) + +mark_as_advanced(QIMAGEBLITZ_INCLUDES QIMAGEBLITZ_LIBRARIES) -- cgit v1.2.1 From b5ef260fcbaabe41644d184c18c64f0b2b3ba8e9 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 1 Nov 2007 14:31:07 +0000 Subject: print the log headers in less than 80 chars so they fit nicely on typical vt100s svn path=/trunk/KDE/kdelibs/; revision=731676 --- modules/MacroLogFeature.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index db2723b6..cac4ef87 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -88,7 +88,7 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _requirements) - MESSAGE(STATUS "\n----------------------------------------------------------------------------------\n-- The following list of REQUIRED packages could NOT be located on your system. --\n-- Please install them before continuing with this software installation. --\n----------------------------------------------------------------------------------\n${_requirements}----------------------------------------------------------------------------------") + MESSAGE(STATUS "\n-------------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system. --\n-- Please install them before continuing with this software installation. --\n-------------------------------------------------------------------------------\n${_requirements}-------------------------------------------------------------------------------") FILE(REMOVE ${_file}) MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") ENDIF (EXISTS ${_file}) @@ -99,14 +99,14 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) IF (EXISTS ${_file}) FILE(READ ${_file} _enabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages were located on your system. --\n-- You will have all the following features available from this software. --\n----------------------------------------------------------------------------------\n${_enabled}") + SET(_summary "${_summary}-------------------------------------------------------------------------------\n-- The following OPTIONAL packages were located on your system. --\n-- This software installation will have features provided by these packages. --\n-------------------------------------------------------------------------------\n${_enabled}") ENDIF (EXISTS ${_file}) SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _disabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}----------------------------------------------------------------------------------\n-- The following list of OPTIONAL packages could NOT be located on your system. --\n-- Consider installing them to enable more features from this software. --\n----------------------------------------------------------------------------------\n${_disabled}") + SET(_summary "${_summary}-------------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system. --\n-- Consider installing them to enable more features from this software. --\n-------------------------------------------------------------------------------\n${_disabled}") ENDIF (EXISTS ${_file}) MESSAGE(STATUS "${_summary}") -- cgit v1.2.1 From 2c295cadb5ee1ef26c5de02ede5548cda5d14b6a Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 2 Nov 2007 18:07:21 +0000 Subject: Fix configuring extragear as a single module; to set the right paths we need to determine if we found the file in libfoo or in libs/libfoo. svn path=/trunk/KDE/kdelibs/; revision=732065 --- modules/FindKdcraw.cmake | 10 ++++++++-- modules/FindKexiv2.cmake | 11 ++++++++--- modules/FindKipi.cmake | 9 +++++++-- 3 files changed, 23 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index 8a903309..9c611384 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -24,10 +24,16 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) if (KDCRAW_LOCAL_FOUND) - set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) + # Was it found in libkdcraw/ or in libs/libkdcraw? + FIND_FILE(KDCRAW_LOCAL_FOUND_IN_LIBS libkdcraw/version.h ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + if (KDCRAW_LOCAL_FOUND_IN_LIBS) + set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkdcraw) + else (KDCRAW_LOCAL_FOUND_IN_LIBS) + set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) + endif (KDCRAW_LOCAL_FOUND_IN_LIBS) set(KDCRAW_DEFINITIONS -I${KDCRAW_INCLUDE_DIR}) set(KDCRAW_LIBRARIES kdcraw) - message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_LIBRARIES}") + message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_INCLUDE_DIR}") set(KDCRAW_FOUND TRUE) MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index f493da41..da19ff8e 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -19,15 +19,20 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) message(STATUS "Check Kexiv2 library in local sub-folder...") # Check if library is not in local sub-folder - + FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) if (KEXIV2_LOCAL_FOUND) - set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) + FIND_FILE(KEXIV2_LOCAL_FOUND_IN_LIBS libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) + if (KEXIV2_LOCAL_FOUND_IN_LIBS) + set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkexiv2) + else (KEXIV2_LOCAL_FOUND_IN_LIBS) + set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) + endif (KEXIV2_LOCAL_FOUND_IN_LIBS) set(KEXIV2_DEFINITIONS -I${KEXIV2_INCLUDE_DIR}) set(KEXIV2_LIBRARIES kexiv2) - message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_LIBRARIES}") + message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_INCLUDE_DIR}") set(KEXIV2_FOUND TRUE) MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index dcf04e5b..de0d046b 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -24,10 +24,15 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) if (KIPI_LOCAL_FOUND) - set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkipi) + find_file (KIPI_LOCAL_FOUND_IN_LIBS libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + if (KIPI_LOCAL_FOUND_IN_LIBS) + set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkipi) + else (KIPI_LOCAL_FOUND_IN_LIBS) + set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkipi) + endif (KIPI_LOCAL_FOUND_IN_LIBS) set(KIPI_DEFINITIONS -I${KIPI_INCLUDE_DIR}) set(KIPI_LIBRARIES kipi) - message(STATUS "Found Kipi library in local sub-folder: ${KIPI_LIBRARIES}") + message(STATUS "Found Kipi library in local sub-folder: ${KIPI_INCLUDE_DIR}") set(KIPI_FOUND TRUE) mark_as_advanced(KIPI_INCLUDE_DIR KIPI_LIBRARIES) -- cgit v1.2.1 From 2e402f21a8e3202ae118ca6db63b8102f1b44872 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Fri, 2 Nov 2007 22:34:46 +0000 Subject: If using cache values set all *_FOUND variables to true, not just Soprano_FOUND. svn path=/trunk/KDE/kdelibs/; revision=732145 --- modules/FindSoprano.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index e2b1997f..f4920af2 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -4,6 +4,9 @@ if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOP # read from cache set(Soprano_FOUND TRUE) + set(SopranoServer_FOUND TRUE) + set(SopranoClient_FOUND TRUE) + set(SopranoIndex_FOUND TRUE) else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) INCLUDE(FindLibraryWithDebug) -- cgit v1.2.1 From 303fbe95e515a6887dec0a2f98485ec22e64b28b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Tue, 6 Nov 2007 14:27:51 +0000 Subject: Make __KDE_HAVE_GCC_VISIBILITY cached. svn path=/trunk/KDE/kdelibs/; revision=733507 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3a4f2e72..ab0f4fb5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -813,6 +813,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) + set( __KDE_HAVE_GCC_VISIBILITY ${__KDE_HAVE_GCC_VISIBILITY} CACHE BOOL "GCC support for hidden visibility") # get the gcc version exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) -- cgit v1.2.1 From ec7950368104ff4e7f81add6e82dd7521c2b4ad1 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Wed, 7 Nov 2007 15:58:31 +0000 Subject: Added Soprano version check svn path=/trunk/KDE/kdelibs/; revision=733928 --- modules/FindSoprano.cmake | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index f4920af2..3e39bf56 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -1,14 +1,14 @@ -if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) +#if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) # read from cache - set(Soprano_FOUND TRUE) - set(SopranoServer_FOUND TRUE) - set(SopranoClient_FOUND TRUE) - set(SopranoIndex_FOUND TRUE) +# set(Soprano_FOUND TRUE) +# set(SopranoServer_FOUND TRUE) +# set(SopranoClient_FOUND TRUE) +# set(SopranoIndex_FOUND TRUE) -else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) +#else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) INCLUDE(FindLibraryWithDebug) FIND_PATH(SOPRANO_INCLUDE_DIR @@ -72,6 +72,19 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S set(SopranoServer_FOUND TRUE) endif(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) + # check Soprano version + if(Soprano_FOUND) + FILE(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) + STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) + IF (SOPRANO_VERSION_MATCH) + STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) + if(SOPRANO_VERSION STRLESS "1.97.1") + set(Soprano_FOUND FALSE) + message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install 1.97.1 or newer") + endif(SOPRANO_VERSION STRLESS "1.97.1") + ENDIF (SOPRANO_VERSION_MATCH) + endif(Soprano_FOUND) + if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") @@ -97,4 +110,4 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S endif(Soprano_FIND_REQUIRED) endif(Soprano_FOUND) -endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) +#endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) -- cgit v1.2.1 From 2a0027066fd35c328cf6e41598a883bf9d135bd6 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Wed, 7 Nov 2007 20:48:28 +0000 Subject: adding icon install macro from kdewin-installer/marble svn path=/trunk/KDE/kdelibs/; revision=734021 --- modules/FindKDEWIN32.cmake | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 5d4499af..b69f0beb 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -71,4 +71,29 @@ if (WIN32) message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease install it first") endif (KDEWIN32_FIND_REQUIRED) endif (KDEWIN32_FOUND) + MACRO (KDE_ADD_RESOURCES2 outfiles ) + + FOREACH (it ${ARGN}) + GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(rc_path ${infile} PATH) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/${outfilename}_res.o) + # parse file for dependencies + FILE(READ "${infile}" _RC_FILE_CONTENTS) + STRING(REGEX MATCHALL "[^<]*" _RC_FILES "${_RC_FILE_CONTENTS}") + SET(_RC_DEPENDS) + FOREACH(_RC_FILE ${_RC_FILES}) + STRING(REGEX REPLACE "^" "" _RC_FILE "${_RC_FILE}") + SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") + ENDFOREACH(_RC_FILE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND windres + ARGS -i ${infile} -o ${outfile} --include-dir=${CMAKE_CURRENT_SOURCE_DIR} + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + + ENDMACRO (KDE_ADD_RESOURCES2) + endif (WIN32) -- cgit v1.2.1 From c5afd5be2d2baeff6a727b483d1791634170379c Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 8 Nov 2007 06:01:44 +0000 Subject: temporary fix to add QT_NO_DEBUG in release mode to fix qt plugin compile on win32 http://lists.kde.org/?l=kde-buildsystem&m=119446327108889&w=2 svn path=/trunk/KDE/kdelibs/; revision=734116 --- modules/FindKDE4Internal.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ab0f4fb5..57317484 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -667,6 +667,16 @@ if (WIN32) set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" CACHE STATIC "MSVC IDE Run path" FORCE) endif(MSVC_IDE) + + # christian: + # don't know where to add this -> FindQt4.cmake is only executed once and + # because somehow those values are not saved in the cache, I have to set them + # new on every cmake run + # http://www.cmake.org/pipermail/cmake/2007-November/017541.html + # set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DQT_DEBUG") + set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -DQT_NO_DEBUG") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DQT_NO_DEBUG") + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DQT_NO_DEBUG") endif (WIN32) -- cgit v1.2.1 From 90f3ffd45a28a5f86d09e8371aa4897b0d91a9f2 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Fri, 9 Nov 2007 12:43:19 +0000 Subject: changing macro to just work in case of png2ico's existance - removing duplication from FindKDEWIN32.cmake svn path=/trunk/KDE/kdelibs/; revision=734634 --- modules/FindKDEWIN32.cmake | 25 ------------------ modules/KDE4Macros.cmake | 66 ++++++++++++++++++++++------------------------ 2 files changed, 32 insertions(+), 59 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index b69f0beb..5d4499af 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -71,29 +71,4 @@ if (WIN32) message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease install it first") endif (KDEWIN32_FIND_REQUIRED) endif (KDEWIN32_FOUND) - MACRO (KDE_ADD_RESOURCES2 outfiles ) - - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(rc_path ${infile} PATH) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/${outfilename}_res.o) - # parse file for dependencies - FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "[^<]*" _RC_FILES "${_RC_FILE_CONTENTS}") - SET(_RC_DEPENDS) - FOREACH(_RC_FILE ${_RC_FILES}) - STRING(REGEX REPLACE "^" "" _RC_FILE "${_RC_FILE}") - SET(_RC_DEPENDS ${_RC_DEPENDS} "${rc_path}/${_RC_FILE}") - ENDFOREACH(_RC_FILE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND windres - ARGS -i ${infile} -o ${outfile} --include-dir=${CMAKE_CURRENT_SOURCE_DIR} - MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (KDE_ADD_RESOURCES2) - endif (WIN32) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7e4b5222..92ec5097 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -947,40 +947,38 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) macro (KDE4_ADD_WIN32_APP_ICON outfiles pattern) if (WIN32) - #if (NOT PNG2ICO_EXECUTABLE) - # find_executable(PNG2ICO_EXECUTABLE - #endif (NOT PNG2ICO_EXECUTABLE) - file(GLOB files "${pattern}") -# message(${files}) - foreach (it ${files}) - get_filename_component(_name ${it} NAME_WE) - #exclude 22'er icons, they do not fit into ico format - if (NOT it MATCHES ".*22-.*") + if (NOT PNG2ICO_EXECUTABLE) + find_program(PNG2ICO_EXECUTABLE NAMES png2ico) + endif (NOT PNG2ICO_EXECUTABLE) + if (PNG2ICO_EXECUTABLE) + file(GLOB files "${pattern}") + foreach (it ${files}) + get_filename_component(_name ${it} NAME_WE) + ##exclude 22'er icons, they do not fit into ico format - not needed anymore - you have to use the icons from kdebase / oxygen + #if (NOT it MATCHES ".*22-.*") set (_icons "${_icons} ${it}") - endif (NOT it MATCHES ".*22-.*") - endforeach (it) - set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name}) - # png2ico is located in the recommended kdewin32 package - message("png2ico ${_outfilename}.ico ${_icons}") - exec_program(png2ico - ARGS ${_outfilename}.ico ${_icons} - ) -# does not work for unkwown reason -# add_custom_command(OUTPUT ${_outfilename}.ico -# COMMAND c:/Programme/kdewin-msvc/bin/png2ico.exe -# ARGS ${_outfilename}.ico ${_icons} -# DEPENDS ${_icons} -# ) - file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n") - if (MINGW) - add_custom_command(OUTPUT ${_outfilename}_res.o - COMMAND windres - ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS ${_outfilename}.ico ${_outfilename}.rc - ) - list(APPEND ${outfiles} ${_outfilename}_res.o) - else(MINGW) - list(APPEND ${outfiles} ${_outfilename}.rc) - endif(MINGW) + #endif (NOT it MATCHES ".*22-.*") + endforeach (it) + + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name}) + + # png2ico is found by the above find_program + message("png2ico ${_outfilename}.ico ${_icons}") + exec_program(png2ico ARGS ${_outfilename}.ico ${_icons}) + + # now make rc file for adding it to the sources + file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n") + if (MINGW) + add_custom_command(OUTPUT ${_outfilename}_res.o + COMMAND windres + ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${_outfilename}.ico ${_outfilename}.rc + ) + list(APPEND ${outfiles} ${_outfilename}_res.o) + else(MINGW) + list(APPEND ${outfiles} ${_outfilename}.rc) + endif(MINGW) + endif(PNG2ICO_EXECUTABLE) endif(WIN32) endmacro (KDE4_ADD_WIN32_APP_ICON) + -- cgit v1.2.1 From 25b815e8dadc69adc91dc3395f0da6af42cebf56 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Fri, 9 Nov 2007 15:15:00 +0000 Subject: this is the current working solution but I couldn't set kate_KDEINIT_SRCS from the macro, that's why it isn't included anymore svn path=/trunk/KDE/kdelibs/; revision=734672 --- modules/KDE4Macros.cmake | 40 ++++++++++++++-------------------------- 1 file changed, 14 insertions(+), 26 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 92ec5097..376201f3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -941,44 +941,32 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) # adds application icon to target source list -# 'outfiles' - specifies the list of source files -# 'pattern' - regular expression for searching application icons -# example: KDE4_ADD_WIN32_APP_ICON(myapp_sources "pics/cr*-myapp.png") +#'appname' - an application name +# 'pngfiles' - specifies the list of icon files +# example: KDE4_ADD_WIN32_APP_ICON(myapp "pics/cr16-myapp.png;pics/cr32-myapp.png") -macro (KDE4_ADD_WIN32_APP_ICON outfiles pattern) +macro (KDE4_ADD_WIN32_APP_ICON appname pngfiles) if (WIN32) if (NOT PNG2ICO_EXECUTABLE) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) endif (NOT PNG2ICO_EXECUTABLE) - if (PNG2ICO_EXECUTABLE) - file(GLOB files "${pattern}") - foreach (it ${files}) - get_filename_component(_name ${it} NAME_WE) - ##exclude 22'er icons, they do not fit into ico format - not needed anymore - you have to use the icons from kdebase / oxygen - #if (NOT it MATCHES ".*22-.*") - set (_icons "${_icons} ${it}") - #endif (NOT it MATCHES ".*22-.*") - endforeach (it) - - set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${_name}) + if (NOT WINDRES_EXECUTABLE) + find_program(WINDRES_EXECUTABLE NAMES windres) + endif (NOT WINDRES_EXECUTABLE) + if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${appname}) # png2ico is found by the above find_program - message("png2ico ${_outfilename}.ico ${_icons}") - exec_program(png2ico ARGS ${_outfilename}.ico ${_icons}) + message("png2ico ${_outfilename}.ico ${pngfiles}") + exec_program(png2ico ARGS ${_outfilename}.ico ${pngfiles}) # now make rc file for adding it to the sources file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n") if (MINGW) - add_custom_command(OUTPUT ${_outfilename}_res.o - COMMAND windres - ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS ${_outfilename}.ico ${_outfilename}.rc - ) - list(APPEND ${outfiles} ${_outfilename}_res.o) - else(MINGW) - list(APPEND ${outfiles} ${_outfilename}.rc) + exec_program(windres + ARGS "-i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR}") endif(MINGW) - endif(PNG2ICO_EXECUTABLE) + endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) endif(WIN32) endmacro (KDE4_ADD_WIN32_APP_ICON) -- cgit v1.2.1 From 8d159c824aae855ac93e5f383fd75f0a3485db49 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Fri, 9 Nov 2007 16:46:13 +0000 Subject: hopefully the last commit concerning this svn path=/trunk/KDE/kdelibs/; revision=734696 --- modules/KDE4Macros.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 376201f3..9108d24d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -942,10 +942,11 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) # adds application icon to target source list #'appname' - an application name +# 'appsources' - the sources of the application # 'pngfiles' - specifies the list of icon files # example: KDE4_ADD_WIN32_APP_ICON(myapp "pics/cr16-myapp.png;pics/cr32-myapp.png") -macro (KDE4_ADD_WIN32_APP_ICON appname pngfiles) +macro (KDE4_ADD_WIN32_APP_ICON appname appsources pngfiles) if (WIN32) if (NOT PNG2ICO_EXECUTABLE) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) @@ -965,6 +966,9 @@ macro (KDE4_ADD_WIN32_APP_ICON appname pngfiles) if (MINGW) exec_program(windres ARGS "-i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR}") + list(APPEND ${appsources} ${CMAKE_CURRENT_BINARY_DIR}/${appname}_res.o) + else(MINGW) + list(APPEND ${appsources} ${CMAKE_CURRENT_BINARY_DIR}/${appname}.rc) endif(MINGW) endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) endif(WIN32) -- cgit v1.2.1 From 70c3f27cd27aab0dc227bf23cd34a931cba8a54f Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Fri, 9 Nov 2007 19:24:52 +0000 Subject: make msvc build not depending on windres svn path=/trunk/KDE/kdelibs/; revision=734742 --- modules/KDE4Macros.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9108d24d..41bfab0d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -954,6 +954,9 @@ macro (KDE4_ADD_WIN32_APP_ICON appname appsources pngfiles) if (NOT WINDRES_EXECUTABLE) find_program(WINDRES_EXECUTABLE NAMES windres) endif (NOT WINDRES_EXECUTABLE) + if(MSVC) + set(WINDRES_EXECUTABLE true) + endif(MSVC) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${appname}) -- cgit v1.2.1 From fcb850840ed38333a3b1ae4b79c676686e443dd9 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Sun, 11 Nov 2007 15:23:46 +0000 Subject: make freetype findable under windows svn path=/trunk/KDE/kdelibs/; revision=735384 --- modules/FindFreetype.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index f061e71a..89b70a61 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -48,6 +48,14 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) set( FREETYPE_LIBRARIES ${FREETYPE_LIBRARIES} CACHE INTERNAL "The libraries for freetype" ) + else(FREETYPECONFIG_EXECUTABLE) + find_path (FREETYPE_INCLUDE_DIR freetype/freetype.h + ${CMAKE_INCLUDE_PATH}/freetype2 + ) + find_library(FREETYPE_LIBRARIES freetype) + if(FREETYPE_INCLUDE_DIR AND FREETYPE_LIBRARIES) + set(FREETYPE_FOUND TRUE) + endif(FREETYPE_INCLUDE_DIR AND FREETYPE_LIBRARIES) endif(FREETYPECONFIG_EXECUTABLE) -- cgit v1.2.1 From 9af2d339798215802d078b22edab01f842554b98 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 12 Nov 2007 07:22:48 +0000 Subject: Move from kdemultimedia svn path=/trunk/KDE/kdelibs/; revision=735587 --- modules/FindFFmpeg.cmake | 72 +++++++++++++++++++++++++++++++++++++ modules/FindFlac.cmake | 54 ++++++++++++++++++++++++++++ modules/FindOggVorbis.cmake | 86 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 212 insertions(+) create mode 100644 modules/FindFFmpeg.cmake create mode 100644 modules/FindFlac.cmake create mode 100644 modules/FindOggVorbis.cmake (limited to 'modules') diff --git a/modules/FindFFmpeg.cmake b/modules/FindFFmpeg.cmake new file mode 100644 index 00000000..0ec576a9 --- /dev/null +++ b/modules/FindFFmpeg.cmake @@ -0,0 +1,72 @@ +# - Try to find ffmpeg +# Once done this will define +# +# FFMPEG_FOUND - system has ffmpeg +# FFMPEG_LIBRARIES - Link these to use ffmpeg +# FFMPEG_DEFINITIONS - Compiler switches required for using ffmpeg + +# Copyright (c) 2006, Matthias Kretz, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) + + # in cache already + set(FFMPEG_FOUND TRUE) + +else (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libavcodec _FFMPEGIncDir _FFMPEGLinkDir _FFMPEGLinkFlags _FFMPEGCflags) +ENDIF (NOT WIN32) + #set(FFMPEG_DEFINITIONS ${_FFMPEGCflags} CACHE INTERNAL "The compilation flags for ffmpeg") + + find_path(FFMPEG_INCLUDE_DIR ffmpeg/avcodec.h + PATHS + ${_FFMPEGIncDir} + NO_DEFAULT_PATH + ) + + find_library(AVCODEC_LIBRARIES NAMES avcodec + PATHS + ${_FFMPEGLinkDir} + NO_DEFAULT_PATH + ) + + find_library(AVFORMAT_LIBRARIES NAMES avformat + PATHS + ${_FFMPEGLinkDir} + NO_DEFAULT_PATH + ) + + find_library(AVUTIL_LIBRARIES NAMES avutil + PATHS + ${_FFMPEGLinkDir} + NO_DEFAULT_PATH + ) + + set(FFMPEG_LIBRARIES ${AVCODEC_LIBRARIES} ${AVFORMAT_LIBRARIES} ${AVUTIL_LIBRARIES}) + + if (FFMPEG_LIBRARIES) + set(FFMPEG_FOUND TRUE) + endif (FFMPEG_LIBRARIES) + + if (FFMPEG_FOUND) + if (NOT FFmpeg_FIND_QUIETLY) + message(STATUS "Found FFMPEG: ${FFMPEG_LIBRARIES} ${FFMPEG_INCLUDE_DIR}") + endif (NOT FFmpeg_FIND_QUIETLY) + else (FFMPEG_FOUND) + if (FFmpeg_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find FFMPEG") + endif (FFmpeg_FIND_REQUIRED) + endif (FFMPEG_FOUND) + + MARK_AS_ADVANCED(FFMPEG_LIBRARIES) + MARK_AS_ADVANCED(FFMPEG_INCLUDE_DIR) + +endif (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) diff --git a/modules/FindFlac.cmake b/modules/FindFlac.cmake new file mode 100644 index 00000000..f1f54c42 --- /dev/null +++ b/modules/FindFlac.cmake @@ -0,0 +1,54 @@ +# - Try to find Flac, the Free Lossless Audio Codec +# Once done this will define +# +# FLAC_FOUND - system has Flac +# FLAC_INCLUDE_DIR - the Flac include directory +# FLAC_LIBRARIES - Link these to use Flac +# FLAC_OGGFLAC_LIBRARIES - Link these to use OggFlac + +# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) + # Already in cache, be silent + set(Flac_FIND_QUIETLY TRUE) +endif(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) + +FIND_PATH(FLAC_INCLUDE_DIR FLAC/metadata.h) + +FIND_LIBRARY(FLAC_LIBRARIES NAMES FLAC ) + +FIND_LIBRARY(FLAC_OGG_LIBRARY NAMES OggFLAC) + +check_library_exists(FLAC FLAC__stream_encoder_set_write_callback "" HAVE_STREAM_ENCODER_WRITE_CALLBACK) + + + +IF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES AND HAVE_STREAM_ENCODER_WRITE_CALLBACK) + SET(FLAC_FOUND TRUE) + IF (FLAC_OGG_LIBRARY) + SET(FLAC_OGGFLAC_LIBRARIES ${FLAC_OGG_LIBRARY} ${FLAC_LIBRARIES}) + ENDIF (FLAC_OGG_LIBRARY) +ELSE(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES AND HAVE_STREAM_ENCODER_WRITE_CALLBACK) + SET(FLAC_FOUND FALSE) +ENDIF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES AND HAVE_STREAM_ENCODER_WRITE_CALLBACK) + +IF(FLAC_FOUND) + IF(NOT Flac_FIND_QUIETLY) + MESSAGE(STATUS "Found Flac: ${FLAC_LIBRARIES}") + ENDIF(NOT Flac_FIND_QUIETLY) +ELSE(FLAC_FOUND) + IF(Flac_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Flac") + ENDIF(Flac_FIND_REQUIRED) + IF(NOT Flac_FIND_QUIETLY) + MESSAGE(STATUS "Could not find Flac") + ENDIF(NOT Flac_FIND_QUIETLY) +ENDIF(FLAC_FOUND) + +# show the FLAC_INCLUDE_DIR and FLAC_LIBRARIES variables only in the advanced view +MARK_AS_ADVANCED(FLAC_INCLUDE_DIR FLAC_LIBRARIES ) + diff --git a/modules/FindOggVorbis.cmake b/modules/FindOggVorbis.cmake new file mode 100644 index 00000000..79a9ab40 --- /dev/null +++ b/modules/FindOggVorbis.cmake @@ -0,0 +1,86 @@ +# - Try to find the OggVorbis libraries +# Once done this will define +# +# OGGVORBIS_FOUND - system has OggVorbis +# OGGVORBIS_VERSION - set either to 1 or 2 +# OGGVORBIS_INCLUDE_DIR - the OggVorbis include directory +# OGGVORBIS_LIBRARIES - The libraries needed to use OggVorbis +# OGG_LIBRARY - The Ogg library +# VORBIS_LIBRARY - The Vorbis library +# VORBISFILE_LIBRARY - The VorbisFile library +# VORBISENC_LIBRARY - The VorbisEnc library + +# Copyright (c) 2006, Richard Laerkaeng, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +include (CheckLibraryExists) + +find_path(VORBIS_INCLUDE_DIR vorbis/vorbisfile.h) +find_path(OGG_INCLUDE_DIR ogg/ogg.h) + +find_library(OGG_LIBRARY NAMES ogg) +find_library(VORBIS_LIBRARY NAMES vorbis) +find_library(VORBISFILE_LIBRARY NAMES vorbisfile) +find_library(VORBISENC_LIBRARY NAMES vorbisenc) + + +if (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_LIBRARY) + set(OGGVORBIS_FOUND TRUE) + + set(OGGVORBIS_LIBRARIES ${OGG_LIBRARY} ${VORBIS_LIBRARY} ${VORBISFILE_LIBRARY} ${VORBISENC_LIBRARY}) + + set(_CMAKE_REQUIRED_LIBRARIES_TMP ${CMAKE_REQUIRED_LIBRARIES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${OGGVORBIS_LIBRARIES}) + check_library_exists(vorbis vorbis_bitrate_addblock "" HAVE_LIBVORBISENC2) + set(CMAKE_REQUIRED_LIBRARIES ${_CMAKE_REQUIRED_LIBRARIES_TMP}) + + if (HAVE_LIBVORBISENC2) + set (OGGVORBIS_VERSION 2) + else (HAVE_LIBVORBISENC2) + set (OGGVORBIS_VERSION 1) + endif (HAVE_LIBVORBISENC2) + +else (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_LIBRARY) + set (OGGVORBIS_VERSION) + set(OGGVORBIS_FOUND FALSE) +endif (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_LIBRARY) + + +if (OGGVORBIS_FOUND) + if (NOT OggVorbis_FIND_QUIETLY) + message(STATUS "Found OggVorbis: ${OGGVORBIS_LIBRARIES}") + endif (NOT OggVorbis_FIND_QUIETLY) +else (OGGVORBIS_FOUND) + if (OggVorbis_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find OggVorbis libraries") + endif (OggVorbis_FIND_REQUIRED) + if (NOT OggVorbis_FIND_QUITELY) + message(STATUS "Could NOT find OggVorbis libraries") + endif (NOT OggVorbis_FIND_QUITELY) +endif (OGGVORBIS_FOUND) + +#check_include_files(vorbis/vorbisfile.h HAVE_VORBISFILE_H) +#check_library_exists(ogg ogg_page_version "" HAVE_LIBOGG) +#check_library_exists(vorbis vorbis_info_init "" HAVE_LIBVORBIS) +#check_library_exists(vorbisfile ov_open "" HAVE_LIBVORBISFILE) +#check_library_exists(vorbisenc vorbis_info_clear "" HAVE_LIBVORBISENC) +#check_library_exists(vorbis vorbis_bitrate_addblock "" HAVE_LIBVORBISENC2) + +#if (HAVE_LIBOGG AND HAVE_VORBISFILE_H AND HAVE_LIBVORBIS AND HAVE_LIBVORBISFILE AND HAVE_LIBVORBISENC) +# message(STATUS "Ogg/Vorbis found") +# set (VORBIS_LIBS "-lvorbis -logg") +# set (VORBISFILE_LIBS "-lvorbisfile") +# set (VORBISENC_LIBS "-lvorbisenc") +# set (OGGVORBIS_FOUND TRUE) +# if (HAVE_LIBVORBISENC2) +# set (HAVE_VORBIS 2) +# else (HAVE_LIBVORBISENC2) +# set (HAVE_VORBIS 1) +# endif (HAVE_LIBVORBISENC2) +#else (HAVE_LIBOGG AND HAVE_VORBISFILE_H AND HAVE_LIBVORBIS AND HAVE_LIBVORBISFILE AND HAVE_LIBVORBISENC) +# message(STATUS "Ogg/Vorbis not found") +#endif (HAVE_LIBOGG AND HAVE_VORBISFILE_H AND HAVE_LIBVORBIS AND HAVE_LIBVORBISFILE AND HAVE_LIBVORBISENC) + -- cgit v1.2.1 From 8dd916a290574383820181c0c9e2e163f3227003 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 12 Nov 2007 19:22:57 +0000 Subject: minor cosmetic changes: fix indentation (no tabs), don't test for WIN32 twice in a row Alex M FindKDE4Internal.cmake svn path=/trunk/KDE/kdelibs/; revision=735843 --- modules/FindKDE4Internal.cmake | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 57317484..f41aea04 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -322,23 +322,21 @@ else (_kdeBootStrapping) message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") endif (KDEVERSION) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + if (WIN32) - # we don't want to be forced to set two pathes into the build tree - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) - else (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - endif (WIN32) - - if (WIN32) - # on win32 the install dir is determined on runtime not install time - # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup - # kde install pathes and library dependencies - get_filename_component(_DIR ${KDE4_KDECONFIG_EXECUTABLE} PATH ) - get_filename_component(KDE4_INSTALL_DIR ${_DIR} PATH ) - get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) - get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) + # we don't want to be forced to set two paths into the build tree + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) + + # on win32 the install dir is determined on runtime not install time + # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup + # kde install paths and library dependencies + get_filename_component(_DIR ${KDE4_KDECONFIG_EXECUTABLE} PATH ) + get_filename_component(KDE4_INSTALL_DIR ${_DIR} PATH ) + get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) + get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) endif (WIN32) - + # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) -- cgit v1.2.1 From 047a232448474658f46ad5f46d81935455fb517e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 12 Nov 2007 19:24:32 +0000 Subject: -fix error message for cygwin Alex svn path=/trunk/KDE/kdelibs/; revision=735844 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f41aea04..5755836d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -608,7 +608,7 @@ endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) if (WIN32) if(CYGWIN) - message(FATAL_ERROR "Cygwin NOT supported, please edit FindKDE4.cmake to enable it") + message(FATAL_ERROR "Cygwin is NOT supported, use mingw or MSVC to build KDE4.") endif(CYGWIN) find_package(KDEWIN32 REQUIRED) -- cgit v1.2.1 From 2bd0cad2d89e6b57ba83c606529c5750a4c19198 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Tue, 13 Nov 2007 21:04:31 +0000 Subject: changing kde4_add_win32_icon acc. to the hints of alex neundorf. CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=736285 --- modules/KDE4Macros.cmake | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 41bfab0d..b8d90a7c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -941,28 +941,24 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) # adds application icon to target source list -#'appname' - an application name # 'appsources' - the sources of the application # 'pngfiles' - specifies the list of icon files -# example: KDE4_ADD_WIN32_APP_ICON(myapp "pics/cr16-myapp.png;pics/cr32-myapp.png") +# example: KDE4_ADD_WIN32_APP_ICON(myapp_SRCS "pics/cr16-myapp.png;pics/cr32-myapp.png") -macro (KDE4_ADD_WIN32_APP_ICON appname appsources pngfiles) +macro (KDE4_ADD_WIN32_APP_ICON appsources) if (WIN32) - if (NOT PNG2ICO_EXECUTABLE) - find_program(PNG2ICO_EXECUTABLE NAMES png2ico) - endif (NOT PNG2ICO_EXECUTABLE) - if (NOT WINDRES_EXECUTABLE) - find_program(WINDRES_EXECUTABLE NAMES windres) - endif (NOT WINDRES_EXECUTABLE) + find_program(PNG2ICO_EXECUTABLE NAMES png2ico) + find_program(WINDRES_EXECUTABLE NAMES windres) if(MSVC) - set(WINDRES_EXECUTABLE true) + set(WINDRES_EXECUTABLE TRUE) endif(MSVC) + STRING(REPLACE _SRCS "" appname ${appsources}) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${appname}) # png2ico is found by the above find_program - message("png2ico ${_outfilename}.ico ${pngfiles}") - exec_program(png2ico ARGS ${_outfilename}.ico ${pngfiles}) +# message("png2ico ${_outfilename}.ico ${ARGN}") + exec_program(png2ico ARGS ${_outfilename}.ico ${ARGN}) # now make rc file for adding it to the sources file(WRITE ${_outfilename}.rc "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n") -- cgit v1.2.1 From 356340db8cebf89516c0f6e8b95a6cdd06dbf8c1 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 14 Nov 2007 10:29:18 +0000 Subject: the debug output was suspicious, and indeed this was looking for /kdedir/lib and not using it as a PATH. svn path=/trunk/KDE/kdelibs/; revision=736545 --- modules/FindSoprano.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 3e39bf56..197be2c5 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -32,6 +32,7 @@ WIN32_DEBUG_POSTFIX d NAMES sopranoclient + PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From 045fb8771fc5ea7cbd6abc3ca8e606b19188dd89 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 14 Nov 2007 21:04:44 +0000 Subject: -change the install destinations for Windows: everything is relative to CMAKE_INSTALL_PREFIX, modifying some dirs via the cache is no longer possible (because this is what the cmake code in kdelibs/CMakeLists.txt / the KDE4 win32 installer expects anyway Alex CCMAIL: ps_ml@gmx.de CCMAIL: ralf.habacker@freenet.de CCMAIL: Ch.Ehrlicher@gmx.de Patrick: can you please remove the LIB_INSTALL_DIR hack for win32 in the places where you added it ? It should now work everywhere automatically (because it is done now in FindKDE4Internal.cmake) Only issue: quotes must not be used around ${LIB_INSTALL_DIR}, because they turn the list of arguments into a string containing all the values Alex svn path=/trunk/KDE/kdelibs/; revision=736793 --- modules/FindKDE4Internal.cmake | 177 +++++++++++++++++++++++++---------------- 1 file changed, 108 insertions(+), 69 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5755836d..d0078f16 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -471,10 +471,10 @@ if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) endif(KDE4_ENABLE_FINAL) -#Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable -#which is something between a shared library and a normal executable. -#Programs compiled with these features appear as ?shared object? with the file command. -#info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" +# Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable +# which is something between a shared library and a normal executable. +# Programs compiled with these features appear as ?shared object? with the file command. +# info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) @@ -484,47 +484,85 @@ set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) # this has to be after find_xxx() block above, since there KDELibsDependencies.cmake is included # which contains the install dirs from kdelibs, which are reused below -# this macro implements some very special logic how to deal with the cache -# by default the various install locations inherit their value from theit "parent" variable -# so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will -# calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX -# this would work completely without using the cache. -# but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into -# the cache, otherwise it will be forgotten on the next cmake run. -# Once a variable is in the cache, it doesn't depend on its "parent" variables -# anymore and you can only change it by editing it directly. -# this macro helps in this regard, because as long as you don't set one of the -# variables explicitely to some location, it will always calculate its value from its -# parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. -# But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location -# this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. -# -# additionally if installing to the same location as kdelibs, the other install -# directories are reused from the installed kdelibs -macro(_SET_FANCY _var _value _comment) - set(predefinedvalue "${_value}") - if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - set(predefinedvalue "${KDE4_${_var}}") - endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) - - if (NOT DEFINED ${_var}) - set(${_var} ${predefinedvalue}) - else (NOT DEFINED ${_var}) - set(${_var} "${${_var}}" CACHE PATH "${_comment}") - endif (NOT DEFINED ${_var}) -endmacro(_SET_FANCY) - - if (WIN32) -# use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files - _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") - _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") - _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") - _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") - _set_fancy(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") - _set_fancy(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR})") - _set_fancy(INCLUDE_INSTALL_DIR "include" "The subdirectory to the header prefix") +# use relative install prefix to avoid hardcoded install paths in cmake_install.cmake files + +# ok, this is more like a hack to get dll's installed into the same directory as the executables +# without having to use the full syntax of INSTALL(TARGETS ...) everywhere. +# LIB_INSTALL_DIR is set to a list of arguments, the first being the "default" destination +# which is then overridden by the following three specialized destinations + set(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" + RUNTIME DESTINATION "bin" + LIBRARY DESTINATION "lib${LIB_SUFFIX}" + ARCHIVE DESTINATION "lib${LIB_SUFFIX}" ) # The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}) + + set(EXEC_INSTALL_PREFIX "" ) # Base directory for executables and libraries + set(SHARE_INSTALL_PREFIX "share" ) # Base directory for files which go to share/ + set(BIN_INSTALL_DIR "bin" ) # The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin) + set(SBIN_INSTALL_DIR "sbin" ) # The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin) + + set(LIBEXEC_INSTALL_DIR "${BIN_INSTALL_DIR}" ) # The subdirectory relative to the install prefix where libraries will be installed (default is ${BIN_INSTALL_DIR}) + set(INCLUDE_INSTALL_DIR "include" ) # The subdirectory to the header prefix + + set(PLUGIN_INSTALL_DIR "lib${LIB_SUFFIX}/kde4" ) # "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4) + set(CONFIG_INSTALL_DIR "share/config" ) # The config file install dir + set(DATA_INSTALL_DIR "share/apps" ) # The parent directory where applications can install their data + set(HTML_INSTALL_DIR "share/doc/HTML" ) # The HTML install dir for documentation + set(ICON_INSTALL_DIR "share/icons" ) # The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/) + set(KCFG_INSTALL_DIR "share/config.kcfg" ) # The install dir for kconfig files + set(LOCALE_INSTALL_DIR "share/locale" ) # The install dir for translations + set(MIME_INSTALL_DIR "share/mimelnk" ) # The install dir for the mimetype desktop files + set(SERVICES_INSTALL_DIR "share/kde4/services" ) # The install dir for service (desktop, protocol, ...) files + set(SERVICETYPES_INSTALL_DIR "share/kde4/servicetypes" ) # The install dir for servicestypes desktop files + set(SOUND_INSTALL_DIR "share/sounds" ) # The install dir for sound files + set(TEMPLATES_INSTALL_DIR "share/templates" ) # The install dir for templates (Create new file...) + set(WALLPAPER_INSTALL_DIR "share/wallpapers" ) # The install dir for wallpapers + set(KCONF_UPDATE_INSTALL_DIR "share/apps/kconf_update" ) # The kconf_update install dir + set(AUTOSTART_INSTALL_DIR "share/autostart" ) # The install dir for autostart files + + set(XDG_APPS_INSTALL_DIR "share/applications/kde4" ) # The XDG apps dir + set(XDG_DIRECTORY_INSTALL_DIR "share/desktop-directories" ) # The XDG directory + set(XDG_MIME_INSTALL_DIR "share/mime/packages" ) # The install dir for the xdg mimetypes + + set(SYSCONF_INSTALL_DIR "etc" ) # The kde sysconfig install dir (default /etc) + set(MAN_INSTALL_DIR "share/man" ) # The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/) + set(INFO_INSTALL_DIR "share/info" ) # The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") + set(DBUS_INTERFACES_INSTALL_DIR "share/dbus-1/interfaces" ) # The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") + set(DBUS_SERVICES_INSTALL_DIR "share/dbus-1/services" ) # The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + else (WIN32) + + # this macro implements some very special logic how to deal with the cache + # by default the various install locations inherit their value from theit "parent" variable + # so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will + # calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX + # this would work completely without using the cache. + # but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into + # the cache, otherwise it will be forgotten on the next cmake run. + # Once a variable is in the cache, it doesn't depend on its "parent" variables + # anymore and you can only change it by editing it directly. + # this macro helps in this regard, because as long as you don't set one of the + # variables explicitely to some location, it will always calculate its value from its + # parents. So modifying CMAKE_INSTALL_PREFIX later on will have the desired effect. + # But once you decide to set e.g. EXEC_INSTALL_PREFIX to some special location + # this will go into the cache and it will no longer depend on CMAKE_INSTALL_PREFIX. + # + # additionally if installing to the same location as kdelibs, the other install + # directories are reused from the installed kdelibs + macro(_SET_FANCY _var _value _comment) + set(predefinedvalue "${_value}") + if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + set(predefinedvalue "${KDE4_${_var}}") + endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + + if (NOT DEFINED ${_var}) + set(${_var} ${predefinedvalue}) + else (NOT DEFINED ${_var}) + set(${_var} "${${_var}}" CACHE PATH "${_comment}") + endif (NOT DEFINED ${_var}) + endmacro(_SET_FANCY) + + _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") @@ -532,33 +570,34 @@ else (WIN32) _set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})") _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/kde4/libexec)") _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") -endif (WIN32) -_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") -_set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") -_set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") -_set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") -_set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") -_set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") -_set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") -_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") -_set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") -_set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") -_set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") -_set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") -_set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") -_set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") - -_set_fancy(XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") -_set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") -_set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") - -_set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") -_set_fancy(MAN_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/man" "The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/)") -_set_fancy(INFO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/info" "The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") -_set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") -_set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") + _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") + _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") + _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") + _set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") + _set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") + _set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") + _set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") + _set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") + _set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") + _set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") + _set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") + _set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") + _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") + _set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") + + _set_fancy(XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") + _set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") + _set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") + + _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default ${CMAKE_INSTALL_PREFIX}/etc)") + _set_fancy(MAN_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/man" "The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/)") + _set_fancy(INFO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/info" "The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") + _set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") + _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + +endif (WIN32) ############## add some more default search paths ############### -- cgit v1.2.1 From 4099fe2a9b0b1b5f73968d06441a52574bad6de2 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Fri, 16 Nov 2007 14:36:47 +0000 Subject: newer OpenEXR has a libIlmThread svn path=/trunk/KDE/kdelibs/; revision=737558 --- modules/FindOpenEXR.cmake | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 33560ff5..655080b4 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -58,9 +58,16 @@ ENDIF (NOT WIN32) ) FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf ) + FIND_LIBRARY(OPENEXR_ILMTHREAD_LIBRARY NAMES IlmThread + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) set(OPENEXR_FOUND TRUE) - set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ${OPENEXR_ILMTHREAD_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") if (WIN32) set(_OPENEXR_DEFINITIONS -DOPENEXR_DLL) @@ -88,6 +95,7 @@ ENDIF (NOT WIN32) OPENEXR_INCLUDE_DIR OPENEXR_LIBRARIES OPENEXR_ILMIMF_LIBRARY + OPENEXR_ILMTHREAD_LIBRARY OPENEXR_IMATH_LIBRARY OPENEXR_IEX_LIBRARY OPENEXR_HALF_LIBRARY -- cgit v1.2.1 From 82318af5cbdee501e4be6255f44692dc014c9aba Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 16 Nov 2007 17:04:28 +0000 Subject: Use the -Woverloaded-virtual compile option, if available. OK'd on k-c-d. svn path=/trunk/KDE/kdelibs/; revision=737584 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d0078f16..6b262d90 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -858,6 +858,11 @@ if (CMAKE_COMPILER_IS_GNUCXX) #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") endif (__KDE_HAVE_NO_THREADSAFE_STATICS) + check_cxx_compiler_flag(-Woverloaded-virtual __KDE_HAVE_W_OVERLOADED_VIRTUAL) + if(__KDE_HAVE_W_OVERLOADED_VIRTUAL) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual") + endif(__KDE_HAVE_W_OVERLOADED_VIRTUAL) + # visibility support check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY) set( __KDE_HAVE_GCC_VISIBILITY ${__KDE_HAVE_GCC_VISIBILITY} CACHE BOOL "GCC support for hidden visibility") -- cgit v1.2.1 From ebc642883711e18259ccee50451fec0852a7a17d Mon Sep 17 00:00:00 2001 From: Valentin Rusu Date: Fri, 16 Nov 2007 21:39:21 +0000 Subject: fix for build on systmes that do not have OPENEXR_ILMTHREAD_LIBRARY svn path=/trunk/KDE/kdelibs/; revision=737656 --- modules/FindOpenEXR.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 655080b4..66c57194 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -67,7 +67,11 @@ ENDIF (NOT WIN32) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) set(OPENEXR_FOUND TRUE) - set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ${OPENEXR_ILMTHREAD_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + if (OPENEXR_ILMTHREAD_LIBRARY) + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ${OPENEXR_ILMTHREAD_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + else (OPENEXR_ILMTHREAD_LIBRARY) + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + endif (OPENEXR_ILMTHREAD_LIBRARY) if (WIN32) set(_OPENEXR_DEFINITIONS -DOPENEXR_DLL) -- cgit v1.2.1 From ebe0a2529ef969837aa7c6523f28d03a747d8822 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 18 Nov 2007 16:33:19 +0000 Subject: It's used by kdeutils/extragear/network svn path=/trunk/KDE/kdelibs/; revision=738323 --- modules/FindGMP.cmake | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 modules/FindGMP.cmake (limited to 'modules') diff --git a/modules/FindGMP.cmake b/modules/FindGMP.cmake new file mode 100644 index 00000000..f9efe90c --- /dev/null +++ b/modules/FindGMP.cmake @@ -0,0 +1,23 @@ +# Try to find the GMP librairies +# GMP_FOUND - system has GMP lib +# GMP_INCLUDE_DIR - the GMP include directory +# GMP_LIBRARIES - Libraries needed to use GMP + +# Copyright (c) 2006, Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (GMP_INCLUDE_DIR AND GMP_LIBRARIES) + # Already in cache, be silent + set(GMP_FIND_QUIETLY TRUE) +endif (GMP_INCLUDE_DIR AND GMP_LIBRARIES) + +find_path(GMP_INCLUDE_DIR NAMES gmp.h ) +find_library(GMP_LIBRARIES NAMES gmp ) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(GMP DEFAULT_MSG GMP_INCLUDE_DIR GMP_LIBRARIES) + +mark_as_advanced(GMP_INCLUDE_DIR GMP_LIBRARIES) -- cgit v1.2.1 From ec644fd8a556bbba389b96f4c0d82ad1b502abc1 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Sun, 18 Nov 2007 23:17:00 +0000 Subject: not sure whether I should change it here or in the qt4_add_dbus_* macros; breaks possibly something svn path=/trunk/KDE/kdelibs/; revision=738461 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6b262d90..5d0f1eec 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -527,7 +527,7 @@ if (WIN32) set(SYSCONF_INSTALL_DIR "etc" ) # The kde sysconfig install dir (default /etc) set(MAN_INSTALL_DIR "share/man" ) # The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/) set(INFO_INSTALL_DIR "share/info" ) # The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") - set(DBUS_INTERFACES_INSTALL_DIR "share/dbus-1/interfaces" ) # The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") + set(DBUS_INTERFACES_INSTALL_DIR "${KDE4_INSTALL_DIR}/share/dbus-1/interfaces" ) # The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") set(DBUS_SERVICES_INSTALL_DIR "share/dbus-1/services" ) # The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") else (WIN32) -- cgit v1.2.1 From db1f97d39f94fd306109ccc6d567349736b0302e Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Mon, 19 Nov 2007 00:34:21 +0000 Subject: reverting the change -> problem lies in kdebase (use of DBUS_INTERFACES_INSTALL_DIR is not wanted, instead KDE4_DBUS_INTERFACES_DIR should be used; this makes a difference now.) CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=738489 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5d0f1eec..6b262d90 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -527,7 +527,7 @@ if (WIN32) set(SYSCONF_INSTALL_DIR "etc" ) # The kde sysconfig install dir (default /etc) set(MAN_INSTALL_DIR "share/man" ) # The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/) set(INFO_INSTALL_DIR "share/info" ) # The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") - set(DBUS_INTERFACES_INSTALL_DIR "${KDE4_INSTALL_DIR}/share/dbus-1/interfaces" ) # The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") + set(DBUS_INTERFACES_INSTALL_DIR "share/dbus-1/interfaces" ) # The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") set(DBUS_SERVICES_INSTALL_DIR "share/dbus-1/services" ) # The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") else (WIN32) -- cgit v1.2.1 From afc0b5adb7fcb1b62ba50c4bc1cc28b3364cc8f2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 19 Nov 2007 21:52:16 +0000 Subject: -add some more quotes to help with spaces -use only one SET_TARGET_PROPERTIES() instead of two, kdefakes is build as C++ instead of C library because of automoc (which comes with kde4_add_library, which adds a C++ file to every target). To avoid this simply add_library() could be used, it just has to be made sure that the RPATH is correc (should be automatically) and the correct definitions are set (for exporting the right symbols) Alex CCMAIL: ossi@kde.org svn path=/trunk/KDE/kdelibs/; revision=738871 --- modules/KDE4Macros.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b8d90a7c..e72c50d2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -321,10 +321,10 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) #Bootstrap if (_kdeBootStrapping) - set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/docbook/xsl/manpages/docbook.xsl) + set(_ssheet "${CMAKE_SOURCE_DIR}/kdoctools/docbook/xsl/manpages/docbook.xsl") set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") else (_kdeBootStrapping) - set(_ssheet ${KDE4_DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl) + set(_ssheet "${KDE4_DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl") set(_bootstrapOption) endif (_kdeBootStrapping) @@ -332,7 +332,7 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) COMMAND ${KDE4_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) - add_custom_target(manpage ALL DEPENDS ${_outdoc}) + add_custom_target(manpage ALL DEPENDS "${_outdoc}") set(_args ${ARGN}) -- cgit v1.2.1 From 4b274a9927bf2d5d42de69c63703d4284663a8c9 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Tue, 20 Nov 2007 11:19:18 +0000 Subject: if there's nothing to moc, don't add automoc source which is C++, then a lib with only C sources remains a C lib svn path=/trunk/KDE/kdelibs/; revision=739064 --- modules/KDE4Macros.cmake | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e72c50d2..d17def4a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -216,21 +216,23 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) endif(NOT _generated AND NOT _skip) endforeach (_current_FILE) - set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") - GET_DIRECTORY_PROPERTY(_moc_incs INCLUDE_DIRECTORIES) - CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) - add_custom_command(OUTPUT ${_automoc_source} - COMMAND ${KDE4_AUTOMOC_EXECUTABLE} - ${_automoc_source} - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} - ${QT_MOC_EXECUTABLE} - DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} - ) - # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file - # problem: the whole target is recompiled when the automoc.cpp file is touched - # set_source_files_properties(${${_SRCS}} PROPERTIES OBJECT_DEPENDS ${_automoc_source}) - set(${_SRCS} ${_automoc_source} ${${_SRCS}}) + if(_moc_files) + set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") + GET_DIRECTORY_PROPERTY(_moc_incs INCLUDE_DIRECTORIES) + CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) + add_custom_command(OUTPUT ${_automoc_source} + COMMAND ${KDE4_AUTOMOC_EXECUTABLE} + ${_automoc_source} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${QT_MOC_EXECUTABLE} + DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} + ) + # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file + # problem: the whole target is recompiled when the automoc.cpp file is touched + # set_source_files_properties(${${_SRCS}} PROPERTIES OBJECT_DEPENDS ${_automoc_source}) + set(${_SRCS} ${_automoc_source} ${${_SRCS}}) + endif(_moc_files) endmacro(KDE4_HANDLE_AUTOMOC) macro(KDE4_INSTALL_TS_FILES _lang _sdir) -- cgit v1.2.1 From 71749c79337d8470aeaf8809378eba45ae3c2ee4 Mon Sep 17 00:00:00 2001 From: Tom Albers Date: Tue, 20 Nov 2007 21:00:19 +0000 Subject: The po file is located in the source dir, so cd to that folder instead of the build dir. See k-c-d. svn path=/trunk/KDE/kdelibs/; revision=739317 --- modules/FindGettext.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 121c59a5..682906e5 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -214,6 +214,7 @@ MACRO(GETTEXT_PROCESS_PO_FILES _lang) SET(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo) add_custom_command(OUTPUT ${_gmoFile} COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_current_PO_FILE} + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" DEPENDS ${_current_PO_FILE} ) -- cgit v1.2.1 From 7dd313062785f85184b9ba73bbd34ed4549543ec Mon Sep 17 00:00:00 2001 From: Shane King Date: Wed, 21 Nov 2007 13:01:30 +0000 Subject: Fix to allow finding of windows ruby library svn path=/trunk/KDE/kdelibs/; revision=739636 --- modules/FindRUBY.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 043446d0..ee44bae2 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -51,6 +51,7 @@ IF(RUBY_EXECUTABLE) STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}") STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}") STRING(REPLACE "\n" "" RUBY_VERSION "${RUBY_VERSION}") + STRING(REPLACE "." "" RUBY_VERSION_NODOT "${RUBY_VERSION}") STRING(REPLACE "\n" "" RUBY_SITE_LIB_DIR "${RUBY_SITE_LIB_DIR}") STRING(REPLACE "\n" "" RUBY_SITE_ARCH_DIR "${RUBY_SITE_ARCH_DIR}") @@ -60,7 +61,7 @@ IF(RUBY_EXECUTABLE) ) FIND_LIBRARY(RUBY_LIBRARY - NAMES ruby${RUBY_VERSION} ruby + NAMES ruby${RUBY_VERSION} ruby msvcrt-ruby${RUBY_VERSION_NODOT} PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH} ) -- cgit v1.2.1 From 594cb7ec267e0c5e2cb9b956094b19a7f2675bc6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 24 Nov 2007 23:23:06 +0000 Subject: fix indentation Alex svn path=/trunk/KDE/kdelibs/; revision=741152 --- modules/FindLibraryWithDebug.cmake | 140 ++++++++++++++++++------------------- 1 file changed, 70 insertions(+), 70 deletions(-) (limited to 'modules') diff --git a/modules/FindLibraryWithDebug.cmake b/modules/FindLibraryWithDebug.cmake index a2593974..58cd7308 100644 --- a/modules/FindLibraryWithDebug.cmake +++ b/modules/FindLibraryWithDebug.cmake @@ -4,110 +4,110 @@ # optional debug library with a WIN32_DEBUG_POSTFIX similar # to CMAKE_DEBUG_POSTFIX when creating a shared lib # it has to be the second and third argument -# + # Copyright (c) 2007, Christian Ehrlicher, # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. MACRO(FIND_LIBRARY_WITH_DEBUG var_name win32_dbg_postfix_name dgb_postfix libname) - IF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + IF(NOT "${win32_dbg_postfix_name}" STREQUAL "WIN32_DEBUG_POSTFIX") - # no WIN32_DEBUG_POSTFIX -> simply pass all arguments to FIND_LIBRARY - FIND_LIBRARY(${var_name} - ${win32_dbg_postfix_name} - ${dgb_postfix} - ${libname} - ${ARGN} - ) + # no WIN32_DEBUG_POSTFIX -> simply pass all arguments to FIND_LIBRARY + FIND_LIBRARY(${var_name} + ${win32_dbg_postfix_name} + ${dgb_postfix} + ${libname} + ${ARGN} + ) - ELSE(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + ELSE(NOT "${win32_dbg_postfix_name}" STREQUAL "WIN32_DEBUG_POSTFIX") - IF(NOT WIN32) - # on non-win32 we don't need to take care about WIN32_DEBUG_POSTFIX + IF(NOT WIN32) + # on non-win32 we don't need to take care about WIN32_DEBUG_POSTFIX - FIND_LIBRARY(${var_name} ${libname} ${ARGN}) + FIND_LIBRARY(${var_name} ${libname} ${ARGN}) - ELSE(NOT WIN32) + ELSE(NOT WIN32) - # 1. get all possible libnames - SET(args ${ARGN}) - SET(newargs "") - SET(libnames_release "") - SET(libnames_debug "") + # 1. get all possible libnames + SET(args ${ARGN}) + SET(newargs "") + SET(libnames_release "") + SET(libnames_debug "") - LIST(LENGTH args listCount) + LIST(LENGTH args listCount) - IF("${libname}" STREQUAL "NAMES") - SET(append_rest 0) - LIST(APPEND args " ") + IF("${libname}" STREQUAL "NAMES") + SET(append_rest 0) + LIST(APPEND args " ") - FOREACH(i RANGE ${listCount}) - LIST(GET args ${i} val) + FOREACH(i RANGE ${listCount}) + LIST(GET args ${i} val) - IF(append_rest) - LIST(APPEND newargs ${val}) - ELSE(append_rest) - IF("${val}" STREQUAL "PATHS") - LIST(APPEND newargs ${val}) - SET(append_rest 1) - ELSE("${val}" STREQUAL "PATHS") - LIST(APPEND libnames_release "${val}") - LIST(APPEND libnames_debug "${val}${dgb_postfix}") - ENDIF("${val}" STREQUAL "PATHS") - ENDIF(append_rest) + IF(append_rest) + LIST(APPEND newargs ${val}) + ELSE(append_rest) + IF("${val}" STREQUAL "PATHS") + LIST(APPEND newargs ${val}) + SET(append_rest 1) + ELSE("${val}" STREQUAL "PATHS") + LIST(APPEND libnames_release "${val}") + LIST(APPEND libnames_debug "${val}${dgb_postfix}") + ENDIF("${val}" STREQUAL "PATHS") + ENDIF(append_rest) - ENDFOREACH(i) + ENDFOREACH(i) - ELSE("${libname}" STREQUAL "NAMES") + ELSE("${libname}" STREQUAL "NAMES") - # just one name - LIST(APPEND libnames_release "${libname}") - LIST(APPEND libnames_debug "${libname}${dgb_postfix}") + # just one name + LIST(APPEND libnames_release "${libname}") + LIST(APPEND libnames_debug "${libname}${dgb_postfix}") - SET(newargs ${args}) + SET(newargs ${args}) - ENDIF("${libname}" STREQUAL "NAMES") + ENDIF("${libname}" STREQUAL "NAMES") - # search the release lib - FIND_LIBRARY(${var_name}_RELEASE - NAMES ${libnames_release} - ${newargs} - ) + # search the release lib + FIND_LIBRARY(${var_name}_RELEASE + NAMES ${libnames_release} + ${newargs} + ) - # search the debug lib - FIND_LIBRARY(${var_name}_DEBUG - NAMES ${libnames_debug} - ${newargs} - ) + # search the debug lib + FIND_LIBRARY(${var_name}_DEBUG + NAMES ${libnames_debug} + ${newargs} + ) - IF(${var_name}_RELEASE AND ${var_name}_DEBUG) + IF(${var_name}_RELEASE AND ${var_name}_DEBUG) - # both libs found - SET(${var_name} optimized ${${var_name}_RELEASE} - debug ${${var_name}_DEBUG}) + # both libs found + SET(${var_name} optimized ${${var_name}_RELEASE} + debug ${${var_name}_DEBUG}) - ELSE(${var_name}_RELEASE AND ${var_name}_DEBUG) + ELSE(${var_name}_RELEASE AND ${var_name}_DEBUG) - IF(${var_name}_RELEASE) + IF(${var_name}_RELEASE) - # only release found - SET(${var_name} ${${var_name}_RELEASE}) + # only release found + SET(${var_name} ${${var_name}_RELEASE}) - ELSE(${var_name}_RELEASE) + ELSE(${var_name}_RELEASE) - # only debug (or nothing) found - SET(${var_name} ${${var_name}_DEBUG}) + # only debug (or nothing) found + SET(${var_name} ${${var_name}_DEBUG}) - ENDIF(${var_name}_RELEASE) + ENDIF(${var_name}_RELEASE) - ENDIF(${var_name}_RELEASE AND ${var_name}_DEBUG) + ENDIF(${var_name}_RELEASE AND ${var_name}_DEBUG) - MARK_AS_ADVANCED(${var_name}_RELEASE) - MARK_AS_ADVANCED(${var_name}_DEBUG) + MARK_AS_ADVANCED(${var_name}_RELEASE) + MARK_AS_ADVANCED(${var_name}_DEBUG) - ENDIF(NOT WIN32) + ENDIF(NOT WIN32) - ENDIF(NOT ${win32_dbg_postfix_name} STREQUAL "WIN32_DEBUG_POSTFIX") + ENDIF(NOT "${win32_dbg_postfix_name}" STREQUAL "WIN32_DEBUG_POSTFIX") ENDMACRO(FIND_LIBRARY_WITH_DEBUG) -- cgit v1.2.1 From a85c3dc5371b8d45400b894b957e9eb4e6ff98cf Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 24 Nov 2007 23:52:04 +0000 Subject: It is really a bad idea to search for stuff _only_ using NO_DEFAULT_PATH. In the case that what you are looking for is somewhere else then cmake has no way to find it. For custom install locations cmake provides the environment variables CMAKE_LIBRARY_PATH and FIND_INCLUDE_PATH. So if you have your own set of install locations, set these two environment variables accordingly. cmake cvs additionally offers CMAKE_FIND_PREFIX_PATH, which is used by all FIND_PATH/FILE/LIBRARY/PROGRAM() calls with the appropriate subdir appended. I.e. if you install everything to ~/mystuff/, do export CMAKE_FIND_PREFIX_PATH=$HOME/mystuff, cmake will append the include/, lib/ and bin/ subdirectories automatically. Adding CMAKE_INSTALL_DIR/ is not necessary, this is done by default in FindKDE4Internal.cmake (and in cmake > 2.4.7). So now at first the FIND_XXX() calls are used with NO_DEFAULT_PATH, so no change here for UNIX, and after that the FIND_XXX() calls are used without NO_DEFAULT_PATH for the case that the first one didn't succeed (so no change for Windows). This has the nice effect that the cmake-provided means to specify custom search locations work again. Alex CCMAIL: ch.ehrlicher@gmx.de CCMAIL: kretz@kde.org svn path=/trunk/KDE/kdelibs/; revision=741164 --- modules/FindStrigi.cmake | 36 ++++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index f28f733a..6ad6ec74 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -6,6 +6,10 @@ # STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer # STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams +# at first search only in the specified directories (NO_DEFAULT_PATH) +# only if it wasn't found there, the second call to FIND_PATH/LIBRARY() +# will actually do something, Alex + include(FindLibraryWithDebug) if(NOT STRIGI_MIN_VERSION) @@ -15,9 +19,6 @@ endif(NOT STRIGI_MIN_VERSION) if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) string(REPLACE "\\" "/" _program_FILES_DIR "${_program_FILES_DIR}") - set(STRIGI_NO_DEF_PATH "") -else(WIN32) - set(STRIGI_NO_DEF_PATH NO_DEFAULT_PATH) endif(WIN32) string(REPLACE "\\" "/" strigi_home "$ENV{STRIGI_HOME}") @@ -25,41 +26,52 @@ string(REPLACE "\\" "/" strigi_home "$ENV{STRIGI_HOME}") find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS ${strigi_home}/include - ${CMAKE_INSTALL_PREFIX}/include ${_program_FILES_DIR}/strigi/include - ${STRIGI_NO_DEF_PATH} + NO_DEFAULT_PATH ) +find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h) + find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streamanalyzer PATHS ${strigi_home}/lib - ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib - ${STRIGI_NO_DEF_PATH} + NO_DEFAULT_PATH ) +find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES streamanalyzer ) + + find_library_with_debug(STRIGI_STREAMS_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streams PATHS ${strigi_home}/lib - ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib - ${STRIGI_NO_DEF_PATH} + NO_DEFAULT_PATH ) +find_library_with_debug(STRIGI_STREAMS_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES streams ) + find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY WIN32_DEBUG_POSTFIX d NAMES strigiqtdbusclient PATHS ${strigi_home}/lib - ${CMAKE_INSTALL_PREFIX}/lib ${_program_FILES_DIR}/strigi/lib - ${STRIGI_NO_DEF_PATH} + NO_DEFAULT_PATH ) +find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES strigiqtdbusclient ) + if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(UsePkgConfig) @@ -103,6 +115,6 @@ endif (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi - "Couldn't find Strigi streams library in $STRIGI_HOME/lib, ${CMAKE_INSTALL_PREFIX}/lib, ${_program_FILES_DIR}/strigi/lib" + "Couldn't find Strigi streams library. Set the environment variable STRIGI_HOME (or CMAKE_FIND_PREFIX_PATH if using CMake >=2.5) to the strigi install dir." STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) -- cgit v1.2.1 From 81b85a5f6120c38a94583326ce96f54136e03bea Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 25 Nov 2007 16:48:35 +0000 Subject: rearrange evaluation of executable params to not forget some svn path=/trunk/KDE/kdelibs/; revision=741409 --- modules/KDE4Macros.cmake | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d17def4a..029bdf93 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -658,26 +658,26 @@ macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst _test) set(remove 0) endif (${first_PARAM} STREQUAL "NOGUI") - if (${second_PARAM} STREQUAL "NOGUI") - set(${_nogui} "NOGUI") - set(remove 0;1) - endif (${second_PARAM} STREQUAL "NOGUI") - if (${first_PARAM} STREQUAL "RUN_UNINSTALLED") set(${_uninst} "RUN_UNINSTALLED") set(remove 0) endif (${first_PARAM} STREQUAL "RUN_UNINSTALLED") - if (${second_PARAM} STREQUAL "RUN_UNINSTALLED") - set(${_uninst} "RUN_UNINSTALLED") - set(remove 0;1) - endif (${second_PARAM} STREQUAL "RUN_UNINSTALLED") - if (${first_PARAM} STREQUAL "TEST") set(${_test} "TEST") set(remove 0) endif (${first_PARAM} STREQUAL "TEST") + if (${second_PARAM} STREQUAL "NOGUI") + set(${_nogui} "NOGUI") + set(remove 0;1) + endif (${second_PARAM} STREQUAL "NOGUI") + + if (${second_PARAM} STREQUAL "RUN_UNINSTALLED") + set(${_uninst} "RUN_UNINSTALLED") + set(remove 0;1) + endif (${second_PARAM} STREQUAL "RUN_UNINSTALLED") + if (${second_PARAM} STREQUAL "TEST") set(${_test} "TEST") set(remove 0;1) @@ -809,7 +809,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endif (_nogui) if (_uninst OR _test) - set(_type "RUN_UNINSTALLED") + set(_type "RUN_UNINSTALLED ${_type}") endif (_uninst OR _test) if (_test AND NOT KDE4_BUILD_TESTS) -- cgit v1.2.1 From 1468725d8200bcc0f5c9130e4fde666e0f164285 Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Thu, 29 Nov 2007 13:23:40 +0000 Subject: Handle the presence of NetworkManager 0.7 in KDE4 builds *) Adapt MacroEnsureVersion.cmake to be able to check upper limits on version numbers *) Adapt kdelibs/cmake/modules/FindNetworkManager.cmake to report the version found *) Adapt kdebase/workspace/solid to select which version of NetworkManager support to build. *) Move NM 0.6 and NM 0.7 support into separate directories. NB This is build infrastructure only. There is no Solid backend for NM 0.7. Yet. CCMAIL: rdieter@math.unl.edu svn path=/trunk/KDE/kdelibs/; revision=742968 --- modules/FindNetworkManager.cmake | 6 +- modules/MacroEnsureVersion.cmake | 134 ++++++++++++++++++++++++++------------- 2 files changed, 94 insertions(+), 46 deletions(-) (limited to 'modules') diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake index e931d091..5fa21274 100644 --- a/modules/FindNetworkManager.cmake +++ b/modules/FindNetworkManager.cmake @@ -5,6 +5,7 @@ # NETWORKMANAGER_INCLUDE_DIR - the NetworkManager include directory # NETWORKMANAGER_LIBRARY - the libraries needed to use NetworkManager # NETWORKMANAGER_DEFINITIONS - Compiler switches required for using NetworkManager +# NETWORKMANAGER_VERSION - version number of NetworkManager # Copyright (c) 2006, Alexander Neundorf, # Copyright (c) 2007, Will Stephenson, @@ -22,13 +23,14 @@ IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) - PKGCONFIG(NetworkManager _NetworkManagerIncDir _NetworkManagerLinkDir _NetworkManagerLinkFlags _NetworkManagerCflags) + SET(NETWORKMANAGER_VERSION) + PKGCONFIG_VERSION(NetworkManager _NetworkManagerIncDir _NetworkManagerLinkDir _NetworkManagerLinkFlags _NetworkManagerCflags NETWORKMANAGER_VERSION) SET(NETWORKMANAGER_DEFINITIONS ${_NetworkManagerCflags}) PKGCONFIG(libnm-util _libnm-utilIncDir _libnm-utilLinkDir _libnm-utilLinkFlags _libnm-utilCflags) SET(NM-UTILS_DEFINITIONS ${_libnm-utilCflags}) ENDIF (NOT WIN32) -MESSAGE(STATUS "Found NetworkManager: ${_NetworkManagerLinkFlags}") +MESSAGE(STATUS "Found NetworkManager ${NETWORKMANAGER_VERSION}: ${_NetworkManagerLinkFlags}") FIND_PATH(NETWORKMANAGER_INCLUDE_DIR NetworkManager/NetworkManager.h PATHS ${_NetworkManagerIncDir} diff --git a/modules/MacroEnsureVersion.cmake b/modules/MacroEnsureVersion.cmake index c6df537a..6797e5b7 100644 --- a/modules/MacroEnsureVersion.cmake +++ b/modules/MacroEnsureVersion.cmake @@ -1,66 +1,98 @@ -# This macro compares version numbers of the form "x.y.z" +# This file defines the following macros for developers to use in ensuring +# that installed software is of the right version: +# +# MACRO_ENSURE_VERSION - test that a version number is greater than +# or equal to some minimum +# MACRO_ENSURE_VERSION_RANGE - test that a version number is greater than +# or equal to some minimum and less than some +# maximum +# MACRO_ENSURE_VERSION2 - deprecated, do not use in new code +# + +# MACRO_ENSURE_VERSION +# This macro compares version numbers of the form "x.y.z" or "x.y" # MACRO_ENSURE_VERSION( FOO_MIN_VERSION FOO_VERSION_FOUND FOO_VERSION_OK) -# will set FOO_VERSIN_OK to true if FOO_VERSION_FOUND >= FOO_MIN_VERSION -# where both have to be in a 3-part-version format, leading and trailing -# text is ok, e.g. +# will set FOO_VERSION_OK to true if FOO_VERSION_FOUND >= FOO_MIN_VERSION +# Leading and trailing text is ok, e.g. # MACRO_ENSURE_VERSION( "2.5.31" "flex 2.5.4a" VERSION_OK) # which means 2.5.31 is required and "flex 2.5.4a" is what was found on the system # Copyright (c) 2006, David Faure, +# Copyright (c) 2007, Will Stephenson # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) - - # parse the parts of the version string - STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_major_vers "${requested_version}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)\\.[0-9]+" "\\1" req_minor_vers "${requested_version}") - STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_patch_vers "${requested_version}") - - STRING(REGEX REPLACE "[^0-9]*([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") - STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" found_minor_vers "${found_version}") - STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_patch_vers "${found_version}") - - # compute an overall version number which can be compared at once - MATH(EXPR req_vers_num "${req_major_vers}*10000 + ${req_minor_vers}*100 + ${req_patch_vers}") - MATH(EXPR found_vers_num "${found_major_vers}*10000 + ${found_minor_vers}*100 + ${found_patch_vers}") - - if (found_vers_num LESS req_vers_num) - set( ${var_too_old} FALSE ) - else (found_vers_num LESS req_vers_num) - set( ${var_too_old} TRUE ) - endif (found_vers_num LESS req_vers_num) - -ENDMACRO(MACRO_ENSURE_VERSION) - - -# This macro compares version numbers of the form "x.y" -# MACRO_ENSURE_VERSION( FOO_MIN_VERSION FOO_VERSION_FOUND FOO_VERSION_OK) -# will set FOO_VERSIN_OK to true if FOO_VERSION_FOUND >= FOO_MIN_VERSION -# where both have to be in a 2-part-version format, leading and trailing -# text is ok, e.g. -# MACRO_ENSURE_VERSION( "0.5" "foo 0.6" VERSION_OK) -# which means 0.5 is required and "foo 0.6" is what was found on the system +# MACRO_ENSURE_VERSION_RANGE +# This macro ensures that a version number of the form +# "x.y.z" or "x.y" falls within a range defined by +# min_version <= found_version < max_version. +# If this expression holds, FOO_VERSION_OK will be set TRUE +# +# Example: MACRO_ENSURE_VERSION_RANGE3( "0.1.0" ${FOOCODE_VERSION} "0.7.0" FOO_VERSION_OK ) +# +# This macro will break silently if any of x,y,z are greater than 100. +# +# Copyright (c) 2007, Will Stephenson +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# NORMALIZE_VERSION +# Helper macro to convert version numbers of the form "x.y.z" +# to an integer equal to 10^4 * x + 10^2 * y + z +# +# This macro will break silently if any of x,y,z are greater than 100. +# # Copyright (c) 2006, David Faure, -# Copyright (c) 2007, Pino Toscano, +# Copyright (c) 2007, Will Stephenson # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -MACRO(MACRO_ENSURE_VERSION2 requested_version found_version var_too_old) +# CHECK_RANGE_INCLUSIVE_LOWER +# Helper macro to check whether x <= y < z +# +# Copyright (c) 2007, Will Stephenson +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - # parse the parts of the version string - STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+" "\\1" req_major_vers "${requested_version}") - STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)" "\\1" req_minor_vers "${requested_version}") - STRING(REGEX REPLACE "[^0-9]*([0-9]+)\\.[0-9]+.*" "\\1" found_major_vers "${found_version}") - STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.([0-9]+).*" "\\1" found_minor_vers "${found_version}") +MACRO(NORMALIZE_VERSION _requested_version _normalized_version) + STRING(REGEX MATCH "[^0-9]*[0-9]+\\.[0-9]+\\.[0-9]+.*" _threePartMatch "${_requested_version}") + if (_threePartMatch) + # parse the parts of the version string + STRING(REGEX REPLACE "[^0-9]*([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" _major_vers "${_requested_version}") + STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" _minor_vers "${_requested_version}") + STRING(REGEX REPLACE "[^0-9]*[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" _patch_vers "${_requested_version}") + else (_threePartMatch) + STRING(REGEX REPLACE "([0-9]+)\\.[0-9]+" "\\1" _major_vers "${_requested_version}") + STRING(REGEX REPLACE "[0-9]+\\.([0-9]+)" "\\1" _minor_vers "${_requested_version}") + set(_patch_vers "0") + endif (_threePartMatch) # compute an overall version number which can be compared at once - MATH(EXPR req_vers_num "${req_major_vers}*100 + ${req_minor_vers}") - MATH(EXPR found_vers_num "${found_major_vers}*100 + ${found_minor_vers}") + MATH(EXPR ${_normalized_version} "${_major_vers}*10000 + ${_minor_vers}*100 + ${_patch_vers}") +ENDMACRO(NORMALIZE_VERSION) + +MACRO(MACRO_CHECK_RANGE_INCLUSIVE_LOWER _lower_limit _value _upper_limit _ok) + if (${_value} LESS ${_lower_limit}) + set( ${_ok} FALSE ) + elseif (${_value} EQUAL ${_lower_limit}) + set( ${_ok} TRUE ) + elseif (${_value} EQUAL ${_upper_limit}) + set( ${_ok} FALSE ) + elseif (${_value} GREATER ${_upper_limit}) + set( ${_ok} FALSE ) + else (${_value} LESS ${_lower_limit}) + set( ${_ok} TRUE ) + endif (${_value} LESS ${_lower_limit}) +ENDMACRO(MACRO_CHECK_RANGE_INCLUSIVE_LOWER) + +MACRO(MACRO_ENSURE_VERSION requested_version found_version var_too_old) + NORMALIZE_VERSION( ${requested_version} req_vers_num ) + NORMALIZE_VERSION( ${found_version} found_vers_num ) if (found_vers_num LESS req_vers_num) set( ${var_too_old} FALSE ) @@ -68,4 +100,18 @@ MACRO(MACRO_ENSURE_VERSION2 requested_version found_version var_too_old) set( ${var_too_old} TRUE ) endif (found_vers_num LESS req_vers_num) +ENDMACRO(MACRO_ENSURE_VERSION) + +MACRO(MACRO_ENSURE_VERSION2 requested_version2 found_version2 var_too_old2) + MACRO_ENSURE_VERSION( ${requested_version2} ${found_version2} ${var_too_old2}) ENDMACRO(MACRO_ENSURE_VERSION2) + +MACRO(MACRO_ENSURE_VERSION_RANGE min_version found_version max_version var_ok) + NORMALIZE_VERSION( ${min_version} req_vers_num ) + NORMALIZE_VERSION( ${found_version} found_vers_num ) + NORMALIZE_VERSION( ${max_version} max_vers_num ) + + MACRO_CHECK_RANGE_INCLUSIVE_LOWER( ${req_vers_num} ${found_vers_num} ${max_vers_num} ${var_ok}) +ENDMACRO(MACRO_ENSURE_VERSION_RANGE) + + -- cgit v1.2.1 From ab749e1349eb9ef30ed77f1a649bed3003f47dbf Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Thu, 29 Nov 2007 15:54:38 +0000 Subject: Add PKGCONFIG_VERSION macro that determines the version of a package using pkg-config too. svn path=/trunk/KDE/kdelibs/; revision=742999 --- modules/UsePkgConfig.cmake | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index 8874c94e..c8c6cd2a 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -37,9 +37,9 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) ELSE( NOT _return_VALUE) - - MESSAGE(STATUS "PKGCONFIG macro signal that ${_package} is not installed on your computer.") - MESSAGE(STATUS "Install package which contains ${_package}.pc if you want to support this feature.") + + MESSAGE(STATUS "KDE CMake PKGCONFIG macro indicates that ${_package} is not installed on your computer.") + MESSAGE(STATUS "Install the package which contains ${_package}.pc if you want to support this feature.") ENDIF(NOT _return_VALUE) @@ -47,4 +47,19 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) +MACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) + #reset variable + SET(${_found_version}) + IF(PKGCONFIG_EXECUTABLE) + #call PKGCONFIG + PKGCONFIG(${_package} ${_include_DIR} ${_link_DIR} ${_link_FLAGS} ${_cflags}) + IF(${_include_DIR}) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --modversion OUTPUT_VARIABLE ${_found_version}) + IF(NOT ${_found_version}) + MESSAGE(FATAL_ERROR "UsePkgConfig.cmake: No version found for ${_package}") + ENDIF(NOT ${_found_version}) + ENDIF(${_include_DIR}) + ENDIF(PKGCONFIG_EXECUTABLE) +ENDMACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) + MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) -- cgit v1.2.1 From bb012c0137bf6f3cc54ae0ee97c357c07e660383 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Fri, 30 Nov 2007 10:39:36 +0000 Subject: merge in the whitespace handling fixes from cmake 2.4.7 to make extragear-graphics work svn path=/trunk/KDE/kdelibs/; revision=743254 --- modules/FindKdcraw.cmake | 4 ++-- modules/FindKexiv2.cmake | 4 ++-- modules/PkgConfigVersion.cmake | 34 ++++++++++++++++++++++++++++++++++ modules/UsePkgConfig.cmake | 40 ++++++++++++++++++---------------------- 4 files changed, 56 insertions(+), 26 deletions(-) create mode 100644 modules/PkgConfigVersion.cmake (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index 9c611384..f3b33bf8 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -31,7 +31,7 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) else (KDCRAW_LOCAL_FOUND_IN_LIBS) set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) endif (KDCRAW_LOCAL_FOUND_IN_LIBS) - set(KDCRAW_DEFINITIONS -I${KDCRAW_INCLUDE_DIR}) + set(KDCRAW_DEFINITIONS "-I${KDCRAW_INCLUDE_DIR}") set(KDCRAW_LIBRARIES kdcraw) message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_INCLUDE_DIR}") set(KDCRAW_FOUND TRUE) @@ -67,7 +67,7 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) ENDif(NOT WIN32) if(KDCRAW_VERSION_GOOD_FOUND) - set(KDCRAW_DEFINITIONS ${_KDCRAWCflags}) + set(KDCRAW_DEFINITIONS "${_KDCRAWCflags}") FIND_PATH(KDCRAW_INCLUDE_DIR libkdcraw/version.h ${_KDCRAWIncDir} diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index da19ff8e..c57ed1c2 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -30,7 +30,7 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) else (KEXIV2_LOCAL_FOUND_IN_LIBS) set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) endif (KEXIV2_LOCAL_FOUND_IN_LIBS) - set(KEXIV2_DEFINITIONS -I${KEXIV2_INCLUDE_DIR}) + set(KEXIV2_DEFINITIONS "-I${KEXIV2_INCLUDE_DIR}") set(KEXIV2_LIBRARIES kexiv2) message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_INCLUDE_DIR}") set(KEXIV2_FOUND TRUE) @@ -66,7 +66,7 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) endif(NOT WIN32) if(KEXIV2_VERSION_GOOD_FOUND) - set(KEXIV2_DEFINITIONS ${_KEXIV2Cflags}) + set(KEXIV2_DEFINITIONS "${_KEXIV2Cflags}") FIND_PATH(KEXIV2_INCLUDE_DIR libkexiv2/version.h ${_KEXIV2IncDir} diff --git a/modules/PkgConfigVersion.cmake b/modules/PkgConfigVersion.cmake new file mode 100644 index 00000000..88d90e55 --- /dev/null +++ b/modules/PkgConfigVersion.cmake @@ -0,0 +1,34 @@ +# - pkg-config module for CMake + +# Copyright (c) 2007 Will Stephenson +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +# +# Defines the following macros: +# +# PKGCONFIG_VERSION(package includedir libdir linkflags cflags) +# +# ### ADD DOCUMENTATION! +# + +include(UsePkgConfig) + +MACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) + #reset variable + SET(${_found_version}) + IF(PKGCONFIG_EXECUTABLE) + #call PKGCONFIG + PKGCONFIG(${_package} ${_include_DIR} ${_link_DIR} ${_link_FLAGS} ${_cflags}) + IF(${_include_DIR}) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --modversion OUTPUT_VARIABLE ${_found_version}) + IF(NOT ${_found_version}) + MESSAGE(FATAL_ERROR "UsePkgConfig.cmake: No version found for ${_package}") + ENDIF(NOT ${_found_version}) + ENDIF(${_include_DIR}) + ENDIF(PKGCONFIG_EXECUTABLE) +ENDMACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) + +MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake index c8c6cd2a..8d6e0d34 100644 --- a/modules/UsePkgConfig.cmake +++ b/modules/UsePkgConfig.cmake @@ -1,3 +1,6 @@ + +# THIS IS A SLIGHTLY ENHANCED COPY OVER THE ONE OF CMAKE 2.4.7. DO NOT MODIFY IT FURTHER + # - pkg-config module for CMake # # Defines the following macros: @@ -10,9 +13,7 @@ # variable will be empty when the function returns, otherwise they will contain the respective information # - - -FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config ) +FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) # reset the variables at the beginning @@ -20,6 +21,7 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) SET(${_link_DIR}) SET(${_link_FLAGS}) SET(${_cflags}) + # if pkg-config has been found IF(PKGCONFIG_EXECUTABLE) @@ -28,13 +30,22 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) # and if the package of interest also exists for pkg-config, then get the information IF(NOT _return_VALUE) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir + OUTPUT_VARIABLE ${_include_DIR} ) + string(REGEX REPLACE "[\r\n]" " " ${_include_DIR} "${${_include_DIR}}") + - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir OUTPUT_VARIABLE ${_link_DIR} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir + OUTPUT_VARIABLE ${_link_DIR} ) + string(REGEX REPLACE "[\r\n]" " " ${_link_DIR} "${${_link_DIR}}") - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs OUTPUT_VARIABLE ${_link_FLAGS} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs + OUTPUT_VARIABLE ${_link_FLAGS} ) + string(REGEX REPLACE "[\r\n]" " " ${_link_FLAGS} "${${_link_FLAGS}}") - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags OUTPUT_VARIABLE ${_cflags} ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags + OUTPUT_VARIABLE ${_cflags} ) + string(REGEX REPLACE "[\r\n]" " " ${_cflags} "${${_cflags}}") ELSE( NOT _return_VALUE) @@ -47,19 +58,4 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) -MACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) - #reset variable - SET(${_found_version}) - IF(PKGCONFIG_EXECUTABLE) - #call PKGCONFIG - PKGCONFIG(${_package} ${_include_DIR} ${_link_DIR} ${_link_FLAGS} ${_cflags}) - IF(${_include_DIR}) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --modversion OUTPUT_VARIABLE ${_found_version}) - IF(NOT ${_found_version}) - MESSAGE(FATAL_ERROR "UsePkgConfig.cmake: No version found for ${_package}") - ENDIF(NOT ${_found_version}) - ENDIF(${_include_DIR}) - ENDIF(PKGCONFIG_EXECUTABLE) -ENDMACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) - MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) -- cgit v1.2.1 From f5adbd37061e186d24fe33b0e26d5443380f4275 Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Fri, 30 Nov 2007 15:27:37 +0000 Subject: Use FindPkgConfig instead of UsePkgConfig as suggested by Alex. CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=743304 --- modules/FindNetworkManager.cmake | 41 +++++++++++----------------------------- 1 file changed, 11 insertions(+), 30 deletions(-) (limited to 'modules') diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake index 5fa21274..8523bec7 100644 --- a/modules/FindNetworkManager.cmake +++ b/modules/FindNetworkManager.cmake @@ -2,9 +2,9 @@ # Once done this will define # # NETWORKMANAGER_FOUND - system has NetworkManager -# NETWORKMANAGER_INCLUDE_DIR - the NetworkManager include directory -# NETWORKMANAGER_LIBRARY - the libraries needed to use NetworkManager -# NETWORKMANAGER_DEFINITIONS - Compiler switches required for using NetworkManager +# NETWORKMANAGER_INCLUDE_DIRS - the NetworkManager include directories +# NETWORKMANAGER_LIBRARIES - the libraries needed to use NetworkManager +# NETWORKMANAGER_CFLAGS - Compiler switches required for using NetworkManager # NETWORKMANAGER_VERSION - version number of NetworkManager # Copyright (c) 2006, Alexander Neundorf, @@ -14,42 +14,23 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -IF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) +IF (NETWORKMANAGER_INCLUDE_DIRS AND NM-UTIL_INCLUDE_DIRS) # in cache already SET(NetworkManager_FIND_QUIETLY TRUE) -ENDIF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) +ENDIF (NETWORKMANAGER_INCLUDE_DIRS AND NM-UTIL_INCLUDE_DIRS) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - SET(NETWORKMANAGER_VERSION) - PKGCONFIG_VERSION(NetworkManager _NetworkManagerIncDir _NetworkManagerLinkDir _NetworkManagerLinkFlags _NetworkManagerCflags NETWORKMANAGER_VERSION) - SET(NETWORKMANAGER_DEFINITIONS ${_NetworkManagerCflags}) - PKGCONFIG(libnm-util _libnm-utilIncDir _libnm-utilLinkDir _libnm-utilLinkFlags _libnm-utilCflags) - SET(NM-UTILS_DEFINITIONS ${_libnm-utilCflags}) + INCLUDE(FindPkgConfig) + PKG_SEARCH_MODULE( NETWORKMANAGER NetworkManager ) + PKG_SEARCH_MODULE( NM_UTIL libnm-util ) ENDIF (NOT WIN32) -MESSAGE(STATUS "Found NetworkManager ${NETWORKMANAGER_VERSION}: ${_NetworkManagerLinkFlags}") -FIND_PATH(NETWORKMANAGER_INCLUDE_DIR NetworkManager/NetworkManager.h - PATHS - ${_NetworkManagerIncDir} - ) - -FIND_LIBRARY(NM-UTIL_LIBRARY NAMES nm-util - PATHS - ${_libnm-utilLinkDir} - ) - -IF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) - SET(NETWORKMANAGER_FOUND TRUE) -ELSE (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) - SET(NETWORKMANAGER_FOUND FALSE) -ENDIF (NETWORKMANAGER_INCLUDE_DIR AND NM-UTIL_LIBRARY) - IF (NETWORKMANAGER_FOUND) IF (NOT NetworkManager_FIND_QUIETLY) - MESSAGE(STATUS "Found libnm-util: ${NM-UTIL_LIBRARY}") + MESSAGE(STATUS "Found NetworkManager ${NETWORKMANAGER_VERSION}: ${NETWORKMANAGER_LIBRARY_DIRS}") + MESSAGE(STATUS "Found libnm-util: ${NM-UTIL_LIBRARY_DIRS}") ENDIF (NOT NetworkManager_FIND_QUIETLY) ELSE (NETWORKMANAGER_FOUND) IF (NetworkManager_FIND_REQUIRED) @@ -57,5 +38,5 @@ ELSE (NETWORKMANAGER_FOUND) ENDIF (NetworkManager_FIND_REQUIRED) ENDIF (NETWORKMANAGER_FOUND) -MARK_AS_ADVANCED(NETWORKMANAGER_INCLUDE_DIR NM-UTIL_LIBRARY) +MARK_AS_ADVANCED(NETWORKMANAGER_INCLUDE_DIRS NM-UTIL_INCLUDE_DIRS) -- cgit v1.2.1 From 4b1db27fa129020c3279847e9d70d394f261d0a4 Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Fri, 30 Nov 2007 16:23:12 +0000 Subject: Adapt to FindPkgConfig svn path=/trunk/KDE/kdelibs/; revision=743315 --- modules/FindNetworkManager.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake index 8523bec7..f85dfb5f 100644 --- a/modules/FindNetworkManager.cmake +++ b/modules/FindNetworkManager.cmake @@ -24,19 +24,19 @@ IF (NOT WIN32) # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(FindPkgConfig) PKG_SEARCH_MODULE( NETWORKMANAGER NetworkManager ) - PKG_SEARCH_MODULE( NM_UTIL libnm-util ) + PKG_SEARCH_MODULE( NM-UTIL libnm-util ) ENDIF (NOT WIN32) -IF (NETWORKMANAGER_FOUND) +IF (NETWORKMANAGER_FOUND AND NM-UTIL_FOUND) IF (NOT NetworkManager_FIND_QUIETLY) MESSAGE(STATUS "Found NetworkManager ${NETWORKMANAGER_VERSION}: ${NETWORKMANAGER_LIBRARY_DIRS}") MESSAGE(STATUS "Found libnm-util: ${NM-UTIL_LIBRARY_DIRS}") ENDIF (NOT NetworkManager_FIND_QUIETLY) -ELSE (NETWORKMANAGER_FOUND) +ELSE (NETWORKMANAGER_FOUND AND NM-UTIL_FOUND) IF (NetworkManager_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find NetworkManager") + MESSAGE(FATAL_ERROR "Could NOT find NetworkManager or libnm-util, check FindPkgConfig output above!") ENDIF (NetworkManager_FIND_REQUIRED) -ENDIF (NETWORKMANAGER_FOUND) +ENDIF (NETWORKMANAGER_FOUND AND NM-UTIL_FOUND) MARK_AS_ADVANCED(NETWORKMANAGER_INCLUDE_DIRS NM-UTIL_INCLUDE_DIRS) -- cgit v1.2.1 From dd3709f07408f6f42da0f5be8b6f997a674169df Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Fri, 30 Nov 2007 21:10:33 +0000 Subject: no longer needed, I think svn path=/trunk/KDE/kdelibs/; revision=743399 --- modules/PkgConfigVersion.cmake | 34 ---------------------------------- 1 file changed, 34 deletions(-) delete mode 100644 modules/PkgConfigVersion.cmake (limited to 'modules') diff --git a/modules/PkgConfigVersion.cmake b/modules/PkgConfigVersion.cmake deleted file mode 100644 index 88d90e55..00000000 --- a/modules/PkgConfigVersion.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# - pkg-config module for CMake - -# Copyright (c) 2007 Will Stephenson -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -# -# Defines the following macros: -# -# PKGCONFIG_VERSION(package includedir libdir linkflags cflags) -# -# ### ADD DOCUMENTATION! -# - -include(UsePkgConfig) - -MACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) - #reset variable - SET(${_found_version}) - IF(PKGCONFIG_EXECUTABLE) - #call PKGCONFIG - PKGCONFIG(${_package} ${_include_DIR} ${_link_DIR} ${_link_FLAGS} ${_cflags}) - IF(${_include_DIR}) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --modversion OUTPUT_VARIABLE ${_found_version}) - IF(NOT ${_found_version}) - MESSAGE(FATAL_ERROR "UsePkgConfig.cmake: No version found for ${_package}") - ENDIF(NOT ${_found_version}) - ENDIF(${_include_DIR}) - ENDIF(PKGCONFIG_EXECUTABLE) -ENDMACRO(PKGCONFIG_VERSION _package _include_DIR _link_DIR _link_FLAGS _cflags _found_version) - -MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) -- cgit v1.2.1 From 965e3c90e0f222afe23255c694103b922c5cf602 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Sun, 2 Dec 2007 12:40:16 +0000 Subject: problem on win32 - might be another problem somewhere else - packaging perhaps? svn path=/trunk/KDE/kdelibs/; revision=743951 --- modules/FindSharedMimeInfo.cmake | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 8b10d208..154e58a5 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -27,17 +27,15 @@ else (UPDATE_MIME_DATABASE_EXECUTABLE) exec_program (${UPDATE_MIME_DATABASE_EXECUTABLE} ARGS -v RETURN_VALUE _null OUTPUT_VARIABLE _smiVersionRaw) - string(REGEX REPLACE "update-mime-database \\(shared-mime-info\\) ([0-9]\\.[0-9]+).*" + string(REGEX REPLACE "update-mime-database \\([a-zA-Z\\-]+\\) ([0-9]\\.[0-9]+).*" "\\1" smiVersion "${_smiVersionRaw}") - set (SHARED_MIME_INFO_FOUND TRUE) endif (UPDATE_MIME_DATABASE_EXECUTABLE) if (SHARED_MIME_INFO_FOUND) if (NOT SharedMimeInfo_FIND_QUIETLY) message(STATUS "Found shared-mime-info version: ${smiVersion}") - - macro_ensure_version2(${SHARED_MIME_INFO_MINIMUM_VERSION} ${smiVersion} _smiVersion_OK) + macro_ensure_version(${SHARED_MIME_INFO_MINIMUM_VERSION} ${smiVersion} _smiVersion_OK) if (NOT _smiVersion_OK) message(STATUS "WARNING: the found version of shared-mime-info (${smiVersion}) is below the minimum required (${SHARED_MIME_INFO_MINIMUM_VERSION})") endif (NOT _smiVersion_OK) -- cgit v1.2.1 From 80cf7b857ae38ad933433dd977d408718fce7fe0 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 3 Dec 2007 15:55:23 +0000 Subject: Putting NOTFOUND together with other libs in a variable doesn't give good results; this could still be improved though, if some of these libs are indeed optional. svn path=/trunk/KDE/kdelibs/; revision=744437 --- modules/FindFFmpeg.cmake | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFFmpeg.cmake b/modules/FindFFmpeg.cmake index 0ec576a9..9768949d 100644 --- a/modules/FindFFmpeg.cmake +++ b/modules/FindFFmpeg.cmake @@ -50,7 +50,18 @@ ENDIF (NOT WIN32) NO_DEFAULT_PATH ) - set(FFMPEG_LIBRARIES ${AVCODEC_LIBRARIES} ${AVFORMAT_LIBRARIES} ${AVUTIL_LIBRARIES}) + set(FFMPEG_LIBRARIES ) + if (AVCODEC_LIBRARIES) + set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${AVCODEC_LIBRARIES}) + endif (AVCODEC_LIBRARIES) + + if (AVFORMAT_LIBRARIES) + set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${AVFORMAT_LIBRARIES}) + endif (AVFORMAT_LIBRARIES) + + if (AVUTIL_LIBRARIES) + set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${AVUTIL_LIBRARIES}) + endif (AVUTIL_LIBRARIES) if (FFMPEG_LIBRARIES) set(FFMPEG_FOUND TRUE) -- cgit v1.2.1 From b16050ff748c703ab53f1a81035f5b77f74e5fc6 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 5 Dec 2007 08:07:27 +0000 Subject: Search lib too svn path=/trunk/KDE/kdelibs/; revision=745044 --- modules/FindMusicBrainz.cmake | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake index a30e2973..e2e0d30d 100644 --- a/modules/FindMusicBrainz.cmake +++ b/modules/FindMusicBrainz.cmake @@ -6,10 +6,19 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(MUSICBRAINZ_INCLUDE_DIR AND MUSICBRAINZ_LIBRARIES) + set(MUSICBRAINZ_FIND_QUIETLY TRUE) +endif(MUSICBRAINZ_INCLUDE_DIR AND MUSICBRAINZ_LIBRARIES) + FIND_PATH(MUSICBRAINZ_INCLUDE_DIR musicbrainz/musicbrainz.h) + +FIND_LIBRARY( MUSICBRAINZ_LIBRARIES NAMES musicbrainz) + + include(FindPackageHandleStandardArgs) find_package_handle_standard_args( MusicBrainz DEFAULT_MSG - MUSICBRAINZ_INCLUDE_DIR) + MUSICBRAINZ_INCLUDE_DIR MUSICBRAINZ_LIBRARIES) -MARK_AS_ADVANCED(MUSICBRAINZ_INCLUDE_DIR) +MARK_AS_ADVANCED(MUSICBRAINZ_INCLUDE_DIR MUSICBRAINZ_LIBRARIES) -- cgit v1.2.1 From 3b5694a0206762ed984345531e926dabb9ec87c8 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 5 Dec 2007 08:14:28 +0000 Subject: SVN_SILENT: update copyright svn path=/trunk/KDE/kdelibs/; revision=745048 --- modules/FindMusicBrainz.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake index e2e0d30d..09884115 100644 --- a/modules/FindMusicBrainz.cmake +++ b/modules/FindMusicBrainz.cmake @@ -1,6 +1,6 @@ # Option for build or not MusicBrainz # -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006,2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -- cgit v1.2.1 From 1a4976361fa26c1fff44e1765dd81469e7a14797 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 5 Dec 2007 16:15:32 +0000 Subject: don't set libs from the cache svn path=/trunk/KDE/kdelibs/; revision=745168 --- modules/FindUSB.cmake | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 6909b05a..582e5485 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -30,13 +30,9 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) FIND_LIBRARY(LIBUSB_LIBRARY NAMES usb PATHS ${_libUSBLinkDir} ) - set( LIBUSB_LIBRARIES ${LIBUSB_LIBRARY} CACHE INTERNAL "The libraries for libusb" ) - include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(USB DEFAULT_MSG LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) - MARK_AS_ADVANCED( - LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES - ) + MARK_AS_ADVANCED(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) -- cgit v1.2.1 From 8644968e6a22201b596df1695a750fa663f76280 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 10 Dec 2007 15:09:57 +0000 Subject: update version requires svn path=/trunk/KDE/kdelibs/; revision=746894 --- modules/FindSoprano.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 197be2c5..ca389f9c 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -79,10 +79,10 @@ STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) IF (SOPRANO_VERSION_MATCH) STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) - if(SOPRANO_VERSION STRLESS "1.97.1") + if(SOPRANO_VERSION STRLESS "1.99") set(Soprano_FOUND FALSE) - message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install 1.97.1 or newer") - endif(SOPRANO_VERSION STRLESS "1.97.1") + message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install 1.99 or newer") + endif(SOPRANO_VERSION STRLESS "1.99") ENDIF (SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) -- cgit v1.2.1 From 1ef83bed51a72f782be1344df0a2d8f167b00953 Mon Sep 17 00:00:00 2001 From: Shane King Date: Tue, 11 Dec 2007 08:56:43 +0000 Subject: Property set QT_NO_DEBUG for non-debug WIN32 builds, allowingt plugins to load correctly. svn path=/trunk/KDE/kdelibs/; revision=747171 --- modules/FindKDE4Internal.cmake | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6b262d90..a840ed95 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -711,10 +711,14 @@ if (WIN32) # new on every cmake run # http://www.cmake.org/pipermail/cmake/2007-November/017541.html # set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DQT_DEBUG") - set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -DQT_NO_DEBUG") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DQT_NO_DEBUG") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DQT_NO_DEBUG") - + STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + IF(NOT CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + set(_KDE4_PLATFORM_DEFINITIONS "${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_DEBUG") + endif (NOT CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) + #set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -DQT_NO_DEBUG" CACHE STRING "overwrite" FORCE) + #set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DQT_NO_DEBUG" CACHE STRING "overwrite" FORCE) + #set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DQT_NO_DEBUG" CACHE STRING "overwrite" FORCE) + endif (WIN32) -- cgit v1.2.1 From eda77f4d5da0d13c8ef8dcf965feb57b2ca48e1e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 11 Dec 2007 16:53:58 +0000 Subject: we've been doing without a proper BZip2 development discovery. svn path=/trunk/KDE/kdelibs/; revision=747297 --- modules/FindBZip2.cmake | 23 +++++++++++++++++++++++ modules/potential_problems | 1 - 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 modules/FindBZip2.cmake (limited to 'modules') diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake new file mode 100644 index 00000000..aec276b4 --- /dev/null +++ b/modules/FindBZip2.cmake @@ -0,0 +1,23 @@ +# Try to find the BZip2 librairies +# BZIP2_FOUND - system has BZip2 lib +# BZIP2_INCLUDE_DIR - the BZip2 include directory +# BZIP2_LIBRARIES - Libraries needed to use BZip2 + +# Copyright (c) 2007, Allen Winter +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + # Already in cache, be silent + set(BZIP2_FIND_QUIETLY TRUE) +endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + +find_path(BZIP2_INCLUDE_DIR NAMES bzlib.h ) +find_library(BZIP2_LIBRARIES NAMES bz2 ) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(BZIP2 DEFAULT_MSG BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) + +mark_as_advanced(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) diff --git a/modules/potential_problems b/modules/potential_problems index 233949c5..b4558a21 100644 --- a/modules/potential_problems +++ b/modules/potential_problems @@ -1,3 +1,2 @@ /CMakeLists.txt find_package(Perl REQUIRED) KDE4_AUTOMOC: -DQ_WS_X11 -test for bzip2 -- cgit v1.2.1 From 3af101066917d7d017614540e91fa1487dd8331e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 11 Dec 2007 17:14:02 +0000 Subject: do'h. there sure is a FindBZip2.cmake in cmake 2.4 and cmake 2.5. svn path=/trunk/KDE/kdelibs/; revision=747304 --- modules/FindBZip2.cmake | 23 ----------------------- 1 file changed, 23 deletions(-) delete mode 100644 modules/FindBZip2.cmake (limited to 'modules') diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake deleted file mode 100644 index aec276b4..00000000 --- a/modules/FindBZip2.cmake +++ /dev/null @@ -1,23 +0,0 @@ -# Try to find the BZip2 librairies -# BZIP2_FOUND - system has BZip2 lib -# BZIP2_INCLUDE_DIR - the BZip2 include directory -# BZIP2_LIBRARIES - Libraries needed to use BZip2 - -# Copyright (c) 2007, Allen Winter -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - # Already in cache, be silent - set(BZIP2_FIND_QUIETLY TRUE) -endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - -find_path(BZIP2_INCLUDE_DIR NAMES bzlib.h ) -find_library(BZIP2_LIBRARIES NAMES bz2 ) - -include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(BZIP2 DEFAULT_MSG BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) - -mark_as_advanced(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) -- cgit v1.2.1 From 21528e8e557324515b5e773188cebc1558cacc66 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Tue, 11 Dec 2007 19:58:37 +0000 Subject: apply patch to properly set QT_NO_DEBUG in release builds from FindQt4.cmake / cmake cvs svn path=/trunk/KDE/kdelibs/; revision=747359 --- modules/FindKDE4Internal.cmake | 15 --------------- modules/FindQt4.cmake | 11 +++++++++++ 2 files changed, 11 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a840ed95..011d657a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -704,21 +704,6 @@ if (WIN32) set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" CACHE STATIC "MSVC IDE Run path" FORCE) endif(MSVC_IDE) - - # christian: - # don't know where to add this -> FindQt4.cmake is only executed once and - # because somehow those values are not saved in the cache, I have to set them - # new on every cmake run - # http://www.cmake.org/pipermail/cmake/2007-November/017541.html - # set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DQT_DEBUG") - STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - IF(NOT CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - set(_KDE4_PLATFORM_DEFINITIONS "${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_DEBUG") - endif (NOT CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - #set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -DQT_NO_DEBUG" CACHE STRING "overwrite" FORCE) - #set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DQT_NO_DEBUG" CACHE STRING "overwrite" FORCE) - #set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DQT_NO_DEBUG" CACHE STRING "overwrite" FORCE) - endif (WIN32) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 03f9af27..608f3e86 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -186,6 +186,17 @@ if (QT4_QMAKE_FOUND) else (QT4_QMAKE_FOUND) +# check that QT_NO_DEBUG is defined for release configurations +MACRO(QT_CHECK_FLAG_EXISTS FLAG VAR DOC) + IF(NOT ${VAR} MATCHES "${FLAG}") + SET(${VAR} "${${VAR}} ${FLAG}" + CACHE STRING "Flags used by the compiler during ${DOC} builds." FORCE) + ENDIF(NOT ${VAR} MATCHES "${FLAG}") +ENDMACRO(QT_CHECK_FLAG_EXISTS FLAG VAR) +QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO "Release with Debug Info") +QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELEASE "release") +QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL "release minsize") + INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroPushRequiredVars) -- cgit v1.2.1 From f9d680d7bc782dd01b12a3750478e93d77b51df7 Mon Sep 17 00:00:00 2001 From: Shane King Date: Wed, 12 Dec 2007 01:14:39 +0000 Subject: Fix for mingw to ensure -DQT_NO_DEBUG is set so plugins may load correctly with QPluginLoader. svn path=/trunk/KDE/kdelibs/; revision=747449 --- modules/FindKDE4Internal.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 011d657a..3eef2756 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -827,6 +827,12 @@ if (CMAKE_COMPILER_IS_GNUCXX) add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux) + if (WIN32) + # qt is always compiled with QT_NO_DEBUG under mingw, + # so we need to compile stuff linked against it + # the same or otherwise QPluginLoader rejects plugins + add_definitions(-DQT_NO_DEBUG) + endif (WIN32) check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) if(KDE4_ENABLE_FPIE) -- cgit v1.2.1 From 3c5c07c31efac7aa27e352084cf0655b36f78f8e Mon Sep 17 00:00:00 2001 From: Shane King Date: Wed, 12 Dec 2007 07:01:57 +0000 Subject: Update comment to more accurately reflect what's going on with qt linking and mingw svn path=/trunk/KDE/kdelibs/; revision=747507 --- modules/FindKDE4Internal.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3eef2756..89c7c6fc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -828,9 +828,10 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (CMAKE_SYSTEM_NAME MATCHES Linux) if (WIN32) - # qt is always compiled with QT_NO_DEBUG under mingw, - # so we need to compile stuff linked against it - # the same or otherwise QPluginLoader rejects plugins + # we always link against the release version of QT with mingw + # (even for debug builds). So we need to define QT_NO_DEBUG + # or else QPluginLoader rejects plugins because it thinks + # they're built against the wrong QT. add_definitions(-DQT_NO_DEBUG) endif (WIN32) -- cgit v1.2.1 From bbcafad0695c34b6c2b9041d56865c00e088b9c2 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 13 Dec 2007 10:46:49 +0000 Subject: fixed msvc problem indicated by "__thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj) svn path=/trunk/KDE/kdelibs/; revision=748005 --- modules/FindKDE4Internal.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 89c7c6fc..aa3a04d1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -798,6 +798,8 @@ endif (CMAKE_SYSTEM_NAME MATCHES BSD) if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) + # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h + set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") endif(MSVC) -- cgit v1.2.1 From 7164a5976d937aa0115c65820d77f2d2c539b59c Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 13 Dec 2007 13:43:41 +0000 Subject: fix libusb detection svn path=/trunk/KDE/kdelibs/; revision=748049 --- modules/FindUSB.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 582e5485..7b895cb3 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -27,7 +27,7 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) FIND_PATH(LIBUSB_INCLUDE_DIR usb.h ) - FIND_LIBRARY(LIBUSB_LIBRARY NAMES usb + FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb PATHS ${_libUSBLinkDir} ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From ea3e683d4a9c7ee364394826a31099b83175412f Mon Sep 17 00:00:00 2001 From: Shane King Date: Thu, 13 Dec 2007 14:35:12 +0000 Subject: Fixed build for ds9 phonon backend with msvc svn path=/trunk/KDE/kdelibs/; revision=748071 --- modules/FindQt4.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 608f3e86..cd533dce 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -197,6 +197,13 @@ QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO "Release with QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELEASE "release") QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL "release minsize") +if (MSVC80) + # need to set this option for MSVC 2005+ or else + # QString::fromWCharArray will result in an unresolved external + # see http://www.qtcentre.org/forum/f-installation-5/t-wchar-to-qstring-giving-error-in-vs2005-4625.html + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-") +endif (MSVC80) + INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroPushRequiredVars) -- cgit v1.2.1 From 2888061c7f86731e7c6d2e6e2c75e7bf2bdf0c1b Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 13 Dec 2007 14:57:09 +0000 Subject: win32 msvc fix: debug modes uses different library as release svn path=/trunk/KDE/kdelibs/; revision=748078 --- modules/FindKDE4Internal.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index aa3a04d1..05056f91 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -799,7 +799,10 @@ endif (CMAKE_SYSTEM_NAME MATCHES BSD) if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h - set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") + set (CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") + set (CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") + set (CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd") + set (CMAKE_EXE_LINKER_FLAGS_DEBUG_FULL "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd") endif(MSVC) -- cgit v1.2.1 From db08754bea97155040936a3800c9155716861e0b Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 13 Dec 2007 16:49:41 +0000 Subject: win32 msvc fix: CMAKE_EXE_LINKER_FLAGS_... seems not to be used, instead only CMAKE_EXE_LINKER_FLAGS is used regardless of build type svn path=/trunk/KDE/kdelibs/; revision=748113 --- modules/FindKDE4Internal.cmake | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 05056f91..3028f25e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -798,11 +798,19 @@ endif (CMAKE_SYSTEM_NAME MATCHES BSD) if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) + # check if release mode + if (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "ReleaseWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") + set (releaseMode 1) + else (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "ReleaseWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") + set (releaseMode 0) + endif (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "ReleaseWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") + # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h - set (CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") - set (CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") - set (CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd") - set (CMAKE_EXE_LINKER_FLAGS_DEBUG_FULL "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd") + if (releaseMode) + set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") + else (releaseMode) + set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd") + endif (releaseMode) endif(MSVC) -- cgit v1.2.1 From bcbbac833b6b24de454fb18151c2115f5e284201 Mon Sep 17 00:00:00 2001 From: Shane King Date: Fri, 14 Dec 2007 01:02:43 +0000 Subject: Move the wchar_t msvc fix local to phonon, including it for everything linked against qt causes link problems with other libraries. svn path=/trunk/KDE/kdelibs/; revision=748277 --- modules/FindQt4.cmake | 7 ------- 1 file changed, 7 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index cd533dce..608f3e86 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -197,13 +197,6 @@ QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO "Release with QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELEASE "release") QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL "release minsize") -if (MSVC80) - # need to set this option for MSVC 2005+ or else - # QString::fromWCharArray will result in an unresolved external - # see http://www.qtcentre.org/forum/f-installation-5/t-wchar-to-qstring-giving-error-in-vs2005-4625.html - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-") -endif (MSVC80) - INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroPushRequiredVars) -- cgit v1.2.1 From bb7804e5974ab9437039e88ea9f3ad11e2d22f6c Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 14 Dec 2007 07:57:57 +0000 Subject: minor win32 msvc fix svn path=/trunk/KDE/kdelibs/; revision=748334 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3028f25e..26e82b61 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -799,13 +799,13 @@ endif (CMAKE_SYSTEM_NAME MATCHES BSD) if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) # check if release mode - if (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "ReleaseWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") + if (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") set (releaseMode 1) - else (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "ReleaseWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") + else (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") set (releaseMode 0) - endif (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "ReleaseWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") + endif (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") - # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h + # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h if (releaseMode) set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") else (releaseMode) -- cgit v1.2.1 From 80a85a69f224038b294ed91cbb31064694e2832e Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Fri, 14 Dec 2007 18:38:27 +0000 Subject: few fixes i had lying here: - fix the usb detrction once again - take into account the include dirs got from pkg-config when looking for usb.h - show the library (not the include path) when showing the "libsub found" message svn path=/trunk/KDE/kdelibs/; revision=748534 --- modules/FindUSB.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 7b895cb3..17d893c9 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -25,13 +25,14 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) PKGCONFIG(libusb _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) ENDIF(NOT WIN32) - FIND_PATH(LIBUSB_INCLUDE_DIR usb.h ) + FIND_PATH(LIBUSB_INCLUDE_DIR usb.h + PATHS ${_libUSBIncDir} ) FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb PATHS ${_libUSBLinkDir} ) include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(USB DEFAULT_MSG LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIR) MARK_AS_ADVANCED(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) -- cgit v1.2.1 From 76558b8aa8913a17bcf0666c31a3cf5a9538c71b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 16 Dec 2007 10:59:46 +0000 Subject: -remove macros QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE() and QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE(), they were deprecated since september 24 and failed with MESSAGE(SEND_ERROR ...) since then some syncing with FindQt4.cmake from cmake cvs: -some whitespace syncing -under Windows: use the registry to get the default installed Qt4 version, and search qmake also there -support multiple directories in QMAKE_MKSPECS -fixes for finding the include directories for QtAssistant and QtDesigner under OSX Alex svn path=/trunk/KDE/kdelibs/; revision=749028 --- modules/FindQt4.cmake | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 608f3e86..39ba47b4 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -237,10 +237,12 @@ MACRO(QT_QUERY_QMAKE outvar invar) ENDMACRO(QT_QUERY_QMAKE) +GET_FILENAME_COMPONENT(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME) # check for qmake FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin" $ENV{QTDIR}/bin ) @@ -370,8 +372,11 @@ IF (QT4_QMAKE_FOUND) IF (NOT QT_MKSPECS_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QMAKE_MKSPECS" - OUTPUT_VARIABLE qt_mkspecs_dir ) - SET(QT_MKSPECS_DIR ${qt_mkspecs_dir} CACHE PATH "The location of the Qt mkspecs") + OUTPUT_VARIABLE qt_mkspecs_dirs ) + STRING(REPLACE ":" ";" qt_mkspecs_dirs "${qt_mkspecs_dirs}") + FIND_PATH(QT_MKSPECS_DIR qconfig.pri PATHS ${qt_mkspecs_dirs} + DOC "The location of the Qt mkspecs containing qconfig.pri" + NO_DEFAULT_PATH ) ENDIF (NOT QT_MKSPECS_DIR) # ask qmake for the plugins directory @@ -552,6 +557,7 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_INCLUDE_DIR}/QtAssistant ${QT_HEADERS_DIR}/QtAssistant + ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers NO_DEFAULT_PATH ) @@ -559,7 +565,8 @@ IF (QT4_QMAKE_FOUND) FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents PATHS ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner + ${QT_HEADERS_DIR}/QtDesigner + ${QT_LIBRARY_DIR}/QtDesigner.framework/Headers NO_DEFAULT_PATH ) @@ -755,7 +762,7 @@ IF (QT4_QMAKE_FOUND) IF( NOT QT_QTCORE_LIBRARY ) IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check CMakeFiles/CMakeError.log for more details.") + MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log for more details.") ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) ENDIF( NOT QT_QTCORE_LIBRARY ) @@ -839,8 +846,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) _QT4_ADJUST_LIB_VARS(QTDBUS) - - + # platform dependent libraries IF(Q_WS_X11) _QT4_ADJUST_LIB_VARS(QTMOTIF) @@ -921,6 +927,7 @@ IF (QT4_QMAKE_FOUND) FOREACH(_current ${_inc_DIRS}) SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) ENDFOREACH(_current ${_inc_DIRS}) + ENDMACRO(QT4_GET_MOC_INC_DIRS) @@ -1055,7 +1062,8 @@ IF (QT4_QMAKE_FOUND) MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) ENDMACRO(QT4_ADD_DBUS_INTERFACE) - + + MACRO(QT4_ADD_DBUS_INTERFACES _sources) FOREACH (_current_FILE ${ARGN}) GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE) @@ -1066,17 +1074,6 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH (_current_FILE) ENDMACRO(QT4_ADD_DBUS_INTERFACES) - MACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE _sources _interface _basename) - MESSAGE(SEND_ERROR "QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE() is deprecated. Use the following instead: -SET_SOURCE_FILES_PROPERTIES( PROPERTIES NO_NAMESPACE TRUE) -QT4_ADD_DBUS_INTERFACE( )\n") - ENDMACRO(QT4_ADD_DBUS_INTERFACE_NO_NAMESPACE) - - MACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE _sources) - MESSAGE(SEND_ERROR "QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE() is deprecated. Use the following instead: -SET_SOURCE_FILES_PROPERTIES( PROPERTIES NO_NAMESPACE TRUE) -QT4_ADD_DBUS_INTERFACES( )\n") - ENDMACRO(QT4_ADD_DBUS_INTERFACES_NO_NAMESPACE) MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) SET(_customName "${ARGV1}") -- cgit v1.2.1 From 2414142ddec42fb0c112a7d0df45214d9375b6c3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 16 Dec 2007 11:22:22 +0000 Subject: no need to have different success messages for Windows and UNIX Alex svn path=/trunk/KDE/kdelibs/; revision=749036 --- modules/FindQt4.cmake | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 39ba47b4..d435c8e0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1184,11 +1184,7 @@ IF (QT4_QMAKE_FOUND) IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "YES" ) IF( NOT Qt4_FIND_QUIETLY) - IF (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION} with qmake at ${QT_QMAKE_EXECUTABLE}") - ELSE (WIN32) - MESSAGE(STATUS "Found Qt-Version ${QTVERSION}") - ENDIF (WIN32) + MESSAGE(STATUS "Found Qt-Version ${QTVERSION} (using ${QT_QMAKE_EXECUTABLE})") ENDIF( NOT Qt4_FIND_QUIETLY) ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) SET( QT4_FOUND "NO") -- cgit v1.2.1 From 095470941e9a5c481ee9736e802052bd390c505f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 16 Dec 2007 13:19:46 +0000 Subject: new macro MACRO_APPEND_IF(var condition value1..valuen) can be used to simplify code: macro_append_if(mySrcs SOMELIB_FOUND file1.cpp file2.cpp) instead of if(SOMELIB_FOUND) set(mySrcs file1.cpp file2.cpp) endif(SOMELIB_FOUND) Alex svn path=/trunk/KDE/kdelibs/; revision=749077 --- modules/CMakeLists.txt | 2 +- modules/MacroAppendIf.cmake | 22 ++++++++++++++++++++++ modules/MacroLibrary.cmake | 2 +- 3 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 modules/MacroAppendIf.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index e8eba2e1..5de4aa7a 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,4 +1,4 @@ -# install the cmake files +## install the cmake files file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") diff --git a/modules/MacroAppendIf.cmake b/modules/MacroAppendIf.cmake new file mode 100644 index 00000000..62949de2 --- /dev/null +++ b/modules/MacroAppendIf.cmake @@ -0,0 +1,22 @@ +# MACRO_APPEND_IF( VAR CONDITION VALUE1...VALUEN ) +# This convenience macro appends the values VALUE1 up to VALUEN to the list +# given in VAR, but only if the variable CONDITION is TRUE: +# +# usage example: +# IF(SOMELIB_FOUND) +# SET(my_sources ${my_sources} somefile.c someotherfile.c) +# ENDIF(SOMELIB_FOUND) +# +# becomes: +# MACRO_APPEND_IF(my_sources SOMELIB_FOUND somefile.c someotherfile.c) + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +macro(macro_append_if _list _cond ) + if(${_cond}) + list(APPEND ${_list} ${ARGN}) + endif(${_cond}) +endmacro(macro_append_if _list _cond ) diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 3b802126..5e482f92 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -1,5 +1,4 @@ # - include MacroLibrary offers a collection of macros which extend the built-in cmake commands -# OPTIONAL_FIND_PACKAGE( [QUIT] ) # Copyright (c) 2006, Alexander Neundorf, # @@ -12,6 +11,7 @@ INCLUDE(MacroAdditionalCleanFiles) INCLUDE(MacroAddFileDependencies) INCLUDE(MacroAddCompileFlags) INCLUDE(MacroAddLinkFlags) +INCLUDE(MacroAppendIf) INCLUDE(MacroEnsureOutOfSourceBuild) INCLUDE(MacroBoolTo01) INCLUDE(MacroPushRequiredVars) -- cgit v1.2.1 From 0279149fee4ccd9233e1cf7b649f65e38faccaa3 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 16 Dec 2007 19:28:40 +0000 Subject: complete rewrite. svn path=/trunk/KDE/kdelibs/; revision=749189 --- modules/FindXmms.cmake | 52 ++++++++++++++++++++++++-------------------------- 1 file changed, 25 insertions(+), 27 deletions(-) (limited to 'modules') diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index 6b93a916..3ff8659a 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -1,41 +1,39 @@ # Search xmms +## Once done this will define +# +# XMMS_FOUND - system has xmms +# XMMS_INCLUDE_DIR - the xmms include directory +# XMMS_LIBRARIES - Link these to use xmms # # Copyright (c) 2006, 2007 Laurent Montel, +# Copyright (c) 2007 Allen Winter # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if (XMMS_INCLUDE_DIR AND XMMS_LIBRARIES) + # in cache already + SET(XMMS_FOUND TRUE) -OPTION(KDE4_XMMS "enable support for XMMS") +else (XMMS_INCLUDE_DIR AND XMMS_LIBRARIES) + IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) -if(KDE4_XMMS) - FIND_PROGRAM(XMMSCONFIG_EXECUTABLE NAMES xmms-config - ) - #reset vars - set(XMMS_LIBRARIES) - set(XMMS_INCLUDE_DIR) + PKGCONFIG(xmms _XMMSIncDir _XMMSLinkDir _XMMSLinkFlags _XMMSCflags) + ENDIF(NOT WIN32) - if(XMMSCONFIG_EXECUTABLE) - EXEC_PROGRAM(${XMMSCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XMMS_LIBRARIES) + FIND_PATH(XMMS_INCLUDE_DIR xmmsctrl.h + PATHS ${_XMMSIncDir} PATH_SUFFIXES xmms) - EXEC_PROGRAM(${XMMSCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XMMS_INCLUDE_DIR) - set(XMMS_DEFINITIONS ${XMMS_INCLUDE_DIR}) - - IF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) - SET(XMMS_FOUND TRUE) - ENDIF(XMMS_LIBRARIES AND XMMS_INCLUDE_DIR) + FIND_LIBRARY(XMMS_LIBRARIES NAMES xmms + PATHS ${_XMMSLinkDir}) - MARK_AS_ADVANCED(XMMS_INCLUDE_DIR XMMS_LIBRARIES) - endif(XMMSCONFIG_EXECUTABLE) + INCLUDE(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(Xmms DEFAULT_MSG + XMMS_LIBRARIES XMMS_INCLUDE_DIR) - if (XMMS_FOUND) - if (NOT Xmms_FIND_QUIETLY) - message(STATUS "Found Xmms: ${XMMS_LIBRARIES}") - endif (NOT Xmms_FIND_QUIETLY) - else (XMMS_FOUND) - if (Xmms_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Xmms") - endif (Xmms_FIND_REQUIRED) - endif (XMMS_FOUND) -endif(KDE4_XMMS) + MARK_AS_ADVANCED(XMMS_INCLUDE_DIR XMMS_LIBRARIES) +endif (XMMS_INCLUDE_DIR AND XMMS_LIBRARIES) -- cgit v1.2.1 From 49d4e315f94488468ddf6e5729d1d35c48d34fe3 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 16 Dec 2007 19:51:40 +0000 Subject: use FindPkgConfig instead of UsePkgConfig svn path=/trunk/KDE/kdelibs/; revision=749197 --- modules/FindXmms.cmake | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index 3ff8659a..7eb2d383 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -1,9 +1,9 @@ # Search xmms ## Once done this will define # -# XMMS_FOUND - system has xmms -# XMMS_INCLUDE_DIR - the xmms include directory -# XMMS_LIBRARIES - Link these to use xmms +# XMMS_FOUND - system has xmms +# XMMS_INCLUDE_DIRS - the xmms include directory +# XMMS_LDFLAGS - Link these to use xmms # # Copyright (c) 2006, 2007 Laurent Montel, # Copyright (c) 2007 Allen Winter @@ -11,29 +11,29 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (XMMS_INCLUDE_DIR AND XMMS_LIBRARIES) +if (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) # in cache already SET(XMMS_FOUND TRUE) -else (XMMS_INCLUDE_DIR AND XMMS_LIBRARIES) +else (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + INCLUDE(FindPkgConfig) - PKGCONFIG(xmms _XMMSIncDir _XMMSLinkDir _XMMSLinkFlags _XMMSCflags) + PKG_CHECK_MODULES(XMMS xmms) ENDIF(NOT WIN32) - FIND_PATH(XMMS_INCLUDE_DIR xmmsctrl.h + FIND_PATH(XMMS_INCLUDE_DIRS xmmsctrl.h PATHS ${_XMMSIncDir} PATH_SUFFIXES xmms) - FIND_LIBRARY(XMMS_LIBRARIES NAMES xmms + FIND_LIBRARY(XMMS_LDFLAGS NAMES xmms PATHS ${_XMMSLinkDir}) INCLUDE(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Xmms DEFAULT_MSG - XMMS_LIBRARIES XMMS_INCLUDE_DIR) + XMMS_LDFLAGS XMMS_INCLUDE_DIRS) - MARK_AS_ADVANCED(XMMS_INCLUDE_DIR XMMS_LIBRARIES) + MARK_AS_ADVANCED(XMMS_INCLUDE_DIRS XMMS_LDFLAGS) -endif (XMMS_INCLUDE_DIR AND XMMS_LIBRARIES) +endif (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) -- cgit v1.2.1 From 7fa3429a382e79e7dee46e7380604f9c12fedfa1 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 17 Dec 2007 09:40:35 +0000 Subject: As discussed on kde-buildsystem, add --enable-new-dtags to the linker flags on linux+gcc. This makes ./kmyunittest.shell work as expected, i.e. it uses the locally built libs instead of the installed ones. svn path=/trunk/KDE/kdelibs/; revision=749514 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 26e82b61..b734129c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -774,6 +774,11 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") + + set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--enable-new-dtags ${CMAKE_SHARED_LINKER_FLAGS}") + set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--enable-new-dtags ${CMAKE_MODULE_LINKER_FLAGS}") + set ( CMAKE_EXE_LINKER_FLAGS "-Wl,--enable-new-dtags ${CMAKE_EXE_LINKER_FLAGS}") + # we profile... if(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fprofile-arcs -ftest-coverage") -- cgit v1.2.1 From bc80c43ccfc1d85d9929b7bb8c4b6cd69c942a14 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 17 Dec 2007 20:05:52 +0000 Subject: -mark more variables as advanced -some cosmetics (indentation etc.) Alex svn path=/trunk/KDE/kdelibs/; revision=749753 --- modules/FindAlsa.cmake | 24 ++++++++++++++---------- modules/FindLibXml2.cmake | 2 +- modules/FindSoprano.cmake | 2 ++ modules/FindStrigi.cmake | 11 ++++++----- 4 files changed, 23 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index b4f28d0a..5b8e43f8 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -18,7 +18,7 @@ include(CheckIncludeFileCXX) include(CheckLibraryExists) # Already done by toplevel -FIND_LIBRARY(ASOUND_LIBRARY asound) +find_library(ASOUND_LIBRARY asound) check_library_exists(asound snd_seq_create_simple_port ${ASOUND_LIBRARY} HAVE_LIBASOUND2) if(HAVE_LIBASOUND2) message(STATUS "Found ALSA: ${ASOUND_LIBRARY}") @@ -26,17 +26,19 @@ else(HAVE_LIBASOUND2) message(STATUS "ALSA not found") endif(HAVE_LIBASOUND2) set(ALSA_FOUND ${HAVE_LIBASOUND2}) -FIND_PATH(ALSA_INCLUDES alsa/version.h) -MACRO(ALSA_VERSION_STRING _result) +find_path(ALSA_INCLUDES alsa/version.h) + +macro(ALSA_VERSION_STRING _result) # check for version in alsa/version.h - IF(ALSA_INCLUDES) - FILE(READ "${ALSA_INCLUDES}/alsa/version.h" _ALSA_VERSION_CONTENT) - STRING(REGEX REPLACE ".*SND_LIB_VERSION_STR.*\"(.*)\".*" "\\1" ${_result} ${_ALSA_VERSION_CONTENT}) - ELSE(ALSA_INCLUDES) - MESSAGE(STATUS "ALSA version not known. ALSA output will probably not work correctly.") - ENDIF(ALSA_INCLUDES) -ENDMACRO(ALSA_VERSION_STRING _result) + if(ALSA_INCLUDES) + file(READ "${ALSA_INCLUDES}/alsa/version.h" _ALSA_VERSION_CONTENT) + string(REGEX REPLACE ".*SND_LIB_VERSION_STR.*\"(.*)\".*" "\\1" ${_result} ${_ALSA_VERSION_CONTENT}) + else(ALSA_INCLUDES) + message(STATUS "ALSA version not known. ALSA output will probably not work correctly.") + endif(ALSA_INCLUDES) +endmacro(ALSA_VERSION_STRING _result) + get_filename_component(_FIND_ALSA_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) macro(ALSA_CONFIGURE_FILE _destFile) @@ -58,3 +60,5 @@ macro(ALSA_CONFIGURE_FILE _destFile) configure_file(${_FIND_ALSA_MODULE_DIR}/config-alsa.h.cmake ${_destFile}) endmacro(ALSA_CONFIGURE_FILE _destFile) + +mark_as_advanced(ALSA_INCLUDES ASOUND_LIBRARY) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index f74cbb58..5f23c184 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -58,5 +58,5 @@ ELSE (LIBXML2_FOUND) ENDIF (LibXml2_FIND_REQUIRED) ENDIF (LIBXML2_FOUND) -MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES XMLLINT_EXECUTABLE) diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index ca389f9c..93e01a01 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -111,4 +111,6 @@ endif(Soprano_FIND_REQUIRED) endif(Soprano_FOUND) +mark_as_advanced(SOPRANO_CLIENT_LIBRARIES SOPRANO_INDEX_LIBRARIES SOPRANO_LIBRARIES SOPRANO_SERVER_LIBRARIES SOPRANO_INCLUDE_DIR ) + #endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 6ad6ec74..b34596e1 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -81,7 +81,7 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) if(_dummyLinkFlags) exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} - libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(NOT _return_VALUE STREQUAL "0") message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") @@ -94,19 +94,19 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) endif(NOT _return_VALUE STREQUAL "0") if (NOT STRIGI_STREAMANALYZER_LIBRARY) find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer - PATHS ${_dummyLinkDir}) + PATHS ${_dummyLinkDir}) endif(NOT STRIGI_STREAMANALYZER_LIBRARY) if( NOT STRIGI_STRIGIQTDBUSCLIENT_LIBRARY) find_library(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY NAMES strigiqtdbusclient - PATHS ${_dummyLinkDir}) + PATHS ${_dummyLinkDir}) endif(NOT STRIGI_STRIGIQTDBUSCLIENT_LIBRARY) if (NOT STRIGI_STREAMS_LIBRARY) find_library(STRIGI_STREAMS_LIBRARY NAMES streams - PATHS ${_dummyLinkDir}) + PATHS ${_dummyLinkDir}) endif(NOT STRIGI_STREAMS_LIBRARY) if (NOT STRIGI_INCLUDE_DIR) find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h - PATHS ${_dummyIncDir}) + PATHS ${_dummyIncDir}) endif(NOT STRIGI_INCLUDE_DIR) else(_dummyLinkFlags) message(STATUS "pkgconfig didn't find strigi, couldn't check strigi version") @@ -118,3 +118,4 @@ find_package_handle_standard_args(Strigi "Couldn't find Strigi streams library. Set the environment variable STRIGI_HOME (or CMAKE_FIND_PREFIX_PATH if using CMake >=2.5) to the strigi install dir." STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) +mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY ) -- cgit v1.2.1 From 71c89b66133971a2da8e2b20550b546538018f55 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 17 Dec 2007 20:36:30 +0000 Subject: switch order of arguments as suggested Alex svn path=/trunk/KDE/kdelibs/; revision=749769 --- modules/MacroAppendIf.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/MacroAppendIf.cmake b/modules/MacroAppendIf.cmake index 62949de2..86fe014a 100644 --- a/modules/MacroAppendIf.cmake +++ b/modules/MacroAppendIf.cmake @@ -1,4 +1,4 @@ -# MACRO_APPEND_IF( VAR CONDITION VALUE1...VALUEN ) +# MACRO_APPEND_IF(CONDITION VAR VALUE1...VALUEN ) # This convenience macro appends the values VALUE1 up to VALUEN to the list # given in VAR, but only if the variable CONDITION is TRUE: # @@ -8,15 +8,15 @@ # ENDIF(SOMELIB_FOUND) # # becomes: -# MACRO_APPEND_IF(my_sources SOMELIB_FOUND somefile.c someotherfile.c) +# MACRO_APPEND_IF(SOMELIB_FOUND my_sources somefile.c someotherfile.c) # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -macro(macro_append_if _list _cond ) +macro(macro_append_if _cond _list) if(${_cond}) list(APPEND ${_list} ${ARGN}) endif(${_cond}) -endmacro(macro_append_if _list _cond ) +endmacro(macro_append_if _cond _list) -- cgit v1.2.1 From eba6f80e85fc4f218b73fbe7cf0e99ce640d843a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 17 Dec 2007 22:14:25 +0000 Subject: make the option KDE4_USE_ALWAYS_FULL_RPATH default to TRUE, so shared libs will be built with RPATH this is correct, but make install will now take longer, since now also shared libs have to be relinked Alex svn path=/trunk/KDE/kdelibs/; revision=749796 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b734129c..07354e7d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -709,7 +709,7 @@ endif (WIN32) # also use /usr/local by default under UNIX, including Mac OS X if (UNIX) - option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." OFF) + option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." ON) set( _KDE4_PLATFORM_INCLUDE_DIRS) -- cgit v1.2.1 From 7597bda2d684517c684d7d0493d8fb436ea772fd Mon Sep 17 00:00:00 2001 From: Shane King Date: Tue, 18 Dec 2007 05:18:55 +0000 Subject: Fixup for the nodefault lib msvc stuff, it now uses the same method we use in FindQt4 for setting flags via a macro and forcing them to the cache. This should allow it to work with the .sln generator too. svn path=/trunk/KDE/kdelibs/; revision=749881 --- modules/FindKDE4Internal.cmake | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 07354e7d..dcb1880e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -800,22 +800,21 @@ if (CMAKE_SYSTEM_NAME MATCHES BSD) endif (CMAKE_SYSTEM_NAME MATCHES BSD) # compiler specific stuff, maybe this should be done differently, Alex +MACRO(KDE_CHECK_FLAG_EXISTS FLAG VAR DOC) + IF(NOT ${VAR} MATCHES "${FLAG}") + SET(${VAR} "${${VAR}} ${FLAG}" + CACHE STRING "Flags used by the linker during ${DOC} builds." FORCE) + ENDIF(NOT ${VAR} MATCHES "${FLAG}") +ENDMACRO(KDE_CHECK_FLAG_EXISTS FLAG VAR) if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) - # check if release mode - if (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") - set (releaseMode 1) - else (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") - set (releaseMode 0) - endif (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" OR CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") - - # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h - if (releaseMode) - set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt") - else (releaseMode) - set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd") - endif (releaseMode) + + # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h + KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "Release with Debug Info") + KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELEASE "release") + KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "release minsize") + KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd" CMAKE_EXE_LINKER_FLAGS_DEBUG "debug") endif(MSVC) -- cgit v1.2.1 From 7043cd8328046a8441dbf5af2201af6e334a1b02 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 18 Dec 2007 16:13:42 +0000 Subject: fix comment Alex svn path=/trunk/KDE/kdelibs/; revision=750066 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dcb1880e..753eced6 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -707,7 +707,7 @@ if (WIN32) endif (WIN32) -# also use /usr/local by default under UNIX, including Mac OS X +# setup default RPATH/install_name handling, may be overridden by KDE4_HANDLE_RPATH_FOR_[LIBRARY|EXECUTABLE] if (UNIX) option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." ON) -- cgit v1.2.1 From 1d936f1b2ebed2e9349205de34f8f21e5af84dc8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 19 Dec 2007 20:36:25 +0000 Subject: -synced partly with cmake cvs FindQt4.cmake: optional OPTIONS argument for some of the macros Alex svn path=/trunk/KDE/kdelibs/; revision=750657 --- modules/FindQt4.cmake | 63 +++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 48 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index d435c8e0..0ad173a0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -28,9 +28,21 @@ # All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. # -# macro QT4_WRAP_CPP(outfiles inputfile ... ) -# macro QT4_WRAP_UI(outfiles inputfile ... ) -# macro QT4_ADD_RESOURCES(outfiles inputfile ... ) +# macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...) +# create moc code from a list of files containing Qt class with +# the Q_OBJECT declaration. Options may be given to moc, such as those found +# when executing "moc -help" +# +# macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...) +# create code from a list of Qt designer ui files. +# Options may be given to uic, such as those found +# when executing "uic -help" +# +# macro QT4_ADD_RESOURCES(outfiles inputfile ... OPTIONS ...) +# create code from a list of Qt resource files. +# Options may be given to rcc, such as those found +# when executing "rcc -help" +# # macro QT4_AUTOMOC(inputfile ... ) # macro QT4_GENERATE_MOC(inputfile outputfile ) # @@ -57,11 +69,12 @@ # If is provided, then it will be used as the classname of the # adaptor itself. # -# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] ) +# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] OPTIONS ...) # generate the xml interface file from the given header. # If the optional argument interfacename is omitted, the name of the # interface file is constructed from the basename of the header with # the suffix .xml appended. +# Options may be given to uic, such as those found when executing "qdbuscpp2xml --help" # # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. @@ -919,6 +932,22 @@ IF (QT4_QMAKE_FOUND) # Macros for building Qt files # ###################################### + MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options) + SET(${_qt4_files}) + SET(${_qt4_options}) + SET(_QT4_DOING_OPTIONS FALSE) + FOREACH(_currentArg ${ARGN}) + IF ("${_currentArg}" STREQUAL "OPTIONS") + SET(_QT4_DOING_OPTIONS TRUE) + ELSE ("${_currentArg}" STREQUAL "OPTIONS") + IF(_QT4_DOING_OPTIONS) + LIST(APPEND ${_qt4_options} "${_currentArg}") + ELSE(_QT4_DOING_OPTIONS) + LIST(APPEND ${_qt4_files} "${_currentArg}") + ENDIF(_QT4_DOING_OPTIONS) + ENDIF ("${_currentArg}" STREQUAL "OPTIONS") + ENDFOREACH(_currentArg) + ENDMACRO (QT4_EXTRACT_OPTIONS) MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) SET(${_moc_INC_DIRS}) @@ -965,15 +994,16 @@ IF (QT4_QMAKE_FOUND) MACRO (QT4_WRAP_CPP outfiles ) # get include dirs QT4_GET_MOC_INC_DIRS(moc_includes) + QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN}) - FOREACH (it ${ARGN}) + FOREACH (it ${moc_files}) GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${it} + ARGS ${moc_includes} ${moc_options} -o ${outfile} ${it} DEPENDS ${it}) SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH(it) @@ -984,14 +1014,15 @@ IF (QT4_QMAKE_FOUND) # QT4_WRAP_UI(outfiles inputfile ... ) MACRO (QT4_WRAP_UI outfiles ) + QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN}) - FOREACH (it ${ARGN}) + FOREACH (it ${ui_files}) GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_UIC_EXECUTABLE} - ARGS -o ${outfile} ${infile} + ARGS ${ui_options} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile}) SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH (it) @@ -1003,8 +1034,9 @@ IF (QT4_QMAKE_FOUND) # TODO perhaps consider adding support for compression and root options to rcc MACRO (QT4_ADD_RESOURCES outfiles ) + QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN}) - FOREACH (it ${ARGN}) + FOREACH (it ${rcc_files}) GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) GET_FILENAME_COMPONENT(rc_path ${infile} PATH) @@ -1024,7 +1056,7 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH(_RC_FILE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_RCC_EXECUTABLE} - ARGS -name ${outfilename} -o ${outfile} ${infile} + ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile} DEPENDS ${_RC_DEPENDS}) SET(${outfiles} ${${outfiles}} ${outfile}) @@ -1073,13 +1105,14 @@ IF (QT4_QMAKE_FOUND) QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) ENDFOREACH (_current_FILE) ENDMACRO(QT4_ADD_DBUS_INTERFACES) - - MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName ) - SET(_customName "${ARGV1}") + + MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName OPTIONS -some -options ) + QT4_EXTRACT_OPTIONS(_customName _qt4_dbus_options ${ARGN}) + GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - + IF (_customName) SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) ELSE (_customName) @@ -1087,7 +1120,7 @@ IF (QT4_QMAKE_FOUND) ENDIF (_customName) ADD_CUSTOM_COMMAND(OUTPUT ${_target} - COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_in_file} > ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_qt4_dbus_options} ${_in_file} > ${_target} DEPENDS ${_in_file} ) ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) -- cgit v1.2.1 From 010d03f311be293d940e3c9f5baf195d5d2096d3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 19 Dec 2007 20:55:30 +0000 Subject: -better comment Alex svn path=/trunk/KDE/kdelibs/; revision=750668 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 753eced6..17da4c42 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -708,6 +708,7 @@ endif (WIN32) # setup default RPATH/install_name handling, may be overridden by KDE4_HANDLE_RPATH_FOR_[LIBRARY|EXECUTABLE] +# default is to build with RPATH for the install dir, so it doesn't need to relink if (UNIX) option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." ON) -- cgit v1.2.1 From 5c4c003ffbd2de9f815fed9dda014b667f3aea5b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 19 Dec 2007 21:24:57 +0000 Subject: -fix RPATH change from yesterday The libs and plugins were built with RPATH, but with the install RPATH, which means that if you run some executable during the build, it may get installed libs, since the RPATH in the libs points to the install dir. Now the libs are linked with the RPATH to the build dir, and when installing they are relinked. This unfortunately takes some time. There are two ways around it: -set KDE4_USE_ALWAYS_FULL_RPATH to FALSE, then you will have the old behaviour or -use cmake cvs and current kdesupport, then the RPATH will be changed not by linking again but by running chrpath on the installed binary, which takes basically no time Alex svn path=/trunk/KDE/kdelibs/; revision=750683 --- modules/KDE4Defaults.cmake | 6 ++++-- modules/KDE4Macros.cmake | 10 +++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 162dd2f4..b94eaf6d 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -21,6 +21,10 @@ set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) # since cmake 2.4.0 set(CMAKE_COLOR_MAKEFILE ON) +# Enable use of chrpath to avoid the need for actually relinking on install +# since cmake cvs 12/19/2007 +set(CMAKE_USE_CHRPATH ON) + # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes set(GENERIC_LIB_VERSION "4.0.0") @@ -33,8 +37,6 @@ set(KDE_NON_GENERIC_LIB_SOVERSION "5") # all searchable directories has to be defined by the PATH environment var # to reduce the number of required pathes executables are placed into # the build bin dir -# note: dll's should go also in bin dir and import libraries should go into lib, -# but this seems not possible with recent cmake release if (WIN32) set (EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) # set (LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 029bdf93..e0e72318 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -501,9 +501,13 @@ endmacro (KDE4_CREATE_FINAL_FILES) # If RPATH is not explicitly disabled, libraries and plugins are built without RPATH, in # the hope that the RPATH which is compiled into the executable is good enough. macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) - if (NOT CMAKE_SKIP_RPATH AND NOT KDE4_USE_ALWAYS_FULL_RPATH) - set_target_properties(${_target_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH FALSE SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") - endif (NOT CMAKE_SKIP_RPATH AND NOT KDE4_USE_ALWAYS_FULL_RPATH) + if (NOT CMAKE_SKIP_RPATH) + if(KDE4_USE_ALWAYS_FULL_RPATH) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) + else(KDE4_USE_ALWAYS_FULL_RPATH) + set_target_properties(${_target_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH FALSE SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") + endif(KDE4_USE_ALWAYS_FULL_RPATH) + endif (NOT CMAKE_SKIP_RPATH) endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) # This macro sets the RPATH related options for executables -- cgit v1.2.1 From e0005fe42a824d2f5ac88e3a136fcf58abb53201 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Thu, 20 Dec 2007 02:33:01 +0000 Subject: small change for non-pkgconfig configurations svn path=/trunk/KDE/kdelibs/; revision=750767 --- modules/FindFreetype.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 89b70a61..fae1a65c 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -49,9 +49,7 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) set( FREETYPE_LIBRARIES ${FREETYPE_LIBRARIES} CACHE INTERNAL "The libraries for freetype" ) else(FREETYPECONFIG_EXECUTABLE) - find_path (FREETYPE_INCLUDE_DIR freetype/freetype.h - ${CMAKE_INCLUDE_PATH}/freetype2 - ) + find_path (FREETYPE_INCLUDE_DIR freetype2/freetype/freetype.h) find_library(FREETYPE_LIBRARIES freetype) if(FREETYPE_INCLUDE_DIR AND FREETYPE_LIBRARIES) set(FREETYPE_FOUND TRUE) -- cgit v1.2.1 From 6bfdd2f31a3d24a900d2f83a49e32d5ee5a9d8f3 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Thu, 20 Dec 2007 03:39:08 +0000 Subject: SVN_SILENT: okular works now with freetype-support for dvi svn path=/trunk/KDE/kdelibs/; revision=750771 --- modules/FindFreetype.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index fae1a65c..d2821931 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -50,6 +50,7 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) else(FREETYPECONFIG_EXECUTABLE) find_path (FREETYPE_INCLUDE_DIR freetype2/freetype/freetype.h) + set (FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR}/freetype2) find_library(FREETYPE_LIBRARIES freetype) if(FREETYPE_INCLUDE_DIR AND FREETYPE_LIBRARIES) set(FREETYPE_FOUND TRUE) -- cgit v1.2.1 From 782ddc710458abe4f2ec08468fafe14fe3ffce1f Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 20 Dec 2007 18:55:57 +0000 Subject: turn-off all debugging messages in "Release Mode" as discussed on the kde-buildsystem mailing list. svn path=/trunk/KDE/kdelibs/; revision=750964 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 17da4c42..c7701e7c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -829,12 +829,12 @@ if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") @@ -932,11 +932,11 @@ if (CMAKE_C_COMPILER MATCHES "icc") set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_CXX_FLAGS_RELEASE "-O2") + set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") - set(CMAKE_C_FLAGS_RELEASE "-O2") + set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") -- cgit v1.2.1 From e3680c90b01171cbf76461fceb754357aae59fa5 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Fri, 21 Dec 2007 18:31:36 +0000 Subject: fix the required-logic in this file svn path=/trunk/KDE/kdelibs/; revision=751346 --- modules/FindKDEWIN.cmake | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake index 4626ca7c..5694e533 100644 --- a/modules/FindKDEWIN.cmake +++ b/modules/FindKDEWIN.cmake @@ -44,15 +44,21 @@ if (WIN32) set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${KDEWIN_DIR}/lib) set (KDEWIN_FOUND 1) + if (NOT KDEWIN_FIND_QUIETLY) + message(STATUS "Found kdewin32 library: ${KDEWIN32_LIBRARY}") + endif (NOT KDEWIN_FIND_QUIETLY) + else(KDEWIN_DIR) - message(STATUS "Could not find the location of the windows supplementary packages which is \n" - "\t\tenvironment variable KDEWIN_DIR\n" - "\t\t/${DIR}\n" - "\t\t/kdewin\n" - "\t\t/kdewin32\n" - "\t\t/win32libs\n" - "\t\t/gnuwin32\n" - ) + if( KDEWIN_FIND_REQUIRED ) + message(FATAL_ERROR "Could not find the location of the windows supplementary packages which is \n" + "\t\tenvironment variable KDEWIN_DIR\n" + "\t\t/${DIR}\n" + "\t\t/kdewin\n" + "\t\t/kdewin32\n" + "\t\t/win32libs\n" + "\t\t/gnuwin32\n" + ) + endif( KDEWIN_FIND_REQUIRED ) endif(KDEWIN_DIR) endif (WIN32) -- cgit v1.2.1 From 9b53104d3fe4dfdd7506ffd49e6195a65d514ba5 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Fri, 21 Dec 2007 18:43:55 +0000 Subject: CMAKE_LIBRARY_PATH is AFAIK an environment variable and thus contains native paths, so convert them to cmake paths before handing them to find_library svn path=/trunk/KDE/kdelibs/; revision=751355 --- modules/FindKDEWIN32.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 5d4499af..7e9c36a5 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -27,12 +27,12 @@ if (WIN32) ) # search for kdewin32 in the default install directory for applications (default of (n)make install) - + FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) find_library_with_debug(KDEWIN32_LIBRARY WIN32_DEBUG_POSTFIX d NAMES kdewin32 PATHS - ${CMAKE_LIBRARY_PATH} + ${_cmakeLibraryPathCmakeStyle} ${CMAKE_INSTALL_PREFIX}/lib NO_SYSTEM_ENVIRONMENT_PATH ) -- cgit v1.2.1 From bd907b8e2cb7157986c9be4a8ff44792283869f5 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sat, 22 Dec 2007 23:30:06 +0000 Subject: Don't require FindKDEWIN to succeed, its just a convenience thing to not have to set CMAKE_INCLUDE_PATH and CMAKE_LIB_PATH when installing gnuwin32 libs into a "known" place (like C:\Program Files\win32libs). But that breaks things like emerge which already set the two variables and thus don't set KDEWIN_DIR and don't need to set it. If the convenience thing isn't needed FindKDEWIN.cmake can be removed completely CCMAIL:kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=751844 --- modules/FindKDEWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 7e9c36a5..aa62f649 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -18,7 +18,7 @@ if (WIN32) if (NOT KDEWIN32_DIR) if(NOT KDEWIN_FOUND) - find_package(KDEWIN REQUIRED) + find_package(KDEWIN) endif(NOT KDEWIN_FOUND) find_path(KDEWIN32_INCLUDE_DIR winposix_export.h -- cgit v1.2.1 From 9c6403afc3f28c99e8ef186e3103b00f200c59ee Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 26 Dec 2007 21:30:52 +0000 Subject: also search for X11R7 svn path=/trunk/KDE/kdelibs/; revision=753207 --- modules/FindX11.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index bf23d44d..94cf9d38 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -49,6 +49,7 @@ IF (UNIX) /usr/pkg/xorg/include /usr/pkg/include /usr/X11R6/include + /usr/X11R7/include /usr/include/X11 /usr/openwin/include /usr/openwin/share/include @@ -59,6 +60,7 @@ IF (UNIX) /usr/pkg/xorg/lib /usr/pkg/lib /usr/X11R6/lib + /usr/X11R7/lib /usr/openwin/lib ) -- cgit v1.2.1 From 973dbeac3b2be4ef23cc5e841be2bd7a23104f17 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 29 Dec 2007 10:49:35 +0000 Subject: Needs by kaudiocreator and k3b (not necessary to have a FindKCDDB) svn path=/trunk/KDE/kdelibs/; revision=754217 --- modules/FindKdeMultimedia.cmake | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 modules/FindKdeMultimedia.cmake (limited to 'modules') diff --git a/modules/FindKdeMultimedia.cmake b/modules/FindKdeMultimedia.cmake new file mode 100644 index 00000000..457f345d --- /dev/null +++ b/modules/FindKdeMultimedia.cmake @@ -0,0 +1,41 @@ +# cmake macro to see if we have kdemultimedia installed + +# KDEMULTIMEDIA_INCLUDE_DIR +# KDEMULTIMEDIA_FOUND +# Copyright (C) 2007 Laurent Montel +# Copyright (C) 2007 Gerd Fleischer +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (KDEMULTIMEDIA_INCLUDE_DIR) + # Already in cache, be silent + set(KDEMULTIMEDIA_FOUND TRUE) +endif (KDEMULTIMEDIA_INCLUDE_DIR) + + +find_path(KDEMULTIMEDIA_INCLUDE_DIR NAMES libkcddb/kcddb.h libkcompactdisc/kcompactdisc.h + PATHS + ${INCLUDE_INSTALL_DIR} +) + +find_library(KCDDB_LIBRARY NAMES kcddb + PATHS + ${LIB_INSTALL_DIR} +) + +find_library(KCOMPACTDISC_LIBRARY NAMES kcompactdisc + PATHS + ${LIB_INSTALL_DIR} +) + +# audioencoder, audiocdplugins? + +set(KDEMULTIMEDIA_LIBRARIES ${KCDDB_LIBRARY} ${KCOMPACTDISC_LIBRARY}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(KdeMultimedia DEFAULT_MSG KDEMULTIMEDIA_LIBRARIES KDEMULTIMEDIA_INCLUDE_DIR ) + +mark_as_advanced(KDEMULTIMEDIA_INCLUDE_DIR KDEMULTIMEDIA_LIBRARIES) + -- cgit v1.2.1 From 5b33917e39567492e7bb49fcc2ce90f6939f9ef5 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Sun, 30 Dec 2007 14:24:01 +0000 Subject: - added new macro KDE4_ADD_APP_ICON, which is used for adding application icons on win32 and mac osx - marked KDE4_ADD_WIN32_APP_ICON as deprecated svn path=/trunk/KDE/kdelibs/; revision=754677 --- modules/KDE4Macros.cmake | 107 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e0e72318..3188a856 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -952,6 +952,7 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) # example: KDE4_ADD_WIN32_APP_ICON(myapp_SRCS "pics/cr16-myapp.png;pics/cr32-myapp.png") macro (KDE4_ADD_WIN32_APP_ICON appsources) + message(STATUS "KDE4_ADD_WIN32_APP_ICON() is deprecated, use KDE4_ADD_APP_ICON() instead") if (WIN32) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) find_program(WINDRES_EXECUTABLE NAMES windres) @@ -979,3 +980,109 @@ macro (KDE4_ADD_WIN32_APP_ICON appsources) endif(WIN32) endmacro (KDE4_ADD_WIN32_APP_ICON) +# adds application icon to target source list + +# this macro adds an application icon to the specified target +# mac osx notes : the application icon is added to a Mac OS X bundle so that Finder and friends show the right thing. +# win32 notes: the application icon(s) are compiled into the application +# parameters: +# 'target' - cmake target to generate +# 'appsources' - specifies the list of source files +# 'pattern' - regular expression for searching application icons +# example: KDE4_ADD_APP_ICON(myapp myapp_sources "pics/cr*-myapp.png") + +macro (KDE4_ADD_APP_ICON target appsources pattern ) + if (WIN32) + find_program(PNG2ICO_EXECUTABLE NAMES png2ico) + find_program(WINDRES_EXECUTABLE NAMES windres) + if(MSVC) + set(WINDRES_EXECUTABLE TRUE) + endif(MSVC) + if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) + file(GLOB files "${pattern}") + FOREACH (it ${files}) + GET_FILENAME_COMPONENT(_name ${it} NAME_WE) + if (it MATCHES ".*16-.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*16-.*") + if (it MATCHES ".*32-.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*32-.*") + if (it MATCHES ".*64-.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*64-.*") + ENDFOREACH (it) + if (_icons) + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) + # requires kdewin32 >= 0.3.4 + ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}.ico ${_outfilename}.rc + COMMAND ${PNG2ICO_EXECUTABLE} ARGS --rcfile ${_outfilename}.rc ${_outfilename}.ico ${_icons} + DEPENDS ${PNG2ICO_EXECUTABLE} ${ARGN} + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + ) + if (MINGW) + ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}_res.o + COMMAND ${WINDRES_EXECUTABLE} ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${WINDRES_EXECUTABLE} ${_outfilename}.rc + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + ) + list(APPEND ${appsources} ${_outfilename}_res.o) + else(MINGW) + list(APPEND ${appsources} ${_outfilename}.rc) + endif(MINGW) + else(_icons) + message(STATUS "Unable to find a related icon for target ${target} - application will not have an application icon!") + endif(_icons) + else(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) + message(STATUS "Unable to find the png2ico or windres utilities - application will not have an application icon!") + endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) + endif(WIN32) + if (Q_WS_MAC) + # first convert image to a tiff using the Mac OS X "sips" utility, + # then use tiff2icns to convert to an icon + find_program(SIPS_EXECUTABLE NAMES sips) + find_program(TIFF2ICNS_EXECUTABLE NAMES tiff2icns) + if (SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) + file(GLOB files "${pattern}") + FOREACH (it ${files}) + if (it MATCHES ".*128-.*" ) + set (_icon ${it}) + endif (it MATCHES ".*128-.*") + ENDFOREACH (it) + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) + + if (_icon) + + # first, get the basename of our app icon + add_custom_command(OUTPUT ${_outfilename}.icns + COMMAND sips -s format tiff ${_icon} --out _tmp_appicon.tiff + COMMAND tiff2icns _tmp_appicon.tiff ${_outfilename}.icns + DEPENDS ${_icon} + ) + + macro_additional_clean_files(_tmp_appicon.tiff ${_outfilename}.icns) + + # This will register the icon into the bundle + set(MACOSX_BUNDLE_ICON_FILE ${target}.icns) + + # Append the icns file to the sources list so it will be a dependency to the + # main target + list(APPEND ${appsources} ${_outfilename}.icns) + + # this doesn't seem to work for me - Use manual "install" instead + # SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/${target}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) + + install(FILES ${_outfilename}.icns DESTINATION ${BIN_INSTALL_DIR}/${target}.app/Contents/Resources/) + + else(_icon) + # TODO - try to scale a non-128 icon...? Try to convert an SVG on the fly? + message(STATUS "Unable to find an 128x128 icon for target ${target} - application will not have an application icon!") + endif(_icon) + + else(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) + message(STATUS "Unable to find the sips and tiff2icns utilities - application will not have an application icon!") + endif(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) + endif(Q_WS_MAC) +endmacro (KDE4_ADD_APP_ICON) + + -- cgit v1.2.1 From 5abf40e617feef164adf4e3b876c1dfb793107e8 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Sun, 30 Dec 2007 19:22:03 +0000 Subject: change KDE4_ADD_APP_ICON to act exactly like KDE4_ADD_WIN32_APP_ICON as the former did not work correct / was to unflexible CCMAIL: Ralf.Habacker@freenet.de svn path=/trunk/KDE/kdelibs/; revision=754803 --- modules/KDE4Macros.cmake | 78 ++++++++++++++++++++---------------------------- 1 file changed, 32 insertions(+), 46 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 3188a856..22b6a707 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -986,12 +986,13 @@ endmacro (KDE4_ADD_WIN32_APP_ICON) # mac osx notes : the application icon is added to a Mac OS X bundle so that Finder and friends show the right thing. # win32 notes: the application icon(s) are compiled into the application # parameters: -# 'target' - cmake target to generate # 'appsources' - specifies the list of source files -# 'pattern' - regular expression for searching application icons -# example: KDE4_ADD_APP_ICON(myapp myapp_sources "pics/cr*-myapp.png") +# 'pngfiles' - specifies the list of icon files +# example: KDE4_ADD_APP_ICON( myapp_sources myapp_icons) +# where blinken_icons is a list of png icons -macro (KDE4_ADD_APP_ICON target appsources pattern ) +macro (KDE4_ADD_APP_ICON appsources ) + STRING(REPLACE _SRCS "" target ${appsources}) if (WIN32) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) find_program(WINDRES_EXECUTABLE NAMES windres) @@ -999,40 +1000,23 @@ macro (KDE4_ADD_APP_ICON target appsources pattern ) set(WINDRES_EXECUTABLE TRUE) endif(MSVC) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) - file(GLOB files "${pattern}") - FOREACH (it ${files}) - GET_FILENAME_COMPONENT(_name ${it} NAME_WE) - if (it MATCHES ".*16-.*" ) - list (APPEND _icons ${it}) - endif (it MATCHES ".*16-.*") - if (it MATCHES ".*32-.*" ) - list (APPEND _icons ${it}) - endif (it MATCHES ".*32-.*") - if (it MATCHES ".*64-.*" ) - list (APPEND _icons ${it}) - endif (it MATCHES ".*64-.*") - ENDFOREACH (it) - if (_icons) - set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) - # requires kdewin32 >= 0.3.4 - ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}.ico ${_outfilename}.rc - COMMAND ${PNG2ICO_EXECUTABLE} ARGS --rcfile ${_outfilename}.rc ${_outfilename}.ico ${_icons} - DEPENDS ${PNG2ICO_EXECUTABLE} ${ARGN} - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - ) - if (MINGW) - ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}_res.o - COMMAND ${WINDRES_EXECUTABLE} ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS ${WINDRES_EXECUTABLE} ${_outfilename}.rc - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - ) - list(APPEND ${appsources} ${_outfilename}_res.o) - else(MINGW) - list(APPEND ${appsources} ${_outfilename}.rc) - endif(MINGW) - else(_icons) - message(STATUS "Unable to find a related icon for target ${target} - application will not have an application icon!") - endif(_icons) + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) + # requires kdewin32 >= 0.3.4 + ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}.ico ${_outfilename}.rc + COMMAND ${PNG2ICO_EXECUTABLE} ARGS --rcfile ${_outfilename}.rc ${_outfilename}.ico ${ARGN} + DEPENDS ${PNG2ICO_EXECUTABLE} ${ARGN} + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + ) + if (MINGW) + ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}_res.o + COMMAND ${WINDRES_EXECUTABLE} ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${WINDRES_EXECUTABLE} ${_outfilename}.rc + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + ) + list(APPEND ${appsources} ${_outfilename}_res.o) + else(MINGW) + list(APPEND ${appsources} ${_outfilename}.rc) + endif(MINGW) else(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) message(STATUS "Unable to find the png2ico or windres utilities - application will not have an application icon!") endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) @@ -1040,11 +1024,13 @@ macro (KDE4_ADD_APP_ICON target appsources pattern ) if (Q_WS_MAC) # first convert image to a tiff using the Mac OS X "sips" utility, # then use tiff2icns to convert to an icon + find_program(SIPS_EXECUTABLE NAMES sips) find_program(TIFF2ICNS_EXECUTABLE NAMES tiff2icns) if (SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) file(GLOB files "${pattern}") - FOREACH (it ${files}) + # we can only test for the 128-icon like that - we don't use patterns anymore + FOREACH (it ${ARGN}) if (it MATCHES ".*128-.*" ) set (_icon ${it}) endif (it MATCHES ".*128-.*") @@ -1055,12 +1041,12 @@ macro (KDE4_ADD_APP_ICON target appsources pattern ) # first, get the basename of our app icon add_custom_command(OUTPUT ${_outfilename}.icns - COMMAND sips -s format tiff ${_icon} --out _tmp_appicon.tiff - COMMAND tiff2icns _tmp_appicon.tiff ${_outfilename}.icns + COMMAND ${SIPS_EXECUTABLE} -s format tiff ${_icon} --out ${outfilename}.tiff + COMMAND ${TIFF2ICNS_EXECUTABLE} ${outfilename}.tiff ${_outfilename}.icns DEPENDS ${_icon} ) - macro_additional_clean_files(_tmp_appicon.tiff ${_outfilename}.icns) + macro_additional_clean_files(${outfilename}.tiff ${_outfilename}.icns) # This will register the icon into the bundle set(MACOSX_BUNDLE_ICON_FILE ${target}.icns) @@ -1074,10 +1060,10 @@ macro (KDE4_ADD_APP_ICON target appsources pattern ) install(FILES ${_outfilename}.icns DESTINATION ${BIN_INSTALL_DIR}/${target}.app/Contents/Resources/) - else(_icon) - # TODO - try to scale a non-128 icon...? Try to convert an SVG on the fly? - message(STATUS "Unable to find an 128x128 icon for target ${target} - application will not have an application icon!") - endif(_icon) + else(_icon) + # TODO - try to scale a non-128 icon...? Try to convert an SVG on the fly? + message(STATUS "Unable to find an 128x128 icon for target ${target} - application will not have an application icon!") + endif(_icon) else(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) message(STATUS "Unable to find the sips and tiff2icns utilities - application will not have an application icon!") -- cgit v1.2.1 From 6fca13ac3b19926beb6e4242d9e001a8eb82a749 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Sun, 30 Dec 2007 21:00:54 +0000 Subject: Use Ralf's approach - with a little change it also supports subdirs so we've no point against it anymore :) CCMAIL: Ralf.Habacker@freenet.de svn path=/trunk/KDE/kdelibs/; revision=754837 --- modules/KDE4Macros.cmake | 66 ++++++++++++++++++++++++++++++------------------ 1 file changed, 42 insertions(+), 24 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 22b6a707..09005f64 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -987,11 +987,11 @@ endmacro (KDE4_ADD_WIN32_APP_ICON) # win32 notes: the application icon(s) are compiled into the application # parameters: # 'appsources' - specifies the list of source files -# 'pngfiles' - specifies the list of icon files -# example: KDE4_ADD_APP_ICON( myapp_sources myapp_icons) -# where blinken_icons is a list of png icons +# 'pattern' - regular expression for searching application icons +# example: KDE4_ADD_APP_ICON( myapp_sources "pics/cr*-myapp.png") +# example: KDE4_ADD_APP_ICON( myapp_sources "icons/oxygen/*/apps/myapp.png") -macro (KDE4_ADD_APP_ICON appsources ) +macro (KDE4_ADD_APP_ICON appsources pattern) STRING(REPLACE _SRCS "" target ${appsources}) if (WIN32) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) @@ -1000,23 +1000,42 @@ macro (KDE4_ADD_APP_ICON appsources ) set(WINDRES_EXECUTABLE TRUE) endif(MSVC) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) - set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) - # requires kdewin32 >= 0.3.4 - ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}.ico ${_outfilename}.rc - COMMAND ${PNG2ICO_EXECUTABLE} ARGS --rcfile ${_outfilename}.rc ${_outfilename}.ico ${ARGN} - DEPENDS ${PNG2ICO_EXECUTABLE} ${ARGN} - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - ) - if (MINGW) - ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}_res.o - COMMAND ${WINDRES_EXECUTABLE} ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS ${WINDRES_EXECUTABLE} ${_outfilename}.rc + file(GLOB_RECURSE files "${pattern}") + FOREACH (it ${files}) + GET_FILENAME_COMPONENT(_name ${it} NAME_WE) + if (it MATCHES ".*16.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*16.*") + if (it MATCHES ".*32.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*32.*") + if (it MATCHES ".*48.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*48.*") + if (it MATCHES ".*64.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*64.*") + ENDFOREACH (it) + if (_icons) + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) + ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}.ico ${_outfilename}.rc + COMMAND ${PNG2ICO_EXECUTABLE} ARGS --rcfile ${_outfilename}.rc ${_outfilename}.ico ${_icons} + DEPENDS ${PNG2ICO_EXECUTABLE} ${_icons} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} ) - list(APPEND ${appsources} ${_outfilename}_res.o) - else(MINGW) - list(APPEND ${appsources} ${_outfilename}.rc) - endif(MINGW) + if (MINGW) + ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}_res.o + COMMAND ${WINDRES_EXECUTABLE} ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${WINDRES_EXECUTABLE} ${_outfilename}.rc + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + ) + list(APPEND ${appsources} ${_outfilename}_res.o) + else(MINGW) + list(APPEND ${appsources} ${_outfilename}.rc) + endif(MINGW) + else(_icons) + message(STATUS "Unable to find a related icon for target ${target} - application will not have an application icon!") + endif(_icons) else(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) message(STATUS "Unable to find the png2ico or windres utilities - application will not have an application icon!") endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) @@ -1024,16 +1043,15 @@ macro (KDE4_ADD_APP_ICON appsources ) if (Q_WS_MAC) # first convert image to a tiff using the Mac OS X "sips" utility, # then use tiff2icns to convert to an icon - find_program(SIPS_EXECUTABLE NAMES sips) find_program(TIFF2ICNS_EXECUTABLE NAMES tiff2icns) if (SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) - file(GLOB files "${pattern}") + file(GLOB_RECURSE files "${pattern}") # we can only test for the 128-icon like that - we don't use patterns anymore - FOREACH (it ${ARGN}) - if (it MATCHES ".*128-.*" ) + FOREACH (it ${files}) + if (it MATCHES ".*128.*" ) set (_icon ${it}) - endif (it MATCHES ".*128-.*") + endif (it MATCHES ".*128.*") ENDFOREACH (it) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) -- cgit v1.2.1 From 0880955ae16caf27f24c5d6f1068ccace4b4dde9 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Mon, 31 Dec 2007 11:24:59 +0000 Subject: clean up - add 128px icon and remove _name svn path=/trunk/KDE/kdelibs/; revision=755068 --- modules/KDE4Macros.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 09005f64..cadcb2b9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1002,7 +1002,6 @@ macro (KDE4_ADD_APP_ICON appsources pattern) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) file(GLOB_RECURSE files "${pattern}") FOREACH (it ${files}) - GET_FILENAME_COMPONENT(_name ${it} NAME_WE) if (it MATCHES ".*16.*" ) list (APPEND _icons ${it}) endif (it MATCHES ".*16.*") @@ -1015,6 +1014,9 @@ macro (KDE4_ADD_APP_ICON appsources pattern) if (it MATCHES ".*64.*" ) list (APPEND _icons ${it}) endif (it MATCHES ".*64.*") + if (it MATCHES ".*128.*" ) + list (APPEND _icons ${it}) + endif (it MATCHES ".*128.*") ENDFOREACH (it) if (_icons) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) -- cgit v1.2.1 From 991e46dbb018ef6251d569c0d46f1236655919c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ingo=20Kl=C3=B6cker?= Date: Mon, 31 Dec 2007 16:48:31 +0000 Subject: Change the KDE4_CREATE_HANDBOOK macro so that the current source directory is used as working directory when running meinproc4. This way meinproc4 can find the *.docbook files referenced by index.docbook and sitting next to index.docbook in the source dir. This fixes handbook creation for index.docbook files with references to other *.docbook files. svn path=/trunk/KDE/kdelibs/; revision=755195 --- modules/KDE4Macros.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index cadcb2b9..f511fe6a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -268,6 +268,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} --cache ${_doc} ${_input} DEPENDS ${_docs} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ) add_custom_target(handbook ALL DEPENDS ${_doc}) @@ -276,7 +277,8 @@ macro (KDE4_CREATE_HANDBOOK _docbook) add_custom_command(OUTPUT ${_htmlDoc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} -o ${_htmlDoc} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} - ) + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + ) add_custom_target(htmlhandbook DEPENDS ${_htmlDoc}) endif(KDE4_ENABLE_HTMLHANDBOOK) -- cgit v1.2.1 From 6c38beaf3d8a130ad0ee3444362e0b32fafe9a7b Mon Sep 17 00:00:00 2001 From: Jakob Petsovits Date: Wed, 2 Jan 2008 16:13:34 +0000 Subject: Add missing icon contexts to the kde4_install_icons() macro. In case you didn't know it (I didn't as of a few minutes ago): You can use the exact icon context names in the filenames of your installed icons. If you ever wondered where the "app" in ox22-app-mykdeapplication.png came from: that's just KDE 3 compatibility. Using the real name of the context, "apps", works just as well: ox22-apps-mykdeapplication.png (This also works with "actions", "status", "places" and whatever icon contexts the icon naming specification defines.) svn path=/trunk/KDE/kdelibs/; revision=756013 --- modules/KDE4Macros.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f511fe6a..4f4e0a9f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -385,14 +385,18 @@ set(_KDE4_ICON_GROUP_filesys "places") set(_KDE4_ICON_GROUP_device "devices") set(_KDE4_ICON_GROUP_app "apps") set(_KDE4_ICON_GROUP_action "actions") -# KDE 4 compatibility +# KDE 4 / icon naming specification compatibility set(_KDE4_ICON_GROUP_mimetypes "mimetypes") set(_KDE4_ICON_GROUP_places "places") set(_KDE4_ICON_GROUP_devices "devices") set(_KDE4_ICON_GROUP_apps "apps") set(_KDE4_ICON_GROUP_actions "actions") set(_KDE4_ICON_GROUP_categories "categories") +set(_KDE4_ICON_GROUP_status "status") set(_KDE4_ICON_GROUP_emblems "emblems") +set(_KDE4_ICON_GROUP_emotes "emotes") +set(_KDE4_ICON_GROUP_animations "animations") +set(_KDE4_ICON_GROUP_intl "intl") # a "map" of short theme names to the theme directory set(_KDE4_ICON_THEME_ox "oxygen") -- cgit v1.2.1 From 709e7c0b54eaeec5a26c20f31787b9bfa26925e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Thu, 3 Jan 2008 15:53:29 +0000 Subject: Consistent naming for xf86misc - include and flag are xf86misc, lib is Xxf86misc. svn path=/trunk/KDE/kdelibs/; revision=756696 --- modules/FindX11.cmake | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 94cf9d38..5fdbe82f 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -17,8 +17,8 @@ # X11_dpms_INCLUDE_PATH, (in X11_Xext_LIB), X11_dpms_FOUND # X11_XShm_INCLUDE_PATH, (in X11_Xext_LIB), X11_XShm_FOUND # X11_Xshape_INCLUDE_PATH, (in X11_Xext_LIB), X11_Xshape_FOUND -# X11_Xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_Xf86misc_FOUND -# X11_xf86vmode_INCLUDE_PATH, X11_Xf86vmode_FOUND +# X11_xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_xf86misc_FOUND +# X11_xf86vmode_INCLUDE_PATH, X11_xf86vmode_FOUND # X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND # X11_Xft_INCLUDE_PATH, X11_Xft_LIB, X11_Xft_FOUND # X11_Xinerama_INCLUDE_PATH, X11_Xinerama_LIB, X11_Xinerama_FOUND @@ -80,7 +80,7 @@ IF (UNIX) FIND_PATH(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH}) - FIND_PATH(X11_Xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_xf86vmode_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH}) @@ -236,10 +236,10 @@ IF (UNIX) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrandr_INCLUDE_PATH}) ENDIF (X11_Xrandr_INCLUDE_PATH AND X11_Xrandr_LIB) - IF (X11_Xxf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB) - SET(X11_Xxf86misc_FOUND TRUE) - SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xxf86misc_INCLUDE_PATH}) - ENDIF (X11_Xxf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB) + IF (X11_xf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB) + SET(X11_xf86misc_FOUND TRUE) + SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_xf86misc_INCLUDE_PATH}) + ENDIF (X11_xf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB) IF (X11_xf86vmode_INCLUDE_PATH) SET(X11_xf86vmode_FOUND TRUE) @@ -399,7 +399,7 @@ IF (UNIX) X11_Xrender_LIB X11_Xrender_INCLUDE_PATH X11_Xxf86misc_LIB - X11_Xxf86misc_INCLUDE_PATH + X11_xf86misc_INCLUDE_PATH X11_xf86vmode_INCLUDE_PATH X11_Xinerama_LIB X11_Xinerama_INCLUDE_PATH @@ -415,7 +415,7 @@ IF (UNIX) X11_Xaccessrules_INCLUDE_PATH X11_Xaccessstr_INCLUDE_PATH X11_Xdmcp_INCLUDE_PATH - X11_Xf86misc_INCLUDE_PATH + X11_xf86misc_INCLUDE_PATH X11_Xkb_INCLUDE_PATH X11_Xkblib_INCLUDE_PATH X11_Xkbfile_INCLUDE_PATH -- cgit v1.2.1 From 24b3d73ac2794bbf8ee9df9c6dfdbdb3180d18f4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 4 Jan 2008 10:16:21 +0000 Subject: my first KDE 4.1 commit ;-) -add FREETYPE_INCLUDE_DIRS to make it compatible with the version in cmake cvs -everything lower case -FREETYPE_LIBRARIES doesn't need to be INTERNAL, STRING is better Alex svn path=/trunk/KDE/kdelibs/; revision=757150 --- modules/FindFreetype.cmake | 47 ++++++++++++++++++++++++---------------------- 1 file changed, 25 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index d2821931..6fd1bb13 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -2,9 +2,10 @@ # Once done this will define # # FREETYPE_FOUND - system has Freetype -# FREETYPE_INCLUDE_DIR - the FREETYPE include directory +# FREETYPE_INCLUDE_DIRS - the FREETYPE include directories # FREETYPE_LIBRARIES - Link these to use FREETYPE -# +# FREETYPE_INCLUDE_DIR - internal + # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -18,7 +19,7 @@ if (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) - FIND_PROGRAM(FREETYPECONFIG_EXECUTABLE NAMES freetype-config PATHS + find_program(FREETYPECONFIG_EXECUTABLE NAMES freetype-config PATHS /opt/local/bin ) @@ -29,28 +30,28 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) # if freetype-config has been found if(FREETYPECONFIG_EXECUTABLE) - EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_LIBRARIES) + exec_program(${FREETYPECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_LIBRARIES) - EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _freetype_pkgconfig_output) + exec_program(${FREETYPECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _freetype_pkgconfig_output) if(FREETYPE_LIBRARIES AND _freetype_pkgconfig_output) set(FREETYPE_FOUND TRUE) # freetype-config can print out more than one -I, so we need to chop it up # into a list and process each entry separately - SEPARATE_ARGUMENTS(_freetype_pkgconfig_output) - FOREACH(value ${_freetype_pkgconfig_output}) - STRING(REGEX REPLACE "-I(.+)" "\\1" value "${value}") + separate_arguments(_freetype_pkgconfig_output) + foreach(value ${_freetype_pkgconfig_output}) + string(REGEX REPLACE "-I(.+)" "\\1" value "${value}") set(FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR} ${value}) - ENDFOREACH(value) + endforeach(value) endif(FREETYPE_LIBRARIES AND _freetype_pkgconfig_output) - MARK_AS_ADVANCED(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR) + set( FREETYPE_LIBRARIES ${FREETYPE_LIBRARIES} CACHE STRING "The libraries for freetype" ) - set( FREETYPE_LIBRARIES ${FREETYPE_LIBRARIES} CACHE INTERNAL "The libraries for freetype" ) + mark_as_advanced(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR) else(FREETYPECONFIG_EXECUTABLE) - find_path (FREETYPE_INCLUDE_DIR freetype2/freetype/freetype.h) - set (FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR}/freetype2) + find_path (FREETYPE_INCLUDE_DIR freetype2/freetype/freetype.h) + set (FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR}/freetype2) find_library(FREETYPE_LIBRARIES freetype) if(FREETYPE_INCLUDE_DIR AND FREETYPE_LIBRARIES) set(FREETYPE_FOUND TRUE) @@ -58,14 +59,16 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) endif(FREETYPECONFIG_EXECUTABLE) - IF (FREETYPE_FOUND) - IF (NOT Freetype_FIND_QUIETLY) - MESSAGE(STATUS "Found Freetype: ${FREETYPE_LIBRARIES}") - ENDIF (NOT Freetype_FIND_QUIETLY) - ELSE (FREETYPE_FOUND) - IF (Freetype_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find FreeType library") - ENDIF (Freetype_FIND_REQUIRED) - ENDIF (FREETYPE_FOUND) + if (FREETYPE_FOUND) + if (NOT Freetype_FIND_QUIETLY) + message(STATUS "Found Freetype: ${FREETYPE_LIBRARIES}") + endif (NOT Freetype_FIND_QUIETLY) + else (FREETYPE_FOUND) + if (Freetype_FIND_REQUIRED) + message(FATAL_ERROR "Could not find FreeType library") + endif (Freetype_FIND_REQUIRED) + endif (FREETYPE_FOUND) endif (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) + +set(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR}") -- cgit v1.2.1 From 643c9bd104e8630b75352293c482c68803700ae7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 4 Jan 2008 16:54:52 +0000 Subject: this one is already marked as ADVANCED above Alex svn path=/trunk/KDE/kdelibs/; revision=757290 --- modules/FindX11.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 5fdbe82f..193723bc 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -415,7 +415,6 @@ IF (UNIX) X11_Xaccessrules_INCLUDE_PATH X11_Xaccessstr_INCLUDE_PATH X11_Xdmcp_INCLUDE_PATH - X11_xf86misc_INCLUDE_PATH X11_Xkb_INCLUDE_PATH X11_Xkblib_INCLUDE_PATH X11_Xkbfile_INCLUDE_PATH -- cgit v1.2.1 From 8c493682049ec873d71ad5ccece8279a6c774af7 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 5 Jan 2008 19:32:52 +0000 Subject: SVN_SILENT: KDE4_ADD_WIN32_APP_ICON was renamed to KDE4_ADD_APP_ICON svn path=/trunk/KDE/kdelibs/; revision=757741 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4f4e0a9f..d864ecea 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -19,7 +19,7 @@ # KDE4_REMOVE_OBSOLETE_CMAKE_FILES # KDE4_NO_ENABLE_FINAL # KDE4_CREATE_HANDBOOK -# KDE4_ADD_WIN32_APP_ICON (Use on Win32) +# KDE4_ADD_APP_ICON # KDE4_CREATE_MANPAGE # Copyright (c) 2006, 2007, Alexander Neundorf, -- cgit v1.2.1 From e6b4768379c76438f6d2d1fe3071ff60a7846cbf Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 9 Jan 2008 17:09:40 +0000 Subject: fix installation of handbooks when DESTDIR installation is used svn path=/trunk/KDE/kdelibs/; revision=758943 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d864ecea..2ffed912 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -308,7 +308,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) # TODO symlinks on non-unix platforms if (UNIX) # execute some cmake code on make install which creates the symlink - install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${_installDest}/common\" \"${_installDest}/${dirname}/common\" )" ) + install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"\$ENV{DESTDIR}${_installDest}/common\" \"\$ENV{DESTDIR}${_installDest}/${dirname}/common\" )" ) endif (UNIX) endif(_installDest) -- cgit v1.2.1 From a8a2bb7dc6d1872538ec781a837bbe6495992585 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 9 Jan 2008 22:21:06 +0000 Subject: of course I notice the bug just after I committed it ;( svn path=/trunk/KDE/kdelibs/; revision=759070 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2ffed912..cbb7def8 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -308,7 +308,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) # TODO symlinks on non-unix platforms if (UNIX) # execute some cmake code on make install which creates the symlink - install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"\$ENV{DESTDIR}${_installDest}/common\" \"\$ENV{DESTDIR}${_installDest}/${dirname}/common\" )" ) + install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink \"${_installDest}/common\" \"\$ENV{DESTDIR}${_installDest}/${dirname}/common\" )" ) endif (UNIX) endif(_installDest) -- cgit v1.2.1 From c209127615b2168fb86e44de160db4b492833b25 Mon Sep 17 00:00:00 2001 From: Marijn Kruisselbrink Date: Thu, 10 Jan 2008 23:03:01 +0000 Subject: make kde4_add_unit_test work properly on OSX together with non-NOGUI tests. I'm not entirely convinced this is the best way to fix it, but it seems to work fine (and it is at least better than the current situation). svn path=/trunk/KDE/kdelibs/; revision=759619 --- modules/KDE4Macros.cmake | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index cbb7def8..ffeb07c4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -749,6 +749,13 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) set(_targetName ${ARGV2}) list(REMOVE_AT _srcList 0 1) endif( ${ARGV1} STREQUAL "TESTNAME" ) + + set(_nogui) + list(GET ${_srcList} 0 first_PARAM) + if( ${first_PARAM} STREQUAL "NOGUI" ) + set(_nogui "NOGUI") + endif( ${first_PARAM} STREQUAL "NOGUI" ) + kde4_add_executable( ${_test_NAME} TEST ${_srcList} ) if(NOT KDE4_TEST_OUTPUT) @@ -766,12 +773,17 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endif(NOT using_qtest) endforeach(_filename) + set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) + if (Q_WS_MAC AND NOT _nogui) + set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.app/Contents/MacOS/${_test_NAME}) + endif (Q_WS_MAC AND NOT _nogui) + if (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") #MESSAGE(STATUS "${_targetName} : Using QTestLib, can produce XML report.") - add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_targetName}.tml) + add_test( ${_targetName} ${_executable} -xml -o ${_targetName}.tml) else (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") #MESSAGE(STATUS "${_targetName} : NOT using QTestLib, can't produce XML report, please use QTestLib to write your unit tests.") - add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} ) + add_test( ${_targetName} ${_executable} ) endif (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") # add_test( ${_targetName} ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME} -xml -o ${_test_NAME}.tml ) -- cgit v1.2.1 From 96fa4f5b130490766a58e80d0bfb38813c79efba Mon Sep 17 00:00:00 2001 From: Josef Spillner Date: Fri, 11 Jan 2008 18:43:57 +0000 Subject: - libstreams is not enough, streamanalyzer is also needed (those two are separate packages sometimes) svn path=/trunk/KDE/kdelibs/; revision=760011 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index b34596e1..5368b318 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -115,7 +115,7 @@ endif (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi - "Couldn't find Strigi streams library. Set the environment variable STRIGI_HOME (or CMAKE_FIND_PREFIX_PATH if using CMake >=2.5) to the strigi install dir." + "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_FIND_PREFIX_PATH if using CMake >=2.5) to the strigi install dir." STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY ) -- cgit v1.2.1 From d5e405ffeae838614d49dd94f30cc13451065eb1 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 12 Jan 2008 16:34:14 +0000 Subject: - if all packages were found, provide a message saying so - cleanup the output a little. - not all found packages are optional; some are required. so reduce confusion by saying "external" instead. svn path=/trunk/KDE/kdelibs/; revision=760423 --- modules/MacroLogFeature.cmake | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index cac4ef87..f0f39882 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -88,27 +88,38 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt) IF (EXISTS ${_file}) FILE(READ ${_file} _requirements) - MESSAGE(STATUS "\n-------------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system. --\n-- Please install them before continuing with this software installation. --\n-------------------------------------------------------------------------------\n${_requirements}-------------------------------------------------------------------------------") + MESSAGE(STATUS "\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- Please install them before continuing this software installation.\n-----------------------------------------------------------------------------\n${_requirements}-----------------------------------------------------------------------------") FILE(REMOVE ${_file}) MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") ENDIF (EXISTS ${_file}) SET(_summary "\n") + SET(_elist 0) SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) IF (EXISTS ${_file}) + SET(_elist 1) FILE(READ ${_file} _enabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}-------------------------------------------------------------------------------\n-- The following OPTIONAL packages were located on your system. --\n-- This software installation will have features provided by these packages. --\n-------------------------------------------------------------------------------\n${_enabled}") + SET(_summary "${_summary}-----------------------------------------------------------------------------\n-- The following external packages were located on your system.\n-- This installation will have the extra features provided by these packages.\n${_enabled}") ENDIF (EXISTS ${_file}) + SET(_dlist 0) SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) IF (EXISTS ${_file}) + SET(_dlist 1) FILE(READ ${_file} _disabled) FILE(REMOVE ${_file}) - SET(_summary "${_summary}-------------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system. --\n-- Consider installing them to enable more features from this software. --\n-------------------------------------------------------------------------------\n${_disabled}") + SET(_summary "${_summary}-----------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n${_disabled}") + ELSE (EXISTS ${_file}) + IF (${_elist}) + SET(_summary "${_summary}Congratulations! All external packages have been found.\n") + ENDIF (${_elist}) ENDIF (EXISTS ${_file}) + IF (${_elist} OR ${_dlist}) + SET(_summary "${_summary}-----------------------------------------------------------------------------\n") + ENDIF (${_elist} OR ${_dlist}) MESSAGE(STATUS "${_summary}") ENDMACRO(MACRO_DISPLAY_FEATURE_LOG) -- cgit v1.2.1 From c05f234f7cdb76dd4296b945be326d1916edac77 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 12 Jan 2008 16:37:34 +0000 Subject: add -Wall to the Intel C/C++ compiler options I wonder if we should also add -Wcheck? svn path=/trunk/KDE/kdelibs/; revision=760425 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c7701e7c..c7e6fcfe 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -940,8 +940,8 @@ if (CMAKE_C_COMPILER MATCHES "icc") set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wpointer-arith -fno-common") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wpointer-arith -fno-exceptions -fno-common") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wall -Wpointer-arith -fno-common") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wall -Wpointer-arith -fno-exceptions -fno-common") # visibility support set(__KDE_HAVE_ICC_VISIBILITY) -- cgit v1.2.1 From 7620d7a3c3e7d20bbf44ad20d94276acab735fdf Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 12 Jan 2008 22:40:11 +0000 Subject: turn off Intel C/C++ compiler remarks. they are a nuisance. svn path=/trunk/KDE/kdelibs/; revision=760550 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c7e6fcfe..2ac6f6d9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -940,8 +940,8 @@ if (CMAKE_C_COMPILER MATCHES "icc") set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wall -Wpointer-arith -fno-common") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wall -Wpointer-arith -fno-exceptions -fno-common") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wall -w1 -Wpointer-arith -fno-common") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wall -w1 -Wpointer-arith -fno-exceptions -fno-common") # visibility support set(__KDE_HAVE_ICC_VISIBILITY) -- cgit v1.2.1 From e0a0a1fb43d31de72eeba546366bfc4a32e63f21 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Sun, 13 Jan 2008 17:21:05 +0000 Subject: set USE_FULL_RPATH to OFF for APPLE since anything else leaves us with bad install_names svn path=/trunk/KDE/kdelibs/; revision=760906 --- modules/FindKDE4Internal.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2ac6f6d9..806488e2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -710,7 +710,13 @@ endif (WIN32) # setup default RPATH/install_name handling, may be overridden by KDE4_HANDLE_RPATH_FOR_[LIBRARY|EXECUTABLE] # default is to build with RPATH for the install dir, so it doesn't need to relink if (UNIX) - option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." ON) + if (NOT APPLE) + set( _KDE4_DEFAULT_USE_FULL_RPATH ON ) + else (NOT APPLE) + set( _KDE4_DEFAULT_USE_FULL_RPATH OFF ) + endif (NOT APPLE) + + option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." _KDE4_DEFAULT_USE_FULL_RPATH) set( _KDE4_PLATFORM_INCLUDE_DIRS) -- cgit v1.2.1 From e26b90a4c8f97d64d17df2d32ba2e296871d1ae6 Mon Sep 17 00:00:00 2001 From: Bernhard Rosenkraenzer Date: Mon, 14 Jan 2008 12:37:53 +0000 Subject: Locate PCRE headers if they're in /SOMEINCLUDEDIR/pcre svn path=/trunk/KDE/kdelibs/; revision=761293 --- modules/FindPCRE.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index f0cc940d..e18b109d 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -16,7 +16,7 @@ if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE set(PCRE_FIND_QUIETLY TRUE) endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) -FIND_PATH(PCRE_INCLUDE_DIR pcre.h ) +FIND_PATH(PCRE_INCLUDE_DIR pcre.h PATH_SUFFIXES pcre) FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre) -- cgit v1.2.1 From 4fed5e58aa64ea5c1e9ef9d582fc5fb06ba7be78 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 14 Jan 2008 18:34:08 +0000 Subject: change find include dir message to be less specific about the KDE 4 minor version. svn path=/trunk/KDE/kdelibs/; revision=761382 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 806488e2..e2dfa71f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -983,7 +983,7 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.0 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find KDE 4 headers") endif(KDE4_INCLUDE_DIR) -- cgit v1.2.1 From 76e484e69e95cdd0550304a714c0e2ff83cb2858 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 15 Jan 2008 00:09:03 +0000 Subject: fix it Alex svn path=/trunk/KDE/kdelibs/; revision=761504 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e2dfa71f..e9f9ac43 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -716,7 +716,7 @@ if (UNIX) set( _KDE4_DEFAULT_USE_FULL_RPATH OFF ) endif (NOT APPLE) - option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." _KDE4_DEFAULT_USE_FULL_RPATH) + option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." ${_KDE4_DEFAULT_USE_FULL_RPATH} ) set( _KDE4_PLATFORM_INCLUDE_DIRS) -- cgit v1.2.1 From caaa202461158f4ec396da790628a01a2d7d1c56 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 15 Jan 2008 14:25:29 +0000 Subject: say "4.1" when finding the internal include or lib. mueller@kde.org svn path=/trunk/KDE/kdelibs/; revision=761874 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e9f9ac43..7b71836b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -983,13 +983,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.1 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.1 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find KDE 4 core library") endif(KDE4_LIB_DIR) -- cgit v1.2.1 From c6c19b29b690360509746406f9abaa1566f9096b Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Wed, 16 Jan 2008 13:50:37 +0000 Subject: Min Soprano version is now 2.0 svn path=/trunk/KDE/kdelibs/; revision=762185 --- modules/FindSoprano.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 93e01a01..ffa464df 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -79,10 +79,10 @@ STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) IF (SOPRANO_VERSION_MATCH) STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) - if(SOPRANO_VERSION STRLESS "1.99") + if(SOPRANO_VERSION STRLESS "2.0") set(Soprano_FOUND FALSE) - message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install 1.99 or newer") - endif(SOPRANO_VERSION STRLESS "1.99") + message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install 2.0 or newer") + endif(SOPRANO_VERSION STRLESS "2.0") ENDIF (SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) -- cgit v1.2.1 From 39c3e2344c4178f258f2a96133bd587938a7f686 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 17 Jan 2008 16:16:55 +0000 Subject: Strinctly require shared-mime-info 0.20 or later. svn path=/trunk/KDE/kdelibs/; revision=762655 --- modules/FindSharedMimeInfo.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 154e58a5..b00c0320 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -10,7 +10,7 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. # the minimum version of shared-mime-database we require -set(SHARED_MIME_INFO_MINIMUM_VERSION "0.18") +set(SHARED_MIME_INFO_MINIMUM_VERSION "0.20") if (UPDATE_MIME_DATABASE_EXECUTABLE) @@ -37,7 +37,7 @@ else (UPDATE_MIME_DATABASE_EXECUTABLE) message(STATUS "Found shared-mime-info version: ${smiVersion}") macro_ensure_version(${SHARED_MIME_INFO_MINIMUM_VERSION} ${smiVersion} _smiVersion_OK) if (NOT _smiVersion_OK) - message(STATUS "WARNING: the found version of shared-mime-info (${smiVersion}) is below the minimum required (${SHARED_MIME_INFO_MINIMUM_VERSION})") + message(FATAL_ERROR "The found version of shared-mime-info (${smiVersion}) is below the minimum required (${SHARED_MIME_INFO_MINIMUM_VERSION})") endif (NOT _smiVersion_OK) endif (NOT SharedMimeInfo_FIND_QUIETLY) -- cgit v1.2.1 From 15e41e39f4ff6ed259848d960a28cb1f277047b2 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Sat, 19 Jan 2008 08:43:16 +0000 Subject: * Make the Soprano minimum version configurable with a default of 1.99 for backwards compatibility. svn path=/trunk/KDE/kdelibs/; revision=763296 --- modules/FindSoprano.cmake | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index ffa464df..2f726db9 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -1,4 +1,18 @@ - +# +# Find an installation of Soprano +# +# Sets the following variables: +# Soprano_FOUND - true is Soprano has been found +# SOPRANO_INCLUDE_DIR - The include directory +# SOPRANO_LIBRARIES - The Soprano core library to link to (libsoprano) +# SOPRANO_INDEX_LIBRARIES - The Soprano index library (libsopranoindex) +# SOPRANO_CLIENT_LIBRARIES - The Soprano client library (libsopranoclient) +# SOPRANO_SERVER_LIBRARIES - The Soprano server library (libsopranoserver) +# SOPRANO_VERSION - The Soprano version (string value) +# +# Options: +# Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) +# #if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) @@ -55,7 +69,6 @@ ) # check for all the libs as required to make sure that we do not try to compile with an old version - # FIXME: introduce a Soprano version check if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) set(Soprano_FOUND TRUE) @@ -74,15 +87,21 @@ endif(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) # check Soprano version + + # We set a default for the minimum required version to be backwards compatible + IF(NOT SOPRANO_MIN_VERSION) + SET(SOPRANO_MIN_VERSION "1.99") + ENDIF(NOT SOPRANO_MIN_VERSION) + if(Soprano_FOUND) FILE(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) IF (SOPRANO_VERSION_MATCH) STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) - if(SOPRANO_VERSION STRLESS "2.0") + if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") set(Soprano_FOUND FALSE) - message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install 2.0 or newer") - endif(SOPRANO_VERSION STRLESS "2.0") + message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") + endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") ENDIF (SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) -- cgit v1.2.1 From 1f55f97829c1539498fd8528fe6dc8ec19f1c012 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jan 2008 22:29:14 +0000 Subject: -default minimum version 0.18 (as shipped with KDE 4.0.0), but now user overridable, used in mimetypes/CMakeLists.txt (see discussion on k-c-d, http://lists.kde.org/?t=119953210500006 ) Alex CCMAIL: toscano.pino@tiscali.it are there more places where this is used ? svn path=/trunk/KDE/kdelibs/; revision=764073 --- modules/FindSharedMimeInfo.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index b00c0320..e3966b86 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -10,7 +10,9 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. # the minimum version of shared-mime-database we require -set(SHARED_MIME_INFO_MINIMUM_VERSION "0.20") +if (NOT SHARED_MIME_INFO_MINIMUM_VERSION) + set(SHARED_MIME_INFO_MINIMUM_VERSION "0.18") +endif (NOT SHARED_MIME_INFO_MINIMUM_VERSION) if (UPDATE_MIME_DATABASE_EXECUTABLE) -- cgit v1.2.1 From 2d02ec4b5ec47afc13b03131f5ea0729426dff81 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 21 Jan 2008 09:50:09 +0000 Subject: Honor Soprano_FIND_REQUIRED in version check svn path=/trunk/KDE/kdelibs/; revision=764199 --- modules/FindSoprano.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 2f726db9..0cc278b0 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -100,7 +100,11 @@ STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") set(Soprano_FOUND FALSE) - message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") + if(Soprano_FIND_REQUIRED) + message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") + else(Soprano_FIND_REQUIRED) + message(STATUS "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") + endif(Soprano_FIND_REQUIRED) endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") ENDIF (SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) -- cgit v1.2.1 From b8f5228d282ad06a5d39b3f90ddfc8cfb60177a6 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 21 Jan 2008 14:23:09 +0000 Subject: Increase the GENERIC_VERSION strings. Probable relinking of all trunk will be needed once you build with the new string. svn path=/trunk/KDE/kdelibs/; revision=764348 --- modules/KDE4Defaults.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index b94eaf6d..d81b265e 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -27,10 +27,10 @@ set(CMAKE_USE_CHRPATH ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes -set(GENERIC_LIB_VERSION "4.0.0") +set(GENERIC_LIB_VERSION "4.1.0") set(GENERIC_LIB_SOVERSION "4") -set(KDE_NON_GENERIC_LIB_VERSION "5.0.0") +set(KDE_NON_GENERIC_LIB_VERSION "5.1.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar -- cgit v1.2.1 From e2b18201c68c201b33abb0b1ac1971ef48ef1c0a Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 22 Jan 2008 16:40:50 +0000 Subject: patch by dfaure so that the testfoo.shell wrapper is used when running 'make test' on Unix. We want to do this because testfoo.shell uses the runpath that points to our builddir, rather than installdir. this way, you no longer need to run make install before running make test. as discussed on kde-buildsystem svn path=/trunk/KDE/kdelibs/; revision=764809 --- modules/KDE4Macros.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ffeb07c4..4d103d5e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -776,6 +776,11 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) if (Q_WS_MAC AND NOT _nogui) set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.app/Contents/MacOS/${_test_NAME}) + else (Q_WS_MAC AND NOT _nogui) + # Use .shell wrapper where available, to use uninstalled libs. + if (UNIX) + set(_executable ${_executable}.shell) + endif (UNIX) endif (Q_WS_MAC AND NOT _nogui) if (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") -- cgit v1.2.1 From 62286135802c3f0e8f4fce4046452b6bdbdc5f06 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 23 Jan 2008 08:54:19 +0000 Subject: Move here FindXine (use by kdebase and kdemultimedia) svn path=/trunk/KDE/kdelibs/; revision=765135 --- modules/FindXine.cmake | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 modules/FindXine.cmake (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake new file mode 100644 index 00000000..65777ed8 --- /dev/null +++ b/modules/FindXine.cmake @@ -0,0 +1,69 @@ +# - Try to find the XINE library +# Once done this will define +# +# XINE_FOUND - system has the XINE library +# XINE_VERSION - XINE version +# XINE_BUGFIX_VERSION - the XINE bugfix version +# XINE_INCLUDE_DIR - the XINE include directory +# XINE_LIBRARY - The libraries needed to use XINE +# XINE_XCB_FOUND - libxine can use XCB for video output + +# Copyright (c) 2006,2007 Laurent Montel, +# Copyright (c) 2006, Matthias Kretz, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (XINE_INCLUDE_DIR AND XINE_LIBRARY) + # Already in cache, be silent + set(Xine_FIND_QUIETLY TRUE) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) + IF (NOT WIN32) + INCLUDE(UsePkgConfig) + PKGCONFIG(libxine _LibXineIncDir _LibXineLinkDir _LibXineLinkFlags _LibXineCflags) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) + ENDIF (NOT WIN32) +FIND_PATH(XINE_INCLUDE_DIR NAMES xine.h + PATHS + ${_LibXineIncDir} + NO_DEFAULT_PATH) + +FIND_LIBRARY(XINE_LIBRARY NAMES xine + PATHS + ${_LibXineLinkDir} + NO_DEFAULT_PATH +) + +FIND_PROGRAM(XINECONFIG_EXECUTABLE NAMES xine-config PATHS + ${_LibXinePrefix}/bin +) + +if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) + EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) + macro_ensure_version(1.1.1 ${XINE_VERSION} XINE_VERSION_OK) + if (XINE_VERSION_OK) + set(XINE_FOUND TRUE) + string(REGEX REPLACE "[0-9].[0-9]." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) + endif (XINE_VERSION_OK) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) + +INCLUDE(CheckCSourceCompiles) +SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) +SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) +CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) + +if (XINE_FOUND) + if (NOT Xine_FIND_QUIETLY) + message(STATUS "Found XINE: ${XINE_LIBRARY}") + endif (NOT Xine_FIND_QUIETLY) + # if(XINECONFIG_EXECUTABLE) + # EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --plugindir RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINEPLUGINSDIR) + # MESSAGE(STATUS "XINEPLUGINSDIR :<${XINEPLUGINSDIR}>") + # endif(XINECONFIG_EXECUTABLE) +else (XINE_FOUND) + if (Xine_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find XINE 1.1.1 or greater") + endif (Xine_FIND_REQUIRED) +endif (XINE_FOUND) + +MARK_AS_ADVANCED(XINE_INCLUDE_DIR XINE_LIBRARY) -- cgit v1.2.1 From d1d57cb86dc8890ae1995ae993ca2c8b424bd330 Mon Sep 17 00:00:00 2001 From: Marcus Hufgard Date: Mon, 28 Jan 2008 06:20:49 +0000 Subject: standard compiled ruby 1.9.0 has problems with the include dir. Fixed it svn path=/trunk/KDE/kdelibs/; revision=767485 --- modules/FindRUBY.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index ee44bae2..8696bb49 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -57,7 +57,7 @@ IF(RUBY_EXECUTABLE) FIND_PATH(RUBY_INCLUDE_PATH NAMES ruby.h - PATHS ${RUBY_ARCH_DIR} + PATHS ${RUBY_ARCH_DIR} /usr/include/ruby-${RUBY_VERSION} ) FIND_LIBRARY(RUBY_LIBRARY -- cgit v1.2.1 From 542ce625fe5ab6bbfbfe1ea8a8909695f5cf7788 Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Mon, 28 Jan 2008 14:53:28 +0000 Subject: Support FLAC > 1.1.2. This does not remove support for FLAC 1.1.2. BUG: 153503 svn path=/trunk/KDE/kdelibs/; revision=767695 --- modules/FindFlac.cmake | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindFlac.cmake b/modules/FindFlac.cmake index f1f54c42..0be8a407 100644 --- a/modules/FindFlac.cmake +++ b/modules/FindFlac.cmake @@ -5,6 +5,9 @@ # FLAC_INCLUDE_DIR - the Flac include directory # FLAC_LIBRARIES - Link these to use Flac # FLAC_OGGFLAC_LIBRARIES - Link these to use OggFlac +# +# No version checking is done - use FLAC_API_VERSION_CURRENT to +# conditionally compile version-dependent code # Copyright (c) 2006, Laurent Montel, # Copyright (c) 2006, Alexander Neundorf, @@ -23,18 +26,16 @@ FIND_LIBRARY(FLAC_LIBRARIES NAMES FLAC ) FIND_LIBRARY(FLAC_OGG_LIBRARY NAMES OggFLAC) -check_library_exists(FLAC FLAC__stream_encoder_set_write_callback "" HAVE_STREAM_ENCODER_WRITE_CALLBACK) - -IF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES AND HAVE_STREAM_ENCODER_WRITE_CALLBACK) +IF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) SET(FLAC_FOUND TRUE) IF (FLAC_OGG_LIBRARY) SET(FLAC_OGGFLAC_LIBRARIES ${FLAC_OGG_LIBRARY} ${FLAC_LIBRARIES}) ENDIF (FLAC_OGG_LIBRARY) -ELSE(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES AND HAVE_STREAM_ENCODER_WRITE_CALLBACK) +ELSE(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) SET(FLAC_FOUND FALSE) -ENDIF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES AND HAVE_STREAM_ENCODER_WRITE_CALLBACK) +ENDIF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) IF(FLAC_FOUND) IF(NOT Flac_FIND_QUIETLY) -- cgit v1.2.1 From bcd5fdef70451265c32438238131962ed23f69c8 Mon Sep 17 00:00:00 2001 From: Chusslove Illich Date: Tue, 29 Jan 2008 08:35:30 +0000 Subject: Add support to install localized icons. svn path=/trunk/KDE/kdelibs/; revision=768063 --- modules/KDE4Macros.cmake | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4d103d5e..b449b05e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -406,7 +406,7 @@ set(_KDE4_ICON_THEME_hi "hicolor") # only used internally by KDE4_INSTALL_ICONS -macro (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME) +macro (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NAME _install_NAME _l10n_SUBDIR) # if the string doesn't match the pattern, the result is the full string, so all three have the same content if (NOT ${_group} STREQUAL ${_install_NAME} ) @@ -414,8 +414,8 @@ macro (_KDE4_ADD_ICON_INSTALL_RULE _install_SCRIPT _install_PATH _group _orig_NA if(NOT _icon_GROUP) set(_icon_GROUP "actions") endif(NOT _icon_GROUP) -# message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name}" ) - install(FILES ${_orig_NAME} DESTINATION ${_install_PATH}/${_icon_GROUP}/ RENAME ${_install_NAME} ) +# message(STATUS "icon: ${_current_ICON} size: ${_size} group: ${_group} name: ${_name} l10n: ${_l10n_SUBDIR}") + install(FILES ${_orig_NAME} DESTINATION ${_install_PATH}/${_icon_GROUP}/${_l10n_SUBDIR}/ RENAME ${_install_NAME} ) endif (NOT ${_group} STREQUAL ${_install_NAME} ) endmacro (_KDE4_ADD_ICON_INSTALL_RULE) @@ -423,6 +423,14 @@ endmacro (_KDE4_ADD_ICON_INSTALL_RULE) macro (KDE4_INSTALL_ICONS _defaultpath ) + # the l10n-subdir if language given as second argument (localized icon) + set(_lang ${ARGV1}) + if(_lang) + set(_l10n_SUBDIR l10n/${_lang}) + else(_lang) + set(_l10n_SUBDIR ".") + endif(_lang) + # first the png icons file(GLOB _icons *.png) foreach (_current_ICON ${_icons} ) @@ -435,7 +443,7 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) if( _theme_GROUP) _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme_GROUP}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) + ${_group} ${_current_ICON} ${_name} ${_l10n_SUBDIR}) endif( _theme_GROUP) endforeach (_current_ICON) @@ -451,7 +459,7 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) if( _theme_GROUP) _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme_GROUP}/${_size}x${_size} - ${_group} ${_current_ICON} ${_name}) + ${_group} ${_current_ICON} ${_name} ${_l10n_SUBDIR}) endif( _theme_GROUP) endforeach (_current_ICON) @@ -466,7 +474,7 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) if( _theme_GROUP) _KDE4_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake ${_defaultpath}/${_theme_GROUP}/scalable - ${_group} ${_current_ICON} ${_name}) + ${_group} ${_current_ICON} ${_name} ${_l10n_SUBDIR}) endif( _theme_GROUP) endforeach (_current_ICON) -- cgit v1.2.1 From e396eb931ba793d36edb09f4201738bf8f782fc9 Mon Sep 17 00:00:00 2001 From: David Johnson Date: Tue, 29 Jan 2008 17:21:00 +0000 Subject: adjust order of includes svn path=/trunk/KDE/kdelibs/; revision=768283 --- modules/FindKDE4Internal.cmake | 2 +- modules/FindQt4.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7b71836b..ef6578c1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1030,7 +1030,7 @@ endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path #the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include -set(KDE4_INCLUDES ${QT_INCLUDES} ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ) +set(KDE4_INCLUDES ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ${QT_INCLUDES} ) set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0ad173a0..f8d0f562 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -604,7 +604,7 @@ IF (QT4_QMAKE_FOUND) MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ) + SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR}) ######################################## @@ -833,7 +833,7 @@ IF (QT4_QMAKE_FOUND) IF (QT_${basename}_INCLUDE_DIR) #add the include directory to QT_INCLUDES - SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}") + SET(QT_INCLUDES "${QT_${basename}_INCLUDE_DIR}" ${QT_INCLUDES}) ENDIF (QT_${basename}_INCLUDE_DIR) # Make variables changeble to the advanced user -- cgit v1.2.1 From c926f96b573c3a4182078603e9c37d7c375a442f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 31 Jan 2008 20:48:09 +0000 Subject: Fix problem when pcre is installed after a first configure svn path=/trunk/KDE/kdelibs/; revision=769201 --- modules/FindPCRE.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index e18b109d..b39d8875 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -11,10 +11,10 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) +if (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) # Already in cache, be silent set(PCRE_FIND_QUIETLY TRUE) -endif (PCRE_INCLUDE_DIR AND PCRE_LIBRARIES AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) +endif (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) FIND_PATH(PCRE_INCLUDE_DIR pcre.h PATH_SUFFIXES pcre) @@ -22,9 +22,9 @@ FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre) FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix) -set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") - include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_LIBRARIES ) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) + +set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) -- cgit v1.2.1 From c32d4c98e1d154025d68baa0fa837e99fce86b15 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Sat, 2 Feb 2008 16:23:27 +0000 Subject: Use the new --quiet parameter to suppress useless output svn path=/trunk/KDE/kdelibs/; revision=770030 --- modules/NepomukMacros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/NepomukMacros.cmake b/modules/NepomukMacros.cmake index 9476cf64..00771ae6 100644 --- a/modules/NepomukMacros.cmake +++ b/modules/NepomukMacros.cmake @@ -28,22 +28,22 @@ macro(NEPOMUK_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) execute_process( - COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} + COMMAND ${RCGEN} --quiet --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} OUTPUT_VARIABLE ${out_headers} ) execute_process( - COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ --ontologies ${ontofile} + COMMAND ${RCGEN} --quiet --listsources --prefix ${targetdir}/ --ontologies ${ontofile} OUTPUT_VARIABLE ${out_sources} ) execute_process( - COMMAND ${RCGEN} --listincludes --ontologies ${ontofile} + COMMAND ${RCGEN} --quiet --listincludes --ontologies ${ontofile} OUTPUT_VARIABLE ${out_includes} ) execute_process( - COMMAND ${RCGEN} --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} + COMMAND ${RCGEN} --quiet --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} ) endmacro(NEPOMUK_GENERATE_FROM_ONTOLOGY) -- cgit v1.2.1 From 5950ab2665426d9fad7a6c81a740c39a215a720d Mon Sep 17 00:00:00 2001 From: David Johnson Date: Sat, 2 Feb 2008 21:14:08 +0000 Subject: Place Qt includes before platform/X11 includes svn path=/trunk/KDE/kdelibs/; revision=770126 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ef6578c1..c1981470 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1030,7 +1030,7 @@ endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path #the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include -set(KDE4_INCLUDES ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${_KDE4_PLATFORM_INCLUDE_DIRS} ${QT_INCLUDES} ) +set(KDE4_INCLUDES ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${QT_INCLUDES} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) -- cgit v1.2.1 From 1ed1dcce2c979c8b706f81a042c712e2fb00cef0 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Sat, 2 Feb 2008 21:47:29 +0000 Subject: Reverted to version without --quiet parameter to be backwards compatible svn path=/trunk/KDE/kdelibs/; revision=770138 --- modules/NepomukMacros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/NepomukMacros.cmake b/modules/NepomukMacros.cmake index 00771ae6..9476cf64 100644 --- a/modules/NepomukMacros.cmake +++ b/modules/NepomukMacros.cmake @@ -28,22 +28,22 @@ macro(NEPOMUK_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) execute_process( - COMMAND ${RCGEN} --quiet --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} + COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} OUTPUT_VARIABLE ${out_headers} ) execute_process( - COMMAND ${RCGEN} --quiet --listsources --prefix ${targetdir}/ --ontologies ${ontofile} + COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ --ontologies ${ontofile} OUTPUT_VARIABLE ${out_sources} ) execute_process( - COMMAND ${RCGEN} --quiet --listincludes --ontologies ${ontofile} + COMMAND ${RCGEN} --listincludes --ontologies ${ontofile} OUTPUT_VARIABLE ${out_includes} ) execute_process( - COMMAND ${RCGEN} --quiet --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} + COMMAND ${RCGEN} --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} ) endmacro(NEPOMUK_GENERATE_FROM_ONTOLOGY) -- cgit v1.2.1 From 5006fea71975220db9abf436e9f6dcea3e94f2f0 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 5 Feb 2008 16:38:41 +0000 Subject: Add more library to the GStreamer library search. Note: the gstreamer 0.10 package comes with 5 libraries and we only check for one. In addition, we check for a library that comes from the gstreamer-plugins-base 0.10 package. I suggest this be cleaned up. The extra library can go into FindGStreamerPlugins.cmake file. svn path=/trunk/KDE/kdelibs/; revision=771265 --- modules/FindGStreamer.cmake | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake index 2d752dd9..4398f150 100644 --- a/modules/FindGStreamer.cmake +++ b/modules/FindGStreamer.cmake @@ -10,12 +10,12 @@ # TODO: Other versions --> GSTREAMER_X_Y_FOUND (Example: GSTREAMER_0_8_FOUND and GSTREAMER_0_10_FOUND etc) -IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) +IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) # in cache already SET(GStreamer_FIND_QUIETLY TRUE) -ELSE (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) +ELSE (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) SET(GStreamer_FIND_QUIETLY FALSE) -ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) +ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -40,6 +40,11 @@ FIND_LIBRARY(GSTREAMER_LIBRARIES NAMES gstreamer-0.10 ${_GStreamerLinkDir} ) +FIND_LIBRARY(GSTREAMER_BASE_LIBRARY NAMES gstbase-0.10 + PATHS + ${_GStreamerLinkDir} + ) + FIND_LIBRARY(GSTREAMER_INTERFACE_LIBRARY NAMES gstinterfaces-0.10 PATHS ${_GStreamerLinkDir} @@ -63,11 +68,11 @@ ELSE (GSTREAMER_INTERFACE_LIBRARY) MESSAGE(STATUS "GStreamer: WARNING: interface library not found") ENDIF (GSTREAMER_INTERFACE_LIBRARY) -IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) +IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) SET(GSTREAMER_FOUND TRUE) -ELSE (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) +ELSE (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) SET(GSTREAMER_FOUND FALSE) -ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_INTERFACE_LIBRARY) +ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) IF (GSTREAMER_FOUND) IF (NOT GStreamer_FIND_QUIETLY) @@ -79,4 +84,4 @@ ELSE (GSTREAMER_FOUND) ENDIF (GStreamer_FIND_REQUIRED) ENDIF (GSTREAMER_FOUND) -MARK_AS_ADVANCED(GSTREAMER_INCLUDE_DIR GSTREAMER_LIBRARIES GSTREAMER_INTERFACE_LIBRARY) +MARK_AS_ADVANCED(GSTREAMER_INCLUDE_DIR GSTREAMER_LIBRARIES GSTREAMER_BASE_LIBRARY GSTREAMER_INTERFACE_LIBRARY) -- cgit v1.2.1 From e5c7745dccc9b29354812f53edb77163574028ae Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 11 Feb 2008 17:29:18 +0000 Subject: Make it possible to get the result from the nepomuk code gen call svn path=/trunk/KDE/kdelibs/; revision=773741 --- modules/NepomukMacros.cmake | 64 ++++++++++++++++++++++++++++++--------------- 1 file changed, 43 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/NepomukMacros.cmake b/modules/NepomukMacros.cmake index 9476cf64..18aeca27 100644 --- a/modules/NepomukMacros.cmake +++ b/modules/NepomukMacros.cmake @@ -18,32 +18,54 @@ # # In addition to the parameters an arbitrary number of template filenames can be set as arguments # +# In case of success NEPOMUK_RESOURCES_GENERATED is true, otherwise false +# macro(NEPOMUK_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources out_includes) + # init + set(NEPOMUK_RESOURCES_GENERATED false) + FIND_PROGRAM(RCGEN nepomuk-rcgen PATHS ${BIN_INSTALL_DIR}) + if(NOT RCGEN) - message( FATAL_ERROR "Failed to find the KMetaData source generator" ) - endif(NOT RCGEN) - FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) + message(STATUS "Failed to find the Nepomuk source generator" ) - execute_process( - COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} - OUTPUT_VARIABLE ${out_headers} - ) - - execute_process( - COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ --ontologies ${ontofile} - OUTPUT_VARIABLE ${out_sources} - ) - - execute_process( - COMMAND ${RCGEN} --listincludes --ontologies ${ontofile} - OUTPUT_VARIABLE ${out_includes} - ) - - execute_process( - COMMAND ${RCGEN} --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} - ) + else(NOT RCGEN) + + FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) + + execute_process( + COMMAND ${RCGEN} --listheaders --prefix ${targetdir}/ --ontologies ${ontofile} + OUTPUT_VARIABLE ${out_headers} + RESULT_VARIABLE rcgen_result + ) + + # If the first call succeeds it is very very likely that the rest will, too + if(${rcgen_result} EQUAL 0) + + execute_process( + COMMAND ${RCGEN} --listsources --prefix ${targetdir}/ --ontologies ${ontofile} + OUTPUT_VARIABLE ${out_sources} + ) + + execute_process( + COMMAND ${RCGEN} --listincludes --ontologies ${ontofile} + OUTPUT_VARIABLE ${out_includes} + ) + + execute_process( + COMMAND ${RCGEN} --writeall --templates ${ARGN} --target ${targetdir}/ --ontologies ${ontofile} + ) + + set(NEPOMUK_RESOURCES_GENERATED true) + + else(${rcgen_result} EQUAL 0) + + message(STATUS "Failed to generate Nepomuk resource classes.") + + endif(${rcgen_result} EQUAL 0) + + endif(NOT RCGEN) endmacro(NEPOMUK_GENERATE_FROM_ONTOLOGY) -- cgit v1.2.1 From 689357faa3e04ecefa15a80d7044714cb502aa5f Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 12 Feb 2008 12:36:17 +0000 Subject: - win32 compile fix: kdecore's CMakeLists.txt says that kdefakes is only build on unix which implies that the library should only be searched on unix svn path=/trunk/KDE/kdelibs/; revision=774067 --- modules/FindKDE4Internal.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c1981470..494986ea 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -340,8 +340,10 @@ else (_kdeBootStrapping) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) +if (UNIX) find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) +endif find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) -- cgit v1.2.1 From 776c62413b3857305f9fdfea2aa81d01b18ab271 Mon Sep 17 00:00:00 2001 From: Andras Mantia Date: Tue, 12 Feb 2008 13:41:13 +0000 Subject: Fix cmake file. svn path=/trunk/KDE/kdelibs/; revision=774091 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 494986ea..c4f85cfc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -340,10 +340,10 @@ else (_kdeBootStrapping) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) -if (UNIX) - find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) -endif + if (UNIX) + find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) + endif (UNIX) find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) -- cgit v1.2.1 From 331a478cded22cc2a6f7d8223e0ead4c27d7b4a3 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 15 Feb 2008 08:21:59 +0000 Subject: Add new variable for new lib But qt-copy doesn't install QtClucene include Thiago ? CCMAIL: thiago@kde.org svn path=/trunk/KDE/kdelibs/; revision=775219 --- modules/FindQt4.cmake | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f8d0f562..33181109 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -24,6 +24,11 @@ # QT_USE_QTUITOOLS # QT_USE_QTDBUS # QT_USE_QTSCRIPT +# QT_USE_QTCLUCENE +# QT_USE_QTASSISTANTCLIENT +# QT_USE_QTHELP +# QT_USE_QTWEBKIT +# QT_USE_QTXMLPATTERNS # # All the libraries required are stored in a variable called QT_LIBRARIES. # Add this variable to your TARGET_LINK_LIBRARIES. @@ -96,6 +101,11 @@ # QT_QTSCRIPT_FOUND True if QtScript was found. # QT_QTTEST_FOUND True if QtTest was found. # QT_QTUITOOLS_FOUND True if QtUiTools was found. +# QT_QTCLUCENE_FOUND True if QtClucene was found. +# QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found. +# QT_QTHELP_FOUND True if QtHelp was found. +# QT_QTWEBKIT_FOUND True if QtWebKit was found. +# QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. # # QT_DEFINITIONS Definitions to use when compiling code that uses Qt. # @@ -123,6 +133,11 @@ # QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" # QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" +# QT_QTCLUCENE_INCLUDE_DIR Path to "include/QtClucene" +# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" +# QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit" +# QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" # # QT_LIBRARY_DIR Path to "lib" of Qt4 # @@ -166,6 +181,20 @@ # The qtmain library for Windows QT_QTMAIN_LIBRARY # # The QtUiTools library: QT_QTUITOOLS_LIBRARY + +# +# The QtClucene library: QT_QTCLUCENE_LIBRARY +# +# The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY +# +# The QtHelp library: QT_QTHELP_LIBRARY +# +# The QtWebKit library: QT_QTWEBKIT_LIBRARY +# +# The QtXmlPatterns library: QT_QTXMLPATTERNS_LIBRARY + + + # # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. @@ -600,6 +629,41 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + # Set QT_QTDBUS_CLUCENE_DIR + FIND_PATH(QT_QTCLUCENE_INCLUDE_DIR QtClucene + PATHS + ${QT_INCLUDE_DIR}/QtClucene + ${QT_HEADERS_DIR}/QtClucene + NO_DEFAULT_PATH + ) + # Set QT_QTASSISTANTCLIENT_INCLUDE_DIR + FIND_PATH(QT_QTASSISTANTCLIENT_INCLUDE_DIR QtAssistantClient + PATHS + ${QT_INCLUDE_DIR}/QtAssistant + ${QT_HEADERS_DIR}/QtAssistant + NO_DEFAULT_PATH + ) + # Set QT_QTHELP_INCLUDE_DIR + FIND_PATH(QT_QTHELP_INCLUDE_DIR QtHelp + PATHS + ${QT_INCLUDE_DIR}/QtHelp + ${QT_HEADERS_DIR}/QtHelp + NO_DEFAULT_PATH + ) + # Set QT_QTWEBKIT_INCLUDE_DIR + FIND_PATH(QT_QTWEBKIT_INCLUDE_DIR QtWebKit + PATHS + ${QT_INCLUDE_DIR}/QtWebKit + ${QT_HEADERS_DIR}/QtWebKit + NO_DEFAULT_PATH + ) + # Set QT_QTXMLPATTERNS_INCLUDE_DIR + FIND_PATH(QT_QTXMLPATTERNS_INCLUDE_DIR QtXmlPatterns + PATHS + ${QT_INCLUDE_DIR}/QtXmlPatterns + ${QT_HEADERS_DIR}/QtXmlPatterns + NO_DEFAULT_PATH + ) # Make variables changeble to the advanced user MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) @@ -686,6 +750,35 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTTEST_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + IF(EXISTS ${QT_LIBRARY_DIR}/QtClucene.framework) + SET(QT_QTCLUCENE_FOUND TRUE) + SET(QT_QTCLUCENE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtClucene" CACHE STRING "The QtClucene library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtClucene.framework) + SET(QT_QTCLUCENE_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtClucene.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) + SET(QT_QTASSISTANTCLIENT_FOUND TRUE) + SET(QT_QTASSISTANTCLIENT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtAssistantClient" CACHE STRING "The QtAssistantClient library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) + SET(QT_QTASSISTANTCLIENT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) + SET(QT_QTWEBKIT_FOUND TRUE) + SET(QT_QTWEBKIT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtWebKit" CACHE STRING "The QtWebKit library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) + SET(QT_QTWEBKIT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) + SET(QT_QTXMLPATTERNS_FOUND TRUE) + SET(QT_QTXMLPATTERNS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXmlPatterns" CACHE STRING "The QtXmlPatterns library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) + SET(QT_QTXMLPATTERNS_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + + # WTF? why don't we have frameworks? :P # Set QT_QTUITOOLS_LIBRARY FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) @@ -737,6 +830,17 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTCLUCENE_LIBRARY NAMES QtClucene QtClucene4 QtClucened4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTWEBKIT_LIBRARY NAMES QtWebKit QtWebKit4 QtWebKitd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTXMLPATTERNS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + IF(MSVC) FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From 901763fc5f2362ca3f1d11298fa14f88442b6207 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 15 Feb 2008 08:40:42 +0000 Subject: QtClucene doesn't have public API svn path=/trunk/KDE/kdelibs/; revision=775229 --- modules/FindQt4.cmake | 22 ---------------------- 1 file changed, 22 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 33181109..e5798f6b 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -24,7 +24,6 @@ # QT_USE_QTUITOOLS # QT_USE_QTDBUS # QT_USE_QTSCRIPT -# QT_USE_QTCLUCENE # QT_USE_QTASSISTANTCLIENT # QT_USE_QTHELP # QT_USE_QTWEBKIT @@ -101,7 +100,6 @@ # QT_QTSCRIPT_FOUND True if QtScript was found. # QT_QTTEST_FOUND True if QtTest was found. # QT_QTUITOOLS_FOUND True if QtUiTools was found. -# QT_QTCLUCENE_FOUND True if QtClucene was found. # QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found. # QT_QTHELP_FOUND True if QtHelp was found. # QT_QTWEBKIT_FOUND True if QtWebKit was found. @@ -133,7 +131,6 @@ # QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" # QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# QT_QTCLUCENE_INCLUDE_DIR Path to "include/QtClucene" # QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant" # QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" # QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit" @@ -182,8 +179,6 @@ # # The QtUiTools library: QT_QTUITOOLS_LIBRARY -# -# The QtClucene library: QT_QTCLUCENE_LIBRARY # # The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY # @@ -628,14 +623,6 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtDBus NO_DEFAULT_PATH ) - - # Set QT_QTDBUS_CLUCENE_DIR - FIND_PATH(QT_QTCLUCENE_INCLUDE_DIR QtClucene - PATHS - ${QT_INCLUDE_DIR}/QtClucene - ${QT_HEADERS_DIR}/QtClucene - NO_DEFAULT_PATH - ) # Set QT_QTASSISTANTCLIENT_INCLUDE_DIR FIND_PATH(QT_QTASSISTANTCLIENT_INCLUDE_DIR QtAssistantClient PATHS @@ -750,13 +737,6 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTTEST_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - IF(EXISTS ${QT_LIBRARY_DIR}/QtClucene.framework) - SET(QT_QTCLUCENE_FOUND TRUE) - SET(QT_QTCLUCENE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtClucene" CACHE STRING "The QtClucene library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtClucene.framework) - SET(QT_QTCLUCENE_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtClucene.framework) - IF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) SET(QT_QTASSISTANTCLIENT_FOUND TRUE) SET(QT_QTASSISTANTCLIENT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtAssistantClient" CACHE STRING "The QtAssistantClient library.") @@ -830,8 +810,6 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTCLUCENE_LIBRARY NAMES QtClucene QtClucene4 QtClucened4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From 3a1e3c2d59fad59a3f79fd25a787e9c709105ed4 Mon Sep 17 00:00:00 2001 From: Till Adam Date: Fri, 15 Feb 2008 16:34:21 +0000 Subject: Avoid a cmake warning by terminating the IF properly. svn path=/trunk/KDE/kdelibs/; revision=775366 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e5798f6b..7f3f03da 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -756,7 +756,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTXMLPATTERNS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXmlPatterns" CACHE STRING "The QtXmlPatterns library.") ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) SET(QT_QTXMLPATTERNS_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) # WTF? why don't we have frameworks? :P -- cgit v1.2.1 From e87d6853ee74980b2a16cc46f0d39a031a58d658 Mon Sep 17 00:00:00 2001 From: Matt Rogers Date: Sun, 17 Feb 2008 17:09:06 +0000 Subject: Bump minimum required version of Qt to 4.4.0. BUG: 157888 Please note that compilation bugs for subversion checkouts do NOT belong bugzilla! Report them to the appropriate mailing list instead. svn path=/trunk/KDE/kdelibs/; revision=776226 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c4f85cfc..0b0e13b9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -218,7 +218,7 @@ include (MacroEnsureVersion) cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) -set(QT_MIN_VERSION "4.3.0") +set(QT_MIN_VERSION "4.4.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -- cgit v1.2.1 From 814455b7ad321c88e730662fda58261087b72e72 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 Feb 2008 19:06:32 +0000 Subject: some improvements to the docs: -some modules were not at all documented, only few are left now -the copyright message doesn't have to be printed for every module in the docs -fix FindKorundom.cmake, it didn't follow the style guide and had typos (e.g. Korumdum_FOUND instead of KORUNDUM_FOUND) Alex (will commit modified FindKDE4Internal.cmake after Christians commit) svn path=/trunk/KDE/kdelibs/; revision=776742 --- modules/CheckPrototypeExists.cmake | 2 +- modules/FindACL.cmake | 2 +- modules/FindAGG.cmake | 2 +- modules/FindAkode.cmake | 2 +- modules/FindAlsa.cmake | 8 ++++---- modules/FindAvahi.cmake | 2 +- modules/FindBerkeleyDB.cmake | 2 +- modules/FindBlitz.cmake | 2 +- modules/FindCarbon.cmake | 5 +++++ modules/FindENCHANT.cmake | 2 +- modules/FindEigen.cmake | 4 ++-- modules/FindFAM.cmake | 2 +- modules/FindFlex.cmake | 1 - modules/FindGMP.cmake | 6 +++--- modules/FindGObject.cmake | 2 +- modules/FindGSSAPI.cmake | 2 +- modules/FindGStreamer.cmake | 2 +- modules/FindKDEWIN.cmake | 2 +- modules/FindKDEWIN32.cmake | 2 +- modules/FindKdeMultimedia.cmake | 9 ++++++++- modules/FindKorundum.cmake | 24 ++++++++++------------- modules/FindLibArt.cmake | 2 +- modules/FindLibintl.cmake | 2 +- modules/FindMsgfmt.cmake | 2 +- modules/FindMusicBrainz.cmake | 7 ++++++- modules/FindMySQL.cmake | 2 +- modules/FindOpenEXR.cmake | 2 +- modules/FindOpenSSL.cmake | 1 + modules/FindPCRE.cmake | 2 +- modules/FindPNG.cmake | 3 +-- modules/FindPackageHandleStandardArgs.cmake | 30 +++++++++++++++-------------- modules/FindPostgreSQL.cmake | 2 +- modules/FindQCA2.cmake | 2 +- modules/FindQImageBlitz.cmake | 2 +- modules/FindRUBY.cmake | 2 +- modules/FindSasl2.cmake | 2 +- modules/FindTIFF.cmake | 2 +- modules/FindTaglib.cmake | 2 +- modules/FindUSB.cmake | 2 +- modules/FindXmms.cmake | 2 +- modules/KDE4Macros.cmake | 8 ++++---- modules/Win32Macros.cmake | 23 ++++++++++++---------- modules/kde4_exec_via_sh.cmake | 2 +- modules/kde4uic.cmake | 1 + 44 files changed, 104 insertions(+), 86 deletions(-) (limited to 'modules') diff --git a/modules/CheckPrototypeExists.cmake b/modules/CheckPrototypeExists.cmake index 8afc6f74..811d6489 100644 --- a/modules/CheckPrototypeExists.cmake +++ b/modules/CheckPrototypeExists.cmake @@ -11,7 +11,7 @@ # CMAKE_REQUIRED_FLAGS = string of compile command line flags # CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) # CMAKE_REQUIRED_INCLUDES = list of include directories -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindACL.cmake b/modules/FindACL.cmake index e21e25fa..2c515fdf 100644 --- a/modules/FindACL.cmake +++ b/modules/FindACL.cmake @@ -3,7 +3,7 @@ # # ACL_FOUND - system has the ACL library # ACL_LIBS - The libraries needed to use ACL -# + # Copyright (c) 2006, Pino Toscano, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 57b1d29f..b52814e6 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -5,7 +5,7 @@ # AGG_INCLUDE_DIR - the AGG include directory # AGG_LIBRARIES - Link these to use AGG # AGG_DEFINITIONS - Compiler switches required for using AGG -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index 72061d37..9e66eb36 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -4,7 +4,7 @@ # AKODE_FOUND - system has the aKode library # AKODE_INCLUDE_DIR - the aKode include directory # AKODE_LIBRARIES - The libraries needed to use aKode -# + # Copyright (c) 2006, Pino Toscano, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index 5b8e43f8..40872ea5 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -2,10 +2,10 @@ # Only the support for Alsa >= 0.9.x was included; 0.5.x was dropped (but feel free to re-add it if you need it) # It defines ... # It offers the following macros: -# ALSA_CONFIGURE_FILE(config_header) - generate a config.h, typical usage: -# ALSA_CONFIGURE_FILE(${CMAKE_BINARY_DIR}/config-alsa.h) -# ALSA_VERSION_STRING(version_string) looks for alsa/version.h and reads the version string into -# the first argument passed to the macro +# ALSA_CONFIGURE_FILE(config_header) - generate a config.h, typical usage: +# ALSA_CONFIGURE_FILE(${CMAKE_BINARY_DIR}/config-alsa.h) +# ALSA_VERSION_STRING(version_string) looks for alsa/version.h and reads the version string into +# the first argument passed to the macro # Copyright (c) 2006, David Faure, # Copyright (c) 2007, Matthias Kretz diff --git a/modules/FindAvahi.cmake b/modules/FindAvahi.cmake index d328bf19..129e68a6 100644 --- a/modules/FindAvahi.cmake +++ b/modules/FindAvahi.cmake @@ -1,5 +1,5 @@ # Find Avahi. Only avahi-common/defs.h is really needed -# + # Copyright (c) 2007, Jakub Stachowski, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake index 18d475bd..749f1664 100644 --- a/modules/FindBerkeleyDB.cmake +++ b/modules/FindBerkeleyDB.cmake @@ -5,7 +5,7 @@ # BERKELEY_DB_INCLUDE_DIR - the Berkeley DB include directory # BERKELEY_DB_LIBRARIES - Link these to use Berkeley DB # BERKELEY_DB_DEFINITIONS - Compiler switches required for using Berkeley DB -# + # Copyright (c) 2006, Alexander Dymo, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 6f3e912b..84abc6ad 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -4,7 +4,7 @@ # BLITZ_FOUND - system has blitz lib # BLITZ_INCLUDES - the blitz include directory # BLITZ_LIBRARIES - The libraries needed to use blitz -# + # Copyright (c) 2006, Montel Laurent, # Copyright (c) 2007, Allen Winter, # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindCarbon.cmake b/modules/FindCarbon.cmake index 38a1aa72..de788f74 100644 --- a/modules/FindCarbon.cmake +++ b/modules/FindCarbon.cmake @@ -1,3 +1,8 @@ +# - Find Carbon on Mac +# +# CARBON_LIBRARY - the library to use Carbon +# CARBON_FOUND - true if Carbon has been found + # Copyright (c) 2006, Benjamin Reed, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 7b3e4163..76d577c6 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -5,7 +5,7 @@ # ENCHANT_INCLUDE_DIR - the ENCHANT include directory # ENCHANT_LIBRARIES - Link these to use ENCHANT # ENCHANT_DEFINITIONS - Compiler switches required for using ENCHANT -# + # Copyright (c) 2006, Zack Rusin, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindEigen.cmake b/modules/FindEigen.cmake index 733b2963..1a5fe34f 100644 --- a/modules/FindEigen.cmake +++ b/modules/FindEigen.cmake @@ -3,7 +3,7 @@ # # EIGEN_FOUND - system has eigen lib # EIGEN_INCLUDE_DIR - the eigen include directory -# + # Copyright (c) 2006, 2007 Montel Laurent, # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -21,7 +21,7 @@ find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h ) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Eigen DEFAULT_MSG EIGEN_INCLUDE_DIR ) +find_package_handle_standard_args(Eigen DEFAULT_MSG EIGEN_INCLUDE_DIR ) mark_as_advanced(EIGEN_INCLUDE_DIR) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index 62e34e15..8ebb3ab6 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -4,7 +4,7 @@ # FAM_FOUND - system has FAM # FAM_INCLUDE_DIR - the FAM include directory # FAM_LIBRARIES - The libraries needed to use FAM -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index 631dcd27..01f909c0 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -4,7 +4,6 @@ # FLEX_FOUND - system has Flex # FLEX_EXECUTABLE - path of the flex executable # FLEX_VERSION - the version string, like "2.5.31" -# FIND_PROGRAM(FLEX_EXECUTABLE NAMES flex) diff --git a/modules/FindGMP.cmake b/modules/FindGMP.cmake index f9efe90c..67ccbbb1 100644 --- a/modules/FindGMP.cmake +++ b/modules/FindGMP.cmake @@ -1,7 +1,7 @@ # Try to find the GMP librairies -# GMP_FOUND - system has GMP lib -# GMP_INCLUDE_DIR - the GMP include directory -# GMP_LIBRARIES - Libraries needed to use GMP +# GMP_FOUND - system has GMP lib +# GMP_INCLUDE_DIR - the GMP include directory +# GMP_LIBRARIES - Libraries needed to use GMP # Copyright (c) 2006, Laurent Montel, # diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index 4e2a03b7..3d3d6b3d 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -5,7 +5,7 @@ # GOBJECT_INCLUDE_DIR - the GObject include directory # GOBJECT_LIBRARIES - the libraries needed to use GObject # GOBJECT_DEFINITIONS - Compiler switches required for using GObject -# + # (c)2006, Tim Beaulen diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 36dffc85..90e803ea 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -5,7 +5,7 @@ # GSSAPI_INCS - the GSSAPI include directory # GSSAPI_LIBS - the libraries needed to use GSSAPI # GSSAPI_FLAVOR - the type of API - MIT or HEIMDAL -# + # Copyright (c) 2006, Pino Toscano, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake index 4398f150..f75e92d9 100644 --- a/modules/FindGStreamer.cmake +++ b/modules/FindGStreamer.cmake @@ -5,7 +5,7 @@ # GSTREAMER_INCLUDE_DIR - the GStreamer include directory # GSTREAMER_LIBRARIES - the libraries needed to use GStreamer # GSTREAMER_DEFINITIONS - Compiler switches required for using GStreamer -# + # (c)2006, Tim Beaulen # TODO: Other versions --> GSTREAMER_X_Y_FOUND (Example: GSTREAMER_0_8_FOUND and GSTREAMER_0_10_FOUND etc) diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake index 5694e533..550d11d3 100644 --- a/modules/FindKDEWIN.cmake +++ b/modules/FindKDEWIN.cmake @@ -6,7 +6,7 @@ # this will define # KDEWIN_FOUND - system has KDEWIN # KDEWIN_DIR - the KDEWIN root installation dir -# + # Copyright (c) 2007, Ralf Habacker, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index aa62f649..589b1531 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -5,7 +5,7 @@ # KDEWIN32_FOUND - system has KDEWIN32 # KDEWIN32_INCLUDES - the KDEWIN32 include directories # KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 -# + # Copyright (c) 2006, Alexander Neundorf, # Copyright (c) 2007, Ralf Habacker, # diff --git a/modules/FindKdeMultimedia.cmake b/modules/FindKdeMultimedia.cmake index 457f345d..c8850291 100644 --- a/modules/FindKdeMultimedia.cmake +++ b/modules/FindKdeMultimedia.cmake @@ -1,4 +1,11 @@ -# cmake macro to see if we have kdemultimedia installed +# Module to see if we have KDE4 kdemultimedia installed +# +# This module defines +# KDEMULTIMEDIA_INCLUDE_DIR - the include dir +# KCDDB_LIBRARY - the kcddb library +# KCOMPACTDISC_LIBRARY - the kcompactdisk library +# KDEMULTIMEDIA_LIBRARIES - all of the KDE multimedia libraries together +# KDEMULTIMEDIA_FOUND - true if the above have been found # KDEMULTIMEDIA_INCLUDE_DIR # KDEMULTIMEDIA_FOUND diff --git a/modules/FindKorundum.cmake b/modules/FindKorundum.cmake index 59ad44b1..d921f611 100644 --- a/modules/FindKorundum.cmake +++ b/modules/FindKorundum.cmake @@ -1,24 +1,20 @@ # - Find Korundum - the KDE Ruby bindings # # This module finds if Korundum is installed. -# +# It defines the following variables: +# KORUNDUM_PATH - the path to the korundum ruby file +# KORUNDUM_FOUND - true if it has been found + # Copyright (c) 2006, Egon Willighagen, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -FIND_PATH(Korumdum_PATH Korundum.rb /usr/lib/ruby/1.8) +find_path(KORUNDUM_PATH Korundum.rb /usr/lib/ruby/1.8) -IF (Korumdum_PATH) - SET(Korumdum_FOUND TRUE) -ENDIF (Korumdum_PATH) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Korundum DEFAULT_MSG KORUNDUM_PATH) -IF (Korumdum_FOUND) - IF (NOT Korumdum_FIND_QUIETLY) - MESSAGE(STATUS "Found Korumdum: ${Korumdum_PATH}") - ENDIF (NOT Korumdum_FIND_QUIETLY) -ELSE (Korumdum_FOUND) - IF (Korumdum_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Korumdum") - ENDIF (Korumdum_FIND_REQUIRED) -ENDIF (Korumdum_FOUND) \ No newline at end of file +# just for compat.: +set(Korumdum_PATH ${KORUNDUM_PATH}) +set(Korumdum_FOUND ${KORUNDUM_FOUND}) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 86282196..59687877 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -4,7 +4,7 @@ # LIBART_FOUND - system has the LibArt # LIBART_INCLUDE_DIR - the LibArt include directory # LIBART_LIBRARIES - The libraries needed to use LibArt -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindLibintl.cmake b/modules/FindLibintl.cmake index e4d0539e..b421ca85 100644 --- a/modules/FindLibintl.cmake +++ b/modules/FindLibintl.cmake @@ -9,7 +9,7 @@ # present in libc. Must have more robust system for release, where Gettext # functionality can also reside in standalone Gettext library, or the one # embedded within kdelibs (cf. gettext.m4 from Gettext source). -# + # Copyright (c) 2006, Chusslove Illich, # Copyright (c) 2007, Alexander Neundorf, # diff --git a/modules/FindMsgfmt.cmake b/modules/FindMsgfmt.cmake index f578b3a2..47c61219 100644 --- a/modules/FindMsgfmt.cmake +++ b/modules/FindMsgfmt.cmake @@ -2,7 +2,7 @@ # Once done this will define # # MSGFMT_FOUND - system has msgfmt -# + # Copyright (c) 2007, Montel Laurent # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake index 09884115..9f2ad985 100644 --- a/modules/FindMusicBrainz.cmake +++ b/modules/FindMusicBrainz.cmake @@ -1,5 +1,10 @@ -# Option for build or not MusicBrainz +# Module to find the musicbrainz library # +# It defines +# MUSICBRAINZ_INCLUDE_DIR - the include dir +# MUSICBRAINZ_LIBRARIES - the required libraries +# MUSICBRAINZ_FOUND - true if both of the above have been found + # Copyright (c) 2006,2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index daa6d84f..21604c73 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -6,7 +6,7 @@ # MYSQL_EMBEDDED_LIBRARIES, the libraries needed to use MySQL Embedded. # MYSQL_FOUND, If false, do not try to use MySQL. # MYSQL_EMBEDDED_FOUND, If false, do not try to use MySQL Embedded. -# + # Copyright (c) 2006, Jaroslaw Staniek, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 66c57194..cd443c0a 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -5,7 +5,7 @@ # OPENEXR_INCLUDE_DIR - OpenEXR include directory # OPENEXR_LIBRARIES - Libraries needed to use OpenEXR # OPENEXR_DEFINITIONS - definitions required to use OpenEXR -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 2b5313d9..1b915530 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -5,6 +5,7 @@ # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL # OPENSSL_EAY_LIBRARIES - The additional libraries needed to use OpenSSL on windows + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index b39d8875..0eba2e3a 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -4,7 +4,7 @@ # PCRE_FOUND - system has the PCRE library # PCRE_INCLUDE_DIR - the PCRE include directory # PCRE_LIBRARIES - The libraries needed to use PCRE -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake index 6939805b..d00c93a0 100644 --- a/modules/FindPNG.cmake +++ b/modules/FindPNG.cmake @@ -1,6 +1,5 @@ # - Find the native PNG includes and library # - # This module defines # PNG_INCLUDE_DIR, where to find png.h, etc. # PNG_LIBRARIES, the libraries to link against to use PNG. @@ -10,7 +9,7 @@ # PNG_LIBRARY, where to find the PNG library. # None of the above will be defined unles zlib can be found. # PNG depends on Zlib -# + # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index 151d8125..7f122edc 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -1,21 +1,23 @@ # FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME (DEFAULT_MSG|"Custom failure message") VAR1 ... ) -# This macro is intended to be used in FindXXX.cmake modules files. -# It handles the REQUIRED and QUIET argument to FIND_PACKAGE() and -# it also sets the _FOUND variable. -# The package is found if all variables listed are TRUE. -# Example: +# +# This macro is intended to be used in FindXXX.cmake modules files. +# It handles the REQUIRED and QUIET argument to FIND_PACKAGE() and +# it also sets the _FOUND variable. +# The package is found if all variables listed are TRUE. +# Example: # # FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) # -# LibXml2 is considered to be found, if both LIBXML2_LIBRARIES and -# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE. -# If it is not found and REQUIRED was used, it fails with FATAL_ERROR, -# independent whether QUIET was used or not. -# If it is found, the location is reported using the VAR1 argument, so -# here a message "Found LibXml2: /usr/lib/libxml2.so" will be printed out. -# If the second argument is DEFAULT_MSG, the message in the failure case will -# be "Could NOT find LibXml2", if you don't like this message you can specify -# your own custom failure message there. +# LibXml2 is considered to be found, if both LIBXML2_LIBRARIES and +# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE. +# If it is not found and REQUIRED was used, it fails with FATAL_ERROR, +# independent whether QUIET was used or not. +# +# If it is found, the location is reported using the VAR1 argument, so +# here a message "Found LibXml2: /usr/lib/libxml2.so" will be printed out. +# If the second argument is DEFAULT_MSG, the message in the failure case will +# be "Could NOT find LibXml2", if you don't like this message you can specify +# your own custom failure message there. MACRO(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake index 43cb1865..ab352c7c 100644 --- a/modules/FindPostgreSQL.cmake +++ b/modules/FindPostgreSQL.cmake @@ -4,7 +4,7 @@ # POSTGRESQL_INCLUDE_DIR, where to find POSTGRESQL.h # POSTGRESQL_LIBRARIES, the libraries needed to use POSTGRESQL. # POSTGRESQL_FOUND, If false, do not try to use PostgreSQL. -# + # Copyright (c) 2006, Jaroslaw Staniek, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index b0f898f7..950d923c 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -8,7 +8,7 @@ # # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls -# + # Copyright (c) 2006, Michael Larouche, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindQImageBlitz.cmake b/modules/FindQImageBlitz.cmake index 24a5d142..6021e5ea 100644 --- a/modules/FindQImageBlitz.cmake +++ b/modules/FindQImageBlitz.cmake @@ -4,7 +4,7 @@ # QIMAGEBLITZ_FOUND - system has qimageblitz lib # QIMAGEBLITZ_INCLUDES - the qimageblitz include directory # QIMAGEBLITZ_LIBRARIES - The libraries needed to use qimageblitz -# + # Copyright (c) 2006, Montel Laurent, # Copyright (c) 2007, Allen Winter, # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindRUBY.cmake b/modules/FindRUBY.cmake index 8696bb49..b5d3c0fd 100644 --- a/modules/FindRUBY.cmake +++ b/modules/FindRUBY.cmake @@ -7,7 +7,7 @@ # RUBY_INCLUDE_PATH = path to where ruby.h can be found # RUBY_EXECUTABLE = full path+file to the ruby binary # RUBY_FOUND = Ruby was found under system. -# + # Copyright (c) 2006,2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index f69aea6f..855266fc 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -4,7 +4,7 @@ # SASL2_FOUND - system has SASL2 # SASL2_INCLUDE_DIR - the SASL2 include directory # SASL2_LIBRARIES - The libraries needed to use SASL2 -# + # Copyright (c) 2006, 2007 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 49261dd7..24b75b9f 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -6,7 +6,7 @@ # TIFF_FOUND, If false, do NOT try to use TIFF. # also defined, but NOT for general use are # TIFF_LIBRARY, where to find the TIFF library. -# + # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 225fa53d..82306883 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -4,7 +4,7 @@ # TAGLIB_FOUND - system has the taglib library # TAGLIB_CFLAGS - the taglib cflags # TAGLIB_LIBRARIES - The libraries needed to use taglib -# + # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 17d893c9..ff18d3b3 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -4,7 +4,7 @@ # LIBUSB_FOUND - system has libusb # LIBUSB_INCLUDE_DIR - the libusb include directory # LIBUSB_LIBRARIES - Link these to use libusb -# + # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index 7eb2d383..a366cfd0 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -4,7 +4,7 @@ # XMMS_FOUND - system has xmms # XMMS_INCLUDE_DIRS - the xmms include directory # XMMS_LDFLAGS - Link these to use xmms -# + # Copyright (c) 2006, 2007 Laurent Montel, # Copyright (c) 2007 Allen Winter # diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b449b05e..df10d67e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1,5 +1,5 @@ # for documentation look at FindKDE4Internal.cmake -# + # this file contains the following macros: # KDE4_ADD_UI_FILES # KDE4_ADD_UI3_FILES @@ -545,15 +545,15 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) # set the RPATH related properties if (NOT CMAKE_SKIP_RPATH) if (${_type} STREQUAL "GUI") - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) endif (${_type} STREQUAL "GUI") if (${_type} STREQUAL "NOGUI") - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) endif (${_type} STREQUAL "NOGUI") if (${_type} STREQUAL "RUN_UNINSTALLED") - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) endif (${_type} STREQUAL "RUN_UNINSTALLED") endif (NOT CMAKE_SKIP_RPATH) diff --git a/modules/Win32Macros.cmake b/modules/Win32Macros.cmake index 3b2df54b..e5a3655b 100644 --- a/modules/Win32Macros.cmake +++ b/modules/Win32Macros.cmake @@ -1,20 +1,23 @@ +# win32 macros # -# win32 macros +# ADDEXPLORERWRAPPER(project) +# +# Exists only under Win32 ! +# +# addExplorerWrapper creates batch files for fast access +# to the build environment from the win32 explorer. # +# For mingw and nmake projects it opens a command shell, +# for Visual Studio IDE's (at least tested with VS 8 2005) it +# opens the related .sln file with paths setting specified at +# configure time. + # Copyright (c) 2006-2007, Ralf Habacker # # Redistribution and use is allowed according to the terms of the BSD license. -# + if (WIN32) - # - # addExplorerWrapper creates batch files for fast access - # to the build environment from the win32 explorer. - # - # For mingw and nmake projects it opens a command shell, - # for Visual Studio IDE's (at least tested with VS 8 2005) it - # opens the related .sln file with paths setting specified at - # configure time. # MACRO (addExplorerWrapper _projectname) # write explorer wrappers diff --git a/modules/kde4_exec_via_sh.cmake b/modules/kde4_exec_via_sh.cmake index 30a837af..6b826ff0 100644 --- a/modules/kde4_exec_via_sh.cmake +++ b/modules/kde4_exec_via_sh.cmake @@ -1,4 +1,4 @@ -# + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 92841663..0e2a33c9 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -1,3 +1,4 @@ + # Copyright (c) 2006, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. -- cgit v1.2.1 From f4d7ba644eee24e7a8082f157283b89af4e36fd6 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 18 Feb 2008 21:16:04 +0000 Subject: LIB_INSTALL_DIR -> INSTALL_TARGETS_DEFAULT_ARGS svn path=/trunk/KDE/kdelibs/; revision=776825 --- modules/FindKDE4Internal.cmake | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0b0e13b9..1f105819 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -489,14 +489,7 @@ set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) if (WIN32) # use relative install prefix to avoid hardcoded install paths in cmake_install.cmake files -# ok, this is more like a hack to get dll's installed into the same directory as the executables -# without having to use the full syntax of INSTALL(TARGETS ...) everywhere. -# LIB_INSTALL_DIR is set to a list of arguments, the first being the "default" destination -# which is then overridden by the following three specialized destinations - set(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" - RUNTIME DESTINATION "bin" - LIBRARY DESTINATION "lib${LIB_SUFFIX}" - ARCHIVE DESTINATION "lib${LIB_SUFFIX}" ) # The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}) + set(LIB_INSTALL_DIR "lib${LIB_SUFFIX}" ) # The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}) set(EXEC_INSTALL_PREFIX "" ) # Base directory for executables and libraries set(SHARE_INSTALL_PREFIX "share" ) # Base directory for files which go to share/ @@ -602,6 +595,31 @@ else (WIN32) endif (WIN32) +# The INSTALL_TARGETS_DEFAULT_ARGS variable should be used when libraries are installed. +# The arguments are also ok for regular executables, i.e. executables which don't go +# into sbin/ or libexec/, but for installing executables the basic syntax +# INSTALL(TARGETS kate DESTINATION "${BIN_INSTALL_DIR}") +# is enough, so using this variable there doesn't help a lot. +# The variable must not be used for installing plugins. +# Usage is like this: +# install(TARGETS kdecore kdeui ${INSTALL_TARGETS_DEFAULT_ARGS} ) +# +# This will install libraries correctly under UNIX, OSX and Windows (i.e. dll's go +# into bin/. +# Later on it will be possible to extend this for installing OSX frameworks +# The COMPONENT Devel argument has the effect that static libraries belong to the +# "Devel" install component. If we use this also for all install() commands +# for header files, it will be possible to install +# -everything: make install OR cmake -P cmake_install.cmake +# -only the development files: cmake -DCOMPONENT=Devel -P cmake_install.cmake +# -everything except the development files: cmake -DCOMPONENT=Unspecified -P cmake_install.cmake +# This can then also be used for packaging with cpack. + +set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" + LIBRARY DESTINATION "${LIB_INSTALL_DIR}" + ARCHIVE DESTINATION "${LIB_INSTALL_DIR}" COMPONENT Devel ) + + ############## add some more default search paths ############### # always search in the directory where cmake is installed # and in the current installation prefix @@ -1047,3 +1065,4 @@ endif (NOT _kde4_uninstall_rule_created) endif(KDE4_FOUND) + -- cgit v1.2.1 From 723d57b3ef8f31d49684e799d31f62a1d996704c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 Feb 2008 22:31:52 +0000 Subject: fix documentation formatting Alex svn path=/trunk/KDE/kdelibs/; revision=776880 --- modules/FindKDE4Internal.cmake | 215 +++++++++++++++++++++-------------------- 1 file changed, 108 insertions(+), 107 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1f105819..246d1bf1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -2,141 +2,141 @@ # # This module defines the following variables: # -# KDE4_FOUND - set to TRUE if everything required for building KDE software has been found +# KDE4_FOUND - set to TRUE if everything required for building KDE software has been found # -# KDE4_DEFINITIONS - compiler definitions required for compiling KDE software -# KDE4_INCLUDE_DIR - the KDE 4 include directory -# KDE4_INCLUDES - all include directories required for KDE, i.e. -# KDE4_INCLUDE_DIR, but also the Qt4 include directories -# and other platform specific include directories -# KDE4_LIB_DIR - the directory where the KDE libraries are installed, -# intended to be used with LINK_DIRECTORIES() +# KDE4_DEFINITIONS - compiler definitions required for compiling KDE software +# KDE4_INCLUDE_DIR - the KDE 4 include directory +# KDE4_INCLUDES - all include directories required for KDE, i.e. +# KDE4_INCLUDE_DIR, but also the Qt4 include directories +# and other platform specific include directories +# KDE4_LIB_DIR - the directory where the KDE libraries are installed, +# intended to be used with LINK_DIRECTORIES() # # The following variables are defined for the various tools required to # compile KDE software: # -# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable -# KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable -# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable -# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable +# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable +# KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable +# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable +# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable # # The following variables point to the location of the KDE libraries, # but shouldn't be used directly: # -# KDE4_KDECORE_LIBRARY - the kdecore library -# KDE4_KDEUI_LIBRARY - the kdeui library -# KDE4_KIO_LIBRARY - the kio library -# KDE4_KPARTS_LIBRARY - the kparts library -# KDE4_KUTILS_LIBRARY - the kutils library -# KDE4_KDE3SUPPORT_LIBRARY - the kde3support library -# KDE4_KFILE_LIBRARY - the kfile library -# KDE4_KHTML_LIBRARY - the khtml library -# KDE4_KJS_LIBRARY - the kjs library -# KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library -# KDE4_KDNSSD_LIBRARY - the kdnssd library -# KDE4_PHONON_LIBRARY - the phonon library -# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library -# KDE4_THREADWEAVER_LIBRARY- the threadweaver library -# KDE4_SOLID_LIBRARY - the solid library -# KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library -# KDE4_KROSSCORE_LIBRARY - the krosscore library -# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library -# KDE4_KNEPOMUK_LIBRARY - the knepomuk library -# KDE4_KMETADATA_LIBRARY - the kmetadata library +# KDE4_KDECORE_LIBRARY - the kdecore library +# KDE4_KDEUI_LIBRARY - the kdeui library +# KDE4_KIO_LIBRARY - the kio library +# KDE4_KPARTS_LIBRARY - the kparts library +# KDE4_KUTILS_LIBRARY - the kutils library +# KDE4_KDE3SUPPORT_LIBRARY - the kde3support library +# KDE4_KFILE_LIBRARY - the kfile library +# KDE4_KHTML_LIBRARY - the khtml library +# KDE4_KJS_LIBRARY - the kjs library +# KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library +# KDE4_KDNSSD_LIBRARY - the kdnssd library +# KDE4_PHONON_LIBRARY - the phonon library +# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library +# KDE4_THREADWEAVER_LIBRARY- the threadweaver library +# KDE4_SOLID_LIBRARY - the solid library +# KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library +# KDE4_KROSSCORE_LIBRARY - the krosscore library +# KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library +# KDE4_KNEPOMUK_LIBRARY - the knepomuk library +# KDE4_KMETADATA_LIBRARY - the kmetadata library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below # should be used instead of the ones above: # -# KDE4_KDECORE_LIBS - the kdecore library and all depending libraries -# KDE4_KDEUI_LIBS - the kdeui library and all depending libraries -# KDE4_KIO_LIBS - the kio library and all depending libraries -# KDE4_KPARTS_LIBS - the kparts library and all depending libraries -# KDE4_KUTILS_LIBS - the kutils library and all depending libraries -# KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries -# KDE4_KFILE_LIBS - the kfile library and all depending libraries -# KDE4_KHTML_LIBS - the khtml library and all depending libraries -# KDE4_KJS_LIBS - the kjs library and all depending libraries -# KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries -# KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries -# KDE4_KDESU_LIBS - the kdesu library and all depending libraries -# KDE4_KPTY_LIBS - the kpty library and all depending libraries -# KDE4_PHONON_LIBS - the phonon library and all depending librairies -# KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries -# KDE4_SOLID_LIBS - the solid library and all depending libraries -# KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries -# KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries -# KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries -# KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries -# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries -# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries +# KDE4_KDECORE_LIBS - the kdecore library and all depending libraries +# KDE4_KDEUI_LIBS - the kdeui library and all depending libraries +# KDE4_KIO_LIBS - the kio library and all depending libraries +# KDE4_KPARTS_LIBS - the kparts library and all depending libraries +# KDE4_KUTILS_LIBS - the kutils library and all depending libraries +# KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries +# KDE4_KFILE_LIBS - the kfile library and all depending libraries +# KDE4_KHTML_LIBS - the khtml library and all depending libraries +# KDE4_KJS_LIBS - the kjs library and all depending libraries +# KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries +# KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries +# KDE4_KDESU_LIBS - the kdesu library and all depending libraries +# KDE4_KPTY_LIBS - the kpty library and all depending libraries +# KDE4_PHONON_LIBS - the phonon library and all depending librairies +# KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries +# KDE4_SOLID_LIBS - the solid library and all depending libraries +# KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries +# KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries +# KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries +# KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries +# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries +# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries # -# This module defines a bunch of variables used as locations -# for install directories. They are all interpreted relative -# to CMAKE_INSTALL_PREFIX +# This module defines a bunch of variables used as locations for install directories. +# They can be relative (to CMAKE_INSTALL_PREFIX) or absolute. +# Under Windows they are always relative. # -# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) -# SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) -# LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) -# CONFIG_INSTALL_DIR - the config file install dir -# DATA_INSTALL_DIR - the parent directory where applications can install their data -# HTML_INSTALL_DIR - the HTML install dir for documentation -# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) -# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) -# KCFG_INSTALL_DIR - the install dir for kconfig files -# LOCALE_INSTALL_DIR - the install dir for translations -# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) -# MIME_INSTALL_DIR - the install dir for the mimetype desktop files -# PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) -# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files -# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files -# SOUND_INSTALL_DIR - the install dir for sound files -# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) -# WALLPAPER_INSTALL_DIR - the install dir for wallpapers -# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir -# XDG_APPS_INSTALL_DIR - the XDG apps dir -# XDG_DIRECTORY_INSTALL_DIR- the XDG directory -# XDG_MIME_INSTALL_DIR - the XDG mimetypes install dir -# DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) -# DBUS_SERVICES_INSTALL_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) +# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) +# SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) +# LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) +# CONFIG_INSTALL_DIR - the config file install dir +# DATA_INSTALL_DIR - the parent directory where applications can install their data +# HTML_INSTALL_DIR - the HTML install dir for documentation +# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) +# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) +# KCFG_INSTALL_DIR - the install dir for kconfig files +# LOCALE_INSTALL_DIR - the install dir for translations +# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) +# MIME_INSTALL_DIR - the install dir for the mimetype desktop files +# PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) +# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files +# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files +# SOUND_INSTALL_DIR - the install dir for sound files +# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) +# WALLPAPER_INSTALL_DIR - the install dir for wallpapers +# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir +# XDG_APPS_INSTALL_DIR - the XDG apps dir +# XDG_DIRECTORY_INSTALL_DIR- the XDG directory +# XDG_MIME_INSTALL_DIR - the XDG mimetypes install dir +# DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) +# DBUS_SERVICES_INSTALL_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) # # The following variable is provided, but seem to be unused: -# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") +# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") # # The following user adjustable options are provided: # -# KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation -# KDE4_BUILD_TESTS - enable this to build the testcases -# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature +# KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation +# KDE4_BUILD_TESTS - enable this to build the testcases +# KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature # # It also adds the following macros (from KDE4Macros.cmake) -# KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) +# KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) # Use this to add Qt designer ui files to your application/library. # -# KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) +# KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) # Use this to add Qt designer ui files from Qt version 3 to your application/library. # -# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) +# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) # Use this to add KDE config compiler files to your application/library. # Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. # -# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) +# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) # Use this to add widget description files for the makekdewidgets code generator # for Qt Designer plugins. # -# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) +# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) # This macro is intended mainly for internal uses. # It is used for enable-final. It will generate two source files, # one for the C files and one for the C++ files. # These files will have the names given in filename_CXX and filename_C. # -# KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN ) +# KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN ) # Create a KDE plugin (KPart, kioslave, etc.) from the given source files. # It supports KDE4_ENABLE_FINAL. # If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. # It creates and installs an appropriate libtool la-file. # -# KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) +# KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) # Create a KDE application in the form of a module loadable via kdeinit. # A library named kdeinit_ will be created and a small executable which links to it. # It supports KDE4_ENABLE_FINAL @@ -146,7 +146,7 @@ # application bundles are created, with the NOGUI option no bundles but simple executables # are created. Currently it doesn't have any effect on other platforms. # -# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) +# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) # Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: # -support for KDE4_ENABLE_FINAL # -support for automoc @@ -157,11 +157,11 @@ # application bundles are created, with the NOGUI option no bundles but simple executables # are created. Currently it doesn't have any effect on other platforms. # -# KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) +# KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) # Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL # and under Windows it adds a -DMAKE__LIB definition to the compilation. # -# KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) +# KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) # add a unit test, which is executed when running make test # it will be built with RPATH poiting to the build dir # The targets are always created, but only built for the "all" @@ -170,7 +170,7 @@ # The name of the target can be specified using TESTNAME , if it is not given # the macro will default to the # -# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) +# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) # add an test executable # it will be built with RPATH poiting to the build dir # The targets are always created, but only built for the "all" @@ -180,36 +180,38 @@ # KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ); to be able to use xmlgui # and other things in the test, that normally require installation # -# KDE4_UPDATE_ICONCACHE() +# KDE4_UPDATE_ICONCACHE() # Notifies the icon cache that new icons have been installed by updating # mtime of ${ICON_INSTALL_DIR}/hicolor directory. # -# KDE4_INSTALL_ICONS( path theme) +# KDE4_INSTALL_ICONS( path theme) # Installs all png and svgz files in the current directory to the icon # directoy given in path, in the subdirectory for the given icon theme. # -# KDE4_CREATE_HANDBOOK( docbookfile [INSTALL_DESTINATION installdest] [SUBDIR subdir]) +# KDE4_CREATE_HANDBOOK( docbookfile [INSTALL_DESTINATION installdest] [SUBDIR subdir]) # Create the handbook from the docbookfile (using meinproc4) # The resulting handbook will be installed to when using # INSTALL_DESTINATION , or to / if # SUBDIR is specified. # -# KDE4_CREATE_MANPAGE( docbookfile section ) +# KDE4_CREATE_MANPAGE( docbookfile section ) # Create the manpage for the specified section from the docbookfile (using meinproc4) # The resulting manpage will be installed to when using # INSTALL_DESTINATION , or to / if # SUBDIR is specified. -# -# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally -# _KDE4_PLATFORM_DEFINITIONS is used only internally -# -# -# Copyright (c) 2006, Alexander Neundorf + + +# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally +# _KDE4_PLATFORM_DEFINITIONS is used only internally + +# Copyright (c) 2006-2008, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if(KDE4_FOUND) # Already found in this cmake run, nothing more to do else(KDE4_FOUND) @@ -1065,4 +1067,3 @@ endif (NOT _kde4_uninstall_rule_created) endif(KDE4_FOUND) - -- cgit v1.2.1 From 648f2aee9796d2e2b5827fb5346c65e581504632 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 19 Feb 2008 08:35:49 +0000 Subject: Try to search XINE_XCB_FOUND if we have xine installed svn path=/trunk/KDE/kdelibs/; revision=776982 --- modules/FindXine.cmake | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 65777ed8..534613a6 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -47,10 +47,13 @@ if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) endif (XINE_VERSION_OK) endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) -INCLUDE(CheckCSourceCompiles) -SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) -SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) -CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) + +if( XINE_FOUND ) + INCLUDE(CheckCSourceCompiles) + SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) + SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) + CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) +endif(XINE_FOUND) if (XINE_FOUND) if (NOT Xine_FIND_QUIETLY) -- cgit v1.2.1 From 493aa49d3e73cf0a191f5e13afd822dfbfe8fd79 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 20 Feb 2008 00:00:32 +0000 Subject: cmake 2.6 is stricter, it checks whether there are targets with multiple names. This breaks buildtests target, since this is created multiple times. Disable the check in cmake so it works again. Alex svn path=/trunk/KDE/kdelibs/; revision=777214 --- modules/FindKDE4Internal.cmake | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 246d1bf1..dcde0cf0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -306,10 +306,9 @@ else (_kdeBootStrapping) # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) - string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") - if (KDEVERSION) + if (KDEVERSION) string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") # we need at least this version: @@ -319,7 +318,6 @@ else (_kdeBootStrapping) #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) - else (KDEVERSION) message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") endif (KDEVERSION) @@ -657,6 +655,16 @@ if(WIN32) endif(WIN32) +# CMake 2.6 gives errors if there are multiple targets with the same name +# we use this for the target "buildtests", which is created for the unit tests +# and which depends on the tests, so building "buildtests" builds all the tests +# enabling this property disables this check in CMake +if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) + set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS 1) +endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) + + + ##################### and now the platform specific stuff ############################ # Set a default build type for single-configuration -- cgit v1.2.1 From c0c75cf957d5e7aef30c9c59c27a6ccc760d60c5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 20 Feb 2008 21:38:34 +0000 Subject: -give a useful error message if somebody is using an old cmake cvs, which doesn't have set_property() yet Alex svn path=/trunk/KDE/kdelibs/; revision=777542 --- modules/FindKDE4Internal.cmake | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dcde0cf0..fb1b3f1d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -655,11 +655,15 @@ if(WIN32) endif(WIN32) -# CMake 2.6 gives errors if there are multiple targets with the same name -# we use this for the target "buildtests", which is created for the unit tests -# and which depends on the tests, so building "buildtests" builds all the tests -# enabling this property disables this check in CMake if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) + if(NOT COMMAND SET_PROPERTY) + message(FATAL_ERROR "You are using an old version of CMake from cvs, please update to CMake >= 2.6.0 or cvs at least from Feb 20th, 2008") + endif(NOT COMMAND SET_PROPERTY) + + # CMake 2.6 gives errors if there are multiple targets with the same name + # we use this for the target "buildtests", which is created for the unit tests + # and which depends on the tests, so building "buildtests" builds all the tests + # enabling this property disables this check in CMake set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS 1) endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) -- cgit v1.2.1 From bd68ca4f895d27a2300e82d8f5301a4babfe397b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 20 Feb 2008 22:32:03 +0000 Subject: -don't put LINK_DIRECTORIES() into the installed KDELibsDependencies.cmake file, instead enable the compatibility option CMAKE_LINK_OLD_PATHS, which should catch all problems (and not only the expected ones) -give an error message if an old cmake cvs without SET_PROPERTY() is used -remove check for installed dbusxml2cpp, this was still from the KDE4 core meeting in Trysil when dbus was very new in Qt Alex svn path=/trunk/KDE/kdelibs/; revision=777570 --- modules/FindKDE4Internal.cmake | 33 +++++++++++++++++++++++++++------ 1 file changed, 27 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fb1b3f1d..fc9008f1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -224,10 +224,6 @@ set(QT_MIN_VERSION "4.4.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -if (NOT QT_DBUSXML2CPP_EXECUTABLE) - message(FATAL_ERROR "Qt4 qdbusxml2cpp was not found. Make sure it has been built and installed by Qt") -endif (NOT QT_DBUSXML2CPP_EXECUTABLE) - # Perl is required for building KDE software, find_package(Perl REQUIRED) @@ -656,15 +652,40 @@ endif(WIN32) if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) + + # some developers may be using an cmake cvs version which didn't have set_property() yet + # Tell them that a more recent version is required. if(NOT COMMAND SET_PROPERTY) - message(FATAL_ERROR "You are using an old version of CMake from cvs, please update to CMake >= 2.6.0 or cvs at least from Feb 20th, 2008") + message(FATAL_ERROR "You are using an old version of CMake from cvs, please update to CMake >= 2.6.0 or cvs at least from Feb 20th, 2008") endif(NOT COMMAND SET_PROPERTY) # CMake 2.6 gives errors if there are multiple targets with the same name # we use this for the target "buildtests", which is created for the unit tests # and which depends on the tests, so building "buildtests" builds all the tests # enabling this property disables this check in CMake - set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS 1) + set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS TRUE) + + # CMake 2.6 uses the full file names of the libraries when linking and so + # doesn't use -L anymore to list the link dirs. Now the dependencies created + # export_library_dependencies() lists the in-project libraries without + # path, i.e. with only the logical name ("kdecore"), so they don't link + # Setting this variable to true has the effect that the link dirs are + # listed nevertheless also with CMake 2.6. + set(CMAKE_LINK_OLD_PATHS TRUE) + + + # the following link_directories() command could be inserted in the KDELibsDependencies.cmake + # file. This should basically also fix the linking problem for libs with just the + # symbolic name (coming from export_library_dependencies()). But this will need + # adapting also the other places where export_library_dependencies() is used. + # I guess just enabling the compatibility option above is more safe. + # Once we require CMake >= 2.6.0 this will be reworked. Alex + # + # # in CMake 2.6 the handling of the link directories has changed, so we need this here + # if(\"\${CMAKE_MAJOR_VERSION}.\${CMAKE_MINOR_VERSION}\" GREATER 2.4) + # link_directories( \"\${KDE4_LIB_INSTALL_DIR}\" ) + # endif(\"\${CMAKE_MAJOR_VERSION}.\${CMAKE_MINOR_VERSION}\" GREATER 2.4) + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) -- cgit v1.2.1 From 210b3e2da759777de04d63b2607010ab46229934 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 24 Feb 2008 17:11:08 +0000 Subject: give each handbook and manpage custom target a unique, recognizable name. svn path=/trunk/KDE/kdelibs/; revision=778813 --- modules/KDE4Macros.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index df10d67e..68cae0d2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -270,7 +270,9 @@ macro (KDE4_CREATE_HANDBOOK _docbook) DEPENDS ${_docs} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ) - add_custom_target(handbook ALL DEPENDS ${_doc}) + get_filename_component(_targ ${CMAKE_CURRENT_SOURCE_DIR} NAME) + set(_targ "${_targ}-handbook") + add_custom_target(${_targ} ALL DEPENDS ${_doc}) if(KDE4_ENABLE_HTMLHANDBOOK) set(_htmlDoc ${CMAKE_CURRENT_SOURCE_DIR}/index.html) @@ -336,7 +338,9 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) COMMAND ${KDE4_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) - add_custom_target(manpage ALL DEPENDS "${_outdoc}") + get_filename_component(_targ ${CMAKE_CURRENT_SOURCE_DIR} NAME) + set(_targ "${_targ}-manpage") + add_custom_target(${_targ} ALL DEPENDS "${_outdoc}") set(_args ${ARGN}) -- cgit v1.2.1 From 3ed92d37ac647115b9730464181fbadf6d68bcfc Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 26 Feb 2008 21:10:00 +0000 Subject: The Intel C++ compiler option -Ob is deprecated. Simply use -fno-inline instead, just like with gcc. svn path=/trunk/KDE/kdelibs/; revision=779719 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fc9008f1..3a84c9b2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -994,12 +994,12 @@ if (CMAKE_C_COMPILER MATCHES "icc") # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") - set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") + set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -fno-inline -noalign") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -fno-inline -noalign") set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") - set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") - set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") + set(CMAKE_C_FLAGS_DEBUG "-O2 -g -fno-inline -noalign") + set(CMAKE_C_FLAGS_DEBUGFULL "-g -fno-inline -noalign") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -Wall -w1 -Wpointer-arith -fno-common") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wall -w1 -Wpointer-arith -fno-exceptions -fno-common") -- cgit v1.2.1 From e19837dece1f0ad9f336098515787c713de99d7b Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 27 Feb 2008 20:48:40 +0000 Subject: fix Samba discovery and usage thanks for the patch Christopher. BUGS: 158335 svn path=/trunk/KDE/kdelibs/; revision=780025 --- modules/FindSamba.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake index 08c0fee3..6579d121 100644 --- a/modules/FindSamba.cmake +++ b/modules/FindSamba.cmake @@ -29,6 +29,7 @@ if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) include(MacroPushRequiredVars) macro_push_required_vars() set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${SAMBA_INCLUDE_DIR}) check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) macro_pop_required_vars() # fail if smbc_set_context() was required but hasn't been found -- cgit v1.2.1 From eadc109fd4b385d13ef9c40ac40cdd8303c71662 Mon Sep 17 00:00:00 2001 From: Matthew Woehlke Date: Fri, 29 Feb 2008 22:42:01 +0000 Subject: FindSamba - also check for smbc_option_set, used by the smb kioslave, and not in my libsamba svn path=/trunk/KDE/kdelibs/; revision=780766 --- modules/FindSamba.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake index 6579d121..d6fb1259 100644 --- a/modules/FindSamba.cmake +++ b/modules/FindSamba.cmake @@ -31,11 +31,16 @@ if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${SAMBA_INCLUDE_DIR}) check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) + check_symbol_exists(smbc_set_option "libsmbclient.h" SAMBA_HAVE_SMBC_OPTION_SET) macro_pop_required_vars() # fail if smbc_set_context() was required but hasn't been found if (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) set(SAMBA_FOUND FALSE) endif (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) + # fail if smbc_option_set() was required but hasn't been found + if (SAMBA_REQUIRE_SMBC_OPTION_SET AND NOT SAMBA_HAVE_SMBC_OPTION_SET) + set(SAMBA_FOUND FALSE) + endif (SAMBA_REQUIRE_SMBC_OPTION_SET AND NOT SAMBA_HAVE_SMBC_OPTION_SET) else(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) set(SAMBA_FOUND FALSE) -- cgit v1.2.1 From 0fe9686d8611717a6f917f952ebd1229c9849f0e Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Sat, 1 Mar 2008 16:47:59 +0000 Subject: search for the real symbol svn path=/trunk/KDE/kdelibs/; revision=780921 --- modules/FindSamba.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake index d6fb1259..16522c64 100644 --- a/modules/FindSamba.cmake +++ b/modules/FindSamba.cmake @@ -31,7 +31,7 @@ if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${SAMBA_INCLUDE_DIR}) check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) - check_symbol_exists(smbc_set_option "libsmbclient.h" SAMBA_HAVE_SMBC_OPTION_SET) + check_symbol_exists(smbc_option_set "libsmbclient.h" SAMBA_HAVE_SMBC_OPTION_SET) macro_pop_required_vars() # fail if smbc_set_context() was required but hasn't been found if (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) -- cgit v1.2.1 From 591d403123d5b18ddc27fd7b6e4db3b7038223ba Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 2 Mar 2008 17:16:39 +0000 Subject: fix KDE4_ADD_APP_ICON when the path contains '64' or any other needed icon size svn path=/trunk/KDE/kdelibs/; revision=781336 --- modules/KDE4Macros.cmake | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 68cae0d2..3b9ebc1b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1037,21 +1037,22 @@ macro (KDE4_ADD_APP_ICON appsources pattern) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) file(GLOB_RECURSE files "${pattern}") FOREACH (it ${files}) - if (it MATCHES ".*16.*" ) + GET_FILENAME_COMPONENT(fn ${it} NAME_WE) + if (fn MATCHES ".*16.*" ) list (APPEND _icons ${it}) - endif (it MATCHES ".*16.*") - if (it MATCHES ".*32.*" ) + endif (fn MATCHES ".*16.*") + if (fn MATCHES ".*32.*" ) list (APPEND _icons ${it}) - endif (it MATCHES ".*32.*") - if (it MATCHES ".*48.*" ) + endif (fn MATCHES ".*32.*") + if (fn MATCHES ".*48.*" ) list (APPEND _icons ${it}) - endif (it MATCHES ".*48.*") - if (it MATCHES ".*64.*" ) + endif (fn MATCHES ".*48.*") + if (fn MATCHES ".*64.*" ) list (APPEND _icons ${it}) - endif (it MATCHES ".*64.*") - if (it MATCHES ".*128.*" ) + endif (fn MATCHES ".*64.*") + if (fn MATCHES ".*128.*" ) list (APPEND _icons ${it}) - endif (it MATCHES ".*128.*") + endif (fn MATCHES ".*128.*") ENDFOREACH (it) if (_icons) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) -- cgit v1.2.1 From 56c3d97b5d0985adda007af073db85db346f17b0 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 3 Mar 2008 18:28:53 +0000 Subject: much better way to determine icon size - the last fix was not correct in some cases svn path=/trunk/KDE/kdelibs/; revision=781786 --- modules/KDE4Macros.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 3b9ebc1b..b4de12eb 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1035,9 +1035,10 @@ macro (KDE4_ADD_APP_ICON appsources pattern) set(WINDRES_EXECUTABLE TRUE) endif(MSVC) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) + STRING(REPLACE "*" "(.*)" pattern_rx "${pattern}") file(GLOB_RECURSE files "${pattern}") FOREACH (it ${files}) - GET_FILENAME_COMPONENT(fn ${it} NAME_WE) + STRING(REGEX REPLACE "${pattern_rx}" "\\1" fn "${it}") if (fn MATCHES ".*16.*" ) list (APPEND _icons ${it}) endif (fn MATCHES ".*16.*") -- cgit v1.2.1 From a6cd33843190d6b0fa27e9cef2f1f40786032316 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Tue, 4 Mar 2008 18:15:49 +0000 Subject: SVN_SILENT: lowercase commands in KDE4_ADD_APP_ICON svn path=/trunk/KDE/kdelibs/; revision=782268 --- modules/KDE4Macros.cmake | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b4de12eb..837236b6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1027,18 +1027,18 @@ endmacro (KDE4_ADD_WIN32_APP_ICON) # example: KDE4_ADD_APP_ICON( myapp_sources "icons/oxygen/*/apps/myapp.png") macro (KDE4_ADD_APP_ICON appsources pattern) - STRING(REPLACE _SRCS "" target ${appsources}) + string(REPLACE _SRCS "" target ${appsources}) if (WIN32) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) find_program(WINDRES_EXECUTABLE NAMES windres) if(MSVC) set(WINDRES_EXECUTABLE TRUE) - endif(MSVC) + endif(MSVC) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) - STRING(REPLACE "*" "(.*)" pattern_rx "${pattern}") + string(REPLACE "*" "(.*)" pattern_rx "${pattern}") file(GLOB_RECURSE files "${pattern}") - FOREACH (it ${files}) - STRING(REGEX REPLACE "${pattern_rx}" "\\1" fn "${it}") + foreach (it ${files}) + string(REGEX REPLACE "${pattern_rx}" "\\1" fn "${it}") if (fn MATCHES ".*16.*" ) list (APPEND _icons ${it}) endif (fn MATCHES ".*16.*") @@ -1054,16 +1054,16 @@ macro (KDE4_ADD_APP_ICON appsources pattern) if (fn MATCHES ".*128.*" ) list (APPEND _icons ${it}) endif (fn MATCHES ".*128.*") - ENDFOREACH (it) + endforeach (it) if (_icons) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) - ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}.ico ${_outfilename}.rc + add_custom_command(OUTPUT ${_outfilename}.ico ${_outfilename}.rc COMMAND ${PNG2ICO_EXECUTABLE} ARGS --rcfile ${_outfilename}.rc ${_outfilename}.ico ${_icons} DEPENDS ${PNG2ICO_EXECUTABLE} ${_icons} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} ) if (MINGW) - ADD_CUSTOM_COMMAND(OUTPUT ${_outfilename}_res.o + add_custom_command(OUTPUT ${_outfilename}_res.o COMMAND ${WINDRES_EXECUTABLE} ARGS -i ${_outfilename}.rc -o ${_outfilename}_res.o --include-dir=${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${WINDRES_EXECUTABLE} ${_outfilename}.rc WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} @@ -1087,11 +1087,11 @@ macro (KDE4_ADD_APP_ICON appsources pattern) if (SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) file(GLOB_RECURSE files "${pattern}") # we can only test for the 128-icon like that - we don't use patterns anymore - FOREACH (it ${files}) + foreach (it ${files}) if (it MATCHES ".*128.*" ) set (_icon ${it}) endif (it MATCHES ".*128.*") - ENDFOREACH (it) + endforeach (it) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) if (_icon) -- cgit v1.2.1 From cc4d6950d509e6e583b659d3f970f09f58a3b134 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Mar 2008 21:17:33 +0000 Subject: -add the cmake style guide for writing modules to KDE svn, so it is easier to find for KDE developers svn path=/trunk/KDE/kdelibs/; revision=782336 --- modules/cmake-modules-styleguide.txt | 110 +++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 modules/cmake-modules-styleguide.txt (limited to 'modules') diff --git a/modules/cmake-modules-styleguide.txt b/modules/cmake-modules-styleguide.txt new file mode 100644 index 00000000..a19bceb2 --- /dev/null +++ b/modules/cmake-modules-styleguide.txt @@ -0,0 +1,110 @@ +This is a copy of the file CMake/Modules/readme.txt from cmake cvs. +Please adhere to the guidelines given below when writing cmake modules +for KDE. + +Alex + +---------------------------------------------------------------------- + +Note to authors of FindXXX.cmake files + +We would like all FindXXX.cmake files to produce consistent variable names. + +Please use the following consistent variable names for general use. + +XXX_INCLUDE_DIRS The final set of include directories listed in one variable for use by client code. This should not be a cache entry. +XXX_LIBRARIES The libraries to link against to use XXX. These should include full paths. This should not be a cache entry. +XXX_DEFINITIONS Definitions to use when compiling code that uses XXX. This really shouldn't include options such as (-DHAS_JPEG)that a client source-code file uses to decide whether to #include +XXX_EXECUTABLE Where to find the XXX tool. +XXX_YYY_EXECUTABLE Where to find the YYY tool that comes with XXX. +XXX_LIBRARY_DIRS Optionally, the final set of library directories listed in one variable for use by client code. This should not be a cache entry. +XXX_ROOT_DIR Where to find the base directory of XXX. +XXX_VERSION_YY Expect Version YY if true. Make sure at most one of these is ever true. +XXX_WRAP_YY If False, do not try to use the relevent CMake wrapping command. +XXX_YY_FOUND If False, optional YY part of XXX sytem is not available. +XXX_FOUND Set to false, or undefined, if we haven't found, or don't want to use XXX. +XXX_RUNTIME_LIBRARY_DIRS Optionally, the runtime library search path for use when running an executable linked to shared libraries. + The list should be used by user code to create the PATH on windows or LD_LIBRARY_PATH on unix. + This should not be a cache entry. +XXX_VERSION_STRING A human-readable string containing the version of the package found, if any. +XXX_VERSION_MAJOR The major version of the package found, if any. +XXX_VERSION_MINOR The minor version of the package found, if any. +XXX_VERSION_PATCH The patch version of the package found, if any. + +You do not have to provide all of the above variables. You should provide XXX_FOUND under most circumstances. If XXX is a library, then XXX_LIBRARIES, should also be defined, and XXX_INCLUDE_DIRS should usually be defined (I guess libm.a might be an exception) + +The following names should not usually be used in CMakeLists.txt files, but they may be usefully modified in users' CMake Caches to control stuff. + +XXX_LIBRARY Name of XXX Library. A User may set this and XXX_INCLUDE_DIR to ignore to force non-use of XXX. +XXX_YY_LIBRARY Name of YY library that is part of the XXX system. It may or may not be required to use XXX. +XXX_INCLUDE_DIR Where to find xxx.h, etc. (XXX_INCLUDE_PATH was considered bad because a path includes an actual filename.) +XXX_YY_INCLUDE_DIR Where to find xxx_yy.h, etc. + +For tidiness's sake, try to keep as many options as possible out of the cache, leaving at least one option which can be used to disable use of the module, or locate a not-found library (e.g. XXX_ROOT_DIR). For the same reason, mark most cache options as advanced. + +If you need other commands to do special things then it should still begin with XXX_. This gives a sort of namespace effect and keeps things tidy for the user. You should put comments describing all the exported settings, plus descriptions of any the users can use to control stuff. + +You really should also provide backwards compatibility any old settings that were actually in use. Make sure you comment them as deprecated, so that no-one starts using them. + +To correctly document a module, create a comment block at the top with # comments. There are three types of comments that can be in the block: + +1. The brief description of the module, this is done by: +# - a small description + +2. A paragraph of text. This is done with all text that has a single +space between the # and the text. To create a new paragraph, just +put a # with no text on the line. + +3. A verbatim line. This is done with two spaces between the # and the text. + +For example: + +# - This is a cool module +# This module does really cool stuff. +# It can do even more than you think. +# +# It even needs to paragraphs to tell you about it. +# And it defines the following variables: +# VAR_COOL - this is great isn't it? +# VAR_REALLY_COOL - cool right? +# + +To have a .cmake file in this directory NOT show up in the +modules documentation, you should start the file with a blank +line. + +A FindXXX.cmake module will typically be loaded by the command + + FIND_PACKAGE(XXX [major[.minor[.patch]]] [EXACT] + [QUIET] [REQUIRED [components...]]) + +If any version numbers are given to the command it will set the +variable XXX_FIND_VERSION to contain the whole version. The variables +XXX_FIND_VERSION_MAJOR, XXX_FIND_VERSION_MINOR, and +XXX_FIND_VERSION_PATCH will be set to contain the corresponding +portions of the version number. The variable XXX_FIND_VERSION_EXACT +will indicate whether an exact version is requested. +If the find module supports versioning it should locate a version of +the package that is compatible with the version requested. If a +compatible version of the package cannot be found the module should +not report success. The version of the package found should be stored +in the version variables named above. + +If the QUIET option is given to the command it will set the variable +XXX_FIND_QUIETLY to true before loading the FindXXX.cmake module. If +this variable is set the module should not complain about not being +able to find the package. If the +REQUIRED option is given to the command it will set the variable +XXX_FIND_REQUIRED to true before loading the FindXXX.cmake module. If +this variable is set the module should issue a FATAL_ERROR if the +package cannot be found. For each package-specific component, say +YYY, listed after the REQUIRED option a variable XXX_FIND_REQUIRED_YYY +to true. The set of components listed will also be specified in a +XXX_FIND_COMPONENTS variable. This can be used by the FindXXX.cmake +module to determine which sub-components of the package must be found. +If neither the QUIET nor REQUIRED options are given then the +FindXXX.cmake module should look for the package and complain without +error if the module is not found. + +To get this behaviour you can use the FIND_PACKAGE_HANDLE_STANDARD_ARGS() +macro, as an example see FindJPEG.cmake. -- cgit v1.2.1 From 852d3f547feb3b760602362ea7a8844590d6d495 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Mar 2008 21:18:42 +0000 Subject: also install the style guide Alex svn path=/trunk/KDE/kdelibs/; revision=782337 --- modules/CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 5de4aa7a..460ef67c 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -4,7 +4,8 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} DESTINATION ${module_install_dir} ) +install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} + DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex #set(FILES_TO_REMOVE -- cgit v1.2.1 From 49f3a26e206942925ee10dfcfed0c74279ccade1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 Mar 2008 21:23:46 +0000 Subject: -prefer all-lower-case commands and indent using spaces Alex svn path=/trunk/KDE/kdelibs/; revision=782343 --- modules/cmake-modules-styleguide.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/cmake-modules-styleguide.txt b/modules/cmake-modules-styleguide.txt index a19bceb2..10e65dc0 100644 --- a/modules/cmake-modules-styleguide.txt +++ b/modules/cmake-modules-styleguide.txt @@ -2,6 +2,11 @@ This is a copy of the file CMake/Modules/readme.txt from cmake cvs. Please adhere to the guidelines given below when writing cmake modules for KDE. +Some additional guidelines for use in KDE: +-indent using 2, 3 or 4 spaces, not tabs +-use all-lower-case for commands, except if the rest of the file uses +consistently all-upper-case for commands + Alex ---------------------------------------------------------------------- -- cgit v1.2.1 From c40583dd7cac62918ca5762a8ac6dffa12834375 Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Tue, 11 Mar 2008 12:25:59 +0000 Subject: Fix the cmake test so that QT_QTWEBKIT_FOUND is set when QtWebKit is found. svn path=/trunk/KDE/kdelibs/; revision=784463 --- modules/FindQt4.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 7f3f03da..5f803737 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -941,6 +941,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) _QT4_ADJUST_LIB_VARS(QTDBUS) + _QT4_ADJUST_LIB_VARS(QTWEBKIT) # platform dependent libraries IF(Q_WS_X11) -- cgit v1.2.1 From 9ecab260c304c4d9e9488a33b05d387e63256832 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 12 Mar 2008 12:38:37 +0000 Subject: Adjust variable svn path=/trunk/KDE/kdelibs/; revision=784788 --- modules/FindQt4.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 5f803737..035863f4 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -942,6 +942,9 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTTEST) _QT4_ADJUST_LIB_VARS(QTDBUS) _QT4_ADJUST_LIB_VARS(QTWEBKIT) + _QT4_ADJUST_LIB_VARS(QTASSISTANTCLIENT) + _QT4_ADJUST_LIB_VARS(QTHELP) + _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) # platform dependent libraries IF(Q_WS_X11) -- cgit v1.2.1 From 33dc0baf857b81826301dff74c458d61e7abc8ed Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 13 Mar 2008 11:59:31 +0000 Subject: Also use pkgconfig to find QImageBlitz, since it installs a .pc file. svn path=/trunk/KDE/kdelibs/; revision=785147 --- modules/FindBlitz.cmake | 12 ++++++++++++ modules/FindQImageBlitz.cmake | 9 +++++++++ 2 files changed, 21 insertions(+) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 84abc6ad..a26cf5c8 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -1,3 +1,6 @@ +################################################################ +########## DEPRECATED, use FindQImageBlitz instead ############# +################################################################ # - Try to find blitz lib # Once done this will define # @@ -16,12 +19,20 @@ if (BLITZ_INCLUDES AND BLITZ_LIBRARIES) set(Blitz_FIND_QUIETLY TRUE) endif (BLITZ_INCLUDES AND BLITZ_LIBRARIES) +if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + include(UsePkgConfig) + pkgconfig(qimageblitz _QIMAGEBLITZ_INCLUDEDIR _QIMAGEBLITZ_LIBDIR _dummyLinkFlags _dummyCflags) +endif (NOT WIN32) + find_path(BLITZ_INCLUDES NAMES qimageblitz.h PATH_SUFFIXES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/include + ${_QIMAGEBLITZ_INCLUDEDIR} ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -31,6 +42,7 @@ find_library_with_debug(BLITZ_LIBRARIES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/lib + ${_QIMAGEBLITZ_LIBDIR} ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) diff --git a/modules/FindQImageBlitz.cmake b/modules/FindQImageBlitz.cmake index 6021e5ea..ae610f1e 100644 --- a/modules/FindQImageBlitz.cmake +++ b/modules/FindQImageBlitz.cmake @@ -16,12 +16,20 @@ if (QIMAGEBLITZ_INCLUDES AND QIMAGEBLITZ_LIBRARIES) set(QImageBlitz_FIND_QUIETLY TRUE) endif (QIMAGEBLITZ_INCLUDES AND QIMAGEBLITZ_LIBRARIES) +if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + include(UsePkgConfig) + pkgconfig(qimageblitz _QIMAGEBLITZ_INCLUDEDIR _QIMAGEBLITZ_LIBDIR _dummyLinkFlags _dummyCflags) +endif (NOT WIN32) + find_path(QIMAGEBLITZ_INCLUDES NAMES qimageblitz.h PATH_SUFFIXES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/include + ${_QIMAGEBLITZ_INCLUDEDIR} ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -31,6 +39,7 @@ find_library_with_debug(QIMAGEBLITZ_LIBRARIES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/lib + ${_QIMAGEBLITZ_LIBDIR} ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From f67ec1c2927d2f908fe73a4fed7864e6858828ac Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 13 Mar 2008 14:56:26 +0000 Subject: configure the strigi analyzer prefix in a central place instead of spreading it all over KDE svn path=/trunk/KDE/kdelibs/; revision=785225 --- modules/FindStrigi.cmake | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 5368b318..f1e4d206 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -5,6 +5,7 @@ # STRIGI_INCLUDE_DIR - the Strigi include directory # STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer # STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams +# STRIGI_ANALYZER_PREFIX - strigi plugin prefix # at first search only in the specified directories (NO_DEFAULT_PATH) # only if it wasn't found there, the second call to FIND_PATH/LIBRARY() @@ -118,4 +119,19 @@ find_package_handle_standard_args(Strigi "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_FIND_PREFIX_PATH if using CMake >=2.5) to the strigi install dir." STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) -mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY ) +if(WIN32) + # this is needed to have mingw, cygwin and msvc libs installed in one directory + if(MSVC) + set(STRIGI_ANALYZER_PREFIX msvc_strigila_) + elseif(CYGWIN) + set(STRIGI_ANALYZER_PREFIX cyg_strigila_) + elseif(MINGW) + set(STRIGI_ANALYZER_PREFIX mingw_strigila_) + endif(MSVC) +else(WIN32) + set(STRIGI_ANALYZER_PREFIX strigila_) +endif(WIN32) + +mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY STRIGI_ANALYZER_PREFIX) + + -- cgit v1.2.1 From 10ac304227d3e25988e9ef4b21e1f07efa326381 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 13 Mar 2008 17:53:52 +0000 Subject: -under Windows, find the install location relative to the installed FindKDE4Internal.cmake instead of the installed kde4-config.exe, this makes things easier for cross compiling (...let's wait until somebody cross compiles it to ARM or something like this) Alex svn path=/trunk/KDE/kdelibs/; revision=785297 --- modules/FindKDE4Internal.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3a84c9b2..cce4679d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -327,7 +327,10 @@ else (_kdeBootStrapping) # on win32 the install dir is determined on runtime not install time # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup # kde install paths and library dependencies - get_filename_component(_DIR ${KDE4_KDECONFIG_EXECUTABLE} PATH ) + # find it relative to the location of this file + get_filename_component(_DIR ${kde_cmake_module_dir} PATH ) + get_filename_component(_DIR ${_DIR} PATH ) + get_filename_component(_DIR ${_DIR} PATH ) get_filename_component(KDE4_INSTALL_DIR ${_DIR} PATH ) get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) -- cgit v1.2.1 From 3d670d0aa49bd34c42a3e7872acb337335ef9a6b Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 13 Mar 2008 21:54:59 +0000 Subject: split into strigila and strigita prefix svn path=/trunk/KDE/kdelibs/; revision=785375 --- modules/FindStrigi.cmake | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index f1e4d206..8772731b 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -5,7 +5,8 @@ # STRIGI_INCLUDE_DIR - the Strigi include directory # STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer # STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams -# STRIGI_ANALYZER_PREFIX - strigi plugin prefix +# STRIGI_LINE_ANALYZER_PREFIX - strigi plugin prefix +# STRIGI_THROUGH_ANALYZER_PREFIX - strigi plugin prefix # at first search only in the specified directories (NO_DEFAULT_PATH) # only if it wasn't found there, the second call to FIND_PATH/LIBRARY() @@ -122,16 +123,30 @@ find_package_handle_standard_args(Strigi if(WIN32) # this is needed to have mingw, cygwin and msvc libs installed in one directory if(MSVC) - set(STRIGI_ANALYZER_PREFIX msvc_strigila_) + set(STRIGI_LINE_ANALYZER_PREFIX msvc_strigila_) elseif(CYGWIN) - set(STRIGI_ANALYZER_PREFIX cyg_strigila_) + set(STRIGI_LINE_ANALYZER_PREFIX cyg_strigila_) elseif(MINGW) - set(STRIGI_ANALYZER_PREFIX mingw_strigila_) + set(STRIGI_LINE_ANALYZER_PREFIX mingw_strigila_) endif(MSVC) else(WIN32) - set(STRIGI_ANALYZER_PREFIX strigila_) + set(STRIGI_LINE_ANALYZER_PREFIX strigila_) endif(WIN32) -mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY STRIGI_ANALYZER_PREFIX) - +if(WIN32) + # this is needed to have mingw, cygwin and msvc libs installed in one directory + if(MSVC) + set(STRIGI_THROUGH_ANALYZER_PREFIX msvc_strigita_) + elseif(CYGWIN) + set(STRIGI_THROUGH_ANALYZER_PREFIX cyg_strigita_) + elseif(MINGW) + set(STRIGI_THROUGH_ANALYZER_PREFIX mingw_strigita_) + endif(MSVC) +else(WIN32) + set(STRIGI_THROUGH_ANALYZER_PREFIX strigita_) +endif(WIN32) +mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY + STRIGI_LINE_ANALYZER_PREFIX + STRIGI_THROUGH_ANALYZER_PREFIX +) -- cgit v1.2.1 From 9a369a487551b5121de938602c0ec708376435c1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 14 Mar 2008 00:32:40 +0000 Subject: -revert the last commit, it can be better changed in cmakes FindKDE4.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=785426 --- modules/FindKDE4Internal.cmake | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index cce4679d..3a84c9b2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -327,10 +327,7 @@ else (_kdeBootStrapping) # on win32 the install dir is determined on runtime not install time # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup # kde install paths and library dependencies - # find it relative to the location of this file - get_filename_component(_DIR ${kde_cmake_module_dir} PATH ) - get_filename_component(_DIR ${_DIR} PATH ) - get_filename_component(_DIR ${_DIR} PATH ) + get_filename_component(_DIR ${KDE4_KDECONFIG_EXECUTABLE} PATH ) get_filename_component(KDE4_INSTALL_DIR ${_DIR} PATH ) get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH ) get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) -- cgit v1.2.1 From 128991763266855d5e8322a70330f2f752189018 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 14 Mar 2008 22:20:50 +0000 Subject: lowercasing Alex svn path=/trunk/KDE/kdelibs/; revision=785773 --- modules/KDE4Macros.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 837236b6..fe08faa2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -173,7 +173,7 @@ macro (KDE4_MOC_HEADERS _target_NAME) # need to create moc_.cpp file using kde4automoc.cmake # and add it to the target if(_headers_to_moc) - KDE4_SET_CUSTOM_TARGET_PROPERTY(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") + kde4_set_custom_target_property(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") endif(_headers_to_moc) endmacro (KDE4_MOC_HEADERS) @@ -182,7 +182,7 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) set(_moc_headers) # first list all explicitly set headers - KDE4_GET_CUSTOM_TARGET_PROPERTY(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) + kde4_get_custom_target_property(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) if(NOT _headers_to_moc STREQUAL "NOTFOUND") foreach(_header_to_moc ${_headers_to_moc}) get_filename_component(_abs_header ${_header_to_moc} ABSOLUTE) @@ -218,8 +218,8 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) if(_moc_files) set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") - GET_DIRECTORY_PROPERTY(_moc_incs INCLUDE_DIRECTORIES) - CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) + get_directory_property(_moc_incs INCLUDE_DIRECTORIES) + configure_file(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) add_custom_command(OUTPUT ${_automoc_source} COMMAND ${KDE4_AUTOMOC_EXECUTABLE} ${_automoc_source} -- cgit v1.2.1 From 831f6d88722b8cf1a4168ea1ab6d269c5cc3c1cf Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 18 Mar 2008 21:08:26 +0000 Subject: -help cross compiling, search the krb5-config executable only in the target environment, the one from the build host isn't the right one Alex svn path=/trunk/KDE/kdelibs/; revision=787239 --- modules/FindGSSAPI.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 90e803ea..2ae17cd6 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -21,6 +21,7 @@ ELSE(GSSAPI_LIBS AND GSSAPI_FLAVOR) FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS /opt/local/bin + ONLY_CMAKE_FIND_ROOT_PATH # this is required when cross compiling with cmake 2.6 and ignored with cmake 2.4, Alex ) #reset vars -- cgit v1.2.1 From 911d4433f9db872b76672c846acd47178cd36a0f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 18 Mar 2008 21:29:06 +0000 Subject: fix documentation, QT_LIBRARIES doesn't exist Alex svn path=/trunk/KDE/kdelibs/; revision=787251 --- modules/FindQt4.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 035863f4..00f1a135 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -29,9 +29,6 @@ # QT_USE_QTWEBKIT # QT_USE_QTXMLPATTERNS # -# All the libraries required are stored in a variable called QT_LIBRARIES. -# Add this variable to your TARGET_LINK_LIBRARIES. -# # macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...) # create moc code from a list of files containing Qt class with # the Q_OBJECT declaration. Options may be given to moc, such as those found -- cgit v1.2.1 From f615f91ef0b27dd0448fa6f5ec92238adb560c28 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 18 Mar 2008 21:57:09 +0000 Subject: fix the documentation for Qt4 again Alex svn path=/trunk/KDE/kdelibs/; revision=787262 --- modules/FindQt4.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 00f1a135..ae0f88ab 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -29,6 +29,11 @@ # QT_USE_QTWEBKIT # QT_USE_QTXMLPATTERNS # +# If you are using Qt4 via UseQt4.cmake instead of FIND_PACKAGE(Qt4), all the +# libraries required are stored in the variable QT_LIBRARIES. +# Add this variable to your TARGET_LINK_LIBRARIES. Includes and definitions +# needed for compiling Qt code are then already set up by including the QT_USE_FILE. +# # macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...) # create moc code from a list of files containing Qt class with # the Q_OBJECT declaration. Options may be given to moc, such as those found -- cgit v1.2.1 From 592547dc5c0febfd93c30a1aabdcd7057a27dd28 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 21 Mar 2008 15:19:06 +0000 Subject: Add TAGLIB_MIN_VERSION svn path=/trunk/KDE/kdelibs/; revision=788446 --- modules/FindTaglib.cmake | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 82306883..35fd6b03 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -10,6 +10,10 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if(NOT TAGLIB_MIN_VERSION) + set(TAGLIB_MIN_VERSION "1.4") +endif(NOT TAGLIB_MIN_VERSION) + IF(NOT WIN32) FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS ${BIN_INSTALL_DIR} @@ -22,15 +26,23 @@ set(TAGLIB_CFLAGS) # if taglib-config has been found IF(TAGLIBCONFIG_EXECUTABLE) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION) + + if(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") + MESSAGE(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}") + SET(TAGLIB_FOUND FALSE) + else(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") + + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) + EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) - IF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - SET(TAGLIB_FOUND TRUE) - message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") - ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + IF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + SET(TAGLIB_FOUND TRUE) + message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") + ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) ELSE(TAGLIBCONFIG_EXECUTABLE) include(FindLibraryWithDebug) -- cgit v1.2.1 From f753e7cd24f8bb393fe5a9eaad48c6bb37bb2b9e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 21 Mar 2008 16:23:24 +0000 Subject: add variables for the Akonadi library. svn path=/trunk/KDE/kdelibs/; revision=788469 --- modules/FindKdepimLibs.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 66ba5d9f..ee05d4af 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -32,6 +32,9 @@ if( KDEPIMLIBS_INCLUDE_DIR ) # this file contains all dependencies of all libraries of kdepimlibs, Alex include(KDEPimLibsDependencies) + find_library(KDE4_AKONADI_LIBRARY NAMES akonadi PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_AKONADI_LIBS ${akonadi_LIB_DEPENDS} ${KDE4_AKONADI_LIBRARY} ) + find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgme++ PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) -- cgit v1.2.1 From b1642b9a84f7b55c5416e5cc4fe0156864334cce Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 22 Mar 2008 22:36:02 +0000 Subject: add a DEMO_INSTALL_DIR variable, as a place to install demos. needed by Decibel. svn path=/trunk/KDE/kdelibs/; revision=788951 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3a84c9b2..c49c874b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -93,6 +93,7 @@ # SOUND_INSTALL_DIR - the install dir for sound files # TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) # WALLPAPER_INSTALL_DIR - the install dir for wallpapers +# DEMO_INSTALL_DIR - the install dir for demos # KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir # XDG_APPS_INSTALL_DIR - the XDG apps dir # XDG_DIRECTORY_INSTALL_DIR- the XDG directory @@ -508,6 +509,7 @@ if (WIN32) set(SOUND_INSTALL_DIR "share/sounds" ) # The install dir for sound files set(TEMPLATES_INSTALL_DIR "share/templates" ) # The install dir for templates (Create new file...) set(WALLPAPER_INSTALL_DIR "share/wallpapers" ) # The install dir for wallpapers + set(DEMO_INSTALL_DIR "share/demos" ) # The install dir for demos set(KCONF_UPDATE_INSTALL_DIR "share/apps/kconf_update" ) # The kconf_update install dir set(AUTOSTART_INSTALL_DIR "share/autostart" ) # The install dir for autostart files @@ -575,6 +577,7 @@ else (WIN32) _set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") _set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") _set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") + _set_fancy(DEMO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/demos" "The install dir for demos") _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") _set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") -- cgit v1.2.1 From 24817fef7d571052d8014f76f692722f15db4883 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 24 Mar 2008 16:54:13 +0000 Subject: Postgress can be installed in /usr/include/postgresql/ svn path=/trunk/KDE/kdelibs/; revision=789583 --- modules/FindPostgreSQL.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake index ab352c7c..b16e9e5e 100644 --- a/modules/FindPostgreSQL.cmake +++ b/modules/FindPostgreSQL.cmake @@ -18,8 +18,9 @@ endif (POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES) find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h - /usr/include/pgsql - /usr/local/include/pgsql + /usr/include/pgsql/ + /usr/local/include/pgsql/ + /usr/include/postgresql/ ) find_library(POSTGRESQL_LIBRARIES NAMES pq) -- cgit v1.2.1 From 095db6a5c923258968f881c679b6df0ca64523e0 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 27 Mar 2008 17:30:15 +0000 Subject: the akonadi library name is "akonadi-kde" also add new variables for the akonadi-kmime library svn path=/trunk/KDE/kdelibs/; revision=790859 --- modules/FindKdepimLibs.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index ee05d4af..e9cc7302 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -32,9 +32,12 @@ if( KDEPIMLIBS_INCLUDE_DIR ) # this file contains all dependencies of all libraries of kdepimlibs, Alex include(KDEPimLibsDependencies) - find_library(KDE4_AKONADI_LIBRARY NAMES akonadi PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + find_library(KDE4_AKONADI_LIBRARY NAMES akonadi-kde PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_AKONADI_LIBS ${akonadi_LIB_DEPENDS} ${KDE4_AKONADI_LIBRARY} ) + find_library(KDE4_AKONADI_KMIME_LIBRARY NAMES akonadi-kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_AKONADI_KMIME_LIBS ${akonadi_kmime_LIB_DEPENDS} ${KDE4_AKONADI_KMIME_LIBRARY} ) + find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgme++ PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) -- cgit v1.2.1 From efde2196f9294744bdb22bc443714eb3456e6287 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 27 Mar 2008 19:43:16 +0000 Subject: never skip cmake_minimum_required(), otherwise cmake 2.6 generates warnings Alex svn path=/trunk/KDE/kdelibs/; revision=790890 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c49c874b..bcfd6171 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -212,6 +212,8 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below +cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) if(KDE4_FOUND) # Already found in this cmake run, nothing more to do @@ -219,8 +221,6 @@ else(KDE4_FOUND) include (MacroEnsureVersion) -cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) - set(QT_MIN_VERSION "4.4.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -- cgit v1.2.1 From cd111487e4b4c093f33df1ce810d185213eb001c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 27 Mar 2008 20:22:09 +0000 Subject: print a warning for those using cmake 2.5, next monday this will become an error Alex svn path=/trunk/KDE/kdelibs/; revision=790915 --- modules/FindKDE4Internal.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index bcfd6171..115302d3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -654,6 +654,16 @@ if(WIN32) endif(WIN32) +# cmake 2.5, i.e. the cvs version between 2.4 and 2.6, is not supported +if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") + message(STATUS "\n*********************************************** +You are using CMake 2.5, which was the unreleased development version between 2.4 and 2.6. This is no longer supported. Please update to CMake 2.6 or current cvs HEAD. +This message will turn into an error Monday, March 31st. +...and then self-destruct ! ;-) +***********************************************\n") +endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") + + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) # some developers may be using an cmake cvs version which didn't have set_property() yet -- cgit v1.2.1 From 4636d3aa01b3dfab9e45d749e5b3c4da7afd5f22 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 2 Apr 2008 00:01:47 +0000 Subject: -cmake 2.5 is not supported anymore -adapt to policy stuff in current cmake cvs HEAD and 2.6 branch, so it builds again without cmake warnings Alex svn path=/trunk/KDE/kdelibs/; revision=792751 --- modules/FindKDE4Internal.cmake | 55 ++++++++++-------------------------------- 1 file changed, 13 insertions(+), 42 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 115302d3..2ed38373 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -656,50 +656,21 @@ endif(WIN32) # cmake 2.5, i.e. the cvs version between 2.4 and 2.6, is not supported if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") - message(STATUS "\n*********************************************** -You are using CMake 2.5, which was the unreleased development version between 2.4 and 2.6. This is no longer supported. Please update to CMake 2.6 or current cvs HEAD. -This message will turn into an error Monday, March 31st. -...and then self-destruct ! ;-) -***********************************************\n") + message(FATAL_ERROR "You are using CMake 2.5, which was the unreleased development version between 2.4 and 2.6. This is no longer supported. Please update to CMake 2.6 or current cvs HEAD.") endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") - -if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) - - # some developers may be using an cmake cvs version which didn't have set_property() yet - # Tell them that a more recent version is required. - if(NOT COMMAND SET_PROPERTY) - message(FATAL_ERROR "You are using an old version of CMake from cvs, please update to CMake >= 2.6.0 or cvs at least from Feb 20th, 2008") - endif(NOT COMMAND SET_PROPERTY) - - # CMake 2.6 gives errors if there are multiple targets with the same name - # we use this for the target "buildtests", which is created for the unit tests - # and which depends on the tests, so building "buildtests" builds all the tests - # enabling this property disables this check in CMake - set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS TRUE) - - # CMake 2.6 uses the full file names of the libraries when linking and so - # doesn't use -L anymore to list the link dirs. Now the dependencies created - # export_library_dependencies() lists the in-project libraries without - # path, i.e. with only the logical name ("kdecore"), so they don't link - # Setting this variable to true has the effect that the link dirs are - # listed nevertheless also with CMake 2.6. - set(CMAKE_LINK_OLD_PATHS TRUE) - - - # the following link_directories() command could be inserted in the KDELibsDependencies.cmake - # file. This should basically also fix the linking problem for libs with just the - # symbolic name (coming from export_library_dependencies()). But this will need - # adapting also the other places where export_library_dependencies() is used. - # I guess just enabling the compatibility option above is more safe. - # Once we require CMake >= 2.6.0 this will be reworked. Alex - # - # # in CMake 2.6 the handling of the link directories has changed, so we need this here - # if(\"\${CMAKE_MAJOR_VERSION}.\${CMAKE_MINOR_VERSION}\" GREATER 2.4) - # link_directories( \"\${KDE4_LIB_INSTALL_DIR}\" ) - # endif(\"\${CMAKE_MAJOR_VERSION}.\${CMAKE_MINOR_VERSION}\" GREATER 2.4) - -endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.4) +# CMake 2.6, set compatibility behaviour to cmake 2.4 +if(COMMAND CMAKE_POLICY) + # CMP0000: don't require cmake_minimum_version() directly in the top level CMakeLists.txt, FindKDE4Internal.cmake is good enough + cmake_policy(SET CMP0000 OLD) + # CMP0002: in KDE4 we have multiple targets with the same name for the unit tests + cmake_policy(SET CMP0002 OLD) + # CMP0003: add the link paths to the link command as with cmake 2.4 + cmake_policy(SET CMP0003 OLD) + # CMP0005: keep escaping behaviour for definitions added via add_definitions() + cmake_policy(SET CMP0005 OLD) + +endif(COMMAND CMAKE_POLICY) -- cgit v1.2.1 From 7693700c07639a0c35719ea693767f617dbf3fe9 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Thu, 3 Apr 2008 19:44:09 +0000 Subject: patch by pusling to fix finding libasound, I wonder why it never broke for me BUG: 157258 svn path=/trunk/KDE/kdelibs/; revision=793381 --- modules/FindAlsa.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index 40872ea5..f99fc6c0 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -19,7 +19,12 @@ include(CheckLibraryExists) # Already done by toplevel find_library(ASOUND_LIBRARY asound) -check_library_exists(asound snd_seq_create_simple_port ${ASOUND_LIBRARY} HAVE_LIBASOUND2) + SET(ASOUND_LIBRARY_DIR "") + IF(ASOUND_LIBRARY) + GET_FILENAME_COMPONENT(ASOUND_LIBRARY_DIR ${ASOUND_LIBRARY} PATH) + ENDIF(ASOUND_LIBRARY) + +check_library_exists(asound snd_seq_create_simple_port ${ASOUND_LIBRARY_DIR} HAVE_LIBASOUND2) if(HAVE_LIBASOUND2) message(STATUS "Found ALSA: ${ASOUND_LIBRARY}") else(HAVE_LIBASOUND2) @@ -53,7 +58,7 @@ macro(ALSA_CONFIGURE_FILE _destFile) check_include_file_cxx(sys/asoundlib.h HAVE_SYS_ASOUNDLIB_H) check_include_file_cxx(alsa/asoundlib.h HAVE_ALSA_ASOUNDLIB_H) - check_library_exists(asound snd_pcm_resume ${ASOUND_LIBRARY} ASOUND_HAS_SND_PCM_RESUME) + check_library_exists(asound snd_pcm_resume ${ASOUND_LIBRARY_DIR} ASOUND_HAS_SND_PCM_RESUME) if(ASOUND_HAS_SND_PCM_RESUME) set(HAVE_SND_PCM_RESUME 1) endif(ASOUND_HAS_SND_PCM_RESUME) -- cgit v1.2.1 From 9e46fb847551827dfae3d508559cafa0b7e65b7a Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Thu, 3 Apr 2008 20:33:18 +0000 Subject: coding style svn path=/trunk/KDE/kdelibs/; revision=793392 --- modules/FindAlsa.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index f99fc6c0..90ecbd1a 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -19,10 +19,10 @@ include(CheckLibraryExists) # Already done by toplevel find_library(ASOUND_LIBRARY asound) - SET(ASOUND_LIBRARY_DIR "") - IF(ASOUND_LIBRARY) - GET_FILENAME_COMPONENT(ASOUND_LIBRARY_DIR ${ASOUND_LIBRARY} PATH) - ENDIF(ASOUND_LIBRARY) +set(ASOUND_LIBRARY_DIR "") +if(ASOUND_LIBRARY) + get_filename_component(ASOUND_LIBRARY_DIR ${ASOUND_LIBRARY} PATH) +endif(ASOUND_LIBRARY) check_library_exists(asound snd_seq_create_simple_port ${ASOUND_LIBRARY_DIR} HAVE_LIBASOUND2) if(HAVE_LIBASOUND2) -- cgit v1.2.1 From 9197e55392ed66b784cb719e202a24f78cd03c58 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 3 Apr 2008 22:12:21 +0000 Subject: -mark some variables as advanced, so they don't appear in the not-advanced view of cmake-gui and ccmake -some minor cosmetics (casing and spaces vs. tabs) Alex svn path=/trunk/KDE/kdelibs/; revision=793410 --- modules/FindACL.cmake | 8 ++++---- modules/FindGSSAPI.cmake | 31 ++++++++++++++++--------------- modules/FindLibXslt.cmake | 2 +- modules/FindLibintl.cmake | 2 +- modules/FindSharedMimeInfo.cmake | 3 +++ 5 files changed, 25 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindACL.cmake b/modules/FindACL.cmake index 2c515fdf..7d3fa14f 100644 --- a/modules/FindACL.cmake +++ b/modules/FindACL.cmake @@ -9,7 +9,7 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -INCLUDE(CheckIncludeFiles) +include(CheckIncludeFiles) check_include_files(attr/libattr.h HAVE_ATTR_LIBATTR_H) check_include_files(sys/xattr.h HAVE_SYS_XATTR_H) @@ -21,9 +21,9 @@ if (HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIB endif (HAVE_ATTR_LIBATTR_H AND HAVE_SYS_XATTR_H AND HAVE_SYS_ACL_H AND HAVE_ACL_LIBACL_H) if (ACL_HEADERS_FOUND) - FIND_LIBRARY(ACL_LIBS NAMES acl ) + find_library(ACL_LIBS NAMES acl ) - FIND_LIBRARY(ATTR_LIBS NAMES attr ) + find_library(ATTR_LIBS NAMES attr ) endif (ACL_HEADERS_FOUND) if (ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) @@ -32,5 +32,5 @@ if (ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) message(STATUS "Found ACL support: ${ACL_LIBS}") endif (ACL_HEADERS_FOUND AND ACL_LIBS AND ATTR_LIBS) -MARK_AS_ADVANCED(ACL_LIBS) +mark_as_advanced(ACL_LIBS ATTR_LIBS) diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 2ae17cd6..d79feea8 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -12,24 +12,25 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -IF(GSSAPI_LIBS AND GSSAPI_FLAVOR) +if(GSSAPI_LIBS AND GSSAPI_FLAVOR) # in cache already - SET(GSSAPI_FOUND TRUE) + set(GSSAPI_FOUND TRUE) -ELSE(GSSAPI_LIBS AND GSSAPI_FLAVOR) +else(GSSAPI_LIBS AND GSSAPI_FLAVOR) - FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS + find_program(KRB5_CONFIG NAMES krb5-config PATHS /opt/local/bin ONLY_CMAKE_FIND_ROOT_PATH # this is required when cross compiling with cmake 2.6 and ignored with cmake 2.4, Alex ) + mark_as_advanced(KRB5_CONFIG) #reset vars set(GSSAPI_INCS) set(GSSAPI_LIBS) set(GSSAPI_FLAVOR) - IF(KRB5_CONFIG) + if(KRB5_CONFIG) SET(HAVE_KRB5_GSSAPI TRUE) EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) @@ -52,26 +53,26 @@ ELSE(GSSAPI_LIBS AND GSSAPI_FLAVOR) IF(NOT HAVE_KRB5_GSSAPI) IF (gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - MESSAGE(STATUS "Solaris Kerberos does not have GSSAPI; this is normal.") - SET(GSSAPI_LIBS) - SET(GSSAPI_INCS) + MESSAGE(STATUS "Solaris Kerberos does not have GSSAPI; this is normal.") + SET(GSSAPI_LIBS) + SET(GSSAPI_INCS) ELSE(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - MESSAGE(WARNING "${KRB5_CONFIG} failed unexpectedly.") + MESSAGE(WARNING "${KRB5_CONFIG} failed unexpectedly.") ENDIF(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") ENDIF(NOT HAVE_KRB5_GSSAPI) - IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that - SET(GSSAPI_FOUND TRUE) + if(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that + set(GSSAPI_FOUND TRUE) message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") set(GSSAPI_INCS ${GSSAPI_INCS} CACHE STRING "The GSSAPI include directory" ) set(GSSAPI_LIBS ${GSSAPI_LIBS} CACHE STRING "The libraries needed to use GSSAPI" ) set(GSSAPI_FLAVOR ${GSSAPI_FLAVOR} CACHE STRING "The type of gss api, MIT or HEIMDAL") - MARK_AS_ADVANCED(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) + mark_as_advanced(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) - ENDIF(GSSAPI_LIBS) + endif(GSSAPI_LIBS) - ENDIF(KRB5_CONFIG) + endif(KRB5_CONFIG) -ENDIF(GSSAPI_LIBS AND GSSAPI_FLAVOR) +endif(GSSAPI_LIBS AND GSSAPI_FLAVOR) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 2c7f2551..f84f4c26 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -58,5 +58,5 @@ ELSE (LIBXSLT_FOUND) ENDIF (LibXslt_FIND_REQUIRED) ENDIF (LIBXSLT_FOUND) -MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES XSLTPROC_EXECUTABLE) +MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES LIBEXSLT_LIBRARIES XSLTPROC_EXECUTABLE) diff --git a/modules/FindLibintl.cmake b/modules/FindLibintl.cmake index b421ca85..1ddcbd82 100644 --- a/modules/FindLibintl.cmake +++ b/modules/FindLibintl.cmake @@ -43,4 +43,4 @@ endif(LIBINTL_INCLUDE_DIR) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Libintl DEFAULT_MSG LIBINTL_INCLUDE_DIR LIBINTL_LIB_FOUND) -mark_as_advanced(LIBINTL_INCLUDE_DIR LIBINTL_LIBRARIES LIBINTL_LIBC_HAS_DGETTEXT) +mark_as_advanced(LIBINTL_INCLUDE_DIR LIBINTL_LIBRARIES LIBINTL_LIBC_HAS_DGETTEXT LIBINTL_LIB_FOUND) diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index e3966b86..3ff8227c 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -51,6 +51,9 @@ else (UPDATE_MIME_DATABASE_EXECUTABLE) endif (UPDATE_MIME_DATABASE_EXECUTABLE) +mark_as_advanced(UPDATE_MIME_DATABASE_EXECUTABLE) + + macro(UPDATE_XDG_MIMETYPES _path) get_filename_component(_xdgmimeDir "${_path}" NAME) if("${_xdgmimeDir}" STREQUAL packages ) -- cgit v1.2.1 From 7d59b5e1ff6b37a3fe9f6c5a50ebcdca4a560d20 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 4 Apr 2008 12:45:19 +0000 Subject: don't break if ASOUND_LIBRARY_DIR is empty svn path=/trunk/KDE/kdelibs/; revision=793576 --- modules/FindAlsa.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index 90ecbd1a..23003b39 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -24,7 +24,7 @@ if(ASOUND_LIBRARY) get_filename_component(ASOUND_LIBRARY_DIR ${ASOUND_LIBRARY} PATH) endif(ASOUND_LIBRARY) -check_library_exists(asound snd_seq_create_simple_port ${ASOUND_LIBRARY_DIR} HAVE_LIBASOUND2) +check_library_exists(asound snd_seq_create_simple_port "${ASOUND_LIBRARY_DIR}" HAVE_LIBASOUND2) if(HAVE_LIBASOUND2) message(STATUS "Found ALSA: ${ASOUND_LIBRARY}") else(HAVE_LIBASOUND2) @@ -58,7 +58,7 @@ macro(ALSA_CONFIGURE_FILE _destFile) check_include_file_cxx(sys/asoundlib.h HAVE_SYS_ASOUNDLIB_H) check_include_file_cxx(alsa/asoundlib.h HAVE_ALSA_ASOUNDLIB_H) - check_library_exists(asound snd_pcm_resume ${ASOUND_LIBRARY_DIR} ASOUND_HAS_SND_PCM_RESUME) + check_library_exists(asound snd_pcm_resume "${ASOUND_LIBRARY_DIR}" ASOUND_HAS_SND_PCM_RESUME) if(ASOUND_HAS_SND_PCM_RESUME) set(HAVE_SND_PCM_RESUME 1) endif(ASOUND_HAS_SND_PCM_RESUME) -- cgit v1.2.1 From 9adf0d066e86313a2f52e90804412321dda8eb0e Mon Sep 17 00:00:00 2001 From: Aleix Pol Gonzalez Date: Fri, 4 Apr 2008 14:28:05 +0000 Subject: Fixed an strange behaviour on the plasma finder. svn path=/trunk/KDE/kdelibs/; revision=793596 --- modules/FindPlasma.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index bafa6495..05a646b8 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -16,11 +16,13 @@ endif (PLASMA_INCLUDE_DIR AND PLASMA_LIBS) find_path(PLASMA_INCLUDE_DIR NAMES plasma/plasma.h PATHS + ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) find_library(PLASMA_LIBS NAMES plasma PATHS + ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From b4d2b89309a38705f780520d4c5e0d8c91d12cca Mon Sep 17 00:00:00 2001 From: Till Adam Date: Fri, 11 Apr 2008 07:58:58 +0000 Subject: Find Qt also on OSX when compiled without frameworks, but with debugging. svn path=/trunk/KDE/kdelibs/; revision=795721 --- modules/FindQt4.cmake | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index ae0f88ab..9192be96 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -770,55 +770,55 @@ IF (QT4_QMAKE_FOUND) ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 QtCore_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support_debug Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui_debug QtGui_debug QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMOTIF_LIBRARY IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(Q_WS_X11) # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork_debug QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL_debug QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql_debug QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml_debug QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg_debug QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript_debug QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools_debug QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest_debug QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus_debug QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient_debug QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp_debug QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTWEBKIT_LIBRARY NAMES QtWebKit QtWebKit4 QtWebKitd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTWEBKIT_LIBRARY NAMES QtWebKit QtWebKit_debug QtWebKit4 QtWebKitd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXMLPATTERNS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXMLPATTERNS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) IF(MSVC) @@ -867,10 +867,10 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner_debug QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTDESIGNERCOMPONENTS_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents_debug QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMAIN_LIBRARY IF(WIN32) -- cgit v1.2.1 From aeeec3d4eb2b5496813158e63a5d2d85aecf4c97 Mon Sep 17 00:00:00 2001 From: Harri Porten Date: Sat, 12 Apr 2008 18:50:50 +0000 Subject: Fall back to also asking pkg-config for PCRE. svn path=/trunk/KDE/kdelibs/; revision=796136 --- modules/FindPCRE.cmake | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 0eba2e3a..e2f29bdd 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -16,11 +16,20 @@ if (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) set(PCRE_FIND_QUIETLY TRUE) endif (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) -FIND_PATH(PCRE_INCLUDE_DIR pcre.h PATH_SUFFIXES pcre) -FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre) +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libpcre _PCREIncDir _PCRELinkDir _PCRELinkFlags _PCRECflags) +ENDIF (NOT WIN32) -FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix) +FIND_PATH(PCRE_INCLUDE_DIR pcre.h PATHS ${_PCREIncDir} PATH_SUFFIXES pcre) + +FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${_PCRELinkDir}) + +FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${_PCRELinkDir}) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) -- cgit v1.2.1 From 914bfdda79cec676705f027f83b1dfb5087616c0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sun, 13 Apr 2008 12:07:08 +0000 Subject: it seems like this is the culprit for breaking all KDE modules if using cmake 2.6 svn path=/trunk/KDE/kdelibs/; revision=796351 --- modules/KDE4Defaults.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index d81b265e..60c62e35 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -23,7 +23,9 @@ set(CMAKE_COLOR_MAKEFILE ON) # Enable use of chrpath to avoid the need for actually relinking on install # since cmake cvs 12/19/2007 -set(CMAKE_USE_CHRPATH ON) +if (NOT CMAKE_SKIP_RPATH) + set(CMAKE_USE_CHRPATH ON) +endif (NOT CMAKE_SKIP_RPATH) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes -- cgit v1.2.1 From 5ef94db0b23f14ab98795d6fc950ac3356eab0c0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sun, 13 Apr 2008 12:08:31 +0000 Subject: gcc 4.3 has the no-threadsafe-statics bug fixed svn path=/trunk/KDE/kdelibs/; revision=796352 --- modules/FindKDE4Internal.cmake | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2ed38373..42a39034 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -908,15 +908,6 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif(HAVE_FPIE_SUPPORT) endif(KDE4_ENABLE_FPIE) - # save a little by making local statics not threadsafe - check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS) - if (__KDE_HAVE_NO_THREADSAFE_STATICS) - # currently disabled for Alpha1 due to what appears - # to be a compiler bug - # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806 - #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") - endif (__KDE_HAVE_NO_THREADSAFE_STATICS) - check_cxx_compiler_flag(-Woverloaded-virtual __KDE_HAVE_W_OVERLOADED_VIRTUAL) if(__KDE_HAVE_W_OVERLOADED_VIRTUAL) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual") @@ -937,6 +928,14 @@ if (CMAKE_COMPILER_IS_GNUCXX) macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) + macro_ensure_version("4.3.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_3) + + # save a little by making local statics not threadsafe + # ### do not enable it for older compilers, see + # ### http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806 + if (GCC_IS_NEWER_THAN_4_3) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics") + endif (GCC_IS_NEWER_THAN_4_3) set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) if (GCC_IS_NEWER_THAN_4_1) -- cgit v1.2.1 From 479eff683c78e06073afcbe008f35ba7eb348068 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 14 Apr 2008 19:51:24 +0000 Subject: remove CACHE STRING, which can cause problems. per Brad King. svn path=/trunk/KDE/kdelibs/; revision=797050 --- modules/FindFreetype.cmake | 2 +- modules/FindOpenEXR.cmake | 4 ++-- modules/FindPCRE.cmake | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 6fd1bb13..6c22bb1b 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -45,7 +45,7 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) endforeach(value) endif(FREETYPE_LIBRARIES AND _freetype_pkgconfig_output) - set( FREETYPE_LIBRARIES ${FREETYPE_LIBRARIES} CACHE STRING "The libraries for freetype" ) + set( FREETYPE_LIBRARIES ${FREETYPE_LIBRARIES} ) mark_as_advanced(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index cd443c0a..ac58b345 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -68,9 +68,9 @@ ENDIF (NOT WIN32) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) set(OPENEXR_FOUND TRUE) if (OPENEXR_ILMTHREAD_LIBRARY) - set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ${OPENEXR_ILMTHREAD_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ${OPENEXR_ILMTHREAD_LIBRARY} ) else (OPENEXR_ILMTHREAD_LIBRARY) - set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ) endif (OPENEXR_ILMTHREAD_LIBRARY) if (WIN32) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index e2f29bdd..56f015a8 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -34,6 +34,6 @@ FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${_PCRELinkDir}) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) -set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY} CACHE STRING "The libraries needed to use PCRE") +set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY}) MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) -- cgit v1.2.1 From fcc15dd97379ef210f356f4ed92bd5a290404ae3 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 14 Apr 2008 19:55:19 +0000 Subject: remove CACHE STRING here too svn path=/trunk/KDE/kdelibs/; revision=797051 --- modules/FindGSSAPI.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index d79feea8..91c457e6 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -65,8 +65,8 @@ else(GSSAPI_LIBS AND GSSAPI_FLAVOR) set(GSSAPI_FOUND TRUE) message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") - set(GSSAPI_INCS ${GSSAPI_INCS} CACHE STRING "The GSSAPI include directory" ) - set(GSSAPI_LIBS ${GSSAPI_LIBS} CACHE STRING "The libraries needed to use GSSAPI" ) + set(GSSAPI_INCS ${GSSAPI_INCS}) + set(GSSAPI_LIBS ${GSSAPI_LIBS}) set(GSSAPI_FLAVOR ${GSSAPI_FLAVOR} CACHE STRING "The type of gss api, MIT or HEIMDAL") mark_as_advanced(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) -- cgit v1.2.1 From 4fedfeda01ca3fc36023ea4072945842f0fc5bd5 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Mon, 14 Apr 2008 20:36:32 +0000 Subject: work around a cmake 2.6 issue when building on OSX svn path=/trunk/KDE/kdelibs/; revision=797065 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 42a39034..fd6506e5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -616,6 +616,7 @@ endif (WIN32) set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" LIBRARY DESTINATION "${LIB_INSTALL_DIR}" + BUNDLE DESTINATION "${LIB_INSTALL_DIR}" ARCHIVE DESTINATION "${LIB_INSTALL_DIR}" COMPONENT Devel ) -- cgit v1.2.1 From 4f82f1f1526b200c1816ecf526045e93e6695a22 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Mon, 14 Apr 2008 20:57:08 +0000 Subject: revert the BUNDLE thing for now, apparently it is not backwards-compatible with cmake 2.4 svn path=/trunk/KDE/kdelibs/; revision=797071 --- modules/FindKDE4Internal.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fd6506e5..42a39034 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -616,7 +616,6 @@ endif (WIN32) set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" LIBRARY DESTINATION "${LIB_INSTALL_DIR}" - BUNDLE DESTINATION "${LIB_INSTALL_DIR}" ARCHIVE DESTINATION "${LIB_INSTALL_DIR}" COMPONENT Devel ) -- cgit v1.2.1 From ab0a45fb585c6daa64637e7ecbfea7d2028c4844 Mon Sep 17 00:00:00 2001 From: Harri Porten Date: Tue, 15 Apr 2008 21:13:17 +0000 Subject: Provide variables for detection & use of public KJS API. svn path=/trunk/KDE/kdelibs/; revision=797436 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 42a39034..3442503f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -32,6 +32,7 @@ # KDE4_KFILE_LIBRARY - the kfile library # KDE4_KHTML_LIBRARY - the khtml library # KDE4_KJS_LIBRARY - the kjs library +# KDE4_KJSAPI_LIBRARY - the kjs public api library # KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONON_LIBRARY - the phonon library @@ -57,6 +58,7 @@ # KDE4_KFILE_LIBS - the kfile library and all depending libraries # KDE4_KHTML_LIBS - the khtml library and all depending libraries # KDE4_KJS_LIBS - the kjs library and all depending libraries +# KDE4_KJSAPI_LIBS - the kjs public api library and all depending libraries # KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries @@ -368,6 +370,8 @@ else (_kdeBootStrapping) find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) + find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KJSAPI_LIBS ${kjsapi_LIB_DEPENDS} ${KDE4_KJSAPI_LIBRARY} ) find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) -- cgit v1.2.1 From 9215cdab458b5fdc16343157dacd78ef82245ae1 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 16 Apr 2008 20:37:25 +0000 Subject: don't put set variables into the CACHE, per Brad King svn path=/trunk/KDE/kdelibs/; revision=797757 --- modules/FindAkode.cmake | 4 ++-- modules/FindFFmpeg.cmake | 2 +- modules/FindFontconfig.cmake | 2 +- modules/FindGSSAPI.cmake | 2 +- modules/FindGettext.cmake | 2 +- modules/FindLibintl.cmake | 4 ++-- modules/FindOpenEXR.cmake | 2 +- modules/FindStrigi.cmake | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/FindAkode.cmake b/modules/FindAkode.cmake index 9e66eb36..9df503cc 100644 --- a/modules/FindAkode.cmake +++ b/modules/FindAkode.cmake @@ -34,8 +34,8 @@ ELSE (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) ENDIF (AKODE_LIBRARIES AND AKODE_INCLUDE_DIR) # ensure that they are cached - set(AKODE_INCLUDE_DIR ${AKODE_INCLUDE_DIR} CACHE INTERNAL "The akode include path") - set(AKODE_LIBRARIES ${AKODE_LIBRARIES} CACHE INTERNAL "The libraries needed to use libraries") + set(AKODE_INCLUDE_DIR ${AKODE_INCLUDE_DIR}) + set(AKODE_LIBRARIES ${AKODE_LIBRARIES}) ENDIF (AKODECONFIG_EXECUTABLE) IF(AKODE_FOUND) diff --git a/modules/FindFFmpeg.cmake b/modules/FindFFmpeg.cmake index 9768949d..83f4dde8 100644 --- a/modules/FindFFmpeg.cmake +++ b/modules/FindFFmpeg.cmake @@ -24,7 +24,7 @@ IF (NOT WIN32) PKGCONFIG(libavcodec _FFMPEGIncDir _FFMPEGLinkDir _FFMPEGLinkFlags _FFMPEGCflags) ENDIF (NOT WIN32) - #set(FFMPEG_DEFINITIONS ${_FFMPEGCflags} CACHE INTERNAL "The compilation flags for ffmpeg") + #set(FFMPEG_DEFINITIONS ${_FFMPEGCflags}) find_path(FFMPEG_INCLUDE_DIR ffmpeg/avcodec.h PATHS diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index c6a8c6ab..ad144e1e 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -25,7 +25,7 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) pkgconfig(fontconfig _FONTCONFIGIncDir _FONTCONFIGLinkDir _FONTCONFIGLinkFlags _FONTCONFIGCflags) - set(FONTCONFIG_DEFINITIONS ${_FONTCONFIGCflags} CACHE INTERNAL "The compilation flags for fontconfig") + set(FONTCONFIG_DEFINITIONS ${_FONTCONFIGCflags}) endif (NOT WIN32) find_path(FONTCONFIG_INCLUDE_DIR fontconfig/fontconfig.h diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 91c457e6..45e4e0e1 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -67,7 +67,7 @@ else(GSSAPI_LIBS AND GSSAPI_FLAVOR) set(GSSAPI_INCS ${GSSAPI_INCS}) set(GSSAPI_LIBS ${GSSAPI_LIBS}) - set(GSSAPI_FLAVOR ${GSSAPI_FLAVOR} CACHE STRING "The type of gss api, MIT or HEIMDAL") + set(GSSAPI_FLAVOR ${GSSAPI_FLAVOR}) mark_as_advanced(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 682906e5..8c50e43f 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -43,7 +43,7 @@ else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT) if (LIBINTL_HAS_DGETTEXT) set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") - set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY} CACHE FILEPATH "path to libintl library, used for gettext") + set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) set(GETTEXT_FOUND TRUE) endif (LIBINTL_HAS_DGETTEXT) endif (LIBC_HAS_DGETTEXT) diff --git a/modules/FindLibintl.cmake b/modules/FindLibintl.cmake index 1ddcbd82..52ae6479 100644 --- a/modules/FindLibintl.cmake +++ b/modules/FindLibintl.cmake @@ -30,11 +30,11 @@ if(LIBINTL_INCLUDE_DIR) if (LIBINTL_LIBC_HAS_DGETTEXT) set(LIBINTL_LIBRARIES) - set(LIBINTL_LIB_FOUND TRUE CACHE BOOL "Libintl found" FORCE) + set(LIBINTL_LIB_FOUND TRUE) else (LIBINTL_LIBC_HAS_DGETTEXT) find_library(LIBINTL_LIBRARIES NAMES intl libintl ) if(LIBINTL_LIBRARIES) - set(LIBINTL_LIB_FOUND TRUE CACHE BOOL "Libintl found" FORCE) + set(LIBINTL_LIB_FOUND TRUE) endif(LIBINTL_LIBRARIES) endif (LIBINTL_LIBC_HAS_DGETTEXT) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index ac58b345..35b7e001 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -79,7 +79,7 @@ ENDIF (NOT WIN32) set(_OPENEXR_DEFINITIONS) endif (WIN32) - set(OPENEXR_DEFINITIONS ${_OPENEXR_DEFINITIONS} CACHE STRING "Definitions needed to use OpenEXR") + set(OPENEXR_DEFINITIONS ${_OPENEXR_DEFINITIONS}) endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 8772731b..12373860 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -89,7 +89,7 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") else(NOT _return_VALUE STREQUAL "0") - set(HAVE_STRIGI_VERSION TRUE CACHE BOOL "Have strigi version returned by pkgconfig") + set(HAVE_STRIGI_VERSION TRUE) if(NOT Strigi_FIND_QUIETLY) message(STATUS "Found Strigi >= ${STRIGI_MIN_VERSION}") endif(NOT Strigi_FIND_QUIETLY) -- cgit v1.2.1 From 587e948530beed0f013eb7f68ac95e3cca3eea51 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 21 Apr 2008 17:27:57 +0000 Subject: use the wonderful magic of 'PATH_SUFFIXES' to not forget about 'freetype2' directory anymore svn path=/trunk/KDE/kdelibs/; revision=799493 --- modules/FindFreetype.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 6c22bb1b..5657728a 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -50,7 +50,7 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) mark_as_advanced(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR) else(FREETYPECONFIG_EXECUTABLE) - find_path (FREETYPE_INCLUDE_DIR freetype2/freetype/freetype.h) + find_path (FREETYPE_INCLUDE_DIR freetype/freetype.h PATH_SUFFIXES freetype2) set (FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR}/freetype2) find_library(FREETYPE_LIBRARIES freetype) if(FREETYPE_INCLUDE_DIR AND FREETYPE_LIBRARIES) -- cgit v1.2.1 From 9f5e34c981df3f3636a2411113c804a9fc6b3905 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 21 Apr 2008 17:34:27 +0000 Subject: SVN_SILENT: forgot to remove this line - no longer needed svn path=/trunk/KDE/kdelibs/; revision=799496 --- modules/FindFreetype.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake index 5657728a..61e44a1f 100644 --- a/modules/FindFreetype.cmake +++ b/modules/FindFreetype.cmake @@ -51,7 +51,6 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR) else(FREETYPECONFIG_EXECUTABLE) find_path (FREETYPE_INCLUDE_DIR freetype/freetype.h PATH_SUFFIXES freetype2) - set (FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR}/freetype2) find_library(FREETYPE_LIBRARIES freetype) if(FREETYPE_INCLUDE_DIR AND FREETYPE_LIBRARIES) set(FREETYPE_FOUND TRUE) -- cgit v1.2.1 From 353c436b99db7e340cf77b360eb8c1403cdb4836 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 21 Apr 2008 23:35:51 +0000 Subject: -add BUNDLE_INSTALL_DIR for OSX, location where application bundles will be installed Alex svn path=/trunk/KDE/kdelibs/; revision=799615 --- modules/FindKDE4Internal.cmake | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3442503f..7ce4b90f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -77,7 +77,8 @@ # They can be relative (to CMAKE_INSTALL_PREFIX) or absolute. # Under Windows they are always relative. # -# BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin) +# BIN_INSTALL_DIR - the directory where executables will be installed (default is prefix/bin) +# BUNDLE_INSTALL_DIR - Mac only: the directory where application bundles will be installed (default is /Applications/KDE ) # SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) # LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) # CONFIG_INSTALL_DIR - the config file install dir @@ -529,12 +530,12 @@ if (WIN32) else (WIN32) - # this macro implements some very special logic how to deal with the cache - # by default the various install locations inherit their value from theit "parent" variable + # This macro implements some very special logic how to deal with the cache. + # By default the various install locations inherit their value from their "parent" variable # so if you set CMAKE_INSTALL_PREFIX, then EXEC_INSTALL_PREFIX, PLUGIN_INSTALL_DIR will - # calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX - # this would work completely without using the cache. - # but if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into + # calculate their value by appending subdirs to CMAKE_INSTALL_PREFIX . + # This would work completely without using the cache. + # But if somebody wants e.g. a different EXEC_INSTALL_PREFIX this value has to go into # the cache, otherwise it will be forgotten on the next cmake run. # Once a variable is in the cache, it doesn't depend on its "parent" variables # anymore and you can only change it by editing it directly. @@ -559,6 +560,9 @@ else (WIN32) endif (NOT DEFINED ${_var}) endmacro(_SET_FANCY) + if(APPLE) + set(BUNDLE_INSTALL_DIR "/Applications/KDE" CACHE PATH "Directory where application bundles will be installed to on OSX" ) + endif(APPLE) _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") @@ -623,6 +627,16 @@ set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" ARCHIVE DESTINATION "${LIB_INSTALL_DIR}" COMPONENT Devel ) + +# on the Mac support an extra install directory for application bundles +if(APPLE) + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.6") + set(INSTALL_TARGETS_DEFAULT_ARGS ${INSTALL_TARGETS_DEFAULT_ARGS} + BUNDLE DESTINATION "${BUNDLE_INSTALL_DIR} ) + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.6") +endif(APPLE) + + ############## add some more default search paths ############### # always search in the directory where cmake is installed # and in the current installation prefix -- cgit v1.2.1 From 9b3a5b93ce0c7fd456c3446931469f019b6c5a28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eckhart=20W=C3=B6rner?= Date: Tue, 22 Apr 2008 00:56:37 +0000 Subject: Fix compile error svn path=/trunk/KDE/kdelibs/; revision=799638 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7ce4b90f..6e8bad88 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -632,7 +632,7 @@ set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" if(APPLE) if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.6") set(INSTALL_TARGETS_DEFAULT_ARGS ${INSTALL_TARGETS_DEFAULT_ARGS} - BUNDLE DESTINATION "${BUNDLE_INSTALL_DIR} ) + BUNDLE DESTINATION "${BUNDLE_INSTALL_DIR}" ) endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.6") endif(APPLE) -- cgit v1.2.1 From ed62f49a4fb8f225f66d0728fbb43ea7b8ccf90d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 25 Apr 2008 20:08:54 +0000 Subject: -this file will be required by the modified kde4_add_kdeinit_executable() for windows Alex svn path=/trunk/KDE/kdelibs/; revision=801155 --- modules/kde4init_win32lib_dummy.cpp.in | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 modules/kde4init_win32lib_dummy.cpp.in (limited to 'modules') diff --git a/modules/kde4init_win32lib_dummy.cpp.in b/modules/kde4init_win32lib_dummy.cpp.in new file mode 100644 index 00000000..0aa704bc --- /dev/null +++ b/modules/kde4init_win32lib_dummy.cpp.in @@ -0,0 +1,5 @@ +/* dummy file, used by KDE4_ADD_KDEINIT_EXECUTABLE() under Windows, + * so that the created static library is not completely empty */ + +extern "C" int kdeinit_${_KDEINIT4_TARGET_NAME_}_dummy(void) { return 42; } + -- cgit v1.2.1 From ab7d17cd2c2a47b0ec2bf48b021b88eb021d11c4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 25 Apr 2008 20:18:25 +0000 Subject: -lowercasing -remove KDE4_ADD_TEST_EXECUTABLE(), which was deprecated and disabled before KDE 4.0.0 Alex svn path=/trunk/KDE/kdelibs/; revision=801160 --- modules/KDE4Macros.cmake | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index fe08faa2..f724a692 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -67,7 +67,7 @@ macro (KDE4_ADD_KCFG_FILES _sources ) endmacro (KDE4_ADD_KCFG_FILES) -GET_FILENAME_COMPONENT(KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) +get_filename_component(KDE4_MODULE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) #create the implementation files from the ui files and add them to the list of sources #usage: KDE4_ADD_UI_FILES(foo_SRCS ${ui_files}) @@ -454,10 +454,10 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) # mng icons file(GLOB _icons *.mng) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _type "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _size "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\4" _name "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _type "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _size "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _group "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\4" _name "${_current_ICON}") set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) if( _theme_GROUP) @@ -470,9 +470,9 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) # and now the svg icons file(GLOB _icons *.svgz) foreach (_current_ICON ${_icons} ) - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _type "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _group "${_current_ICON}") - STRING(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\3" _name "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _type "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _group "${_current_ICON}") + string(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\3" _name "${_current_ICON}") set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) if( _theme_GROUP) @@ -482,7 +482,7 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) endif( _theme_GROUP) endforeach (_current_ICON) - KDE4_UPDATE_ICONCACHE() + kde4_update_iconcache() endmacro (KDE4_INSTALL_ICONS) @@ -819,10 +819,6 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endmacro (KDE4_ADD_UNIT_TEST) -macro (KDE4_ADD_TEST_EXECUTABLE _target_NAME) - MESSAGE(SEND_ERROR "KDE4_ADD_TEST_EXECUTABLE is deprecated use KDE4_ADD_EXECUTABLE( TEST ) instead") -endmacro (KDE4_ADD_TEST_EXECUTABLE) - macro (KDE4_ADD_EXECUTABLE _target_NAME) @@ -939,7 +935,7 @@ macro (KDE4_ADD_WIDGET_FILES _sources) endmacro (KDE4_ADD_WIDGET_FILES) -MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) +macro(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) @@ -950,17 +946,17 @@ MACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${module_install_dir}/${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) endforeach ( _current_FILE) -ENDMACRO(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) +endmacro(KDE4_REMOVE_OBSOLETE_CMAKE_FILES) -MACRO(KDE4_NO_ENABLE_FINAL _project_name) +macro(KDE4_NO_ENABLE_FINAL _project_name) if(KDE4_ENABLE_FINAL) set(KDE4_ENABLE_FINAL OFF) remove_definitions(-DKDE_USE_FINAL) message(STATUS "You used enable-final argument but \"${_project_name}\" doesn't support it. Try to fix compile it and remove KDE4_NO_ENABLE_FINAL macro. Thanks") endif(KDE4_ENABLE_FINAL) -ENDMACRO(KDE4_NO_ENABLE_FINAL _project_name) +endmacro(KDE4_NO_ENABLE_FINAL _project_name) macro(KDE4_CREATE_EXPORTS_HEADER _outputFile _libName) @@ -994,7 +990,7 @@ macro (KDE4_ADD_WIN32_APP_ICON appsources) if(MSVC) set(WINDRES_EXECUTABLE TRUE) endif(MSVC) - STRING(REPLACE _SRCS "" appname ${appsources}) + string(REPLACE _SRCS "" appname ${appsources}) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${appname}) -- cgit v1.2.1 From 17fb2f9e1bd1565c1caad5863c4bec661c53ff93 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 25 Apr 2008 21:00:22 +0000 Subject: -modify kde4_add_kdeinit_executable() so that under windows no longer a shared lib is created, but just a static library (which doesn't have to be installed), but which is used for linking, see discussion on kde-buildsystem Alex svn path=/trunk/KDE/kdelibs/; revision=801179 --- modules/KDE4Macros.cmake | 62 +++++++++++++++++++++++++++++------------------- 1 file changed, 37 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f724a692..d2b52445 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -718,32 +718,44 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) kde4_check_executable_params(_SRCS _nogui _uninst _test ${ARGN}) -# if (WIN32) -# # under windows, just build a normal executable -# KDE4_ADD_EXECUTABLE(${_target_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${ARGN} ) -# else (WIN32) - # under UNIX, create a shared library and a small executable, which links to this library - - kde4_handle_automoc(kdeinit_${_target_NAME} _SRCS) - if (KDE4_ENABLE_FINAL) - kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) - add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files}) - - else (KDE4_ENABLE_FINAL) - add_library(kdeinit_${_target_NAME} SHARED ${_SRCS}) - endif (KDE4_ENABLE_FINAL) - - kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) - set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) - configure_file(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) - target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) -# endif (WIN32) - - if (WIN32) - target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) - endif (WIN32) + # under Windows, build a normal executable and additionally a dummy kdeinit4_foo.lib, whose only purpose on windows is to + # keep the linking logic from the CMakeLists.txt on UNIX working (under UNIX all necessary libs are linked against the kdeinit + # library instead against the executable, under windows we want to have everything in the executable, but for compatibility we have to + # keep the library there- + if(WIN32) + set(_KDEINIT4_TARGET_NAME_ ${_target_NAME}) + configure_file(${KDE4_MODULE_DIR}/kde4init_win32lib_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp) + add_library(kdeinit_${_target_NAME} STATIC ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp) + + if (KDE4_ENABLE_FINAL) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) + kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + + else (KDE4_ENABLE_FINAL) + kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + endif (KDE4_ENABLE_FINAL) + + set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) + + target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY} kdeinit_${_target_NAME}) + else(WIN32) + kde4_handle_automoc(kdeinit_${_target_NAME} _SRCS) + + if (KDE4_ENABLE_FINAL) + kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) + add_library(kdeinit_${_target_NAME} SHARED ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files}) + + else (KDE4_ENABLE_FINAL) + add_library(kdeinit_${_target_NAME} SHARED ${_SRCS}) + endif (KDE4_ENABLE_FINAL) + + kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) + set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) + + kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) + endif(WIN32) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) -- cgit v1.2.1 From 8ed46a426c9a62fda18eb0293483e3aa4a221186 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 25 Apr 2008 21:01:13 +0000 Subject: ...this one too, install the new dummy file for windows kdeinit Alex svn path=/trunk/KDE/kdelibs/; revision=801181 --- modules/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 460ef67c..19a1bb95 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -4,7 +4,7 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} +install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex -- cgit v1.2.1 From 4e660c43d64dc568e53f1fc37fe5c861ad79c9ab Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 26 Apr 2008 17:40:59 +0000 Subject: -add FindBoost.cmake from cmake 2.4.5, since the one from 2.6.9RC9 has a problem with the cmake policies Alex svn path=/trunk/KDE/kdelibs/; revision=801447 --- modules/CMakeLists.txt | 1 - modules/FindBoost.cmake | 164 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 164 insertions(+), 1 deletion(-) create mode 100644 modules/FindBoost.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 19a1bb95..db6a9ad4 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -18,7 +18,6 @@ install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32 # can be removed once we require cmake 2.4.6 or newer: # FindPkgConfig.cmake - #install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) #file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake new file mode 100644 index 00000000..85ec1ff2 --- /dev/null +++ b/modules/FindBoost.cmake @@ -0,0 +1,164 @@ +# - Find the Boost includes and libraries. +# The following variables are set if Boost is found. If Boost is not +# found, Boost_FOUND is set to false. +# Boost_FOUND - True when the Boost include directory is found. +# Boost_INCLUDE_DIRS - the path to where the boost include files are. +# Boost_LIBRARY_DIRS - The path to where the boost library files are. +# Boost_LIB_DIAGNOSTIC_DEFINITIONS - Only set if using Windows. + +# !!!!!!!!!!!!!!!!!!! +# this is FindBoost.cmake from cmake 2.4.4 to 2.4.8 +# it is here because the one in 2.6.0RC9 is slightly broken +# and will be removed again once 2.6.0 or 2.6.0RC10 is released +# Alex +# !!!!!!!!!!!!!!!!!!!!!! + +# ---------------------------------------------------------------------------- +# If you have installed Boost in a non-standard location or you have +# just staged the boost files using bjam then you have three +# options. In the following comments, it is assumed that +# points to the root directory of the include directory of Boost. e.g +# If you have put boost in C:\development\Boost then is +# "C:/development/Boost" and in this directory there will be two +# directories called "include" and "lib". +# 1) After CMake runs, set Boost_INCLUDE_DIR to /include/boost<-version> +# 2) Use CMAKE_INCLUDE_PATH to set a path to /include. This will allow FIND_PATH() +# to locate Boost_INCLUDE_DIR by utilizing the PATH_SUFFIXES option. e.g. +# SET(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "/include") +# 3) Set an environment variable called ${BOOST_ROOT} that points to the root of where you have +# installed Boost, e.g. . It is assumed that there is at least a subdirectory called +# include in this path. +# +# Note: +# 1) If you are just using the boost headers, then you do not need to use +# Boost_LIBRARY_DIRS in your CMakeLists.txt file. +# 2) If Boost has not been installed, then when setting Boost_LIBRARY_DIRS +# the script will look for /lib first and, if this fails, then for /stage/lib. +# +# Usage: +# In your CMakeLists.txt file do something like this: +# ... +# # Boost +# FIND_PACKAGE(Boost) +# ... +# INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS}) +# LINK_DIRECTORIES(${Boost_LIBRARY_DIRS}) +# +# In Windows, we make the assumption that, if the Boost files are installed, the default directory +# will be C:\boost. + +# +# TODO: +# +# 1) Automatically find the Boost library files and eliminate the need +# to use Link Directories. +# + +IF(WIN32) + # In windows, automatic linking is performed, so you do not have to specify the libraries. + # If you are linking to a dynamic runtime, then you can choose to link to either a static or a + # dynamic Boost library, the default is to do a static link. You can alter this for a specific + # library "whatever" by defining BOOST_WHATEVER_DYN_LINK to force Boost library "whatever" to + # be linked dynamically. Alternatively you can force all Boost libraries to dynamic link by + # defining BOOST_ALL_DYN_LINK. + + # This feature can be disabled for Boost library "whatever" by defining BOOST_WHATEVER_NO_LIB, + # or for all of Boost by defining BOOST_ALL_NO_LIB. + + # If you want to observe which libraries are being linked against then defining + # BOOST_LIB_DIAGNOSTIC will cause the auto-linking code to emit a #pragma message each time + # a library is selected for linking. + SET(Boost_LIB_DIAGNOSTIC_DEFINITIONS "-DBOOST_LIB_DIAGNOSTIC") +ENDIF(WIN32) + + +SET(BOOST_INCLUDE_PATH_DESCRIPTION "directory containing the boost include files. E.g /usr/local/include/boost-1_33_1 or c:\\boost\\include\\boost-1_33_1") + +SET(BOOST_DIR_MESSAGE "Set the Boost_INCLUDE_DIR cmake cache entry to the ${BOOST_INCLUDE_PATH_DESCRIPTION}") + +SET(BOOST_DIR_SEARCH $ENV{BOOST_ROOT}) +IF(BOOST_DIR_SEARCH) + FILE(TO_CMAKE_PATH ${BOOST_DIR_SEARCH} BOOST_DIR_SEARCH) + SET(BOOST_DIR_SEARCH ${BOOST_DIR_SEARCH}/include) +ENDIF(BOOST_DIR_SEARCH) + +IF(WIN32) + SET(BOOST_DIR_SEARCH + ${BOOST_DIR_SEARCH} + C:/boost/include + D:/boost/include + ) +ENDIF(WIN32) + +# Add in some path suffixes. These will have to be updated whenever a new Boost version comes out. +SET(SUFFIX_FOR_PATH + boost-1_34_1 + boost-1_34_0 + boost-1_33_1 + boost-1_33_0 +) + +# +# Look for an installation. +# +FIND_PATH(Boost_INCLUDE_DIR NAMES boost/config.hpp PATH_SUFFIXES ${SUFFIX_FOR_PATH} PATHS + + # Look in other places. + ${BOOST_DIR_SEARCH} + + # Help the user find it if we cannot. + DOC "The ${BOOST_INCLUDE_PATH_DESCRIPTION}" +) + +# Assume we didn't find it. +SET(Boost_FOUND 0) + +# Now try to get the include and library path. +IF(Boost_INCLUDE_DIR) + + # Look for the boost library path. + # Note that the user may not have installed any libraries + # so it is quite possible the Boost_LIBRARY_PATH may not exist. + SET(Boost_LIBRARY_DIR ${Boost_INCLUDE_DIR}) + + IF("${Boost_LIBRARY_DIR}" MATCHES "boost-[0-9]+") + GET_FILENAME_COMPONENT(Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR} PATH) + ENDIF ("${Boost_LIBRARY_DIR}" MATCHES "boost-[0-9]+") + + IF("${Boost_LIBRARY_DIR}" MATCHES "/include$") + # Strip off the trailing "/include" in the path. + GET_FILENAME_COMPONENT(Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR} PATH) + ENDIF("${Boost_LIBRARY_DIR}" MATCHES "/include$") + + IF(EXISTS "${Boost_LIBRARY_DIR}/lib") + SET (Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR}/lib) + ELSE(EXISTS "${Boost_LIBRARY_DIR}/lib") + IF(EXISTS "${Boost_LIBRARY_DIR}/stage/lib") + SET(Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR}/stage/lib) + ELSE(EXISTS "${Boost_LIBRARY_DIR}/stage/lib") + SET(Boost_LIBRARY_DIR "") + ENDIF(EXISTS "${Boost_LIBRARY_DIR}/stage/lib") + ENDIF(EXISTS "${Boost_LIBRARY_DIR}/lib") + + IF(EXISTS "${Boost_INCLUDE_DIR}") + SET(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIR}) + # We have found boost. It is possible that the user has not + # compiled any libraries so we set Boost_FOUND to be true here. + SET(Boost_FOUND 1) + ENDIF(EXISTS "${Boost_INCLUDE_DIR}") + + IF(Boost_LIBRARY_DIR AND EXISTS "${Boost_LIBRARY_DIR}") + SET(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIR}) + ENDIF(Boost_LIBRARY_DIR AND EXISTS "${Boost_LIBRARY_DIR}") +ENDIF(Boost_INCLUDE_DIR) + +IF(NOT Boost_FOUND) + IF(NOT Boost_FIND_QUIETLY) + MESSAGE(STATUS "Boost was not found. ${BOOST_DIR_MESSAGE}") + ELSE(NOT Boost_FIND_QUIETLY) + IF(Boost_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Boost was not found. ${BOOST_DIR_MESSAGE}") + ENDIF(Boost_FIND_REQUIRED) + ENDIF(NOT Boost_FIND_QUIETLY) +ENDIF(NOT Boost_FOUND) + -- cgit v1.2.1 From 2a6501e50a7cdec210c2e8539bdee93019b4ab02 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 26 Apr 2008 22:33:46 +0000 Subject: -minor syncing with FindQt4.cmake from cmake cvs Alex svn path=/trunk/KDE/kdelibs/; revision=801584 --- modules/FindQt4.cmake | 92 ++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 73 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 9192be96..5b2fd56d 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -2,11 +2,11 @@ # This module can be used to find Qt4. # The most important issue is that the Qt4 qmake is available via the system path. # This qmake is then used to detect basically everything else. -# This module defines a number of key variables and macros. First is -# QT_USE_FILE which is the path to a CMake file that can be included to compile -# Qt 4 applications and libraries. By default, the QtCore and QtGui +# This module defines a number of key variables and macros. +# First is QT_USE_FILE which is the path to a CMake file that can be included +# to compile Qt 4 applications and libraries. By default, the QtCore and QtGui # libraries are loaded. This behavior can be changed by setting one or more -# of the following variables to true: +# of the following variables to true before doing INCLUDE(${QT_USE_FILE}): # QT_DONT_USE_QTCORE # QT_DONT_USE_QTGUI # QT_USE_QT3SUPPORT @@ -29,10 +29,21 @@ # QT_USE_QTWEBKIT # QT_USE_QTXMLPATTERNS # -# If you are using Qt4 via UseQt4.cmake instead of FIND_PACKAGE(Qt4), all the -# libraries required are stored in the variable QT_LIBRARIES. -# Add this variable to your TARGET_LINK_LIBRARIES. Includes and definitions -# needed for compiling Qt code are then already set up by including the QT_USE_FILE. +# The file pointed to by QT_USE_FILE will set up your compile environment +# by adding include directories, preprocessor defines, and populate a +# QT_LIBRARIES variable containing all the Qt libraries and their dependencies. +# Add the QT_LIBRARIES variable to your TARGET_LINK_LIBRARIES. +# +# Typical usage could be something like: +# FIND_PACKAGE(Qt4) +# SET(QT_USE_QTXML 1) +# INCLUDE(${QT_USE_FILE}) +# ADD_EXECUTABLE(myexe main.cpp) +# TARGET_LINK_LIBRARIES(myexe ${QT_LIBRARIES}) +# +# +# There are also some files that need processing by some Qt tools such as moc +# and uic. Listed below are macros that may be used to process those files. # # macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...) # create moc code from a list of files containing Qt class with @@ -49,8 +60,23 @@ # Options may be given to rcc, such as those found # when executing "rcc -help" # -# macro QT4_AUTOMOC(inputfile ... ) # macro QT4_GENERATE_MOC(inputfile outputfile ) +# creates a rule to run moc on infile and create outfile. +# Use this if for some reason QT4_WRAP_CPP() isn't appropriate, e.g. +# because you need a custom filename for the moc file or something similar. +# +# macro QT4_AUTOMOC(sourcefile1 sourcefile2 ... ) +# This macro is still experimental. +# It can be used to have moc automatically handled. +# So if you have the files foo.h and foo.cpp, and in foo.h a +# a class uses the Q_OBJECT macro, moc has to run on it. If you don't +# want to use QT4_WRAP_CPP() (which is reliable and mature), you can insert +# #include "foo.moc" +# in foo.cpp and then give foo.cpp as argument to QT4_AUTOMOC(). This will the +# scan all listed files at cmake-time for such included moc files and if it finds +# them cause a rule to be generated to run moc at build time on the +# accompanying header file foo.h. +# If a source file has the SKIP_AUTOMOC property set it will be ignored by this macro. # # macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename) # create a the interface header and implementation files with the @@ -114,7 +140,12 @@ # always in this variable even if NOTFOUND, # all other INCLUDE_DIRS are # only added if they are found. +# You do not need to use this if you include QT_USE_FILE. # +# +# Include directories for the Qt modules are listed here. +# You do not need to use these variables if you include QT_USE_FILE. +# # QT_INCLUDE_DIR Path to "include" of Qt4 # QT_QT_INCLUDE_DIR Path to "include/Qt" # QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" @@ -133,8 +164,8 @@ # QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" # QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" +# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" # QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit" # QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" # @@ -200,6 +231,8 @@ # QT_RCC_EXECUTABLE Where to find the rcc tool # QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. # QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. +# QT_LUPDATE_EXECUTABLE Where to find the lupdate tool. +# QT_LRELEASE_EXECUTABLE Where to find the lrelease tool. # # QT_DOC_DIR Path to "doc" of Qt4 # QT_MKSPECS_DIR Path to "mkspecs" of Qt4 @@ -544,11 +577,12 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) - - # Set QT_QTMOTIF_INCLUDE_DIR IF(Q_WS_X11) - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH ) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif + PATHS + ${QT_INCLUDE_DIR}/QtMotif + NO_DEFAULT_PATH ) ENDIF(Q_WS_X11) # Set QT_QTNETWORK_INCLUDE_DIR @@ -617,7 +651,6 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) - # Set QT_QTDBUS_INCLUDE_DIR FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus PATHS @@ -625,13 +658,15 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtDBus NO_DEFAULT_PATH ) + # Set QT_QTASSISTANTCLIENT_INCLUDE_DIR - FIND_PATH(QT_QTASSISTANTCLIENT_INCLUDE_DIR QtAssistantClient + FIND_PATH(QT_QTASSISTANTCLIENT_INCLUDE_DIR QAssistantClient PATHS ${QT_INCLUDE_DIR}/QtAssistant ${QT_HEADERS_DIR}/QtAssistant NO_DEFAULT_PATH ) + # Set QT_QTHELP_INCLUDE_DIR FIND_PATH(QT_QTHELP_INCLUDE_DIR QtHelp PATHS @@ -639,6 +674,7 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtHelp NO_DEFAULT_PATH ) + # Set QT_QTWEBKIT_INCLUDE_DIR FIND_PATH(QT_QTWEBKIT_INCLUDE_DIR QtWebKit PATHS @@ -653,6 +689,7 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtXmlPatterns NO_DEFAULT_PATH ) + # Make variables changeble to the advanced user MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) @@ -943,9 +980,9 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) _QT4_ADJUST_LIB_VARS(QTDBUS) - _QT4_ADJUST_LIB_VARS(QTWEBKIT) _QT4_ADJUST_LIB_VARS(QTASSISTANTCLIENT) _QT4_ADJUST_LIB_VARS(QTHELP) + _QT4_ADJUST_LIB_VARS(QTWEBKIT) _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) # platform dependent libraries @@ -969,8 +1006,10 @@ IF (QT4_QMAKE_FOUND) QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") + # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) + # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) @@ -1003,6 +1042,18 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + FIND_PROGRAM(QT_LUPDATE_EXECUTABLE + NAMES lupdate + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_LRELEASE_EXECUTABLE + NAMES lrelease + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + IF (QT_MOC_EXECUTABLE) SET(QT_WRAP_CPP "YES") ENDIF (QT_MOC_EXECUTABLE) @@ -1013,13 +1064,16 @@ IF (QT4_QMAKE_FOUND) - MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE) + MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE + QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE + QT_LUPDATE_EXECUTABLE QT_LRELEASE_EXECUTABLE) ###################################### # # Macros for building Qt files # ###################################### + MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options) SET(${_qt4_files}) SET(${_qt4_options}) @@ -1257,7 +1311,7 @@ IF (QT4_QMAKE_FOUND) GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # here. this is required to make bouic work correctly: + # This is required to make uic work correctly: # we need to add generated .cpp files to the sources (to compile them), # but we cannot let automoc handle them, as the .cpp files don't exist yet when # cmake is run for the very first time on them -> however the .cpp files might -- cgit v1.2.1 From 0dbc5e2878e907c671d7460920bf57d1368a37c3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 26 Apr 2008 22:54:21 +0000 Subject: more syncing with cmake cvs Alex svn path=/trunk/KDE/kdelibs/; revision=801586 --- modules/FindQt4.cmake | 96 ++++++++++++++++++++++++++++++++++----------------- 1 file changed, 64 insertions(+), 32 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 5b2fd56d..b1d28995 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -28,6 +28,7 @@ # QT_USE_QTHELP # QT_USE_QTWEBKIT # QT_USE_QTXMLPATTERNS +# QT_USE_PHONON # # The file pointed to by QT_USE_FILE will set up your compile environment # by adding include directories, preprocessor defines, and populate a @@ -131,9 +132,15 @@ # QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found. # QT_QTHELP_FOUND True if QtHelp was found. # QT_QTWEBKIT_FOUND True if QtWebKit was found. -# QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. -# +# QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. +# QT_PHONON_FOUND True if phonon was found. +# +# # QT_DEFINITIONS Definitions to use when compiling code that uses Qt. +# You do not need to use this if you include QT_USE_FILE. +# The QT_USE_FILE will also define QT_DEBUG and QT_NO_DEBUG +# to fit your current build type. Those are not contained +# in QT_DEFINITIONS. # # QT_INCLUDES List of paths to all include directories of # Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are @@ -167,7 +174,8 @@ # QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant" # QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" # QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit" -# QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" +# QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" +# QT_PHONON_INCLUDE_DIR Path to "include/phonon" # # QT_LIBRARY_DIR Path to "lib" of Qt4 # @@ -220,6 +228,8 @@ # The QtWebKit library: QT_QTWEBKIT_LIBRARY # # The QtXmlPatterns library: QT_QTXMLPATTERNS_LIBRARY +# +# The Phonon library: QT_PHONON_LIBRARY @@ -395,6 +405,8 @@ IF (QT4_QMAKE_FOUND) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_LIBS" OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) + # make sure we have / and not \ as qmake gives on windows + FILE(TO_CMAKE_PATH "${QT_LIBRARY_DIR_TMP}" QT_LIBRARY_DIR_TMP) IF(EXISTS "${QT_LIBRARY_DIR_TMP}") SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") @@ -416,48 +428,60 @@ IF (QT4_QMAKE_FOUND) ENDIF (APPLE) # ask qmake for the binary dir - IF (NOT QT_BINARY_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) + ARGS "-query QT_INSTALL_BINS" + OUTPUT_VARIABLE qt_bins ) + # make sure we have / and not \ as qmake gives on windows + FILE(TO_CMAKE_PATH "${qt_bins}" qt_bins) SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (NOT QT_BINARY_DIR) + ENDIF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR) # ask qmake for the include dir - IF (NOT QT_HEADERS_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) + OUTPUT_VARIABLE qt_headers ) + # make sure we have / and not \ as qmake gives on windows + FILE(TO_CMAKE_PATH "${qt_headers}" qt_headers) SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(NOT QT_HEADERS_DIR) + ENDIF(QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR) # ask qmake for the documentation directory - IF (NOT QT_DOC_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_DOCS" OUTPUT_VARIABLE qt_doc_dir ) + # make sure we have / and not \ as qmake gives on windows + FILE(TO_CMAKE_PATH "${qt_doc_dir}" qt_doc_dir) SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") - ENDIF (NOT QT_DOC_DIR) + ENDIF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR) # ask qmake for the mkspecs directory - IF (NOT QT_MKSPECS_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QMAKE_MKSPECS" OUTPUT_VARIABLE qt_mkspecs_dirs ) - STRING(REPLACE ":" ";" qt_mkspecs_dirs "${qt_mkspecs_dirs}") + # do not replace : on windows as it might be a drive letter + # and windows should already use ; as a separator + IF(UNIX) + STRING(REPLACE ":" ";" qt_mkspecs_dirs "${qt_mkspecs_dirs}") + ENDIF(UNIX) FIND_PATH(QT_MKSPECS_DIR qconfig.pri PATHS ${qt_mkspecs_dirs} DOC "The location of the Qt mkspecs containing qconfig.pri" NO_DEFAULT_PATH ) - ENDIF (NOT QT_MKSPECS_DIR) + ENDIF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR) # ask qmake for the plugins directory - IF (NOT QT_PLUGINS_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_PLUGINS" OUTPUT_VARIABLE qt_plugins_dir ) + # make sure we have / and not \ as qmake gives on windows + FILE(TO_CMAKE_PATH "${qt_plugins_dir}" qt_plugins_dir) SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") - ENDIF (NOT QT_PLUGINS_DIR) + ENDIF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR) ######################################## # # Setting the INCLUDE-Variables @@ -682,6 +706,7 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtWebKit NO_DEFAULT_PATH ) + # Set QT_QTXMLPATTERNS_INCLUDE_DIR FIND_PATH(QT_QTXMLPATTERNS_INCLUDE_DIR QtXmlPatterns PATHS @@ -689,13 +714,19 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtXmlPatterns NO_DEFAULT_PATH ) + + # Set QT_PHONON_INCLUDE_DIR + FIND_PATH(QT_PHONON_INCLUDE_DIR phonon + PATHS + ${QT_INCLUDE_DIR}/phonon + NO_DEFAULT_PATH + ) # Make variables changeble to the advanced user MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR}) - + SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) ######################################## # @@ -857,6 +888,8 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTXMLPATTERNS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_PHONON_LIBRARY NAMES phonon phonon4 phonon_debug phonond4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + IF(MSVC) FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -984,6 +1017,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTHELP) _QT4_ADJUST_LIB_VARS(QTWEBKIT) _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) + _QT4_ADJUST_LIB_VARS(PHONON) # platform dependent libraries IF(Q_WS_X11) @@ -1079,16 +1113,16 @@ IF (QT4_QMAKE_FOUND) SET(${_qt4_options}) SET(_QT4_DOING_OPTIONS FALSE) FOREACH(_currentArg ${ARGN}) - IF ("${_currentArg}" STREQUAL "OPTIONS") - SET(_QT4_DOING_OPTIONS TRUE) - ELSE ("${_currentArg}" STREQUAL "OPTIONS") - IF(_QT4_DOING_OPTIONS) - LIST(APPEND ${_qt4_options} "${_currentArg}") - ELSE(_QT4_DOING_OPTIONS) - LIST(APPEND ${_qt4_files} "${_currentArg}") - ENDIF(_QT4_DOING_OPTIONS) - ENDIF ("${_currentArg}" STREQUAL "OPTIONS") - ENDFOREACH(_currentArg) + IF ("${_currentArg}" STREQUAL "OPTIONS") + SET(_QT4_DOING_OPTIONS TRUE) + ELSE ("${_currentArg}" STREQUAL "OPTIONS") + IF(_QT4_DOING_OPTIONS) + LIST(APPEND ${_qt4_options} "${_currentArg}") + ELSE(_QT4_DOING_OPTIONS) + LIST(APPEND ${_qt4_files} "${_currentArg}") + ENDIF(_QT4_DOING_OPTIONS) + ENDIF ("${_currentArg}" STREQUAL "OPTIONS") + ENDFOREACH(_currentArg) ENDMACRO (QT4_EXTRACT_OPTIONS) MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) @@ -1131,7 +1165,6 @@ IF (QT4_QMAKE_FOUND) # QT4_WRAP_CPP(outfiles inputfile ... ) - # TODO perhaps add support for -D, -U and other minor options MACRO (QT4_WRAP_CPP outfiles ) # get include dirs @@ -1173,7 +1206,6 @@ IF (QT4_QMAKE_FOUND) # QT4_ADD_RESOURCES(outfiles inputfile ... ) - # TODO perhaps consider adding support for compression and root options to rcc MACRO (QT4_ADD_RESOURCES outfiles ) QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN}) @@ -1254,7 +1286,7 @@ IF (QT4_QMAKE_FOUND) GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - + IF (_customName) SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) ELSE (_customName) -- cgit v1.2.1 From 7dc75baf29c628fddc1f29c1e5fdf41073ac01f4 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 28 Apr 2008 17:49:49 +0000 Subject: major rewrite: - Nepomuk depends on Soprano, so we check for Soprano too, if not already checked for. IOW: you no longer need to check for Soprano separately first in order to successfully use Nepomuk. - use FindPackageHandleStandardArgs() svn path=/trunk/KDE/kdelibs/; revision=802159 --- modules/FindNepomuk.cmake | 79 ++++++++++++++++++++++++++--------------------- 1 file changed, 43 insertions(+), 36 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index c8c4aec5..1aa42408 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -1,44 +1,51 @@ # Once done this will define # +# Nepomuk requires Soprano, so this module checks for Soprano too. +# # NEPOMUK_FOUND - system has Nepomuk # NEPOMUK_INCLUDE_DIR - the Nepomuk include directory # NEPOMUK_LIBRARIES - Link these to use Nepomuk # NEPOMUK_DEFINITIONS - Compiler switches required for using Nepomuk # -FIND_PATH(NEPOMUK_INCLUDE_DIR - NAMES - nepomuk/resource.h - PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} - ) - -FIND_LIBRARY(NEPOMUK_LIBRARY - NAMES - nepomuk - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - -set(NEPOMUK_LIBRARIES ${NEPOMUK_LIBRARY}) - -if(NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) - set(Nepomuk_FOUND TRUE) -endif(NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) - -if(Nepomuk_FOUND) - if(NOT Nepomuk_FIND_QUIETLY) - message(STATUS "Found Nepomuk: ${NEPOMUK_LIBRARIES}") - endif(NOT Nepomuk_FIND_QUIETLY) -else(Nepomuk_FOUND) - if(Nepomuk_FIND_REQUIRED) - if(NOT NEPOMUK_INCLUDE_DIR) - message(FATAL_ERROR "Could not find Nepomuk includes.") - endif(NOT NEPOMUK_INCLUDE_DIR) - if(NOT NEPOMUK_LIBRARIES) - message(FATAL_ERROR "Could not find Nepomuk library.") - endif(NOT NEPOMUK_LIBRARIES) - endif(Nepomuk_FIND_REQUIRED) -endif(Nepomuk_FOUND) +if (NOT DEFINED Soprano_FOUND) + macro_optional_find_package(Soprano) + macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk") +endif (NOT DEFINED Soprano_FOUND) + +if (Soprano_FOUND) + + set (NEPOMUK_FIND_REQUIRED ${Nepomuk_FIND_REQUIRED}) + if (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + + # Already in cache, be silent + set(NEPOMUK_FIND_QUIETLY TRUE) + + else (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + find_path(NEPOMUK_INCLUDE_DIR + NAMES + nepomuk/resource.h + PATHS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + + find_library(NEPOMUK_LIBRARIES + NAMES + nepomuk + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES) + + endif (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(NEPOMUK DEFAULT_MSG + NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR) + #to retain backward compatibility + set (Nepomuk_FOUND ${NEPOMUK_FOUND}) + +endif (Soprano_FOUND) -- cgit v1.2.1 From c5df6012928ed05055fe0cd872b0fd534abfbf0b Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 8 May 2008 17:48:47 +0000 Subject: add two more include dirs can't we switch to FindBoost from cmake 2.6.0? CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=805536 --- modules/FindBoost.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index 85ec1ff2..5b685ef9 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -94,8 +94,10 @@ ENDIF(WIN32) SET(SUFFIX_FOR_PATH boost-1_34_1 boost-1_34_0 + boost-1_34 boost-1_33_1 boost-1_33_0 + boost-1_33 ) # -- cgit v1.2.1 From d4366ab703662b705ad10840c5beef47dfe8297b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 10 May 2008 10:13:29 +0000 Subject: -rename KDE4_GET/SET_CUSTOM_PROPERTY() to _KDE4..., so they are clearly marked as internal and not for public use Alex svn path=/trunk/KDE/kdelibs/; revision=806159 --- modules/KDE4Macros.cmake | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d2b52445..f193010d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -4,8 +4,8 @@ # KDE4_ADD_UI_FILES # KDE4_ADD_UI3_FILES # KDE4_ADD_KCFG_FILES -# KDE4_SET_CUSTOM_TARGET_PROPERTY -# KDE4_GET_CUSTOM_TARGET_PROPERTY +# _KDE4_SET_CUSTOM_TARGET_PROPERTY +# _KDE4_GET_CUSTOM_TARGET_PROPERTY # KDE4_MOC_HEADERS # KDE4_HANDLE_AUTOMOC # KDE4_CREATE_FINAL_FILES @@ -148,16 +148,16 @@ macro (KDE4_ADD_UI3_FILES _sources ) endforeach (_current_FILE) endmacro (KDE4_ADD_UI3_FILES) -macro (KDE4_SET_CUSTOM_TARGET_PROPERTY _target_name _property_name _property) +macro (_KDE4_SET_CUSTOM_TARGET_PROPERTY _target_name _property_name _property) string(REGEX REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(_kde4_${_dir}_${_target_name}_${_property_name} "${_property}") -endmacro (KDE4_SET_CUSTOM_TARGET_PROPERTY) +endmacro (_KDE4_SET_CUSTOM_TARGET_PROPERTY) -macro (KDE4_GET_CUSTOM_TARGET_PROPERTY _var _target_name _property_name) +macro (_KDE4_GET_CUSTOM_TARGET_PROPERTY _var _target_name _property_name) string(REGEX REPLACE "[/ ]" "_" _dir "${CMAKE_CURRENT_SOURCE_DIR}") set(${_var} "${_kde4_${_dir}_${_target_name}_${_property_name}}") -endmacro (KDE4_GET_CUSTOM_TARGET_PROPERTY) +endmacro (_KDE4_GET_CUSTOM_TARGET_PROPERTY) macro (KDE4_MOC_HEADERS _target_NAME) @@ -173,7 +173,7 @@ macro (KDE4_MOC_HEADERS _target_NAME) # need to create moc_.cpp file using kde4automoc.cmake # and add it to the target if(_headers_to_moc) - kde4_set_custom_target_property(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") + _kde4_set_custom_target_property(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") endif(_headers_to_moc) endmacro (KDE4_MOC_HEADERS) @@ -182,7 +182,7 @@ macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) set(_moc_headers) # first list all explicitly set headers - kde4_get_custom_target_property(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) + _kde4_get_custom_target_property(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) if(NOT _headers_to_moc STREQUAL "NOTFOUND") foreach(_header_to_moc ${_headers_to_moc}) get_filename_component(_abs_header ${_header_to_moc} ABSOLUTE) @@ -246,10 +246,6 @@ macro(KDE4_INSTALL_TS_FILES _lang _sdir) endforeach(_current_TS_FILES) endmacro(KDE4_INSTALL_TS_FILES) -macro (KDE4_INSTALL_HANDBOOK _lang) - message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") -endmacro (KDE4_INSTALL_HANDBOOK ) - macro (KDE4_CREATE_HANDBOOK _docbook) get_filename_component(_input ${_docbook} ABSOLUTE) @@ -1137,3 +1133,15 @@ macro (KDE4_ADD_APP_ICON appsources pattern) endmacro (KDE4_ADD_APP_ICON) +macro (KDE4_INSTALL_HANDBOOK _lang) + message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") +endmacro (KDE4_INSTALL_HANDBOOK ) + +macro (KDE4_SET_CUSTOM_TARGET_PROPERTY) + message(FATAL_ERROR "KDE4_SET_CUSTOM_TARGET_PROPERTY() is deprecated, just use a simple variable instead") +endmacro (KDE4_SET_CUSTOM_TARGET_PROPERTY) + + +macro (KDE4_GET_CUSTOM_TARGET_PROPERTY) + message(FATAL_ERROR "KDE4_GET_CUSTOM_TARGET_PROPERTY() is deprecated, just use a simple variable instead") +endmacro (KDE4_GET_CUSTOM_TARGET_PROPERTY) -- cgit v1.2.1 From e679996e1a351e33d29c532e7871f47d59a3a0e3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 10 May 2008 21:48:49 +0000 Subject: -use automoc4 from kdesupport if available, otherwise fallback to the one from kdelibs. In a few weeks automoc4 from kdesupport will be required. Alex CCMAIL: kretz@kde.org svn path=/trunk/KDE/kdelibs/; revision=806300 --- modules/FindAutomoc4.cmake | 52 ++++++++++++++ modules/FindKDE4Internal.cmake | 37 ++++++++-- modules/KDE4Macros.cmake | 150 ++++++++++++++++++++++------------------- 3 files changed, 165 insertions(+), 74 deletions(-) create mode 100644 modules/FindAutomoc4.cmake (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake new file mode 100644 index 00000000..03a90974 --- /dev/null +++ b/modules/FindAutomoc4.cmake @@ -0,0 +1,52 @@ +# - Try to find automoc4 +# Once done this will define +# +# AUTOMOC4_FOUND - automoc4 has been found +# AUTOMOC4_EXECUTABLE - the automoc4 tool +# +# It also adds the following macros +# AUTOMOC4( ) +# Use this to run automoc4 on all files contained in the list . +# +# AUTOMOC4_MOC_HEADERS( header1.h header2.h) +# Use this to add more header files to be processed with automoc4. + + +# Copyright (c) 2008, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +# check if we are inside KDESupport and automoc is enabled +if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + # when building this project as part of kdesupport + set(AUTOMOC4_CONFIG_FILE "${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") +else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + # when building this project outside kdesupport + find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake + PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib + NO_DEFAULT_PATH ) +endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + + +if(AUTOMOC4_CONFIG_FILE) + include(${AUTOMOC4_CONFIG_FILE}) + set(AUTOMOC4_FOUND TRUE) +else(AUTOMOC4_CONFIG_FILE) + set(AUTOMOC4_FOUND FALSE) +endif(AUTOMOC4_CONFIG_FILE) + +if (AUTOMOC4_FOUND) + if (NOT Automoc4_FIND_QUIETLY) + message(STATUS "Found Automoc4: ${AUTOMOC4_EXECUTABLE}") + endif (NOT Automoc4_FIND_QUIETLY) +else (AUTOMOC4_FOUND) + if (Automoc4_FIND_REQUIRED) + message(FATAL_ERROR "Did not find automoc4 (part of kdesupport).") + else (Automoc4_FIND_REQUIRED) + if (NOT Automoc4_FIND_QUIETLY) + message(STATUS "Did not find automoc4 (part of kdesupport).") + endif (NOT Automoc4_FIND_QUIETLY) + endif (Automoc4_FIND_REQUIRED) +endif (AUTOMOC4_FOUND) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6e8bad88..cee539c3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -228,6 +228,10 @@ set(QT_MIN_VERSION "4.4.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) +# automoc4 (from kdesupport) is not yet required, but will be in June +# until then still automoc from kdelibs is used as fallback, Alex +find_package(Automoc4) + # Perl is required for building KDE software, find_package(Perl REQUIRED) @@ -275,13 +279,27 @@ if (_kdeBootStrapping) set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc ) + + # use automoc4 from kdesupport if it has been found + if(AUTOMOC4_EXECUTABLE) + set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) + else(AUTOMOC4_EXECUTABLE) + set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc ) + endif(AUTOMOC4_EXECUTABLE) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) - set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc.shell ) + + # use automoc4 from kdesupport if it has been found + if(AUTOMOC4_EXECUTABLE) + set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) + else(AUTOMOC4_EXECUTABLE) + set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc.shell ) + endif(AUTOMOC4_EXECUTABLE) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) endif (WIN32) @@ -290,10 +308,15 @@ if (_kdeBootStrapping) # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) - set( _KDE4_AUTOMOC_EXECUTABLE_DEP kde4automoc) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) + if(AUTOMOC4_EXECUTABLE) + set( _KDE4_AUTOMOC_EXECUTABLE_DEP) + else(AUTOMOC4_EXECUTABLE) + set( _KDE4_AUTOMOC_EXECUTABLE_DEP kde4automoc) + endif(AUTOMOC4_EXECUTABLE) + set(KDE4_INSTALLED_VERSION_OK TRUE) else (_kdeBootStrapping) @@ -431,8 +454,12 @@ else (_kdeBootStrapping) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) - find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc ) + if (AUTOMOC4_EXECUTABLE) + set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}") + else (AUTOMOC4_EXECUTABLE) + find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) + find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc ) + endif (AUTOMOC4_EXECUTABLE) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f193010d..f5658620 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -161,78 +161,90 @@ endmacro (_KDE4_GET_CUSTOM_TARGET_PROPERTY) macro (KDE4_MOC_HEADERS _target_NAME) - set (_headers_to_moc) - foreach (_current_FILE ${ARGN}) - get_filename_component(_suffix "${_current_FILE}" EXT) - if (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - list(APPEND _headers_to_moc ${_current_FILE}) - else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - message(STATUS "KDE4_MOC_HEADERS: ignoring non-header file ${_current_FILE}") - endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - endforeach (_current_FILE) - # need to create moc_.cpp file using kde4automoc.cmake - # and add it to the target - if(_headers_to_moc) - _kde4_set_custom_target_property(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") - endif(_headers_to_moc) + # if automoc4 from kdesupport has been found, use the macro provided there, + # otherwise fall back to the kdelibs one + if (AUTOMOC4_EXECUTABLE) + AUTOMOC4_MOC_HEADERS(${_target_NAME} ${ARGN}) + else (AUTOMOC4_EXECUTABLE) + set (_headers_to_moc) + foreach (_current_FILE ${ARGN}) + get_filename_component(_suffix "${_current_FILE}" EXT) + if (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + list(APPEND _headers_to_moc ${_current_FILE}) + else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + message(STATUS "KDE4_MOC_HEADERS: ignoring non-header file ${_current_FILE}") + endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") + endforeach (_current_FILE) + # need to create moc_.cpp file using kde4automoc.cmake + # and add it to the target + if(_headers_to_moc) + _kde4_set_custom_target_property(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") + endif(_headers_to_moc) + endif (AUTOMOC4_EXECUTABLE) endmacro (KDE4_MOC_HEADERS) macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) - set(_moc_files) - set(_moc_headers) - - # first list all explicitly set headers - _kde4_get_custom_target_property(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) - if(NOT _headers_to_moc STREQUAL "NOTFOUND") - foreach(_header_to_moc ${_headers_to_moc}) - get_filename_component(_abs_header ${_header_to_moc} ABSOLUTE) - list(APPEND _moc_files ${_abs_header}) - list(APPEND _moc_headers ${_abs_header}) - endforeach(_header_to_moc) - endif(NOT _headers_to_moc STREQUAL "NOTFOUND") - - # now add all the sources for the automoc - foreach (_current_FILE ${${_SRCS}}) - get_filename_component(_abs_current_FILE "${_current_FILE}" ABSOLUTE) - get_source_file_property(_skip "${_abs_current_FILE}" SKIP_AUTOMOC) - get_source_file_property(_generated "${_abs_current_FILE}" GENERATED) - - if(NOT _generated AND NOT _skip) - get_filename_component(_suffix "${_current_FILE}" EXT) - # skip every source file that's not C++ - if(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") - get_filename_component(_basename "${_current_FILE}" NAME_WE) - get_filename_component(_abs_path "${_abs_current_FILE}" PATH) - set(_header "${_abs_path}/${_basename}.h") - if(EXISTS "${_header}") - list(APPEND _moc_headers ${_header}) - endif(EXISTS "${_header}") - set(_pheader "${_abs_path}/${_basename}_p.h") - if(EXISTS "${_pheader}") - list(APPEND _moc_headers ${_pheader}) - endif(EXISTS "${_pheader}") - list(APPEND _moc_files ${_abs_current_FILE}) - endif(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") - endif(NOT _generated AND NOT _skip) - endforeach (_current_FILE) - - if(_moc_files) - set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") - get_directory_property(_moc_incs INCLUDE_DIRECTORIES) - configure_file(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) - add_custom_command(OUTPUT ${_automoc_source} - COMMAND ${KDE4_AUTOMOC_EXECUTABLE} - ${_automoc_source} - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} - ${QT_MOC_EXECUTABLE} - DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} - ) - # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file - # problem: the whole target is recompiled when the automoc.cpp file is touched - # set_source_files_properties(${${_SRCS}} PROPERTIES OBJECT_DEPENDS ${_automoc_source}) - set(${_SRCS} ${_automoc_source} ${${_SRCS}}) - endif(_moc_files) + # if automoc4 from kdesupport has been found, use the macro provided there, + # otherwise fall back to the kdelibs one + if (AUTOMOC4_EXECUTABLE) + AUTOMOC4(${_target_NAME} ${_SRCS}) + else (AUTOMOC4_EXECUTABLE) + set(_moc_files) + set(_moc_headers) + + # first list all explicitly set headers + _kde4_get_custom_target_property(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) + if(NOT _headers_to_moc STREQUAL "NOTFOUND") + foreach(_header_to_moc ${_headers_to_moc}) + get_filename_component(_abs_header ${_header_to_moc} ABSOLUTE) + list(APPEND _moc_files ${_abs_header}) + list(APPEND _moc_headers ${_abs_header}) + endforeach(_header_to_moc) + endif(NOT _headers_to_moc STREQUAL "NOTFOUND") + + # now add all the sources for the automoc + foreach (_current_FILE ${${_SRCS}}) + get_filename_component(_abs_current_FILE "${_current_FILE}" ABSOLUTE) + get_source_file_property(_skip "${_abs_current_FILE}" SKIP_AUTOMOC) + get_source_file_property(_generated "${_abs_current_FILE}" GENERATED) + + if(NOT _generated AND NOT _skip) + get_filename_component(_suffix "${_current_FILE}" EXT) + # skip every source file that's not C++ + if(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") + get_filename_component(_basename "${_current_FILE}" NAME_WE) + get_filename_component(_abs_path "${_abs_current_FILE}" PATH) + set(_header "${_abs_path}/${_basename}.h") + if(EXISTS "${_header}") + list(APPEND _moc_headers ${_header}) + endif(EXISTS "${_header}") + set(_pheader "${_abs_path}/${_basename}_p.h") + if(EXISTS "${_pheader}") + list(APPEND _moc_headers ${_pheader}) + endif(EXISTS "${_pheader}") + list(APPEND _moc_files ${_abs_current_FILE}) + endif(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") + endif(NOT _generated AND NOT _skip) + endforeach (_current_FILE) + + if(_moc_files) + set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") + get_directory_property(_moc_incs INCLUDE_DIRECTORIES) + configure_file(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) + add_custom_command(OUTPUT ${_automoc_source} + COMMAND ${KDE4_AUTOMOC_EXECUTABLE} + ${_automoc_source} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${QT_MOC_EXECUTABLE} + DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} + ) + # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file + # problem: the whole target is recompiled when the automoc.cpp file is touched + # set_source_files_properties(${${_SRCS}} PROPERTIES OBJECT_DEPENDS ${_automoc_source}) + set(${_SRCS} ${_automoc_source} ${${_SRCS}}) + endif(_moc_files) + endif (AUTOMOC4_EXECUTABLE) endmacro(KDE4_HANDLE_AUTOMOC) macro(KDE4_INSTALL_TS_FILES _lang _sdir) -- cgit v1.2.1 From 6f7e0c33efa62e9ba227347f7a162ddae317ec67 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 14 May 2008 15:39:57 +0000 Subject: the _dummy.cpp file for kdeinit executables doesn't need to have automoc4 to run on it svn path=/trunk/KDE/kdelibs/; revision=807733 --- modules/KDE4Macros.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f5658620..b7eb6ad7 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -727,6 +727,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) kde4_check_executable_params(_SRCS _nogui _uninst _test ${ARGN}) configure_file(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp PROPERTIES SKIP_AUTOMOC TRUE) # under Windows, build a normal executable and additionally a dummy kdeinit4_foo.lib, whose only purpose on windows is to # keep the linking logic from the CMakeLists.txt on UNIX working (under UNIX all necessary libs are linked against the kdeinit # library instead against the executable, under windows we want to have everything in the executable, but for compatibility we have to -- cgit v1.2.1 From 69f2d309bb4d152f883e0fcf836c5bb5b0b0fce8 Mon Sep 17 00:00:00 2001 From: Jos van den Oever Date: Wed, 14 May 2008 20:05:24 +0000 Subject: We need at least version 0.5.9 because of some serious bug fixes. svn path=/trunk/KDE/kdelibs/; revision=807822 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 12373860..a3725a90 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -15,7 +15,7 @@ include(FindLibraryWithDebug) if(NOT STRIGI_MIN_VERSION) - set(STRIGI_MIN_VERSION "0.5.5") + set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) if (WIN32) -- cgit v1.2.1 From 24e484499eef4c7c3339ae084ab13bf1bc42cc71 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 20 May 2008 14:35:32 +0000 Subject: perform discovery on X11/SM. svn path=/trunk/KDE/kdelibs/; revision=810354 --- modules/FindX11.cmake | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 193723bc..27702886 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -5,7 +5,8 @@ # X11_LIBRARIES - link against these to use X11 # # and also the following more fine grained variables: -# Include paths: X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND +# X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND +# X11_SM_INCLUDE_PATH, X11_SM_LIB, X11_SM_FOUND # X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND # X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND # X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND @@ -72,6 +73,7 @@ IF (UNIX) # Solaris lacks XKBrules.h, so we should skip kxkbd there. FIND_PATH(X11_ICE_INCLUDE_PATH X11/ICE/ICE.h ${X11_INC_SEARCH_PATH}) + FIND_PATH(X11_SM_INCLUDE_PATH X11/SM/SM.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH}) FIND_PATH(X11_Xau_INCLUDE_PATH X11/Xauth.h ${X11_INC_SEARCH_PATH}) @@ -106,6 +108,7 @@ IF (UNIX) # Find additional X libraries. Keep list sorted by library name. FIND_LIBRARY(X11_ICE_LIB ICE ${X11_LIB_SEARCH_PATH}) + FIND_LIBRARY(X11_SM_LIB SM ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH}) FIND_LIBRARY(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH}) @@ -288,6 +291,10 @@ IF (UNIX) SET(X11_ICE_FOUND TRUE) ENDIF(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH) + IF(X11_SM_LIB AND X11_SM_INCLUDE_PATH) + SET(X11_SM_FOUND TRUE) + ENDIF(X11_SM_LIB AND X11_SM_INCLUDE_PATH) + # Deprecated variable for backwards compatibility with CMake 1.4 IF (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) SET(X11_FOUND 1) @@ -361,11 +368,15 @@ IF (UNIX) ENDIF(NOT CMAKE_HAVE_SHMAT) ENDIF($ENV{ISC} MATCHES "^yes$") + IF (X11_SM_FOUND) + SET (X11_X_PRE_LIBS ${X11_X_PRE_LIBS} ${X11_SM_LIB}) + ENDIF (X11_SM_FOUND) + IF (X11_ICE_FOUND) CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}" CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) IF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) - SET (X11_X_PRE_LIBS -lSM ${X11_ICE_LIB}) + SET (X11_X_PRE_LIBS ${X11_X_PRE_LIBS} ${X11_ICE_LIB}) ENDIF(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER) ENDIF (X11_ICE_FOUND) @@ -433,6 +444,8 @@ IF (UNIX) X11_XShm_INCLUDE_PATH X11_ICE_LIB X11_ICE_INCLUDE_PATH + X11_SM_LIB + X11_SM_INCLUDE_PATH X11_XSync_INCLUDE_PATH ) SET(CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK_SAVE}) -- cgit v1.2.1 From cca7ec933a6e86c4d2b9aa446e47bd33b5cd243b Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 20 May 2008 14:59:38 +0000 Subject: be extra careful about libICE and libSM prerequisites since many distros have separate development packages for these. complain if they aren't installed. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=810372 --- modules/FindX11.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 27702886..bb48035c 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -295,6 +295,14 @@ IF (UNIX) SET(X11_SM_FOUND TRUE) ENDIF(X11_SM_LIB AND X11_SM_INCLUDE_PATH) + IF(NOT X11_ICE_FOUND) + MESSAGE(FATAL_ERROR "\nThe X11 Inter-Client Exchange (ICE) Library could not be found.\nCannot continue. Please install libICE.\n") + ENDIF(NOT X11_ICE_FOUND) + + IF(NOT X11_SM_FOUND) + MESSAGE(FATAL_ERROR "\nThe X11 Session Management (SM) Library could not be found.\nCannot contineu. Please install libSM.\n") + ENDIF(NOT X11_SM_FOUND) + # Deprecated variable for backwards compatibility with CMake 1.4 IF (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) SET(X11_FOUND 1) -- cgit v1.2.1 From 0244558bd2d1162f1b0b027900b964aceac14ee2 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 20 May 2008 21:28:28 +0000 Subject: revert exiting if SM or ICE isn't found. svn path=/trunk/KDE/kdelibs/; revision=810500 --- modules/FindX11.cmake | 8 -------- 1 file changed, 8 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index bb48035c..27702886 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -295,14 +295,6 @@ IF (UNIX) SET(X11_SM_FOUND TRUE) ENDIF(X11_SM_LIB AND X11_SM_INCLUDE_PATH) - IF(NOT X11_ICE_FOUND) - MESSAGE(FATAL_ERROR "\nThe X11 Inter-Client Exchange (ICE) Library could not be found.\nCannot continue. Please install libICE.\n") - ENDIF(NOT X11_ICE_FOUND) - - IF(NOT X11_SM_FOUND) - MESSAGE(FATAL_ERROR "\nThe X11 Session Management (SM) Library could not be found.\nCannot contineu. Please install libSM.\n") - ENDIF(NOT X11_SM_FOUND) - # Deprecated variable for backwards compatibility with CMake 1.4 IF (X11_X11_INCLUDE_PATH AND X11_LIBRARIES) SET(X11_FOUND 1) -- cgit v1.2.1 From 083ee107ade731c3a0a78f51769d8ed6a959a76d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 22 May 2008 14:20:39 +0000 Subject: Search nepomuk/global.h which is in kde 4.1 and not in kde 4.0 because some guy has a kde4.0 with headers, but kde4.1 doesn't compile (kdebase/dolphin) with old nepomuk. It will fix check. svn path=/trunk/KDE/kdelibs/; revision=811179 --- modules/FindNepomuk.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index 1aa42408..51cd7549 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -24,7 +24,7 @@ if (Soprano_FOUND) else (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) find_path(NEPOMUK_INCLUDE_DIR NAMES - nepomuk/resource.h + nepomuk/global.h PATHS ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} -- cgit v1.2.1 From 034f63ea3a394b3f50247fb5d0aaad25ebca4b07 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 22 May 2008 15:20:06 +0000 Subject: make DBus work with Qt4 as frameworks Alex svn path=/trunk/KDE/kdelibs/; revision=811204 --- modules/FindQt4.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b1d28995..cf259ed4 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -680,6 +680,7 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_INCLUDE_DIR}/QtDBus ${QT_HEADERS_DIR}/QtDBus + ${QT_LIBRARY_DIR}/QtDBus.framework/Headers NO_DEFAULT_PATH ) -- cgit v1.2.1 From 40ed4976909c83961dc6adc774a19f0025d84189 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 23 May 2008 09:35:26 +0000 Subject: -use BUNDLE DESTINATION on all cmake versions starting with 2.6, i.e. also 2.7 Alex svn path=/trunk/KDE/kdelibs/; revision=811505 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index cee539c3..1f28de6c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -655,12 +655,12 @@ set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" -# on the Mac support an extra install directory for application bundles +# on the Mac support an extra install directory for application bundles starting with cmake 2.6 if(APPLE) - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.6") + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") set(INSTALL_TARGETS_DEFAULT_ARGS ${INSTALL_TARGETS_DEFAULT_ARGS} BUNDLE DESTINATION "${BUNDLE_INSTALL_DIR}" ) - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.6") + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") endif(APPLE) -- cgit v1.2.1 From 9cbf3bdee61f90d453eed7e2ffa4d7cca55a4563 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 26 May 2008 20:11:56 +0000 Subject: find and use installed Phonon svn path=/trunk/KDE/kdelibs/; revision=813005 --- modules/FindKDE4Internal.cmake | 14 ++++---------- modules/FindPhonon.cmake | 28 ++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 10 deletions(-) create mode 100644 modules/FindPhonon.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1f28de6c..c72a52d2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -36,7 +36,6 @@ # KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONON_LIBRARY - the phonon library -# KDE4_KAUDIODEVICELIST_LIBRARY - the kaudiodevicelist library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library # KDE4_SOLID_LIBRARY - the solid library # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library @@ -232,7 +231,6 @@ find_package(Qt4 REQUIRED) # until then still automoc from kdelibs is used as fallback, Alex find_package(Automoc4) - # Perl is required for building KDE software, find_package(Perl REQUIRED) @@ -268,8 +266,6 @@ if (_kdeBootStrapping) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) - set(KDE4_PHONON_LIBS ${QT_QTDBUS_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} phonon) - set(KDE4_KAUDIODEVICELIST_LIBS ${KDE4_SOLID_LIBS} kaudiodevicelist) set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) @@ -411,12 +407,6 @@ else (_kdeBootStrapping) find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) - find_library(KDE4_PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_PHONON_LIBS ${phonon_LIB_DEPENDS} ${KDE4_PHONON_LIBRARY} ) - - find_library(KDE4_KAUDIODEVICELIST_LIBRARY NAMES kaudiodevicelist PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KAUDIODEVICELIST_LIBS ${kaudiodevicelist_LIB_DEPENDS} ${KDE4_KAUDIODEVICELIST_LIBRARY} ) - find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) @@ -1126,5 +1116,9 @@ if (NOT _kde4_uninstall_rule_created) endif (NOT _kde4_uninstall_rule_created) +find_package(Phonon) +set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) +set(KDE4_PHONON_LIBS ${PHONON_LIBS}) + endif(KDE4_FOUND) diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake new file mode 100644 index 00000000..54206a04 --- /dev/null +++ b/modules/FindPhonon.cmake @@ -0,0 +1,28 @@ +# Find libphonon +# Once done this will define +# +# PHONON_FOUND - system has Phonon Library +# PHONON_INCLUDES - the Phonon include directory +# PHONON_LIBS - link these to use Phonon + +# Copyright (c) 2008, Matthias Kretz +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(PHONON_FOUND) + # Already found, nothing more to do +else(PHONON_FOUND) + if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) + set(PHONON_FIND_QUIETLY TRUE) + endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) + + find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ${LIB_INSTALL_DIR} NO_DEFAULT_PATH) + set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) + + find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH) + mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY) + + set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) + message(STATUS "Found Phonon: ${PHONON_LIBRARY}) +endif(PHONON_FOUND) -- cgit v1.2.1 From ae59452f0d2f9de347d36ccd50ac7afb16a70e97 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 26 May 2008 20:23:06 +0000 Subject: ups svn path=/trunk/KDE/kdelibs/; revision=813013 --- modules/FindPhonon.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 54206a04..42a65642 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -24,5 +24,5 @@ else(PHONON_FOUND) mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY) set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) - message(STATUS "Found Phonon: ${PHONON_LIBRARY}) + message(STATUS "Found Phonon: ${PHONON_LIBRARY}") endif(PHONON_FOUND) -- cgit v1.2.1 From 5f6c8f71333d3fed146311b6983a15f6365ca266 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 26 May 2008 21:17:07 +0000 Subject: try harder to find the right directory svn path=/trunk/KDE/kdelibs/; revision=813024 --- modules/FindPhonon.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 42a65642..898931a2 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -17,10 +17,10 @@ else(PHONON_FOUND) set(PHONON_FIND_QUIETLY TRUE) endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) - find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} ${LIB_INSTALL_DIR} NO_DEFAULT_PATH) + find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ${CMAKE_SYSTEM_LIBRARY_PATH} ${QT_LIBRARY_DIR} ${LIB_INSTALL_DIR} NO_DEFAULT_PATH) set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) - find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH) + find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} ${CMAKE_SYSTEM_INCLUDE_PATH} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH) mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY) set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) -- cgit v1.2.1 From 7cc2a87b06a869cc9564795d740024483e1bc82b Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Mon, 26 May 2008 21:23:51 +0000 Subject: now it should be fully compatible again svn path=/trunk/KDE/kdelibs/; revision=813026 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c72a52d2..0815afd8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1119,6 +1119,7 @@ endif (NOT _kde4_uninstall_rule_created) find_package(Phonon) set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) set(KDE4_PHONON_LIBS ${PHONON_LIBS}) +set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) endif(KDE4_FOUND) -- cgit v1.2.1 From 7fbeaf0032595d5dc342085e703fa04e4dd3b161 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Tue, 27 May 2008 10:06:02 +0000 Subject: require Phonon: better error messages svn path=/trunk/KDE/kdelibs/; revision=813267 --- modules/FindKDE4Internal.cmake | 2 +- modules/FindPhonon.cmake | 28 +++++++++++++++++++++++++--- 2 files changed, 26 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0815afd8..782d4a76 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1116,7 +1116,7 @@ if (NOT _kde4_uninstall_rule_created) endif (NOT _kde4_uninstall_rule_created) -find_package(Phonon) +find_package(Phonon REQUIRED) set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) set(KDE4_PHONON_LIBS ${PHONON_LIBS}) set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 898931a2..4ad5c250 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -18,11 +18,33 @@ else(PHONON_FOUND) endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ${CMAKE_SYSTEM_LIBRARY_PATH} ${QT_LIBRARY_DIR} ${LIB_INSTALL_DIR} NO_DEFAULT_PATH) - set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} ${CMAKE_SYSTEM_INCLUDE_PATH} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH) mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY) - set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) - message(STATUS "Found Phonon: ${PHONON_LIBRARY}") + if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) + set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) + set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) + set(PHONON_FOUND TRUE) + else(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) + set(PHONON_FOUND FALSE) + endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) + + if(PHONON_FOUND) + if(NOT PHONON_FIND_QUIETLY) + message(STATUS "Found Phonon: ${PHONON_LIBRARY}") + endif(NOT PHONON_FIND_QUIETLY) + else(PHONON_FOUND) + if(Phonon_FIND_REQUIRED) + if(NOT PHONON_INCLUDE_DIR) + message(STATUS "Phonon includes NOT found!") + endif(NOT PHONON_INCLUDE_DIR) + if(NOT PHONON_LIBRARY) + message(STATUS "Phonon library NOT found!") + endif(NOT PHONON_LIBRARY) + message(FATAL_ERROR "Phonon library or includes NOT found!") + else(Phonon_FIND_REQUIRED) + message(STATUS "Unable to find Phonon") + endif(Phonon_FIND_REQUIRED) + endif(PHONON_FOUND) endif(PHONON_FOUND) -- cgit v1.2.1 From 0d4fbb6bfe527552c6515c3b8d2697ae3434f461 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 27 May 2008 23:33:37 +0000 Subject: -use /Applications/KDE4 (instead of /Applications/KDE ) as default install directory for application bundles on OSX Alex CCMAIL: rangerrick@gmail.com svn path=/trunk/KDE/kdelibs/; revision=813534 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 782d4a76..9e65c77e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -77,7 +77,7 @@ # Under Windows they are always relative. # # BIN_INSTALL_DIR - the directory where executables will be installed (default is prefix/bin) -# BUNDLE_INSTALL_DIR - Mac only: the directory where application bundles will be installed (default is /Applications/KDE ) +# BUNDLE_INSTALL_DIR - Mac only: the directory where application bundles will be installed (default is /Applications/KDE4 ) # SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) # LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) # CONFIG_INSTALL_DIR - the config file install dir @@ -578,7 +578,7 @@ else (WIN32) endmacro(_SET_FANCY) if(APPLE) - set(BUNDLE_INSTALL_DIR "/Applications/KDE" CACHE PATH "Directory where application bundles will be installed to on OSX" ) + set(BUNDLE_INSTALL_DIR "/Applications/KDE4" CACHE PATH "Directory where application bundles will be installed to on OSX" ) endif(APPLE) _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") -- cgit v1.2.1 From c435a84a66fe48453abe0ed3ff6aa7bfa0d938ee Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 28 May 2008 13:09:36 +0000 Subject: add phonon includes back to KDE4_INCLUDES otherwise source compatibility is broken, especially when phonon is installed in a different prefix svn path=/trunk/KDE/kdelibs/; revision=813676 --- modules/FindKDE4Internal.cmake | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9e65c77e..12112797 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1096,6 +1096,10 @@ if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) +find_package(Phonon REQUIRED) +set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) +set(KDE4_PHONON_LIBS ${PHONON_LIBS}) +set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) if (NOT KDE4Internal_FIND_QUIETLY) kde4_print_results() @@ -1103,7 +1107,13 @@ endif (NOT KDE4Internal_FIND_QUIETLY) #add the found Qt and KDE include directories to the current include path #the ${KDE4_INCLUDE_DIR}/KDE directory is for forwarding includes, eg. #include -set(KDE4_INCLUDES ${KDE4_INCLUDE_DIR} ${KDE4_INCLUDE_DIR}/KDE ${QT_INCLUDES} ${_KDE4_PLATFORM_INCLUDE_DIRS} ) +set(KDE4_INCLUDES + ${KDE4_INCLUDE_DIR} + ${KDE4_INCLUDE_DIR}/KDE + ${KDE4_PHONON_INCLUDES} + ${QT_INCLUDES} + ${_KDE4_PLATFORM_INCLUDE_DIRS} +) set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) @@ -1116,10 +1126,5 @@ if (NOT _kde4_uninstall_rule_created) endif (NOT _kde4_uninstall_rule_created) -find_package(Phonon REQUIRED) -set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) -set(KDE4_PHONON_LIBS ${PHONON_LIBS}) -set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) - endif(KDE4_FOUND) -- cgit v1.2.1 From ea15a691f07e83c7b1251a96e3757b1e26e7469c Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 28 May 2008 13:10:21 +0000 Subject: also mention where the includes were found and mark it as advanced svn path=/trunk/KDE/kdelibs/; revision=813677 --- modules/FindPhonon.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 4ad5c250..092a3a69 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -20,7 +20,6 @@ else(PHONON_FOUND) find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ${CMAKE_SYSTEM_LIBRARY_PATH} ${QT_LIBRARY_DIR} ${LIB_INSTALL_DIR} NO_DEFAULT_PATH) find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} ${CMAKE_SYSTEM_INCLUDE_PATH} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH) - mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY) if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) @@ -33,6 +32,7 @@ else(PHONON_FOUND) if(PHONON_FOUND) if(NOT PHONON_FIND_QUIETLY) message(STATUS "Found Phonon: ${PHONON_LIBRARY}") + message(STATUS "Found Phonon Includes: ${PHONON_INCLUDES}") endif(NOT PHONON_FIND_QUIETLY) else(PHONON_FOUND) if(Phonon_FIND_REQUIRED) @@ -47,4 +47,7 @@ else(PHONON_FOUND) message(STATUS "Unable to find Phonon") endif(Phonon_FIND_REQUIRED) endif(PHONON_FOUND) + + + mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY PHONON_INCLUDES) endif(PHONON_FOUND) -- cgit v1.2.1 From e65f9036bf2776fac40102a093a1c134867eaa72 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 28 May 2008 21:25:14 +0000 Subject: -also list the tiff file as output -the OUTPUT files are deleted automatically on "make clean", so no need to add them explicitely Alex svn path=/trunk/KDE/kdelibs/; revision=813894 --- modules/KDE4Macros.cmake | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b7eb6ad7..8f96c194 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1096,7 +1096,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) message(STATUS "Unable to find the png2ico or windres utilities - application will not have an application icon!") endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) endif(WIN32) - if (Q_WS_MAC) + if (APPLE) # first convert image to a tiff using the Mac OS X "sips" utility, # then use tiff2icns to convert to an icon find_program(SIPS_EXECUTABLE NAMES sips) @@ -1114,14 +1114,12 @@ macro (KDE4_ADD_APP_ICON appsources pattern) if (_icon) # first, get the basename of our app icon - add_custom_command(OUTPUT ${_outfilename}.icns + add_custom_command(OUTPUT ${_outfilename}.icns ${outfilename}.tiff COMMAND ${SIPS_EXECUTABLE} -s format tiff ${_icon} --out ${outfilename}.tiff COMMAND ${TIFF2ICNS_EXECUTABLE} ${outfilename}.tiff ${_outfilename}.icns DEPENDS ${_icon} ) - macro_additional_clean_files(${outfilename}.tiff ${_outfilename}.icns) - # This will register the icon into the bundle set(MACOSX_BUNDLE_ICON_FILE ${target}.icns) @@ -1142,7 +1140,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) else(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) message(STATUS "Unable to find the sips and tiff2icns utilities - application will not have an application icon!") endif(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) - endif(Q_WS_MAC) + endif(APPLE) endmacro (KDE4_ADD_APP_ICON) -- cgit v1.2.1 From 568267123fb5b5f050cabcb14011f9fcaaea9992 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 28 May 2008 21:54:54 +0000 Subject: -always setup the policies if CMAKE_MINIMUM_REQUIRED() was executed (this should silence the warnings e.g. in kdebase) Alex svn path=/trunk/KDE/kdelibs/; revision=813924 --- modules/FindKDE4Internal.cmake | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 12112797..abaa10cd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -217,6 +217,27 @@ # this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) +# cmake 2.5, i.e. the cvs version between 2.4 and 2.6, is not supported +if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") + message(FATAL_ERROR "You are using CMake 2.5, which was the unreleased development version between 2.4 and 2.6. This is no longer supported. Please update to CMake 2.6 or current cvs HEAD.") +endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") + +# CMake 2.6, set compatibility behaviour to cmake 2.4 +# this must be executed always, because the CMAKE_MINIMUM_REQUIRED() command above +# resets the policy settings, so we get a lot of warnings +if(COMMAND CMAKE_POLICY) + # CMP0000: don't require cmake_minimum_version() directly in the top level CMakeLists.txt, FindKDE4Internal.cmake is good enough + cmake_policy(SET CMP0000 OLD) + # CMP0002: in KDE4 we have multiple targets with the same name for the unit tests + cmake_policy(SET CMP0002 OLD) + # CMP0003: add the link paths to the link command as with cmake 2.4 + cmake_policy(SET CMP0003 OLD) + # CMP0005: keep escaping behaviour for definitions added via add_definitions() + cmake_policy(SET CMP0005 OLD) +endif(COMMAND CMAKE_POLICY) + + + if(KDE4_FOUND) # Already found in this cmake run, nothing more to do else(KDE4_FOUND) @@ -689,26 +710,6 @@ if(WIN32) endif(WIN32) -# cmake 2.5, i.e. the cvs version between 2.4 and 2.6, is not supported -if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") - message(FATAL_ERROR "You are using CMake 2.5, which was the unreleased development version between 2.4 and 2.6. This is no longer supported. Please update to CMake 2.6 or current cvs HEAD.") -endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") - -# CMake 2.6, set compatibility behaviour to cmake 2.4 -if(COMMAND CMAKE_POLICY) - # CMP0000: don't require cmake_minimum_version() directly in the top level CMakeLists.txt, FindKDE4Internal.cmake is good enough - cmake_policy(SET CMP0000 OLD) - # CMP0002: in KDE4 we have multiple targets with the same name for the unit tests - cmake_policy(SET CMP0002 OLD) - # CMP0003: add the link paths to the link command as with cmake 2.4 - cmake_policy(SET CMP0003 OLD) - # CMP0005: keep escaping behaviour for definitions added via add_definitions() - cmake_policy(SET CMP0005 OLD) - -endif(COMMAND CMAKE_POLICY) - - - ##################### and now the platform specific stuff ############################ # Set a default build type for single-configuration -- cgit v1.2.1 From 8c2534ec35c9da2a00dc2d0dae8f7fa0d71d2ea5 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 29 May 2008 18:53:05 +0000 Subject: wrong docu is worse than no docu svn path=/trunk/KDE/kdelibs/; revision=814252 --- modules/FindKDE4Internal.cmake | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index abaa10cd..a0f0bc7f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -149,7 +149,7 @@ # application bundles are created, with the NOGUI option no bundles but simple executables # are created. Currently it doesn't have any effect on other platforms. # -# KDE4_ADD_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) +# KDE4_ADD_EXECUTABLE (name [NOGUI] [TEST] [RUN_UNINSTALLED] file1 ... fileN) # Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: # -support for KDE4_ENABLE_FINAL # -support for automoc @@ -172,16 +172,8 @@ # are created but not built by default. You can build them by manually building the target. # The name of the target can be specified using TESTNAME , if it is not given # the macro will default to the -# -# KDE4_ADD_TEST_EXECUTABLE (name file1 ... fileN) -# add an test executable -# it will be built with RPATH poiting to the build dir -# The targets are always created, but only built for the "all" -# target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target -# are created but not built by default. You can build them by manually building the target. # KDESRCDIR is set to the source directory of the test, this can be used with -# KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ); to be able to use xmlgui -# and other things in the test, that normally require installation +# KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ) # # KDE4_UPDATE_ICONCACHE() # Notifies the icon cache that new icons have been installed by updating -- cgit v1.2.1 From e13e219d9a24e4379bcf80c40e55ab89359fbcc9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 2 Jun 2008 23:03:30 +0000 Subject: -search in more directories Alex CCMAIL: faure@kde.org svn path=/trunk/KDE/kdelibs/; revision=815981 --- modules/FindAutomoc4.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index 03a90974..6052d2c5 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -23,9 +23,16 @@ if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") set(AUTOMOC4_CONFIG_FILE "${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") # when building this project outside kdesupport + + # CMAKE_[SYSTEM_]PREFIX_PATH exists starting with cmake 2.6.0 + file(TO_CMAKE_PATH "$ENV{CMAKE_PREFIX_PATH}" _env_CMAKE_PREFIX_PATH) + file(TO_CMAKE_PATH "$ENV{CMAKE_LIBRARY_PATH}" _env_CMAKE_LIBRARY_PATH) + find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 - PATHS ${CMAKE_SYSTEM_PREFIX_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}/lib + PATHS ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} + ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} + ${CMAKE_INSTALL_PREFIX}/lib NO_DEFAULT_PATH ) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") -- cgit v1.2.1 From 7f4b50dd0e00bdd6fc4aaf512085f12c37bffdb6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 3 Jun 2008 19:52:30 +0000 Subject: hmmm, that optimization with skipping basically everything on a second run has its problems, e.g. if an OPTION() is added later on it doesn't get noticed because it is skipped so, this is not really a fix, it just excludes the options from being skipped Alex svn path=/trunk/KDE/kdelibs/; revision=816406 --- modules/FindKDE4Internal.cmake | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a0f0bc7f..9eec524f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -229,10 +229,8 @@ if(COMMAND CMAKE_POLICY) endif(COMMAND CMAKE_POLICY) - -if(KDE4_FOUND) - # Already found in this cmake run, nothing more to do -else(KDE4_FOUND) +# Only do something if it hasn't been found yet +if(NOT KDE4_FOUND) include (MacroEnsureVersion) @@ -494,6 +492,7 @@ else (_kdeBootStrapping) endif (_kdeBootStrapping) +endif(NOT KDE4_FOUND) ##################### provide some options ########################################## @@ -501,6 +500,12 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") +# this one enables the smaller link interface for libs on UNIX (exceot OSX) +if(UNIX )# AND NOT APPLE) + option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) +endif(UNIX)# AND NOT APPLE) + + if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) endif(KDE4_ENABLE_FINAL) @@ -513,6 +518,9 @@ option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) + +if(NOT KDE4_FOUND) + ########## the following are directories where stuff will be installed to ########### # # this has to be after find_xxx() block above, since there KDELibsDependencies.cmake is included @@ -1119,5 +1127,5 @@ if (NOT _kde4_uninstall_rule_created) endif (NOT _kde4_uninstall_rule_created) -endif(KDE4_FOUND) +endif(NOT KDE4_FOUND) -- cgit v1.2.1 From 4f15f0d815776fcb9af5ac2c09a3500c80466db7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 3 Jun 2008 19:57:49 +0000 Subject: -ignore the previous commit and its comment... Alex svn path=/trunk/KDE/kdelibs/; revision=816407 --- modules/FindKDE4Internal.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9eec524f..2657940b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -492,7 +492,6 @@ else (_kdeBootStrapping) endif (_kdeBootStrapping) -endif(NOT KDE4_FOUND) ##################### provide some options ########################################## @@ -519,8 +518,6 @@ option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) -if(NOT KDE4_FOUND) - ########## the following are directories where stuff will be installed to ########### # # this has to be after find_xxx() block above, since there KDELibsDependencies.cmake is included -- cgit v1.2.1 From a153ac8ccb726f24b52c74b3f644d67c15b1b3f2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 3 Jun 2008 20:01:54 +0000 Subject: As discussed with Dirk, make the link interface empty by default, i.e. by default apps linking to libfoo won't be linked to the libs libfoo.so links against too anymore. This can be enabled by setting with the option KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT. If enabled, this currently breaks already kdelibs and probably other modules too. Dirk will test. Alex CCMAIL: mueller@kde.org CCMAIL: modestas@vainius.eu svn path=/trunk/KDE/kdelibs/; revision=816409 --- modules/KDE4Macros.cmake | 45 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 8f96c194..eb0de61a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -929,6 +929,16 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) + # if that option is enabled, by default don't add any linked libraries to the "exported" + # link interfaces, so that executables linking against this library won't get additional + # indirect dependencies. This makes work easier for packagers and should make application + # startup somewhat faster, if I understood Dirk correctly. + if(NOT "${_add_lib_param}" STREQUAL "STATIC") + if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) + set_target_properties(${_target_NAME} PROPERTIES LINK_INTERFACE_LIBRARIES "" ) + endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) + endif(NOT "${_add_lib_param}" STREQUAL "STATIC") + endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) @@ -1128,7 +1138,8 @@ macro (KDE4_ADD_APP_ICON appsources pattern) list(APPEND ${appsources} ${_outfilename}.icns) # this doesn't seem to work for me - Use manual "install" instead - # SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/${target}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) + # TODO: test again with cmake 2.6 ? + # SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/${target}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) install(FILES ${_outfilename}.icns DESTINATION ${BIN_INSTALL_DIR}/${target}.app/Contents/Resources/) @@ -1144,6 +1155,38 @@ macro (KDE4_ADD_APP_ICON appsources pattern) endmacro (KDE4_ADD_APP_ICON) +macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) + if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) + + # get all cmake variables which end in _LIB_DEPENDS + # then parse the target name out of them + # use the target name to get the LINK_INTERFACE_LIBRARIES target property + # This way for targets where INTERFACE_LINK_LIBRARIES has been set, the value set from + # export_library_dependencies() will be overridden, while for those where it hasn't been set + # the full list is preserved. + # (this is cmake 2.6 compatible, where we'll use the EXPORT() feature + # Alex + + file(${_append_or_write} "${_filename}" "# The following variables have been created by kde4_export_library_dependencies() +# The contents have been determined from the LINK_INTERFACE_LIBRARIES target property of the respective libraries. +# The option KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT has been enabled to create the file this way. +# You can modify KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT using \"make edit_cache\"\n\n") + get_cmake_property(allVars VARIABLES) + set(allLibs "") + foreach(currentVar ${allVars}) + string(REGEX REPLACE "^(.+)_LIB_DEPENDS$" "\\1" target "${currentVar}") + if(NOT "${target}" STREQUAL "${currentVar}") + get_target_property(interfaceLibs ${target} LINK_INTERFACE_LIBRARIES) + if(NOT "${interfaceLibs}" MATCHES "NOTFOUND") + file(APPEND "${_filename}" "SET(\"${currentVar}\" \"${interfaceLibs}\")\n") + endif(NOT "${interfaceLibs}" MATCHES "NOTFOUND") + endif(NOT "${target}" STREQUAL "${currentVar}") + endforeach(currentVar ${allVars}) + + endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) +endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) + + macro (KDE4_INSTALL_HANDBOOK _lang) message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") endmacro (KDE4_INSTALL_HANDBOOK ) -- cgit v1.2.1 From 802286e79e903fffd69398af3b1940f0247f649f Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 4 Jun 2008 22:13:58 +0000 Subject: Make it possible to specify where phonon is (e.g. using CMAKE_PREFIX_PATH with cmake-2.6, or CMAKE_LIBRARY_PATH with 2.4) : As discussed on kde-buildsystem: first look at CMAKE_PREFIX_PATH, then at the suggested PATHS (kde4 install dir) then at the default system locations (CMAKE_SYSTEM_PREFIX_PATH, i.e. /usr etc.). Brad says the next version of cmake will have a more convenient way of implementing this search order. svn path=/trunk/KDE/kdelibs/; revision=816902 --- modules/FindPhonon.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 092a3a69..b6a6b0a7 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -17,9 +17,13 @@ else(PHONON_FOUND) set(PHONON_FIND_QUIETLY TRUE) endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) - find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ${CMAKE_SYSTEM_LIBRARY_PATH} ${QT_LIBRARY_DIR} ${LIB_INSTALL_DIR} NO_DEFAULT_PATH) + # As discussed on kde-buildsystem: first look at CMAKE_PREFIX_PATH, then at the suggested PATHS (kde4 install dir) + find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) + # then at the default system locations (CMAKE_SYSTEM_PREFIX_PATH, i.e. /usr etc.) + find_library(PHONON_LIBRARY NAMES phonon) - find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} ${CMAKE_SYSTEM_INCLUDE_PATH} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH) + find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) + find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h) if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) -- cgit v1.2.1 From 8b841ab2477b2d43601ed57cad3f11b82dab8fd7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 4 Jun 2008 22:56:14 +0000 Subject: don't search in KDE4_LIB_DIR and KDE4_INCLUDE_DIR, since they point to the kdelibs build/source dir when used inside kdelibs, KDE4_LIB_INSTALL_DIR and KDE4_INCLUDE_INSTALL_DIR should always have the same value, but be empty inside kdelibs. Alex svn path=/trunk/KDE/kdelibs/; revision=816915 --- modules/FindPhonon.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index b6a6b0a7..14d15422 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -18,11 +18,11 @@ else(PHONON_FOUND) endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) # As discussed on kde-buildsystem: first look at CMAKE_PREFIX_PATH, then at the suggested PATHS (kde4 install dir) - find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) + find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) # then at the default system locations (CMAKE_SYSTEM_PREFIX_PATH, i.e. /usr etc.) find_library(PHONON_LIBRARY NAMES phonon) - find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) + find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h) if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) -- cgit v1.2.1 From f81e1536cec58ab362e9d45ddf7df7e51874658c Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 4 Jun 2008 23:00:54 +0000 Subject: fix typo svn path=/trunk/KDE/kdelibs/; revision=816917 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index cf259ed4..b6f791dd 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -107,7 +107,7 @@ # If the optional argument interfacename is omitted, the name of the # interface file is constructed from the basename of the header with # the suffix .xml appended. -# Options may be given to uic, such as those found when executing "qdbuscpp2xml --help" +# Options may be given to qdbuscpp2xml, such as those found when executing "qdbuscpp2xml --help" # # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. -- cgit v1.2.1 From a12676439f9fd2a3bb672b6e53cc124d53b96028 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 5 Jun 2008 20:59:29 +0000 Subject: -add -F /Library/Frameworks to the moc arguments, otherwise moc doesn't find the include dirs in frameworks when Qt is built as plain framework, which means that e.g. Q_OS_UNIX is not set and also Q_INTERFACE doesn't work Alex svn path=/trunk/KDE/kdelibs/; revision=817360 --- modules/FindQt4.cmake | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b6f791dd..90a3fc17 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1134,6 +1134,12 @@ IF (QT4_QMAKE_FOUND) SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) ENDFOREACH(_current ${_inc_DIRS}) + # if Qt is installed only as framework, add -F /library/Frameworks to the moc arguments + # otherwise moc can't find the headers in the framework include dirs + IF(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-F /Library/Frameworks") + ENDIF(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") + ENDMACRO(QT4_GET_MOC_INC_DIRS) @@ -1152,11 +1158,11 @@ IF (QT4_QMAKE_FOUND) COMMAND ${QT_MOC_EXECUTABLE} ARGS @"${_moc_parameter_file}" DEPENDS ${abs_infile}) - ELSE (MSVC_IDE) + ELSE (MSVC_IDE) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) + DEPENDS ${abs_infile}) ENDIF (MSVC_IDE) SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file -- cgit v1.2.1 From 30ab610b893a9c90b9c46a1305ceb7b1dd125712 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 6 Jun 2008 09:11:58 +0000 Subject: -no space necessary between -F and the directory Alex svn path=/trunk/KDE/kdelibs/; revision=817549 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 90a3fc17..797bd972 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1137,7 +1137,7 @@ IF (QT4_QMAKE_FOUND) # if Qt is installed only as framework, add -F /library/Frameworks to the moc arguments # otherwise moc can't find the headers in the framework include dirs IF(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-F /Library/Frameworks") + SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-F/Library/Frameworks") ENDIF(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") ENDMACRO(QT4_GET_MOC_INC_DIRS) -- cgit v1.2.1 From 5f2c4c2b074b49410b8d5cf3610330fe40cab527 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 9 Jun 2008 19:20:13 +0000 Subject: just some cosmetics... Alex svn path=/trunk/KDE/kdelibs/; revision=818828 --- modules/FindKDE4Internal.cmake | 19 +++++++++---------- modules/KDE4Macros.cmake | 18 +++++++++--------- 2 files changed, 18 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2657940b..8b0803a8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -879,21 +879,20 @@ if (CMAKE_SYSTEM_NAME MATCHES BSD) endif (CMAKE_SYSTEM_NAME MATCHES BSD) # compiler specific stuff, maybe this should be done differently, Alex -MACRO(KDE_CHECK_FLAG_EXISTS FLAG VAR DOC) - IF(NOT ${VAR} MATCHES "${FLAG}") - SET(${VAR} "${${VAR}} ${FLAG}" - CACHE STRING "Flags used by the linker during ${DOC} builds." FORCE) - ENDIF(NOT ${VAR} MATCHES "${FLAG}") -ENDMACRO(KDE_CHECK_FLAG_EXISTS FLAG VAR) +macro(KDE_CHECK_FLAG_EXISTS FLAG VAR DOC) + if(NOT ${VAR} MATCHES "${FLAG}") + set(${VAR} "${${VAR}} ${FLAG}" CACHE STRING "Flags used by the linker during ${DOC} builds." FORCE) + endif(NOT ${VAR} MATCHES "${FLAG}") +endmacro(KDE_CHECK_FLAG_EXISTS FLAG VAR) if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h - KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "Release with Debug Info") - KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELEASE "release") - KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "release minsize") - KDE_CHECK_FLAG_EXISTS("/NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd" CMAKE_EXE_LINKER_FLAGS_DEBUG "debug") + kde_check_flag_exists("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "Release with Debug Info") + kde_check_flag_exists("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELEASE "release") + kde_check_flag_exists("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "release minsize") + kde_check_flag_exists("/NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd" CMAKE_EXE_LINKER_FLAGS_DEBUG "debug") endif(MSVC) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index eb0de61a..b3c6899f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1138,8 +1138,8 @@ macro (KDE4_ADD_APP_ICON appsources pattern) list(APPEND ${appsources} ${_outfilename}.icns) # this doesn't seem to work for me - Use manual "install" instead - # TODO: test again with cmake 2.6 ? - # SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/${target}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) + # TODO: test again with cmake 2.6 ? + # SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/${target}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) install(FILES ${_outfilename}.icns DESTINATION ${BIN_INSTALL_DIR}/${target}.app/Contents/Resources/) @@ -1174,13 +1174,13 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) get_cmake_property(allVars VARIABLES) set(allLibs "") foreach(currentVar ${allVars}) - string(REGEX REPLACE "^(.+)_LIB_DEPENDS$" "\\1" target "${currentVar}") - if(NOT "${target}" STREQUAL "${currentVar}") - get_target_property(interfaceLibs ${target} LINK_INTERFACE_LIBRARIES) - if(NOT "${interfaceLibs}" MATCHES "NOTFOUND") - file(APPEND "${_filename}" "SET(\"${currentVar}\" \"${interfaceLibs}\")\n") - endif(NOT "${interfaceLibs}" MATCHES "NOTFOUND") - endif(NOT "${target}" STREQUAL "${currentVar}") + string(REGEX REPLACE "^(.+)_LIB_DEPENDS$" "\\1" target "${currentVar}") + if(NOT "${target}" STREQUAL "${currentVar}") + get_target_property(interfaceLibs ${target} LINK_INTERFACE_LIBRARIES) + if(NOT "${interfaceLibs}" MATCHES "NOTFOUND") + file(APPEND "${_filename}" "SET(\"${currentVar}\" \"${interfaceLibs}\")\n") + endif(NOT "${interfaceLibs}" MATCHES "NOTFOUND") + endif(NOT "${target}" STREQUAL "${currentVar}") endforeach(currentVar ${allVars}) endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) -- cgit v1.2.1 From 08935355fae0b7e0a0f81b43410f4ed2733a895a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 9 Jun 2008 19:37:02 +0000 Subject: -some minor reorganization of some windows stuff, centralizing it a bit more Please test on Windows to make sure I didn't mess up anything. Alex CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=818834 --- modules/FindKDE4Internal.cmake | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8b0803a8..19803188 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -673,6 +673,7 @@ endif(APPLE) ############## add some more default search paths ############### +# # always search in the directory where cmake is installed # and in the current installation prefix # the KDE4_xxx_INSTALL_DIR variables are empty when building kdelibs itself @@ -707,7 +708,9 @@ if(WIN32) endif(WIN32) -##################### and now the platform specific stuff ############################ +###################################################### +# and now the platform specific stuff +###################################################### # Set a default build type for single-configuration # CMake generators if no build type is set. @@ -744,10 +747,11 @@ if (WIN32) set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) endif (_kdeBootStrapping) - # windows, mingw - if(MINGW) - #hmmm, something special to do here ? - endif(MINGW) + # we prefer to use a different postfix for debug libs only on Windows + # does not work atm + if (WIN32) + set(CMAKE_DEBUG_POSTFIX "") + endif (WIN32) # windows, microsoft compiler if(MSVC) @@ -878,7 +882,13 @@ if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lc") endif (CMAKE_SYSTEM_NAME MATCHES BSD) -# compiler specific stuff, maybe this should be done differently, Alex + +############################################################ +# compiler specific settings +############################################################ + + +# this macro is for internal use only. macro(KDE_CHECK_FLAG_EXISTS FLAG VAR DOC) if(NOT ${VAR} MATCHES "${FLAG}") set(${VAR} "${${VAR}} ${FLAG}" CACHE STRING "Flags used by the linker during ${DOC} builds." FORCE) @@ -896,12 +906,6 @@ if (MSVC) endif(MSVC) -if (MINGW) - set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") - set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") -endif (MINGW) - - if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. @@ -922,13 +926,17 @@ if (CMAKE_COMPILER_IS_GNUCXX) add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux) - if (WIN32) + # gcc under Windows + if (MINGW) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") + # we always link against the release version of QT with mingw # (even for debug builds). So we need to define QT_NO_DEBUG # or else QPluginLoader rejects plugins because it thinks # they're built against the wrong QT. add_definitions(-DQT_NO_DEBUG) - endif (WIN32) + endif (MINGW) check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) if(KDE4_ENABLE_FPIE) @@ -1028,11 +1036,6 @@ if (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_C_COMPILER MATCHES "icc") -# we prefer to use a different postfix for debug libs only on Windows -# does not work atm -if (WIN32) - SET(CMAKE_DEBUG_POSTFIX "") -endif (WIN32) ########### end of platform specific stuff ########################## -- cgit v1.2.1 From 68d5322666f2a95e4ab008b5efaccc63141a3f9d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 9 Jun 2008 21:16:41 +0000 Subject: -this "if(WIN32)" was redundant Alex svn path=/trunk/KDE/kdelibs/; revision=818866 --- modules/FindKDE4Internal.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 19803188..9d9f22cb 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -749,9 +749,7 @@ if (WIN32) # we prefer to use a different postfix for debug libs only on Windows # does not work atm - if (WIN32) - set(CMAKE_DEBUG_POSTFIX "") - endif (WIN32) + set(CMAKE_DEBUG_POSTFIX "") # windows, microsoft compiler if(MSVC) -- cgit v1.2.1 From 5b528165287aea973e567f8894eb444f019adac9 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Thu, 12 Jun 2008 18:28:52 +0000 Subject: Update to the current naming scheme of the headers (at least as of 0.4.9) svn path=/trunk/KDE/kdelibs/; revision=819960 --- modules/FindFFmpeg.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFFmpeg.cmake b/modules/FindFFmpeg.cmake index 83f4dde8..0f8ad9dd 100644 --- a/modules/FindFFmpeg.cmake +++ b/modules/FindFFmpeg.cmake @@ -26,7 +26,7 @@ IF (NOT WIN32) ENDIF (NOT WIN32) #set(FFMPEG_DEFINITIONS ${_FFMPEGCflags}) - find_path(FFMPEG_INCLUDE_DIR ffmpeg/avcodec.h + find_path(FFMPEG_INCLUDE_DIR libavcodec/avcodec.h PATHS ${_FFMPEGIncDir} NO_DEFAULT_PATH -- cgit v1.2.1 From 2a7e5d68444a42f38f1e093155fc3516a6036384 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 16 Jun 2008 00:29:35 +0000 Subject: make sure to search only in ${BIN_INSTALL_DIR} for nepomuk-rcgen, just in case there are other versions lying around out there. svn path=/trunk/KDE/kdelibs/; revision=820994 --- modules/NepomukMacros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/NepomukMacros.cmake b/modules/NepomukMacros.cmake index 18aeca27..0e1fe45b 100644 --- a/modules/NepomukMacros.cmake +++ b/modules/NepomukMacros.cmake @@ -25,7 +25,7 @@ macro(NEPOMUK_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources # init set(NEPOMUK_RESOURCES_GENERATED false) - FIND_PROGRAM(RCGEN nepomuk-rcgen PATHS ${BIN_INSTALL_DIR}) + FIND_PROGRAM(RCGEN nepomuk-rcgen PATHS ${BIN_INSTALL_DIR} NO_DEFAULT_PATH) if(NOT RCGEN) -- cgit v1.2.1 From b190b964ae523a1f9244f53ac960b952d63daa5c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 16 Jun 2008 22:05:02 +0000 Subject: -first search in KDE4_BIN_INSTALL_DIR, since this is most probably where rcgen is to find -lowercase find_program() -fix documentation format Alex CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=821234 --- modules/NepomukMacros.cmake | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/NepomukMacros.cmake b/modules/NepomukMacros.cmake index 0e1fe45b..14acd2bb 100644 --- a/modules/NepomukMacros.cmake +++ b/modules/NepomukMacros.cmake @@ -1,13 +1,6 @@ # This file contains the following macros: # # NEPOMUK_GENERATE_FROM_ONTOLOGY -# - - -# -# NEPOMUK_GENERATE_FROM_ONTOLOGY -# (C) 2007 Sebastian Trueg -# # Parameters: # ontofile - Path to the NRL ontology defining the resources to be generated. # targetdir - Folder to which the generated sources should be written. @@ -19,13 +12,16 @@ # In addition to the parameters an arbitrary number of template filenames can be set as arguments # # In case of success NEPOMUK_RESOURCES_GENERATED is true, otherwise false -# + +# (C) 2007 Sebastian Trueg + + macro(NEPOMUK_GENERATE_FROM_ONTOLOGY ontofile targetdir out_headers out_sources out_includes) # init set(NEPOMUK_RESOURCES_GENERATED false) - FIND_PROGRAM(RCGEN nepomuk-rcgen PATHS ${BIN_INSTALL_DIR} NO_DEFAULT_PATH) + find_program(RCGEN nepomuk-rcgen PATHS ${KDE4_BIN_INSTALL_DIR} ${BIN_INSTALL_DIR} NO_DEFAULT_PATH) if(NOT RCGEN) -- cgit v1.2.1 From 6f3468783a44d367ef86d1480cce8933d5d04b4c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 19 Jun 2008 22:38:40 +0000 Subject: -when cmake 2.6 is used, create a manpage for the modules coming with kdelibs and install it Alex CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=822366 --- modules/CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index db6a9ad4..7ec3eb9e 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -25,3 +25,10 @@ install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32 # file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "message(STATUS \"Removing ${_current_FILE}\" )\n" ) # file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) #endforeach ( _current_FILE) + +# with cmake 2.6 and above create and install a man page for the kdelibs cmake modules +# (cmake 2.4 doesn't support creating documentation for cmake modules in custom directories) +if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") + add_custom_target(KDECMakeModulesManPage ALL COMMAND ${CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} --help-custom-modules ${CMAKE_CURRENT_BINARY_DIR}/kdecmake.1) + install(FILES kdecmake.1 DESTINATION "${MAN_INSTALL_DIR}/man1") +endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") -- cgit v1.2.1 From 7b9a117845f8b963330b6ac58b1df2f61dd296ec Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Fri, 20 Jun 2008 07:15:48 +0000 Subject: fix install target: make it find the kdecmake.1 file svn path=/trunk/KDE/kdelibs/; revision=822434 --- modules/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 7ec3eb9e..9603dd19 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -30,5 +30,5 @@ install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32 # (cmake 2.4 doesn't support creating documentation for cmake modules in custom directories) if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") add_custom_target(KDECMakeModulesManPage ALL COMMAND ${CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} --help-custom-modules ${CMAKE_CURRENT_BINARY_DIR}/kdecmake.1) - install(FILES kdecmake.1 DESTINATION "${MAN_INSTALL_DIR}/man1") + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kdecmake.1 DESTINATION "${MAN_INSTALL_DIR}/man1") endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") -- cgit v1.2.1 From c8ea6d71bd36078bfd3901c867f431f899ea3e9a Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 26 Jun 2008 13:53:24 +0000 Subject: add KDE4_TARGET_LINK_INTERFACE_LIBRARIES, which I can use next monday to reduce excessive links svn path=/trunk/KDE/kdelibs/; revision=824675 --- modules/KDE4Macros.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b3c6899f..c61e0b26 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1186,6 +1186,11 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) +macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) + if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) + set_target_properties("${_target}" "${_interface_libs}") + endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) +endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES) macro (KDE4_INSTALL_HANDBOOK _lang) message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") -- cgit v1.2.1 From 0c632d340e0e63854ffdf69feeb0141485da1538 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 27 Jun 2008 16:52:29 +0000 Subject: test executable is .xe.bat on windows (fake rpath handling) svn path=/trunk/KDE/kdelibs/; revision=825239 --- modules/KDE4Macros.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c61e0b26..a12e06e1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -806,7 +806,11 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endif(NOT using_qtest) endforeach(_filename) - set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) + if(WIN32) + set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) + else(WIN32) + set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.bat) + endif(WIN32) if (Q_WS_MAC AND NOT _nogui) set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.app/Contents/MacOS/${_test_NAME}) else (Q_WS_MAC AND NOT _nogui) -- cgit v1.2.1 From b0b6dc45bfc4dcce83ced8a18c685cec44a100f4 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 1 Jul 2008 11:21:42 +0000 Subject: Yeah, nice reversed condition. We have no .bat files on unix. This fixes make test... svn path=/trunk/KDE/kdelibs/; revision=826778 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a12e06e1..f5ef0b01 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -807,9 +807,9 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endforeach(_filename) if(WIN32) - set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) - else(WIN32) set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.bat) + else(WIN32) + set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) endif(WIN32) if (Q_WS_MAC AND NOT _nogui) set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.app/Contents/MacOS/${_test_NAME}) -- cgit v1.2.1 From b39617de7f4d234fa88fafa45f73bc0a0f97256c Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Tue, 1 Jul 2008 16:12:57 +0000 Subject: this should fix update-mime-info execution on windows svn path=/trunk/KDE/kdelibs/; revision=826849 --- modules/FindSharedMimeInfo.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 3ff8227c..510c4992 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -64,7 +64,8 @@ macro(UPDATE_XDG_MIMETYPES _path) install(CODE " set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") if (NOT DESTDIR_VALUE) - execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir}) + execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir} + WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}) endif (NOT DESTDIR_VALUE) ") endmacro (UPDATE_XDG_MIMETYPES) -- cgit v1.2.1 From c5b09413ca41a431bdb3aa98b8e04ee672d16df3 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 2 Jul 2008 05:11:12 +0000 Subject: point to the correct test filename on windows, second try svn path=/trunk/KDE/kdelibs/; revision=827019 --- modules/KDE4Macros.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f5ef0b01..63740583 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -807,7 +807,9 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endforeach(_filename) if(WIN32) - set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.bat) + get_target_property( loc ${_targetName} LOCATION ) + # .bat because of rpath handling + set(_executable ${loc}.bat) else(WIN32) set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) endif(WIN32) -- cgit v1.2.1 From 7bc93dbb8a217688ba6e9379f957cd895aca5932 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 6 Jul 2008 09:38:22 +0000 Subject: Copy over FindBoost.cmake from kdevplatform, which is 95% of the CMake 2.6 version of this module (the 5% are owed to the fact that we're not requiring CMake 2.6 yet, when we do this can be dropped completely). This is backwards compatible with the cmake 2.4 version we had before in terms of usage so there are no expected portings or breakages from this. (tested by a couple of cmake users while implementing this for CMake 2.6) svn path=/trunk/KDE/kdelibs/; revision=828628 --- modules/FindBoost.cmake | 693 ++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 551 insertions(+), 142 deletions(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index 5b685ef9..01075ec7 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -1,166 +1,575 @@ -# - Find the Boost includes and libraries. -# The following variables are set if Boost is found. If Boost is not -# found, Boost_FOUND is set to false. -# Boost_FOUND - True when the Boost include directory is found. -# Boost_INCLUDE_DIRS - the path to where the boost include files are. -# Boost_LIBRARY_DIRS - The path to where the boost library files are. -# Boost_LIB_DIAGNOSTIC_DEFINITIONS - Only set if using Windows. - -# !!!!!!!!!!!!!!!!!!! -# this is FindBoost.cmake from cmake 2.4.4 to 2.4.8 -# it is here because the one in 2.6.0RC9 is slightly broken -# and will be removed again once 2.6.0 or 2.6.0RC10 is released -# Alex -# !!!!!!!!!!!!!!!!!!!!!! - -# ---------------------------------------------------------------------------- -# If you have installed Boost in a non-standard location or you have -# just staged the boost files using bjam then you have three -# options. In the following comments, it is assumed that -# points to the root directory of the include directory of Boost. e.g -# If you have put boost in C:\development\Boost then is -# "C:/development/Boost" and in this directory there will be two -# directories called "include" and "lib". -# 1) After CMake runs, set Boost_INCLUDE_DIR to /include/boost<-version> -# 2) Use CMAKE_INCLUDE_PATH to set a path to /include. This will allow FIND_PATH() -# to locate Boost_INCLUDE_DIR by utilizing the PATH_SUFFIXES option. e.g. -# SET(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "/include") -# 3) Set an environment variable called ${BOOST_ROOT} that points to the root of where you have -# installed Boost, e.g. . It is assumed that there is at least a subdirectory called -# include in this path. +# - Try to find Boost include dirs and libraries +# Usage of this module as follows: # -# Note: -# 1) If you are just using the boost headers, then you do not need to use -# Boost_LIBRARY_DIRS in your CMakeLists.txt file. -# 2) If Boost has not been installed, then when setting Boost_LIBRARY_DIRS -# the script will look for /lib first and, if this fails, then for /stage/lib. +# SET(Boost_USE_STATIC_LIBS ON) +# SET(Boost_USE_MULTITHREAD OFF) +# FIND_PACKAGE( Boost COMPONENTS date_time filesystem iostreams ... ) # -# Usage: -# In your CMakeLists.txt file do something like this: -# ... -# # Boost -# FIND_PACKAGE(Boost) -# ... -# INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS}) -# LINK_DIRECTORIES(${Boost_LIBRARY_DIRS}) +# The Boost_ADDITIONAL_VERSIONS variable can be used to specify a list of +# boost version numbers that should be taken into account when searching +# for the libraries. Unfortunately boost puts the version number into the +# actual filename for the libraries, so this might be needed in the future +# when new boost versions are released. # -# In Windows, we make the assumption that, if the Boost files are installed, the default directory -# will be C:\boost. - +# Currently this module searches for the following version numbers: +# 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, 1.35, 1.35.0, 1.35.1, 1.36.0, 1.36.1 +# +# The components list needs to be the actual names of boost libraries, that is +# the part of the actual library files that differ on different libraries. So +# its "date_time" for "libboost_date_time...". Anything else will result in +# errors +# +# Variables used by this module, they can change the default behaviour and need to be set +# before calling find_package: +# Boost_USE_STATIC_LIBS Can be set to ON to force the use of static +# boost libraries. Defaults to OFF +# Boost_USE_MULTITHREAD Can be set to OFF to use the non-multithreaded +# boost libraries. Defaults to ON. +# Boost_ADDITIONAL_VERSIONS A list of version numbers to use for searching +# the boost include directory. The default list +# of version numbers is: +# 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, +# 1.35, 1.35.0, 1.35.1, 1.36.0, 1.36.1 +# If you want to look for an older or newer +# version set this variable to a list of +# strings, where each string contains a number, i.e. +# SET(Boost_ADDITIONAL_VERSIONS "0.99.0" "1.35.0") +# Boost_MINIMUM_VERSION Can be used to require a specific minimum version of boost. +# Should be set as a plain string in the form "major.minor[.subminor]". +# If this variable is set and find_package is called with the REQUIRED +# option, FindBoost.cmake will fail if it doesn't find a suitable version. +# BOOST_ROOT Preferred installation prefix for searching for Boost, +# set this if the module has problems finding the proper Boost installation +# BOOST_INCLUDEDIR Set this to the include directory of Boost, if the +# module has problems finding the proper Boost installation +# BOOST_LIBRARYDIR Set this to the lib directory of Boost, if the +# module has problems finding the proper Boost installation +# +# The last three variables are available also as environment variables +# +# +# Variables defined by this module: +# +# Boost_FOUND System has Boost, this means the include dir was found, +# as well as all the libraries specified in the COMPONENTS list +# Boost_INCLUDE_DIRS Boost include directories, not cached +# Boost_INCLUDE_DIR This is almost the same as above, but this one is cached and may be +# modified by advanced users +# Boost_LIBRARIES Link these to use the Boost libraries that you specified, not cached +# Boost_LIBRARY_DIRS The path to where the Boost library files are. +# Boost_VERSION The version number of the boost libraries that have been found, +# same as in version.hpp from Boost +# Boost_LIB_VERSION The version number in filename form as its appended to the library filenames +# Boost_MAJOR_VERSION major version number of boost +# Boost_MINOR_VERSION minor version number of boost +# Boost_SUBMINOR_VERSION subminor version number of boost +# Boost_LIB_DIAGNOSTIC_DEFINITIONS Only set on windows. Can be used with add_definitions +# to print diagnostic information about the automatic +# linking done on windows +# +# For each component you list the following variables are set. +# ATTENTION: The component names need to be in lower case, just as the boost +# library names however the cmake variables use upper case for the component +# part. So you'd get Boost_SERIALIZATION_FOUND for example. +# +# Boost_${COMPONENT}_FOUND True IF the Boost library "component" was found. +# Boost_${COMPONENT}_LIBRARY The absolute path of the Boost library "component". +# Boost_${COMPONENT}_LIBRARY_DEBUG The absolute path of the debug version of the +# Boost library "component". +# Boost_${COMPONENT}_LIBRARY_RELEASE The absolute path of the release version of the +# Boost library "component" +# +# Copyright (c) 2006-2008 Andreas Schneider +# Copyright (c) 2007 Wengo +# Copyright (c) 2007 Mike Jackson +# Copyright (c) 2008 Andreas Pakulat # -# TODO: +# Redistribution AND use is allowed according to the terms of the New +# BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. # -# 1) Automatically find the Boost library files and eliminate the need -# to use Link Directories. + +# MESSAGE(STATUS "Finding Boost libraries.... ") + +OPTION(Boost_USE_MULTITHREADED "Use the multithreaded versions of the boost libraries" ON) + +SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.36.1" "1.36.0" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1" "1.33.0" "1.33" ) + + +############################################ # +# Check the existence of the libraries. +# +############################################ +# This macro was taken directly from the FindQt4.cmake file that is included +# with the CMake distribution. This is NOT my work. All work was done by the +# original authors of the FindQt4.cmake file. Only minor modifications were +# made to remove references to Qt and make this file more generally applicable +######################################################################### + +MACRO (_Boost_ADJUST_LIB_VARS basename) + IF (Boost_INCLUDE_DIR ) + #MESSAGE(STATUS "Adjusting ${basename} ") + + IF (Boost_${basename}_LIBRARY_DEBUG AND Boost_${basename}_LIBRARY_RELEASE) + # if the generator supports configuration types then set + # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value + IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(Boost_${basename}_LIBRARY optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG}) + ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + # if there are no configuration types and CMAKE_BUILD_TYPE has no value + # then just use the release libraries + SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE} ) + ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(Boost_${basename}_LIBRARIES optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG}) + ENDIF (Boost_${basename}_LIBRARY_DEBUG AND Boost_${basename}_LIBRARY_RELEASE) + + # if only the release version was found, set the debug variable also to the release version + IF (Boost_${basename}_LIBRARY_RELEASE AND NOT Boost_${basename}_LIBRARY_DEBUG) + SET(Boost_${basename}_LIBRARY_DEBUG ${Boost_${basename}_LIBRARY_RELEASE}) + SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE}) + SET(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_RELEASE}) + ENDIF (Boost_${basename}_LIBRARY_RELEASE AND NOT Boost_${basename}_LIBRARY_DEBUG) -IF(WIN32) - # In windows, automatic linking is performed, so you do not have to specify the libraries. - # If you are linking to a dynamic runtime, then you can choose to link to either a static or a - # dynamic Boost library, the default is to do a static link. You can alter this for a specific - # library "whatever" by defining BOOST_WHATEVER_DYN_LINK to force Boost library "whatever" to - # be linked dynamically. Alternatively you can force all Boost libraries to dynamic link by - # defining BOOST_ALL_DYN_LINK. + # if only the debug version was found, set the release variable also to the debug version + IF (Boost_${basename}_LIBRARY_DEBUG AND NOT Boost_${basename}_LIBRARY_RELEASE) + SET(Boost_${basename}_LIBRARY_RELEASE ${Boost_${basename}_LIBRARY_DEBUG}) + SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_DEBUG}) + SET(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_DEBUG}) + ENDIF (Boost_${basename}_LIBRARY_DEBUG AND NOT Boost_${basename}_LIBRARY_RELEASE) - # This feature can be disabled for Boost library "whatever" by defining BOOST_WHATEVER_NO_LIB, - # or for all of Boost by defining BOOST_ALL_NO_LIB. + IF (Boost_${basename}_LIBRARY) + SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY} CACHE FILEPATH "The Boost ${basename} library") + GET_FILENAME_COMPONENT(Boost_LIBRARY_DIRS "${Boost_${basename}_LIBRARY}" PATH) + SET(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIRS} CACHE FILEPATH "Boost library directory") + SET(Boost_${basename}_FOUND ON CACHE INTERNAL "Was the boost boost ${basename} library found") + ENDIF (Boost_${basename}_LIBRARY) + + ENDIF (Boost_INCLUDE_DIR ) + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( + Boost_${basename}_LIBRARY + Boost_${basename}_LIBRARY_RELEASE + Boost_${basename}_LIBRARY_DEBUG + ) +ENDMACRO (_Boost_ADJUST_LIB_VARS) + +#------------------------------------------------------------------------------- - # If you want to observe which libraries are being linked against then defining - # BOOST_LIB_DIAGNOSTIC will cause the auto-linking code to emit a #pragma message each time - # a library is selected for linking. - SET(Boost_LIB_DIAGNOSTIC_DEFINITIONS "-DBOOST_LIB_DIAGNOSTIC") -ENDIF(WIN32) +SET( _boost_IN_CACHE TRUE) +IF(Boost_INCLUDE_DIR) + FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) + STRING(TOUPPER ${COMPONENT} COMPONENT) + IF(NOT Boost_${COMPONENT}_FOUND) + SET( _boost_IN_CACHE FALSE) + ENDIF(NOT Boost_${COMPONENT}_FOUND) + ENDFOREACH(COMPONENT) +ELSE(Boost_INCLUDE_DIR) + SET( _boost_IN_CACHE FALSE) +ENDIF(Boost_INCLUDE_DIR) -SET(BOOST_INCLUDE_PATH_DESCRIPTION "directory containing the boost include files. E.g /usr/local/include/boost-1_33_1 or c:\\boost\\include\\boost-1_33_1") +IF (_boost_IN_CACHE) + # in cache already + SET(Boost_FOUND TRUE) + FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) + STRING(TOUPPER ${COMPONENT} COMPONENT) + _Boost_ADJUST_LIB_VARS( ${COMPONENT} ) + SET(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${COMPONENT}_LIBRARY}) + ENDFOREACH(COMPONENT) + SET(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIR}) + IF(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0") + MATH(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000") + MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000") + MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100") + ENDIF(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0") +ELSE (_boost_IN_CACHE) + # Need to search for boost -SET(BOOST_DIR_MESSAGE "Set the Boost_INCLUDE_DIR cmake cache entry to the ${BOOST_INCLUDE_PATH_DESCRIPTION}") + IF(WIN32) + # In windows, automatic linking is performed, so you do not have to specify the libraries. + # If you are linking to a dynamic runtime, then you can choose to link to either a static or a + # dynamic Boost library, the default is to do a static link. You can alter this for a specific + # library "whatever" by defining BOOST_WHATEVER_DYN_LINK to force Boost library "whatever" to + # be linked dynamically. Alternatively you can force all Boost libraries to dynamic link by + # defining BOOST_ALL_DYN_LINK. -SET(BOOST_DIR_SEARCH $ENV{BOOST_ROOT}) -IF(BOOST_DIR_SEARCH) - FILE(TO_CMAKE_PATH ${BOOST_DIR_SEARCH} BOOST_DIR_SEARCH) - SET(BOOST_DIR_SEARCH ${BOOST_DIR_SEARCH}/include) -ENDIF(BOOST_DIR_SEARCH) + # This feature can be disabled for Boost library "whatever" by defining BOOST_WHATEVER_NO_LIB, + # or for all of Boost by defining BOOST_ALL_NO_LIB. -IF(WIN32) - SET(BOOST_DIR_SEARCH - ${BOOST_DIR_SEARCH} + # If you want to observe which libraries are being linked against then defining + # BOOST_LIB_DIAGNOSTIC will cause the auto-linking code to emit a #pragma message each time + # a library is selected for linking. + SET(Boost_LIB_DIAGNOSTIC_DEFINITIONS "-DBOOST_LIB_DIAGNOSTIC" CACHE STRING "Boost diagnostic define") + ENDIF(WIN32) + + + SET(_boost_INCLUDE_SEARCH_DIRS C:/boost/include - D:/boost/include + "C:/Program Files/boost/boost_${Boost_MINIMUM_VERSION}" + # D: is very often the cdrom drive, IF you don't have a + # cdrom inserted it will popup a very annoying dialog + #D:/boost/include + /sw/local/include ) -ENDIF(WIN32) - -# Add in some path suffixes. These will have to be updated whenever a new Boost version comes out. -SET(SUFFIX_FOR_PATH - boost-1_34_1 - boost-1_34_0 - boost-1_34 - boost-1_33_1 - boost-1_33_0 - boost-1_33 -) -# -# Look for an installation. -# -FIND_PATH(Boost_INCLUDE_DIR NAMES boost/config.hpp PATH_SUFFIXES ${SUFFIX_FOR_PATH} PATHS + SET(_boost_LIBRARIES_SEARCH_DIRS + C:/boost/lib + "C:/Program Files/boost/boost_${Boost_MINIMUM_VERSION}/lib" + /sw/local/lib + ) - # Look in other places. - ${BOOST_DIR_SEARCH} + IF( NOT $ENV{BOOST_ROOT} STREQUAL "" ) + SET(_boost_INCLUDE_SEARCH_DIRS $ENV{BOOST_ROOT}/include ${_boost_INCLUDE_SEARCH_DIRS}) + SET(_boost_LIBRARIES_SEARCH_DIRS $ENV{BOOST_ROOT}/lib ${_boost_INCLUDE_SEARCH_DIRS}) + ENDIF( NOT $ENV{BOOST_ROOT} STREQUAL "" ) - # Help the user find it if we cannot. - DOC "The ${BOOST_INCLUDE_PATH_DESCRIPTION}" -) + IF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" ) + SET(_boost_INCLUDE_SEARCH_DIRS $ENV{BOOST_INCLUDEDIR} ${_boost_INCLUDE_SEARCH_DIRS}) + ENDIF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" ) -# Assume we didn't find it. -SET(Boost_FOUND 0) + IF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" ) + SET(_boost_LIBRARIES_SEARCH_DIRS $ENV{BOOST_LIBRARYDIR} ${_boost_INCLUDE_SEARCH_DIRS}) + ENDIF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" ) -# Now try to get the include and library path. -IF(Boost_INCLUDE_DIR) + IF( BOOST_ROOT ) + IF( WIN32 ) + SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_ROOT} ${_boost_INCLUDE_SEARCH_DIRS}) + ELSE( WIN32 ) + SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_ROOT}/include ${_boost_INCLUDE_SEARCH_DIRS}) + ENDIF( WIN32 ) + SET(_boost_LIBRARIES_SEARCH_DIRS ${BOOST_ROOT}/lib ${_boost_LIBRARIES_SEARCH_DIRS}) + ENDIF( BOOST_ROOT ) - # Look for the boost library path. - # Note that the user may not have installed any libraries - # so it is quite possible the Boost_LIBRARY_PATH may not exist. - SET(Boost_LIBRARY_DIR ${Boost_INCLUDE_DIR}) - - IF("${Boost_LIBRARY_DIR}" MATCHES "boost-[0-9]+") - GET_FILENAME_COMPONENT(Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR} PATH) - ENDIF ("${Boost_LIBRARY_DIR}" MATCHES "boost-[0-9]+") - - IF("${Boost_LIBRARY_DIR}" MATCHES "/include$") - # Strip off the trailing "/include" in the path. - GET_FILENAME_COMPONENT(Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR} PATH) - ENDIF("${Boost_LIBRARY_DIR}" MATCHES "/include$") - - IF(EXISTS "${Boost_LIBRARY_DIR}/lib") - SET (Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR}/lib) - ELSE(EXISTS "${Boost_LIBRARY_DIR}/lib") - IF(EXISTS "${Boost_LIBRARY_DIR}/stage/lib") - SET(Boost_LIBRARY_DIR ${Boost_LIBRARY_DIR}/stage/lib) - ELSE(EXISTS "${Boost_LIBRARY_DIR}/stage/lib") - SET(Boost_LIBRARY_DIR "") - ENDIF(EXISTS "${Boost_LIBRARY_DIR}/stage/lib") - ENDIF(EXISTS "${Boost_LIBRARY_DIR}/lib") - - IF(EXISTS "${Boost_INCLUDE_DIR}") - SET(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIR}) - # We have found boost. It is possible that the user has not - # compiled any libraries so we set Boost_FOUND to be true here. - SET(Boost_FOUND 1) - ENDIF(EXISTS "${Boost_INCLUDE_DIR}") - - IF(Boost_LIBRARY_DIR AND EXISTS "${Boost_LIBRARY_DIR}") - SET(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIR}) - ENDIF(Boost_LIBRARY_DIR AND EXISTS "${Boost_LIBRARY_DIR}") -ENDIF(Boost_INCLUDE_DIR) + IF( BOOST_INCLUDEDIR ) + SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_INCLUDEDIR} ${_boost_INCLUDE_SEARCH_DIRS}) + ENDIF( BOOST_INCLUDEDIR ) + + IF( BOOST_LIBRARYDIR ) + SET(_boost_LIBRARIES_SEARCH_DIRS ${BOOST_LIBRARYDIR} ${_boost_LIBRARIES_SEARCH_DIRS}) + ENDIF( BOOST_LIBRARYDIR ) + + IF( Boost_MINIMUM_VERSION ) + IF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\2" Boost_FIND_VERSION_MINOR ${Boost_MINIMUM_VERSION}) + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\3" Boost_FIND_VERSION_PATCH ${Boost_MINIMUM_VERSION}) + ELSEIF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+") + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\2" Boost_FIND_VERSION_MINOR ${Boost_MINIMUM_VERSION}) + SET(Boost_FIND_VERSION_PATCH 0) + ELSE(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") + MESSAGE(FATAL_ERROR "Wrong format for Boost_MINIMUM_VERSION variable, the format needs to be major.minor[.subminor]") + ENDIF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") + + ENDIF( Boost_MINIMUM_VERSION ) + + + # Try first in our own include search paths (e.g. BOOST_ROOT) + FOREACH(_boost_VER ${_boost_TEST_VERSIONS}) + IF( NOT Boost_INCLUDE_DIR ) + + # Add in a path suffix, based on the required version, ideally we could + # read this from version.hpp, but for that to work we'd need to know the include + # dir already + SET(_boost_PATH_SUFFIX + boost-${_boost_VER} + ) -IF(NOT Boost_FOUND) - IF(NOT Boost_FIND_QUIETLY) - MESSAGE(STATUS "Boost was not found. ${BOOST_DIR_MESSAGE}") - ELSE(NOT Boost_FIND_QUIETLY) - IF(Boost_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Boost was not found. ${BOOST_DIR_MESSAGE}") - ENDIF(Boost_FIND_REQUIRED) - ENDIF(NOT Boost_FIND_QUIETLY) -ENDIF(NOT Boost_FOUND) + IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) + ELSEIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+") + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) + ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") + + FIND_PATH(Boost_INCLUDE_DIR + NAMES boost/config.hpp + PATHS ${_boost_INCLUDE_SEARCH_DIRS} + PATH_SUFFIXES ${_boost_PATH_SUFFIX} + NO_DEFAULT_PATH + ) + + ENDIF( NOT Boost_INCLUDE_DIR ) + ENDFOREACH(_boost_VER) + + # If nothing is found search again using system default paths + FOREACH(_boost_VER ${_boost_TEST_VERSIONS}) + IF( NOT Boost_INCLUDE_DIR ) + + # Add in a path suffix, based on the required version, ideally we could + # read this from version.hpp, but for that to work we'd need to know the include + # dir already + SET(_boost_PATH_SUFFIX + boost-${_boost_VER} + ) + + IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) + ELSEIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+") + STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) + ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") + + FIND_PATH(Boost_INCLUDE_DIR + NAMES boost/config.hpp + PATH_SUFFIXES ${_boost_PATH_SUFFIX} + ) + + ENDIF(NOT Boost_INCLUDE_DIR) + ENDFOREACH(_boost_VER) + + IF(Boost_INCLUDE_DIR) + # Extract Boost_VERSION and Boost_LIB_VERSION from version.hpp + # Read the whole file: + # + SET(BOOST_VERSION 0) + SET(BOOST_LIB_VERSION "") + FILE(READ "${Boost_INCLUDE_DIR}/boost/version.hpp" _boost_VERSION_HPP_CONTENTS) + + STRING(REGEX REPLACE ".*#define BOOST_VERSION ([0-9]+).*" "\\1" Boost_VERSION "${_boost_VERSION_HPP_CONTENTS}") + STRING(REGEX REPLACE ".*#define BOOST_LIB_VERSION \"([0-9_]+)\".*" "\\1" Boost_LIB_VERSION "${_boost_VERSION_HPP_CONTENTS}") + + SET(Boost_LIB_VERSION ${Boost_LIB_VERSION} CACHE INTERNAL "The library version string for boost libraries") + SET(Boost_VERSION ${Boost_VERSION} CACHE INTERNAL "The version number for boost libraries") + + IF(NOT "${Boost_VERSION}" STREQUAL "0") + MATH(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000") + MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000") + MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100") + ENDIF(NOT "${Boost_VERSION}" STREQUAL "0") + ENDIF(Boost_INCLUDE_DIR) + + #Setting some more suffixes for the library + SET (Boost_LIB_PREFIX "") + IF ( WIN32 AND Boost_USE_STATIC_LIBS ) + SET (Boost_LIB_PREFIX "lib") + ENDIF ( WIN32 AND Boost_USE_STATIC_LIBS ) + SET (_boost_COMPILER "-gcc") + IF (MSVC71) + SET (_boost_COMPILER "-vc71") + ENDIF(MSVC71) + IF (MSVC80) + SET (_boost_COMPILER "-vc80") + ENDIF(MSVC80) + IF (MSVC90) + SET (_boost_COMPILER "-vc90") + ENDIF(MSVC90) + IF (MINGW) + EXEC_PROGRAM(${CMAKE_CXX_COMPILER} + ARGS --version + OUTPUT_VARIABLE _boost_COMPILER_VERSION + ) + STRING(REGEX REPLACE ".* ([0-9])\\.([0-9])\\.[0-9].*" "\\1\\2" + _boost_COMPILER_VERSION ${_boost_COMPILER_VERSION}) + SET (_boost_COMPILER "-mgw${_boost_COMPILER_VERSION}") + ENDIF(MINGW) + IF (CYGWIN) + SET (_boost_COMPILER "-gcc") + ENDIF (CYGWIN) + IF (UNIX) + IF (APPLE) + SET (_boost_COMPILER "") + ELSE (APPLE) + IF (NOT CMAKE_COMPILER_IS_GNUCC) + # This is for the intel compiler + SET (_boost_COMPILER "-il") + ELSE (NOT CMAKE_COMPILER_IS_GNUCC) + #find out the version of gcc being used. + EXEC_PROGRAM(${CMAKE_CXX_COMPILER} + ARGS --version + OUTPUT_VARIABLE _boost_COMPILER_VERSION + ) + STRING(REGEX MATCH "([0-9])\\.([0-9])\\.[0-9]" + _boost_COMPILER_VERSION ${_boost_COMPILER_VERSION}) + STRING(REGEX REPLACE "([0-9])\\.([0-9])\\.[0-9]" "\\1\\2" + _boost_COMPILER_VERSION ${_boost_COMPILER_VERSION}) + SET (_boost_COMPILER "-gcc${_boost_COMPILER_VERSION}") + ENDIF (NOT CMAKE_COMPILER_IS_GNUCC) + ENDIF (APPLE) + ENDIF(UNIX) + + SET (_boost_MULTITHREADED "-mt") + + IF( NOT Boost_USE_MULTITHREADED ) + SET (_boost_MULTITHREADED "") + ENDIF( NOT Boost_USE_MULTITHREADED ) + + SET( _boost_STATIC_TAG "") + IF (WIN32) + IF(MSVC) + SET (_boost_ABI_TAG "g") + ENDIF(MSVC) + IF( Boost_USE_STATIC_LIBS ) + SET( _boost_STATIC_TAG "-s") + ENDIF( Boost_USE_STATIC_LIBS ) + ENDIF(WIN32) + SET (_boost_ABI_TAG "${_boost_ABI_TAG}d") + + # ------------------------------------------------------------------------ + # Begin finding boost libraries + # ------------------------------------------------------------------------ + FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) + STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT) + SET( Boost_${UPPERCOMPONENT}_LIBRARY "Boost_${UPPERCOMPONENT}_LIBRARY-NOTFOUND" ) + SET( Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE "Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE-NOTFOUND" ) + SET( Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG "Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG-NOTFOUND") + # Support preference of static libs by adjusting CMAKE_FIND_LIBRARY_SUFFIXES + IF( Boost_USE_STATIC_LIBS ) + SET( _boost_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) + IF(WIN32) + SET(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) + ELSE(WIN32) + SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) + ENDIF(WIN32) + ENDIF( Boost_USE_STATIC_LIBS ) + FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE + NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG} + ${Boost_LIB_PREFIX}boost_${COMPONENT} + PATHS ${_boost_LIBRARIES_SEARCH_DIRS} + NO_DEFAULT_PATH + ) + + IF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE} ) + FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE + NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG} + ${Boost_LIB_PREFIX}boost_${COMPONENT} + ) + ENDIF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE} ) + + FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG + NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${_boost_ABI_TAG}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}-${_boost_ABI_TAG} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG} + ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_boost_ABI_TAG} + PATHS ${_boost_LIBRARIES_SEARCH_DIRS} + NO_DEFAULT_PATH + ) + + IF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG} ) + FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG + NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${_boost_ABI_TAG}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}-${Boost_LIB_VERSION} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}-${_boost_ABI_TAG} + ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG} + ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_boost_ABI_TAG} + ) + ENDIF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG} ) + IF( Boost_USE_STATIC_LIBS ) + SET(CMAKE_FIND_LIBRARY_SUFFIXES ${_boost_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) + ENDIF( Boost_USE_STATIC_LIBS ) + + _Boost_ADJUST_LIB_VARS(${UPPERCOMPONENT}) + ENDFOREACH(COMPONENT) + # ------------------------------------------------------------------------ + # End finding boost libraries + # ------------------------------------------------------------------------ + + SET(Boost_INCLUDE_DIRS + ${Boost_INCLUDE_DIR} + ) + + # MESSAGE(STATUS "Boost_INCLUDE_DIRS: ${Boost_INCLUDE_DIRS}") + # MESSAGE(STATUS "Boost_LIBRARIES: ${Boost_LIBRARIES}") + + SET(Boost_FOUND FALSE) + IF(Boost_INCLUDE_DIR) + SET( Boost_FOUND TRUE ) + IF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) + SET( Boost_FOUND FALSE ) + ELSE( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) + IF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) + SET( Boost_FOUND FALSE ) + ELSE( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) + IF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) + SET( Boost_FOUND FALSE ) + ENDIF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) + ENDIF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) + ENDIF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) + set(_boost_CHECKED_COMPONENT FALSE) + FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) + STRING(TOUPPER ${COMPONENT} COMPONENT) + set(_boost_CHECKED_COMPONENT TRUE) + IF(NOT Boost_${COMPONENT}_FOUND) + SET( Boost_FOUND FALSE) + ENDIF(NOT Boost_${COMPONENT}_FOUND) + ENDFOREACH(COMPONENT) + IF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT ) + # Compatibility Code for backwards compatibility with CMake 2.4 + + # Look for the boost library path. + # Note that the user may not have installed any libraries + # so it is quite possible the Boost_LIBRARY_PATH may not exist. + SET(_boost_LIB_DIR ${Boost_INCLUDE_DIR}) + + IF("${_boost_LIB_DIR}" MATCHES "boost-[0-9]+") + GET_FILENAME_COMPONENT(_boost_LIB_DIR ${_boost_LIB_DIR} PATH) + ENDIF ("${_boost_LIB_DIR}" MATCHES "boost-[0-9]+") + + IF("${_boost_LIB_DIR}" MATCHES "/include$") + # Strip off the trailing "/include" in the path. + GET_FILENAME_COMPONENT(_boost_LIB_DIR ${_boost_LIB_DIR} PATH) + ENDIF("${_boost_LIB_DIR}" MATCHES "/include$") + + IF(EXISTS "${_boost_LIB_DIR}/lib") + SET (_boost_LIB_DIR ${_boost_LIB_DIR}/lib) + ELSE(EXISTS "${_boost_LIB_DIR}/lib") + IF(EXISTS "${_boost_LIB_DIR}/stage/lib") + SET(_boost_LIB_DIR ${_boost_LIB_DIR}/stage/lib) + ELSE(EXISTS "${_boost_LIB_DIR}/stage/lib") + SET(_boost_LIB_DIR "") + ENDIF(EXISTS "${_boost_LIB_DIR}/stage/lib") + ENDIF(EXISTS "${_boost_LIB_DIR}/lib") + + IF(_boost_LIB_DIR AND EXISTS "${_boost_LIB_DIR}") + SET(Boost_LIBRARY_DIRS ${_boost_LIB_DIR} CACHE FILEPATH "Boost library directory") + ENDIF(_boost_LIB_DIR AND EXISTS "${_boost_LIB_DIR}") + + ENDIF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT ) + + ELSE(Boost_INCLUDE_DIR) + SET( Boost_FOUND FALSE) + ENDIF(Boost_INCLUDE_DIR) + + IF (Boost_FOUND) + IF (NOT Boost_FIND_QUIETLY) + MESSAGE(STATUS "Boost version: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}") + MESSAGE(STATUS "Found the following Boost libraries:") + ENDIF (NOT Boost_FIND_QUIETLY) + + FOREACH ( COMPONENT ${Boost_FIND_COMPONENTS} ) + STRING( TOUPPER ${COMPONENT} UPPERCOMPONENT ) + IF ( Boost_${UPPERCOMPONENT}_FOUND ) + IF (NOT Boost_FIND_QUIETLY) + MESSAGE (STATUS " ${COMPONENT}") + ENDIF (NOT Boost_FIND_QUIETLY) + SET(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY}) + ENDIF ( Boost_${UPPERCOMPONENT}_FOUND ) + ENDFOREACH(COMPONENT) + ELSE (Boost_FOUND) + IF (Boost_FIND_REQUIRED) + MESSAGE(STATUS "Boost Version required: ${Boost_FIND_VERSION_MAJOR}.${Boost_FIND_VERSION_MINOR}.${Boost_FIND_VERSION_PATCH} Found: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}") + MESSAGE(FATAL_ERROR "Couldn't find the Boost libraries and/or include directory, or the version found is too old. Please install the Boost libraries AND development packages. You can set BOOST_ROOT, BOOST_INCLUDEDIR and BOOST_LIBRARYDIR to help find Boost.") + ENDIF(Boost_FIND_REQUIRED) + ENDIF(Boost_FOUND) + + # Under Windows, automatic linking is performed, so no need to specify the libraries. + IF (WIN32) + IF (NOT MINGW) + SET(Boost_LIBRARIES "") + ENDIF (NOT MINGW) + ENDIF(WIN32) + + # show the Boost_INCLUDE_DIRS AND Boost_LIBRARIES variables only in the advanced view + MARK_AS_ADVANCED(Boost_INCLUDE_DIR + Boost_INCLUDE_DIRS + Boost_LIBRARY_DIRS + Boost_USE_MULTITHREADED + ) +ENDIF(_boost_IN_CACHE) -- cgit v1.2.1 From eb8b7009c84d207c26d78b7b8a66502466ae97d1 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 7 Jul 2008 12:37:43 +0000 Subject: add a configure check and add -D_FILE_OFFSET_BITS=64 if needed svn path=/trunk/KDE/kdelibs/; revision=829068 --- modules/FindKDE4Internal.cmake | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9d9f22cb..230ca1d5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -873,6 +873,25 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) endif (CMAKE_C_COMPILER MATCHES "icc") endif (CMAKE_SYSTEM_NAME MATCHES Linux) +if (UNIX) + set ( _KDE4_PLATFORM_DEFINITIONS "${_KDE4_PLATFORM_DEFINITIONS} -D_LARGEFILE64_SOURCE") + + check_cxx_source_compiles(" +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1]; +" + _OFFT_IS_64BIT) + + if (not ${_OFFT_IS_64BIT}) + set ( _KDE4_PLATFORM_DEFINITIONS "${_KDE4_PLATFORM_DEFINITIONS} -D_FILE_OFFSET_BITS=64") + endif (not ${_OFFT_IS_64BIT}) +endif (UNIX) if (CMAKE_SYSTEM_NAME MATCHES BSD) set ( _KDE4_PLATFORM_DEFINITIONS -D_GNU_SOURCE ) -- cgit v1.2.1 From 7b547193adc09704c9fc69b22378c97452821b78 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 7 Jul 2008 14:36:58 +0000 Subject: Fix obviously untested commit ("undefined reference to main"; wrong if syntax; test said that off_t wasn't 64 bit on a 64 bit machine...) svn path=/trunk/KDE/kdelibs/; revision=829098 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 230ca1d5..d8df175e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -885,12 +885,12 @@ if (UNIX) #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1]; -" - _OFFT_IS_64BIT) + int main() { return 0; } +" _OFFT_IS_64BIT) - if (not ${_OFFT_IS_64BIT}) + if (NOT _OFFT_IS_64BIT) set ( _KDE4_PLATFORM_DEFINITIONS "${_KDE4_PLATFORM_DEFINITIONS} -D_FILE_OFFSET_BITS=64") - endif (not ${_OFFT_IS_64BIT}) + endif (NOT _OFFT_IS_64BIT) endif (UNIX) if (CMAKE_SYSTEM_NAME MATCHES BSD) -- cgit v1.2.1 From 4ac89e1a560941849a0365297c11e276a421bbf4 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Mon, 7 Jul 2008 14:44:28 +0000 Subject: Add some text explaining the FFMPEG include search paths svn path=/trunk/KDE/kdelibs/; revision=829102 --- modules/FindFFmpeg.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindFFmpeg.cmake b/modules/FindFFmpeg.cmake index 0f8ad9dd..8baf0af7 100644 --- a/modules/FindFFmpeg.cmake +++ b/modules/FindFFmpeg.cmake @@ -26,6 +26,13 @@ IF (NOT WIN32) ENDIF (NOT WIN32) #set(FFMPEG_DEFINITIONS ${_FFMPEGCflags}) + # + # #include is the new style for FFMPEG headers + # This has been verified at least since 0.4.9 + # Please do not change to the old format, since this will break for + # people who are using newer versions. Instead, upgrade your ffmpeg + # installation. + # find_path(FFMPEG_INCLUDE_DIR libavcodec/avcodec.h PATHS ${_FFMPEGIncDir} -- cgit v1.2.1 From fecb91c50f5a06aed686aa2b3d3158c65ca80bca Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 7 Jul 2008 22:09:58 +0000 Subject: -make automoc4 required finally (... 4.1 is not too far away) Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: kretz@kde.org svn path=/trunk/KDE/kdelibs/; revision=829250 --- modules/FindKDE4Internal.cmake | 47 +++++------------------ modules/KDE4Macros.cmake | 85 ++---------------------------------------- 2 files changed, 14 insertions(+), 118 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d8df175e..83213217 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -16,7 +16,7 @@ # compile KDE software: # # KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable -# KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable +# KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable, deprecated, use AUTOMOC4_EXECUTABLE instead # KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable # KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable # @@ -238,9 +238,10 @@ set(QT_MIN_VERSION "4.4.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 REQUIRED) -# automoc4 (from kdesupport) is not yet required, but will be in June -# until then still automoc from kdelibs is used as fallback, Alex -find_package(Automoc4) +# automoc4 (from kdesupport) is now required, Alex +find_package(Automoc4 REQUIRED) +# use automoc4 from kdesupport +set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) # Perl is required for building KDE software, find_package(Perl REQUIRED) @@ -287,26 +288,12 @@ if (_kdeBootStrapping) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - # use automoc4 from kdesupport if it has been found - if(AUTOMOC4_EXECUTABLE) - set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) - else(AUTOMOC4_EXECUTABLE) - set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc ) - endif(AUTOMOC4_EXECUTABLE) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) - # use automoc4 from kdesupport if it has been found - if(AUTOMOC4_EXECUTABLE) - set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) - else(AUTOMOC4_EXECUTABLE) - set(KDE4_AUTOMOC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kde4automoc.shell ) - endif(AUTOMOC4_EXECUTABLE) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) endif (WIN32) @@ -318,19 +305,12 @@ if (_kdeBootStrapping) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) - if(AUTOMOC4_EXECUTABLE) - set( _KDE4_AUTOMOC_EXECUTABLE_DEP) - else(AUTOMOC4_EXECUTABLE) - set( _KDE4_AUTOMOC_EXECUTABLE_DEP kde4automoc) - endif(AUTOMOC4_EXECUTABLE) - set(KDE4_INSTALLED_VERSION_OK TRUE) else (_kdeBootStrapping) # ... but NOT otherwise set( _KDE4_KCONFIG_COMPILER_DEP) - set( _KDE4_AUTOMOC_EXECUTABLE_DEP) set( _KDE4_MAKEKDEWIDGETS_DEP) set( _KDE4_MEINPROC_EXECUTABLE_DEP) @@ -455,13 +435,6 @@ else (_kdeBootStrapping) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) - if (AUTOMOC4_EXECUTABLE) - set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}") - else (AUTOMOC4_EXECUTABLE) - find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_AUTOMOC_EXECUTABLE NAME kde4automoc ) - endif (AUTOMOC4_EXECUTABLE) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) @@ -1091,11 +1064,11 @@ macro (KDE4_PRINT_RESULTS) message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") endif(KDE4_KCFGC_EXECUTABLE) - if(KDE4_AUTOMOC_EXECUTABLE) - message(STATUS "Found KDE4 automoc: ${KDE4_AUTOMOC_EXECUTABLE}") - else(KDE4_AUTOMOC_EXECUTABLE) - message(STATUS "Didn't find the KDE4 automoc") - endif(KDE4_AUTOMOC_EXECUTABLE) + if(AUTOMOC4_EXECUTABLE) + message(STATUS "Found automoc4: ${AUTOMOC4_EXECUTABLE}") + else(AUTOMOC4_EXECUTABLE) + message(STATUS "Didn't find the automoc4") + endif(AUTOMOC4_EXECUTABLE) endmacro (KDE4_PRINT_RESULTS) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 63740583..6da11793 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -161,90 +161,13 @@ endmacro (_KDE4_GET_CUSTOM_TARGET_PROPERTY) macro (KDE4_MOC_HEADERS _target_NAME) - # if automoc4 from kdesupport has been found, use the macro provided there, - # otherwise fall back to the kdelibs one - if (AUTOMOC4_EXECUTABLE) - AUTOMOC4_MOC_HEADERS(${_target_NAME} ${ARGN}) - else (AUTOMOC4_EXECUTABLE) - set (_headers_to_moc) - foreach (_current_FILE ${ARGN}) - get_filename_component(_suffix "${_current_FILE}" EXT) - if (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - list(APPEND _headers_to_moc ${_current_FILE}) - else (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - message(STATUS "KDE4_MOC_HEADERS: ignoring non-header file ${_current_FILE}") - endif (".h" STREQUAL "${_suffix}" OR ".hpp" STREQUAL "${_suffix}" OR ".hxx" STREQUAL "${_suffix}" OR ".H" STREQUAL "${_suffix}") - endforeach (_current_FILE) - # need to create moc_.cpp file using kde4automoc.cmake - # and add it to the target - if(_headers_to_moc) - _kde4_set_custom_target_property(${_target_NAME} AUTOMOC_HEADERS "${_headers_to_moc}") - endif(_headers_to_moc) - endif (AUTOMOC4_EXECUTABLE) + # if automoc4 from kdesupport has been found, use the macro provided there + automoc4_moc_headers(${_target_NAME} ${ARGN}) endmacro (KDE4_MOC_HEADERS) macro(KDE4_HANDLE_AUTOMOC _target_NAME _SRCS) - # if automoc4 from kdesupport has been found, use the macro provided there, - # otherwise fall back to the kdelibs one - if (AUTOMOC4_EXECUTABLE) - AUTOMOC4(${_target_NAME} ${_SRCS}) - else (AUTOMOC4_EXECUTABLE) - set(_moc_files) - set(_moc_headers) - - # first list all explicitly set headers - _kde4_get_custom_target_property(_headers_to_moc ${_target_NAME} AUTOMOC_HEADERS) - if(NOT _headers_to_moc STREQUAL "NOTFOUND") - foreach(_header_to_moc ${_headers_to_moc}) - get_filename_component(_abs_header ${_header_to_moc} ABSOLUTE) - list(APPEND _moc_files ${_abs_header}) - list(APPEND _moc_headers ${_abs_header}) - endforeach(_header_to_moc) - endif(NOT _headers_to_moc STREQUAL "NOTFOUND") - - # now add all the sources for the automoc - foreach (_current_FILE ${${_SRCS}}) - get_filename_component(_abs_current_FILE "${_current_FILE}" ABSOLUTE) - get_source_file_property(_skip "${_abs_current_FILE}" SKIP_AUTOMOC) - get_source_file_property(_generated "${_abs_current_FILE}" GENERATED) - - if(NOT _generated AND NOT _skip) - get_filename_component(_suffix "${_current_FILE}" EXT) - # skip every source file that's not C++ - if(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") - get_filename_component(_basename "${_current_FILE}" NAME_WE) - get_filename_component(_abs_path "${_abs_current_FILE}" PATH) - set(_header "${_abs_path}/${_basename}.h") - if(EXISTS "${_header}") - list(APPEND _moc_headers ${_header}) - endif(EXISTS "${_header}") - set(_pheader "${_abs_path}/${_basename}_p.h") - if(EXISTS "${_pheader}") - list(APPEND _moc_headers ${_pheader}) - endif(EXISTS "${_pheader}") - list(APPEND _moc_files ${_abs_current_FILE}) - endif(_suffix STREQUAL ".cpp" OR _suffix STREQUAL ".cc" OR _suffix STREQUAL ".cxx" OR _suffix STREQUAL ".C") - endif(NOT _generated AND NOT _skip) - endforeach (_current_FILE) - - if(_moc_files) - set(_automoc_source "${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_automoc.cpp") - get_directory_property(_moc_incs INCLUDE_DIRECTORIES) - configure_file(${KDE4_MODULE_DIR}/kde4automoc.files.in ${_automoc_source}.files) - add_custom_command(OUTPUT ${_automoc_source} - COMMAND ${KDE4_AUTOMOC_EXECUTABLE} - ${_automoc_source} - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} - ${QT_MOC_EXECUTABLE} - DEPENDS ${${_SRCS}} ${_moc_headers} ${_automoc_source}.files ${_KDE4_AUTOMOC_EXECUTABLE_DEP} - ) - # the OBJECT_DEPENDS is only necessary when a new moc file has to be generated that is included in a source file - # problem: the whole target is recompiled when the automoc.cpp file is touched - # set_source_files_properties(${${_SRCS}} PROPERTIES OBJECT_DEPENDS ${_automoc_source}) - set(${_SRCS} ${_automoc_source} ${${_SRCS}}) - endif(_moc_files) - endif (AUTOMOC4_EXECUTABLE) + # if automoc4 from kdesupport has been found, use the macro provided there + automoc4(${_target_NAME} ${_SRCS}) endmacro(KDE4_HANDLE_AUTOMOC) macro(KDE4_INSTALL_TS_FILES _lang _sdir) -- cgit v1.2.1 From 54f94006b8bb79bccf17b2de46f8b7b0a4c6e090 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 8 Jul 2008 21:54:53 +0000 Subject: -apply patch from guru AT computer-rave DOT com , search CMAKE_INSTALL_PREFIX correctly, i.e. without the "/lib", since this is already part of the PATH_SUFFIX Alex svn path=/trunk/KDE/kdelibs/; revision=829705 --- modules/FindAutomoc4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index 6052d2c5..ad3ed05f 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -32,7 +32,7 @@ else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 PATHS ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} - ${CMAKE_INSTALL_PREFIX}/lib + ${CMAKE_INSTALL_PREFIX} NO_DEFAULT_PATH ) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") -- cgit v1.2.1 From b2c19873fae32927ac9e1ecbb6a57fc9951fa8e8 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 9 Jul 2008 20:07:00 +0000 Subject: 4.1 -> 4.2 svn path=/branches/KDE/4.1/kdelibs/; revision=830126 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 83213217..e873d0ee 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1046,13 +1046,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.1 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.2 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.1 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.2 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find KDE 4 core library") endif(KDE4_LIB_DIR) -- cgit v1.2.1 From 786bddac098895df0de680edf2f85a4627009a71 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 9 Jul 2008 20:11:31 +0000 Subject: revert. wrong branch dummy! svn path=/branches/KDE/4.1/kdelibs/; revision=830130 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e873d0ee..83213217 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1046,13 +1046,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.2 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.1 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.2 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.1 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find KDE 4 core library") endif(KDE4_LIB_DIR) -- cgit v1.2.1 From de0eb9f8ee0b1862405f4e84c8d571b18cac32e2 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 9 Jul 2008 20:12:36 +0000 Subject: 4.1 -> 4.2 svn path=/trunk/KDE/kdelibs/; revision=830131 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 83213217..e873d0ee 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1046,13 +1046,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.1 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.2 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.1 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.2 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find KDE 4 core library") endif(KDE4_LIB_DIR) -- cgit v1.2.1 From 93e82c9bc1fbe7eefdd80e3c2754ac9c0e0167db Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 11 Jul 2008 10:33:24 +0000 Subject: Fix compilation of kdegraphics with exiv2-0.12 installed on the computer. The code uses AccessMode which was added in 0.13, so at least for kdegraphics, the min version for a usable exiv2 is 0.13. CCMAIL: caulier.gilles@gmail.com svn path=/branches/KDE/4.1/kdelibs/; revision=830862 --- modules/FindExiv2.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 884be4ed..5555c92e 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -17,17 +17,21 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) + + if(NOT EXIV2_MIN_VERSION) + set(EXIV2_MIN_VERSION "0.12") + endif(NOT EXIV2_MIN_VERSION) PKGCONFIG(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) if(_EXIV2LinkFlags) # query pkg-config asking for a Exiv2 >= 0.12 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.12 exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release >= 0.12") + message(STATUS "Found Exiv2 release >= ${EXIV2_MIN_VERSION}") set(EXIV2_VERSION_GOOD_FOUND TRUE) else(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release < 0.12") + message(STATUS "Found Exiv2 release < ${EXIV2_MIN_VERSION}") endif(_return_VALUE STREQUAL "0") else(_EXIV2LinkFlags) set(EXIV2_FOUND FALSE) @@ -54,6 +58,7 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) set(EXIV2_FOUND TRUE) + # TODO version check is missing endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) endif(EXIV2_VERSION_GOOD_FOUND) if (EXIV2_FOUND) -- cgit v1.2.1 From 09583bb25791fc4dc0db770b3700f21e18f7d018 Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 11 Jul 2008 10:50:51 +0000 Subject: Forwardport 830862, kexiv2 requires exiv2 >= 0.13 for AccessMode. svn path=/trunk/KDE/kdelibs/; revision=830871 --- modules/FindExiv2.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 884be4ed..5555c92e 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -17,17 +17,21 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls INCLUDE(UsePkgConfig) + + if(NOT EXIV2_MIN_VERSION) + set(EXIV2_MIN_VERSION "0.12") + endif(NOT EXIV2_MIN_VERSION) PKGCONFIG(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) if(_EXIV2LinkFlags) # query pkg-config asking for a Exiv2 >= 0.12 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.12 exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release >= 0.12") + message(STATUS "Found Exiv2 release >= ${EXIV2_MIN_VERSION}") set(EXIV2_VERSION_GOOD_FOUND TRUE) else(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release < 0.12") + message(STATUS "Found Exiv2 release < ${EXIV2_MIN_VERSION}") endif(_return_VALUE STREQUAL "0") else(_EXIV2LinkFlags) set(EXIV2_FOUND FALSE) @@ -54,6 +58,7 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) set(EXIV2_FOUND TRUE) + # TODO version check is missing endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) endif(EXIV2_VERSION_GOOD_FOUND) if (EXIV2_FOUND) -- cgit v1.2.1 From c4dde17dd66a6deef414d84468f36d4dbebd9905 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 14 Jul 2008 12:09:46 +0000 Subject: increase GENERIC library version from .1 to .2. DO NOT EVEN THINK ABOUT BACKPORTING THIS svn path=/trunk/KDE/kdelibs/; revision=832335 --- modules/KDE4Defaults.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 60c62e35..e2af0acd 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -29,10 +29,10 @@ endif (NOT CMAKE_SKIP_RPATH) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes -set(GENERIC_LIB_VERSION "4.1.0") +set(GENERIC_LIB_VERSION "4.2.0") set(GENERIC_LIB_SOVERSION "4") -set(KDE_NON_GENERIC_LIB_VERSION "5.1.0") +set(KDE_NON_GENERIC_LIB_VERSION "5.2.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar -- cgit v1.2.1 From 9c7f54bcfd27f0299fff56cdeff76d6e6894d36d Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 15 Jul 2008 21:18:36 +0000 Subject: - Logic fix for boost subminor test detection by Andreas Pakulat. It fixes Mandriva 1.35.0 boos detection svn path=/branches/KDE/4.1/kdelibs/; revision=832962 --- modules/FindBoost.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index 01075ec7..7f3aff9e 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -482,10 +482,10 @@ ELSE (_boost_IN_CACHE) SET( Boost_FOUND TRUE ) IF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) SET( Boost_FOUND FALSE ) - ELSE( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) + ELSEIF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION EQUAL "${Boost_FIND_VERSION_MAJOR}" ) IF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) SET( Boost_FOUND FALSE ) - ELSE( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) + ELSEIF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION EQUAL "${Boost_FIND_VERSION_MINOR}" ) IF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) SET( Boost_FOUND FALSE ) ENDIF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) -- cgit v1.2.1 From 26ecc84e22b0b5ee47221bea5d009af03c50cefc Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 15 Jul 2008 21:19:57 +0000 Subject: - Logic fix for boost subminor test detection by Andreas Pakulat. It fixes Mandriva 1.35.0 boos detection svn path=/trunk/KDE/kdelibs/; revision=832964 --- modules/FindBoost.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index 01075ec7..7f3aff9e 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -482,10 +482,10 @@ ELSE (_boost_IN_CACHE) SET( Boost_FOUND TRUE ) IF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) SET( Boost_FOUND FALSE ) - ELSE( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) + ELSEIF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION EQUAL "${Boost_FIND_VERSION_MAJOR}" ) IF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) SET( Boost_FOUND FALSE ) - ELSE( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) + ELSEIF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION EQUAL "${Boost_FIND_VERSION_MINOR}" ) IF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) SET( Boost_FOUND FALSE ) ENDIF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) -- cgit v1.2.1 From 4f31359d3639c6eb8cdbed23f034c9eeb7f8d69d Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 17 Jul 2008 01:24:08 +0000 Subject: fix typo svn path=/trunk/KDE/kdelibs/; revision=833559 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6da11793..4e4abe83 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1117,7 +1117,7 @@ endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) - set_target_properties("${_target}" "${_interface_libs}") + set_target_properties("${_target}" PROPERTIES LINK_INTERFACE_LIBRARIES "${_interface_libs}") endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES) -- cgit v1.2.1 From 05dd0162ab74822f2c5ebb808f2c4fdaa853ee71 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 18 Jul 2008 21:04:33 +0000 Subject: fix for targets with '-' in name on windows svn path=/trunk/KDE/kdelibs/; revision=834424 --- modules/KDE4Macros.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4e4abe83..4374c6fe 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -657,6 +657,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # keep the library there- if(WIN32) set(_KDEINIT4_TARGET_NAME_ ${_target_NAME}) + string(REGEX REPLACE "[-]" "_" _KDEINIT4_TARGET_NAME_ "${_KDEINIT4_TARGET_NAME_}") configure_file(${KDE4_MODULE_DIR}/kde4init_win32lib_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp) add_library(kdeinit_${_target_NAME} STATIC ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp) -- cgit v1.2.1 From 78b4c5fa3eafd4fe888a1fe8b1e62bfdb763d571 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sat, 19 Jul 2008 09:16:31 +0000 Subject: Explain the various build types that KDE4 supports and add Debugfull to the build configuration types for CMake > 2.5 svn path=/trunk/KDE/kdelibs/; revision=834533 --- modules/FindKDE4Internal.cmake | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e873d0ee..486b3fe0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -199,6 +199,27 @@ # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally +# Note on the possible values for CMAKE_BUILD_TYPE and how KDE handles +# the flags for those buildtypes. FindKDE4Internal supports the values +# Debug, Release, Relwithdebinfo, Profile and Debugfull +# +# Release +# optimised for speed, qDebug/kDebug turned off, no debug symbols +# Release with debug info +# optimised for speed, debugging symbols on (-g) +# Debug +# optimised but debuggable, debugging on (-g) +# (-fno-reorder-blocks -fno-schedule-insns -fno-inline) +# DebugFull +# no optimisation, full debugging on (-g3) +# Profile +# DebugFull + -ftest-coverage -fprofile-arcs +# +# It is expected that the "Debug" build type be still debuggable with gdb +# without going all over the place, but still produce better performance. +# It's also important to note that gcc cannot detect all warning conditions +# unless the optimiser is active. + # Copyright (c) 2006-2008, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # @@ -360,7 +381,6 @@ else (_kdeBootStrapping) find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) - find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) @@ -897,6 +917,10 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") @@ -1003,6 +1027,11 @@ endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") + + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") -- cgit v1.2.1 From c0c1c612fb548a668664dc380a3b9b75db75283e Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sat, 19 Jul 2008 10:28:45 +0000 Subject: automatically merged revision 834533: Explain the various build types that KDE4 supports and add Debugfull to the build configuration types for CMake > 2.5 svn path=/branches/KDE/4.1/kdelibs/; revision=834621 --- modules/FindKDE4Internal.cmake | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 83213217..2f589598 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -199,6 +199,27 @@ # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally +# Note on the possible values for CMAKE_BUILD_TYPE and how KDE handles +# the flags for those buildtypes. FindKDE4Internal supports the values +# Debug, Release, Relwithdebinfo, Profile and Debugfull +# +# Release +# optimised for speed, qDebug/kDebug turned off, no debug symbols +# Release with debug info +# optimised for speed, debugging symbols on (-g) +# Debug +# optimised but debuggable, debugging on (-g) +# (-fno-reorder-blocks -fno-schedule-insns -fno-inline) +# DebugFull +# no optimisation, full debugging on (-g3) +# Profile +# DebugFull + -ftest-coverage -fprofile-arcs +# +# It is expected that the "Debug" build type be still debuggable with gdb +# without going all over the place, but still produce better performance. +# It's also important to note that gcc cannot detect all warning conditions +# unless the optimiser is active. + # Copyright (c) 2006-2008, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # @@ -360,7 +381,6 @@ else (_kdeBootStrapping) find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) - find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) @@ -897,6 +917,10 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") @@ -1003,6 +1027,11 @@ endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") + + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") -- cgit v1.2.1 From c4503f753b9af4e676c8d42e3c8659fc0a7445aa Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 19 Jul 2008 13:35:17 +0000 Subject: -synch with trunk: -some formatting -KDE_DEFAULT_HOME is now a cache variable -fix for the link interface libs from Dirk -fix for targets with "-" in their name from Christian Alex svn path=/branches/KDE/4.1/kdelibs/; revision=834700 --- modules/KDE4Macros.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 6da11793..4374c6fe 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -657,6 +657,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # keep the library there- if(WIN32) set(_KDEINIT4_TARGET_NAME_ ${_target_NAME}) + string(REGEX REPLACE "[-]" "_" _KDEINIT4_TARGET_NAME_ "${_KDEINIT4_TARGET_NAME_}") configure_file(${KDE4_MODULE_DIR}/kde4init_win32lib_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp) add_library(kdeinit_${_target_NAME} STATIC ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp) @@ -1117,7 +1118,7 @@ endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) - set_target_properties("${_target}" "${_interface_libs}") + set_target_properties("${_target}" PROPERTIES LINK_INTERFACE_LIBRARIES "${_interface_libs}") endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES) -- cgit v1.2.1 From e30c2c3ff44d43c179c891fe94d1e2fe9f5b7873 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 09:26:40 +0000 Subject: -remove empty lines from documentation block in FindQt4.cmake, so everything is included again in the generated documentatiom -lowercase FindTaglib.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=835221 --- modules/FindQt4.cmake | 4 ---- modules/FindTaglib.cmake | 49 +++++++++++++++++++++++++----------------------- 2 files changed, 26 insertions(+), 27 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 797bd972..55c44dfd 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -219,7 +219,6 @@ # The qtmain library for Windows QT_QTMAIN_LIBRARY # # The QtUiTools library: QT_QTUITOOLS_LIBRARY - # # The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY # @@ -230,9 +229,6 @@ # The QtXmlPatterns library: QT_QTXMLPATTERNS_LIBRARY # # The Phonon library: QT_PHONON_LIBRARY - - - # # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 35fd6b03..3edfdb4a 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -14,37 +14,40 @@ if(NOT TAGLIB_MIN_VERSION) set(TAGLIB_MIN_VERSION "1.4") endif(NOT TAGLIB_MIN_VERSION) -IF(NOT WIN32) - FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS +if(NOT WIN32) + find_program(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS ${BIN_INSTALL_DIR} ) -ENDIF(NOT WIN32) +endif(NOT WIN32) + #reset vars set(TAGLIB_LIBRARIES) set(TAGLIB_CFLAGS) # if taglib-config has been found -IF(TAGLIBCONFIG_EXECUTABLE) +if(TAGLIBCONFIG_EXECUTABLE) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION) + exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION) if(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - MESSAGE(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}") - SET(TAGLIB_FOUND FALSE) + message(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}") + set(TAGLIB_FOUND FALSE) else(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) + exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) + exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) - IF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - SET(TAGLIB_FOUND TRUE) + if(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + set(TAGLIB_FOUND TRUE) message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") - ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + + endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") + mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES) + +else(TAGLIBCONFIG_EXECUTABLE) - endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) -ELSE(TAGLIBCONFIG_EXECUTABLE) include(FindLibraryWithDebug) include(FindPackageHandleStandardArgs) @@ -67,16 +70,16 @@ ELSE(TAGLIBCONFIG_EXECUTABLE) find_package_handle_standard_args(Taglib DEFAULT_MSG TAGLIB_INCLUDES TAGLIB_LIBRARIES) -ENDIF(TAGLIBCONFIG_EXECUTABLE) +endif(TAGLIBCONFIG_EXECUTABLE) if(TAGLIB_FOUND) - IF(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) - MESSAGE(STATUS "Taglib found: ${TAGLIB_LIBRARIES}") - ENDIF(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) -ELSE(TAGLIB_FOUND) - IF(Taglib_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Taglib") - ENDIF(Taglib_FIND_REQUIRED) + if(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) + message(STATUS "Taglib found: ${TAGLIB_LIBRARIES}") + endif(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) +else(TAGLIB_FOUND) + if(Taglib_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Taglib") + endif(Taglib_FIND_REQUIRED) endif(TAGLIB_FOUND) -- cgit v1.2.1 From 5d69cd884cefe000851884ea9c3f3ec851fe4122 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 10:26:08 +0000 Subject: FindPCRE.cmake: lowercasing FindSharedMimeInfo.cmake: document SHARED_MIME_INFO_MINIMUM_VERSION and add a comment about the WORKING_DIRECTORY FindGStreamer.cmake: use FIND_PACKAGE_HANDLE_STANDARD_ARGS() FindExiv2.cmake: lowercasing, document EXIV2_MIN_VERSION FindKDE4Internal.cmake: remove empty lines from documentation block so everything is included again in the generated documentation Alex svn path=/trunk/KDE/kdelibs/; revision=835253 --- modules/FindExiv2.cmake | 18 +++++++++------- modules/FindGSSAPI.cmake | 44 ++++++++++++++++++++-------------------- modules/FindGStreamer.cmake | 17 ++-------------- modules/FindKDE4Internal.cmake | 13 ++++++------ modules/FindPCRE.cmake | 18 ++++++++-------- modules/FindSharedMimeInfo.cmake | 5 +++++ 6 files changed, 56 insertions(+), 59 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 5555c92e..5bef48be 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -1,4 +1,8 @@ # - Try to find the Exiv2 library +# +# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need +# before doing FIND_PACKAGE(Exiv2). The default is 0.12. +# # Once done this will define # # EXIV2_FOUND - system has libexiv2 @@ -10,23 +14,23 @@ if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) # in cache already - SET(EXIV2_FOUND TRUE) + set(EXIV2_FOUND TRUE) else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) if(NOT EXIV2_MIN_VERSION) set(EXIV2_MIN_VERSION "0.12") endif(NOT EXIV2_MIN_VERSION) - PKGCONFIG(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) + pkgconfig(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) if(_EXIV2LinkFlags) # query pkg-config asking for a Exiv2 >= 0.12 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") message(STATUS "Found Exiv2 release >= ${EXIV2_MIN_VERSION}") set(EXIV2_VERSION_GOOD_FOUND TRUE) @@ -47,11 +51,11 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if(EXIV2_VERSION_GOOD_FOUND) set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) - FIND_PATH(EXIV2_INCLUDE_DIR exiv2/exif.hpp + find_path(EXIV2_INCLUDE_DIR exiv2/exif.hpp ${_EXIV2IncDir} ) - FIND_LIBRARY(EXIV2_LIBRARIES NAMES exiv2 libexiv2 + find_library(EXIV2_LIBRARIES NAMES exiv2 libexiv2 PATHS ${_EXIV2LinkDir} ) @@ -76,7 +80,7 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) endif (Exiv2_FIND_REQUIRED) endif (EXIV2_FOUND) - MARK_AS_ADVANCED(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) + mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 45e4e0e1..0951c675 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -32,34 +32,34 @@ else(GSSAPI_LIBS AND GSSAPI_FLAVOR) if(KRB5_CONFIG) - SET(HAVE_KRB5_GSSAPI TRUE) - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) - IF(_return_VALUE) - MESSAGE(STATUS "GSSAPI configure check failed.") - SET(HAVE_KRB5_GSSAPI FALSE) - ENDIF(_return_VALUE) + set(HAVE_KRB5_GSSAPI TRUE) + exec_program(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) + if(_return_VALUE) + message(STATUS "GSSAPI configure check failed.") + set(HAVE_KRB5_GSSAPI FALSE) + endif(_return_VALUE) - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) + exec_program(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) string(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") string(REGEX REPLACE " *-I" ";" GSSAPI_INCS "${GSSAPI_INCS}") - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) + exec_program(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) set(GSSAPI_FLAVOR_MIT) - IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "MIT") - ELSE(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "HEIMDAL") - ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + if(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + set(GSSAPI_FLAVOR "MIT") + else(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + set(GSSAPI_FLAVOR "HEIMDAL") + endif(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - IF(NOT HAVE_KRB5_GSSAPI) - IF (gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - MESSAGE(STATUS "Solaris Kerberos does not have GSSAPI; this is normal.") - SET(GSSAPI_LIBS) - SET(GSSAPI_INCS) - ELSE(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - MESSAGE(WARNING "${KRB5_CONFIG} failed unexpectedly.") - ENDIF(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - ENDIF(NOT HAVE_KRB5_GSSAPI) + if(NOT HAVE_KRB5_GSSAPI) + if (gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + message(STATUS "Solaris Kerberos does not have GSSAPI; this is normal.") + set(GSSAPI_LIBS) + set(GSSAPI_INCS) + else(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + message(WARNING "${KRB5_CONFIG} failed unexpectedly.") + endif(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + endif(NOT HAVE_KRB5_GSSAPI) if(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that set(GSSAPI_FOUND TRUE) diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake index f75e92d9..5a94452b 100644 --- a/modules/FindGStreamer.cmake +++ b/modules/FindGStreamer.cmake @@ -68,20 +68,7 @@ ELSE (GSTREAMER_INTERFACE_LIBRARY) MESSAGE(STATUS "GStreamer: WARNING: interface library not found") ENDIF (GSTREAMER_INTERFACE_LIBRARY) -IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) - SET(GSTREAMER_FOUND TRUE) -ELSE (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) - SET(GSTREAMER_FOUND FALSE) -ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY AND GSTREAMER_INTERFACE_LIBRARY) - -IF (GSTREAMER_FOUND) - IF (NOT GStreamer_FIND_QUIETLY) - MESSAGE(STATUS "Found GStreamer: ${GSTREAMER_LIBRARIES}") - ENDIF (NOT GStreamer_FIND_QUIETLY) -ELSE (GSTREAMER_FOUND) - IF (GStreamer_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could NOT find GStreamer") - ENDIF (GStreamer_FIND_REQUIRED) -ENDIF (GSTREAMER_FOUND) +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(GStreamer DEFAULT_MSG GSTREAMER_LIBRARIES GSTREAMER_INCLUDE_DIR GSTREAMER_BASE_LIBRARY GSTREAMER_INTERFACE_LIBRARY) MARK_AS_ADVANCED(GSTREAMER_INCLUDE_DIR GSTREAMER_LIBRARIES GSTREAMER_BASE_LIBRARY GSTREAMER_INTERFACE_LIBRARY) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 486b3fe0..ee0100eb 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -194,12 +194,9 @@ # The resulting manpage will be installed to when using # INSTALL_DESTINATION , or to / if # SUBDIR is specified. - - -# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally -# _KDE4_PLATFORM_DEFINITIONS is used only internally - -# Note on the possible values for CMAKE_BUILD_TYPE and how KDE handles +# +# +# A note on the possible values for CMAKE_BUILD_TYPE and how KDE handles # the flags for those buildtypes. FindKDE4Internal supports the values # Debug, Release, Relwithdebinfo, Profile and Debugfull # @@ -220,6 +217,9 @@ # It's also important to note that gcc cannot detect all warning conditions # unless the optimiser is active. +# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally +# _KDE4_PLATFORM_DEFINITIONS is used only internally + # Copyright (c) 2006-2008, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # @@ -401,6 +401,7 @@ else (_kdeBootStrapping) find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) + find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KJSAPI_LIBS ${kjsapi_LIB_DEPENDS} ${KDE4_KJSAPI_LIBRARY} ) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 56f015a8..ba2de623 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -17,23 +17,23 @@ if (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) endif (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) -IF (NOT WIN32) +if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) - PKGCONFIG(libpcre _PCREIncDir _PCRELinkDir _PCRELinkFlags _PCRECflags) -ENDIF (NOT WIN32) + pkgconfig(libpcre _PCREIncDir _PCRELinkDir _PCRELinkFlags _PCRECflags) +endif (NOT WIN32) -FIND_PATH(PCRE_INCLUDE_DIR pcre.h PATHS ${_PCREIncDir} PATH_SUFFIXES pcre) +find_path(PCRE_INCLUDE_DIR pcre.h PATHS ${_PCREIncDir} PATH_SUFFIXES pcre) -FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${_PCRELinkDir}) +find_library(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${_PCRELinkDir}) -FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${_PCRELinkDir}) +find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${_PCRELinkDir}) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) +find_package_handle_standard_args(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY}) -MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) +mark_as_advanced(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 510c4992..707cb006 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -1,4 +1,7 @@ # - Try to find the shared-mime-info package +# +# SHARED_MIME_INFO_MINIMUM_VERSION - Set this to the minimum version you need, default is 0.18 +# # Once done this will define # # SHARED_MIME_INFO_FOUND - system has the shared-mime-info package @@ -61,9 +64,11 @@ macro(UPDATE_XDG_MIMETYPES _path) else("${_xdgmimeDir}" STREQUAL packages ) set(_xdgmimeDir "${_path}") endif("${_xdgmimeDir}" STREQUAL packages ) + install(CODE " set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") if (NOT DESTDIR_VALUE) + # under Windows relative paths are used, that's why it runs from CMAKE_INSTALL_PREFIX execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir} WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}) endif (NOT DESTDIR_VALUE) -- cgit v1.2.1 From 08639d2275bd5b3fa5e479f3c2020d5269ee5a9b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 10:35:34 +0000 Subject: -rename XMLLINT_EXECUTABLE to LIBXML2_XMLLINT_EXECUTABLE so it follows the styleguide for cmake modules and is properly prefixed -document LIBXML2_XMLLINT_EXECUTABLE -keep XMLLINT_EXECUTABLE for backwards compat. with KDE 4.0.x -consistent casing -adapt config-kdoctools.h.cmake to LIBXML2_XMLLINT_EXECUTABLE Alex svn path=/trunk/KDE/kdelibs/; revision=835259 --- modules/FindLibXml2.cmake | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 5f23c184..bbe5e8b2 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -1,10 +1,11 @@ # - Try to find LibXml2 # Once done this will define # -# LIBXML2_FOUND - system has LibXml2 -# LIBXML2_INCLUDE_DIR - the LibXml2 include directory -# LIBXML2_LIBRARIES - the libraries needed to use LibXml2 +# LIBXML2_FOUND - System has LibXml2 +# LIBXML2_INCLUDE_DIR - The LibXml2 include directory +# LIBXML2_LIBRARIES - The libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 +# LIBXML2_XMLLINT_EXECUTABLE - The XML checking tool xmllint coming with LibXml2 # Copyright (c) 2006, Alexander Neundorf, # @@ -42,11 +43,13 @@ ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) SET(LIBXML2_FOUND FALSE) ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) -FIND_PROGRAM(XMLLINT_EXECUTABLE xmllint) +FIND_PROGRAM(LIBXML2_XMLLINT_EXECUTABLE xmllint) +# for backwards compat. with KDE 4.0.x: +SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}") -if( NOT XMLLINT_EXECUTABLE ) +IF( NOT LIBXML2_XMLLINT_EXECUTABLE ) MESSAGE(STATUS "xmllint program not found. Install it if you want validate generated doc file.") -endif(NOT XMLLINT_EXECUTABLE ) +ENDIF(NOT LIBXML2_XMLLINT_EXECUTABLE ) IF (LIBXML2_FOUND) IF (NOT LibXml2_FIND_QUIETLY) @@ -58,5 +61,5 @@ ELSE (LIBXML2_FOUND) ENDIF (LibXml2_FIND_REQUIRED) ENDIF (LIBXML2_FOUND) -MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES XMLLINT_EXECUTABLE) +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE) -- cgit v1.2.1 From d78a37149af30be50c9b6301887c5cbdc01a106f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 11:53:44 +0000 Subject: prefix KDE4_TARGET_LINK_INTERFACE_LIBRARIES with a "_", it is unused in svn and will be removed again for 4.2 I'd like to do the same in the 4.1 branch. Objections ? Alex CCMAIL: mueller@kde.org svn path=/trunk/KDE/kdelibs/; revision=835295 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4374c6fe..ee689751 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1116,11 +1116,11 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) -macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) +macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) set_target_properties("${_target}" PROPERTIES LINK_INTERFACE_LIBRARIES "${_interface_libs}") endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) -endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES) +endmacro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES) macro (KDE4_INSTALL_HANDBOOK _lang) message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") -- cgit v1.2.1 From 09adc1e34b027d8be325ac2c3243f0cfdf090df4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 17:39:58 +0000 Subject: add a message in case somebody stumbles about a KDE4_TARGET_LINK_INTERFACE_LIBRARIES() call that it has been renamed Alex svn path=/trunk/KDE/kdelibs/; revision=835491 --- modules/KDE4Macros.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ee689751..c30973da 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1122,6 +1122,10 @@ macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES) +macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) + message(FATAL_ERROR "KDE4_TARGET_LINK_INTERFACE_LIBRARIES() has been renamed to _KDE4_TARGET_LINK_INTERFACE_LIBRARIES(), so use that instead") +endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) + macro (KDE4_INSTALL_HANDBOOK _lang) message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") endmacro (KDE4_INSTALL_HANDBOOK ) -- cgit v1.2.1 From 760e338ee29066253a2036c221c5b4c8e7fe8df8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 21:38:13 +0000 Subject: documentation and formatting fixes, no functional changes Alex svn path=/branches/KDE/4.1/kdelibs/; revision=835631 --- modules/FindExiv2.cmake | 18 +++++++++------ modules/FindGSSAPI.cmake | 44 ++++++++++++++++++------------------ modules/FindKDE4Internal.cmake | 13 ++++++----- modules/FindPCRE.cmake | 18 +++++++-------- modules/FindQt4.cmake | 4 ---- modules/FindSharedMimeInfo.cmake | 5 ++++ modules/FindTaglib.cmake | 49 +++++++++++++++++++++------------------- 7 files changed, 80 insertions(+), 71 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 5555c92e..5bef48be 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -1,4 +1,8 @@ # - Try to find the Exiv2 library +# +# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need +# before doing FIND_PACKAGE(Exiv2). The default is 0.12. +# # Once done this will define # # EXIV2_FOUND - system has libexiv2 @@ -10,23 +14,23 @@ if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) # in cache already - SET(EXIV2_FOUND TRUE) + set(EXIV2_FOUND TRUE) else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) if(NOT EXIV2_MIN_VERSION) set(EXIV2_MIN_VERSION "0.12") endif(NOT EXIV2_MIN_VERSION) - PKGCONFIG(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) + pkgconfig(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) if(_EXIV2LinkFlags) # query pkg-config asking for a Exiv2 >= 0.12 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") message(STATUS "Found Exiv2 release >= ${EXIV2_MIN_VERSION}") set(EXIV2_VERSION_GOOD_FOUND TRUE) @@ -47,11 +51,11 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if(EXIV2_VERSION_GOOD_FOUND) set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) - FIND_PATH(EXIV2_INCLUDE_DIR exiv2/exif.hpp + find_path(EXIV2_INCLUDE_DIR exiv2/exif.hpp ${_EXIV2IncDir} ) - FIND_LIBRARY(EXIV2_LIBRARIES NAMES exiv2 libexiv2 + find_library(EXIV2_LIBRARIES NAMES exiv2 libexiv2 PATHS ${_EXIV2LinkDir} ) @@ -76,7 +80,7 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) endif (Exiv2_FIND_REQUIRED) endif (EXIV2_FOUND) - MARK_AS_ADVANCED(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) + mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index 45e4e0e1..0951c675 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -32,34 +32,34 @@ else(GSSAPI_LIBS AND GSSAPI_FLAVOR) if(KRB5_CONFIG) - SET(HAVE_KRB5_GSSAPI TRUE) - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) - IF(_return_VALUE) - MESSAGE(STATUS "GSSAPI configure check failed.") - SET(HAVE_KRB5_GSSAPI FALSE) - ENDIF(_return_VALUE) + set(HAVE_KRB5_GSSAPI TRUE) + exec_program(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) + if(_return_VALUE) + message(STATUS "GSSAPI configure check failed.") + set(HAVE_KRB5_GSSAPI FALSE) + endif(_return_VALUE) - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) + exec_program(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) string(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") string(REGEX REPLACE " *-I" ";" GSSAPI_INCS "${GSSAPI_INCS}") - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) + exec_program(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) set(GSSAPI_FLAVOR_MIT) - IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "MIT") - ELSE(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "HEIMDAL") - ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + if(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + set(GSSAPI_FLAVOR "MIT") + else(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + set(GSSAPI_FLAVOR "HEIMDAL") + endif(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - IF(NOT HAVE_KRB5_GSSAPI) - IF (gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - MESSAGE(STATUS "Solaris Kerberos does not have GSSAPI; this is normal.") - SET(GSSAPI_LIBS) - SET(GSSAPI_INCS) - ELSE(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - MESSAGE(WARNING "${KRB5_CONFIG} failed unexpectedly.") - ENDIF(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") - ENDIF(NOT HAVE_KRB5_GSSAPI) + if(NOT HAVE_KRB5_GSSAPI) + if (gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + message(STATUS "Solaris Kerberos does not have GSSAPI; this is normal.") + set(GSSAPI_LIBS) + set(GSSAPI_INCS) + else(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + message(WARNING "${KRB5_CONFIG} failed unexpectedly.") + endif(gssapi_flavor_tmp MATCHES "Sun Microsystems.*") + endif(NOT HAVE_KRB5_GSSAPI) if(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that set(GSSAPI_FOUND TRUE) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2f589598..044bb4f3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -194,12 +194,9 @@ # The resulting manpage will be installed to when using # INSTALL_DESTINATION , or to / if # SUBDIR is specified. - - -# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally -# _KDE4_PLATFORM_DEFINITIONS is used only internally - -# Note on the possible values for CMAKE_BUILD_TYPE and how KDE handles +# +# +# A note on the possible values for CMAKE_BUILD_TYPE and how KDE handles # the flags for those buildtypes. FindKDE4Internal supports the values # Debug, Release, Relwithdebinfo, Profile and Debugfull # @@ -220,6 +217,9 @@ # It's also important to note that gcc cannot detect all warning conditions # unless the optimiser is active. +# _KDE4_PLATFORM_INCLUDE_DIRS is used only internally +# _KDE4_PLATFORM_DEFINITIONS is used only internally + # Copyright (c) 2006-2008, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # @@ -401,6 +401,7 @@ else (_kdeBootStrapping) find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) + find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KJSAPI_LIBS ${kjsapi_LIB_DEPENDS} ${KDE4_KJSAPI_LIBRARY} ) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 56f015a8..ba2de623 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -17,23 +17,23 @@ if (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) endif (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) -IF (NOT WIN32) +if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) - PKGCONFIG(libpcre _PCREIncDir _PCRELinkDir _PCRELinkFlags _PCRECflags) -ENDIF (NOT WIN32) + pkgconfig(libpcre _PCREIncDir _PCRELinkDir _PCRELinkFlags _PCRECflags) +endif (NOT WIN32) -FIND_PATH(PCRE_INCLUDE_DIR pcre.h PATHS ${_PCREIncDir} PATH_SUFFIXES pcre) +find_path(PCRE_INCLUDE_DIR pcre.h PATHS ${_PCREIncDir} PATH_SUFFIXES pcre) -FIND_LIBRARY(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${_PCRELinkDir}) +find_library(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${_PCRELinkDir}) -FIND_LIBRARY(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${_PCRELinkDir}) +find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${_PCRELinkDir}) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) +find_package_handle_standard_args(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) set(PCRE_LIBRARIES ${PCRE_PCRE_LIBRARY} ${PCRE_PCREPOSIX_LIBRARY}) -MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) +mark_as_advanced(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 797bd972..55c44dfd 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -219,7 +219,6 @@ # The qtmain library for Windows QT_QTMAIN_LIBRARY # # The QtUiTools library: QT_QTUITOOLS_LIBRARY - # # The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY # @@ -230,9 +229,6 @@ # The QtXmlPatterns library: QT_QTXMLPATTERNS_LIBRARY # # The Phonon library: QT_PHONON_LIBRARY - - - # # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 510c4992..707cb006 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -1,4 +1,7 @@ # - Try to find the shared-mime-info package +# +# SHARED_MIME_INFO_MINIMUM_VERSION - Set this to the minimum version you need, default is 0.18 +# # Once done this will define # # SHARED_MIME_INFO_FOUND - system has the shared-mime-info package @@ -61,9 +64,11 @@ macro(UPDATE_XDG_MIMETYPES _path) else("${_xdgmimeDir}" STREQUAL packages ) set(_xdgmimeDir "${_path}") endif("${_xdgmimeDir}" STREQUAL packages ) + install(CODE " set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") if (NOT DESTDIR_VALUE) + # under Windows relative paths are used, that's why it runs from CMAKE_INSTALL_PREFIX execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir} WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}) endif (NOT DESTDIR_VALUE) diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 35fd6b03..3edfdb4a 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -14,37 +14,40 @@ if(NOT TAGLIB_MIN_VERSION) set(TAGLIB_MIN_VERSION "1.4") endif(NOT TAGLIB_MIN_VERSION) -IF(NOT WIN32) - FIND_PROGRAM(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS +if(NOT WIN32) + find_program(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS ${BIN_INSTALL_DIR} ) -ENDIF(NOT WIN32) +endif(NOT WIN32) + #reset vars set(TAGLIB_LIBRARIES) set(TAGLIB_CFLAGS) # if taglib-config has been found -IF(TAGLIBCONFIG_EXECUTABLE) +if(TAGLIBCONFIG_EXECUTABLE) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION) + exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION) if(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - MESSAGE(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}") - SET(TAGLIB_FOUND FALSE) + message(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}") + set(TAGLIB_FOUND FALSE) else(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) + exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) - EXEC_PROGRAM(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) + exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_CFLAGS) - IF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - SET(TAGLIB_FOUND TRUE) + if(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + set(TAGLIB_FOUND TRUE) message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") - ENDIF(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) + + endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") + mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES) + +else(TAGLIBCONFIG_EXECUTABLE) - endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - MARK_AS_ADVANCED(TAGLIB_CFLAGS TAGLIB_LIBRARIES) -ELSE(TAGLIBCONFIG_EXECUTABLE) include(FindLibraryWithDebug) include(FindPackageHandleStandardArgs) @@ -67,16 +70,16 @@ ELSE(TAGLIBCONFIG_EXECUTABLE) find_package_handle_standard_args(Taglib DEFAULT_MSG TAGLIB_INCLUDES TAGLIB_LIBRARIES) -ENDIF(TAGLIBCONFIG_EXECUTABLE) +endif(TAGLIBCONFIG_EXECUTABLE) if(TAGLIB_FOUND) - IF(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) - MESSAGE(STATUS "Taglib found: ${TAGLIB_LIBRARIES}") - ENDIF(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) -ELSE(TAGLIB_FOUND) - IF(Taglib_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Taglib") - ENDIF(Taglib_FIND_REQUIRED) + if(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) + message(STATUS "Taglib found: ${TAGLIB_LIBRARIES}") + endif(NOT Taglib_FIND_QUIETLY AND TAGLIBCONFIG_EXECUTABLE) +else(TAGLIB_FOUND) + if(Taglib_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Taglib") + endif(Taglib_FIND_REQUIRED) endif(TAGLIB_FOUND) -- cgit v1.2.1 From 5f61200948e3f19a0eab2c9678ad76c130ec6df8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 22:14:42 +0000 Subject: -rename variable XMLLINT_EXECUTABLE to LIBXML2_XMLLINT_EXECUTABLE, to be consistent with the cmake module coding style (keep the old one for compatibility) -adapt config-kdoctools.h.cmake accordingly Alex svn path=/branches/KDE/4.1/kdelibs/; revision=835658 --- modules/FindLibXml2.cmake | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 5f23c184..bbe5e8b2 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -1,10 +1,11 @@ # - Try to find LibXml2 # Once done this will define # -# LIBXML2_FOUND - system has LibXml2 -# LIBXML2_INCLUDE_DIR - the LibXml2 include directory -# LIBXML2_LIBRARIES - the libraries needed to use LibXml2 +# LIBXML2_FOUND - System has LibXml2 +# LIBXML2_INCLUDE_DIR - The LibXml2 include directory +# LIBXML2_LIBRARIES - The libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 +# LIBXML2_XMLLINT_EXECUTABLE - The XML checking tool xmllint coming with LibXml2 # Copyright (c) 2006, Alexander Neundorf, # @@ -42,11 +43,13 @@ ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) SET(LIBXML2_FOUND FALSE) ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) -FIND_PROGRAM(XMLLINT_EXECUTABLE xmllint) +FIND_PROGRAM(LIBXML2_XMLLINT_EXECUTABLE xmllint) +# for backwards compat. with KDE 4.0.x: +SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}") -if( NOT XMLLINT_EXECUTABLE ) +IF( NOT LIBXML2_XMLLINT_EXECUTABLE ) MESSAGE(STATUS "xmllint program not found. Install it if you want validate generated doc file.") -endif(NOT XMLLINT_EXECUTABLE ) +ENDIF(NOT LIBXML2_XMLLINT_EXECUTABLE ) IF (LIBXML2_FOUND) IF (NOT LibXml2_FIND_QUIETLY) @@ -58,5 +61,5 @@ ELSE (LIBXML2_FOUND) ENDIF (LibXml2_FIND_REQUIRED) ENDIF (LIBXML2_FOUND) -MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES XMLLINT_EXECUTABLE) +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE) -- cgit v1.2.1 From a3a1c93e8ebfea28aff2aa3a15c8919802e7df56 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 22:16:40 +0000 Subject: -prefix kde4_target_link_interface_libraries() with an "_", to make clear this is only a temporary macro which will be gone again very soon Alex CCMAIL: mueller@kde.org svn path=/branches/KDE/4.1/kdelibs/; revision=835659 --- modules/KDE4Macros.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4374c6fe..c30973da 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1116,11 +1116,15 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) -macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) +macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) set_target_properties("${_target}" PROPERTIES LINK_INTERFACE_LIBRARIES "${_interface_libs}") endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) -endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES) +endmacro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES) + +macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) + message(FATAL_ERROR "KDE4_TARGET_LINK_INTERFACE_LIBRARIES() has been renamed to _KDE4_TARGET_LINK_INTERFACE_LIBRARIES(), so use that instead") +endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) macro (KDE4_INSTALL_HANDBOOK _lang) message(STATUS "KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.") -- cgit v1.2.1 From d87b53240577e1228d49dd309092b1aea5c8621b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Jul 2008 22:36:02 +0000 Subject: -consistent lowercasing -use mark_as_advanced() for the right variables (i.e. the ones which go into the cache) -also search for the old style header so we can give a better error message Alex svn path=/trunk/KDE/kdelibs/; revision=835669 --- modules/FindFFmpeg.cmake | 38 ++++++++++++++++++++++++++++++-------- 1 file changed, 30 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindFFmpeg.cmake b/modules/FindFFmpeg.cmake index 8baf0af7..16233510 100644 --- a/modules/FindFFmpeg.cmake +++ b/modules/FindFFmpeg.cmake @@ -17,13 +17,14 @@ if (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) set(FFMPEG_FOUND TRUE) else (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) -IF (NOT WIN32) + +if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) - PKGCONFIG(libavcodec _FFMPEGIncDir _FFMPEGLinkDir _FFMPEGLinkFlags _FFMPEGCflags) -ENDIF (NOT WIN32) + pkgconfig(libavcodec _FFMPEGIncDir _FFMPEGLinkDir _FFMPEGLinkFlags _FFMPEGCflags) +endif (NOT WIN32) #set(FFMPEG_DEFINITIONS ${_FFMPEGCflags}) # @@ -39,6 +40,15 @@ ENDIF (NOT WIN32) NO_DEFAULT_PATH ) + # also search for the old style include dir, just for the purpose + # of giving a useful error message if an old libavcodec is installed + # and the user might wonder why it is not found + find_path(FFMPEG_INCLUDE_DIR_OLD_STYLE ffmpeg/avcodec.h + PATHS + ${_FFMPEGIncDir} + NO_DEFAULT_PATH + ) + find_library(AVCODEC_LIBRARIES NAMES avcodec PATHS ${_FFMPEGLinkDir} @@ -70,21 +80,33 @@ ENDIF (NOT WIN32) set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${AVUTIL_LIBRARIES}) endif (AVUTIL_LIBRARIES) - if (FFMPEG_LIBRARIES) + if (FFMPEG_LIBRARIES AND FFMPEG_INCLUDE_DIR) set(FFMPEG_FOUND TRUE) - endif (FFMPEG_LIBRARIES) + endif (FFMPEG_LIBRARIES AND FFMPEG_INCLUDE_DIR) if (FFMPEG_FOUND) if (NOT FFmpeg_FIND_QUIETLY) message(STATUS "Found FFMPEG: ${FFMPEG_LIBRARIES} ${FFMPEG_INCLUDE_DIR}") endif (NOT FFmpeg_FIND_QUIETLY) else (FFMPEG_FOUND) + # only an old libavcodec was found ? + if (FFMPEG_INCLUDE_DIR_OLD_STYLE AND NOT FFMPEG_INCLUDE_DIR AND NOT FFmpeg_FIND_QUIETLY) + message(STATUS "Found old version of libavcodec, but a newer version is required.") + endif (FFMPEG_INCLUDE_DIR_OLD_STYLE AND NOT FFMPEG_INCLUDE_DIR AND NOT FFmpeg_FIND_QUIETLY) + if (FFmpeg_FIND_REQUIRED) message(FATAL_ERROR "Could NOT find FFMPEG") + else (FFmpeg_FIND_REQUIRED) + if (NOT FFmpeg_FIND_QUIETLY) + message(STATUS "Could NOT find FFMPEG") + endif (NOT FFmpeg_FIND_QUIETLY) endif (FFmpeg_FIND_REQUIRED) endif (FFMPEG_FOUND) - MARK_AS_ADVANCED(FFMPEG_LIBRARIES) - MARK_AS_ADVANCED(FFMPEG_INCLUDE_DIR) + mark_as_advanced(AVCODEC_LIBRARIES + AVFORMAT_LIBRARIES + AVUTIL_LIBRARIES + FFMPEG_INCLUDE_DIR + FFMPEG_INCLUDE_DIR_OLD_STYLE) endif (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) -- cgit v1.2.1 From 4e0138ca6cd56722c140c22c31b838d420173744 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 21 Jul 2008 11:09:49 +0000 Subject: Be sure that we defined TAGLIB_INCLUDES svn path=/trunk/KDE/kdelibs/; revision=835837 --- modules/FindTaglib.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 3edfdb4a..ad1e1010 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -42,9 +42,10 @@ if(TAGLIBCONFIG_EXECUTABLE) set(TAGLIB_FOUND TRUE) message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - + string(REGEX REPLACE " *-I" ";" TAGLIB_CFLAGS "${TAGLIB_CFLAGS}") + set(TAGLIB_INCLUDES ${TAGLIB_CFLAGS}) endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES) + mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES TAGLIB_INCLUDES) else(TAGLIBCONFIG_EXECUTABLE) -- cgit v1.2.1 From 80377f8c74f047b0adefdcfa13d6340dbdaf98e7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 21 Jul 2008 19:19:06 +0000 Subject: -also disable _KDE4_TARGET_LINK_INTERFACE_LIBRARIES() and use the renamed LINK_INTERFACE_LIBRARIES target property instead: set_target_properties(foo PROPERTIES ${KDE4_DISABLE_PROPERTY_}LINK_INTERFACE_LIBRARIES "kdeui;kdecore" ) While this doesn't look very nice, it is completely forward and backward compatible (i.e. cmake 2.4 doesn't complain, cmake 2.6 works, both versions work as soon as the reduced link interface is the default (soon), if somebody uses this with kdelibs which don't have that anymore he will get the reduced interface instead of errors, so all should be ok) Alex CCMAIL: mueller@kde.org svn path=/trunk/KDE/kdelibs/; revision=836131 --- modules/FindKDE4Internal.cmake | 17 ++++++++++++++++- modules/KDE4Macros.cmake | 6 ++---- 2 files changed, 18 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ee0100eb..abe6bea3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -493,9 +493,24 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") -# this one enables the smaller link interface for libs on UNIX (exceot OSX) +# this one enables the smaller link interface for libs on UNIX +set(KDE4_DISABLE_PROPERTY_ ) if(UNIX )# AND NOT APPLE) option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) + # The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for + # the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its + # correct name, if it's not empty, it will be a different name, i.e. the actual property + # will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. + # This will be removed again as soon as we require cmake >= 2.6.0. + # If enabled, make it empty, so the property will keep it's actual name. + if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) + set(KDE4_DISABLE_PROPERTY_ ) + else (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) + # If disabled, make it non-empty, so the property name will change from "LINK_INTERFACE_LIBRARIES" + # to "DISABLED_LINK_INTERFACE_LIBRARIES", which is a different (non-existing) target property, and so + # setting that property won't have an effect + set(KDE4_DISABLE_PROPERTY_ "DISABLED_") + endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) endif(UNIX)# AND NOT APPLE) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c30973da..768a36e2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1117,13 +1117,11 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) - if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) - set_target_properties("${_target}" PROPERTIES LINK_INTERFACE_LIBRARIES "${_interface_libs}") - endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) + message(FATAL_ERROR "_KDE4_TARGET_LINK_INTERFACE_LIBRARIES() doesn't exist anymore. Set the LINK_INTERFACE_LIBRARIES target property instead. See kdelibs/kdecore/CMakeLists.txt for an example.") endmacro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES) macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) - message(FATAL_ERROR "KDE4_TARGET_LINK_INTERFACE_LIBRARIES() has been renamed to _KDE4_TARGET_LINK_INTERFACE_LIBRARIES(), so use that instead") + message(FATAL_ERROR "KDE4_TARGET_LINK_INTERFACE_LIBRARIES() doesn't exist anymore. Set the LINK_INTERFACE_LIBRARIES target property instead. See kdelibs/kdecore/CMakeLists.txt for an example.") endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) macro (KDE4_INSTALL_HANDBOOK _lang) -- cgit v1.2.1 From 24a1cc7c66f4d2137c441c4222731980d4f5892b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 21 Jul 2008 19:25:47 +0000 Subject: -also disable _KDE4_TARGET_LINK_INTERFACE_LIBRARIES() and use the renamed LINK_INTERFACE_LIBRARIES target property instead: set_target_properties(foo PROPERTIES ${KDE4_DISABLE_PROPERTY_}LINK_INTERFACE_LIBRARIES "kdeui;kdecore" ) While this doesn't look very nice, it is completely forward and backward compatible (i.e. cmake 2.4 doesn't complain, cmake 2.6 works, both versions work as soon as the reduced link interface is the default (soon), if somebody uses this with kdelibs which don't have that anymore he will get the reduced interface instead of errors, so all should be ok) This was discussed on kde-buildsystem end of June. Alex CCMAIL: mueller@kde.org svn path=/branches/KDE/4.1/kdelibs/; revision=836133 --- modules/FindKDE4Internal.cmake | 23 ++++++++++++++++++++++- modules/KDE4Macros.cmake | 6 ++---- 2 files changed, 24 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 044bb4f3..34b67ac2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -493,12 +493,33 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") -# this one enables the smaller link interface for libs on UNIX (exceot OSX) + +# this one enables the smaller link interface for libs on UNIX +set(KDE4_DISABLE_PROPERTY_ ) if(UNIX )# AND NOT APPLE) option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) + # The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for + # the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its + # correct name, if it's not empty, it will be a different name, i.e. the actual property + # will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. + # This will be removed again as soon as we use the reduced link interface as default. + # This won't cause any incompatibilties then because then cmake files which still + # have that prefix will work, since that prefix will just be empty. + # + # If enabled, make it empty, so the property will keep it's actual name. + if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) + set(KDE4_DISABLE_PROPERTY_ ) + else (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) + # If disabled, make it non-empty, so the property name will change from "LINK_INTERFACE_LIBRARIES" + # to "DISABLED_LINK_INTERFACE_LIBRARIES", which is a different (non-existing) target property, and so + # setting that property won't have an effect + set(KDE4_DISABLE_PROPERTY_ "DISABLED_") + endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) endif(UNIX)# AND NOT APPLE) + + if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) endif(KDE4_ENABLE_FINAL) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c30973da..768a36e2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1117,13 +1117,11 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) - if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) - set_target_properties("${_target}" PROPERTIES LINK_INTERFACE_LIBRARIES "${_interface_libs}") - endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) + message(FATAL_ERROR "_KDE4_TARGET_LINK_INTERFACE_LIBRARIES() doesn't exist anymore. Set the LINK_INTERFACE_LIBRARIES target property instead. See kdelibs/kdecore/CMakeLists.txt for an example.") endmacro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES) macro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) - message(FATAL_ERROR "KDE4_TARGET_LINK_INTERFACE_LIBRARIES() has been renamed to _KDE4_TARGET_LINK_INTERFACE_LIBRARIES(), so use that instead") + message(FATAL_ERROR "KDE4_TARGET_LINK_INTERFACE_LIBRARIES() doesn't exist anymore. Set the LINK_INTERFACE_LIBRARIES target property instead. See kdelibs/kdecore/CMakeLists.txt for an example.") endmacro (KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) macro (KDE4_INSTALL_HANDBOOK _lang) -- cgit v1.2.1 From 8d9efc2b285ef9f5dff75958a659eb20bb239d69 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 21 Jul 2008 20:23:58 +0000 Subject: Better to not change TAGLIB_CFLAGS svn path=/trunk/KDE/kdelibs/; revision=836159 --- modules/FindTaglib.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index ad1e1010..5bbb8ee1 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -42,8 +42,7 @@ if(TAGLIBCONFIG_EXECUTABLE) set(TAGLIB_FOUND TRUE) message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - string(REGEX REPLACE " *-I" ";" TAGLIB_CFLAGS "${TAGLIB_CFLAGS}") - set(TAGLIB_INCLUDES ${TAGLIB_CFLAGS}) + string(REGEX REPLACE " *-I" ";" TAGLIB_INCLUDES "${TAGLIB_CFLAGS}") endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES TAGLIB_INCLUDES) -- cgit v1.2.1 From eac9e3fbd8ebd93c3847be8dd2413382f9d4a352 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 21 Jul 2008 21:14:57 +0000 Subject: fix automoc4 for msvc as discussed on kde-buildsystem svn path=/trunk/KDE/kdelibs/; revision=836190 --- modules/KDE4Macros.cmake | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 768a36e2..23943590 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -552,13 +552,20 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") set(_SRCS ${_first_SRC} ${ARGN}) - kde4_handle_automoc(${_target_NAME} _SRCS) + if(MSVC) + add_automoc4_target("${_target_NAME}_automoc" _SRCS) + else(MSVC) + automoc4(${_target_NAME} _SRCS) + endif(MSVC) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) add_library(${_target_NAME} MODULE ${_SRCS}) endif (KDE4_ENABLE_FINAL) + if(MSVC) + add_dependencies(${_target_NAME} "${_target_NAME}_automoc") + endif(MSVC) if (_first_SRC) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") @@ -802,13 +809,20 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set(_add_executable_param ${_add_executable_param} EXCLUDE_FROM_ALL) endif (_test AND NOT KDE4_BUILD_TESTS) - kde4_handle_automoc(${_target_NAME} _SRCS) + if(MSVC) + add_automoc4_target("${_target_NAME}_automoc" _SRCS) + else(MSVC) + automoc4(${_target_NAME} _SRCS) + endif(MSVC) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) + if(MSVC) + add_dependencies(${_target_NAME} "${_target_NAME}_automoc") + endif(MSVC) if (_test) set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"") @@ -843,13 +857,20 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endif (${_lib_TYPE} STREQUAL "MODULE") set(_SRCS ${_first_SRC} ${ARGN}) - kde4_handle_automoc(${_target_NAME} _SRCS) + if(MSVC) + add_automoc4_target("${_target_NAME}_automoc" _SRCS) + else(MSVC) + automoc4(${_target_NAME} _SRCS) + endif(MSVC) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) add_library(${_target_NAME} ${_add_lib_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) + if(MSVC) + add_dependencies(${_target_NAME} "${_target_NAME}_automoc") + endif(MSVC) kde4_handle_rpath_for_library(${_target_NAME}) -- cgit v1.2.1 From 921d92fbcab5cc918ce1696336fa4c358d20f611 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 22 Jul 2008 07:14:29 +0000 Subject: Backport fix from trunk svn path=/branches/KDE/4.1/kdelibs/; revision=836388 --- modules/FindTaglib.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindTaglib.cmake b/modules/FindTaglib.cmake index 3edfdb4a..5bbb8ee1 100644 --- a/modules/FindTaglib.cmake +++ b/modules/FindTaglib.cmake @@ -42,9 +42,9 @@ if(TAGLIBCONFIG_EXECUTABLE) set(TAGLIB_FOUND TRUE) message(STATUS "Found taglib: ${TAGLIB_LIBRARIES}") endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - + string(REGEX REPLACE " *-I" ";" TAGLIB_INCLUDES "${TAGLIB_CFLAGS}") endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") - mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES) + mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES TAGLIB_INCLUDES) else(TAGLIBCONFIG_EXECUTABLE) -- cgit v1.2.1 From 84ec6ed78d78cd11ba2b37b1b641d5c878d2ddd7 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 22 Jul 2008 08:57:44 +0000 Subject: corrected doc svn path=/trunk/KDE/kdelibs/; revision=836434 --- modules/FindKDEWIN.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake index 550d11d3..dfd7d071 100644 --- a/modules/FindKDEWIN.cmake +++ b/modules/FindKDEWIN.cmake @@ -1,4 +1,4 @@ -# - Try to find the directory in which the kdewin32 library and other win32 related libraries lives +# - Try to find the directory in which the kde windows supplementary libraries are living # # used environment vars # KDEWIN_DIR - kdewin root dir -- cgit v1.2.1 From 520c0acdb8b9f93f54a18a73ef203ec7e9e44756 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 22 Jul 2008 22:50:07 +0000 Subject: -fix linking on Windows, here by default the LINK_INTERFACE_LIBRARIES properties was set, while it was intended that by default it shouldn't be set Alex CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=836766 --- modules/FindKDE4Internal.cmake | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index abe6bea3..a4173664 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -493,23 +493,25 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") -# this one enables the smaller link interface for libs on UNIX -set(KDE4_DISABLE_PROPERTY_ ) +# This option enables the reduced link interface for libs on UNIX +# +# The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for +# the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its +# correct name, if it's not empty, it will be a different name, i.e. the actual property +# will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. +# +# By default (i.e. also for Windows) make it non-empty, so the property name will +# change from "LINK_INTERFACE_LIBRARIES" to "DISABLED_LINK_INTERFACE_LIBRARIES", +# which is a different (non-existing) target property, and so setting that property +# won't have an effect +set(KDE4_DISABLE_PROPERTY_ "DISABLED_") + if(UNIX )# AND NOT APPLE) option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) - # The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for - # the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its - # correct name, if it's not empty, it will be a different name, i.e. the actual property - # will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. - # This will be removed again as soon as we require cmake >= 2.6.0. # If enabled, make it empty, so the property will keep it's actual name. + # and the LINK_INTERFACE_LIBRARIES property will be set. if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) set(KDE4_DISABLE_PROPERTY_ ) - else (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) - # If disabled, make it non-empty, so the property name will change from "LINK_INTERFACE_LIBRARIES" - # to "DISABLED_LINK_INTERFACE_LIBRARIES", which is a different (non-existing) target property, and so - # setting that property won't have an effect - set(KDE4_DISABLE_PROPERTY_ "DISABLED_") endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) endif(UNIX)# AND NOT APPLE) -- cgit v1.2.1 From d6cbf4318d3b047f5ffb4ad284fe59a6a1a12cd4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 22 Jul 2008 22:53:29 +0000 Subject: -same fix as in trunk: fix linking on Windows The intention was tha by default the reduced link interface shouldn't be used (yet), but this wasn't the case under Windows, where it was enabled by default. This is changed now and now it is also under Windows disabled by default. Alex svn path=/branches/KDE/4.1/kdelibs/; revision=836768 --- modules/FindKDE4Internal.cmake | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 34b67ac2..d8f91bfc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -493,27 +493,25 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") +# This option enables the reduced link interface for libs on UNIX +# +# The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for +# the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its +# correct name, if it's not empty, it will be a different name, i.e. the actual property +# will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. +# +# By default (i.e. also for Windows) make it non-empty, so the property name will +# change from "LINK_INTERFACE_LIBRARIES" to "DISABLED_LINK_INTERFACE_LIBRARIES", +# which is a different (non-existing) target property, and so setting that property +# won't have an effect +set(KDE4_DISABLE_PROPERTY_ "DISABLED_") -# this one enables the smaller link interface for libs on UNIX -set(KDE4_DISABLE_PROPERTY_ ) if(UNIX )# AND NOT APPLE) option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) - # The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for - # the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its - # correct name, if it's not empty, it will be a different name, i.e. the actual property - # will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. - # This will be removed again as soon as we use the reduced link interface as default. - # This won't cause any incompatibilties then because then cmake files which still - # have that prefix will work, since that prefix will just be empty. - # # If enabled, make it empty, so the property will keep it's actual name. + # and the LINK_INTERFACE_LIBRARIES property will be set. if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) set(KDE4_DISABLE_PROPERTY_ ) - else (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) - # If disabled, make it non-empty, so the property name will change from "LINK_INTERFACE_LIBRARIES" - # to "DISABLED_LINK_INTERFACE_LIBRARIES", which is a different (non-existing) target property, and so - # setting that property won't have an effect - set(KDE4_DISABLE_PROPERTY_ "DISABLED_") endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) endif(UNIX)# AND NOT APPLE) -- cgit v1.2.1 From 0021044744fe12e9f601eb37207d31be277466d0 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 23 Jul 2008 18:19:11 +0000 Subject: enable KDE4_ENABLE_EXPERIMENTAL_LIB for windows too - kdelibs compiles fine with this option svn path=/trunk/KDE/kdelibs/; revision=837076 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a4173664..ed2eb31b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -506,14 +506,14 @@ option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the h # won't have an effect set(KDE4_DISABLE_PROPERTY_ "DISABLED_") -if(UNIX )# AND NOT APPLE) +if(UNIX OR WIN32)# AND NOT APPLE) option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) # If enabled, make it empty, so the property will keep it's actual name. # and the LINK_INTERFACE_LIBRARIES property will be set. if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) set(KDE4_DISABLE_PROPERTY_ ) endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) -endif(UNIX)# AND NOT APPLE) +endif(UNIX OR WIN32)# AND NOT APPLE) if( KDE4_ENABLE_FINAL) -- cgit v1.2.1 From 3edd4013064ea436f4088b96d9fa883e2cda7809 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 23 Jul 2008 20:02:17 +0000 Subject: remove the condition around KDE4_ENABLE_EXPERIMENTAL_LIB completely svn path=/trunk/KDE/kdelibs/; revision=837109 --- modules/FindKDE4Internal.cmake | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ed2eb31b..48692482 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -506,14 +506,12 @@ option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the h # won't have an effect set(KDE4_DISABLE_PROPERTY_ "DISABLED_") -if(UNIX OR WIN32)# AND NOT APPLE) - option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) - # If enabled, make it empty, so the property will keep it's actual name. - # and the LINK_INTERFACE_LIBRARIES property will be set. - if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) - set(KDE4_DISABLE_PROPERTY_ ) - endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) -endif(UNIX OR WIN32)# AND NOT APPLE) +option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) +# If enabled, make it empty, so the property will keep it's actual name. +# and the LINK_INTERFACE_LIBRARIES property will be set. +if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) + set(KDE4_DISABLE_PROPERTY_ ) +endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) if( KDE4_ENABLE_FINAL) -- cgit v1.2.1 From 5034e09467548941d9f6eb38d6019f82d0579030 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 23 Jul 2008 22:00:12 +0000 Subject: -make the reduced link interface also available under Windows, sync with trunk Alex svn path=/branches/KDE/4.1/kdelibs/; revision=837147 --- modules/FindKDE4Internal.cmake | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d8f91bfc..d0ed0c46 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -506,16 +506,12 @@ option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the h # won't have an effect set(KDE4_DISABLE_PROPERTY_ "DISABLED_") -if(UNIX )# AND NOT APPLE) - option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) - # If enabled, make it empty, so the property will keep it's actual name. - # and the LINK_INTERFACE_LIBRARIES property will be set. - if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) - set(KDE4_DISABLE_PROPERTY_ ) - endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) -endif(UNIX)# AND NOT APPLE) - - +option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) +# If enabled, make it empty, so the property will keep it's actual name. +# and the LINK_INTERFACE_LIBRARIES property will be set. +if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) + set(KDE4_DISABLE_PROPERTY_ ) +endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) if( KDE4_ENABLE_FINAL) -- cgit v1.2.1 From 79a8944216a50da283f76e897f657aa45032dd3c Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 24 Jul 2008 15:25:54 +0000 Subject: compute variables for SOPRANO_PLUGIN_FOO_FOUND tidy up a bit CCMAIL: trueg@kde.org svn path=/trunk/KDE/kdelibs/; revision=837396 --- modules/FindSoprano.cmake | 74 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 60 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 0cc278b0..203a2fdc 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -10,6 +10,13 @@ # SOPRANO_SERVER_LIBRARIES - The Soprano server library (libsopranoserver) # SOPRANO_VERSION - The Soprano version (string value) # +# SOPRANO_PLUGIN_NQUADPARSER_FOUND - true if the nquadparser plugin is found +# SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND - true if the nquadserializer plugin is found +# SOPRANO_PLUGIN_RAPTORPARSER_FOUND - true if the raptorparser plugin is found +# SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND - true if the raptorserializer plugin is found +# SOPRANO_PLUGIN_REDLANDBACKEND_FOUND - true if the redlandbackend plugin is found +# SOPRANO_PLUGIN_SESAME2BACKEND_FOUND - true if the sesame2backend plugin is found + # Options: # Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) # @@ -23,9 +30,9 @@ # set(SopranoIndex_FOUND TRUE) #else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) - INCLUDE(FindLibraryWithDebug) + include(FindLibraryWithDebug) - FIND_PATH(SOPRANO_INCLUDE_DIR + find_path(SOPRANO_INCLUDE_DIR NAMES soprano/soprano.h PATHS @@ -33,7 +40,7 @@ ${INCLUDE_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_INDEX_LIBRARIES + find_library_with_debug(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoindex @@ -42,7 +49,7 @@ ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_CLIENT_LIBRARIES + find_library_with_debug(SOPRANO_CLIENT_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoclient @@ -51,7 +58,7 @@ ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_LIBRARIES + find_library_with_debug(SOPRANO_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES soprano PATHS @@ -59,7 +66,7 @@ ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_SERVER_LIBRARIES + find_library_with_debug(SOPRANO_SERVER_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoserver @@ -89,15 +96,15 @@ # check Soprano version # We set a default for the minimum required version to be backwards compatible - IF(NOT SOPRANO_MIN_VERSION) - SET(SOPRANO_MIN_VERSION "1.99") - ENDIF(NOT SOPRANO_MIN_VERSION) + if(NOT SOPRANO_MIN_VERSION) + set(SOPRANO_MIN_VERSION "1.99") + endif(NOT SOPRANO_MIN_VERSION) if(Soprano_FOUND) - FILE(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) - STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) - IF (SOPRANO_VERSION_MATCH) - STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) + file(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) + string(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) + if(SOPRANO_VERSION_MATCH) + string(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") set(Soprano_FOUND FALSE) if(Soprano_FIND_REQUIRED) @@ -106,15 +113,54 @@ message(STATUS "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") endif(Soprano_FIND_REQUIRED) endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") - ENDIF (SOPRANO_VERSION_MATCH) + endif(SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) + #look for parser plugins + if(Soprano_FOUND) + set(SOPRANO_PLUGIN_DIR ${KDE4_DATA_DIR}) + string(REGEX REPLACE "apps.*$" "" SOPRANO_PLUGIN_DIR ${SOPRANO_PLUGIN_DIR}) + set(SOPRANO_PLUGIN_DIR "${SOPRANO_PLUGIN_DIR}/soprano/plugins") + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) + set(SOPRANO_PLUGIN_NQUADPARSER_FOUND TRUE) + set(_plugins "${_plugins} nquadparser") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) + set(SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND TRUE) + set(_plugins "${_plugins} nquadserializer") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) + set(SOPRANO_PLUGIN_RAPTORPARSER_FOUND TRUE) + set(_plugins "${_plugins} raptorparser") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) + set(SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND TRUE) + set(_plugins "${_plugins} raptorserializer") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) + set(SOPRANO_PLUGIN_REDLANDBACKEND_FOUND TRUE) + set(_plugins "${_plugins} redlandbackend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) + set(SOPRANO_PLUGIN_SESAME2BACKEND_FOUND TRUE) + set(_plugins "${_plugins} sesame2backend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) + + endif(Soprano_FOUND) + if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") + message(STATUS "Found Sopranos Plugins: ${_plugins}") endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) -- cgit v1.2.1 From 71addb9f8d97b07ba3a017527d765499a73f9995 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 24 Jul 2008 16:44:36 +0000 Subject: revert. no ready yet. svn path=/trunk/KDE/kdelibs/; revision=837419 --- modules/FindSoprano.cmake | 74 +++++++++-------------------------------------- 1 file changed, 14 insertions(+), 60 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 203a2fdc..0cc278b0 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -10,13 +10,6 @@ # SOPRANO_SERVER_LIBRARIES - The Soprano server library (libsopranoserver) # SOPRANO_VERSION - The Soprano version (string value) # -# SOPRANO_PLUGIN_NQUADPARSER_FOUND - true if the nquadparser plugin is found -# SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND - true if the nquadserializer plugin is found -# SOPRANO_PLUGIN_RAPTORPARSER_FOUND - true if the raptorparser plugin is found -# SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND - true if the raptorserializer plugin is found -# SOPRANO_PLUGIN_REDLANDBACKEND_FOUND - true if the redlandbackend plugin is found -# SOPRANO_PLUGIN_SESAME2BACKEND_FOUND - true if the sesame2backend plugin is found - # Options: # Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) # @@ -30,9 +23,9 @@ # set(SopranoIndex_FOUND TRUE) #else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) - include(FindLibraryWithDebug) + INCLUDE(FindLibraryWithDebug) - find_path(SOPRANO_INCLUDE_DIR + FIND_PATH(SOPRANO_INCLUDE_DIR NAMES soprano/soprano.h PATHS @@ -40,7 +33,7 @@ ${INCLUDE_INSTALL_DIR} ) - find_library_with_debug(SOPRANO_INDEX_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoindex @@ -49,7 +42,7 @@ ${LIB_INSTALL_DIR} ) - find_library_with_debug(SOPRANO_CLIENT_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_CLIENT_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoclient @@ -58,7 +51,7 @@ ${LIB_INSTALL_DIR} ) - find_library_with_debug(SOPRANO_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES soprano PATHS @@ -66,7 +59,7 @@ ${LIB_INSTALL_DIR} ) - find_library_with_debug(SOPRANO_SERVER_LIBRARIES + FIND_LIBRARY_WITH_DEBUG(SOPRANO_SERVER_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoserver @@ -96,15 +89,15 @@ # check Soprano version # We set a default for the minimum required version to be backwards compatible - if(NOT SOPRANO_MIN_VERSION) - set(SOPRANO_MIN_VERSION "1.99") - endif(NOT SOPRANO_MIN_VERSION) + IF(NOT SOPRANO_MIN_VERSION) + SET(SOPRANO_MIN_VERSION "1.99") + ENDIF(NOT SOPRANO_MIN_VERSION) if(Soprano_FOUND) - file(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) - string(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) - if(SOPRANO_VERSION_MATCH) - string(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) + FILE(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) + STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) + IF (SOPRANO_VERSION_MATCH) + STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") set(Soprano_FOUND FALSE) if(Soprano_FIND_REQUIRED) @@ -113,54 +106,15 @@ message(STATUS "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") endif(Soprano_FIND_REQUIRED) endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") - endif(SOPRANO_VERSION_MATCH) + ENDIF (SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) - #look for parser plugins - if(Soprano_FOUND) - set(SOPRANO_PLUGIN_DIR ${KDE4_DATA_DIR}) - string(REGEX REPLACE "apps.*$" "" SOPRANO_PLUGIN_DIR ${SOPRANO_PLUGIN_DIR}) - set(SOPRANO_PLUGIN_DIR "${SOPRANO_PLUGIN_DIR}/soprano/plugins") - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) - set(SOPRANO_PLUGIN_NQUADPARSER_FOUND TRUE) - set(_plugins "${_plugins} nquadparser") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) - set(SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND TRUE) - set(_plugins "${_plugins} nquadserializer") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) - set(SOPRANO_PLUGIN_RAPTORPARSER_FOUND TRUE) - set(_plugins "${_plugins} raptorparser") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) - set(SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND TRUE) - set(_plugins "${_plugins} raptorserializer") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) - set(SOPRANO_PLUGIN_REDLANDBACKEND_FOUND TRUE) - set(_plugins "${_plugins} redlandbackend") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) - set(SOPRANO_PLUGIN_SESAME2BACKEND_FOUND TRUE) - set(_plugins "${_plugins} sesame2backend") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) - - endif(Soprano_FOUND) - if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") - message(STATUS "Found Sopranos Plugins: ${_plugins}") endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) -- cgit v1.2.1 From c0908d4c556204d89d7c8d2631c888d38cda0b56 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 24 Jul 2008 18:44:00 +0000 Subject: second attempt: compute variables for SOPRANO_PLUGIN_FOO_FOUND tidy up a bit svn path=/trunk/KDE/kdelibs/; revision=837464 --- modules/FindSoprano.cmake | 80 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 66 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 0cc278b0..31377768 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -10,6 +10,13 @@ # SOPRANO_SERVER_LIBRARIES - The Soprano server library (libsopranoserver) # SOPRANO_VERSION - The Soprano version (string value) # +# SOPRANO_PLUGIN_NQUADPARSER_FOUND - true if the nquadparser plugin is found +# SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND - true if the nquadserializer plugin is found +# SOPRANO_PLUGIN_RAPTORPARSER_FOUND - true if the raptorparser plugin is found +# SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND - true if the raptorserializer plugin is found +# SOPRANO_PLUGIN_REDLANDBACKEND_FOUND - true if the redlandbackend plugin is found +# SOPRANO_PLUGIN_SESAME2BACKEND_FOUND - true if the sesame2backend plugin is found + # Options: # Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) # @@ -23,9 +30,9 @@ # set(SopranoIndex_FOUND TRUE) #else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) - INCLUDE(FindLibraryWithDebug) + include(FindLibraryWithDebug) - FIND_PATH(SOPRANO_INCLUDE_DIR + find_path(SOPRANO_INCLUDE_DIR NAMES soprano/soprano.h PATHS @@ -33,7 +40,7 @@ ${INCLUDE_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_INDEX_LIBRARIES + find_library_with_debug(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoindex @@ -42,7 +49,7 @@ ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_CLIENT_LIBRARIES + find_library_with_debug(SOPRANO_CLIENT_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoclient @@ -51,7 +58,7 @@ ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_LIBRARIES + find_library_with_debug(SOPRANO_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES soprano PATHS @@ -59,7 +66,7 @@ ${LIB_INSTALL_DIR} ) - FIND_LIBRARY_WITH_DEBUG(SOPRANO_SERVER_LIBRARIES + find_library_with_debug(SOPRANO_SERVER_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoserver @@ -89,15 +96,15 @@ # check Soprano version # We set a default for the minimum required version to be backwards compatible - IF(NOT SOPRANO_MIN_VERSION) - SET(SOPRANO_MIN_VERSION "1.99") - ENDIF(NOT SOPRANO_MIN_VERSION) + if(NOT SOPRANO_MIN_VERSION) + set(SOPRANO_MIN_VERSION "1.99") + endif(NOT SOPRANO_MIN_VERSION) if(Soprano_FOUND) - FILE(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) - STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) - IF (SOPRANO_VERSION_MATCH) - STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) + file(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) + string(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) + if(SOPRANO_VERSION_MATCH) + string(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") set(Soprano_FOUND FALSE) if(Soprano_FIND_REQUIRED) @@ -106,15 +113,60 @@ message(STATUS "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") endif(Soprano_FIND_REQUIRED) endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") - ENDIF (SOPRANO_VERSION_MATCH) + endif(SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) + #look for parser plugins + if(Soprano_FOUND) + find_path(SOPRANO_PLUGIN_DIR + NAMES + soprano/plugins + PATHS + ${SHARE_INSTALL_PREFIX} /usr/share /usr/local/share + NO_DEFAULT_PATH + NO_SYSTEM_ENVIRONMENT_PATH + ) + set(SOPRANO_PLUGIN_DIR "${SOPRANO_PLUGIN_DIR}/soprano/plugins") + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) + set(SOPRANO_PLUGIN_NQUADPARSER_FOUND TRUE) + set(_plugins "${_plugins} nquadparser") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) + set(SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND TRUE) + set(_plugins "${_plugins} nquadserializer") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) + set(SOPRANO_PLUGIN_RAPTORPARSER_FOUND TRUE) + set(_plugins "${_plugins} raptorparser") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) + set(SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND TRUE) + set(_plugins "${_plugins} raptorserializer") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) + set(SOPRANO_PLUGIN_REDLANDBACKEND_FOUND TRUE) + set(_plugins "${_plugins} redlandbackend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) + set(SOPRANO_PLUGIN_SESAME2BACKEND_FOUND TRUE) + set(_plugins "${_plugins} sesame2backend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) + + endif(Soprano_FOUND) + if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") + message(STATUS "Found Sopranos Plugins: ${_plugins}") endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) -- cgit v1.2.1 From 394fcdfdbba0af6d29de9b12ded03e4279f37227 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Thu, 24 Jul 2008 18:44:34 +0000 Subject: fix indentation SVN_SILENT: svn path=/trunk/KDE/kdelibs/; revision=837465 --- modules/FindSoprano.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 31377768..42d228ca 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -118,14 +118,14 @@ #look for parser plugins if(Soprano_FOUND) - find_path(SOPRANO_PLUGIN_DIR - NAMES - soprano/plugins - PATHS - ${SHARE_INSTALL_PREFIX} /usr/share /usr/local/share - NO_DEFAULT_PATH - NO_SYSTEM_ENVIRONMENT_PATH - ) + find_path(SOPRANO_PLUGIN_DIR + NAMES + soprano/plugins + PATHS + ${SHARE_INSTALL_PREFIX} /usr/share /usr/local/share + NO_DEFAULT_PATH + NO_SYSTEM_ENVIRONMENT_PATH + ) set(SOPRANO_PLUGIN_DIR "${SOPRANO_PLUGIN_DIR}/soprano/plugins") if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) -- cgit v1.2.1 From 129034d56614dd8a28092b9ebdf696a824ae8dfd Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 25 Jul 2008 13:31:42 +0000 Subject: fix typo SVN_SILENT: svn path=/trunk/KDE/kdelibs/; revision=837686 --- modules/FindSoprano.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 42d228ca..84581a3f 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -166,7 +166,7 @@ message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") - message(STATUS "Found Sopranos Plugins: ${_plugins}") + message(STATUS "Found Soprano Plugins:${_plugins}") endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) -- cgit v1.2.1 From 8ffc474403fe1f7181d9d78c89e2b52010889887 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 28 Jul 2008 22:11:42 +0000 Subject: -print a reminder that starting next week at least cmake 2.6.0 is required for building KDE 4 trunk Hint: you can easily install multiple versions of cmake by just putting them into separate directories and then calling them initially with the full path: /opt/cmake-2.6.0/bin/cmake ... Alex svn path=/trunk/KDE/kdelibs/; revision=838859 --- modules/FindKDE4Internal.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 48692482..7946ab16 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -235,6 +235,16 @@ if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") message(FATAL_ERROR "You are using CMake 2.5, which was the unreleased development version between 2.4 and 2.6. This is no longer supported. Please update to CMake 2.6 or current cvs HEAD.") endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") +# print a reminder to update cmake to at least 2.6.0 +if ("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS "2.6") + message(STATUS " +************************************************************************ +From August 4th CMake >= 2.6.0 will be required, please update your CMake, e.g. from http://www.cmake.org/HTML/Download.html . +************************************************************************ +") +endif ("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS "2.6") + + # CMake 2.6, set compatibility behaviour to cmake 2.4 # this must be executed always, because the CMAKE_MINIMUM_REQUIRED() command above # resets the policy settings, so we get a lot of warnings -- cgit v1.2.1 From b662f6f1b92adc97e8600b30accb5277b35bbb2f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 28 Jul 2008 22:25:51 +0000 Subject: -make the reduced link interface the default Dirk fixed most (all ?) of the breakage this causes, let's see if there is something left (i.e. adding missing libraries to the TARGET_LINK_LIBRARIES() calls) Alex svn path=/trunk/KDE/kdelibs/; revision=838863 --- modules/FindKDE4Internal.cmake | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7946ab16..76667209 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -503,25 +503,27 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") -# This option enables the reduced link interface for libs on UNIX -# -# The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for -# the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its -# correct name, if it's not empty, it will be a different name, i.e. the actual property -# will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. -# -# By default (i.e. also for Windows) make it non-empty, so the property name will -# change from "LINK_INTERFACE_LIBRARIES" to "DISABLED_LINK_INTERFACE_LIBRARIES", -# which is a different (non-existing) target property, and so setting that property -# won't have an effect -set(KDE4_DISABLE_PROPERTY_ "DISABLED_") - -option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) -# If enabled, make it empty, so the property will keep it's actual name. -# and the LINK_INTERFACE_LIBRARIES property will be set. -if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) - set(KDE4_DISABLE_PROPERTY_ ) -endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) +# Remove this below once it's sure it really works, Alex + +# # This option enables the reduced link interface for libs on UNIX +# # +# # The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for +# # the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its +# # correct name, if it's not empty, it will be a different name, i.e. the actual property +# # will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. +# # +# # By default (i.e. also for Windows) make it non-empty, so the property name will +# # change from "LINK_INTERFACE_LIBRARIES" to "DISABLED_LINK_INTERFACE_LIBRARIES", +# # which is a different (non-existing) target property, and so setting that property +# # won't have an effect +# set(KDE4_DISABLE_PROPERTY_ "DISABLED_") +# +# option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) +# # If enabled, make it empty, so the property will keep it's actual name. +# # and the LINK_INTERFACE_LIBRARIES property will be set. +# if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) +# set(KDE4_DISABLE_PROPERTY_ ) +# endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) if( KDE4_ENABLE_FINAL) -- cgit v1.2.1 From da1f88e6f0443ff75eb12dd2288ce9bab488f2c2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 29 Jul 2008 05:59:42 +0000 Subject: -this was missing from the commit last night, which enabled the reduced link interface: always write the reduced link information into KDELibsDependencies file Alex svn path=/trunk/KDE/kdelibs/; revision=838965 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 23943590..d4dec0d2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1107,7 +1107,7 @@ endmacro (KDE4_ADD_APP_ICON) macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) - if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) +# if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) # get all cmake variables which end in _LIB_DEPENDS # then parse the target name out of them @@ -1134,7 +1134,7 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) endif(NOT "${target}" STREQUAL "${currentVar}") endforeach(currentVar ${allVars}) - endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) +# endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) -- cgit v1.2.1 From 66e40ab24c86424c72c33af885b3d07d14189b7e Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Tue, 29 Jul 2008 15:13:19 +0000 Subject: when using cmake 2.6.0 make sure it's using automoc 0.9.84 or later svn path=/trunk/KDE/kdelibs/; revision=839226 --- modules/FindKDE4Internal.cmake | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 76667209..12b8d058 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -271,6 +271,19 @@ find_package(Qt4 REQUIRED) # automoc4 (from kdesupport) is now required, Alex find_package(Automoc4 REQUIRED) + +if (CMAKE_MAJOR_VERSION GREATER 4) + # cmake 2.6.0 and automoc4 0.9.83 didn't add the necessary definitions for backends to moc calls + if (NOT AUTOMOC4_VERSION) + # the version macro was added for 0.9.84 + set(AUTOMOC4_VERSION "0.9.83") + endif (NOT AUTOMOC4_VERSION) + macro_ensure_version("0.9.84" "${AUTOMOC4_VERSION}" _automoc4_version_ok) + if (NOT _automoc4_version_ok) + message(FATAL_ERROR "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.84") + endif (NOT _automoc4_version_ok) +endif (CMAKE_MAJOR_VERSION GREATER 4) + # use automoc4 from kdesupport set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) -- cgit v1.2.1 From 76d4c6b036d153e1f3972b8097b93701e976f8f4 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Tue, 29 Jul 2008 15:14:21 +0000 Subject: backport: when using cmake 2.6.0 make sure it's using automoc 0.9.84 or later svn path=/branches/KDE/4.1/kdelibs/; revision=839227 --- modules/FindKDE4Internal.cmake | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d0ed0c46..98b7d4d1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -261,6 +261,19 @@ find_package(Qt4 REQUIRED) # automoc4 (from kdesupport) is now required, Alex find_package(Automoc4 REQUIRED) + +if (CMAKE_MAJOR_VERSION GREATER 4) + # cmake 2.6.0 and automoc4 0.9.83 didn't add the necessary definitions for backends to moc calls + if (NOT AUTOMOC4_VERSION) + # the version macro was added for 0.9.84 + set(AUTOMOC4_VERSION "0.9.83") + endif (NOT AUTOMOC4_VERSION) + macro_ensure_version("0.9.84" "${AUTOMOC4_VERSION}" _automoc4_version_ok) + if (NOT _automoc4_version_ok) + message(FATAL_ERROR "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.84") + endif (NOT _automoc4_version_ok) +endif (CMAKE_MAJOR_VERSION GREATER 4) + # use automoc4 from kdesupport set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) -- cgit v1.2.1 From 1733614cf4ca29151c669773366bfce9c24abd0b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 4 Aug 2008 23:54:21 +0000 Subject: -require cmake >= 2.6.0 -remove some tests for the current cmake versions Alex svn path=/trunk/KDE/kdelibs/; revision=842236 --- modules/FindKDE4Internal.cmake | 65 ++++++++++++------------------------------ 1 file changed, 18 insertions(+), 47 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 12b8d058..482fb5e6 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -228,36 +228,23 @@ # this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below -cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR) - -# cmake 2.5, i.e. the cvs version between 2.4 and 2.6, is not supported -if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") - message(FATAL_ERROR "You are using CMake 2.5, which was the unreleased development version between 2.4 and 2.6. This is no longer supported. Please update to CMake 2.6 or current cvs HEAD.") -endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL "2.5") - -# print a reminder to update cmake to at least 2.6.0 -if ("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS "2.6") - message(STATUS " -************************************************************************ -From August 4th CMake >= 2.6.0 will be required, please update your CMake, e.g. from http://www.cmake.org/HTML/Download.html . -************************************************************************ -") -endif ("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS "2.6") - +cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR) +# this second call will never fail +# it is here for the effect that it sets the cmake policies to the 2.4.x compatibility settings for now +cmake_minimum_required(VERSION 2.4.5) # CMake 2.6, set compatibility behaviour to cmake 2.4 # this must be executed always, because the CMAKE_MINIMUM_REQUIRED() command above # resets the policy settings, so we get a lot of warnings -if(COMMAND CMAKE_POLICY) - # CMP0000: don't require cmake_minimum_version() directly in the top level CMakeLists.txt, FindKDE4Internal.cmake is good enough - cmake_policy(SET CMP0000 OLD) - # CMP0002: in KDE4 we have multiple targets with the same name for the unit tests - cmake_policy(SET CMP0002 OLD) - # CMP0003: add the link paths to the link command as with cmake 2.4 - cmake_policy(SET CMP0003 OLD) - # CMP0005: keep escaping behaviour for definitions added via add_definitions() - cmake_policy(SET CMP0005 OLD) -endif(COMMAND CMAKE_POLICY) + +# CMP0000: don't require cmake_minimum_version() directly in the top level CMakeLists.txt, FindKDE4Internal.cmake is good enough +cmake_policy(SET CMP0000 OLD) +# CMP0002: in KDE4 we have multiple targets with the same name for the unit tests +cmake_policy(SET CMP0002 OLD) +# CMP0003: add the link paths to the link command as with cmake 2.4 +cmake_policy(SET CMP0003 OLD) +# CMP0005: keep escaping behaviour for definitions added via add_definitions() +cmake_policy(SET CMP0005 OLD) # Only do something if it hasn't been found yet @@ -699,40 +686,24 @@ set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" # on the Mac support an extra install directory for application bundles starting with cmake 2.6 if(APPLE) - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") - set(INSTALL_TARGETS_DEFAULT_ARGS ${INSTALL_TARGETS_DEFAULT_ARGS} - BUNDLE DESTINATION "${BUNDLE_INSTALL_DIR}" ) - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") + set(INSTALL_TARGETS_DEFAULT_ARGS ${INSTALL_TARGETS_DEFAULT_ARGS} + BUNDLE DESTINATION "${BUNDLE_INSTALL_DIR}" ) endif(APPLE) ############## add some more default search paths ############### # -# always search in the directory where cmake is installed -# and in the current installation prefix # the KDE4_xxx_INSTALL_DIR variables are empty when building kdelibs itself # and otherwise point to the kde4 install dirs -# they will be set by default starting with cmake 2.6.0, maybe already 2.4.8 - -# also add the install directory of the running cmake to the search directories -# CMAKE_ROOT is CMAKE_INSTALL_PREFIX/share/cmake, so we need to go two levels up -get_filename_component(_CMAKE_INSTALL_DIR "${CMAKE_ROOT}" PATH) -get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SYSTEM_INCLUDE_PATH} - "${KDE4_INCLUDE_INSTALL_DIR}" - "${_CMAKE_INSTALL_DIR}/include" - "${CMAKE_INSTALL_PREFIX}/include" ) + "${KDE4_INCLUDE_INSTALL_DIR}") set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH} - "${KDE4_BIN_INSTALL_DIR}" - "${_CMAKE_INSTALL_DIR}/bin" - "${CMAKE_INSTALL_PREFIX}/bin" ) + "${KDE4_BIN_INSTALL_DIR}" ) set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} - "${KDE4_LIB_INSTALL_DIR}" - "${_CMAKE_INSTALL_DIR}/lib" - "${CMAKE_INSTALL_PREFIX}/lib" ) + "${KDE4_LIB_INSTALL_DIR}" ) # under Windows dlls may be also installed in bin/ if(WIN32) -- cgit v1.2.1 From 1cdfb0f2255e25ddaa68907bd490584572babac4 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Tue, 5 Aug 2008 08:09:55 +0000 Subject: Fix my earlier mistake, Debugfull should be enabled for anything greater 2.5 (i.e. 2.6.0 and onwards) svn path=/trunk/KDE/kdelibs/; revision=842305 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 482fb5e6..33204332 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -929,9 +929,9 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. @@ -1040,9 +1040,9 @@ endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. -- cgit v1.2.1 From 569a3323051e7ca448a3a368c299390ada2a33c3 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Tue, 5 Aug 2008 08:11:56 +0000 Subject: Backport r842305: Fix my earlier mistake, Debugfull should be enabled for anything greater 2.5 (i.e. 2.6.0 and onwards) svn path=/branches/KDE/4.1/kdelibs/; revision=842307 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 98b7d4d1..70ce60ac 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -946,9 +946,9 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. @@ -1057,9 +1057,9 @@ endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.6) + endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. -- cgit v1.2.1 From 0240a0e5dd4e6e546a8df6e8453d80d4686dca79 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 5 Aug 2008 19:32:56 +0000 Subject: -no need to test for > 2.5, since 2.6.0 is required now, so it is always > 2.5 Alex CCMAIL: apaku@gmx.de svn path=/trunk/KDE/kdelibs/; revision=842686 --- modules/FindKDE4Internal.cmake | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 33204332..4ea3d2e3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -929,9 +929,7 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) - set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) + set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. @@ -1040,9 +1038,7 @@ endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") - if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) - set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) + set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. -- cgit v1.2.1 From a5ee1f9b369e753b88143329a289e437f0a7f272 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 6 Aug 2008 15:10:23 +0000 Subject: one check less, now that cmake 2.6.0 is required svn path=/trunk/KDE/kdelibs/; revision=843151 --- modules/FindKDE4Internal.cmake | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4ea3d2e3..3ab33147 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -259,17 +259,15 @@ find_package(Qt4 REQUIRED) # automoc4 (from kdesupport) is now required, Alex find_package(Automoc4 REQUIRED) -if (CMAKE_MAJOR_VERSION GREATER 4) - # cmake 2.6.0 and automoc4 0.9.83 didn't add the necessary definitions for backends to moc calls - if (NOT AUTOMOC4_VERSION) - # the version macro was added for 0.9.84 - set(AUTOMOC4_VERSION "0.9.83") - endif (NOT AUTOMOC4_VERSION) - macro_ensure_version("0.9.84" "${AUTOMOC4_VERSION}" _automoc4_version_ok) - if (NOT _automoc4_version_ok) - message(FATAL_ERROR "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.84") - endif (NOT _automoc4_version_ok) -endif (CMAKE_MAJOR_VERSION GREATER 4) +# cmake 2.6.0 and automoc4 < 0.9.84 don't work right for -D flags +if (NOT AUTOMOC4_VERSION) + # the version macro was added for 0.9.84 + set(AUTOMOC4_VERSION "0.9.83") +endif (NOT AUTOMOC4_VERSION) +macro_ensure_version("0.9.84" "${AUTOMOC4_VERSION}" _automoc4_version_ok) +if (NOT _automoc4_version_ok) + message(FATAL_ERROR "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.84") +endif (NOT _automoc4_version_ok) # use automoc4 from kdesupport set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) -- cgit v1.2.1 From f52bf584332ce5904ed5f6b2c8a4a00cec695b01 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 6 Aug 2008 20:44:05 +0000 Subject: -initialize LIB_SUFFIX to 64 (or 32) if kdelibs have been installed to lib64 (or lib32) Does anybody think this might be a bad idea or cause problems under some weird circumstances ? Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=843268 --- modules/FindKDE4Internal.cmake | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3ab33147..6859f7dc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -534,7 +534,19 @@ endif(KDE4_ENABLE_FINAL) # info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") -set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) +# If we are building ! kdelibs, check where kdelibs are installed. +# If they are installed in a directory which contains "lib64", we default to "64" for LIB_SUFFIX, +# so the current project will by default also go into lib64. +# The same for lib32. Alex +set(_Init_LIB_SUFFIX "") +if ("${KDE4_LIB_DIR}" MATCHES lib64) + set(_Init_LIB_SUFFIX 64) +endif ("${KDE4_LIB_DIR}" MATCHES lib64) +if ("${KDE4_LIB_DIR}" MATCHES lib32) + set(_Init_LIB_SUFFIX 32) +endif ("${KDE4_LIB_DIR}" MATCHES lib32) + +set(LIB_SUFFIX "${_Init_LIB_SUFFIX}" CACHE STRING "Define suffix of directory name (32/64)" ) ########## the following are directories where stuff will be installed to ########### -- cgit v1.2.1 From feebc3c9de4b839403de3c96d86822eeaf6d4182 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 8 Aug 2008 20:50:36 +0000 Subject: limit KDEWIN_LIBRARIES to the library identified by the recent cmake build type - the new link interface of cmake 2.6.x does not support the optimized/debug library prefixes, using them results for example into kde4-config link error not finding 'optimized' library. svn path=/trunk/KDE/kdelibs/; revision=844126 --- modules/FindKDEWIN32.cmake | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 589b1531..79c66dc6 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -14,8 +14,6 @@ if (WIN32) - include(FindLibraryWithDebug) - if (NOT KDEWIN32_DIR) if(NOT KDEWIN_FOUND) find_package(KDEWIN) @@ -28,9 +26,15 @@ if (WIN32) # search for kdewin32 in the default install directory for applications (default of (n)make install) FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) - find_library_with_debug(KDEWIN32_LIBRARY - WIN32_DEBUG_POSTFIX d - NAMES kdewin32 + + if (CMAKE_BUILD_TYPE STREQUAL "Debug") + set (LIBRARY_NAME kdewin32d) + else (CMAKE_BUILD_TYPE STREQUAL "Debug") + set (LIBRARY_NAME kdewin32) + endif (CMAKE_BUILD_TYPE STREQUAL "Debug") + + find_library(KDEWIN32_LIBRARY + NAMES ${LIBRARY_NAME} PATHS ${_cmakeLibraryPathCmakeStyle} ${CMAKE_INSTALL_PREFIX}/lib -- cgit v1.2.1 From 2186f87998b7a1d8f1d87809eb8fb758f0843507 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 8 Aug 2008 20:53:38 +0000 Subject: updated doc svn path=/trunk/KDE/kdelibs/; revision=844128 --- modules/FindKDEWIN32.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 79c66dc6..d22a85a7 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -7,7 +7,7 @@ # KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 # Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2007, Ralf Habacker, +# Copyright (c) 2007-2008, Ralf Habacker, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -41,8 +41,6 @@ if (WIN32) NO_SYSTEM_ENVIRONMENT_PATH ) - # kdelibs/win/ has to be built before the rest of kdelibs/ - # eventually it will be moved out from kdelibs/ if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) set(KDEWIN32_FOUND TRUE) # add needed system libs -- cgit v1.2.1 From 648a847d1d40efe245ba8ca00f3dfc121053c79d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 9 Aug 2008 14:06:54 +0000 Subject: disable the reduced link interface for now for windows, since there people have problems since they are actually using the "debug" and "optimized" keywords for libraries, which leads to problems with cmake 2.6.0 and 2.6.1 when linking (it tries to link against -ldebug or -loptimized) Alex CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=844368 --- modules/FindKDE4Internal.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6859f7dc..d99c131d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -514,8 +514,13 @@ option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the h # # change from "LINK_INTERFACE_LIBRARIES" to "DISABLED_LINK_INTERFACE_LIBRARIES", # # which is a different (non-existing) target property, and so setting that property # # won't have an effect -# set(KDE4_DISABLE_PROPERTY_ "DISABLED_") -# + +# disable this for now for Windows, since there is an issue with the use of "debug" and +# "optimized" in the LINK_INTERFACE_LIBRARIES target property, Alex +if (WIN32) + set(KDE4_DISABLE_PROPERTY_ "DISABLED_") +endif(WIN32) + # option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) # # If enabled, make it empty, so the property will keep it's actual name. # # and the LINK_INTERFACE_LIBRARIES property will be set. -- cgit v1.2.1 From 6402cc6a7ad14a3c37408dc0624eac8d5095fd52 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 10 Aug 2008 09:13:30 +0000 Subject: use the new-style cmake 2.6 find_package() mode which automatically searches for the installed Automoc4Config.cmake in the appropriate directories. Alex svn path=/trunk/KDE/kdelibs/; revision=844694 --- modules/FindAutomoc4.cmake | 39 ++++++--------------------------------- 1 file changed, 6 insertions(+), 33 deletions(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index ad3ed05f..fad02bef 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -20,40 +20,13 @@ # check if we are inside KDESupport and automoc is enabled if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") # when building this project as part of kdesupport - set(AUTOMOC4_CONFIG_FILE "${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") + include("${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") # when building this project outside kdesupport - - # CMAKE_[SYSTEM_]PREFIX_PATH exists starting with cmake 2.6.0 - file(TO_CMAKE_PATH "$ENV{CMAKE_PREFIX_PATH}" _env_CMAKE_PREFIX_PATH) - file(TO_CMAKE_PATH "$ENV{CMAKE_LIBRARY_PATH}" _env_CMAKE_LIBRARY_PATH) - - find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake - PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 - PATHS ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} - ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} - ${CMAKE_INSTALL_PREFIX} - NO_DEFAULT_PATH ) + # use the new "config-mode" of cmake 2.6, which searches the installed Automoc4Config.cmake file + # see the man page for details + find_package(Automoc4 QUIET NO_MODULE) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") - -if(AUTOMOC4_CONFIG_FILE) - include(${AUTOMOC4_CONFIG_FILE}) - set(AUTOMOC4_FOUND TRUE) -else(AUTOMOC4_CONFIG_FILE) - set(AUTOMOC4_FOUND FALSE) -endif(AUTOMOC4_CONFIG_FILE) - -if (AUTOMOC4_FOUND) - if (NOT Automoc4_FIND_QUIETLY) - message(STATUS "Found Automoc4: ${AUTOMOC4_EXECUTABLE}") - endif (NOT Automoc4_FIND_QUIETLY) -else (AUTOMOC4_FOUND) - if (Automoc4_FIND_REQUIRED) - message(FATAL_ERROR "Did not find automoc4 (part of kdesupport).") - else (Automoc4_FIND_REQUIRED) - if (NOT Automoc4_FIND_QUIETLY) - message(STATUS "Did not find automoc4 (part of kdesupport).") - endif (NOT Automoc4_FIND_QUIETLY) - endif (Automoc4_FIND_REQUIRED) -endif (AUTOMOC4_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Automoc4 "Did not find automoc4 (part of kdesupport)." AUTOMOC4_EXECUTABLE) -- cgit v1.2.1 From 156e9c6ca12b571a26108d4ba4ca36ea740c685a Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 11 Aug 2008 13:41:10 +0000 Subject: more output in the error message when automoc4config.cmake isn't found. Too bad this doesn't apply to trunk anymore... svn path=/branches/KDE/4.1/kdelibs/; revision=845330 --- modules/FindAutomoc4.cmake | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index ad3ed05f..88a34ce1 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -28,11 +28,14 @@ else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") file(TO_CMAKE_PATH "$ENV{CMAKE_PREFIX_PATH}" _env_CMAKE_PREFIX_PATH) file(TO_CMAKE_PATH "$ENV{CMAKE_LIBRARY_PATH}" _env_CMAKE_LIBRARY_PATH) - find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake + set(AUTOMOC4_SEARCH_PATHS + ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} + ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} + ${CMAKE_INSTALL_PREFIX}) + + find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 - PATHS ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} - ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} - ${CMAKE_INSTALL_PREFIX} + PATHS ${AUTOMOC4_SEARCH_PATHS} NO_DEFAULT_PATH ) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") @@ -50,10 +53,10 @@ if (AUTOMOC4_FOUND) endif (NOT Automoc4_FIND_QUIETLY) else (AUTOMOC4_FOUND) if (Automoc4_FIND_REQUIRED) - message(FATAL_ERROR "Did not find automoc4 (part of kdesupport).") + message(FATAL_ERROR "Did not find Automoc4Config.cmake (part of kdesupport). Searched in ${AUTOMOC4_SEARCH_PATHS} using suffixes automoc4 lib/automoc4 lib64/automoc4.") else (Automoc4_FIND_REQUIRED) if (NOT Automoc4_FIND_QUIETLY) - message(STATUS "Did not find automoc4 (part of kdesupport).") + message(STATUS "Did not find Automoc4Config.cmake (part of kdesupport). Searched in ${AUTOMOC4_SEARCH_PATHS} using suffixes automoc4 lib/automoc4 lib64/automoc4.") endif (NOT Automoc4_FIND_QUIETLY) endif (Automoc4_FIND_REQUIRED) endif (AUTOMOC4_FOUND) -- cgit v1.2.1 From 989a8c1696b3f8a245ccafd3f90a805a1f283d37 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 11 Aug 2008 23:33:22 +0000 Subject: mostly revert patch from yesterday, since it doesn't seem to support 64bit yet Alex svn path=/trunk/KDE/kdelibs/; revision=845536 --- modules/FindAutomoc4.cmake | 39 ++++++++++++++++++++++++++++++--------- 1 file changed, 30 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index fad02bef..03b0b23d 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -17,16 +17,37 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -# check if we are inside KDESupport and automoc is enabled -if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") - # when building this project as part of kdesupport - include("${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") -else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") - # when building this project outside kdesupport - # use the new "config-mode" of cmake 2.6, which searches the installed Automoc4Config.cmake file - # see the man page for details - find_package(Automoc4 QUIET NO_MODULE) +# enable the code below again when cmake also searches in lib64/ (should be 2.6.2), Alex +# # check if we are inside KDESupport and automoc is enabled +# if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") +# # when building this project as part of kdesupport +# include("${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") +# else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") +# # when building this project outside kdesupport +# # use the new "config-mode" of cmake 2.6, which searches the installed Automoc4Config.cmake file +# # see the man page for details +# find_package(Automoc4 QUIET NO_MODULE) +# endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + +if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + # when building this project as part of kdesupport + set(AUTOMOC4_CONFIG_FILE "${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") +else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + # when building this project outside kdesupport + # CMAKE_[SYSTEM_]PREFIX_PATH exists starting with cmake 2.6.0 + file(TO_CMAKE_PATH "$ENV{CMAKE_PREFIX_PATH}" _env_CMAKE_PREFIX_PATH) + file(TO_CMAKE_PATH "$ENV{CMAKE_LIBRARY_PATH}" _env_CMAKE_LIBRARY_PATH) + find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake + PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 + PATHS ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} + ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} + ${CMAKE_INSTALL_PREFIX} + NO_DEFAULT_PATH ) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") +if(AUTOMOC4_CONFIG_FILE) + include(${AUTOMOC4_CONFIG_FILE}) +endif(AUTOMOC4_CONFIG_FILE) + include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Automoc4 "Did not find automoc4 (part of kdesupport)." AUTOMOC4_EXECUTABLE) -- cgit v1.2.1 From 29585aa3811a7ce9e195825f1f0eb3b7970ceb14 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 11 Aug 2008 23:37:06 +0000 Subject: potential_problems was just a remnant of early cmake porting FindPackageHandleStandardArgs.cmake now comes with cmake, so we don't need our pwn copy here anymore Alex svn path=/trunk/KDE/kdelibs/; revision=845538 --- modules/FindPackageHandleStandardArgs.cmake | 60 ----------------------------- modules/potential_problems | 2 - 2 files changed, 62 deletions(-) delete mode 100644 modules/FindPackageHandleStandardArgs.cmake delete mode 100644 modules/potential_problems (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake deleted file mode 100644 index 7f122edc..00000000 --- a/modules/FindPackageHandleStandardArgs.cmake +++ /dev/null @@ -1,60 +0,0 @@ -# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME (DEFAULT_MSG|"Custom failure message") VAR1 ... ) -# -# This macro is intended to be used in FindXXX.cmake modules files. -# It handles the REQUIRED and QUIET argument to FIND_PACKAGE() and -# it also sets the _FOUND variable. -# The package is found if all variables listed are TRUE. -# Example: -# -# FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) -# -# LibXml2 is considered to be found, if both LIBXML2_LIBRARIES and -# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE. -# If it is not found and REQUIRED was used, it fails with FATAL_ERROR, -# independent whether QUIET was used or not. -# -# If it is found, the location is reported using the VAR1 argument, so -# here a message "Found LibXml2: /usr/lib/libxml2.so" will be printed out. -# If the second argument is DEFAULT_MSG, the message in the failure case will -# be "Could NOT find LibXml2", if you don't like this message you can specify -# your own custom failure message there. - -MACRO(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) - - IF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") - IF (${_NAME}_FIND_REQUIRED) - SET(_FAIL_MESSAGE "Could not find REQUIRED package ${_NAME}") - ELSE (${_NAME}_FIND_REQUIRED) - SET(_FAIL_MESSAGE "Could not find OPTIONAL package ${_NAME}") - ENDIF (${_NAME}_FIND_REQUIRED) - ELSE("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") - SET(_FAIL_MESSAGE "${_FAIL_MSG}") - ENDIF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") - - STRING(TOUPPER ${_NAME} _NAME_UPPER) - - SET(${_NAME_UPPER}_FOUND TRUE) - IF(NOT ${_VAR1}) - SET(${_NAME_UPPER}_FOUND FALSE) - ENDIF(NOT ${_VAR1}) - - FOREACH(_CURRENT_VAR ${ARGN}) - IF(NOT ${_CURRENT_VAR}) - SET(${_NAME_UPPER}_FOUND FALSE) - ENDIF(NOT ${_CURRENT_VAR}) - ENDFOREACH(_CURRENT_VAR) - - IF (${_NAME_UPPER}_FOUND) - IF (NOT ${_NAME}_FIND_QUIETLY) - MESSAGE(STATUS "Found ${_NAME}: ${${_VAR1}}") - ENDIF (NOT ${_NAME}_FIND_QUIETLY) - ELSE (${_NAME_UPPER}_FOUND) - IF (${_NAME}_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "${_FAIL_MESSAGE}") - ELSE (${_NAME}_FIND_REQUIRED) - IF (NOT ${_NAME}_FIND_QUIETLY) - MESSAGE(STATUS "${_FAIL_MESSAGE}") - ENDIF (NOT ${_NAME}_FIND_QUIETLY) - ENDIF (${_NAME}_FIND_REQUIRED) - ENDIF (${_NAME_UPPER}_FOUND) -ENDMACRO(FIND_PACKAGE_HANDLE_STANDARD_ARGS) diff --git a/modules/potential_problems b/modules/potential_problems deleted file mode 100644 index b4558a21..00000000 --- a/modules/potential_problems +++ /dev/null @@ -1,2 +0,0 @@ -/CMakeLists.txt find_package(Perl REQUIRED) -KDE4_AUTOMOC: -DQ_WS_X11 -- cgit v1.2.1 From 261b3691e2c7ed049e40f71843ad3a44260de9dc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 12 Aug 2008 07:49:48 +0000 Subject: -add Carbon to the "link interface" of kdecore on Mac, this fixes linking libkopete (and shouldn't hurt, if it does, please let me know) -handle standard argument handling to FindCarbon.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=845637 --- modules/FindCarbon.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindCarbon.cmake b/modules/FindCarbon.cmake index de788f74..2b0d979e 100644 --- a/modules/FindCarbon.cmake +++ b/modules/FindCarbon.cmake @@ -8,11 +8,15 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -INCLUDE(CMakeFindFrameworks) +include(CMakeFindFrameworks) -CMAKE_FIND_FRAMEWORKS(Carbon) +cmake_find_frameworks(Carbon) if (Carbon_FRAMEWORKS) set(CARBON_LIBRARY "-framework Carbon" CACHE FILEPATH "Carbon framework" FORCE) set(CARBON_FOUND 1) endif (Carbon_FRAMEWORKS) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Carbon DEFAULT_MSG CARBON_LIBRARY) + -- cgit v1.2.1 From c362b85b1b3ae1cf41d8451b6397e81426368a4a Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 13 Aug 2008 15:44:20 +0000 Subject: Similar patch as in branch: more informative output when automoc4 isn't found. svn path=/trunk/KDE/kdelibs/; revision=846504 --- modules/FindAutomoc4.cmake | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index 03b0b23d..5cf75627 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -29,25 +29,28 @@ # find_package(Automoc4 QUIET NO_MODULE) # endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") -if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") - # when building this project as part of kdesupport +if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + # when building this project as part of kdesupport set(AUTOMOC4_CONFIG_FILE "${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") -else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") - # when building this project outside kdesupport - # CMAKE_[SYSTEM_]PREFIX_PATH exists starting with cmake 2.6.0 - file(TO_CMAKE_PATH "$ENV{CMAKE_PREFIX_PATH}" _env_CMAKE_PREFIX_PATH) - file(TO_CMAKE_PATH "$ENV{CMAKE_LIBRARY_PATH}" _env_CMAKE_LIBRARY_PATH) - find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake - PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 - PATHS ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} - ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} - ${CMAKE_INSTALL_PREFIX} - NO_DEFAULT_PATH ) +else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") + # when building this project outside kdesupport + # CMAKE_[SYSTEM_]PREFIX_PATH exists starting with cmake 2.6.0 + file(TO_CMAKE_PATH "$ENV{CMAKE_PREFIX_PATH}" _env_CMAKE_PREFIX_PATH) + file(TO_CMAKE_PATH "$ENV{CMAKE_LIBRARY_PATH}" _env_CMAKE_LIBRARY_PATH) + set(AUTOMOC4_SEARCH_PATHS + ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} + ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} + ${CMAKE_INSTALL_PREFIX} + ) + find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake + PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 + PATHS ${AUTOMOC4_SEARCH_PATHS} + NO_DEFAULT_PATH ) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") -if(AUTOMOC4_CONFIG_FILE) - include(${AUTOMOC4_CONFIG_FILE}) +if(AUTOMOC4_CONFIG_FILE) + include(${AUTOMOC4_CONFIG_FILE}) endif(AUTOMOC4_CONFIG_FILE) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Automoc4 "Did not find automoc4 (part of kdesupport)." AUTOMOC4_EXECUTABLE) +find_package_handle_standard_args(Automoc4 "Did not find automoc4 (part of kdesupport). Searched for Automoc4Config.cmake in ${AUTOMOC4_SEARCH_PATHS} using suffixes automoc4 lib/automoc4 lib64/automoc4." AUTOMOC4_EXECUTABLE) -- cgit v1.2.1 From b8079a1830eae2bda2eeadaf7f2ebf6cff173391 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 14 Aug 2008 20:28:45 +0000 Subject: add a switch to disable all optional dirs initially, e.g. for building only one of all the subdirs (requested by Saro) Alex CCMAIL: ps_ml@gmx.de svn path=/trunk/KDE/kdelibs/; revision=847137 --- modules/MacroOptionalAddSubdirectory.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/MacroOptionalAddSubdirectory.cmake b/modules/MacroOptionalAddSubdirectory.cmake index b0d565c2..9566bb4c 100644 --- a/modules/MacroOptionalAddSubdirectory.cmake +++ b/modules/MacroOptionalAddSubdirectory.cmake @@ -19,7 +19,11 @@ MACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY _dir ) GET_FILENAME_COMPONENT(_fullPath ${_dir} ABSOLUTE) IF(EXISTS ${_fullPath}) - OPTION(BUILD_${_dir} "Build directory ${_dir}" TRUE) + SET(_DEFAULT_OPTION_VALUE TRUE) + IF(DISABLE_ALL_OPTIONAL_SUBDIRS) + SET(_DEFAULT_OPTION_VALUE FALSE) + ENDIF(DISABLE_ALL_OPTIONAL_SUBDIRS) + OPTION(BUILD_${_dir} "Build directory ${_dir}" ${_DEFAULT_OPTION_VALUE}) IF(BUILD_${_dir}) ADD_SUBDIRECTORY(${_dir}) ENDIF(BUILD_${_dir}) -- cgit v1.2.1 From bd92489875467b8bc671100678b7dda86e2374ee Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 14 Aug 2008 20:35:47 +0000 Subject: fix comment in the generated file, it was not correct anymore, the option was removed two weeks ago or so Alex svn path=/trunk/KDE/kdelibs/; revision=847138 --- modules/KDE4Macros.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d4dec0d2..7c57e6a4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1119,9 +1119,7 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) # Alex file(${_append_or_write} "${_filename}" "# The following variables have been created by kde4_export_library_dependencies() -# The contents have been determined from the LINK_INTERFACE_LIBRARIES target property of the respective libraries. -# The option KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT has been enabled to create the file this way. -# You can modify KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT using \"make edit_cache\"\n\n") +# The contents have been determined from the LINK_INTERFACE_LIBRARIES target property of the respective libraries.\n\n") get_cmake_property(allVars VARIABLES) set(allLibs "") foreach(currentVar ${allVars}) -- cgit v1.2.1 From 605c7c4a491fa6014e005d00e6a1d02a63aa2d51 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 14 Aug 2008 22:13:31 +0000 Subject: -add some documentation Alex svn path=/trunk/KDE/kdelibs/; revision=847189 --- modules/MacroEnsureOutOfSourceBuild.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/MacroEnsureOutOfSourceBuild.cmake b/modules/MacroEnsureOutOfSourceBuild.cmake index ef4d525f..cb26e0c3 100644 --- a/modules/MacroEnsureOutOfSourceBuild.cmake +++ b/modules/MacroEnsureOutOfSourceBuild.cmake @@ -1,5 +1,9 @@ # - MACRO_ENSURE_OUT_OF_SOURCE_BUILD() # MACRO_ENSURE_OUT_OF_SOURCE_BUILD() +# Call this macro in your project if you want to enforce out-of-source builds. +# If an in-source build is detected, it will abort with the given error message. +# This macro works in any of the CMakeLists.txt of your project, but the recommended +# location to call this is close to the beginning of the top level CMakeLists.txt # Copyright (c) 2006, Alexander Neundorf, # -- cgit v1.2.1 From 29d21f3abbfc6b6e9f9c44ac699443fe880fba7d Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Fri, 15 Aug 2008 23:50:11 +0000 Subject: Allow to use a minimum version with cmake's find_package() call, like find_package(KDE4 4.2.0 REQUIRED). Include some documentation for it. svn path=/trunk/KDE/kdelibs/; revision=847677 --- modules/FindKDE4Internal.cmake | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d99c131d..f3a1d93c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -216,6 +216,12 @@ # without going all over the place, but still produce better performance. # It's also important to note that gcc cannot detect all warning conditions # unless the optimiser is active. +# +# This module allows to depend on a particular minimum version of kdelibs. +# To acomplish that one should use the apropriate cmake syntax for +# find_package. For example to depend on kdelibs >= 4.1.0 one should use +# +# find_package(KDE4 4.1.0 REQUIRED) # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally @@ -352,7 +358,25 @@ else (_kdeBootStrapping) # we need at least this version: if (NOT KDE_MIN_VERSION) - set(KDE_MIN_VERSION "3.9.0") + if (KDE4_FIND_VERSION_MAJOR) + message("${KDE4_FIND_VERSION_MAJOR}") + if (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) + if (KDE4_FIND_VERSION_MINOR) + set(KDE_MIN_VERSION "4.${KDE4_FIND_VERSION_MINOR}") + else (KDE4_FIND_VERSION_MINOR) + set(KDE_MIN_VERSION "4.0") + endif (KDE4_FIND_VERSION_MINOR) + if (KDE4_FIND_VERSION_PATCH) + set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.${KDE4_FIND_VERSION_PATCH}") + else (KDE4_FIND_VERSION_PATCH) + set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.0") + endif (KDE4_FIND_VERSION_PATCH) + else (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) + message(FATAL_ERROR "FindKDE4 can only be used with KDE 4") + endif (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) + else (KDE4_FIND_VERSION_MAJOR) + set (KDE_MIN_VERSION "4.0.0") + endif (KDE4_FIND_VERSION_MAJOR) endif (NOT KDE_MIN_VERSION) #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") -- cgit v1.2.1 From 8fcd46e47bcdcc5722fbbd98e3c0d86088e086a1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 16 Aug 2008 11:41:12 +0000 Subject: partly sync with cmake: /usr/pkg is searched anyway, initialize the _LIBRARIES and INCLUDE_DIR variables Alex svn path=/trunk/KDE/kdelibs/; revision=847811 --- modules/FindX11.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 27702886..2d6d24e9 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -48,7 +48,6 @@ IF (UNIX) SET(CMAKE_FIND_FRAMEWORK NEVER) SET(X11_INC_SEARCH_PATH /usr/pkg/xorg/include - /usr/pkg/include /usr/X11R6/include /usr/X11R7/include /usr/include/X11 @@ -59,7 +58,6 @@ IF (UNIX) SET(X11_LIB_SEARCH_PATH /usr/pkg/xorg/lib - /usr/pkg/lib /usr/X11R6/lib /usr/X11R7/lib /usr/openwin/lib @@ -134,6 +132,7 @@ IF (UNIX) GET_FILENAME_COMPONENT(X11_LIBRARY_DIR ${X11_X11_LIB} PATH) ENDIF(X11_X11_LIB) + SET(X11_INCLUDE_DIR) # start with empty list IF(X11_X11_INCLUDE_PATH) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH}) ENDIF(X11_X11_INCLUDE_PATH) @@ -152,6 +151,7 @@ IF (UNIX) SET(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH}) ENDIF(X11_Xshape_INCLUDE_PATH) + SET(X11_LIBRARIES) # start with empty list IF(X11_X11_LIB) SET(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB}) ENDIF(X11_X11_LIB) -- cgit v1.2.1 From 0abebd1516eaf9a77b9a75e8a8937ed82d8df38e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 16 Aug 2008 11:46:27 +0000 Subject: - FindLibXslt.cmake: proper naming for the variable for the executable - FindTIFF.cmake: minor cosmetics (sync with cmake) *PkgConfig: not required anymore now that we require cmake 2.6.0 Alex svn path=/trunk/KDE/kdelibs/; revision=847813 --- modules/FindLibXslt.cmake | 8 +- modules/FindPkgConfig.cmake | 360 -------------------------------------------- modules/FindTIFF.cmake | 4 +- modules/UsePkgConfig.cmake | 61 -------- 4 files changed, 7 insertions(+), 426 deletions(-) delete mode 100644 modules/FindPkgConfig.cmake delete mode 100644 modules/UsePkgConfig.cmake (limited to 'modules') diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index f84f4c26..f951693f 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -5,7 +5,7 @@ # LIBXSLT_INCLUDE_DIR - the LibXslt include directory # LIBXSLT_LIBRARIES - Link these to LibXslt # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt -# XSLTPROC_EXECUTABLE - path to the xsltproc tool +# LIBXSLT_XSLTPROC_EXECUTABLE - path to the xsltproc tool # Copyright (c) 2006, Alexander Neundorf, # @@ -46,7 +46,9 @@ ELSE (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) SET(LIBXSLT_FOUND FALSE) ENDIF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) -FIND_PROGRAM(XSLTPROC_EXECUTABLE xsltproc) +FIND_PROGRAM(LIBEXSLT_XSLTPROC_EXECUTABLE xsltproc) +# For compatibility with FindLibXslt.cmake from KDE 4.[01].x +SET(XSLTPROC_EXECUTABLE ${LIBEXSLT_XSLTPROC_EXECUTABLE}) IF (LIBXSLT_FOUND) IF (NOT LibXslt_FIND_QUIETLY) @@ -58,5 +60,5 @@ ELSE (LIBXSLT_FOUND) ENDIF (LibXslt_FIND_REQUIRED) ENDIF (LIBXSLT_FOUND) -MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES LIBEXSLT_LIBRARIES XSLTPROC_EXECUTABLE) +MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES LIBEXSLT_LIBRARIES LIBEXSLT_XSLTPROC_EXECUTABLE) diff --git a/modules/FindPkgConfig.cmake b/modules/FindPkgConfig.cmake deleted file mode 100644 index 34ef039a..00000000 --- a/modules/FindPkgConfig.cmake +++ /dev/null @@ -1,360 +0,0 @@ -# - a pkg-config module for CMake -# -# Usage: -# pkg_check_modules( [REQUIRED] []*) -# checks for all the given modules -# -# pkg_search_module( [REQUIRED] []*) -# checks for given modules and uses the first working one -# -# When the 'REQUIRED' argument was set, macros will fail with an error -# when module(s) could not be found -# -# It sets the following variables: -# PKG_CONFIG_FOUND ... true if pkg-config works on the system -# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program -# _FOUND ... set to 1 if module(s) exist -# -# For the following variables two sets of values exist; first one is the -# common one and has the given PREFIX. The second set contains flags -# which are given out when pkgconfig was called with the '--static' -# option. -# _LIBRARIES ... only the libraries (w/o the '-l') -# _LIBRARY_DIRS ... the paths of the libraries (w/o the '-L') -# _LDFLAGS ... all required linker flags -# _LDFLAGS_OTHERS ... all other linker flags -# _INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I') -# _CFLAGS ... all required cflags -# _CFLAGS_OTHERS ... the other compiler flags -# -# = for common case -# = _STATIC for static linking -# -# There are some special variables whose prefix depends on the count -# of given modules. When there is only one module, stays -# unchanged. When there are multiple modules, the prefix will be -# changed to _: -# _VERSION ... version of the module -# _PREFIX ... prefix-directory of the module -# _INCLUDEDIR ... include-dir of the module -# _LIBDIR ... lib-dir of the module -# -# = when |MODULES| == 1, else -# = _ -# -# A parameter can have the following formats: -# {MODNAME} ... matches any version -# {MODNAME}>={VERSION} ... at least version is required -# {MODNAME}={VERSION} ... exactly version is required -# {MODNAME}<={VERSION} ... modules must not be newer than -# -# Examples -# pkg_check_modules (GLIB2 glib-2.0) -# -# pkg_check_modules (GLIB2 glib-2.0>=2.10) -# requires at least version 2.10 of glib2 and defines e.g. -# GLIB2_VERSION=2.10.3 -# -# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0) -# requires both glib2 and gtk2, and defines e.g. -# FOO_glib-2.0_VERSION=2.10.3 -# FOO_gtk+-2.0_VERSION=2.8.20 -# -# pkg_check_modules (XRENDER REQUIRED xrender) -# defines e.g.: -# XRENDER_LIBRARIES=Xrender;X11 -# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp -# -# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2) - - -# Copyright (C) 2006 Enrico Scholz -# -# Redistribution and use, with or without modification, are permitted -# provided that the following conditions are met: -# -# 1. Redistributions must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# 2. The name of the author may not be used to endorse or promote -# products derived from this software without specific prior -# written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE -# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER -# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -### Common stuff #### -set(PKG_CONFIG_VERSION 1) -set(PKG_CONFIG_FOUND 0) - -find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable") -mark_as_advanced(PKG_CONFIG_EXECUTABLE) - -if(PKG_CONFIG_EXECUTABLE) - set(PKG_CONFIG_FOUND 1) -endif(PKG_CONFIG_EXECUTABLE) - - -# Unsets the given variables -macro(_pkgconfig_unset var) - set(${var} "" CACHE INTERNAL "") -endmacro(_pkgconfig_unset) - -macro(_pkgconfig_set var value) - set(${var} ${value} CACHE INTERNAL "") -endmacro(_pkgconfig_set) - -# Invokes pkgconfig, cleans up the result and sets variables -macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp) - set(_pkgconfig_invoke_result) - - execute_process( - COMMAND ${PKG_CONFIG_EXECUTABLE} ${ARGN} ${_pkglist} - OUTPUT_VARIABLE _pkgconfig_invoke_result - RESULT_VARIABLE _pkgconfig_failed) - - if (_pkgconfig_failed) - set(_pkgconfig_${_varname} "") - _pkgconfig_unset(${_prefix}_${_varname}) - else(_pkgconfig_failed) - string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") - string(REGEX REPLACE " +$" "" _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") - - if (NOT ${_regexp} STREQUAL "") - string(REGEX REPLACE "${_regexp}" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") - endif(NOT ${_regexp} STREQUAL "") - - separate_arguments(_pkgconfig_invoke_result) - - #message(STATUS " ${_varname} ... ${_pkgconfig_invoke_result}") - set(_pkgconfig_${_varname} ${_pkgconfig_invoke_result}) - _pkgconfig_set(${_prefix}_${_varname} "${_pkgconfig_invoke_result}") - endif(_pkgconfig_failed) -endmacro(_pkgconfig_invoke) - -# Invokes pkgconfig two times; once without '--static' and once with -# '--static' -macro(_pkgconfig_invoke_dyn _pkglist _prefix _varname cleanup_regexp) - _pkgconfig_invoke("${_pkglist}" ${_prefix} ${_varname} "${cleanup_regexp}" ${ARGN}) - _pkgconfig_invoke("${_pkglist}" ${_prefix} STATIC_${_varname} "${cleanup_regexp}" --static ${ARGN}) -endmacro(_pkgconfig_invoke_dyn) - -# Splits given arguments into options and a package list -macro(_pkgconfig_parse_options _result _is_req) - set(${_is_req} 0) - - foreach(_pkg ${ARGN}) - if (_pkg STREQUAL "REQUIRED") - set(${_is_req} 1) - endif (_pkg STREQUAL "REQUIRED") - endforeach(_pkg ${ARGN}) - - set(${_result} ${ARGN}) - list(REMOVE_ITEM ${_result} "REQUIRED") -endmacro(_pkgconfig_parse_options) - -### -macro(_pkg_check_modules_internal _is_required _is_silent _prefix) - _pkgconfig_unset(${_prefix}_FOUND) - _pkgconfig_unset(${_prefix}_VERSION) - _pkgconfig_unset(${_prefix}_PREFIX) - _pkgconfig_unset(${_prefix}_INCLUDEDIR) - _pkgconfig_unset(${_prefix}_LIBDIR) - _pkgconfig_unset(${_prefix}_LIBS) - _pkgconfig_unset(${_prefix}_LIBS_L) - _pkgconfig_unset(${_prefix}_LIBS_PATHS) - _pkgconfig_unset(${_prefix}_LIBS_OTHER) - _pkgconfig_unset(${_prefix}_CFLAGS) - _pkgconfig_unset(${_prefix}_CFLAGS_I) - _pkgconfig_unset(${_prefix}_CFLAGS_OTHER) - _pkgconfig_unset(${_prefix}_STATIC_LIBDIR) - _pkgconfig_unset(${_prefix}_STATIC_LIBS) - _pkgconfig_unset(${_prefix}_STATIC_LIBS_L) - _pkgconfig_unset(${_prefix}_STATIC_LIBS_PATHS) - _pkgconfig_unset(${_prefix}_STATIC_LIBS_OTHER) - _pkgconfig_unset(${_prefix}_STATIC_CFLAGS) - _pkgconfig_unset(${_prefix}_STATIC_CFLAGS_I) - _pkgconfig_unset(${_prefix}_STATIC_CFLAGS_OTHER) - - # create a better addressable variable of the modules and calculate its size - set(_pkg_check_modules_list ${ARGN}) - list(LENGTH _pkg_check_modules_list _pkg_check_modules_cnt) - - if(PKG_CONFIG_EXECUTABLE) - # give out status message telling checked module - if (NOT ${_is_silent}) - if (_pkg_check_modules_cnt EQUAL 1) - message(STATUS "checking for module '${_pkg_check_modules_list}'") - else(_pkg_check_modules_cnt EQUAL 1) - message(STATUS "checking for modules '${_pkg_check_modules_list}'") - endif(_pkg_check_modules_cnt EQUAL 1) - endif(NOT ${_is_silent}) - - set(_pkg_check_modules_packages) - set(_pkg_check_modules_failed) - - # iterate through module list and check whether they exist and match the required version - foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list}) - set(_pkg_check_modules_exist_query) - - # check whether version is given - if (_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") - string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\1" _pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}") - string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\2" _pkg_check_modules_pkg_op "${_pkg_check_modules_pkg}") - string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\3" _pkg_check_modules_pkg_ver "${_pkg_check_modules_pkg}") - else(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") - set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}") - set(_pkg_check_modules_pkg_op) - set(_pkg_check_modules_pkg_ver) - endif(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") - - # handle the operands - if (_pkg_check_modules_pkg_op STREQUAL ">=") - list(APPEND _pkg_check_modules_exist_query --atleast-version) - endif(_pkg_check_modules_pkg_op STREQUAL ">=") - - if (_pkg_check_modules_pkg_op STREQUAL "=") - list(APPEND _pkg_check_modules_exist_query --exact-version) - endif(_pkg_check_modules_pkg_op STREQUAL "=") - - if (_pkg_check_modules_pkg_op STREQUAL "<=") - list(APPEND _pkg_check_modules_exist_query --max-version) - endif(_pkg_check_modules_pkg_op STREQUAL "<=") - - # create the final query which is of the format: - # * --atleast-version - # * --exact-version - # * --max-version - # * --exists - if (_pkg_check_modules_pkg_op) - list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}") - else(_pkg_check_modules_pkg_op) - list(APPEND _pkg_check_modules_exist_query --exists) - endif(_pkg_check_modules_pkg_op) - - _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION) - _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX) - _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR) - _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR) - - list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}") - list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}") - - # execute the query - execute_process( - COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query} - RESULT_VARIABLE _pkgconfig_retval) - - # evaluate result and tell failures - if (_pkgconfig_retval) - if(NOT ${_is_silent}) - message(STATUS " package '${_pkg_check_modules_pkg}' not found") - endif(NOT ${_is_silent}) - - set(_pkg_check_modules_failed 1) - endif(_pkgconfig_retval) - endforeach(_pkg_check_modules_pkg) - - if(_pkg_check_modules_failed) - # fail when requested - if (${_is_required}) - message(SEND_ERROR "A required package was not found") - endif (${_is_required}) - else(_pkg_check_modules_failed) - # when we are here, we checked whether requested modules - # exist. Now, go through them and set variables - - _pkgconfig_set(${_prefix}_FOUND 1) - list(LENGTH _pkg_check_modules_packages pkg_count) - - # iterate through all modules again and set individual variables - foreach (_pkg_check_modules_pkg ${_pkg_check_modules_packages}) - # handle case when there is only one package required - if (pkg_count EQUAL 1) - set(_pkg_check_prefix "${_prefix}") - else(pkg_count EQUAL 1) - set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}") - endif(pkg_count EQUAL 1) - - _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion ) - _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" PREFIX "" --variable=prefix ) - _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir ) - _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" LIBDIR "" --variable=libdir ) - - message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}") - endforeach(_pkg_check_modules_pkg) - - # set variables which are combined for multiple modules - _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l ) - _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARY_DIRS "(^| )-L" --libs-only-L ) - _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS "" --libs ) - _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS_OTHER "" --libs-only-other ) - - _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I ) - _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags ) - _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other ) - endif(_pkg_check_modules_failed) - else(PKG_CONFIG_EXECUTABLE) - if (${_is_required}) - message(SEND_ERROR "pkg-config tool not found") - endif (${_is_required}) - endif(PKG_CONFIG_EXECUTABLE) -endmacro(_pkg_check_modules_internal) - -### -### User visible macros start here -### - -### -macro(pkg_check_modules _prefix _module0) - # check cached value - if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) - _pkgconfig_parse_options (_pkg_modules _pkg_is_required "${_module0}" ${ARGN}) - _pkg_check_modules_internal("${_pkg_is_required}" 0 "${_prefix}" ${_pkg_modules}) - - _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION}) - endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) -endmacro(pkg_check_modules) - -### -macro(pkg_search_module _prefix _module0) - # check cached value - if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) - set(_pkg_modules_found 0) - _pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required "${_module0}" ${ARGN}) - - message(STATUS "checking for one of the modules '${_pkg_modules_alt}'") - - # iterate through all modules and stop at the first working one. - foreach(_pkg_alt ${_pkg_modules_alt}) - if(NOT _pkg_modules_found) - _pkg_check_modules_internal(0 1 "${_prefix}" "${_pkg_alt}") - endif(NOT _pkg_modules_found) - - if (${_prefix}_FOUND) - set(_pkg_modules_found 1) - endif(${_prefix}_FOUND) - endforeach(_pkg_alt) - - if (NOT ${_prefix}_FOUND) - if(${_pkg_is_required}) - message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found") - endif(${_pkg_is_required}) - endif(NOT ${_prefix}_FOUND) - - _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION}) - endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION}) -endmacro(pkg_search_module) - -### Local Variables: -### mode: cmake -### End: diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 24b75b9f..829a3485 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -3,8 +3,8 @@ # This module defines # TIFF_INCLUDE_DIR, where to find tiff.h, etc. # TIFF_LIBRARIES, libraries to link against to use TIFF. -# TIFF_FOUND, If false, do NOT try to use TIFF. -# also defined, but NOT for general use are +# TIFF_FOUND, If false, do not try to use TIFF. +# also defined, but not for general use are # TIFF_LIBRARY, where to find the TIFF library. # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. diff --git a/modules/UsePkgConfig.cmake b/modules/UsePkgConfig.cmake deleted file mode 100644 index 8d6e0d34..00000000 --- a/modules/UsePkgConfig.cmake +++ /dev/null @@ -1,61 +0,0 @@ - -# THIS IS A SLIGHTLY ENHANCED COPY OVER THE ONE OF CMAKE 2.4.7. DO NOT MODIFY IT FURTHER - -# - pkg-config module for CMake -# -# Defines the following macros: -# -# PKGCONFIG(package includedir libdir linkflags cflags) -# -# Calling PKGCONFIG will fill the desired information into the 4 given arguments, -# e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS) -# if pkg-config was NOT found or the specified software package doesn't exist, the -# variable will be empty when the function returns, otherwise they will contain the respective information -# - -FIND_PROGRAM(PKGCONFIG_EXECUTABLE NAMES pkg-config PATHS /usr/local/bin ) - -MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) -# reset the variables at the beginning - SET(${_include_DIR}) - SET(${_link_DIR}) - SET(${_link_FLAGS}) - SET(${_cflags}) - - # if pkg-config has been found - IF(PKGCONFIG_EXECUTABLE) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - - # and if the package of interest also exists for pkg-config, then get the information - IF(NOT _return_VALUE) - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir - OUTPUT_VARIABLE ${_include_DIR} ) - string(REGEX REPLACE "[\r\n]" " " ${_include_DIR} "${${_include_DIR}}") - - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=libdir - OUTPUT_VARIABLE ${_link_DIR} ) - string(REGEX REPLACE "[\r\n]" " " ${_link_DIR} "${${_link_DIR}}") - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --libs - OUTPUT_VARIABLE ${_link_FLAGS} ) - string(REGEX REPLACE "[\r\n]" " " ${_link_FLAGS} "${${_link_FLAGS}}") - - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --cflags - OUTPUT_VARIABLE ${_cflags} ) - string(REGEX REPLACE "[\r\n]" " " ${_cflags} "${${_cflags}}") - - ELSE( NOT _return_VALUE) - - MESSAGE(STATUS "KDE CMake PKGCONFIG macro indicates that ${_package} is not installed on your computer.") - MESSAGE(STATUS "Install the package which contains ${_package}.pc if you want to support this feature.") - - ENDIF(NOT _return_VALUE) - - ENDIF(PKGCONFIG_EXECUTABLE) - -ENDMACRO(PKGCONFIG _include_DIR _link_DIR _link_FLAGS _cflags) - -MARK_AS_ADVANCED(PKGCONFIG_EXECUTABLE) -- cgit v1.2.1 From fc0b8c3e07dd46a910ce22b53f0dd1f73cb2bd64 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 16 Aug 2008 12:07:00 +0000 Subject: fix typo Alex svn path=/trunk/KDE/kdelibs/; revision=847820 --- modules/FindLibXslt.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index f951693f..41443d07 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -46,9 +46,9 @@ ELSE (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) SET(LIBXSLT_FOUND FALSE) ENDIF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) -FIND_PROGRAM(LIBEXSLT_XSLTPROC_EXECUTABLE xsltproc) +FIND_PROGRAM(LIBXSLT_XSLTPROC_EXECUTABLE xsltproc) # For compatibility with FindLibXslt.cmake from KDE 4.[01].x -SET(XSLTPROC_EXECUTABLE ${LIBEXSLT_XSLTPROC_EXECUTABLE}) +SET(XSLTPROC_EXECUTABLE ${LIBXSLT_XSLTPROC_EXECUTABLE}) IF (LIBXSLT_FOUND) IF (NOT LibXslt_FIND_QUIETLY) @@ -60,5 +60,5 @@ ELSE (LIBXSLT_FOUND) ENDIF (LibXslt_FIND_REQUIRED) ENDIF (LIBXSLT_FOUND) -MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES LIBEXSLT_LIBRARIES LIBEXSLT_XSLTPROC_EXECUTABLE) +MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES LIBEXSLT_LIBRARIES LIBXSLT_XSLTPROC_EXECUTABLE) -- cgit v1.2.1 From 5a6db306b15b36e42649cee6543217dfe766ddff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Sat, 16 Aug 2008 12:56:38 +0000 Subject: *make Eigen2 install to prefix/include/eigen2/Eigen *Add FindEigen2.cmake module in kdelibs svn path=/trunk/KDE/kdelibs/; revision=847916 --- modules/FindEigen2.cmake | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 modules/FindEigen2.cmake (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake new file mode 100644 index 00000000..924c69a0 --- /dev/null +++ b/modules/FindEigen2.cmake @@ -0,0 +1,30 @@ +# - Try to find Eigen2 lib +# Once done this will define +# +# EIGEN2_FOUND - system has eigen lib +# EIGEN2_INCLUDE_DIR - the eigen include directory + +# Copyright (c) 2006, 2007 Montel Laurent, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (EIGEN2_INCLUDE_DIR) + + # in cache already + set(EIGEN2_FOUND TRUE) + +else (EIGEN2_INCLUDE_DIR) + +find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core + PATHS + ${INCLUDE_INSTALL_DIR}/eigen2 + ) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Eigen2 DEFAULT_MSG EIGEN2_INCLUDE_DIR ) + + +mark_as_advanced(EIGEN2_INCLUDE_DIR) + +endif(EIGEN2_INCLUDE_DIR) + -- cgit v1.2.1 From c8fdd34370f5f0929cb1e531641ed93dbc7e5ae8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 16 Aug 2008 15:26:55 +0000 Subject: don't override BUILD_ with the DISABLE_ALL master switch Alex svn path=/trunk/KDE/kdelibs/; revision=848008 --- modules/MacroOptionalAddSubdirectory.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalAddSubdirectory.cmake b/modules/MacroOptionalAddSubdirectory.cmake index 9566bb4c..32e25141 100644 --- a/modules/MacroOptionalAddSubdirectory.cmake +++ b/modules/MacroOptionalAddSubdirectory.cmake @@ -20,9 +20,9 @@ MACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY _dir ) GET_FILENAME_COMPONENT(_fullPath ${_dir} ABSOLUTE) IF(EXISTS ${_fullPath}) SET(_DEFAULT_OPTION_VALUE TRUE) - IF(DISABLE_ALL_OPTIONAL_SUBDIRS) + IF(DISABLE_ALL_OPTIONAL_SUBDIRS AND NOT DEFINED BUILD_${_dir}) SET(_DEFAULT_OPTION_VALUE FALSE) - ENDIF(DISABLE_ALL_OPTIONAL_SUBDIRS) + ENDIF(DISABLE_ALL_OPTIONAL_SUBDIRS AND NOT DEFINED BUILD_${_dir}) OPTION(BUILD_${_dir} "Build directory ${_dir}" ${_DEFAULT_OPTION_VALUE}) IF(BUILD_${_dir}) ADD_SUBDIRECTORY(${_dir}) -- cgit v1.2.1 From 25a8e8e0ae2e029817589e000869c0fdfc6e10f8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 16 Aug 2008 23:20:20 +0000 Subject: FindQt4.cmake: fail if Qt3 has already been found FATAL_ERROR also if called QUIETLY FindKDE4Internal.cmake: only abort with FATAL_ERROR if we are REQUIRED, otherwise just RETURN() and don't set KDE4_FOUND Alex svn path=/trunk/KDE/kdelibs/; revision=848106 --- modules/FindKDE4Internal.cmake | 53 +++++++++++++++++++++++++++++++++++------- modules/FindQt4.cmake | 33 ++++++++++++++++++-------- 2 files changed, 68 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index f3a1d93c..76e1648b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -258,12 +258,21 @@ if(NOT KDE4_FOUND) include (MacroEnsureVersion) +# we may only search for other packages with "REQUIRED" if we are required ourselves +if(KDE4_FIND_REQUIRED) + set(_REQ_STRING_KDE4 "REQUIRED") + set(_REQ_STRING_KDE4_MESSAGE "FATAL_ERROR") +else(KDE4_FIND_REQUIRED) + set(_REQ_STRING_KDE4 ) + set(_REQ_STRING_KDE4_MESSAGE "STATUS") +endif(KDE4_FIND_REQUIRED) + set(QT_MIN_VERSION "4.4.0") #this line includes FindQt4.cmake, which searches the Qt library and headers -find_package(Qt4 REQUIRED) +find_package(Qt4 ${_REQ_STRING_KDE4}) # automoc4 (from kdesupport) is now required, Alex -find_package(Automoc4 REQUIRED) +find_package(Automoc4 ${_REQ_STRING_KDE4}) # cmake 2.6.0 and automoc4 < 0.9.84 don't work right for -D flags if (NOT AUTOMOC4_VERSION) @@ -271,15 +280,43 @@ if (NOT AUTOMOC4_VERSION) set(AUTOMOC4_VERSION "0.9.83") endif (NOT AUTOMOC4_VERSION) macro_ensure_version("0.9.84" "${AUTOMOC4_VERSION}" _automoc4_version_ok) -if (NOT _automoc4_version_ok) - message(FATAL_ERROR "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.84") -endif (NOT _automoc4_version_ok) -# use automoc4 from kdesupport +# for compatibility with KDE 4.0.x set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) -# Perl is required for building KDE software, -find_package(Perl REQUIRED) +# Perl is required for building KDE software +find_package(Perl ${_REQ_STRING_KDE4}) + +# Check that we really found everything. +# If KDE4 was searched with REQUIRED, we error out with FATAL_ERROR if something wasn't found +# already above in the other FIND_PACKAGE() calls. +# If KDE4 was searched without REQUIRED and something in the FIND_PACKAGE() calls above wasn't found, +# then we get here and must check that everything has actually been found. If something is missing, +# we must not fail with FATAL_ERROR, but only not set KDE4_FOUND. +if(NOT PERL_FOUND) + message(STATUS "KDE4 not found, because Perl not found") + return() +endif(NOT PERL_FOUND) + +if(NOT QT4_FOUND) + message(STATUS "KDE4 not found, because Qt4 not found") + return() +endif(NOT QT4_FOUND) + +if(NOT AUTOMOC4_FOUND OR NOT _automoc4_version_ok) + if(NOT AUTOMOC4_FOUND) + message(${_REQ_STRING_KDE4_MESSAGE} "KDE4 not found, because Automoc4 not found.") + return() + else(NOT AUTOMOC4_FOUND) + if(NOT _automoc4_version_ok) + message(${_REQ_STRING_KDE4_MESSAGE} "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.84") + return() + endif(NOT _automoc4_version_ok) + endif(NOT AUTOMOC4_FOUND) +endif(NOT AUTOMOC4_FOUND OR NOT _automoc4_version_ok) + + +# now we are sure we have everything we need include (MacroLibrary) include (CheckCXXCompilerFlag) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 55c44dfd..8952807d 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -259,10 +259,24 @@ # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. -if (QT4_QMAKE_FOUND) - # Check already done in this cmake run, nothing more to do -else (QT4_QMAKE_FOUND) +# If Qt3 has already been found, fail. +IF(QT_QT_LIBRARY) + IF(Qt4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Qt3 and Qt4 cannot be used together in one project.") + ELSE(Qt4_FIND_REQUIRED) + IF(NOT Qt4_FIND_QUIETLY) + MESSAGE( STATUS "Qt3 and Qt4 cannot be used together in one project.") + ENDIF(NOT Qt4_FIND_QUIETLY) + RETURN() + ENDIF(Qt4_FIND_REQUIRED) +ENDIF(QT_QTCORE_LIBRARY) + + +IF (QT4_QMAKE_FOUND) + # Check already done in this cmake run, nothing more to do + RETURN() +ENDIF (QT4_QMAKE_FOUND) # check that QT_NO_DEBUG is defined for release configurations MACRO(QT_CHECK_FLAG_EXISTS FLAG VAR DOC) @@ -501,9 +515,9 @@ IF (QT4_QMAKE_FOUND) ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) IF( NOT QT_INCLUDE_DIR) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + IF(Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF(Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) ############################################# @@ -925,9 +939,9 @@ IF (QT4_QMAKE_FOUND) ENDIF (QT_USE_FRAMEWORKS) IF( NOT QT_QTCORE_LIBRARY ) - IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + IF(Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log for more details.") - ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED) + ENDIF(Qt4_FIND_REQUIRED) ENDIF( NOT QT_QTCORE_LIBRARY ) # Set QT_QTASSISTANT_LIBRARY @@ -1449,7 +1463,7 @@ IF (QT4_QMAKE_FOUND) SET( QT_QT_LIBRARY "") ELSE(QT4_QMAKE_FOUND) - + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF(Qt4_FIND_REQUIRED) IF(QT4_INSTALLED_VERSION_TOO_OLD) @@ -1462,7 +1476,6 @@ ELSE(QT4_QMAKE_FOUND) MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) ENDIF(Qt4_FIND_REQUIRED) - -ENDIF (QT4_QMAKE_FOUND) + ENDIF (QT4_QMAKE_FOUND) -- cgit v1.2.1 From a0918790682dc06ac7a8dfd80cc3b3926f3d7675 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 17 Aug 2008 08:18:03 +0000 Subject: Add documentation for KDE_MIN_VERSION variable svn path=/branches/KDE/4.1/kdelibs/; revision=848170 --- modules/FindKDE4Internal.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 70ce60ac..a5451d13 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -216,6 +216,13 @@ # without going all over the place, but still produce better performance. # It's also important to note that gcc cannot detect all warning conditions # unless the optimiser is active. +# +# You can set the variable KDE_MIN_VERSION before calling find_package() +# to depend on a particular kdelibs version. For example to depend on +# KDE 4.1.0 you can use +# +# set(KDE_MIN_VERSION "4.1.0") +# find_package(KDE4 REQUIRED) # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally -- cgit v1.2.1 From b90b4f097e19ed69c97824935ebdbf8dd9d45a78 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 17 Aug 2008 08:21:26 +0000 Subject: Document the KDE_MIN_VERSION variable and that its deprecated. svn path=/trunk/KDE/kdelibs/; revision=848173 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 76e1648b..041c90a3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -222,6 +222,10 @@ # find_package. For example to depend on kdelibs >= 4.1.0 one should use # # find_package(KDE4 4.1.0 REQUIRED) +# +# In earlier versions of KDE you could use the variable KDE_MIN_VERSION to +# have such a dependency. This variable is deprecated with KDE 4.2.0, but +# will still work to make the module backwards-compatible. # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally -- cgit v1.2.1 From 28112bf4ace2ef56dbcaa7edcfd0762988b3b50f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 17 Aug 2008 08:43:56 +0000 Subject: Fix close "if" svn path=/trunk/KDE/kdelibs/; revision=848174 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8952807d..fec95c6e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -270,7 +270,7 @@ IF(QT_QT_LIBRARY) ENDIF(NOT Qt4_FIND_QUIETLY) RETURN() ENDIF(Qt4_FIND_REQUIRED) -ENDIF(QT_QTCORE_LIBRARY) +ENDIF(QT_QT_LIBRARY) IF (QT4_QMAKE_FOUND) -- cgit v1.2.1 From c1572b73f3af45b8ff8c78389c0e09435a72c270 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Mon, 18 Aug 2008 15:04:57 +0000 Subject: backport FindEigen2.cmake. Since some apps like KOffice depend currently on 4.1 libs, i've been told this was useful to backport. svn path=/branches/KDE/4.1/kdelibs/; revision=848852 --- modules/FindEigen2.cmake | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 modules/FindEigen2.cmake (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake new file mode 100644 index 00000000..924c69a0 --- /dev/null +++ b/modules/FindEigen2.cmake @@ -0,0 +1,30 @@ +# - Try to find Eigen2 lib +# Once done this will define +# +# EIGEN2_FOUND - system has eigen lib +# EIGEN2_INCLUDE_DIR - the eigen include directory + +# Copyright (c) 2006, 2007 Montel Laurent, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (EIGEN2_INCLUDE_DIR) + + # in cache already + set(EIGEN2_FOUND TRUE) + +else (EIGEN2_INCLUDE_DIR) + +find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core + PATHS + ${INCLUDE_INSTALL_DIR}/eigen2 + ) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Eigen2 DEFAULT_MSG EIGEN2_INCLUDE_DIR ) + + +mark_as_advanced(EIGEN2_INCLUDE_DIR) + +endif(EIGEN2_INCLUDE_DIR) + -- cgit v1.2.1 From e233fa57b38b755435bc22dbb568460831eee439 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Tue, 19 Aug 2008 13:34:45 +0000 Subject: SVN_SILENT backport minor fix svn path=/trunk/KDE/kdelibs/; revision=849395 --- modules/FindEigen2.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 924c69a0..59eb1dfc 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -18,6 +18,7 @@ else (EIGEN2_INCLUDE_DIR) find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core PATHS ${INCLUDE_INSTALL_DIR}/eigen2 + ${KDE4_INCLUDE_DIR}/eigen2 ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From f6a4b3f21f384dc47d781c3b67e6b0e21115dd80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Tue, 19 Aug 2008 13:35:25 +0000 Subject: SVN_SILENT backport minor fix svn path=/branches/KDE/4.1/kdelibs/; revision=849396 --- modules/FindEigen2.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 924c69a0..59eb1dfc 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -18,6 +18,7 @@ else (EIGEN2_INCLUDE_DIR) find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core PATHS ${INCLUDE_INSTALL_DIR}/eigen2 + ${KDE4_INCLUDE_DIR}/eigen2 ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 4c42cb3b51962cc04f8de936f37065901f9aa355 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 19 Aug 2008 21:51:29 +0000 Subject: Xine move to phonon svn path=/trunk/KDE/kdelibs/; revision=849666 --- modules/FindXine.cmake | 72 -------------------------------------------------- 1 file changed, 72 deletions(-) delete mode 100644 modules/FindXine.cmake (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake deleted file mode 100644 index 534613a6..00000000 --- a/modules/FindXine.cmake +++ /dev/null @@ -1,72 +0,0 @@ -# - Try to find the XINE library -# Once done this will define -# -# XINE_FOUND - system has the XINE library -# XINE_VERSION - XINE version -# XINE_BUGFIX_VERSION - the XINE bugfix version -# XINE_INCLUDE_DIR - the XINE include directory -# XINE_LIBRARY - The libraries needed to use XINE -# XINE_XCB_FOUND - libxine can use XCB for video output - -# Copyright (c) 2006,2007 Laurent Montel, -# Copyright (c) 2006, Matthias Kretz, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -if (XINE_INCLUDE_DIR AND XINE_LIBRARY) - # Already in cache, be silent - set(Xine_FIND_QUIETLY TRUE) -endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) - IF (NOT WIN32) - INCLUDE(UsePkgConfig) - PKGCONFIG(libxine _LibXineIncDir _LibXineLinkDir _LibXineLinkFlags _LibXineCflags) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) - ENDIF (NOT WIN32) -FIND_PATH(XINE_INCLUDE_DIR NAMES xine.h - PATHS - ${_LibXineIncDir} - NO_DEFAULT_PATH) - -FIND_LIBRARY(XINE_LIBRARY NAMES xine - PATHS - ${_LibXineLinkDir} - NO_DEFAULT_PATH -) - -FIND_PROGRAM(XINECONFIG_EXECUTABLE NAMES xine-config PATHS - ${_LibXinePrefix}/bin -) - -if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) - EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) - macro_ensure_version(1.1.1 ${XINE_VERSION} XINE_VERSION_OK) - if (XINE_VERSION_OK) - set(XINE_FOUND TRUE) - string(REGEX REPLACE "[0-9].[0-9]." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) - endif (XINE_VERSION_OK) -endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) - - -if( XINE_FOUND ) - INCLUDE(CheckCSourceCompiles) - SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) - SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) - CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) -endif(XINE_FOUND) - -if (XINE_FOUND) - if (NOT Xine_FIND_QUIETLY) - message(STATUS "Found XINE: ${XINE_LIBRARY}") - endif (NOT Xine_FIND_QUIETLY) - # if(XINECONFIG_EXECUTABLE) - # EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --plugindir RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINEPLUGINSDIR) - # MESSAGE(STATUS "XINEPLUGINSDIR :<${XINEPLUGINSDIR}>") - # endif(XINECONFIG_EXECUTABLE) -else (XINE_FOUND) - if (Xine_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find XINE 1.1.1 or greater") - endif (Xine_FIND_REQUIRED) -endif (XINE_FOUND) - -MARK_AS_ADVANCED(XINE_INCLUDE_DIR XINE_LIBRARY) -- cgit v1.2.1 From 3b35b9f193a88d6d174aef3da979729952a7a261 Mon Sep 17 00:00:00 2001 From: Jos van den Oever Date: Wed, 20 Aug 2008 21:06:31 +0000 Subject: Require at least Strigi 0.6.0 (SVN trunk) because a BC change was needed in libstreamanalyzer to support ARM architecture. svn path=/trunk/KDE/kdelibs/; revision=850153 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a3725a90..8fc521c7 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -15,7 +15,7 @@ include(FindLibraryWithDebug) if(NOT STRIGI_MIN_VERSION) - set(STRIGI_MIN_VERSION "0.5.9") + set(STRIGI_MIN_VERSION "0.6.0") endif(NOT STRIGI_MIN_VERSION) if (WIN32) -- cgit v1.2.1 From 65b7a8a860cd48f219914f989d0ec52bd4e2685a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 20 Aug 2008 23:34:36 +0000 Subject: -disable setting the LINK_INTERFACE_LIBRARIES temporarily for cmake cvs HEAD and the soon to be released 2.6.2, since what is silently ignored and fails at link time now (or is hacked working as jaroslaw did) will fail the at cmake time, which is better, but will break e.g. Jaroslaws workarounds This will be fixed correctly when I'm back from vacation in two weeks. Alex svn path=/trunk/KDE/kdelibs/; revision=850198 --- modules/FindKDE4Internal.cmake | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 041c90a3..5ca46f96 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -582,9 +582,16 @@ option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the h # disable this for now for Windows, since there is an issue with the use of "debug" and # "optimized" in the LINK_INTERFACE_LIBRARIES target property, Alex -if (WIN32) + +# disable the reduced linking temporarily for Windows, cmake HEAD and the soon-to-be-released cmake 2.6.2 +# With 2.6.0 and 2.6.1 it can happen that the "debug", "optimized" and "general" keywords are +# misinterpreted by cmake as library names, the linking fails. Usually this happens under Windows. +# In 2.6.2 this will be an error at cmake time, so we disable it for now and once we require +# 2.6.2 we'll fix it the right way (using TARGET_LINK_LIBRARIES(foo LINK_INTERFACE_LIBRARIES ...) +if (WIN32 OR "${CMAKE_MINOR_VERSION}" EQUAL 7 OR "${CMAKE_PATCH_VERSION}" EQUAL 2) set(KDE4_DISABLE_PROPERTY_ "DISABLED_") -endif(WIN32) +endif (WIN32 OR "${CMAKE_MINOR_VERSION}" EQUAL 7 OR "${CMAKE_PATCH_VERSION}" EQUAL 2) +#endif(WIN32) # option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) # # If enabled, make it empty, so the property will keep it's actual name. -- cgit v1.2.1 From 87299c07951d5b28767ee8949e40ff1942307bde Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Thu, 21 Aug 2008 07:49:08 +0000 Subject: Re-Add FindXine.cmake, removing it is a source-incompatible change and breaks kdemultimedia compilation. svn path=/trunk/KDE/kdelibs/; revision=850292 --- modules/FindXine.cmake | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 modules/FindXine.cmake (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake new file mode 100644 index 00000000..534613a6 --- /dev/null +++ b/modules/FindXine.cmake @@ -0,0 +1,72 @@ +# - Try to find the XINE library +# Once done this will define +# +# XINE_FOUND - system has the XINE library +# XINE_VERSION - XINE version +# XINE_BUGFIX_VERSION - the XINE bugfix version +# XINE_INCLUDE_DIR - the XINE include directory +# XINE_LIBRARY - The libraries needed to use XINE +# XINE_XCB_FOUND - libxine can use XCB for video output + +# Copyright (c) 2006,2007 Laurent Montel, +# Copyright (c) 2006, Matthias Kretz, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (XINE_INCLUDE_DIR AND XINE_LIBRARY) + # Already in cache, be silent + set(Xine_FIND_QUIETLY TRUE) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) + IF (NOT WIN32) + INCLUDE(UsePkgConfig) + PKGCONFIG(libxine _LibXineIncDir _LibXineLinkDir _LibXineLinkFlags _LibXineCflags) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) + ENDIF (NOT WIN32) +FIND_PATH(XINE_INCLUDE_DIR NAMES xine.h + PATHS + ${_LibXineIncDir} + NO_DEFAULT_PATH) + +FIND_LIBRARY(XINE_LIBRARY NAMES xine + PATHS + ${_LibXineLinkDir} + NO_DEFAULT_PATH +) + +FIND_PROGRAM(XINECONFIG_EXECUTABLE NAMES xine-config PATHS + ${_LibXinePrefix}/bin +) + +if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) + EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) + macro_ensure_version(1.1.1 ${XINE_VERSION} XINE_VERSION_OK) + if (XINE_VERSION_OK) + set(XINE_FOUND TRUE) + string(REGEX REPLACE "[0-9].[0-9]." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) + endif (XINE_VERSION_OK) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) + + +if( XINE_FOUND ) + INCLUDE(CheckCSourceCompiles) + SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) + SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) + CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) +endif(XINE_FOUND) + +if (XINE_FOUND) + if (NOT Xine_FIND_QUIETLY) + message(STATUS "Found XINE: ${XINE_LIBRARY}") + endif (NOT Xine_FIND_QUIETLY) + # if(XINECONFIG_EXECUTABLE) + # EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --plugindir RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINEPLUGINSDIR) + # MESSAGE(STATUS "XINEPLUGINSDIR :<${XINEPLUGINSDIR}>") + # endif(XINECONFIG_EXECUTABLE) +else (XINE_FOUND) + if (Xine_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find XINE 1.1.1 or greater") + endif (Xine_FIND_REQUIRED) +endif (XINE_FOUND) + +MARK_AS_ADVANCED(XINE_INCLUDE_DIR XINE_LIBRARY) -- cgit v1.2.1 From 9beb25385bf8600c71db7afd793890a45ac11fa7 Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Fri, 22 Aug 2008 15:00:50 +0000 Subject: Give an accurate hint - if Strigi can't be found, CMAKE_PREFIX_PATH, not CMAKE_FIND_PREFIX_PATH, should be set for CMake 2.6 svn path=/trunk/KDE/kdelibs/; revision=850927 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 8fc521c7..c9c5b671 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -117,7 +117,7 @@ endif (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi - "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_FIND_PREFIX_PATH if using CMake >=2.5) to the strigi install dir." + "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) if(WIN32) -- cgit v1.2.1 From 315b8d02548d83b37ce6f910e51aea8df2ef758f Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sun, 24 Aug 2008 19:12:40 +0000 Subject: patch from Alex: - reduce link dependencies even further Further comment fixes. svn path=/trunk/KDE/kdelibs/; revision=851860 --- modules/KDE4Macros.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7c57e6a4..c99a4960 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -880,14 +880,14 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) - # if that option is enabled, by default don't add any linked libraries to the "exported" - # link interfaces, so that executables linking against this library won't get additional - # indirect dependencies. This makes work easier for packagers and should make application - # startup somewhat faster, if I understood Dirk correctly. + # by default don't add any linked libraries to the "exported" + # link interfaces, so that executables linking against this library + # will not automatically add implicit dependencies to their link list. + # + # This reduces inter-package dependencies and makes it easier to remove + # dependencies of shared libraries without breaking binary compatibility. if(NOT "${_add_lib_param}" STREQUAL "STATIC") - if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) - set_target_properties(${_target_NAME} PROPERTIES LINK_INTERFACE_LIBRARIES "" ) - endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) + set_target_properties(${_target_NAME} PROPERTIES ${KDE4_DISABLE_PROPERTY_}LINK_INTERFACE_LIBRARIES "" ) endif(NOT "${_add_lib_param}" STREQUAL "STATIC") endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -- cgit v1.2.1 From d98faf5345e604b9e4631c8b2d6501c9bb06bdc2 Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Tue, 26 Aug 2008 23:18:35 +0000 Subject: Allow a classname to be specified for QT_ADD_DBUS_INTERFACE, and document the possibility for setting a header to include. svn path=/trunk/KDE/kdelibs/; revision=852986 --- modules/FindQt4.cmake | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index fec95c6e..513b0cfe 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -85,6 +85,10 @@ # the list of sources. # To disable generating a namespace header, set the source file property # NO_NAMESPACE to TRUE on the interface file. +# To include a header in the interface header, set the source file property +# INCLUDE to the name of the header. +# To specify a class name to use, set the source file property CLASSNAME +# to the name of the class. # # macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... ) # create the interface header and implementation files @@ -92,6 +96,10 @@ # the name will be automatically determined from the name of the xml file # To disable generating namespace headers, set the source file property # NO_NAMESPACE to TRUE for these inputfiles. +# To include a header in the interface header, set the source file property +# INCLUDE to the name of the header. +# To specify a class name to use, set the source file property CLASSNAME +# to the name of the class. # # macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname]) # create a dbus adaptor (header and implementation file) from the xml file @@ -1268,6 +1276,11 @@ IF (QT4_QMAKE_FOUND) SET(_params -m) ENDIF ( _nonamespace ) + GET_SOURCE_FILE_PROPERTY(_classname ${_interface} CLASSNAME) + IF ( _classname ) + SET(_params ${_params} -c ${_classname}) + ENDIF ( _classname ) + GET_SOURCE_FILE_PROPERTY(_include ${_interface} INCLUDE) IF ( _include ) SET(_params ${_params} -i ${_include}) -- cgit v1.2.1 From c39c2245fe6429e2749a2a9d94d0cbf30b50f7ab Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Fri, 29 Aug 2008 10:38:09 +0000 Subject: merge 850650 here svn path=/trunk/KDE/kdelibs/; revision=854302 --- modules/FindEigen2.cmake | 1 + modules/MacroOptionalDependPackage.cmake | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 59eb1dfc..7f6edf94 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -19,6 +19,7 @@ find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core PATHS ${INCLUDE_INSTALL_DIR}/eigen2 ${KDE4_INCLUDE_DIR}/eigen2 + ${CMAKE_INCLUDE_PATH}/eigen2 ) include(FindPackageHandleStandardArgs) diff --git a/modules/MacroOptionalDependPackage.cmake b/modules/MacroOptionalDependPackage.cmake index 1a6df36a..fd82b567 100644 --- a/modules/MacroOptionalDependPackage.cmake +++ b/modules/MacroOptionalDependPackage.cmake @@ -13,10 +13,11 @@ MACRO (MACRO_OPTIONAL_DEPEND_PACKAGE _name _module_needed) set(_packagename Find${_name}.cmake) find_file(_PACKAGE_DEPEND_FOUND ${_packagename} PATHS ${CMAKE_MODULE_PATH} ) if(NOT _PACKAGE_DEPEND_FOUND) - MESSAGE(STATUS "cmake package ${_packagename} was not found. This package needs ${_module_needed} to be compile all program") - set(DEPEND_PACKAGE_${_name} FALSE) + MESSAGE(STATUS "cmake package ${_packagename} not found, optional dependency ${_module_needed}") + set(DEPEND_PACKAGE_${_name} FALSE) else(NOT _PACKAGE_DEPEND_FOUND) - set(DEPEND_PACKAGE_${_name} TRUE) + set(DEPEND_PACKAGE_${_name} TRUE) endif(NOT _PACKAGE_DEPEND_FOUND) + macro_log_feature(_PACKAGE_DEPEND_FOUND "${_packagename}" "${_module_needed}" "" FALSE "" "Optional dependency") ENDMACRO (MACRO_OPTIONAL_DEPEND_PACKAGE) -- cgit v1.2.1 From 9c72dc264f879ad796dfbf5721abed50e9367410 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Fri, 29 Aug 2008 10:38:55 +0000 Subject: not supposed to be committed svn path=/trunk/KDE/kdelibs/; revision=854303 --- modules/MacroOptionalDependPackage.cmake | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalDependPackage.cmake b/modules/MacroOptionalDependPackage.cmake index fd82b567..1a6df36a 100644 --- a/modules/MacroOptionalDependPackage.cmake +++ b/modules/MacroOptionalDependPackage.cmake @@ -13,11 +13,10 @@ MACRO (MACRO_OPTIONAL_DEPEND_PACKAGE _name _module_needed) set(_packagename Find${_name}.cmake) find_file(_PACKAGE_DEPEND_FOUND ${_packagename} PATHS ${CMAKE_MODULE_PATH} ) if(NOT _PACKAGE_DEPEND_FOUND) - MESSAGE(STATUS "cmake package ${_packagename} not found, optional dependency ${_module_needed}") - set(DEPEND_PACKAGE_${_name} FALSE) + MESSAGE(STATUS "cmake package ${_packagename} was not found. This package needs ${_module_needed} to be compile all program") + set(DEPEND_PACKAGE_${_name} FALSE) else(NOT _PACKAGE_DEPEND_FOUND) - set(DEPEND_PACKAGE_${_name} TRUE) + set(DEPEND_PACKAGE_${_name} TRUE) endif(NOT _PACKAGE_DEPEND_FOUND) - macro_log_feature(_PACKAGE_DEPEND_FOUND "${_packagename}" "${_module_needed}" "" FALSE "" "Optional dependency") ENDMACRO (MACRO_OPTIONAL_DEPEND_PACKAGE) -- cgit v1.2.1 From 40413ebf9d94f41ac11113a625b6f22df8f4d88c Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Fri, 29 Aug 2008 11:39:27 +0000 Subject: CMAKE_INCLUDE_PATH is always empty here for some reason, so I need the explicit path listed svn path=/trunk/KDE/kdelibs/; revision=854321 --- modules/FindEigen2.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 7f6edf94..d5ffc2c2 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -20,6 +20,7 @@ find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core ${INCLUDE_INSTALL_DIR}/eigen2 ${KDE4_INCLUDE_DIR}/eigen2 ${CMAKE_INCLUDE_PATH}/eigen2 + /usr/include/eigen2 ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 07fcb50e1a92947ebdd2f998b52cfddc73d9349a Mon Sep 17 00:00:00 2001 From: Jos van den Oever Date: Fri, 29 Aug 2008 19:12:18 +0000 Subject: Fix Strigi detection to use a version from the 0.5 branch and to not use a newer version. svn path=/branches/KDE/4.1/kdelibs/; revision=854554 --- modules/FindStrigi.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a3725a90..83ac283f 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -17,6 +17,9 @@ include(FindLibraryWithDebug) if(NOT STRIGI_MIN_VERSION) set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) +if(NOT STRIGI_MAX_VERSION) + set(STRIGI_MAX_VERSION "0.5.99") +endif(NOT STRIGI_MAX_VERSION) if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) @@ -82,7 +85,7 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) # if pkgconfig found strigi, check the version, otherwise print a warning if(_dummyLinkFlags) - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} --max-version=${STRIGI_MAX_VERSION} libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(NOT _return_VALUE STREQUAL "0") -- cgit v1.2.1 From 6579d816eaadbefc0cfc81486436937e9e65d5ac Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 1 Sep 2008 13:08:40 +0000 Subject: Show the actual compiler error when compilation of a simple qt test program fails. (In my case it was the removal of a symlink to the qt-copy dir.) svn path=/trunk/KDE/kdelibs/; revision=855787 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5ca46f96..a41be4aa 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1104,10 +1104,10 @@ if (CMAKE_COMPILER_IS_GNUCXX) file(WRITE "${_source_file}" "${_source}") set(_include_dirs "-DINCLUDE_DIRECTORIES:STRING=${QT_INCLUDES}") - try_run(_run_result _compile_result ${CMAKE_BINARY_DIR} ${_source_file} CMAKE_FLAGS "${_include_dirs}") + try_run(_run_result _compile_result ${CMAKE_BINARY_DIR} ${_source_file} CMAKE_FLAGS "${_include_dirs}" COMPILE_OUTPUT_VARIABLE _compile_output_var) if(NOT _compile_result) - message(FATAL_ERROR "Could not compile simple test program:\n ${_source}") + message(FATAL_ERROR "Could not compile simple test program:\n ${_source}\n${_compile_output_var}") endif(NOT _compile_result) if(_run_result) message(FATAL_ERROR "Qt compiled without support for -fvisibility=hidden. This will break plugins and linking of some applications. Please fix your Qt installation.") -- cgit v1.2.1 From 38992ee64c9f4b9add12de816d209970916fe63f Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 1 Sep 2008 14:43:44 +0000 Subject: bump automoc4 version requirement to match reality - can't build trunk anymore with that old version svn path=/trunk/KDE/kdelibs/; revision=855822 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a41be4aa..25acac36 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -283,7 +283,7 @@ if (NOT AUTOMOC4_VERSION) # the version macro was added for 0.9.84 set(AUTOMOC4_VERSION "0.9.83") endif (NOT AUTOMOC4_VERSION) -macro_ensure_version("0.9.84" "${AUTOMOC4_VERSION}" _automoc4_version_ok) +macro_ensure_version("0.9.87" "${AUTOMOC4_VERSION}" _automoc4_version_ok) # for compatibility with KDE 4.0.x set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) -- cgit v1.2.1 From 6931f7e6306111b9f4ddfccb0f4cd84f41bdc273 Mon Sep 17 00:00:00 2001 From: Marijn Kruisselbrink Date: Mon, 1 Sep 2008 17:44:51 +0000 Subject: also update the error message with the new required automoc version CCMAIL: mueller@kde.org svn path=/trunk/KDE/kdelibs/; revision=855909 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 25acac36..36154b60 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -313,7 +313,7 @@ if(NOT AUTOMOC4_FOUND OR NOT _automoc4_version_ok) return() else(NOT AUTOMOC4_FOUND) if(NOT _automoc4_version_ok) - message(${_REQ_STRING_KDE4_MESSAGE} "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.84") + message(${_REQ_STRING_KDE4_MESSAGE} "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.87") return() endif(NOT _automoc4_version_ok) endif(NOT AUTOMOC4_FOUND) -- cgit v1.2.1 From 818a5c7d4e7b75cd4832a2bc6913d012569a52a8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Sep 2008 22:41:52 +0000 Subject: -modify the documentation, so let's see if this shows up tomorrow on api.kde.org Alex CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=856856 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index c9c5b671..88fc8b2f 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -1,4 +1,4 @@ -# - Try to find Strigi +# - Try to find Strigi, a fast and small desktop search program (http://strigi.sourceforge.net ) # Once done this will define # # STRIGI_FOUND - system has Strigi -- cgit v1.2.1 From 0a2a078fd1820f87c6828bfc69cffc91f08e44c3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 7 Sep 2008 21:32:44 +0000 Subject: -fix handling of "REQUIRED" when used in kdelibs (otherwise if automoc was too old you got "unknown cmake command kde4_add_executable()", where the cause is not too obvious) Alex svn path=/trunk/KDE/kdelibs/; revision=858363 --- modules/FindKDE4Internal.cmake | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 36154b60..e7be00bf 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -262,14 +262,17 @@ if(NOT KDE4_FOUND) include (MacroEnsureVersion) -# we may only search for other packages with "REQUIRED" if we are required ourselves -if(KDE4_FIND_REQUIRED) +# We may only search for other packages with "REQUIRED" if we are required ourselves. +# This file can be processed either (usually) included in FindKDE4.cmake or +# (when building kdelibs) directly via FIND_PACKAGE(KDE4Internal), that's why +# we have to check for both KDE4_FIND_REQUIRED and KDE4Internal_FIND_REQUIRED. +if(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) set(_REQ_STRING_KDE4 "REQUIRED") set(_REQ_STRING_KDE4_MESSAGE "FATAL_ERROR") -else(KDE4_FIND_REQUIRED) +else(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) set(_REQ_STRING_KDE4 ) set(_REQ_STRING_KDE4_MESSAGE "STATUS") -endif(KDE4_FIND_REQUIRED) +endif(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) set(QT_MIN_VERSION "4.4.0") #this line includes FindQt4.cmake, which searches the Qt library and headers -- cgit v1.2.1 From aac68ca8a37d02854eaaa1f711bfadb739a1bef4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 7 Sep 2008 22:26:33 +0000 Subject: -save some regex matching and make the code easier readable: since cmake 2.6 regex matches are stored in the variables CMAKE_MATCH_, so we have to match the regex only once instead of multiple times and can then just use the stored matches Alex svn path=/trunk/KDE/kdelibs/; revision=858379 --- modules/KDE4Macros.cmake | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c99a4960..57e48993 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -369,10 +369,12 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) # first the png icons file(GLOB _icons *.png) foreach (_current_ICON ${_icons} ) - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\1" _type "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\2" _size "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\3" _group "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" "\\4" _name "${_current_ICON}") + # since CMake 2.6 regex matches are stored in special variables CMAKE_MATCH_x, if it didn't match, they are empty + string(REGEX MATCH "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.png)$" _dummy "${_current_ICON}") + set(_type "${CMAKE_MATCH_1}") + set(_size "${CMAKE_MATCH_2}") + set(_group "${CMAKE_MATCH_3}") + set(_name "${CMAKE_MATCH_4}") set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) if( _theme_GROUP) @@ -385,10 +387,12 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) # mng icons file(GLOB _icons *.mng) foreach (_current_ICON ${_icons} ) - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\1" _type "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\2" _size "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\3" _group "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" "\\4" _name "${_current_ICON}") + # since CMake 2.6 regex matches are stored in special variables CMAKE_MATCH_x, if it didn't match, they are empty + string(REGEX MATCH "^.*/([a-zA-Z]+)([0-9]+)\\-([a-z]+)\\-(.+\\.mng)$" _dummy "${_current_ICON}") + set(_type "${CMAKE_MATCH_1}") + set(_size "${CMAKE_MATCH_2}") + set(_group "${CMAKE_MATCH_3}") + set(_name "${CMAKE_MATCH_4}") set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) if( _theme_GROUP) @@ -401,9 +405,11 @@ macro (KDE4_INSTALL_ICONS _defaultpath ) # and now the svg icons file(GLOB _icons *.svgz) foreach (_current_ICON ${_icons} ) - string(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\1" _type "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\2" _group "${_current_ICON}") - string(REGEX REPLACE "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" "\\3" _name "${_current_ICON}") + # since CMake 2.6 regex matches are stored in special variables CMAKE_MATCH_x, if it didn't match, they are empty + string(REGEX MATCH "^.*/([a-zA-Z]+)sc\\-([a-z]+)\\-(.+\\.svgz)$" _dummy "${_current_ICON}") + set(_type "${CMAKE_MATCH_1}") + set(_group "${CMAKE_MATCH_2}") + set(_name "${CMAKE_MATCH_3}") set(_theme_GROUP ${_KDE4_ICON_THEME_${_type}}) if( _theme_GROUP) -- cgit v1.2.1 From 22c6305648af0e2d312e86fd381465d6a7d8b688 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 7 Sep 2008 22:32:58 +0000 Subject: -remove debug output and improve message Alex svn path=/trunk/KDE/kdelibs/; revision=858380 --- modules/FindKDE4Internal.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e7be00bf..3b3952ba 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -403,7 +403,6 @@ else (_kdeBootStrapping) # we need at least this version: if (NOT KDE_MIN_VERSION) if (KDE4_FIND_VERSION_MAJOR) - message("${KDE4_FIND_VERSION_MAJOR}") if (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) if (KDE4_FIND_VERSION_MINOR) set(KDE_MIN_VERSION "4.${KDE4_FIND_VERSION_MINOR}") @@ -416,7 +415,7 @@ else (_kdeBootStrapping) set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.0") endif (KDE4_FIND_VERSION_PATCH) else (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) - message(FATAL_ERROR "FindKDE4 can only be used with KDE 4") + message(FATAL_ERROR "FindKDE4 can only be used for finding KDE 4 (not for KDE ${KDE4_FIND_VERSION_MAJOR}).") endif (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) else (KDE4_FIND_VERSION_MAJOR) set (KDE_MIN_VERSION "4.0.0") -- cgit v1.2.1 From ef574f700e8113f526f203c529eb37648cbad383 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 8 Sep 2008 23:10:43 +0000 Subject: -prepare for supporting cmake >= 2.6.2 and TARGET_LINK_LIBRARIES(target LINK_INTERFACE_LIBRARIES foo bar) Alex svn path=/trunk/KDE/kdelibs/; revision=858896 --- modules/KDE4Macros.cmake | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 57e48993..a17c1d4c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1141,6 +1141,27 @@ macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) # endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) +# In cmake 2.6.2 a new keyword "LINK_INTERFACE_LIBRARIES is added to TARGET_LINK_LIBRARIES(). +# We will use this to reduce the link interface of libraries. As opposed to setting the +# respective target property, here the "debug" and "optimized" keywords are supported +# (this is actually the reason why we will use this). +# The problem is, once we add this call to our cmake files, cmake 2.6.0 and 2.6.1 would not +# work anymore, since they would fail when trying to link against -lLINK_INTERFACE_LIBRARIES +# That's for cmake 2.6.0 and 2.6.1 we redefine TARGET_LINK_LIBRARIES() here. +# If the first argument after the target name if "LINK_INTERFACE_LIBRARIES", then +# nothing is done, otherwise the original TARGET_LINK_LIBRARIES() is called. +# This can be done by calling _target_link_libraries(), since if a command is +# "overloaded" by a macro, the original command gets a "_" prepended, so it +# is still available. +if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" MATCHES "^2\\.6\\.[01]$") + macro(TARGET_LINK_LIBRARIES) + if(NOT "${ARGV1}" STREQUAL "LINK_INTERFACE_LIBRARIES") + _target_link_libraries(${ARGN}) + endif() + endmacro(TARGET_LINK_LIBRARIES) +endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" MATCHES "^2\\.6\\.[01]$") + + macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) message(FATAL_ERROR "_KDE4_TARGET_LINK_INTERFACE_LIBRARIES() doesn't exist anymore. Set the LINK_INTERFACE_LIBRARIES target property instead. See kdelibs/kdecore/CMakeLists.txt for an example.") endmacro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES) -- cgit v1.2.1 From 0e9f2607bd3f11589b5fab95ba888f421c18dbb1 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Thu, 11 Sep 2008 21:21:33 +0000 Subject: Also search for "1.36" svn path=/trunk/KDE/kdelibs/; revision=860070 --- modules/FindBoost.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index 7f3aff9e..171409c6 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -12,7 +12,7 @@ # when new boost versions are released. # # Currently this module searches for the following version numbers: -# 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, 1.35, 1.35.0, 1.35.1, 1.36.0, 1.36.1 +# 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, 1.35, 1.35.0, 1.35.1, 1.36, 1.36.0, 1.36.1 # # The components list needs to be the actual names of boost libraries, that is # the part of the actual library files that differ on different libraries. So @@ -93,7 +93,7 @@ OPTION(Boost_USE_MULTITHREADED "Use the multithreaded versions of the boost libraries" ON) -SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.36.1" "1.36.0" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1" "1.33.0" "1.33" ) +SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1" "1.33.0" "1.33" ) ############################################ -- cgit v1.2.1 From 0396e813b84a858e1f70c665a875f6047a726843 Mon Sep 17 00:00:00 2001 From: Tobias Koenig Date: Fri, 12 Sep 2008 16:37:42 +0000 Subject: Add macro for KDE4_AKONADI_KABC_LIBS svn path=/trunk/KDE/kdelibs/; revision=860314 --- modules/FindKdepimLibs.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index e9cc7302..759ccfa0 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -31,13 +31,16 @@ if( KDEPIMLIBS_INCLUDE_DIR ) # this file contains all dependencies of all libraries of kdepimlibs, Alex include(KDEPimLibsDependencies) - + find_library(KDE4_AKONADI_LIBRARY NAMES akonadi-kde PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_AKONADI_LIBS ${akonadi_LIB_DEPENDS} ${KDE4_AKONADI_LIBRARY} ) find_library(KDE4_AKONADI_KMIME_LIBRARY NAMES akonadi-kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_AKONADI_KMIME_LIBS ${akonadi_kmime_LIB_DEPENDS} ${KDE4_AKONADI_KMIME_LIBRARY} ) + find_library(KDE4_AKONADI_KABC_LIBRARY NAMES akonadi-kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) + set(KDE4_AKONADI_KABC_LIBS ${akonadi_kabc_LIB_DEPENDS} ${KDE4_AKONADI_KABC_LIBRARY} ) + find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgme++ PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) -- cgit v1.2.1 From 616b0b0e3e8e0c001aa151a7babe1463f6c0a541 Mon Sep 17 00:00:00 2001 From: David Faure Date: Sat, 13 Sep 2008 00:31:05 +0000 Subject: When strigi is >= 0.6.0, use signed char instead of char. Strong suggestion for the future: KEEPING SOURCE COMPATIBILITY! svn path=/branches/KDE/4.1/kdelibs/; revision=860423 --- modules/FindStrigi.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 83ac283f..094be9b9 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -85,6 +85,7 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) # if pkgconfig found strigi, check the version, otherwise print a warning if(_dummyLinkFlags) + ## TODO find out why --max-version does not work! exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} --max-version=${STRIGI_MAX_VERSION} libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) @@ -93,6 +94,11 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") else(NOT _return_VALUE STREQUAL "0") set(HAVE_STRIGI_VERSION TRUE) + set (STRIGI_NEEDS_SIGNED_CHAR FALSE) + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --modversion libstreamanalyzer RETURN_VALUE _version_return_VALUE OUTPUT_VARIABLE _strigiVersion ) + MACRO_ENSURE_VERSION("0.6.0" ${_strigiVersion} STRIGI_NEEDS_SIGNED_CHAR) + # message(STATUS "Strigi version is ${_strigiVersion}. Needs signed char: ${STRIGI_NEEDS_SIGNED_CHAR}") + if(NOT Strigi_FIND_QUIETLY) message(STATUS "Found Strigi >= ${STRIGI_MIN_VERSION}") endif(NOT Strigi_FIND_QUIETLY) -- cgit v1.2.1 From bc2b439f52f51e3dd18c58acfa032452e3eb8820 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 15 Sep 2008 10:30:34 +0000 Subject: Fix min required version now that >= 0.5.9 should work again (like in 4.1 branch); output actual found version in stderr message. svn path=/trunk/KDE/kdelibs/; revision=861152 --- modules/FindStrigi.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index e9746292..d57209ac 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -15,7 +15,7 @@ include(FindLibraryWithDebug) if(NOT STRIGI_MIN_VERSION) - set(STRIGI_MIN_VERSION "0.6.0") + set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) if (WIN32) @@ -96,7 +96,7 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) # message(STATUS "Strigi version is ${_strigiVersion}. Needs signed char: ${STRIGI_NEEDS_SIGNED_CHAR}") if(NOT Strigi_FIND_QUIETLY) - message(STATUS "Found Strigi >= ${STRIGI_MIN_VERSION}") + message(STATUS "Found Strigi ${_strigiVersion}") endif(NOT Strigi_FIND_QUIETLY) endif(NOT _return_VALUE STREQUAL "0") if (NOT STRIGI_STREAMANALYZER_LIBRARY) -- cgit v1.2.1 From 5bab527e929f2dc1f84ec9f606e8040a4d553497 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 19 Sep 2008 19:22:23 +0000 Subject: move STRIGI_NEEDS_SIGNED_CHAR for win32 to FindStrigi.cmake to make sure it's correct in all kde modules Maybe we should parse strigi-config.h to determine strigi version instead using pkgconfig? svn path=/trunk/KDE/kdelibs/; revision=862761 --- modules/FindStrigi.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index d57209ac..27a78e7f 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -120,6 +120,12 @@ if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) endif(_dummyLinkFlags) endif (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) +if(WIN32) + # STRIGI_NEEDS_SIGNED_CHAR is only set correct when pkgconfig is available... + # we don't use strigi < 0.6.0 so assume STRIGI_NEEDS_SIGNED_CHAR is needed + set(STRIGI_NEEDS_SIGNED_CHAR TRUE) +endif(WIN32) + include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." -- cgit v1.2.1 From c2aa18186d3265e97e9910ac09ed5c5a376efbe2 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 21 Sep 2008 07:55:46 +0000 Subject: Add cmake macro for kformula lib svn path=/trunk/KDE/kdelibs/; revision=863122 --- modules/FindKDE4Internal.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3b3952ba..e40a4efa 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -43,6 +43,7 @@ # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library # KDE4_KNEPOMUK_LIBRARY - the knepomuk library # KDE4_KMETADATA_LIBRARY - the kmetadata library +# KDE4_KFORMULA_LIBRARY - the kformula library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -71,6 +72,7 @@ # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries # KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries # KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries +# KDE4_KFORMULA_LIBS - the kformula library and all depending librairies # # This module defines a bunch of variables used as locations for install directories. # They can be relative (to CMAKE_INSTALL_PREFIX) or absolute. @@ -520,6 +522,10 @@ else (_kdeBootStrapping) #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) + find_library(KDE4_KFORMULA_LIBRARY NAMES kformula PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_KFORMULA_LIBS ${kformula_LIB_DEPENDS} ${KDE4_KFORMULA_LIBRARY} ) + + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) # kpassworddialog.h is new with KDE4 @@ -1035,7 +1041,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common -pedantic") add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux) -- cgit v1.2.1 From d3b7cb7678aca09ac149364bfdde56be80474d2b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 21 Sep 2008 08:30:32 +0000 Subject: Not pedantic by default svn path=/trunk/KDE/kdelibs/; revision=863128 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e40a4efa..e0586912 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1041,7 +1041,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common -pedantic") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux) -- cgit v1.2.1 From 29ebc324a8e96e6248c65527f1b0a798d676c27b Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 1 Oct 2008 14:47:11 +0000 Subject: Use pkgconfig _first_, and use the result of that (if any), when looking for strigi paths. This makes things compile again for people with both a system strigi (pre-0.6.0) in /usr and a trunk strigi elsewhere. Many thanks to Akarsh Simha for doing all the testing. svn path=/trunk/KDE/kdelibs/; revision=866641 --- modules/FindStrigi.cmake | 89 ++++++++++++++++++++---------------------------- 1 file changed, 37 insertions(+), 52 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 27a78e7f..4794f42a 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -18,6 +18,39 @@ if(NOT STRIGI_MIN_VERSION) set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) +if (NOT WIN32) + include(UsePkgConfig) + pkgconfig(libstreamanalyzer _STRIGI_INCLUDEDIR _STRIGI_LIBDIR _dummyLinkFlags _dummyCflags) + #message(STATUS "_STRIGI_INCLUDEDIR=${_STRIGI_INCLUDEDIR} _STRIGI_LIBDIR=${_STRIGI_LIBDIR}") + + if(_dummyLinkFlags) + + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} + libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + + if(NOT _return_VALUE STREQUAL "0") + message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") + message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") + else(NOT _return_VALUE STREQUAL "0") + set(HAVE_STRIGI_VERSION TRUE) + set (STRIGI_NEEDS_SIGNED_CHAR FALSE) + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --modversion libstreamanalyzer RETURN_VALUE _version_return_VALUE OUTPUT_VARIABLE _strigiVersion ) + MACRO_ENSURE_VERSION("0.6.0" ${_strigiVersion} STRIGI_NEEDS_SIGNED_CHAR) + # message(STATUS "Strigi version is ${_strigiVersion}. Needs signed char: ${STRIGI_NEEDS_SIGNED_CHAR}") + + if(NOT Strigi_FIND_QUIETLY) + message(STATUS "Found Strigi ${_strigiVersion}") + endif(NOT Strigi_FIND_QUIETLY) + endif(NOT _return_VALUE STREQUAL "0") + else(_dummyLinkFlags) + message(STATUS "pkgconfig didn't find strigi, couldn't check strigi version") + endif(_dummyLinkFlags) +else (NOT WIN32) + # STRIGI_NEEDS_SIGNED_CHAR is only set correct when pkgconfig is available... + # we don't use strigi < 0.6.0 so assume STRIGI_NEEDS_SIGNED_CHAR is needed + set(STRIGI_NEEDS_SIGNED_CHAR TRUE) +endif(NOT WIN32) + if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) string(REPLACE "\\" "/" _program_FILES_DIR "${_program_FILES_DIR}") @@ -28,6 +61,7 @@ string(REPLACE "\\" "/" strigi_home "$ENV{STRIGI_HOME}") find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS ${strigi_home}/include + ${_STRIGI_INCLUDEDIR} ${_program_FILES_DIR}/strigi/include NO_DEFAULT_PATH ) @@ -39,6 +73,7 @@ find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer PATHS ${strigi_home}/lib + ${_STRIGI_LIBDIR} ${_program_FILES_DIR}/strigi/lib NO_DEFAULT_PATH ) @@ -53,6 +88,7 @@ find_library_with_debug(STRIGI_STREAMS_LIBRARY NAMES streams PATHS ${strigi_home}/lib + ${_STRIGI_LIBDIR} ${_program_FILES_DIR}/strigi/lib NO_DEFAULT_PATH ) @@ -66,6 +102,7 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY NAMES strigiqtdbusclient PATHS ${strigi_home}/lib + ${_STRIGI_LIBDIR} ${_program_FILES_DIR}/strigi/lib NO_DEFAULT_PATH ) @@ -74,58 +111,6 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY WIN32_DEBUG_POSTFIX d NAMES strigiqtdbusclient ) - -if (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) - include(UsePkgConfig) - pkgconfig(libstreamanalyzer _dummyIncDir _dummyLinkDir _dummyLinkFlags _dummyCflags) - - # if pkgconfig found strigi, check the version, otherwise print a warning - if(_dummyLinkFlags) - - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} - libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - - if(NOT _return_VALUE STREQUAL "0") - message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") - message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") - else(NOT _return_VALUE STREQUAL "0") - set(HAVE_STRIGI_VERSION TRUE) - set (STRIGI_NEEDS_SIGNED_CHAR FALSE) - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --modversion libstreamanalyzer RETURN_VALUE _version_return_VALUE OUTPUT_VARIABLE _strigiVersion ) - MACRO_ENSURE_VERSION("0.6.0" ${_strigiVersion} STRIGI_NEEDS_SIGNED_CHAR) - # message(STATUS "Strigi version is ${_strigiVersion}. Needs signed char: ${STRIGI_NEEDS_SIGNED_CHAR}") - - if(NOT Strigi_FIND_QUIETLY) - message(STATUS "Found Strigi ${_strigiVersion}") - endif(NOT Strigi_FIND_QUIETLY) - endif(NOT _return_VALUE STREQUAL "0") - if (NOT STRIGI_STREAMANALYZER_LIBRARY) - find_library(STRIGI_STREAMANALYZER_LIBRARY NAMES streamanalyzer - PATHS ${_dummyLinkDir}) - endif(NOT STRIGI_STREAMANALYZER_LIBRARY) - if( NOT STRIGI_STRIGIQTDBUSCLIENT_LIBRARY) - find_library(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY NAMES strigiqtdbusclient - PATHS ${_dummyLinkDir}) - endif(NOT STRIGI_STRIGIQTDBUSCLIENT_LIBRARY) - if (NOT STRIGI_STREAMS_LIBRARY) - find_library(STRIGI_STREAMS_LIBRARY NAMES streams - PATHS ${_dummyLinkDir}) - endif(NOT STRIGI_STREAMS_LIBRARY) - if (NOT STRIGI_INCLUDE_DIR) - find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h - PATHS ${_dummyIncDir}) - endif(NOT STRIGI_INCLUDE_DIR) - else(_dummyLinkFlags) - message(STATUS "pkgconfig didn't find strigi, couldn't check strigi version") - endif(_dummyLinkFlags) -endif (NOT WIN32 AND NOT HAVE_STRIGI_VERSION) - -if(WIN32) - # STRIGI_NEEDS_SIGNED_CHAR is only set correct when pkgconfig is available... - # we don't use strigi < 0.6.0 so assume STRIGI_NEEDS_SIGNED_CHAR is needed - set(STRIGI_NEEDS_SIGNED_CHAR TRUE) -endif(WIN32) - include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." -- cgit v1.2.1 From 12c3a8f5de2433b4d812bf4ad3a5763af207eb0f Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 2 Oct 2008 19:00:15 +0000 Subject: Cache the bool too, since the libs+includes are cached, and when cmake auto-reconfigures without PKG_CONFING_PATH set, it won't be able to re-check the value of the bool. svn path=/trunk/KDE/kdelibs/; revision=867083 --- modules/FindStrigi.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 4794f42a..df1cf8bd 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -32,12 +32,13 @@ if (NOT WIN32) message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") else(NOT _return_VALUE STREQUAL "0") - set(HAVE_STRIGI_VERSION TRUE) set (STRIGI_NEEDS_SIGNED_CHAR FALSE) exec_program(${PKGCONFIG_EXECUTABLE} ARGS --modversion libstreamanalyzer RETURN_VALUE _version_return_VALUE OUTPUT_VARIABLE _strigiVersion ) MACRO_ENSURE_VERSION("0.6.0" ${_strigiVersion} STRIGI_NEEDS_SIGNED_CHAR) # message(STATUS "Strigi version is ${_strigiVersion}. Needs signed char: ${STRIGI_NEEDS_SIGNED_CHAR}") + set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) + if(NOT Strigi_FIND_QUIETLY) message(STATUS "Found Strigi ${_strigiVersion}") endif(NOT Strigi_FIND_QUIETLY) -- cgit v1.2.1 From f76baf11161e49940fe67deb31e4f94a35a925e4 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 2 Oct 2008 22:45:50 +0000 Subject: Fix it so that it can find eigen2 in mykdesupport_prefix/include/eigen2 using CMAKE_PREFIX_PATH svn path=/trunk/KDE/kdelibs/; revision=867151 --- modules/FindEigen2.cmake | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index d5ffc2c2..df7fd3aa 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -17,10 +17,11 @@ else (EIGEN2_INCLUDE_DIR) find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core PATHS - ${INCLUDE_INSTALL_DIR}/eigen2 - ${KDE4_INCLUDE_DIR}/eigen2 - ${CMAKE_INCLUDE_PATH}/eigen2 - /usr/include/eigen2 + ${INCLUDE_INSTALL_DIR} + ${KDE4_INCLUDE_DIR} + ${CMAKE_INCLUDE_PATH} + /usr/include + PATH_SUFFIXES eigen2 ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 5bfa5c2a22d70dd14d905a1e16a58eec34418819 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 2 Oct 2008 23:00:27 +0000 Subject: Cleanup as suggested by Alex (which shows another reason why using PATH_SUFFIXES is good ;) svn path=/trunk/KDE/kdelibs/; revision=867155 --- modules/FindEigen2.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index df7fd3aa..2579a6c9 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -19,8 +19,6 @@ find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core PATHS ${INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} - ${CMAKE_INCLUDE_PATH} - /usr/include PATH_SUFFIXES eigen2 ) -- cgit v1.2.1 From a172c1b36c3671f3ad1bae965fbbd3722c671167 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 13 Oct 2008 12:27:35 +0000 Subject: Rewrite the check for the strigi api screwup once more, because pkgconfig isn't the only way to find strigi, so using it for the version check doesn't work for everyone. Now the check is a real CHECK_CXX_SOURCE_COMPILES check. CCMAIL: jos@vandenoever.info, porten@kde.org, jasonbstubbs@gmail.com svn path=/trunk/KDE/kdelibs/; revision=870913 --- modules/FindStrigi.cmake | 61 +++++++++++++++++++++++++++++++++++++----------- 1 file changed, 48 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index df1cf8bd..b76d1c4e 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -32,13 +32,6 @@ if (NOT WIN32) message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") else(NOT _return_VALUE STREQUAL "0") - set (STRIGI_NEEDS_SIGNED_CHAR FALSE) - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --modversion libstreamanalyzer RETURN_VALUE _version_return_VALUE OUTPUT_VARIABLE _strigiVersion ) - MACRO_ENSURE_VERSION("0.6.0" ${_strigiVersion} STRIGI_NEEDS_SIGNED_CHAR) - # message(STATUS "Strigi version is ${_strigiVersion}. Needs signed char: ${STRIGI_NEEDS_SIGNED_CHAR}") - - set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) - if(NOT Strigi_FIND_QUIETLY) message(STATUS "Found Strigi ${_strigiVersion}") endif(NOT Strigi_FIND_QUIETLY) @@ -46,10 +39,6 @@ if (NOT WIN32) else(_dummyLinkFlags) message(STATUS "pkgconfig didn't find strigi, couldn't check strigi version") endif(_dummyLinkFlags) -else (NOT WIN32) - # STRIGI_NEEDS_SIGNED_CHAR is only set correct when pkgconfig is available... - # we don't use strigi < 0.6.0 so assume STRIGI_NEEDS_SIGNED_CHAR is needed - set(STRIGI_NEEDS_SIGNED_CHAR TRUE) endif(NOT WIN32) if (WIN32) @@ -114,8 +103,53 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Strigi - "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." - STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) + "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." + STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) + +if (STRIGI_FOUND) + + # Check for the SIC change between 0.5.9 and 0.6.0... + + MACRO(MACRO_CHECK_STRIGI_API_SCREWUP _RETTYPE _RESULT) + SET (_STRIGI_API_SCREWUP_SOURCE_CODE " +#include +using namespace Strigi; + class ScrewupEndAnalyzer : public StreamEndAnalyzer { +public: + ScrewupEndAnalyzer() {} + bool checkHeader(const char*, int32_t) const { return false; } + ${_RETTYPE} analyze(Strigi::AnalysisResult&, InputStream*) { + return -1; + } + const char* name() const { return \"Write 1000 times: I promise to keep source compat next time\"; } +}; +int main() +{ + ScrewupEndAnalyzer a; + return 0; +} +") + CHECK_CXX_SOURCE_COMPILES("${_STRIGI_API_SCREWUP_SOURCE_CODE}" ${_RESULT}) + ENDMACRO(MACRO_CHECK_STRIGI_API_SCREWUP) + + INCLUDE(CheckCXXSourceCompiles) + macro_push_required_vars() + set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDE_DIR} ) + MACRO_CHECK_STRIGI_API_SCREWUP( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) + MACRO_CHECK_STRIGI_API_SCREWUP( "char" STRIGI_NEEDS_CHAR ) + set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) + if (${STRIGI_NEEDS_SIGNED_CHAR}) + message(STATUS "Strigi API is post-screwup, needs 'signed char'") + else (${STRIGI_NEEDS_SIGNED_CHAR}) + if (${STRIGI_NEEDS_CHAR}) + message(STATUS "Strigi API is pre-screwup check, need 'char'") + else (${STRIGI_NEEDS_CHAR}) + message(FATAL "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") + endif (${STRIGI_NEEDS_CHAR}) + endif (${STRIGI_NEEDS_SIGNED_CHAR}) + macro_pop_required_vars() +endif (STRIGI_FOUND) + if(WIN32) # this is needed to have mingw, cygwin and msvc libs installed in one directory @@ -146,4 +180,5 @@ endif(WIN32) mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY STRIGI_LINE_ANALYZER_PREFIX STRIGI_THROUGH_ANALYZER_PREFIX + STRIGI_NEEDS_SIGNED_CHAR ) -- cgit v1.2.1 From 75af853afb3b723020b081176b469dd3dac32a7a Mon Sep 17 00:00:00 2001 From: Harri Porten Date: Mon, 13 Oct 2008 20:00:23 +0000 Subject: Did I miss the meaning of this message? svn path=/trunk/KDE/kdelibs/; revision=871039 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 513b0cfe..cfac9b60 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -429,7 +429,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt is not installed correctly.") ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") ENDIF(NOT QT_LIBRARY_DIR) -- cgit v1.2.1 From bb7830a6413a590008c02e4c715d48837aaa850d Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 13 Oct 2008 20:18:36 +0000 Subject: CheckCXXSourceCompiles == compiling and linking --> we need to link against strigi libs to get a valid result (at least on windows) svn path=/trunk/KDE/kdelibs/; revision=871052 --- modules/FindStrigi.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index b76d1c4e..ee3057b0 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -135,6 +135,7 @@ int main() INCLUDE(CheckCXXSourceCompiles) macro_push_required_vars() set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDE_DIR} ) + set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) MACRO_CHECK_STRIGI_API_SCREWUP( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) MACRO_CHECK_STRIGI_API_SCREWUP( "char" STRIGI_NEEDS_CHAR ) set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) -- cgit v1.2.1 From a1cc1ad94a41aefd55b1190c1d01d7c38037f305 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 13 Oct 2008 22:09:22 +0000 Subject: seems it's FATAL_ERROR, not just FATAL svn path=/trunk/KDE/kdelibs/; revision=871114 --- modules/FindStrigi.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index ee3057b0..dbc2c0fa 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -145,7 +145,7 @@ int main() if (${STRIGI_NEEDS_CHAR}) message(STATUS "Strigi API is pre-screwup check, need 'char'") else (${STRIGI_NEEDS_CHAR}) - message(FATAL "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") + message(FATAL_ERROR "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") endif (${STRIGI_NEEDS_CHAR}) endif (${STRIGI_NEEDS_SIGNED_CHAR}) macro_pop_required_vars() -- cgit v1.2.1 From fc062087e03319fa4be72da6dedf00a705fc076d Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 13 Oct 2008 22:19:04 +0000 Subject: It's IF(FOO), not IF(${FOO}) .... for some reason. svn path=/trunk/KDE/kdelibs/; revision=871115 --- modules/FindStrigi.cmake | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index dbc2c0fa..f05ed531 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -139,15 +139,16 @@ int main() MACRO_CHECK_STRIGI_API_SCREWUP( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) MACRO_CHECK_STRIGI_API_SCREWUP( "char" STRIGI_NEEDS_CHAR ) set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) - if (${STRIGI_NEEDS_SIGNED_CHAR}) + set( STRIGI_NEEDS_CHAR ${STRIGI_NEEDS_CHAR} CACHE BOOL "TRUE if strigi is 0.5.9 or before" ) + if (STRIGI_NEEDS_SIGNED_CHAR) message(STATUS "Strigi API is post-screwup, needs 'signed char'") - else (${STRIGI_NEEDS_SIGNED_CHAR}) - if (${STRIGI_NEEDS_CHAR}) - message(STATUS "Strigi API is pre-screwup check, need 'char'") - else (${STRIGI_NEEDS_CHAR}) - message(FATAL_ERROR "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") - endif (${STRIGI_NEEDS_CHAR}) - endif (${STRIGI_NEEDS_SIGNED_CHAR}) + else (STRIGI_NEEDS_SIGNED_CHAR) + if (STRIGI_NEEDS_CHAR) + message(STATUS "Strigi API is pre-screwup check, need 'char'") + else (STRIGI_NEEDS_CHAR) + message(FATAL_ERROR "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") + endif (STRIGI_NEEDS_CHAR) + endif (STRIGI_NEEDS_SIGNED_CHAR) macro_pop_required_vars() endif (STRIGI_FOUND) -- cgit v1.2.1 From 61326e9dd53472ec764a1e4223838b00e3ffc870 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 14 Oct 2008 09:26:56 +0000 Subject: minor: missed one var in mark_as_advanced svn path=/trunk/KDE/kdelibs/; revision=871241 --- modules/FindStrigi.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index f05ed531..a225b8f6 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -183,4 +183,5 @@ mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS STRIGI_LINE_ANALYZER_PREFIX STRIGI_THROUGH_ANALYZER_PREFIX STRIGI_NEEDS_SIGNED_CHAR + STRIGI_NEEDS_CHAR ) -- cgit v1.2.1 From 12593fe0ab3dc6587ea965a8c287735200f9b084 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:15:30 +0000 Subject: Move here (used by kdeedu/kdebase) svn path=/trunk/KDE/kdelibs/; revision=873785 --- modules/FindSIP.cmake | 53 ++++++++++++++++++++++ modules/FindSIP.py | 14 ++++++ modules/SIPMacros.cmake | 117 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 184 insertions(+) create mode 100644 modules/FindSIP.cmake create mode 100644 modules/FindSIP.py create mode 100644 modules/SIPMacros.cmake (limited to 'modules') diff --git a/modules/FindSIP.cmake b/modules/FindSIP.cmake new file mode 100644 index 00000000..afe8b7b1 --- /dev/null +++ b/modules/FindSIP.cmake @@ -0,0 +1,53 @@ +# Find SIP +# ~~~~~~~~ +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# +# SIP website: http://www.riverbankcomputing.co.uk/sip/index.php +# +# Find the installed version of SIP. FindSIP should be called after Python +# has been found. +# +# This file defines the following variables: +# +# SIP_VERSION - The version of SIP found expressed as a 6 digit hex number +# suitable for comparision as a string. +# +# SIP_VERSION_STR - The version of SIP found as a human readable string. +# +# SIP_EXECUTABLE - Path and filename of the SIP command line executable. +# +# SIP_INCLUDE_DIR - Directory holding the SIP C++ header file. +# +# SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed +# into. + +IF(SIP_VERSION) + # Already in cache, be silent + SET(SIP_FOUND TRUE) +ELSE(SIP_VERSION) + + FIND_FILE(_find_sip_py FindSIP.py PATHS ${CMAKE_MODULE_PATH}) + + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_sip_py} OUTPUT_VARIABLE sip_config) + IF(sip_config) + STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config}) + STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config}) + STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_EXECUTABLE ${sip_config}) + STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config}) + STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config}) + SET(SIP_FOUND TRUE) + ENDIF(sip_config) + + IF(SIP_FOUND) + IF(NOT SIP_FIND_QUIETLY) + MESSAGE(STATUS "Found SIP version: ${SIP_VERSION_STR}") + ENDIF(NOT SIP_FIND_QUIETLY) + ELSE(SIP_FOUND) + IF(SIP_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find SIP") + ENDIF(SIP_FIND_REQUIRED) + ENDIF(SIP_FOUND) + +ENDIF(SIP_VERSION) diff --git a/modules/FindSIP.py b/modules/FindSIP.py new file mode 100644 index 00000000..18db89b3 --- /dev/null +++ b/modules/FindSIP.py @@ -0,0 +1,14 @@ +# FindSIP.py +# +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +import sys +import sipconfig + +sipcfg = sipconfig.Configuration() +print("sip_version:%06.0x" % sipcfg.sip_version) +print("sip_version_str:%s" % sipcfg.sip_version_str) +print("sip_bin:%s" % sipcfg.sip_bin) +print("default_sip_dir:%s" % sipcfg.default_sip_dir) +print("sip_inc_dir:%s" % sipcfg.sip_inc_dir) diff --git a/modules/SIPMacros.cmake b/modules/SIPMacros.cmake new file mode 100644 index 00000000..5cbb168d --- /dev/null +++ b/modules/SIPMacros.cmake @@ -0,0 +1,117 @@ +# Macros for SIP +# ~~~~~~~~~~~~~~ +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# +# SIP website: http://www.riverbankcomputing.co.uk/sip/index.php +# +# This file defines the following macros: +# +# ADD_SIP_PYTHON_MODULE (MODULE_NAME MODULE_SIP [library1, libaray2, ...]) +# Specifies a SIP file to be built into a Python module and installed. +# MODULE_NAME is the name of Python module including any path name. (e.g. +# os.sys, Foo.bar etc). MODULE_SIP the path and filename of the .sip file +# to process and compile. libraryN are libraries that the Python module, +# which is typically a shared library, should be linked to. The built +# module will also be install into Python's site-packages directory. +# +# The behaviour of the ADD_SIP_PYTHON_MODULE macro can be controlled by a +# number of variables: +# +# SIP_INCLUDES - List of directories which SIP will scan through when looking +# for included .sip files. (Corresponds to the -I option for SIP.) +# +# SIP_TAGS - List of tags to define when running SIP. (Corresponds to the -t +# option for SIP.) +# +# SIP_CONCAT_PARTS - An integer which defines the number of parts the C++ code +# of each module should be split into. Defaults to 8. (Corresponds to the +# -j option for SIP.) +# +# SIP_DISABLE_FEATURES - List of feature names which should be disabled +# running SIP. (Corresponds to the -x option for SIP.) +# +# SIP_EXTRA_OPTIONS - Extra command line options which should be passed on to +# SIP. + +SET(SIP_INCLUDES) +SET(SIP_TAGS) +SET(SIP_CONCAT_PARTS 8) +SET(SIP_DISABLE_FEATURES) +SET(SIP_EXTRA_OPTIONS) + +MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) + + FIND_FILE(_print_status_cmake print_status.cmake PATHS ${CMAKE_MODULE_PATH}) + + # FIXME this removes -fvisibility=hidden from the compiler flags and has global affect. + STRING(REPLACE "-fvisibility=hidden" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) + SET(EXTRA_LINK_LIBRARIES ${ARGN}) + + STRING(REPLACE "." "/" _x ${MODULE_NAME}) + GET_FILENAME_COMPONENT(_parent_module_path ${_x} PATH) + GET_FILENAME_COMPONENT(_child_module_name ${_x} NAME) + + GET_FILENAME_COMPONENT(_module_path ${MODULE_SIP} PATH) + GET_FILENAME_COMPONENT(_abs_module_sip ${MODULE_SIP} ABSOLUTE) + + # We give this target a long logical target name. + # (This is to avoid having the library name clash with any already + # install library names. If that happens then cmake dependancy + # tracking get confused.) + STRING(REPLACE "." "_" _logical_name ${MODULE_NAME}) + SET(_logical_name "python_module_${_logical_name}") + + FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_module_path}) # Output goes in this dir. + + SET(_sip_includes) + FOREACH (_inc ${SIP_INCLUDES}) + GET_FILENAME_COMPONENT(_abs_inc ${_inc} ABSOLUTE) + LIST(APPEND _sip_includes -I ${_abs_inc}) + ENDFOREACH (_inc ) + + SET(_sip_tags) + FOREACH (_tag ${SIP_TAGS}) + LIST(APPEND _sip_tags -t ${_tag}) + ENDFOREACH (_tag) + + SET(_sip_x) + FOREACH (_x ${SIP_DISABLE_FEATURES}) + LIST(APPEND _sip_x -x ${_x}) + ENDFOREACH (_x ${SIP_DISABLE_FEATURES}) + + SET(_message "-DMESSAGE=Generating CPP code for module ${MODULE_NAME}") + SET(_sip_output_files) + FOREACH(CONCAT_NUM RANGE 0 ${SIP_CONCAT_PARTS} ) + IF( ${CONCAT_NUM} LESS ${SIP_CONCAT_PARTS} ) + SET(_sip_output_files ${_sip_output_files} ${CMAKE_CURRENT_BINARY_DIR}/${_module_path}/sip${_child_module_name}part${CONCAT_NUM}.cpp ) + ENDIF( ${CONCAT_NUM} LESS ${SIP_CONCAT_PARTS} ) + ENDFOREACH(CONCAT_NUM RANGE 0 ${SIP_CONCAT_PARTS} ) + + IF(NOT WIN32) + SET(TOUCH_COMMAND touch) + ELSE(NOT WIN32) + SET(TOUCH_COMMAND echo) + # instead of a touch command, give out the name and append to the files + # this is basically what the touch command does. + FOREACH(filename ${_sip_output_files}) + FILE(APPEND filename "") + ENDFOREACH(filename ${_sip_output_files}) + ENDIF(NOT WIN32) + ADD_CUSTOM_COMMAND( + OUTPUT ${_sip_output_files} + COMMAND ${CMAKE_COMMAND} ${_message} -P ${_print_status_cmake} + COMMAND ${TOUCH_COMMAND} ${_sip_output_files} + COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} ${_sip_includes} ${_abs_module_sip} + DEPENDS ${_abs_module_sip} + ) + + ADD_LIBRARY(${_logical_name} SHARED ${_sip_output_files} ) + TARGET_LINK_LIBRARIES(${_logical_name} ${PYTHON_LIBRARY}) + TARGET_LINK_LIBRARIES(${_logical_name} ${EXTRA_LINK_LIBRARIES}) + SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES PREFIX "" OUTPUT_NAME ${_child_module_name}) + + INSTALL(TARGETS ${_logical_name} DESTINATION "${PYTHON_SITE_PACKAGES_DIR}/${_parent_module_path}") + +ENDMACRO(ADD_SIP_PYTHON_MODULE) -- cgit v1.2.1 From fb272057e078bd4e9798c487dcc0b0d4ffb523b1 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:17:38 +0000 Subject: Install py file svn path=/trunk/KDE/kdelibs/; revision=873786 --- modules/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 9603dd19..3751cd50 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -4,7 +4,7 @@ file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} +install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} FindSIP.py DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex -- cgit v1.2.1 From 03c70a763abcb8487632533e8c4c81d0fe9c1ced Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:20:35 +0000 Subject: Move py file here too svn path=/trunk/KDE/kdelibs/; revision=873788 --- modules/CMakeLists.txt | 3 +- modules/FindPyKDE4.cmake | 157 +++++++++++++++++++++++++++++++++++++++++++++++ modules/FindPyQt.py | 22 +++++++ modules/FindPyQt4.cmake | 49 +++++++++++++++ 4 files changed, 230 insertions(+), 1 deletion(-) create mode 100644 modules/FindPyKDE4.cmake create mode 100644 modules/FindPyQt.py create mode 100644 modules/FindPyQt4.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 3751cd50..f9b305db 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,10 +1,11 @@ ## install the cmake files file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") +file(GLOB pyfiles "${CMAKE_CURRENT_SOURCE_DIR}/*.py") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} FindSIP.py +install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} ${pyfiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake new file mode 100644 index 00000000..bb28bf2b --- /dev/null +++ b/modules/FindPyKDE4.cmake @@ -0,0 +1,157 @@ +# FindPyKDE4 +# +# Checks that Python and PyKDE4 are installed and defines a couple macros: +# * PYKDE4_INSTALL_PYTHON_FILES +# * PYKDE4_ADD_UI_FILES +# * PYKDE4_ADD_EXECUTABLE +# By Simon Edwards +# This file is in the public domain. + +INCLUDE(FindPythonInterp) + +SET(PYKDE4_FOUND FALSE) + +IF(PYTHONINTERP_FOUND) + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules/FindPyKDE4.py OUTPUT_VARIABLE pykde_config) + IF(NOT pykde_config) + # Failure to run + SET(PYKDE4_FOUND FALSE) + ELSE(NOT pykde_config) + + STRING(REGEX REPLACE ".*\npykde_version:([^\n]+).*$" "\\1" PYKDE4_VERSION ${pykde_config}) + STRING(REGEX REPLACE ".*\npykde_version_str:([^\n]+).*$" "\\1" PYKDE4_VERSION_STR ${pykde_config}) + STRING(REGEX REPLACE ".*\npykde_kde_sip_flags:([^\n]+).*$" "\\1" PYKDE4_SIP_FLAGS ${pykde_config}) + STRING(REGEX REPLACE ".*\npykde_sip_dir:([^\n]+).*$" "\\1" PYKDE4_SIP_DIR ${pykde_config}) + STRING(REGEX REPLACE ".*\npykde_version_tag:([^\n]+).*$" "\\1" PYKDE4_VERSION_TAG ${pykde_config}) + MESSAGE(STATUS "Found PyKDE4 version ${PYKDE4_VERSION_STR} ${PYKDE4_SIP_DIR}") + + SET(PYKDE4_FOUND TRUE) + + # PyKDE4 doesn't install pykdeuic4 when installing via CMake. + # Fortunately pykdeuic4 isn't needed by pate. + # + ## FIND_PROGRAM(PYKDE4_PYKDEUIC_EXE pykdeuic4 PATHS)# ${PYKDE4_BIN_DIR}) + ## IF(NOT PYKDE4_PYKDEUIC_EXE) + ## MESSAGE(FATAL_ERROR "ERROR: Could not find pykdeuic4 (part of PyKDE4)") + ## ENDIF(NOT PYKDE4_PYKDEUIC_EXE) + + ########################################################################### + # This comes mostly from KDE's FindKDE4Internal.cmake + + macro(_SET_FANCY _var _value _comment) + set(predefinedvalue "${_value}") + if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + set(predefinedvalue "${KDE4_${_var}}") + endif ("${CMAKE_INSTALL_PREFIX}" STREQUAL "${KDE4_INSTALL_DIR}" AND DEFINED KDE4_${_var}) + + if (NOT DEFINED ${_var}) + set(${_var} ${predefinedvalue}) + else (NOT DEFINED ${_var}) + set(${_var} "${${_var}}" CACHE PATH "${_comment}") + endif (NOT DEFINED ${_var}) + endmacro(_SET_FANCY) + + if (WIN32) + # use relative install prefix to avoid hardcoded install pathes in cmake_install.cmake files + _set_fancy(EXEC_INSTALL_PREFIX "" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + else (WIN32) + _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries") + _set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/") + _set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + _set_fancy(SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)") + endif (WIN32) + + _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") + _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") + _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") + _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") + _set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)") + _set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files") + _set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations") + _set_fancy(MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files") + _set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files") + _set_fancy(SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/servicetypes" "The install dir for servicestypes desktop files") + _set_fancy(SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files") + _set_fancy(TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)") + _set_fancy(WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers") + _set_fancy(KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/kconf_update" "The kconf_update install dir") + # this one shouldn't be used anymore + _set_fancy(APPLNK_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "Is this still used ?") + _set_fancy(AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files") + + _set_fancy(XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/kde4" "The XDG apps dir") + _set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") + _set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") + + _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default /etc)") + _set_fancy(MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/man" "The kde man install dir (default ${CMAKE_INSTALL_PREFIX}/man/)") + _set_fancy(INFO_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/info" "The kde info install dir (default ${CMAKE_INSTALL_PREFIX}/info)") + _set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") + _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + + ENDIF(NOT pykde_config) +ENDIF(PYTHONINTERP_FOUND) + +########################################################################### +# PYKDE4_INSTALL_PYTHON_FILES(file_name...) +# +# Installs and bytes compiles Python files into the data directory for this +# project.. +# +MACRO(PYKDE4_INSTALL_PYTHON_FILES) + + ADD_CUSTOM_TARGET(pysupport ALL) + FOREACH (_current_file ${ARGN}) + + # Install the source file. + INSTALL(FILES ${_current_file} DESTINATION ${DATA_INSTALL_DIR}/${PROJECT_NAME}) + + # Byte compile and install the .pyc file. + GET_FILENAME_COMPONENT(_absfilename ${_current_file} ABSOLUTE) + GET_FILENAME_COMPONENT(_filename ${_current_file} NAME) + GET_FILENAME_COMPONENT(_filenamebase ${_current_file} NAME_WE) + GET_FILENAME_COMPONENT(_basepath ${_current_file} PATH) + SET(_bin_py ${CMAKE_BINARY_DIR}/${_basepath}/${_filename}) + SET(_bin_pyc ${CMAKE_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc) + + FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}) + + SET(_message "-DMESSAGE=Byte-compiling ${_bin_py}") + + GET_FILENAME_COMPONENT(_abs_bin_py ${_bin_py} ABSOLUTE) + IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself. + ADD_CUSTOM_COMMAND( + TARGET pysupport + COMMAND ${CMAKE_COMMAND} ${_message} -P ${CMAKE_SOURCE_DIR}/cmake/modules/print_status.cmake + COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/modules/PythonCompile.py ${_bin_py} + DEPENDS ${_absfilename} + ) + ELSE(_abs_bin_py STREQUAL ${_absfilename}) + ADD_CUSTOM_COMMAND( + TARGET pysupport + COMMAND ${CMAKE_COMMAND} ${_message} -P ${CMAKE_SOURCE_DIR}/cmake/modules/print_status.cmake + COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py} + COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/modules/PythonCompile.py ${_bin_py} + DEPENDS ${_absfilename} + ) + ENDIF(_abs_bin_py STREQUAL ${_absfilename}) + + INSTALL(FILES ${_bin_pyc} DESTINATION ${DATA_INSTALL_DIR}/${PROJECT_NAME}) + + ENDFOREACH (_current_file) +ENDMACRO(PYKDE4_INSTALL_PYTHON_FILES) + + +########################################################################### +# PYKDE4_ADD_EXECUTABLE(py_name exe_name) +# +# Creates a smybolic link with name exe_name at install time from the +# install bin directory to the Python file. The Python file is also make +# executable. +# +MACRO(PYKDE4_ADD_EXECUTABLE _pyname _exename) + INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname} -DLINK_NAME=${BIN_INSTALL_DIR}/${_exename} -P ${CMAKE_SOURCE_DIR}/cmake/modules/create_exe_symlink.cmake)" ) +ENDMACRO(PYKDE4_ADD_EXECUTABLE) diff --git a/modules/FindPyQt.py b/modules/FindPyQt.py new file mode 100644 index 00000000..1978f2d8 --- /dev/null +++ b/modules/FindPyQt.py @@ -0,0 +1,22 @@ +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +import PyQt4.pyqtconfig + +pyqtcfg = PyQt4.pyqtconfig.Configuration() +print("pyqt_version:%06.0x" % pyqtcfg.pyqt_version) +print("pyqt_version_str:%s" % pyqtcfg.pyqt_version_str) + +pyqt_version_tag = "" +in_t = False +for item in pyqtcfg.pyqt_sip_flags.split(' '): + if item=="-t": + in_t = True + elif in_t: + if item.startswith("Qt_4"): + pyqt_version_tag = item + else: + in_t = False +print("pyqt_version_tag:%s" % pyqt_version_tag) + +print("pyqt_sip_dir:%s" % pyqtcfg.pyqt_sip_dir) diff --git a/modules/FindPyQt4.cmake b/modules/FindPyQt4.cmake new file mode 100644 index 00000000..68a82cbc --- /dev/null +++ b/modules/FindPyQt4.cmake @@ -0,0 +1,49 @@ +# Find PyQt4 +# ~~~~~~~~~~ +# Copyright (c) 2007-2008, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# +# PyQt4 website: http://www.riverbankcomputing.co.uk/pyqt/index.php +# +# Find the installed version of PyQt4. FindPyQt4 should only be called after +# Python has been found. +# +# This file defines the following variables: +# +# PYQT4_VERSION - The version of PyQt4 found expressed as a 6 digit hex number +# suitable for comparision as a string +# +# PYQT4_VERSION_STR - The version of PyQt4 as a human readable string. +# +# PYQT4_VERSION_TAG - The PyQt version tag using by PyQt's sip files. +# +# PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. + +IF(EXISTS PYQT4_VERSION) + # Already in cache, be silent + SET(PYQT4_FOUND TRUE) +ELSE(EXISTS PYQT4_VERSION) + + FIND_FILE(_find_pyqt_py FindPyQt.py PATHS ${CMAKE_MODULE_PATH}) + + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_pyqt_py} OUTPUT_VARIABLE pyqt_config) + IF(pyqt_config) + STRING(REGEX REPLACE "^pyqt_version:([^\n]+).*$" "\\1" PYQT4_VERSION ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_version_str:([^\n]+).*$" "\\1" PYQT4_VERSION_STR ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_version_tag:([^\n]+).*$" "\\1" PYQT4_VERSION_TAG ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_sip_dir:([^\n]+).*$" "\\1" PYQT4_SIP_DIR ${pyqt_config}) + SET(PYQT4_FOUND TRUE) + ENDIF(pyqt_config) + + IF(PYQT4_FOUND) + IF(NOT PYQT4_FIND_QUIETLY) + MESSAGE(STATUS "Found PyQt4 version: ${PYQT4_VERSION_STR}") + ENDIF(NOT PYQT4_FIND_QUIETLY) + ELSE(PYQT4_FOUND) + IF(PYQT4_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Python") + ENDIF(PYQT4_FIND_REQUIRED) + ENDIF(PYQT4_FOUND) + +ENDIF(EXISTS PYQT4_VERSION) -- cgit v1.2.1 From 9b249b55f98ab27a4d7c8d6c092e215a10d390ea Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:22:15 +0000 Subject: Move here svn path=/trunk/KDE/kdelibs/; revision=873791 --- modules/FindPyKDE4.py | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 modules/FindPyKDE4.py (limited to 'modules') diff --git a/modules/FindPyKDE4.py b/modules/FindPyKDE4.py new file mode 100644 index 00000000..23b0d831 --- /dev/null +++ b/modules/FindPyKDE4.py @@ -0,0 +1,45 @@ +# By Simon Edwards +# modified by Paul Giannaros to add better PyKDE4 +# sip directory finding +# This file is in the public domain. +import sys +import os +import PyKDE4.pykdeconfig +import PyQt4.pyqtconfig + +if "_pkg_config" in dir(PyKDE4.pykdeconfig): + _pkg_config = PyKDE4.pykdeconfig._pkg_config + + for varname in [ + 'kde_version', + 'kde_version_extra', + 'kdebasedir', + 'kdeincdir', + 'kdelibdir', + 'libdir', + 'pykde_kde_sip_flags', + 'pykde_mod_dir', + 'pykde_modules', + 'pykde_sip_dir', + 'pykde_version', + 'pykde_version_str']: + varvalue = _pkg_config[varname] + if varname == 'pykde_sip_dir': + d = os.path.join(_pkg_config[varname], 'PyKDE4') + if os.path.exists(d): + varvalue = d + print("%s:%s\n" % (varname, varvalue)) + pykde_version_tag = '' + in_t = False + for item in _pkg_config['pykde_kde_sip_flags'].split(): + if item == "-t": + in_t = True + elif in_t: + if item.startswith("KDE_"): + pykde_version_tag = item + else: + in_t = False + print("pykde_version_tag:%s" % pykde_version_tag) + +else: + sys.exit(1) -- cgit v1.2.1 From 5376127a9774307cd37d802cc2bfe45c87961a03 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:25:08 +0000 Subject: Moved here svn path=/trunk/KDE/kdelibs/; revision=873794 --- modules/FindLibPython.py | 11 ++++++ modules/FindPythonLibrary.cmake | 83 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 94 insertions(+) create mode 100644 modules/FindLibPython.py create mode 100644 modules/FindPythonLibrary.cmake (limited to 'modules') diff --git a/modules/FindLibPython.py b/modules/FindLibPython.py new file mode 100644 index 00000000..4deabb9e --- /dev/null +++ b/modules/FindLibPython.py @@ -0,0 +1,11 @@ +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +import sys +import distutils.sysconfig + +print("exec_prefix:%s" % sys.exec_prefix) +print("short_version:%s" % sys.version[:3]) +print("long_version:%s" % sys.version.split()[0]) +print("py_inc_dir:%s" % distutils.sysconfig.get_python_inc()) +print("site_packages_dir:%s" % distutils.sysconfig.get_python_lib(plat_specific=1)) diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake new file mode 100644 index 00000000..99fefdc2 --- /dev/null +++ b/modules/FindPythonLibrary.cmake @@ -0,0 +1,83 @@ +# Find Python +# ~~~~~~~~~~~ +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# +# Find the Python interpreter and related Python directories. +# +# This file defines the following variables: +# +# PYTHON_EXECUTABLE - The path and filename of the Python interpreter. +# +# PYTHON_SHORT_VERSION - The version of the Python interpreter found, +# excluding the patch version number. (e.g. 2.5 and not 2.5.1)) +# +# PYTHON_LONG_VERSION - The version of the Python interpreter found as a human +# readable string. +# +# PYTHON_SITE_PACKAGES_DIR - Location of the Python site-packages directory. +# +# PYTHON_INCLUDE_PATH - Directory holding the python.h include file. +# +# PYTHON_LIBRARY, PYTHON_LIBRARIES- Location of the Python library. + +INCLUDE(CMakeFindFrameworks) + +IF(EXISTS PYTHON_LIBRARY) + # Already in cache, be silent + SET(PYTHONLIBRARY_FOUND TRUE) +ELSE(EXISTS PYTHON_LIBRARY) + + FIND_PACKAGE(PythonInterp REQUIRED) + + FIND_FILE(_find_lib_python_py FindLibPython.py PATHS ${CMAKE_MODULE_PATH}) + + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_lib_python_py} OUTPUT_VARIABLE python_config) + IF(python_config) + STRING(REGEX REPLACE ".*exec_prefix:([^\n]+).*$" "\\1" PYTHON_PREFIX ${python_config}) + STRING(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) + STRING(REGEX REPLACE ".*\nlong_version:([^\n]+).*$" "\\1" PYTHON_LONG_VERSION ${python_config}) + STRING(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" PYTHON_INCLUDE_PATH ${python_config}) + STRING(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) + STRING(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) + set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) + if(WIN32) + STRING(REPLACE "\\" "/" PYTHON_SITE_PACKAGES_DIR ${PYTHON_SITE_PACKAGES_DIR}) + endif(WIN32) + FIND_LIBRARY(PYTHON_LIBRARY NAMES ${PYTHON_LIBRARY_NAMES} PATHS ${PYTHON_PREFIX}/lib ${PYTHON_PREFIX}/libs NO_DEFAULT_PATH) + SET(PYTHONLIBRARY_FOUND TRUE) + ENDIF(python_config) + + # adapted from cmake's builtin FindPythonLibs + if(APPLE) + CMAKE_FIND_FRAMEWORKS(Python) + SET(PYTHON_FRAMEWORK_INCLUDES) + IF(Python_FRAMEWORKS) + # If a framework has been selected for the include path, + # make sure "-framework" is used to link it. + IF("${PYTHON_INCLUDE_PATH}" MATCHES "Python\\.framework") + SET(PYTHON_LIBRARY "") + SET(PYTHON_DEBUG_LIBRARY "") + ENDIF("${PYTHON_INCLUDE_PATH}" MATCHES "Python\\.framework") + IF(NOT PYTHON_LIBRARY) + SET (PYTHON_LIBRARY "-framework Python" CACHE FILEPATH "Python Framework" FORCE) + ENDIF(NOT PYTHON_LIBRARY) + SET(PYTHONLIBRARY_FOUND TRUE) + ENDIF(Python_FRAMEWORKS) + ENDIF(APPLE) + + IF(PYTHONLIBRARY_FOUND) + SET(PYTHON_LIBRARIES ${PYTHON_LIBRARY}) + IF(NOT PYTHONLIBRARY_FIND_QUIETLY) + MESSAGE(STATUS "Found Python executable: ${PYTHON_EXECUTABLE}") + MESSAGE(STATUS "Found Python version: ${PYTHON_LONG_VERSION}") + MESSAGE(STATUS "Found Python library: ${PYTHON_LIBRARY}") + ENDIF(NOT PYTHONLIBRARY_FIND_QUIETLY) + ELSE(PYTHONLIBRARY_FOUND) + IF(PYTHONLIBRARY_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Python") + ENDIF(PYTHONLIBRARY_FIND_REQUIRED) + ENDIF(PYTHONLIBRARY_FOUND) + +ENDIF (EXISTS PYTHON_LIBRARY) -- cgit v1.2.1 From f2b7bb7aa8a67046c6ac2f1d06e2705f36f6d8fa Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:25:56 +0000 Subject: Move here svn path=/trunk/KDE/kdelibs/; revision=873796 --- modules/PythonCompile.py | 4 ++++ modules/PythonMacros.cmake | 57 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 modules/PythonCompile.py create mode 100644 modules/PythonMacros.cmake (limited to 'modules') diff --git a/modules/PythonCompile.py b/modules/PythonCompile.py new file mode 100644 index 00000000..af859a22 --- /dev/null +++ b/modules/PythonCompile.py @@ -0,0 +1,4 @@ +# By Simon Edwards +# This file is in the public domain. +import py_compile +py_compile.main() diff --git a/modules/PythonMacros.cmake b/modules/PythonMacros.cmake new file mode 100644 index 00000000..c97450d7 --- /dev/null +++ b/modules/PythonMacros.cmake @@ -0,0 +1,57 @@ +# Python macros +# ~~~~~~~~~~~~~ +# Copyright (c) 2007, Simon Edwards +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# +# This file defines the following macros: +# +# PYTHON_INSTALL (SOURCE_FILE DESINATION_DIR) +# Install the SOURCE_FILE, which is a Python .py file, into the +# destination directory during install. The file will be byte compiled +# and both the .py file and .pyc file will be installed. + +GET_FILENAME_COMPONENT(PYTHON_MACROS_MODULE_PATH ${CMAKE_CURRENT_LIST_FILE} PATH) + +MACRO(PYTHON_INSTALL SOURCE_FILE DESINATION_DIR) + + FIND_FILE(_python_compile_py PythonCompile.py PATHS ${CMAKE_MODULE_PATH}) + + ADD_CUSTOM_TARGET(compile_python_files ALL) + + # Install the source file. + INSTALL(FILES ${SOURCE_FILE} DESTINATION ${DESINATION_DIR}) + + # Byte compile and install the .pyc file. + GET_FILENAME_COMPONENT(_absfilename ${SOURCE_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(_filename ${SOURCE_FILE} NAME) + GET_FILENAME_COMPONENT(_filenamebase ${SOURCE_FILE} NAME_WE) + GET_FILENAME_COMPONENT(_basepath ${SOURCE_FILE} PATH) + SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename}) + SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc) + + FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}) + + SET(_message "-DMESSAGE=Byte-compiling ${_bin_py}") + + GET_FILENAME_COMPONENT(_abs_bin_py ${_bin_py} ABSOLUTE) + IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself. + ADD_CUSTOM_COMMAND( + TARGET compile_python_files + COMMAND ${CMAKE_COMMAND} ${_message} -P ${PYTHON_MACROS_MODULE_PATH}/print_status.cmake + COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py} + DEPENDS ${_absfilename} + ) + ELSE(_abs_bin_py STREQUAL ${_absfilename}) + ADD_CUSTOM_COMMAND( + TARGET compile_python_files + COMMAND ${CMAKE_COMMAND} ${_message} -P ${PYTHON_MACROS_MODULE_PATH}/print_status.cmake + COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py} + COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py} + DEPENDS ${_absfilename} + ) + ENDIF(_abs_bin_py STREQUAL ${_absfilename}) + + INSTALL(FILES ${_bin_pyc} DESTINATION ${DESINATION_DIR}) +ENDMACRO(PYTHON_INSTALL) -- cgit v1.2.1 From 1dcf25e53bd361aec639e74c7d163c4726207a47 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:32:44 +0000 Subject: Move here svn path=/trunk/KDE/kdelibs/; revision=873800 --- modules/print_status.cmake | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 modules/print_status.cmake (limited to 'modules') diff --git a/modules/print_status.cmake b/modules/print_status.cmake new file mode 100644 index 00000000..907ccba6 --- /dev/null +++ b/modules/print_status.cmake @@ -0,0 +1,2 @@ +# Print a status message. Useful when you want to say something from a command in cmake. +MESSAGE(STATUS ${MESSAGE}) -- cgit v1.2.1 From fa783146c78a1b52b1c95eba9cd9e2d37f021b50 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 20 Oct 2008 07:42:11 +0000 Subject: Use cmake path svn path=/trunk/KDE/kdelibs/; revision=873804 --- modules/FindPyKDE4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake index bb28bf2b..7dc592db 100644 --- a/modules/FindPyKDE4.cmake +++ b/modules/FindPyKDE4.cmake @@ -12,7 +12,7 @@ INCLUDE(FindPythonInterp) SET(PYKDE4_FOUND FALSE) IF(PYTHONINTERP_FOUND) - EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules/FindPyKDE4.py OUTPUT_VARIABLE pykde_config) + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${DATA_INSTALL_DIR}/cmake/modules/FindPyKDE4.py OUTPUT_VARIABLE pykde_config) IF(NOT pykde_config) # Failure to run SET(PYKDE4_FOUND FALSE) -- cgit v1.2.1 From dc691a93575f3ab9151048afec53d3cad907d317 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 21 Oct 2008 06:39:09 +0000 Subject: Use get_filename_component to find cmake path svn path=/trunk/KDE/kdelibs/; revision=874279 --- modules/FindPyKDE4.cmake | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake index 7dc592db..a3654054 100644 --- a/modules/FindPyKDE4.cmake +++ b/modules/FindPyKDE4.cmake @@ -11,8 +11,10 @@ INCLUDE(FindPythonInterp) SET(PYKDE4_FOUND FALSE) +get_filename_component( current_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) + IF(PYTHONINTERP_FOUND) - EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${DATA_INSTALL_DIR}/cmake/modules/FindPyKDE4.py OUTPUT_VARIABLE pykde_config) + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${current_module_dir}/FindPyKDE4.py OUTPUT_VARIABLE pykde_config) IF(NOT pykde_config) # Failure to run SET(PYKDE4_FOUND FALSE) @@ -125,16 +127,16 @@ MACRO(PYKDE4_INSTALL_PYTHON_FILES) IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself. ADD_CUSTOM_COMMAND( TARGET pysupport - COMMAND ${CMAKE_COMMAND} ${_message} -P ${CMAKE_SOURCE_DIR}/cmake/modules/print_status.cmake - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/modules/PythonCompile.py ${_bin_py} + COMMAND ${CMAKE_COMMAND} ${_message} -P ${current_module_dir}/print_status.cmake + COMMAND ${PYTHON_EXECUTABLE} ${current_module_dir}/PythonCompile.py ${_bin_py} DEPENDS ${_absfilename} ) ELSE(_abs_bin_py STREQUAL ${_absfilename}) ADD_CUSTOM_COMMAND( TARGET pysupport - COMMAND ${CMAKE_COMMAND} ${_message} -P ${CMAKE_SOURCE_DIR}/cmake/modules/print_status.cmake + COMMAND ${CMAKE_COMMAND} ${_message} -P ${current_module_dir}/print_status.cmake COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py} - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/modules/PythonCompile.py ${_bin_py} + COMMAND ${PYTHON_EXECUTABLE} ${current_module_dir}/PythonCompile.py ${_bin_py} DEPENDS ${_absfilename} ) ENDIF(_abs_bin_py STREQUAL ${_absfilename}) -- cgit v1.2.1 From 3ccbe08963ff10657585b2a7ba79825b245c424a Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 21 Oct 2008 06:46:12 +0000 Subject: Bye bye print_status.cmake svn path=/trunk/KDE/kdelibs/; revision=874282 --- modules/FindPyKDE4.cmake | 4 ++-- modules/PythonMacros.cmake | 4 ++-- modules/SIPMacros.cmake | 3 +-- modules/print_status.cmake | 2 -- 4 files changed, 5 insertions(+), 8 deletions(-) delete mode 100644 modules/print_status.cmake (limited to 'modules') diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake index a3654054..fbc34f8b 100644 --- a/modules/FindPyKDE4.cmake +++ b/modules/FindPyKDE4.cmake @@ -127,14 +127,14 @@ MACRO(PYKDE4_INSTALL_PYTHON_FILES) IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself. ADD_CUSTOM_COMMAND( TARGET pysupport - COMMAND ${CMAKE_COMMAND} ${_message} -P ${current_module_dir}/print_status.cmake + COMMAND ${CMAKE_COMMAND} -E echo ${message} COMMAND ${PYTHON_EXECUTABLE} ${current_module_dir}/PythonCompile.py ${_bin_py} DEPENDS ${_absfilename} ) ELSE(_abs_bin_py STREQUAL ${_absfilename}) ADD_CUSTOM_COMMAND( TARGET pysupport - COMMAND ${CMAKE_COMMAND} ${_message} -P ${current_module_dir}/print_status.cmake + COMMAND ${CMAKE_COMMAND} -E echo ${message} COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py} COMMAND ${PYTHON_EXECUTABLE} ${current_module_dir}/PythonCompile.py ${_bin_py} DEPENDS ${_absfilename} diff --git a/modules/PythonMacros.cmake b/modules/PythonMacros.cmake index c97450d7..fa9b2ba7 100644 --- a/modules/PythonMacros.cmake +++ b/modules/PythonMacros.cmake @@ -39,14 +39,14 @@ MACRO(PYTHON_INSTALL SOURCE_FILE DESINATION_DIR) IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself. ADD_CUSTOM_COMMAND( TARGET compile_python_files - COMMAND ${CMAKE_COMMAND} ${_message} -P ${PYTHON_MACROS_MODULE_PATH}/print_status.cmake + COMMAND ${CMAKE_COMMAND} -E echo ${message} COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py} DEPENDS ${_absfilename} ) ELSE(_abs_bin_py STREQUAL ${_absfilename}) ADD_CUSTOM_COMMAND( TARGET compile_python_files - COMMAND ${CMAKE_COMMAND} ${_message} -P ${PYTHON_MACROS_MODULE_PATH}/print_status.cmake + COMMAND ${CMAKE_COMMAND} -E echo ${message} COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py} COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py} DEPENDS ${_absfilename} diff --git a/modules/SIPMacros.cmake b/modules/SIPMacros.cmake index 5cbb168d..acb6204b 100644 --- a/modules/SIPMacros.cmake +++ b/modules/SIPMacros.cmake @@ -43,7 +43,6 @@ SET(SIP_EXTRA_OPTIONS) MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) - FIND_FILE(_print_status_cmake print_status.cmake PATHS ${CMAKE_MODULE_PATH}) # FIXME this removes -fvisibility=hidden from the compiler flags and has global affect. STRING(REPLACE "-fvisibility=hidden" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) @@ -101,7 +100,7 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) ENDIF(NOT WIN32) ADD_CUSTOM_COMMAND( OUTPUT ${_sip_output_files} - COMMAND ${CMAKE_COMMAND} ${_message} -P ${_print_status_cmake} + COMMAND ${CMAKE_COMMAND} -E echo ${message} COMMAND ${TOUCH_COMMAND} ${_sip_output_files} COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} ${_sip_includes} ${_abs_module_sip} DEPENDS ${_abs_module_sip} diff --git a/modules/print_status.cmake b/modules/print_status.cmake deleted file mode 100644 index 907ccba6..00000000 --- a/modules/print_status.cmake +++ /dev/null @@ -1,2 +0,0 @@ -# Print a status message. Useful when you want to say something from a command in cmake. -MESSAGE(STATUS ${MESSAGE}) -- cgit v1.2.1 From 10e36af1c4760c2bab2dad00cc0a28d9386bbd12 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Tue, 21 Oct 2008 20:17:56 +0000 Subject: fix as requested by Alex: - use TO_CMAKE_PATH - include MacroPushRequiredVars hoping cmake will not include it twice svn path=/trunk/KDE/kdelibs/; revision=874560 --- modules/FindStrigi.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index a225b8f6..2a3a9d14 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -13,6 +13,7 @@ # will actually do something, Alex include(FindLibraryWithDebug) +include(MacroPushRequiredVars) if(NOT STRIGI_MIN_VERSION) set(STRIGI_MIN_VERSION "0.5.9") @@ -43,10 +44,9 @@ endif(NOT WIN32) if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) - string(REPLACE "\\" "/" _program_FILES_DIR "${_program_FILES_DIR}") endif(WIN32) -string(REPLACE "\\" "/" strigi_home "$ENV{STRIGI_HOME}") +file(TO_CMAKE_PATH "$ENV{STRIGI_HOME}" strigi_home) find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h PATHS -- cgit v1.2.1 From 2b4943f35ed5b0d14c37adb5d223f853b48705fc Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 22 Oct 2008 07:27:28 +0000 Subject: It's kformulalib and not kformula... svn path=/trunk/KDE/kdelibs/; revision=874656 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e0586912..a169781e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -522,7 +522,7 @@ else (_kdeBootStrapping) #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) - find_library(KDE4_KFORMULA_LIBRARY NAMES kformula PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + find_library(KDE4_KFORMULA_LIBRARY NAMES kformulalib PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KFORMULA_LIBS ${kformula_LIB_DEPENDS} ${KDE4_KFORMULA_LIBRARY} ) -- cgit v1.2.1 From a7f716f35e524da4fdff6ebfd0510c374fa30456 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sat, 25 Oct 2008 14:19:33 +0000 Subject: - fix library name to be more consistent with the others - fix detection - add SO versioning (public libraries without versioning should be a no-go) svn path=/trunk/KDE/kdelibs/; revision=875762 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a169781e..e0586912 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -522,7 +522,7 @@ else (_kdeBootStrapping) #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) - find_library(KDE4_KFORMULA_LIBRARY NAMES kformulalib PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + find_library(KDE4_KFORMULA_LIBRARY NAMES kformula PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KFORMULA_LIBS ${kformula_LIB_DEPENDS} ${KDE4_KFORMULA_LIBRARY} ) -- cgit v1.2.1 From 1d8590c90685bb2778c4af587601632b5ee3c2b4 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 26 Oct 2008 13:11:41 +0000 Subject: Allow to specify depend files. By default we depended just on sip module file and not against all sip files. svn path=/trunk/KDE/kdelibs/; revision=876086 --- modules/SIPMacros.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/SIPMacros.cmake b/modules/SIPMacros.cmake index acb6204b..c9ca7136 100644 --- a/modules/SIPMacros.cmake +++ b/modules/SIPMacros.cmake @@ -43,7 +43,6 @@ SET(SIP_EXTRA_OPTIONS) MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) - # FIXME this removes -fvisibility=hidden from the compiler flags and has global affect. STRING(REPLACE "-fvisibility=hidden" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) SET(EXTRA_LINK_LIBRARIES ${ARGN}) @@ -103,7 +102,7 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) COMMAND ${CMAKE_COMMAND} -E echo ${message} COMMAND ${TOUCH_COMMAND} ${_sip_output_files} COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} ${_sip_includes} ${_abs_module_sip} - DEPENDS ${_abs_module_sip} + DEPENDS ${_abs_module_sip} ${SIP_EXTRA_FILES_DEPEND} ) ADD_LIBRARY(${_logical_name} SHARED ${_sip_output_files} ) -- cgit v1.2.1 From c38c295758f43bd8850b5ab36e28d91e870fa02c Mon Sep 17 00:00:00 2001 From: Xavier Vello Date: Tue, 4 Nov 2008 10:37:34 +0000 Subject: add a warning if only version 3 is found, as version 2 is needed svn path=/trunk/KDE/kdelibs/; revision=879904 --- modules/FindMusicBrainz.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake index 9f2ad985..cc0c0e8f 100644 --- a/modules/FindMusicBrainz.cmake +++ b/modules/FindMusicBrainz.cmake @@ -10,8 +10,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - if(MUSICBRAINZ_INCLUDE_DIR AND MUSICBRAINZ_LIBRARIES) set(MUSICBRAINZ_FIND_QUIETLY TRUE) endif(MUSICBRAINZ_INCLUDE_DIR AND MUSICBRAINZ_LIBRARIES) @@ -20,6 +18,11 @@ FIND_PATH(MUSICBRAINZ_INCLUDE_DIR musicbrainz/musicbrainz.h) FIND_LIBRARY( MUSICBRAINZ_LIBRARIES NAMES musicbrainz) +# We need version 2, version 3 is source-incompatible +FIND_PATH(MUSICBRAINZ3_INCLUDE_DIR musicbrainz3/musicbrainz.h) +if(MUSICBRAINZ3_INCLUDE_DIR AND NOT MUSICBRAINZ_INCLUDE_DIR) + message(STATUS "\nIncompatible version 3 of the musicbrainz includes detected. Version 2 is needed.\n") +endif(MUSICBRAINZ3_INCLUDE_DIR AND NOT MUSICBRAINZ_INCLUDE_DIR) include(FindPackageHandleStandardArgs) find_package_handle_standard_args( MusicBrainz DEFAULT_MSG -- cgit v1.2.1 From aad79b808d22e0fe77e35214a7ed07fef79aef51 Mon Sep 17 00:00:00 2001 From: Xavier Vello Date: Tue, 4 Nov 2008 12:24:02 +0000 Subject: more explicit message svn path=/trunk/KDE/kdelibs/; revision=879947 --- modules/FindMusicBrainz.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindMusicBrainz.cmake b/modules/FindMusicBrainz.cmake index cc0c0e8f..c93b2dcc 100644 --- a/modules/FindMusicBrainz.cmake +++ b/modules/FindMusicBrainz.cmake @@ -21,7 +21,7 @@ FIND_LIBRARY( MUSICBRAINZ_LIBRARIES NAMES musicbrainz) # We need version 2, version 3 is source-incompatible FIND_PATH(MUSICBRAINZ3_INCLUDE_DIR musicbrainz3/musicbrainz.h) if(MUSICBRAINZ3_INCLUDE_DIR AND NOT MUSICBRAINZ_INCLUDE_DIR) - message(STATUS "\nIncompatible version 3 of the musicbrainz includes detected. Version 2 is needed.\n") + message(STATUS "\nIncompatible version 3.x of the musicbrainz includes detected. Version 2.x is needed.\n") endif(MUSICBRAINZ3_INCLUDE_DIR AND NOT MUSICBRAINZ_INCLUDE_DIR) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From c2384636b87fae03be2ffbe61ed836fe62891c07 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 4 Nov 2008 20:08:05 +0000 Subject: Pino was right it's better to use KDE4_PLASMA_LIBS find method to keep compatibility Remove all requires to Plasma svn path=/trunk/KDE/kdelibs/; revision=880118 --- modules/FindKDE4Internal.cmake | 6 ++++++ modules/FindPlasma.cmake | 30 +++++------------------------- 2 files changed, 11 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e0586912..1de515b7 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -44,6 +44,7 @@ # KDE4_KNEPOMUK_LIBRARY - the knepomuk library # KDE4_KMETADATA_LIBRARY - the kmetadata library # KDE4_KFORMULA_LIBRARY - the kformula library +# KDE4_PLASMA_LIBRARY - the plasma library # # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below @@ -73,6 +74,7 @@ # KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries # KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries # KDE4_KFORMULA_LIBS - the kformula library and all depending librairies +# KDE4_PLASMA_LIBS - the plasma library and all depending librairies # # This module defines a bunch of variables used as locations for install directories. # They can be relative (to CMAKE_INSTALL_PREFIX) or absolute. @@ -525,6 +527,10 @@ else (_kdeBootStrapping) find_library(KDE4_KFORMULA_LIBRARY NAMES kformula PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) set(KDE4_KFORMULA_LIBS ${kformula_LIB_DEPENDS} ${KDE4_KFORMULA_LIBRARY} ) + find_library(KDE4_PLASMA_LIBRARY NAMES plasma PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) + set(KDE4_PLASMA_LIBS ${plasma_LIB_DEPENDS} ${KDE4_PLASMA_LIBRARY} ) + + get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index 05a646b8..fc724342 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -8,31 +8,11 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (PLASMA_INCLUDE_DIR AND PLASMA_LIBS) - # Already in cache, be silent - set(Plasma_FIND_QUIETLY TRUE) -endif (PLASMA_INCLUDE_DIR AND PLASMA_LIBS) +set(PLASMA_LIBS ${KDE4_PLASMA_LIBS} ) +set(PLASMA_INCLUDE_DIR ${KDE4_INCLUDE_DIR}) - -find_path(PLASMA_INCLUDE_DIR NAMES plasma/plasma.h - PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} -) - -find_library(PLASMA_LIBS NAMES plasma - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} -) - -include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Plasma DEFAULT_MSG PLASMA_LIBS PLASMA_INCLUDE_DIR ) - -if (PLASMA_FOUND) - find_file(PLASMA_OPENGL_FOUND plasma/glapplet.h - PATHS ${PLASMA_INCLUDE_DIR} - NO_DEFAULT_PATH) -endif (PLASMA_FOUND) +find_file(PLASMA_OPENGL_FOUND plasma/glapplet.h + PATHS ${PLASMA_INCLUDE_DIR} + NO_DEFAULT_PATH) mark_as_advanced(PLASMA_INCLUDE_DIR PLASMA_LIBS) -- cgit v1.2.1 From 3d39f82870e8a1d4eea0c4c02473686a73a4890f Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 5 Nov 2008 00:32:24 +0000 Subject: make optional detection of python work if python is not installed svn path=/trunk/KDE/kdelibs/; revision=880249 --- modules/FindPythonLibrary.cmake | 105 +++++++++++++++++++++------------------- 1 file changed, 54 insertions(+), 51 deletions(-) (limited to 'modules') diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index 99fefdc2..dd33ab37 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -24,60 +24,63 @@ INCLUDE(CMakeFindFrameworks) -IF(EXISTS PYTHON_LIBRARY) - # Already in cache, be silent - SET(PYTHONLIBRARY_FOUND TRUE) -ELSE(EXISTS PYTHON_LIBRARY) +if(EXISTS PYTHON_LIBRARY) + # Already in cache, be silent + set(PYTHONLIBRARY_FOUND TRUE) +else(EXISTS PYTHON_LIBRARY) - FIND_PACKAGE(PythonInterp REQUIRED) + FIND_PACKAGE(PythonInterp) - FIND_FILE(_find_lib_python_py FindLibPython.py PATHS ${CMAKE_MODULE_PATH}) + if(PYTHONINTERP_FOUND) - EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_lib_python_py} OUTPUT_VARIABLE python_config) - IF(python_config) - STRING(REGEX REPLACE ".*exec_prefix:([^\n]+).*$" "\\1" PYTHON_PREFIX ${python_config}) - STRING(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) - STRING(REGEX REPLACE ".*\nlong_version:([^\n]+).*$" "\\1" PYTHON_LONG_VERSION ${python_config}) - STRING(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" PYTHON_INCLUDE_PATH ${python_config}) - STRING(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) - STRING(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) - set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) - if(WIN32) - STRING(REPLACE "\\" "/" PYTHON_SITE_PACKAGES_DIR ${PYTHON_SITE_PACKAGES_DIR}) - endif(WIN32) - FIND_LIBRARY(PYTHON_LIBRARY NAMES ${PYTHON_LIBRARY_NAMES} PATHS ${PYTHON_PREFIX}/lib ${PYTHON_PREFIX}/libs NO_DEFAULT_PATH) - SET(PYTHONLIBRARY_FOUND TRUE) - ENDIF(python_config) + FIND_FILE(_find_lib_python_py FindLibPython.py PATHS ${CMAKE_MODULE_PATH}) - # adapted from cmake's builtin FindPythonLibs - if(APPLE) - CMAKE_FIND_FRAMEWORKS(Python) - SET(PYTHON_FRAMEWORK_INCLUDES) - IF(Python_FRAMEWORKS) - # If a framework has been selected for the include path, - # make sure "-framework" is used to link it. - IF("${PYTHON_INCLUDE_PATH}" MATCHES "Python\\.framework") - SET(PYTHON_LIBRARY "") - SET(PYTHON_DEBUG_LIBRARY "") - ENDIF("${PYTHON_INCLUDE_PATH}" MATCHES "Python\\.framework") - IF(NOT PYTHON_LIBRARY) - SET (PYTHON_LIBRARY "-framework Python" CACHE FILEPATH "Python Framework" FORCE) - ENDIF(NOT PYTHON_LIBRARY) - SET(PYTHONLIBRARY_FOUND TRUE) - ENDIF(Python_FRAMEWORKS) - ENDIF(APPLE) + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_lib_python_py} OUTPUT_VARIABLE python_config) + if(python_config) + STRING(REGEX REPLACE ".*exec_prefix:([^\n]+).*$" "\\1" PYTHON_PREFIX ${python_config}) + STRING(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) + STRING(REGEX REPLACE ".*\nlong_version:([^\n]+).*$" "\\1" PYTHON_LONG_VERSION ${python_config}) + STRING(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" PYTHON_INCLUDE_PATH ${python_config}) + STRING(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) + STRING(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) + set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) + if(WIN32) + STRING(REPLACE "\\" "/" PYTHON_SITE_PACKAGES_DIR ${PYTHON_SITE_PACKAGES_DIR}) + endif(WIN32) + FIND_LIBRARY(PYTHON_LIBRARY NAMES ${PYTHON_LIBRARY_NAMES} PATHS ${PYTHON_PREFIX}/lib ${PYTHON_PREFIX}/libs NO_DEFAULT_PATH) + set(PYTHONLIBRARY_FOUND TRUE) + endif(python_config) - IF(PYTHONLIBRARY_FOUND) - SET(PYTHON_LIBRARIES ${PYTHON_LIBRARY}) - IF(NOT PYTHONLIBRARY_FIND_QUIETLY) - MESSAGE(STATUS "Found Python executable: ${PYTHON_EXECUTABLE}") - MESSAGE(STATUS "Found Python version: ${PYTHON_LONG_VERSION}") - MESSAGE(STATUS "Found Python library: ${PYTHON_LIBRARY}") - ENDIF(NOT PYTHONLIBRARY_FIND_QUIETLY) - ELSE(PYTHONLIBRARY_FOUND) - IF(PYTHONLIBRARY_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Python") - ENDIF(PYTHONLIBRARY_FIND_REQUIRED) - ENDIF(PYTHONLIBRARY_FOUND) + # adapted from cmake's builtin FindPythonLibs + if(APPLE) + CMAKE_FIND_FRAMEWORKS(Python) + set(PYTHON_FRAMEWORK_INCLUDES) + if(Python_FRAMEWORKS) + # If a framework has been selected for the include path, + # make sure "-framework" is used to link it. + if("${PYTHON_INCLUDE_PATH}" MATCHES "Python\\.framework") + set(PYTHON_LIBRARY "") + set(PYTHON_DEBUG_LIBRARY "") + endif("${PYTHON_INCLUDE_PATH}" MATCHES "Python\\.framework") + if(NOT PYTHON_LIBRARY) + set (PYTHON_LIBRARY "-framework Python" CACHE FILEPATH "Python Framework" FORCE) + endif(NOT PYTHON_LIBRARY) + set(PYTHONLIBRARY_FOUND TRUE) + endif(Python_FRAMEWORKS) + endif(APPLE) + endif(PYTHONINTERP_FOUND) -ENDIF (EXISTS PYTHON_LIBRARY) + if(PYTHONLIBRARY_FOUND) + set(PYTHON_LIBRARIES ${PYTHON_LIBRARY}) + if(NOT PYTHONLIBRARY_FIND_QUIETLY) + message(STATUS "Found Python executable: ${PYTHON_EXECUTABLE}") + message(STATUS "Found Python version: ${PYTHON_LONG_VERSION}") + message(STATUS "Found Python library: ${PYTHON_LIBRARY}") + endif(NOT PYTHONLIBRARY_FIND_QUIETLY) + else(PYTHONLIBRARY_FOUND) + if(PYTHONLIBRARY_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Python") + endif(PYTHONLIBRARY_FIND_REQUIRED) + endif(PYTHONLIBRARY_FOUND) + +endif (EXISTS PYTHON_LIBRARY) -- cgit v1.2.1 From 62abaeb6540872f26b143978bbd5ca3d865c7388 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 5 Nov 2008 12:26:28 +0000 Subject: Minor fix svn path=/trunk/KDE/kdelibs/; revision=880412 --- modules/FindPlasma.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index fc724342..e204fc76 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -1,7 +1,5 @@ -# cmake macro to see if we have Plasma from KDE workspace - # PLASMA_INCLUDE_DIR -# PLASMA_FOUND +# PLASMA_LIBS # Copyright (C) 2007 Brad Hards # # Redistribution and use is allowed according to the terms of the BSD license. -- cgit v1.2.1 From 5daae928ee7f18f2d8efb43ab7b9b0c731b9e4a0 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Wed, 5 Nov 2008 14:32:59 +0000 Subject: fix PLASMA_FOUND svn path=/trunk/KDE/kdelibs/; revision=880466 --- modules/FindPlasma.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index e204fc76..9346067b 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -8,6 +8,7 @@ set(PLASMA_LIBS ${KDE4_PLASMA_LIBS} ) set(PLASMA_INCLUDE_DIR ${KDE4_INCLUDE_DIR}) +set(PLASMA_FOUND true) find_file(PLASMA_OPENGL_FOUND plasma/glapplet.h PATHS ${PLASMA_INCLUDE_DIR} -- cgit v1.2.1 From 3d3ef2e990513a3e28583c6d8aa57fc2112293b4 Mon Sep 17 00:00:00 2001 From: Marijn Kruisselbrink Date: Thu, 6 Nov 2008 11:31:26 +0000 Subject: kfile does not link to kde3support, so there is no reason the define KDE4_KFILE_LIBS to actually include KDE3SUPPORT svn path=/trunk/KDE/kdelibs/; revision=880736 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1de515b7..d4c65f91 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -361,7 +361,7 @@ if (_kdeBootStrapping) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) - set(KDE4_KFILE_LIBS ${KDE4_KDE3SUPPORT_LIBS} kfile) + set(KDE4_KFILE_LIBS kfile) set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) set(EXECUTABLE_OUTPUT_PATH ${kdelibs_BINARY_DIR}/bin ) -- cgit v1.2.1 From 668d29cd5e4ecd6c95c583066a7e0ea0b93b35f2 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 6 Nov 2008 17:06:50 +0000 Subject: when compiling kdelibs, KDE4_KFILE_LIBS should contain also the dependencies of it, including kio aka make it link in the right way svn path=/trunk/KDE/kdelibs/; revision=880848 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d4c65f91..ea018d02 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -361,7 +361,7 @@ if (_kdeBootStrapping) set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) - set(KDE4_KFILE_LIBS kfile) + set(KDE4_KFILE_LIBS ${KDE4_KIO_LIBS} kfile) set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) set(EXECUTABLE_OUTPUT_PATH ${kdelibs_BINARY_DIR}/bin ) -- cgit v1.2.1 From a101b5fdebe646d8a68bc365ad25d6e60060b15f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 6 Nov 2008 17:28:11 +0000 Subject: -remove setting CMAKE_CONFIGURATION_TYPES, this is intended only for the non-Makefile generators, but was set always, and for Makefile-generators only CMAKE_BUILD_TYPE should be set, otherwise you can get strange effects e.g. when installing (then some configuration from CMAKE_CONFIGURATION_TYPES instead of the one from CMAKE_BUILD_TYPE might be installed) See http://lists.kde.org/?l=kde-buildsystem&m=122592542916378&w=2 Alex svn path=/trunk/KDE/kdelibs/; revision=880856 --- modules/FindKDE4Internal.cmake | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ea018d02..c1872836 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -202,7 +202,7 @@ # # A note on the possible values for CMAKE_BUILD_TYPE and how KDE handles # the flags for those buildtypes. FindKDE4Internal supports the values -# Debug, Release, Relwithdebinfo, Profile and Debugfull +# Debug, Release, RelWithDebInfo, Profile and Debugfull # # Release # optimised for speed, qDebug/kDebug turned off, no debug symbols @@ -1030,8 +1030,6 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) - set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") @@ -1139,8 +1137,6 @@ endif (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_C_COMPILER MATCHES "icc") - set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") -- cgit v1.2.1 From f323a8b8799f0cdce1bb97384009b125ec7631a5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 7 Nov 2008 21:03:10 +0000 Subject: -print a warning for users which have not yet updated to cmake 2.6.2 Alex svn path=/trunk/KDE/kdelibs/; revision=881351 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a17c1d4c..ae1d5912 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1154,6 +1154,7 @@ endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) # "overloaded" by a macro, the original command gets a "_" prepended, so it # is still available. if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" MATCHES "^2\\.6\\.[01]$") + message(STATUS "Your are still using CMake ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}, please update to CMake 2.6.2.\nIt will be required next monday.") macro(TARGET_LINK_LIBRARIES) if(NOT "${ARGV1}" STREQUAL "LINK_INTERFACE_LIBRARIES") _target_link_libraries(${ARGN}) @@ -1178,7 +1179,6 @@ macro (KDE4_SET_CUSTOM_TARGET_PROPERTY) message(FATAL_ERROR "KDE4_SET_CUSTOM_TARGET_PROPERTY() is deprecated, just use a simple variable instead") endmacro (KDE4_SET_CUSTOM_TARGET_PROPERTY) - macro (KDE4_GET_CUSTOM_TARGET_PROPERTY) message(FATAL_ERROR "KDE4_GET_CUSTOM_TARGET_PROPERTY() is deprecated, just use a simple variable instead") endmacro (KDE4_GET_CUSTOM_TARGET_PROPERTY) -- cgit v1.2.1 From 8abaec3b736f6a3741fe1781a5667f3bff18ab39 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Sat, 8 Nov 2008 13:43:59 +0000 Subject: make it possible to add application icons to kdeinit applications too. This is a rather strange hack but it works and so I want to keep it for now. It does not change anything on Linux. svn path=/trunk/KDE/kdelibs/; revision=881571 --- modules/KDE4Macros.cmake | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ae1d5912..0853fcd1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -669,6 +669,16 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) # library instead against the executable, under windows we want to have everything in the executable, but for compatibility we have to # keep the library there- if(WIN32) + if (MINGW) + list(FIND _SRCS ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_res.o _res_position) + else(MINGW) + list(FIND _SRCS ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}.rc _res_position) + endif(MINGW) + if(NOT _res_position EQUAL -1) + list(GET _SRCS ${_res_position} _resourcefile) + list(REMOVE_AT _SRCS ${_res_position}) + endif(NOT _res_position EQUAL -1) + set(_KDEINIT4_TARGET_NAME_ ${_target_NAME}) string(REGEX REPLACE "[-]" "_" _KDEINIT4_TARGET_NAME_ "${_KDEINIT4_TARGET_NAME_}") configure_file(${KDE4_MODULE_DIR}/kde4init_win32lib_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_win32lib_dummy.cpp) @@ -676,10 +686,10 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) - kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${_resourcefile}) else (KDE4_ENABLE_FINAL) - kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${_resourcefile}) endif (KDE4_ENABLE_FINAL) set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) @@ -1004,14 +1014,20 @@ endmacro (KDE4_ADD_WIN32_APP_ICON) # this macro adds an application icon to the specified target # mac osx notes : the application icon is added to a Mac OS X bundle so that Finder and friends show the right thing. # win32 notes: the application icon(s) are compiled into the application +# there is some workaround in kde4_add_kdeinit_executable to make it possible for those applications as well # parameters: -# 'appsources' - specifies the list of source files +# 'appsources' - specifies the list of source files; this has to end in _SRCS or _KDEINIT_SRCS +# (see the replace stuff below) # 'pattern' - regular expression for searching application icons -# example: KDE4_ADD_APP_ICON( myapp_sources "pics/cr*-myapp.png") -# example: KDE4_ADD_APP_ICON( myapp_sources "icons/oxygen/*/apps/myapp.png") +# example: KDE4_ADD_APP_ICON( myapp_SRCS "pics/cr*-myapp.png") +# example: KDE4_ADD_APP_ICON( myapp_KDEINIT_SRCS "icons/oxygen/*/apps/myapp.png") macro (KDE4_ADD_APP_ICON appsources pattern) - string(REPLACE _SRCS "" target ${appsources}) + string(REPLACE _KDEINIT_SRCS "" target ${appsources}) + if(${appsources} STREQUAL ${target}) + string(REPLACE _SRCS "" target ${appsources}) + endif(${appsources} STREQUAL target) + if (WIN32) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) find_program(WINDRES_EXECUTABLE NAMES windres) -- cgit v1.2.1 From b8f83af168a2547676827542964508ec62f44cc9 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Sat, 8 Nov 2008 14:54:33 +0000 Subject: SVN_SILENT: correct endif svn path=/trunk/KDE/kdelibs/; revision=881602 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0853fcd1..bae0b39b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1026,7 +1026,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) string(REPLACE _KDEINIT_SRCS "" target ${appsources}) if(${appsources} STREQUAL ${target}) string(REPLACE _SRCS "" target ${appsources}) - endif(${appsources} STREQUAL target) + endif(${appsources} STREQUAL ${target}) if (WIN32) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) -- cgit v1.2.1 From bbf81d6e9d7e8d520fe01850a975a257e7c71754 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaros=C5=82aw=20Staniek?= Date: Sat, 8 Nov 2008 17:06:19 +0000 Subject: detection on mysql much improved, esp. on Windows (taken form branches/work/predicate) svn path=/trunk/KDE/kdelibs/; revision=881641 --- modules/FindMySQL.cmake | 116 ++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 102 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index 21604c73..4d32661c 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -1,36 +1,124 @@ -# - Find MySQL / MySQL Embedded +# - Try to find MySQL / MySQL Embedded library # Find the MySQL includes and client library # This module defines # MYSQL_INCLUDE_DIR, where to find mysql.h # MYSQL_LIBRARIES, the libraries needed to use MySQL. +# MYSQL_LIB_DIR, path to the MYSQL_LIBRARIES # MYSQL_EMBEDDED_LIBRARIES, the libraries needed to use MySQL Embedded. +# MYSQL_EMBEDDED_LIB_DIR, path to the MYSQL_EMBEDDED_LIBRARIES # MYSQL_FOUND, If false, do not try to use MySQL. # MYSQL_EMBEDDED_FOUND, If false, do not try to use MySQL Embedded. -# Copyright (c) 2006, Jaroslaw Staniek, +# Copyright (c) 2006-2008, Jarosław Staniek # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +include(CheckCXXSourceCompiles) +include(MacroPushRequiredVars) -find_path(MYSQL_INCLUDE_DIR mysql.h - /usr/include/mysql - /usr/local/include/mysql -) +if(WIN32) + find_path(MYSQL_INCLUDE_DIR mysql.h + PATHS + $ENV{MYSQL_INCLUDE_DIR} + $ENV{MYSQL_DIR}/include + $ENV{ProgramFiles}/MySQL/*/include + $ENV{SystemDrive}/MySQL/*/include + ) +else(WIN32) + find_path(MYSQL_INCLUDE_DIR mysql.h + PATHS + $ENV{MYSQL_INCLUDE_DIR} + $ENV{MYSQL_DIR}/include + /usr/include/mysql + /usr/local/include/mysql + /usr/local/mysql/include + /usr/local/mysql/include/mysql + /opt/mysql/mysql/include + /opt/mysql/mysql/include/mysql + ) +endif(WIN32) -find_library(MYSQL_LIBRARIES NAMES mysqlclient - PATHS - /usr/lib/mysql - /usr/local/lib/mysql -) +if(WIN32) + # path suffix for debug/release mode + # binary_dist: mysql binary distribution + # build_dist: custom build + if(CMAKE_BUILD_TYPE STREQUAL "Debug") + set(binary_dist debug) + set(build_dist Debug) + else(CMAKE_BUILD_TYPE STREQUAL "Debug") + ADD_DEFINITIONS(-DDBUG_OFF) + set(binary_dist opt) + set(build_dist Release) + endif(CMAKE_BUILD_TYPE STREQUAL "Debug") + +# find_library(MYSQL_LIBRARIES NAMES mysqlclient + find_library(MYSQL_LIBRARIES NAMES libmysql + PATHS + $ENV{MYSQL_DIR}/lib/${binary_dist} + $ENV{MYSQL_DIR}/libmysql/${build_dist} + $ENV{MYSQL_DIR}/client/${build_dist} + $ENV{ProgramFiles}/MySQL/*/lib/${binary_dist} + $ENV{SystemDrive}/MySQL/*/lib/${binary_dist} + ) +else(WIN32) +# find_library(MYSQL_LIBRARIES NAMES mysqlclient + find_library(MYSQL_LIBRARIES NAMES libmysql + PATHS + $ENV{MYSQL_DIR}/libmysql_r/.libs + $ENV{MYSQL_DIR}/lib + $ENV{MYSQL_DIR}/lib/mysql + /usr/lib/mysql + /usr/local/lib/mysql + /usr/local/mysql/lib + /usr/local/mysql/lib/mysql + /opt/mysql/mysql/lib + /opt/mysql/mysql/lib/mysql + ) +endif(WIN32) + +if(WIN32) + set(MYSQL_LIB_PATHS + $ENV{MYSQL_DIR}/lib/opt + $ENV{MYSQL_DIR}/client/release + $ENV{ProgramFiles}/MySQL/*/lib/opt + $ENV{SystemDrive}/MySQL/*/lib/opt + ) + find_library(MYSQL_LIBRARIES NAMES mysqlclient + PATHS + ${MYSQL_LIB_PATHS} + ) +else(WIN32) + set(MYSQL_LIB_PATHS + $ENV{MYSQL_DIR}/libmysql_r/.libs + $ENV{MYSQL_DIR}/lib + $ENV{MYSQL_DIR}/lib/mysql + /usr/lib/mysql + /usr/local/lib/mysql + /usr/local/mysql/lib + /usr/local/mysql/lib/mysql + /opt/mysql/mysql/lib + /opt/mysql/mysql/lib/mysql + ) + find_library(MYSQL_LIBRARIES NAMES mysqlclient + PATHS + ${MYSQL_LIB_PATHS} + ) +endif(WIN32) find_library(MYSQL_EMBEDDED_LIBRARIES NAMES mysqld PATHS - /usr/lib/mysql - /usr/local/lib/mysql - /opt/mysql/lib/mysql + ${MYSQL_LIB_PATHS} ) +if(MYSQL_LIBRARIES) + get_filename_component(MYSQL_LIB_DIR ${MYSQL_LIBRARIES} PATH) +endif(MYSQL_LIBRARIES) + +if(MYSQL_EMBEDDED_LIBRARIES) + get_filename_component(MYSQL_EMBEDDED_LIB_DIR ${MYSQL_EMBEDDED_LIBRARIES} PATH) +endif(MYSQL_EMBEDDED_LIBRARIES) + macro_push_required_vars() set( CMAKE_REQUIRED_INCLUDES ${MYSQL_INCLUDE_DIR} ) set( CMAKE_REQUIRED_LIBRARIES ${MYSQL_EMBEDDED_LIBRARIES} ) -- cgit v1.2.1 From b670cd61d11bc6aee66bd95f53cc2512ffd98e0f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 9 Nov 2008 16:59:29 +0000 Subject: -use PATH_SUFFIXES instead of listing each subdir twice, once with and once without mysql appended Alex Jarosloaw: can you please check that this still works as you expect ? CCMAIL: js@iidea.pl svn path=/trunk/KDE/kdelibs/; revision=882056 --- modules/FindMySQL.cmake | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index 4d32661c..6a0f8941 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -30,12 +30,10 @@ else(WIN32) PATHS $ENV{MYSQL_INCLUDE_DIR} $ENV{MYSQL_DIR}/include - /usr/include/mysql - /usr/local/include/mysql /usr/local/mysql/include - /usr/local/mysql/include/mysql /opt/mysql/mysql/include - /opt/mysql/mysql/include/mysql + PATH_SUFFIXES + mysql ) endif(WIN32) @@ -68,12 +66,10 @@ else(WIN32) $ENV{MYSQL_DIR}/libmysql_r/.libs $ENV{MYSQL_DIR}/lib $ENV{MYSQL_DIR}/lib/mysql - /usr/lib/mysql - /usr/local/lib/mysql /usr/local/mysql/lib - /usr/local/mysql/lib/mysql /opt/mysql/mysql/lib - /opt/mysql/mysql/lib/mysql + PATH_SUFFIXES + mysql ) endif(WIN32) @@ -93,12 +89,10 @@ else(WIN32) $ENV{MYSQL_DIR}/libmysql_r/.libs $ENV{MYSQL_DIR}/lib $ENV{MYSQL_DIR}/lib/mysql - /usr/lib/mysql - /usr/local/lib/mysql /usr/local/mysql/lib - /usr/local/mysql/lib/mysql /opt/mysql/mysql/lib - /opt/mysql/mysql/lib/mysql + PATH_SUFFIXES + mysql ) find_library(MYSQL_LIBRARIES NAMES mysqlclient PATHS -- cgit v1.2.1 From 2ff39e5b0dff557ad514a2b8f1e062a6795d6108 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 9 Nov 2008 17:47:01 +0000 Subject: Convert it svn path=/trunk/KDE/kdelibs/; revision=882079 --- modules/FindSqlite.cmake | 76 +++++++++++++++++++++++++----------------------- 1 file changed, 39 insertions(+), 37 deletions(-) (limited to 'modules') diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index 96f32929..29a23612 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -1,41 +1,43 @@ -# - Try to find the SQLITE library +# - Try to find Sqlite # Once done this will define # -# SQLITE_FOUND - system has sqlite -# SQLITE_INCLUDE_DIR - the sqlite include directory -# SQLITE_LIBRARIES - Link these to use sqlite -# SQLITE_DEFINITIONS - Compiler switches required for using sqlite +# SQLITE_FOUND - system has Sqlite +# SQLITE_INCLUDE_DIR - the Sqlite include directory +# SQLITE_LIBRARIES - Link these to use Sqlite +# SQLITE_DEFINITIONS - Compiler switches required for using Sqlite +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. # -if (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) - - # in cache already - SET(SQLITE_FOUND TRUE) - -else (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) - IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(sqlite3 _SQLITEIncDir _SQLITELinkDir _SQLITELinkFlags _SQLITECflags) - - set(SQLITE_DEFINITIONS ${_SQLITECflags}) - ENDIF (NOT WIN32) - - FIND_PATH(SQLITE_INCLUDE_DIR sqlite3.h - ${_SQLITEIncDir} - ) - - FIND_LIBRARY(SQLITE_LIBRARIES NAMES sqlite3 - PATHS - ${_SQLITELinkDir} - ) - - - include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sqlite DEFAULT_MSG SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) - - MARK_AS_ADVANCED(SQLITE_INCLUDE_DIR SQLITE_LIBRARIES) - -endif (SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES) + +if ( SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) + # in cache already + SET(Sqlite_FIND_QUIETLY TRUE) +endif ( SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) + +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +if( NOT WIN32 ) + INCLUDE(FindPkgConfig) + + PKG_CHECK_MODULES(SQLITE sqlite3) + + SET(SQLITE_DEFINITIONS ${SQLITE_CFLAGS}) +endif( NOT WIN32 ) + +FIND_PATH(SQLITE_INCLUDE_DIR NAMES sqlite3.h + PATHS + ${SQLITE_INCLUDE_DIRS} +) + +FIND_LIBRARY(SQLITE_LIBRARIES NAMES sqlite3 + PATHS + ${SQLITE_LIBRARY_DIRS} +) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sqlite DEFAULT_MSG SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) + +# show the SQLITE_INCLUDE_DIR and SQLITE_LIBRARIES variables only in the advanced view +MARK_AS_ADVANCED(SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) + -- cgit v1.2.1 From d678f724c1a1371cd7f9db1ad516e968e0342b10 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 9 Nov 2008 20:36:33 +0000 Subject: -add ctest script files to make running nightly builds easier Alex svn path=/trunk/KDE/kdelibs/; revision=882117 --- modules/KDE4CTestNightlySetup.cmake | 102 ++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 modules/KDE4CTestNightlySetup.cmake (limited to 'modules') diff --git a/modules/KDE4CTestNightlySetup.cmake b/modules/KDE4CTestNightlySetup.cmake new file mode 100644 index 00000000..4c21a583 --- /dev/null +++ b/modules/KDE4CTestNightlySetup.cmake @@ -0,0 +1,102 @@ +# The following variables have to be set before including this file: +# CTEST_CMAKE_GENERATOR +# CTEST_UPDATE_TYPE (if update from cvs or svn is required) +# SVN_REPOSITORY or CVS_REPOSITORY and CVS_MODULE +# +# If the project doesn't build with spaces in the path, do the following: +# set(CTEST_AVOID_SPACES TRUE) +# +# After this file has been included, the regular new style ctest +# scripting commands can be used, e.g. +# +# ctest_empty_binary_directory("${CTEST_BINARY_DIRECTORY}") +# ctest_start(Nightly) +# ctest_update(SOURCE "${CTEST_SOURCE_DIRECTORY}" ) +# ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}" ) +# ctest_build(BUILD "${CTEST_BINARY_DIRECTORY}" ) +# ctest_test(BUILD "${CTEST_BINARY_DIRECTORY}" ) +# ctest_submit() + + + + +set(currentDirectory "${CTEST_SCRIPT_DIRECTORY}") + +if(NOT EXISTS "${currentDirectory}/CMakeLists.txt") + message(FATAL_ERROR "This macro must be called from a cmake script in the source tree of your project.") +endif(NOT EXISTS "${currentDirectory}/CMakeLists.txt") + +include("${currentDirectory}/CTestConfig.cmake") +include("${currentDirectory}/CTestCustom.cmake" OPTIONAL) + +# Set up the directories where the dashboards will be created +# By default this will be "$HOME/Dashboards//(src|build) dir". +# It can be overriden by the user. +set(DASHBOARD_DIR "$ENV{HOME}/Dashboards" ) + +if(NOT DEFINED CTEST_SOURCE_DIRECTORY) + if(CTEST_AVOID_SPACES) + set(CTEST_SOURCE_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/srcdir" ) + else(CTEST_AVOID_SPACES) + set(CTEST_SOURCE_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/src dir" ) + endif(CTEST_AVOID_SPACES) +endif(NOT DEFINED CTEST_SOURCE_DIRECTORY) + +if(NOT DEFINED CTEST_BINARY_DIRECTORY) + if(CTEST_AVOID_SPACES) + set(CTEST_BINARY_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/builddir" ) + else(CTEST_AVOID_SPACES) + set(CTEST_BINARY_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/build dir" ) + endif(CTEST_AVOID_SPACES) +endif(NOT DEFINED CTEST_BINARY_DIRECTORY) + + + +site_name(CTEST_SITE) +if(NOT DEFINED CTEST_BUILD_NAME) + set(CTEST_BUILD_NAME ${CMAKE_SYSTEM_NAME}) +endif(NOT DEFINED CTEST_BUILD_NAME) + +if("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile) + find_program(MAKE_EXECUTABLE make gmake) + set(CTEST_BUILD_COMMAND "${MAKE_EXECUTABLE}" ) +else("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile) + if(NOT DEFINED CTEST_BUILD_COMMAND) + message(FATAL_ERROR "CTEST_CMAKE_GENERATOR is set to \"${CTEST_CMAKE_GENERATOR}\", but CTEST_BUILD_COMMAND has not been set") + endif(NOT DEFINED CTEST_BUILD_COMMAND) +endif("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile) + +# set up version control + +string(TOLOWER ${CTEST_UPDATE_TYPE} _ctest_vcs) +set(_have_vcs FALSE) + +if ("${_ctest_vcs}" STREQUAL svn) + find_program(SVN_EXECUTABLE svn) + if (NOT SVN_EXECUTABLE) + message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is svn, but could not find svn executable") + endif (NOT SVN_EXECUTABLE) + if(NOT SVN_REPOSITORY) + message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is svn, but SVN_REPOSITORY is not set") + endif(NOT SVN_REPOSITORY) + set(CTEST_UPDATE_COMMAND ${SVN_EXECUTABLE}) + set(CTEST_CHECKOUT_COMMAND "${SVN_EXECUTABLE} co ${SVN_REPOSITORY} \"${CTEST_SOURCE_DIRECTORY}\"") + set(_have_vcs TRUE) +endif ("${_ctest_vcs}" STREQUAL svn) + +if ("${_ctest_vcs}" STREQUAL cvs) + find_program(CVS_EXECUTABLE cvs cvsnt) + if (NOT CVS_EXECUTABLE) + message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is cvs, but could not find cvs or cvsnt executable") + endif (NOT CVS_EXECUTABLE) + if (NOT CVS_REPOSITORY) + message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is cvs, but CVS_REPOSITORY is not set") + endif (NOT CVS_REPOSITORY) + if (NOT CVS_MODULE) + message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is cvs, but CVS_MODULE is not set") + endif (NOT CVS_MODULE) + + set(CTEST_UPDATE_COMMAND ${CVS_EXECUTABLE}) + set(CTEST_CHECKOUT_COMMAND "${CVS_EXECUTABLE} -d ${CVS_REPOSITORY} co -d \"${CTEST_SOURCE_DIRECTORY}\" ${CVS_MODULE}") + set(_have_vcs TRUE) +endif ("${_ctest_vcs}" STREQUAL cvs) -- cgit v1.2.1 From 6d31676dc685dd3123844eb265e0a60758e2e302 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 10 Nov 2008 07:49:28 +0000 Subject: Port to use PKG_CHECK_MODULES svn path=/trunk/KDE/kdelibs/; revision=882248 --- modules/FindBlueZ.cmake | 53 +++++++++++++++++++++++++++++-------------------- 1 file changed, 31 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake index 8db4a08b..f743c3ac 100644 --- a/modules/FindBlueZ.cmake +++ b/modules/FindBlueZ.cmake @@ -2,34 +2,43 @@ # Once done this will define # # BLUEZ_FOUND - system has BlueZ - -# Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2007, Will Stephenson, -# Copyright (c) 2007, Daniel Gollub, -# +# BLUEZ_INCLUDE_DIR - the BlueZ include directory +# BLUEZ_LIBRARIES - Link these to use BlueZ +# BLUEZ_DEFINITIONS - Compiler switches required for using BlueZ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# + +if ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) + # in cache already + SET(BlueZ_FIND_QUIETLY TRUE) +endif ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(bluez _BlueZIncDir _BlueZLinkDir _BlueZLinkFlags _BlueZCflags) -ENDIF (NOT WIN32) +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls +if( NOT WIN32 ) + INCLUDE(FindPkgConfig) -find_path(BLUEZ_INCLUDE_DIR bluetooth/bluetooth.h - PATHS - ${_BlueZIncDir} - /usr/X11/include - ) + PKG_CHECK_MODULES(BLUEZ bluez) -find_library(BLUEZ_LIBRARIES NAMES bluetooth - PATHS - ${_BlueZLinkDir} - ) + SET(BLUEZ_DEFINITIONS ${BLUEZ_CFLAGS}) +endif( NOT WIN32 ) + +FIND_PATH(BLUEZ_INCLUDE_DIR NAMES bluetooth/bluetooth.h + PATHS + ${BLUEZ_INCLUDE_DIRS} + /usr/X11/include +) + +FIND_LIBRARY(BLUEZ_LIBRARIES NAMES bluetooth + PATHS + ${BLUEZ_LIBRARY_DIRS} +) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(BlueZ DEFAULT_MSG BLUEZ_LIBRARIES BLUEZ_INCLUDE_DIR ) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(BlueZ DEFAULT_MSG BLUEZ_INCLUDE_DIR BLUEZ_LIBRARIES ) + +# show the BLUEZ_INCLUDE_DIR and BLUEZ_LIBRARIES variables only in the advanced view +MARK_AS_ADVANCED(BLUEZ_INCLUDE_DIR BLUEZ_LIBRARIES ) -mark_as_advanced( BLUEZ_LIBRARIES BLUEZ_INCLUDE_DIR) -- cgit v1.2.1 From 114be0522e85d5c34fe48a1b9d56afc99e15e83b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 10 Nov 2008 07:54:10 +0000 Subject: Use FindPkgConfig svn path=/trunk/KDE/kdelibs/; revision=882249 --- modules/FindPCRE.cmake | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index ba2de623..8e9507e4 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -20,16 +20,19 @@ endif (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) - - pkgconfig(libpcre _PCREIncDir _PCRELinkDir _PCRELinkFlags _PCRECflags) + INCLUDE(FindPkgConfig) + + PKG_CHECK_MODULES(PCRE libpcre) + + SET(PCRE_DEFINITIONS ${PCRE_CFLAGS}) + endif (NOT WIN32) -find_path(PCRE_INCLUDE_DIR pcre.h PATHS ${_PCREIncDir} PATH_SUFFIXES pcre) +find_path(PCRE_INCLUDE_DIR pcre.h PATHS ${PCRE_INCLUDE_DIRS} PATH_SUFFIXES pcre) -find_library(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${_PCRELinkDir}) +find_library(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${PCRE_LIBRARY_DIRS}) -find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${_PCRELinkDir}) +find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${PCRE_LIBRARY_DIRS}) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) -- cgit v1.2.1 From 57d92979d017bcc1748f29e942b5843428e30051 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 10 Nov 2008 23:52:13 +0000 Subject: -require cmake 2.6.2 -enable the reduced link interface for everybody now in kdelibs -convert all the set_target_properties(foo LINK_INTERFACE_LIBRARIES...) to the new target_link_libraries(foo LINK_INTERFACE_LIBRARIES ...) -install all shared libs also as "exported targets", so these libraries can be included by the other projects again as "imported targets", which should fix some problems with different build configurations, the reduced link interface, hopefully also custom install locations (Windows), maybe more -remove the temporary internal hackish macro _KDE4_EXPORT_LIBRARY_DEPENDENCIES() Alex, who hopes this doesn't break too much... So if you get linker errors now, please let me know (or even better kde-buildsystem@kde.org) svn path=/trunk/KDE/kdelibs/; revision=882594 --- modules/CMakeLists.txt | 16 +--- modules/FindAutomoc4.cmake | 34 ++------ modules/FindKDE4Internal.cmake | 176 +++++++++++++++++++++++++++-------------- modules/KDE4Macros.cmake | 54 ++----------- 4 files changed, 130 insertions(+), 150 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index f9b305db..af84391d 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -12,13 +12,6 @@ install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32 #set(FILES_TO_REMOVE #) -# can be removed once we require merge into cmake -# FindLibXslt.cmake -# FindOpenSSL.cmake - -# can be removed once we require cmake 2.4.6 or newer: -# FindPkgConfig.cmake - #install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake ) #file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "#generated by cmake, dont edit\n\n") @@ -27,9 +20,6 @@ install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32 # file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/remove_files.cmake "exec_program( ${CMAKE_COMMAND} ARGS -E remove ${_current_FILE} OUTPUT_VARIABLE _dummy)\n" ) #endforeach ( _current_FILE) -# with cmake 2.6 and above create and install a man page for the kdelibs cmake modules -# (cmake 2.4 doesn't support creating documentation for cmake modules in custom directories) -if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") - add_custom_target(KDECMakeModulesManPage ALL COMMAND ${CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} --help-custom-modules ${CMAKE_CURRENT_BINARY_DIR}/kdecmake.1) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kdecmake.1 DESTINATION "${MAN_INSTALL_DIR}/man1") -endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER "2.5") +# create and install a man page for the kdelibs cmake modules +add_custom_target(KDECMakeModulesManPage ALL COMMAND ${CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} --help-custom-modules ${CMAKE_CURRENT_BINARY_DIR}/kdecmake.1) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kdecmake.1 DESTINATION "${MAN_INSTALL_DIR}/man1") diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index 5cf75627..c76d20b8 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -17,40 +17,16 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -# enable the code below again when cmake also searches in lib64/ (should be 2.6.2), Alex -# # check if we are inside KDESupport and automoc is enabled -# if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") -# # when building this project as part of kdesupport -# include("${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") -# else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") -# # when building this project outside kdesupport -# # use the new "config-mode" of cmake 2.6, which searches the installed Automoc4Config.cmake file -# # see the man page for details -# find_package(Automoc4 QUIET NO_MODULE) -# endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") - +# check if we are inside KDESupport and automoc is enabled if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") # when building this project as part of kdesupport - set(AUTOMOC4_CONFIG_FILE "${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") + include("${KDESupport_SOURCE_DIR}/automoc/Automoc4Config.cmake") else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") # when building this project outside kdesupport - # CMAKE_[SYSTEM_]PREFIX_PATH exists starting with cmake 2.6.0 - file(TO_CMAKE_PATH "$ENV{CMAKE_PREFIX_PATH}" _env_CMAKE_PREFIX_PATH) - file(TO_CMAKE_PATH "$ENV{CMAKE_LIBRARY_PATH}" _env_CMAKE_LIBRARY_PATH) - set(AUTOMOC4_SEARCH_PATHS - ${_env_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH} ${CMAKE_SYSTEM_PREFIX_PATH} - ${_env_CMAKE_LIBRARY_PATH} ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} - ${CMAKE_INSTALL_PREFIX} - ) - find_file(AUTOMOC4_CONFIG_FILE NAMES Automoc4Config.cmake - PATH_SUFFIXES automoc4 lib/automoc4 lib64/automoc4 - PATHS ${AUTOMOC4_SEARCH_PATHS} - NO_DEFAULT_PATH ) + # use the new "config-mode" of cmake 2.6, which searches the installed Automoc4Config.cmake file + # see the man page for details + find_package(Automoc4 QUIET NO_MODULE) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") -if(AUTOMOC4_CONFIG_FILE) - include(${AUTOMOC4_CONFIG_FILE}) -endif(AUTOMOC4_CONFIG_FILE) - include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Automoc4 "Did not find automoc4 (part of kdesupport). Searched for Automoc4Config.cmake in ${AUTOMOC4_SEARCH_PATHS} using suffixes automoc4 lib/automoc4 lib64/automoc4." AUTOMOC4_EXECUTABLE) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c1872836..a67d371c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -242,7 +242,7 @@ # this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below -cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR) +cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR) # this second call will never fail # it is here for the effect that it sets the cmake policies to the 2.4.x compatibility settings for now cmake_minimum_required(VERSION 2.4.5) @@ -449,90 +449,148 @@ else (_kdeBootStrapping) # this file contains all dependencies of all libraries of kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + include(${kde_cmake_module_dir}/KDELibsLibraryTargets.cmake) if (UNIX) - find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) +# find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) + set(KDE4_KDEFAKES_LIBRARY kdefakes ) + set(KDE4_KDEFAKES_LIBS kdefakes ) endif (UNIX) - find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) +# find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) - find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) + set(KDE4_KDECORE_LIBRARY kdecore) + set(KDE4_KDECORE_LIBS kdecore) - find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) - find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) +# find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) + set(KDE4_KDEUI_LIBRARY kdeui ) + set(KDE4_KDEUI_LIBS kdeui ) - find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) +# find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) + set(KDE4_KIO_LIBRARY kio ) + set(KDE4_KIO_LIBS kio ) - find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) +# find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) + set(KDE4_KPARTS_LIBRARY kparts ) + set(KDE4_KPARTS_LIBS kparts ) - find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) +# find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) + set(KDE4_KUTILS_LIBRARY kutils ) + set(KDE4_KUTILS_LIBS kutils ) - find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) +# find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) + set(KDE4_KDE3SUPPORT_LIBRARY kde3support ) + set(KDE4_KDE3SUPPORT_LIBS kde3support ) - find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KJSAPI_LIBS ${kjsapi_LIB_DEPENDS} ${KDE4_KJSAPI_LIBRARY} ) +# find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) + set(KDE4_KFILE_LIBRARY kfile ) + set(KDE4_KFILE_LIBS kfile ) - find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) +# find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) + set(KDE4_KHTML_LIBRARY khtml ) + set(KDE4_KHTML_LIBS khtml ) - if (UNIX) - find_library(KDE4_KPTY_LIBRARY NAMES kpty PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPTY_LIBS ${kpty_LIB_DEPENDS} ${KDE4_KPTY_LIBRARY} ) - - find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) - endif (UNIX) - - find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) +# find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) + set(KDE4_KJS_LIBRARY kjs ) + set(KDE4_KJS_LIBS kjs ) - find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) +# find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KJSAPI_LIBS ${kjsapi_LIB_DEPENDS} ${KDE4_KJSAPI_LIBRARY} ) + set(KDE4_KJSAPI_LIBRARY kjsapi ) + set(KDE4_KJSAPI_LIBS kjsapi ) - find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) +# find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) + set(KDE4_KNEWSTUFF2_LIBRARY knewstuff2 ) + set(KDE4_KNEWSTUFF2_LIBS knewstuff2 ) - find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) - - find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) - - find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) + if (UNIX) +# find_library(KDE4_KPTY_LIBRARY NAMES kpty PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KPTY_LIBS ${kpty_LIB_DEPENDS} ${KDE4_KPTY_LIBRARY} ) + set(KDE4_KPTY_LIBRARY kpty ) + set(KDE4_KPTY_LIBS kpty ) + +# find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) + set(KDE4_KDESU_LIBRARY kdesu ) + set(KDE4_KDESU_LIBS kdesu ) + endif (UNIX) - find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) +# find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) + set(KDE4_KDNSSD_LIBRARY kdnssd ) + set(KDE4_KDNSSD_LIBS kdnssd ) + +# find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) + set(KDE4_SOLID_LIBRARY solid ) + set(KDE4_SOLID_LIBS solid ) + +# find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) + set(KDE4_THREADWEAVER_LIBRARY threadweaver ) + set(KDE4_THREADWEAVER_LIBS threadweaver ) + set(KDE4_THREADWEAVER_LIBRARIES threadweaver ) + +# find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) + set(KDE4_KNOTIFYCONFIG_LIBRARY knotifyconfig ) + set(KDE4_KNOTIFYCONFIG_LIBS knotifyconfig ) + +# find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) + set(KDE4_KROSSCORE_LIBRARY krosscore ) + set(KDE4_KROSSCORE_LIBS krosscore ) + +# find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) + set(KDE4_KROSSUI_LIBRARY krossui ) + set(KDE4_KROSSUI_LIBS krossui ) + +# find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) + set(KDE4_KTEXTEDITOR_LIBRARY ktexteditor ) + set(KDE4_KTEXTEDITOR_LIBS ktexteditor ) # Can't do that, it's not always compiled. #find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) #set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) + if(TARGET knepomuk) + set(KDE4_KNEPOMUK_LIBRARY knepomuk ) + set(KDE4_KNEPOMUK_LIBS knepomuk ) + endif(TARGET knepomuk) + # Can't do that, it's not always compiled. See FindKMetaData.cmake #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) - - find_library(KDE4_KFORMULA_LIBRARY NAMES kformula PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_KFORMULA_LIBS ${kformula_LIB_DEPENDS} ${KDE4_KFORMULA_LIBRARY} ) - - find_library(KDE4_PLASMA_LIBRARY NAMES plasma PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - set(KDE4_PLASMA_LIBS ${plasma_LIB_DEPENDS} ${KDE4_PLASMA_LIBRARY} ) - - - - get_filename_component(KDE4_LIB_DIR ${KDE4_KDECORE_LIBRARY} PATH ) + if(TARGET kmetadata) + set(KDE4_KMETADATA_LIBRARY kmetadata ) + set(KDE4_KMETADATA_LIBS kmetadata ) + endif(TARGET kmetadata) + +# find_library(KDE4_KFORMULA_LIBRARY NAMES kformula PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_KFORMULA_LIBS ${kformula_LIB_DEPENDS} ${KDE4_KFORMULA_LIBRARY} ) + set(KDE4_KFORMULA_LIBRARY kformula ) + set(KDE4_KFORMULA_LIBS kformula ) + +# find_library(KDE4_PLASMA_LIBRARY NAMES plasma PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) +# set(KDE4_PLASMA_LIBS ${plasma_LIB_DEPENDS} ${KDE4_PLASMA_LIBRARY} ) + set(KDE4_PLASMA_LIBRARY plasma ) + set(KDE4_PLASMA_LIBS plasma ) + + set(KDE4_LIB_DIR ${KDE4_LIB_INSTALL_DIR} ) # kpassworddialog.h is new with KDE4 # KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index bae0b39b..93120ddb 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -903,7 +903,10 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) # This reduces inter-package dependencies and makes it easier to remove # dependencies of shared libraries without breaking binary compatibility. if(NOT "${_add_lib_param}" STREQUAL "STATIC") - set_target_properties(${_target_NAME} PROPERTIES ${KDE4_DISABLE_PROPERTY_}LINK_INTERFACE_LIBRARIES "" ) + # only do this inside kdelibs for now (so there is not too much breakage all at once, Alex + if(kdelibs_SOURCE_DIR) + set_target_properties(${_target_NAME} PROPERTIES LINK_INTERFACE_LIBRARIES "" ) + endif(kdelibs_SOURCE_DIR) endif(NOT "${_add_lib_param}" STREQUAL "STATIC") endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) @@ -1129,56 +1132,9 @@ endmacro (KDE4_ADD_APP_ICON) macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) -# if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX )# AND NOT APPLE) - - # get all cmake variables which end in _LIB_DEPENDS - # then parse the target name out of them - # use the target name to get the LINK_INTERFACE_LIBRARIES target property - # This way for targets where INTERFACE_LINK_LIBRARIES has been set, the value set from - # export_library_dependencies() will be overridden, while for those where it hasn't been set - # the full list is preserved. - # (this is cmake 2.6 compatible, where we'll use the EXPORT() feature - # Alex - - file(${_append_or_write} "${_filename}" "# The following variables have been created by kde4_export_library_dependencies() -# The contents have been determined from the LINK_INTERFACE_LIBRARIES target property of the respective libraries.\n\n") - get_cmake_property(allVars VARIABLES) - set(allLibs "") - foreach(currentVar ${allVars}) - string(REGEX REPLACE "^(.+)_LIB_DEPENDS$" "\\1" target "${currentVar}") - if(NOT "${target}" STREQUAL "${currentVar}") - get_target_property(interfaceLibs ${target} LINK_INTERFACE_LIBRARIES) - if(NOT "${interfaceLibs}" MATCHES "NOTFOUND") - file(APPEND "${_filename}" "SET(\"${currentVar}\" \"${interfaceLibs}\")\n") - endif(NOT "${interfaceLibs}" MATCHES "NOTFOUND") - endif(NOT "${target}" STREQUAL "${currentVar}") - endforeach(currentVar ${allVars}) - -# endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT AND UNIX)# AND NOT APPLE) + message(FATAL_ERROR "_KDE4_EXPORT_LIBRARY_DEPENDENCIES() was an internal macro and has been removed again. Just remove the code which calls it, there is no substitute.") endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) -# In cmake 2.6.2 a new keyword "LINK_INTERFACE_LIBRARIES is added to TARGET_LINK_LIBRARIES(). -# We will use this to reduce the link interface of libraries. As opposed to setting the -# respective target property, here the "debug" and "optimized" keywords are supported -# (this is actually the reason why we will use this). -# The problem is, once we add this call to our cmake files, cmake 2.6.0 and 2.6.1 would not -# work anymore, since they would fail when trying to link against -lLINK_INTERFACE_LIBRARIES -# That's for cmake 2.6.0 and 2.6.1 we redefine TARGET_LINK_LIBRARIES() here. -# If the first argument after the target name if "LINK_INTERFACE_LIBRARIES", then -# nothing is done, otherwise the original TARGET_LINK_LIBRARIES() is called. -# This can be done by calling _target_link_libraries(), since if a command is -# "overloaded" by a macro, the original command gets a "_" prepended, so it -# is still available. -if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" MATCHES "^2\\.6\\.[01]$") - message(STATUS "Your are still using CMake ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}, please update to CMake 2.6.2.\nIt will be required next monday.") - macro(TARGET_LINK_LIBRARIES) - if(NOT "${ARGV1}" STREQUAL "LINK_INTERFACE_LIBRARIES") - _target_link_libraries(${ARGN}) - endif() - endmacro(TARGET_LINK_LIBRARIES) -endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" MATCHES "^2\\.6\\.[01]$") - - macro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES _target _interface_libs) message(FATAL_ERROR "_KDE4_TARGET_LINK_INTERFACE_LIBRARIES() doesn't exist anymore. Set the LINK_INTERFACE_LIBRARIES target property instead. See kdelibs/kdecore/CMakeLists.txt for an example.") endmacro (_KDE4_TARGET_LINK_INTERFACE_LIBRARIES) -- cgit v1.2.1 From b5e40c83de2228ec706923ed9e9d98951d95ef2f Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 10:38:09 +0000 Subject: Port to PKG_CHECK_MODULES svn path=/trunk/KDE/kdelibs/; revision=882701 --- modules/FindFontconfig.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index ad144e1e..a2a13afc 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -21,22 +21,21 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) + include(FindPkgConfig) + PKG_CHECK_MODULES(FONTCONFIG fontconfig) - pkgconfig(fontconfig _FONTCONFIGIncDir _FONTCONFIGLinkDir _FONTCONFIGLinkFlags _FONTCONFIGCflags) - - set(FONTCONFIG_DEFINITIONS ${_FONTCONFIGCflags}) + set(FONTCONFIG_DEFINITIONS ${FONTCONFIG_CFLAGS}) endif (NOT WIN32) find_path(FONTCONFIG_INCLUDE_DIR fontconfig/fontconfig.h PATHS - ${_FONTCONFIGIncDir} + ${FONTCONFIG_INCLUDE_DIRS} /usr/X11/include ) find_library(FONTCONFIG_LIBRARIES NAMES fontconfig PATHS - ${_FONTCONFIGLinkDir} + ${FONTCONFIG_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) @@ -45,3 +44,4 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) mark_as_advanced(FONTCONFIG_LIBRARIES FONTCONFIG_INCLUDE_DIR) endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) + -- cgit v1.2.1 From 3e52513c11bb20f268f0dacb7541e9c662fc9342 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 10:44:48 +0000 Subject: Port to FindPkgConfig svn path=/trunk/KDE/kdelibs/; revision=882703 --- modules/FindLCMS.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 12b575c5..1abfd297 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -9,13 +9,13 @@ # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls if(NOT WIN32) -INCLUDE(UsePkgConfig) -PKGCONFIG(lcms _LcmsIncDir _LcmsLinkDir _LcmsLinkFlags _LcmsCflags) -SET(LCMS_DEFINITIONS ${_LcmsCflags}) +INCLUDE(FindPkgConfig) +PKG_CHECK_MODULES(LCMS lcms) +SET(LCMS_DEFINITIONS ${LCMS_CFLAGS}) endif(NOT WIN32) find_path(LCMS_INCLUDE_DIR lcms.h - ${_LcmsIncDir} + ${LCMS_INCLUDE_DIRS} ${CMAKE_INSTALL_PREFIX}/include /usr/include/lcms /usr/include/liblcms1 @@ -27,7 +27,7 @@ find_path(LCMS_INCLUDE_DIR lcms.h find_library(LCMS_LIBRARIES NAMES lcms liblcms lcms-1 liblcms-1 PATHS - ${_LcmsLinkDir} + ${LCMS_LIBRARY_DIRS} ${CMAKE_INSTALL_PREFIX}/lib /usr/lib/lcms /usr/local/lib/lcms -- cgit v1.2.1 From 7f377aa9ab87631edc21d841a66ca73bd4504484 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 11:36:01 +0000 Subject: Change as discussed with Alex svn path=/trunk/KDE/kdelibs/; revision=882721 --- modules/FindPCRE.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 8e9507e4..80fdfd9f 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -20,11 +20,11 @@ endif (PCRE_INCLUDE_DIR AND PCRE_PCREPOSIX_LIBRARY AND PCRE_PCRE_LIBRARY) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(FindPkgConfig) + find_package(PkgConfig) - PKG_CHECK_MODULES(PCRE libpcre) + pkg_check_modules(PCRE libpcre) - SET(PCRE_DEFINITIONS ${PCRE_CFLAGS}) + set(PCRE_DEFINITIONS ${PCRE_CFLAGS}) endif (NOT WIN32) -- cgit v1.2.1 From 414cdd4294be121c798099210f7fb94ad5beb70d Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 11:45:42 +0000 Subject: Minor fix svn path=/trunk/KDE/kdelibs/; revision=882730 --- modules/FindFontconfig.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index a2a13afc..10fd0734 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -21,8 +21,8 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - include(FindPkgConfig) - PKG_CHECK_MODULES(FONTCONFIG fontconfig) + find_package(PkgConfig) + pkg_check_modules(FONTCONFIG fontconfig) set(FONTCONFIG_DEFINITIONS ${FONTCONFIG_CFLAGS}) endif (NOT WIN32) -- cgit v1.2.1 From b6f9515fff4f5e47c8514197474294c7168c3ab7 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 11:50:35 +0000 Subject: Fix it svn path=/trunk/KDE/kdelibs/; revision=882740 --- modules/FindBlueZ.cmake | 6 +++--- modules/FindNetworkManager.cmake | 2 +- modules/FindSqlite.cmake | 6 +++--- modules/FindXmms.cmake | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake index f743c3ac..8e1a2fc4 100644 --- a/modules/FindBlueZ.cmake +++ b/modules/FindBlueZ.cmake @@ -18,11 +18,11 @@ endif ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls if( NOT WIN32 ) - INCLUDE(FindPkgConfig) + find_package(PkgConfig) - PKG_CHECK_MODULES(BLUEZ bluez) + pkg_check_modules(BLUEZ bluez) - SET(BLUEZ_DEFINITIONS ${BLUEZ_CFLAGS}) + set(BLUEZ_DEFINITIONS ${BLUEZ_CFLAGS}) endif( NOT WIN32 ) FIND_PATH(BLUEZ_INCLUDE_DIR NAMES bluetooth/bluetooth.h diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake index f85dfb5f..cd7b9b89 100644 --- a/modules/FindNetworkManager.cmake +++ b/modules/FindNetworkManager.cmake @@ -22,7 +22,7 @@ ENDIF (NETWORKMANAGER_INCLUDE_DIRS AND NM-UTIL_INCLUDE_DIRS) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(FindPkgConfig) + find_package((PkgConfig) PKG_SEARCH_MODULE( NETWORKMANAGER NetworkManager ) PKG_SEARCH_MODULE( NM-UTIL libnm-util ) ENDIF (NOT WIN32) diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index 29a23612..3dd53351 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -18,11 +18,11 @@ endif ( SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls if( NOT WIN32 ) - INCLUDE(FindPkgConfig) + find_package(PkgConfig) - PKG_CHECK_MODULES(SQLITE sqlite3) + pkg_check_modules(SQLITE sqlite3) - SET(SQLITE_DEFINITIONS ${SQLITE_CFLAGS}) + set(SQLITE_DEFINITIONS ${SQLITE_CFLAGS}) endif( NOT WIN32 ) FIND_PATH(SQLITE_INCLUDE_DIR NAMES sqlite3.h diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index a366cfd0..a265f9b3 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -19,9 +19,9 @@ else (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(FindPkgConfig) + find_package(PkgConfig) - PKG_CHECK_MODULES(XMMS xmms) + pkg_check_modules((XMMS xmms) ENDIF(NOT WIN32) FIND_PATH(XMMS_INCLUDE_DIRS xmmsctrl.h -- cgit v1.2.1 From 4d7f14b63edd4e7663eb81f3ff8f564799932eb1 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 11:52:11 +0000 Subject: Fix this package too svn path=/trunk/KDE/kdelibs/; revision=882745 --- modules/FindLCMS.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 1abfd297..97ac7ef1 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -9,9 +9,9 @@ # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls if(NOT WIN32) -INCLUDE(FindPkgConfig) -PKG_CHECK_MODULES(LCMS lcms) -SET(LCMS_DEFINITIONS ${LCMS_CFLAGS}) +find_package(PkgConfig) +pkg_check_modules(LCMS lcms) +set(LCMS_DEFINITIONS ${LCMS_CFLAGS}) endif(NOT WIN32) find_path(LCMS_INCLUDE_DIR lcms.h -- cgit v1.2.1 From 7ab5b5f8cb7a33937cc17f73d25713e29048bf8b Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 12:27:23 +0000 Subject: Port it svn path=/trunk/KDE/kdelibs/; revision=882776 --- modules/FindAGG.cmake | 11 +++++------ modules/FindGObject.cmake | 25 ++++++++++++------------- modules/FindOpenEXR.cmake | 20 +++++++++----------- 3 files changed, 26 insertions(+), 30 deletions(-) (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index b52814e6..ea7905bd 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -20,19 +20,18 @@ else (AGG_INCLUDE_DIR AND AGG_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + find_package(PkgConfig) + pkg_check_modules(AGG libagg) - PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) - - set(AGG_DEFINITIONS ${_AGGCflags}) + set(AGG_DEFINITIONS ${AGG_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h - ${_AGGIncDir} + ${AGG_INCLUDE_DIRS} ) FIND_LIBRARY(AGG_LIBRARIES NAMES agg PATHS - ${_AGGLinkDir} + ${AGG_LIBRARY_DIRS} ) if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index 3d3d6b3d..3774b914 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -19,38 +19,37 @@ ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(gobject-2.0 _GObjectIncDir _GObjectLinkDir _GObjectLinkFlags _GObjectCflags) - #MESSAGE(STATUS "DEBUG: GObject include directory = ${_GObjectIncDir}") - #MESSAGE(STATUS "DEBUG: GObject link directory = ${_GObjectLinkDir}") - #MESSAGE(STATUS "DEBUG: GObject link flags = ${_GObjectLinkFlags}") - #MESSAGE(STATUS "DEBUG: GObject CFlags = ${_GObjectCflags}") - SET(GOBJECT_DEFINITIONS ${_GObjectCflags}) + find_package(PkgConfig) + pkg_check_modules(GOBJECT gobject-2.0) + #MESSAGE(STATUS "DEBUG: GObject include directory = ${GOBJECT_INCLUDE_DIRS}") + #MESSAGE(STATUS "DEBUG: GObject link directory = ${GOBJECT_LIBRARY_DIRS}") + #MESSAGE(STATUS "DEBUG: GObject CFlags = ${GOBJECT_CFLAGS}") + SET(GOBJECT_DEFINITIONS ${GOBJECT_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(GOBJECT_INCLUDE_DIR gobject.h PATHS - ${_GObjectIncDir} - ${_GObjectIncDir}/glib-2.0/gobject/ + ${GOBJECT_INCLUDE_DIRS} + ${GOBJECT_INCLUDE_DIRS}/glib-2.0/gobject/ /usr/include/glib-2.0/gobject/ #PATH_SUFFIXES gst ) FIND_LIBRARY(_GObjectLibs NAMES gobject-2.0 PATHS - ${_GObjectLinkDir} + ${GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GModuleLibs NAMES gmodule-2.0 PATHS - ${_GObjectLinkDir} + ${GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GThreadLibs NAMES gthread-2.0 PATHS - ${_GObjectLinkDir} + ${GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GLibs NAMES glib-2.0 PATHS - ${_GObjectLinkDir} + ${GOBJECT_LIBRARY_DIRS} ) SET( GOBJECT_LIBRARIES ${_GObjectLibs} ${_GModuleLibs} ${_GThreadLibs} ${_GLibs} ) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 35b7e001..7b7a03f0 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -20,18 +20,18 @@ else (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) + find_package(PkgConfig) + pkg_check_modules(OPENEXR OpenEXR) + ENDIF (NOT WIN32) FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h - ${_OpenEXRIncDir} + ${OPENEXR_INCLUDE_DIRS} PATH_SUFFIXES /OpenEXR/ ) FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half PATHS - ${_OpenEXRLinkDir} + ${OPENEXR_LIBRARY_DIRS} NO_DEFAULT_PATH ) FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half ) @@ -39,30 +39,28 @@ ENDIF (NOT WIN32) FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex PATHS - ${_OpenEXRLinkDir} + ${OPENEXR_LIBRARY_DIRS} NO_DEFAULT_PATH ) FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex ) FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath PATHS - ${_OpenEXRLinkDir} + ${OPENEXR_LIBRARY_DIRS} NO_DEFAULT_PATH ) FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath ) FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf PATHS - ${_OpenEXRLinkDir} + ${OPENEXR_LIBRARY_DIRS} NO_DEFAULT_PATH ) FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf ) FIND_LIBRARY(OPENEXR_ILMTHREAD_LIBRARY NAMES IlmThread PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib + ${OPENEXR_LIBRARY_DIRS} ) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) -- cgit v1.2.1 From d69178fdea07d3f16dd8aa368f28aa20a83d3015 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 11 Nov 2008 12:38:50 +0000 Subject: Port them too svn path=/trunk/KDE/kdelibs/; revision=882802 --- modules/FindGStreamer.cmake | 21 ++++++++++----------- modules/FindLibArt.cmake | 11 ++++++----- modules/FindLibXml2.cmake | 10 +++++----- modules/FindLibXslt.cmake | 12 ++++++------ modules/FindQCA2.cmake | 8 ++++---- modules/FindUSB.cmake | 11 +++++------ 6 files changed, 36 insertions(+), 37 deletions(-) (limited to 'modules') diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake index 5a94452b..291ddc3b 100644 --- a/modules/FindGStreamer.cmake +++ b/modules/FindGStreamer.cmake @@ -20,34 +20,33 @@ ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(gstreamer-0.10 _GStreamerIncDir _GStreamerLinkDir _GStreamerLinkFlags _GStreamerCflags) - #MESSAGE(STATUS "DEBUG: GStreamer include directory = ${_GStreamerIncDir}") - #MESSAGE(STATUS "DEBUG: GStreamer link directory = ${_GStreamerLinkDir}") - #MESSAGE(STATUS "DEBUG: GStreamer link flags = ${_GStreamerLinkFlags}") - #MESSAGE(STATUS "DEBUG: GStreamer CFlags = ${_GStreamerCflags}") - SET(GSTREAMER_DEFINITIONS ${_GStreamerCflags}) + find_package(PkgConfig) + pkg_check_modules(GSTREAMER gstreamer-0.10) + #MESSAGE(STATUS "DEBUG: GStreamer include directory = ${GSTREAMER_INCLUDE_DIRS}") + #MESSAGE(STATUS "DEBUG: GStreamer link directory = ${GSTREAMER_LIBRARY_DIRS}") + #MESSAGE(STATUS "DEBUG: GStreamer CFlags = ${GSTREAMER_CFLAGS}") + SET(GSTREAMER_DEFINITIONS ${GSTREAMER_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(GSTREAMER_INCLUDE_DIR gst/gst.h PATHS - ${_GStreamerIncDir} + ${GSTREAMER_INCLUDE_DIRS} #PATH_SUFFIXES gst ) FIND_LIBRARY(GSTREAMER_LIBRARIES NAMES gstreamer-0.10 PATHS - ${_GStreamerLinkDir} + ${GSTREAMER_LIBRARY_DIRS} ) FIND_LIBRARY(GSTREAMER_BASE_LIBRARY NAMES gstbase-0.10 PATHS - ${_GStreamerLinkDir} + ${GSTREAMER_LIBRARY_DIRS} ) FIND_LIBRARY(GSTREAMER_INTERFACE_LIBRARY NAMES gstinterfaces-0.10 PATHS - ${_GStreamerLinkDir} + ${GSTREAMER_LIBRARY_DIRS} ) IF (GSTREAMER_INCLUDE_DIR) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 59687877..13191d23 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -19,24 +19,25 @@ if (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) IF (NOT WIN32) - INCLUDE(UsePkgConfig) + find_package(PkgConfig) + # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - PKGCONFIG(libart-2.0 _libArtIncDir _libArtLinkDir _libArtLinkFlags _libArtCflags) + pkg_check_modules(LIBART libart-2.0) ######### ?? where is this used ?? ############### - set(LIBART_DEFINITIONS ${_libArtCflags}) + set(LIBART_DEFINITIONS ${LIBART_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(LIBART_INCLUDE_DIR libart_lgpl/libart.h - ${_libArtIncDir}/libart-2.0 + ${LIBART_INCLUDE_DIRS}/libart-2.0 /usr/include/libart-2.0 /usr/local/include/libart-2.0 ) FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 PATHS - ${_libArtLinkDir} + ${LIBART_LIBRARY_DIRS} ) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index bbe5e8b2..8615e77b 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -21,20 +21,20 @@ ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags) - SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags}) + find_package(PkgConfig) + pkg_check_modules(LIBXML libxml-2.0) + SET(LIBXML2_DEFINITIONS ${LIBXML_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h PATHS - ${_LibXml2IncDir} + ${LIBXML_INCLUDE_DIRS} PATH_SUFFIXES libxml2 ) FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 PATHS - ${_LibXml2LinkDir} + ${LIBXML_LIBRARY_DIRS} ) IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 41443d07..76e8f77a 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -21,23 +21,23 @@ ENDIF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags) - SET(LIBXSLT_DEFINITIONS ${_LibXsltCflags}) + find_package(PkgConfig) + pkg_check_modules(XSLT libxslt) + SET(LIBXSLT_DEFINITIONS ${XSLT_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h - ${_LibXsltIncDir} + ${XSLT_INCLUDE_DIRS} ) FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt PATHS - ${_LibXsltLinkDir} + ${XSLT_LIBRARY_DIRS} ) FIND_LIBRARY(LIBEXSLT_LIBRARIES NAMES exslt libexslt PATHS - ${_LibXsltLinkDir} + ${XSLT_LIBRARY_DIRS} ) IF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 950d923c..3549779d 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -23,16 +23,16 @@ if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - INCLUDE(UsePkgConfig) IF (NOT WIN32) - PKGCONFIG(qca2 QCA2_INCLUDE_DIR _Qca2LinkDir _Qca2LinkFlags _Qca2Cflags) + find_package(PkgConfig) + pkg_check_modules(QCA2 qca2) - set(QCA2_DEFINITIONS ${_Qca2Cflags}) + set(QCA2_DEFINITIONS ${QCA2_CFLAGS}) FIND_LIBRARY(QCA2_LIBRARIES NAMES qca PATHS - ${_Qca2LinkDir} + ${QCA2_LIBRARY_DIRS} NO_DEFAULT_PATH ) ELSE (NOT WIN32) diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index ff18d3b3..862388b9 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -5,7 +5,7 @@ # LIBUSB_INCLUDE_DIR - the libusb include directory # LIBUSB_LIBRARIES - Link these to use libusb -# Copyright (c) 2006, Laurent Montel, +# Copyright (c) 2006, 2008 Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -20,16 +20,15 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(libusb _libUSBIncDir _libUSBLinkDir _libUSBLinkFlags _libUSBCflags) + find_package(PkgConfig) + pkg_check_modules(LIBUSB libusb) ENDIF(NOT WIN32) FIND_PATH(LIBUSB_INCLUDE_DIR usb.h - PATHS ${_libUSBIncDir} ) + PATHS ${LIBUSB_INCLUDE_DIRS} ) FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb - PATHS ${_libUSBLinkDir} ) + PATHS ${LIBUSB_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIR) -- cgit v1.2.1 From d57a5300870f104da25a7d43aa077afa6e50f1cc Mon Sep 17 00:00:00 2001 From: Ambroz Bizjak Date: Tue, 11 Nov 2008 12:45:40 +0000 Subject: Fix syntax errors svn path=/trunk/KDE/kdelibs/; revision=882809 --- modules/FindNetworkManager.cmake | 2 +- modules/FindXmms.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindNetworkManager.cmake b/modules/FindNetworkManager.cmake index cd7b9b89..ced2017c 100644 --- a/modules/FindNetworkManager.cmake +++ b/modules/FindNetworkManager.cmake @@ -22,7 +22,7 @@ ENDIF (NETWORKMANAGER_INCLUDE_DIRS AND NM-UTIL_INCLUDE_DIRS) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - find_package((PkgConfig) + find_package(PkgConfig) PKG_SEARCH_MODULE( NETWORKMANAGER NetworkManager ) PKG_SEARCH_MODULE( NM-UTIL libnm-util ) ENDIF (NOT WIN32) diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index a265f9b3..8d42b12f 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -21,7 +21,7 @@ else (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules((XMMS xmms) + pkg_check_modules(XMMS xmms) ENDIF(NOT WIN32) FIND_PATH(XMMS_INCLUDE_DIRS xmmsctrl.h -- cgit v1.2.1 From f0e1d85f8f9aaa4172a34605c73feef9df49b2ae Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 15:22:21 +0000 Subject: - Move old test check for new cmake pkg_check_module svn path=/trunk/KDE/kdelibs/; revision=882887 --- modules/FindXine.cmake | 71 +++++++++----------------------------------------- 1 file changed, 13 insertions(+), 58 deletions(-) (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 534613a6..388e1ab7 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -1,72 +1,27 @@ -# - Try to find the XINE library -# Once done this will define -# -# XINE_FOUND - system has the XINE library -# XINE_VERSION - XINE version -# XINE_BUGFIX_VERSION - the XINE bugfix version -# XINE_INCLUDE_DIR - the XINE include directory -# XINE_LIBRARY - The libraries needed to use XINE -# XINE_XCB_FOUND - libxine can use XCB for video output +# - Try to find the XINE library using standard cmake tool PKG_CHECK_MODULES +# Copyright (c) 2008 Helio Chissini de Castro, # Copyright (c) 2006,2007 Laurent Montel, # Copyright (c) 2006, Matthias Kretz, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (XINE_INCLUDE_DIR AND XINE_LIBRARY) - # Already in cache, be silent - set(Xine_FIND_QUIETLY TRUE) +if (XINE_INCLUDEDIR AND XINE_LIBRARY) + # Already in cache, be silent + set(Xine_FIND_QUIETLY TRUE) endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) - IF (NOT WIN32) - INCLUDE(UsePkgConfig) - PKGCONFIG(libxine _LibXineIncDir _LibXineLinkDir _LibXineLinkFlags _LibXineCflags) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) - ENDIF (NOT WIN32) -FIND_PATH(XINE_INCLUDE_DIR NAMES xine.h - PATHS - ${_LibXineIncDir} - NO_DEFAULT_PATH) - -FIND_LIBRARY(XINE_LIBRARY NAMES xine - PATHS - ${_LibXineLinkDir} - NO_DEFAULT_PATH -) - -FIND_PROGRAM(XINECONFIG_EXECUTABLE NAMES xine-config PATHS - ${_LibXinePrefix}/bin -) - -if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) - EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) - macro_ensure_version(1.1.1 ${XINE_VERSION} XINE_VERSION_OK) - if (XINE_VERSION_OK) - set(XINE_FOUND TRUE) - string(REGEX REPLACE "[0-9].[0-9]." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) - endif (XINE_VERSION_OK) -endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) +IF (NOT WIN32) + PKG_CHECK_MODULES(PKG_XINE libxine>=1.1.9) +ENDIF (NOT WIN32) if( XINE_FOUND ) - INCLUDE(CheckCSourceCompiles) - SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) - SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) - CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) + SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDEDIR}) + SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) + if (NOT Xine_FIND_QUIETLY) + message(STATUS "Found XINE: ${XINE_LIBRARY}") + endif (NOT Xine_FIND_QUIETLY) endif(XINE_FOUND) -if (XINE_FOUND) - if (NOT Xine_FIND_QUIETLY) - message(STATUS "Found XINE: ${XINE_LIBRARY}") - endif (NOT Xine_FIND_QUIETLY) - # if(XINECONFIG_EXECUTABLE) - # EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --plugindir RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINEPLUGINSDIR) - # MESSAGE(STATUS "XINEPLUGINSDIR :<${XINEPLUGINSDIR}>") - # endif(XINECONFIG_EXECUTABLE) -else (XINE_FOUND) - if (Xine_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find XINE 1.1.1 or greater") - endif (Xine_FIND_REQUIRED) -endif (XINE_FOUND) -MARK_AS_ADVANCED(XINE_INCLUDE_DIR XINE_LIBRARY) -- cgit v1.2.1 From daf29017c6ca5901d7d14918dbbcd326f23e0c5c Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 15:22:34 +0000 Subject: - Move old test check for new cmake pkg_check_module svn path=/trunk/KDE/kdelibs/; revision=882888 --- modules/FindExiv2.cmake | 101 ++++++++++++++---------------------------------- 1 file changed, 29 insertions(+), 72 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 5bef48be..4895b6c4 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -2,85 +2,42 @@ # # EXIV2_MIN_VERSION - You can set this variable to the minimum version you need # before doing FIND_PACKAGE(Exiv2). The default is 0.12. -# -# Once done this will define -# -# EXIV2_FOUND - system has libexiv2 -# EXIV2_INCLUDE_DIR - the libexiv2 include directory -# EXIV2_LIBRARIES - Link these to use libexiv2 -# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 # +# All definitions come with new cmake macro PKG_CHECK_MODULES -if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) +if (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) # in cache already set(EXIV2_FOUND TRUE) -else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) - if (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) - - if(NOT EXIV2_MIN_VERSION) - set(EXIV2_MIN_VERSION "0.12") - endif(NOT EXIV2_MIN_VERSION) - - pkgconfig(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) - - if(_EXIV2LinkFlags) - # query pkg-config asking for a Exiv2 >= 0.12 - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - if(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release >= ${EXIV2_MIN_VERSION}") - set(EXIV2_VERSION_GOOD_FOUND TRUE) - else(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release < ${EXIV2_MIN_VERSION}") - endif(_return_VALUE STREQUAL "0") - else(_EXIV2LinkFlags) - set(EXIV2_FOUND FALSE) - set(EXIV2_VERSION_GOOD_FOUND FALSE) - message(STATUS "Cannot find Exiv2 library!") - endif(_EXIV2LinkFlags) - - else(NOT WIN32) - #Better check - set(EXIV2_VERSION_GOOD_FOUND TRUE) - endif (NOT WIN32) - - if(EXIV2_VERSION_GOOD_FOUND) - set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) - - find_path(EXIV2_INCLUDE_DIR exiv2/exif.hpp - ${_EXIV2IncDir} - ) - - find_library(EXIV2_LIBRARIES NAMES exiv2 libexiv2 - PATHS - ${_EXIV2LinkDir} - ) - - if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) +else (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) + if (NOT WIN32) + if(NOT EXIV2_MIN_VERSION) + set(EXIV2_MIN_VERSION "0.12") + endif(NOT EXIV2_MIN_VERSION) + + if (Exiv2_FIND_REQUIRED) + PKG_CHECK_MODULES(EXIV2 REQUIRED exiv2>=${EXIV2_MIN_VERSION}) + else (Exiv2_FIND_REQUIRED) + PKG_CHECK_MODULES(EXIV2 exiv2>=${EXIV2_MIN_VERSION}) + endif (Exiv2_FIND_REQUIRED) + + if(EXIV2_FOUND) + message(STATUS "Found Exiv2 release ${EXIV2_VERSION}") + else(EXIV2_FOUND) + message(STATUS "Cannot find Exiv2 library!") + endif(EXIV2_FOUND) + else(NOT WIN32) + #Better check set(EXIV2_FOUND TRUE) - # TODO version check is missing - endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) - endif(EXIV2_VERSION_GOOD_FOUND) - if (EXIV2_FOUND) - if (NOT Exiv2_FIND_QUIETLY) - message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") - endif (NOT Exiv2_FIND_QUIETLY) - else (EXIV2_FOUND) - if (Exiv2_FIND_REQUIRED) - if (NOT EXIV2_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find Exiv2 header files") - endif (NOT EXIV2_INCLUDE_DIR) - if (NOT EXIV2_LIBRARIES) - message(FATAL_ERROR "Could NOT find Exiv2 library") - endif (NOT EXIV2_LIBRARIES) - endif (Exiv2_FIND_REQUIRED) + endif (NOT WIN32) + + if(EXIV2_FOUND) + set(EXIV2_DEFINITIONS ${EXIV2_CFLAGS}) + if (NOT Exiv2_FIND_QUIETLY) + message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") + endif (NOT Exiv2_FIND_QUIETLY) endif (EXIV2_FOUND) - mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) - -endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) +endif (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) -- cgit v1.2.1 From 3c3016a1dff7df3966a1a627e11e9a41a8fadb51 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 15:30:12 +0000 Subject: - Fix includedirs and add requires for pkgconfig svn path=/trunk/KDE/kdelibs/; revision=882894 --- modules/FindExiv2.cmake | 2 ++ modules/FindXine.cmake | 9 +++++---- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 4895b6c4..c16e210b 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -12,6 +12,8 @@ if (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) else (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) if (NOT WIN32) + find_package(PkgConfig REQUIRED) + if(NOT EXIV2_MIN_VERSION) set(EXIV2_MIN_VERSION "0.12") endif(NOT EXIV2_MIN_VERSION) diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 388e1ab7..6221f96a 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -7,18 +7,19 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (XINE_INCLUDEDIR AND XINE_LIBRARY) +if (XINE_INCLUDEDIR AND XINE_LIBRARIES) # Already in cache, be silent set(Xine_FIND_QUIETLY TRUE) -endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) +endif (XINE_INCLUDEDIR AND XINE_LIBRARIES) IF (NOT WIN32) - PKG_CHECK_MODULES(PKG_XINE libxine>=1.1.9) + find_package(PkgConfig REQUIRED) + pkg_check_modules(XINE libxine>=1.1.9) ENDIF (NOT WIN32) if( XINE_FOUND ) SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDEDIR}) - SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) + SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARIES}) if (NOT Xine_FIND_QUIETLY) message(STATUS "Found XINE: ${XINE_LIBRARY}") endif (NOT Xine_FIND_QUIETLY) -- cgit v1.2.1 From 5b5a7c74a42a459215e4d82314d23af22d308634 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 15:33:02 +0000 Subject: - Show real libraries svn path=/trunk/KDE/kdelibs/; revision=882896 --- modules/FindXine.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 6221f96a..c7dce744 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -21,7 +21,7 @@ if( XINE_FOUND ) SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDEDIR}) SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARIES}) if (NOT Xine_FIND_QUIETLY) - message(STATUS "Found XINE: ${XINE_LIBRARY}") + message(STATUS "Found XINE: ${XINE_LIBRARIES}") endif (NOT Xine_FIND_QUIETLY) endif(XINE_FOUND) -- cgit v1.2.1 From dea5e521618914dad483bbd7cc1e84e43bd3dfed Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 15:33:55 +0000 Subject: Less verbose svn path=/trunk/KDE/kdelibs/; revision=882897 --- modules/FindExiv2.cmake | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index c16e210b..c9d8f539 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -24,11 +24,9 @@ else (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) PKG_CHECK_MODULES(EXIV2 exiv2>=${EXIV2_MIN_VERSION}) endif (Exiv2_FIND_REQUIRED) - if(EXIV2_FOUND) - message(STATUS "Found Exiv2 release ${EXIV2_VERSION}") - else(EXIV2_FOUND) + if(NOT EXIV2_FOUND) message(STATUS "Cannot find Exiv2 library!") - endif(EXIV2_FOUND) + endif(NOT EXIV2_FOUND) else(NOT WIN32) #Better check set(EXIV2_FOUND TRUE) -- cgit v1.2.1 From 47bb08384c0db1379ee144628bc7be283840cd29 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 15:48:19 +0000 Subject: Embraceing new cmake, another module moving to pkg_check_modules svn path=/trunk/KDE/kdelibs/; revision=882904 --- modules/FindStrigi.cmake | 76 ++++++------------------------------------------ 1 file changed, 9 insertions(+), 67 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 2a3a9d14..5d48f200 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -1,113 +1,55 @@ # - Try to find Strigi, a fast and small desktop search program (http://strigi.sourceforge.net ) -# Once done this will define -# -# STRIGI_FOUND - system has Strigi -# STRIGI_INCLUDE_DIR - the Strigi include directory -# STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer -# STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams -# STRIGI_LINE_ANALYZER_PREFIX - strigi plugin prefix -# STRIGI_THROUGH_ANALYZER_PREFIX - strigi plugin prefix - -# at first search only in the specified directories (NO_DEFAULT_PATH) -# only if it wasn't found there, the second call to FIND_PATH/LIBRARY() -# will actually do something, Alex include(FindLibraryWithDebug) include(MacroPushRequiredVars) if(NOT STRIGI_MIN_VERSION) - set(STRIGI_MIN_VERSION "0.5.9") + set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) if (NOT WIN32) - include(UsePkgConfig) - pkgconfig(libstreamanalyzer _STRIGI_INCLUDEDIR _STRIGI_LIBDIR _dummyLinkFlags _dummyCflags) - #message(STATUS "_STRIGI_INCLUDEDIR=${_STRIGI_INCLUDEDIR} _STRIGI_LIBDIR=${_STRIGI_LIBDIR}") - - if(_dummyLinkFlags) - - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${STRIGI_MIN_VERSION} - libstreamanalyzer RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - - if(NOT _return_VALUE STREQUAL "0") - message(STATUS "pkg-config query failed. did you set $PKG_CONFIG_PATH to the directory where strigi libstreamanalyzer.pc is installed?") - message(FATAL_ERROR "Didn't find strigi >= ${STRIGI_MIN_VERSION}") - else(NOT _return_VALUE STREQUAL "0") - if(NOT Strigi_FIND_QUIETLY) - message(STATUS "Found Strigi ${_strigiVersion}") - endif(NOT Strigi_FIND_QUIETLY) - endif(NOT _return_VALUE STREQUAL "0") - else(_dummyLinkFlags) - message(STATUS "pkgconfig didn't find strigi, couldn't check strigi version") - endif(_dummyLinkFlags) + find_package(PkgConfig) + pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) endif(NOT WIN32) if (WIN32) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) endif(WIN32) file(TO_CMAKE_PATH "$ENV{STRIGI_HOME}" strigi_home) -find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h - PATHS - ${strigi_home}/include - ${_STRIGI_INCLUDEDIR} - ${_program_FILES_DIR}/strigi/include - NO_DEFAULT_PATH -) - -find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h) - find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streamanalyzer PATHS ${strigi_home}/lib - ${_STRIGI_LIBDIR} + ${STRIGI_LIBRARY_DIRS} ${_program_FILES_DIR}/strigi/lib NO_DEFAULT_PATH ) -find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY - WIN32_DEBUG_POSTFIX d - NAMES streamanalyzer ) - find_library_with_debug(STRIGI_STREAMS_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streams PATHS ${strigi_home}/lib - ${_STRIGI_LIBDIR} + ${STRIGI_LIBRARY_DIRS} ${_program_FILES_DIR}/strigi/lib NO_DEFAULT_PATH ) -find_library_with_debug(STRIGI_STREAMS_LIBRARY - WIN32_DEBUG_POSTFIX d - NAMES streams ) - find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY WIN32_DEBUG_POSTFIX d NAMES strigiqtdbusclient PATHS ${strigi_home}/lib - ${_STRIGI_LIBDIR} + ${STRIGI_LIBRARY_DIRS} ${_program_FILES_DIR}/strigi/lib NO_DEFAULT_PATH ) -find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY - WIN32_DEBUG_POSTFIX d - NAMES strigiqtdbusclient ) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Strigi - "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." - STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) - if (STRIGI_FOUND) - # Check for the SIC change between 0.5.9 and 0.6.0... MACRO(MACRO_CHECK_STRIGI_API_SCREWUP _RETTYPE _RESULT) @@ -134,7 +76,7 @@ int main() INCLUDE(CheckCXXSourceCompiles) macro_push_required_vars() - set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDE_DIR} ) + set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDEDIR} ) set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) MACRO_CHECK_STRIGI_API_SCREWUP( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) MACRO_CHECK_STRIGI_API_SCREWUP( "char" STRIGI_NEEDS_CHAR ) @@ -179,7 +121,7 @@ else(WIN32) set(STRIGI_THROUGH_ANALYZER_PREFIX strigita_) endif(WIN32) -mark_as_advanced(STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY +mark_as_advanced(STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY STRIGI_LINE_ANALYZER_PREFIX STRIGI_THROUGH_ANALYZER_PREFIX STRIGI_NEEDS_SIGNED_CHAR -- cgit v1.2.1 From 87aa4ab3307e60153d3cce6b024b6521b375f568 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 16:08:46 +0000 Subject: Unbreak test. The duplicated test for every lib was done due to NO_DEFAULT_PATH addition on lib tests. At the very first moment duplication was removed, all default path strigi libs are stopped to been detected svn path=/trunk/KDE/kdelibs/; revision=882910 --- modules/FindStrigi.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 5d48f200..1e01135a 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -25,7 +25,6 @@ find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY ${strigi_home}/lib ${STRIGI_LIBRARY_DIRS} ${_program_FILES_DIR}/strigi/lib - NO_DEFAULT_PATH ) @@ -36,7 +35,6 @@ find_library_with_debug(STRIGI_STREAMS_LIBRARY ${strigi_home}/lib ${STRIGI_LIBRARY_DIRS} ${_program_FILES_DIR}/strigi/lib - NO_DEFAULT_PATH ) find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY @@ -46,7 +44,6 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY ${strigi_home}/lib ${STRIGI_LIBRARY_DIRS} ${_program_FILES_DIR}/strigi/lib - NO_DEFAULT_PATH ) if (STRIGI_FOUND) @@ -121,9 +118,12 @@ else(WIN32) set(STRIGI_THROUGH_ANALYZER_PREFIX strigita_) endif(WIN32) -mark_as_advanced(STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY - STRIGI_LINE_ANALYZER_PREFIX - STRIGI_THROUGH_ANALYZER_PREFIX - STRIGI_NEEDS_SIGNED_CHAR - STRIGI_NEEDS_CHAR +mark_as_advanced( + STRIGI_STREAMANALYZER_LIBRARY + STRIGI_STREAMS_LIBRARY + STRIGI_STRIGIQTDBUSCLIENT_LIBRARY + STRIGI_LINE_ANALYZER_PREFIX + STRIGI_THROUGH_ANALYZER_PREFIX + STRIGI_NEEDS_SIGNED_CHAR + STRIGI_NEEDS_CHAR ) -- cgit v1.2.1 From 03123bdd3411bafedaf653f5924bab8b17b6d88b Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 16:32:40 +0000 Subject: Embracing new cmake, another module moving to pkg_check_modules svn path=/trunk/KDE/kdelibs/; revision=882917 --- modules/FindKdcraw.cmake | 123 ++++++++--------------------------------------- modules/FindKexiv2.cmake | 122 ++++++++-------------------------------------- modules/FindKipi.cmake | 111 ++++++++---------------------------------- 3 files changed, 61 insertions(+), 295 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index f3b33bf8..4e265ce6 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -1,104 +1,23 @@ -# - Try to find the Kdcraw library -# Once done this will define -# -# KDCRAW_FOUND - system has libkdcraw -# KDCRAW_INCLUDE_DIR - the libkdcraw include directory -# KDCRAW_LIBRARIES - Link these to use libkdcraw -# KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw -# +# - Try to find the Kdcraw library using cmake pkg_check_modules -if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - - message(STATUS "Found Kdcraw library in cache: ${KDCRAW_LIBRARIES}") - - # in cache already - SET(KDCRAW_FOUND TRUE) - -else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - - message(STATUS "Check Kdcraw library in local sub-folder...") - - # Check if library is not in local sub-folder - - FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/version.h ${CMAKE_BINARY_DIR}/libkdcraw ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) - - if (KDCRAW_LOCAL_FOUND) - - # Was it found in libkdcraw/ or in libs/libkdcraw? - FIND_FILE(KDCRAW_LOCAL_FOUND_IN_LIBS libkdcraw/version.h ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) - if (KDCRAW_LOCAL_FOUND_IN_LIBS) - set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkdcraw) - else (KDCRAW_LOCAL_FOUND_IN_LIBS) - set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) - endif (KDCRAW_LOCAL_FOUND_IN_LIBS) - set(KDCRAW_DEFINITIONS "-I${KDCRAW_INCLUDE_DIR}") - set(KDCRAW_LIBRARIES kdcraw) - message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_INCLUDE_DIR}") - set(KDCRAW_FOUND TRUE) - MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) - - else(KDCRAW_LOCAL_FOUND) - - message(STATUS "Check Kdcraw library using pkg-config...") +if (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) + # in cache already + SET(KDCRAW_FOUND TRUE) +else (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) if(NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(libkdcraw _KDCRAWIncDir _KDCRAWLinkDir _KDCRAWLinkFlags _KDCRAWCflags) - - if(_KDCRAWLinkFlags) - # query pkg-config asking for a libkdcraw >= 0.2.0 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkdcraw RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - if(_return_VALUE STREQUAL "0") - message(STATUS "Found libkdcraw release >= 0.2.0") - set(KDCRAW_VERSION_GOOD_FOUND TRUE) - else(_return_VALUE STREQUAL "0") - message(STATUS "Found libkdcaw release < 0.2.0, too old") - set(KDCRAW_VERSION_GOOD_FOUND FALSE) - set(KDCRAW_FOUND FALSE) - endif(_return_VALUE STREQUAL "0") - else(_KDCRAWLinkFlags) - set(KDCRAW_VERSION_GOOD_FOUND FALSE) - set(KDCRAW_FOUND FALSE) - endif(_KDCRAWLinkFlags) - ELSE(NOT WIN32) - set(KDCRAW_VERSION_GOOD_FOUND TRUE) - ENDif(NOT WIN32) - - if(KDCRAW_VERSION_GOOD_FOUND) - set(KDCRAW_DEFINITIONS "${_KDCRAWCflags}") - - FIND_PATH(KDCRAW_INCLUDE_DIR libkdcraw/version.h - ${_KDCRAWIncDir} - ) - - FIND_LIBRARY(KDCRAW_LIBRARIES NAMES kdcraw - PATHS - ${_KDCRAWLinkDir} - ) - - if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - set(KDCRAW_FOUND TRUE) - endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - endif(KDCRAW_VERSION_GOOD_FOUND) - if (KDCRAW_FOUND) - if (NOT Kdcraw_FIND_QUIETLY) - message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") - endif (NOT Kdcraw_FIND_QUIETLY) - else (KDCRAW_FOUND) - if (Kdcraw_FIND_REQUIRED) - if (NOT KDCRAW_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find libkdcraw header files") - endif (NOT KDCRAW_INCLUDE_DIR) - if (NOT KDCRAW_LIBRARIES) - message(FATAL_ERROR "Could NOT find libkdcraw library") - endif (NOT KDCRAW_LIBRARIES) - endif (Kdcraw_FIND_REQUIRED) - endif (KDCRAW_FOUND) - - MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) - - endif(KDCRAW_LOCAL_FOUND) - -endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + find_package(PkgConfig REQUIRED) + if (Kdcraw_FIND_REQUIRED) + pkg_check_modules(KDCRAW REQUIRED libkdcraw>=0.2.0) + else (Kdcraw_FIND_REQUIRED) + pkg_check_modules(KDCRAW libkdcraw>=0.2.0) + endif (Kdcraw_FIND_REQUIRED) + else(NOT WIN32) + set(KDCRAW_FOUND TRUE) + endif(NOT WIN32) + if(KDCRAW_FOUND) + set(KDCRAW_DEFINITIONS ${KDCRAW_CFLAGS}) + if (NOT Kdcraw_FIND_QUIETLY) + message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") + endif (NOT Kdcraw_FIND_QUIETLY) + endif (KDCRAW_FOUND) +endif (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index c57ed1c2..f96631a7 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -1,103 +1,23 @@ -# - Try to find the KExiv2 library -# Once done this will define -# -# KEXIV2_FOUND - system has libkexiv2 -# KEXIV2_INCLUDE_DIR - the libkexiv2 include directory -# KEXIV2_LIBRARIES - Link these to use libkexiv2 -# KEXIV2_DEFINITIONS - Compiler switches required for using libkexiv2 -# - -if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) - - message(STATUS "Found Kexiv2 library in cache: ${KEXIV2_LIBRARIES}") - - # in cache already - SET(KEXIV2_FOUND TRUE) - -else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) - - message(STATUS "Check Kexiv2 library in local sub-folder...") - - # Check if library is not in local sub-folder - - FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) - - if (KEXIV2_LOCAL_FOUND) - - FIND_FILE(KEXIV2_LOCAL_FOUND_IN_LIBS libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) - if (KEXIV2_LOCAL_FOUND_IN_LIBS) - set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkexiv2) - else (KEXIV2_LOCAL_FOUND_IN_LIBS) - set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) - endif (KEXIV2_LOCAL_FOUND_IN_LIBS) - set(KEXIV2_DEFINITIONS "-I${KEXIV2_INCLUDE_DIR}") - set(KEXIV2_LIBRARIES kexiv2) - message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_INCLUDE_DIR}") - set(KEXIV2_FOUND TRUE) - MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) - - else(KEXIV2_LOCAL_FOUND) - if(NOT WIN32) - message(STATUS "Check Kexiv2 library using pkg-config...") - - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(libkexiv2 _KEXIV2IncDir _KEXIV2LinkDir _KEXIV2LinkFlags _KEXIV2Cflags) - - if(_KEXIV2LinkFlags) - # query pkg-config asking for a libkexiv2 >= 0.2.0 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkexiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - if(_return_VALUE STREQUAL "0") - message(STATUS "Found libkexiv2 release >= 0.2.0") - set(KEXIV2_VERSION_GOOD_FOUND TRUE) - else(_return_VALUE STREQUAL "0") - message(STATUS "Found libkexiv2 release < 0.2.0, too old") - set(KEXIV2_VERSION_GOOD_FOUND FALSE) - set(KEXIV2_FOUND FALSE) - endif(_return_VALUE STREQUAL "0") - else(_KEXIV2LinkFlags) - set(KEXIV2_VERSION_GOOD_FOUND FALSE) - set(KEXIV2_FOUND FALSE) - endif(_KEXIV2LinkFlags) +# - Try to find the Kexiv2 library using cmake pkg_check_modules + +if (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) + # in cache already + SET(KEXIV2_FOUND TRUE) +else (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) + if(NOT WIN32) + find_package(PkgConfig REQUIRED) + if (Kexiv2_FIND_REQUIRED) + pkg_check_modules(KEXIV2 REQUIRED libkexiv2>=0.2.0) + else (Kexiv2_FIND_REQUIRED) + pkg_check_modules(KEXIV2 libkexiv2>=0.2.0) + endif (Kexiv2_FIND_REQUIRED) else(NOT WIN32) - set(KEXIV2_VERSION_GOOD_FOUND TRUE) + set(KEXIV2_FOUND TRUE) endif(NOT WIN32) - - if(KEXIV2_VERSION_GOOD_FOUND) - set(KEXIV2_DEFINITIONS "${_KEXIV2Cflags}") - - FIND_PATH(KEXIV2_INCLUDE_DIR libkexiv2/version.h - ${_KEXIV2IncDir} - ) - - FIND_LIBRARY(KEXIV2_LIBRARIES NAMES kexiv2 - PATHS - ${_KEXIV2LinkDir} - ) - - if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) - set(KEXIV2_FOUND TRUE) - endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) - endif(KEXIV2_VERSION_GOOD_FOUND) - if (KEXIV2_FOUND) - if (NOT Kexiv2_FIND_QUIETLY) - message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") - endif (NOT Kexiv2_FIND_QUIETLY) - else (KEXIV2_FOUND) - if (Kexiv2_FIND_REQUIRED) - if (NOT KEXIV2_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find libkexiv2 header files") - endif (NOT KEXIV2_INCLUDE_DIR) - if (NOT KEXIV2_LIBRARIES) - message(FATAL_ERROR "Could NOT find libkexiv2 library") - endif (NOT KEXIV2_LIBRARIES) - endif (Kexiv2_FIND_REQUIRED) - endif (KEXIV2_FOUND) - - MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) - - endif(KEXIV2_LOCAL_FOUND) - -endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + if(KEXIV2_FOUND) + set(KEXIV2_DEFINITIONS ${KEXIV2_CFLAGS}) + if (NOT Kexiv2_FIND_QUIETLY) + message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") + endif (NOT Kexiv2_FIND_QUIETLY) + endif (KEXIV2_FOUND) +endif (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index de0d046b..83463fb7 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -1,97 +1,24 @@ -# - Try to find the Kipi library +# - Try to find the Kipi library using cmake pkg_check_modules # Once done this will define -# -# KIPI_FOUND - system has libkipi -# KIPI_INCLUDE_DIR - the libkipi include directory -# KIPI_LIBRARIES - Link these to use libkipi -# KIPI_DEFINITIONS - Compiler switches required for using libkipi -# - -if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) - - message(STATUS "Found Kipi library in cache: ${KIPI_LIBRARIES}") - - # in cache already - SET(KIPI_FOUND TRUE) - -else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) - - message(STATUS "Check Kipi library in local sub-folder...") - - # Check if library is not in local sub-folder - - find_file (KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) - - if (KIPI_LOCAL_FOUND) - - find_file (KIPI_LOCAL_FOUND_IN_LIBS libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) - if (KIPI_LOCAL_FOUND_IN_LIBS) - set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkipi) - else (KIPI_LOCAL_FOUND_IN_LIBS) - set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkipi) - endif (KIPI_LOCAL_FOUND_IN_LIBS) - set(KIPI_DEFINITIONS -I${KIPI_INCLUDE_DIR}) - set(KIPI_LIBRARIES kipi) - message(STATUS "Found Kipi library in local sub-folder: ${KIPI_INCLUDE_DIR}") - set(KIPI_FOUND TRUE) - mark_as_advanced(KIPI_INCLUDE_DIR KIPI_LIBRARIES) - - else(KIPI_LOCAL_FOUND) +if (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) + # in cache already + SET(KIPI_FOUND TRUE) +else (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) if(NOT WIN32) - message(STATUS "Check Kipi library using pkg-config...") - - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(libkipi _KIPIIncDir _KIPILinkDir _KIPILinkFlags _KIPICflags) - - if(_KIPILinkFlags) - # query pkg-config asking for a libkipi >= 0.2.0 - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkipi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - if(_return_VALUE STREQUAL "0") - message(STATUS "Found libkipi release >= 0.2.0") - set(KIPI_VERSION_GOOD_FOUND TRUE) - else(_return_VALUE STREQUAL "0") - message(STATUS "Found libkipi release < 0.2.0, too old") - set(KIPI_VERSION_GOOD_FOUND FALSE) - set(KIPI_FOUND FALSE) - endif(_return_VALUE STREQUAL "0") - else(_KIPILinkFlags) - set(KIPI_VERSION_GOOD_FOUND FALSE) - set(KIPI_FOUND FALSE) - endif(_KIPILinkFlags) + find_package(PkgConfig REQUIRED) + if (Kipi_FIND_REQUIRED) + pkg_check_modules(KIPI REQUIRED libkipi>=0.2.0) + else (Kipi_FIND_REQUIRED) + pkg_check_modules(KIPI libkipi>=0.2.0) + endif (Kipi_FIND_REQUIRED) else(NOT WIN32) - set(KIPI_VERSION_GOOD_FOUND TRUE) + set(KIPI_FOUND TRUE) endif(NOT WIN32) - if(KIPI_VERSION_GOOD_FOUND) - set(KIPI_DEFINITIONS ${_KIPICflags}) - - find_path(KIPI_INCLUDE_DIR NAMES libkipi/version.h PATHS ${KDE4_INCLUDE_DIR} ${_KIPIIncDir}) - find_library(KIPI_LIBRARIES NAMES kipi PATHS ${KDE4_LIB_DIR} ${_KIPILinkDir}) - - if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) - set(KIPI_FOUND TRUE) - endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) - endif(KIPI_VERSION_GOOD_FOUND) - if (KIPI_FOUND) - if (NOT Kipi_FIND_QUIETLY) - message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") - endif (NOT Kipi_FIND_QUIETLY) - else (KIPI_FOUND) - if (Kipi_FIND_REQUIRED) - if (NOT KIPI_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find libkipi header files") - endif (NOT KIPI_INCLUDE_DIR) - if (NOT KIPI_LIBRARIES) - message(FATAL_ERROR "Could NOT find libkipi library") - endif (NOT KIPI_LIBRARIES) - endif (Kipi_FIND_REQUIRED) - endif (KIPI_FOUND) - - MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) - - endif(KIPI_LOCAL_FOUND) - -endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + if(KIPI_FOUND) + set(KIPI_DEFINITIONS ${KIPI_CFLAGS}) + if (NOT Kipi_FIND_QUIETLY) + message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") + endif (NOT Kipi_FIND_QUIETLY) + endif (KIPI_FOUND) +endif (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) -- cgit v1.2.1 From fe99d94e5cdde9cc1e97cfca4a74ca70bf7d7171 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 19:13:52 +0000 Subject: - Legacy INCLUDE_DIR to avoid break compilation in cmake that uses old format svn path=/trunk/KDE/kdelibs/; revision=882963 --- modules/FindStrigi.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 1e01135a..512d2ea1 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -75,6 +75,7 @@ int main() macro_push_required_vars() set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDEDIR} ) set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) + set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) MACRO_CHECK_STRIGI_API_SCREWUP( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) MACRO_CHECK_STRIGI_API_SCREWUP( "char" STRIGI_NEEDS_CHAR ) set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) @@ -119,6 +120,7 @@ else(WIN32) endif(WIN32) mark_as_advanced( + STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY STRIGI_STREAMS_LIBRARY STRIGI_STRIGIQTDBUSCLIENT_LIBRARY -- cgit v1.2.1 From 30cca0d2a24709aecf6972eaff556b3285024980 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 19:55:54 +0000 Subject: - Fixed the wrong removal of standard paths and readd legacy INCLUDE_DIRS as a test for non pkgconfig places. Alex already agreed that we need setup a formal wiki for such kind of operations svn path=/trunk/KDE/kdelibs/; revision=882969 --- modules/FindStrigi.cmake | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 512d2ea1..6c953838 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -1,4 +1,13 @@ # - Try to find Strigi, a fast and small desktop search program (http://strigi.sourceforge.net ) +# Once done this will define +# +# STRIGI_FOUND - system has Strigi +# STRIGI_INCLUDE_DIR - the Strigi include directory +# STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer +# STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams +# STRIGI_LINE_ANALYZER_PREFIX - strigi plugin prefix +# STRIGI_THROUGH_ANALYZER_PREFIX - strigi plugin prefix + include(FindLibraryWithDebug) include(MacroPushRequiredVars) @@ -9,9 +18,23 @@ endif(NOT STRIGI_MIN_VERSION) if (NOT WIN32) find_package(PkgConfig) - pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) + if(PKG_CONFIG_EXECUTABLE) + pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) + endif(PKG_CONFIG_EXECUTABLE) endif(NOT WIN32) +if (NOT STRIGI_INCLUDEDIR) + find_path(STRIGI_INCLUDEDIR strigi/streamanalyzer.h + PATHS + ${strigi_home}/include + ${_STRIGI_INCLUDEDIR} + ${_program_FILES_DIR}/strigi/include + ) +endif (NOT STRIGI_INCLUDEDIR) + +# Legacy +set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) + if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) endif(WIN32) @@ -46,6 +69,11 @@ find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY ${_program_FILES_DIR}/strigi/lib ) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Strigi + "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." + STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) + if (STRIGI_FOUND) # Check for the SIC change between 0.5.9 and 0.6.0... @@ -75,7 +103,6 @@ int main() macro_push_required_vars() set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDEDIR} ) set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) - set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) MACRO_CHECK_STRIGI_API_SCREWUP( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) MACRO_CHECK_STRIGI_API_SCREWUP( "char" STRIGI_NEEDS_CHAR ) set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) -- cgit v1.2.1 From ea83b56d11ff7db0e6604b75e4a4e083300f4cd7 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Tue, 11 Nov 2008 20:11:44 +0000 Subject: Make this module backwards compatible, so kdegames, kdegraphics and koffice continue to build svn path=/trunk/KDE/kdelibs/; revision=882982 --- modules/FindQCA2.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 3549779d..af34892b 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -35,6 +35,7 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) ${QCA2_LIBRARY_DIRS} NO_DEFAULT_PATH ) + set(QCA2_INCLUDE_DIR ${QCA2_INCLUDEDIR}) ELSE (NOT WIN32) FIND_LIBRARY_WITH_DEBUG(QCA2_LIBRARIES WIN32_DEBUG_POSTFIX d -- cgit v1.2.1 From 044ccedb3df4f40ae1d8d7488d4dbc3b0c09484f Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 20:25:04 +0000 Subject: - Made changes requested by Alex svn path=/trunk/KDE/kdelibs/; revision=882988 --- modules/FindKdcraw.cmake | 34 ++++++++++++++++++++++++++-------- modules/FindKexiv2.cmake | 34 ++++++++++++++++++++++++++-------- modules/FindKipi.cmake | 35 ++++++++++++++++++++++++++--------- 3 files changed, 78 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index 4e265ce6..5527a5f4 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -1,23 +1,41 @@ -# - Try to find the Kdcraw library using cmake pkg_check_modules +# - Try to find the Kdcraw library using cmake pkg_check_modulesi otherwise fallback to standard search +# Once done this will define: +# +# KDCRAW_FOUND - system has libkdcraw +# KDCRAW_INCLUDEDIR - the libkdcraw include directory +# KDCRAW_LIBRARIES - Link these to use libkdcraw +# KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw + if (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) # in cache already SET(KDCRAW_FOUND TRUE) else (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) if(NOT WIN32) - find_package(PkgConfig REQUIRED) - if (Kdcraw_FIND_REQUIRED) - pkg_check_modules(KDCRAW REQUIRED libkdcraw>=0.2.0) - else (Kdcraw_FIND_REQUIRED) + find_package(PkgConfig) + if(PKG_CONFIG_EXECUTABLE) pkg_check_modules(KDCRAW libkdcraw>=0.2.0) - endif (Kdcraw_FIND_REQUIRED) - else(NOT WIN32) - set(KDCRAW_FOUND TRUE) + endif(PKG_CONFIG_EXECUTABLE) endif(NOT WIN32) + + if(NOT KDCRAW_FOUND) + find_path(KDCRAW_INCLUDEDIR libkdcraw/version.h) + find_library(KDCRAW_LIBRARIES NAMES kdcraw) + if (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) + set(KDCRAW_FOUND TRUE) + endif (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) + endif(NOT KDCRAW_FOUND) + if(KDCRAW_FOUND) set(KDCRAW_DEFINITIONS ${KDCRAW_CFLAGS}) if (NOT Kdcraw_FIND_QUIETLY) message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") endif (NOT Kdcraw_FIND_QUIETLY) + set(KDCRAW_INCLUDE_DIR ${KDCRAW_INCLUDEDIR}) + mark_as_advanced( KDCRAW_INCLUDE_DIR ) + else(KDCRAW_FOUND) + if (Kdcraw_FIND_REQUIRED) + message(FATAL_ERROR "Not found required libkdcraw") + endif (Kdcraw_FIND_REQUIRED) endif (KDCRAW_FOUND) endif (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index f96631a7..739f187d 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -1,23 +1,41 @@ -# - Try to find the Kexiv2 library using cmake pkg_check_modules +# - Try to find the Kexiv2 library using cmake pkg_check_modulesi otherwise fallback to standard search +# Once done this will define: +# +# KEXIV2_FOUND - system has libkexiv2 +# KEXIV2_INCLUDEDIR - the libkexiv2 include directory +# KEXIV2_LIBRARIES - Link these to use libkexiv2 +# KEXIV2_DEFINITIONS - Compiler switches required for using libkexiv2 + if (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) # in cache already SET(KEXIV2_FOUND TRUE) else (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) if(NOT WIN32) - find_package(PkgConfig REQUIRED) - if (Kexiv2_FIND_REQUIRED) - pkg_check_modules(KEXIV2 REQUIRED libkexiv2>=0.2.0) - else (Kexiv2_FIND_REQUIRED) + find_package(PkgConfig) + if(PKG_CONFIG_EXECUTABLE) pkg_check_modules(KEXIV2 libkexiv2>=0.2.0) - endif (Kexiv2_FIND_REQUIRED) - else(NOT WIN32) - set(KEXIV2_FOUND TRUE) + endif(PKG_CONFIG_EXECUTABLE) endif(NOT WIN32) + + if(NOT KEXIV2_FOUND) + find_path(KEXIV2_INCLUDEDIR libkexiv2/version.h) + find_library(KEXIV2_LIBRARIES NAMES kexiv2) + if (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) + set(KEXIV2_FOUND TRUE) + endif (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) + endif(NOT KEXIV2_FOUND) + if(KEXIV2_FOUND) set(KEXIV2_DEFINITIONS ${KEXIV2_CFLAGS}) if (NOT Kexiv2_FIND_QUIETLY) message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") endif (NOT Kexiv2_FIND_QUIETLY) + set(KEXIV2_INCLUDE_DIR ${KEXIV2_INCLUDEDIR}) + mark_as_advanced( KEXIV2_INCLUDE_DIR ) + else(KEXIV2_FOUND) + if (Kexiv2_FIND_REQUIRED) + message(FATAL_ERROR "Not found required libkexiv2") + endif (Kexiv2_FIND_REQUIRED) endif (KEXIV2_FOUND) endif (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 83463fb7..0c6c33d7 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -1,24 +1,41 @@ -# - Try to find the Kipi library using cmake pkg_check_modules -# Once done this will define +# - Try to find the Kipi library using cmake pkg_check_modulesi otherwise fallback to standard search +# Once done this will define: +# +# KIPI_FOUND - system has libkipi +# KIPI_INCLUDEDIR - the libkipi include directory +# KIPI_LIBRARIES - Link these to use libkipi +# KIPI_DEFINITIONS - Compiler switches required for using libkipi + if (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) # in cache already SET(KIPI_FOUND TRUE) else (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) if(NOT WIN32) - find_package(PkgConfig REQUIRED) - if (Kipi_FIND_REQUIRED) - pkg_check_modules(KIPI REQUIRED libkipi>=0.2.0) - else (Kipi_FIND_REQUIRED) + find_package(PkgConfig) + if(PKG_CONFIG_EXECUTABLE) pkg_check_modules(KIPI libkipi>=0.2.0) - endif (Kipi_FIND_REQUIRED) - else(NOT WIN32) - set(KIPI_FOUND TRUE) + endif(PKG_CONFIG_EXECUTABLE) endif(NOT WIN32) + + if(NOT KIPI_FOUND) + find_path(KIPI_INCLUDEDIR libkipi/version.h) + find_library(KIPI_LIBRARIES NAMES kipi) + if (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) + set(KIPI_FOUND TRUE) + endif (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) + endif(NOT KIPI_FOUND) + if(KIPI_FOUND) set(KIPI_DEFINITIONS ${KIPI_CFLAGS}) if (NOT Kipi_FIND_QUIETLY) message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") endif (NOT Kipi_FIND_QUIETLY) + set(KIPI_INCLUDE_DIR ${KIPI_INCLUDEDIR}) + mark_as_advanced( KIPI_INCLUDE_DIR ) + else(KIPI_FOUND) + if (Kipi_FIND_REQUIRED) + message(FATAL_ERROR "Not found required libkipi") + endif (Kipi_FIND_REQUIRED) endif (KIPI_FOUND) endif (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) -- cgit v1.2.1 From 70e18058aefcd52684a8a9803995eadffbf526d3 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 21:15:39 +0000 Subject: - Fix test order for cmake_home svn path=/trunk/KDE/kdelibs/; revision=883004 --- modules/FindStrigi.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 6c953838..666ae22a 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -23,6 +23,12 @@ if (NOT WIN32) endif(PKG_CONFIG_EXECUTABLE) endif(NOT WIN32) +if (WIN32) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) +endif(WIN32) + +file(TO_CMAKE_PATH "$ENV{STRIGI_HOME}" strigi_home) + if (NOT STRIGI_INCLUDEDIR) find_path(STRIGI_INCLUDEDIR strigi/streamanalyzer.h PATHS @@ -35,12 +41,6 @@ endif (NOT STRIGI_INCLUDEDIR) # Legacy set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) -if (WIN32) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) -endif(WIN32) - -file(TO_CMAKE_PATH "$ENV{STRIGI_HOME}" strigi_home) - find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY WIN32_DEBUG_POSTFIX d NAMES streamanalyzer -- cgit v1.2.1 From b5a5c267ffa16d88c3236bbc0f5cd4ee32bea4a8 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 11 Nov 2008 21:20:07 +0000 Subject: - Add cmake_home as a first test svn path=/trunk/KDE/kdelibs/; revision=883006 --- modules/FindStrigi.cmake | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 666ae22a..4bd07898 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -16,24 +16,26 @@ if(NOT STRIGI_MIN_VERSION) set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) -if (NOT WIN32) - find_package(PkgConfig) - if(PKG_CONFIG_EXECUTABLE) - pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) - endif(PKG_CONFIG_EXECUTABLE) -endif(NOT WIN32) - if (WIN32) file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) endif(WIN32) file(TO_CMAKE_PATH "$ENV{STRIGI_HOME}" strigi_home) +if (NOT WIN32) + if(NOT strigi_home) + find_package(PkgConfig) + if(PKG_CONFIG_EXECUTABLE) + pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) + endif(PKG_CONFIG_EXECUTABLE) + endif(NOT strigi_home) +endif(NOT WIN32) + if (NOT STRIGI_INCLUDEDIR) find_path(STRIGI_INCLUDEDIR strigi/streamanalyzer.h PATHS ${strigi_home}/include - ${_STRIGI_INCLUDEDIR} + ${STRIGI_INCLUDEDIR} ${_program_FILES_DIR}/strigi/include ) endif (NOT STRIGI_INCLUDEDIR) -- cgit v1.2.1 From f351181f55c94cba3988ef6be223963ec297b88a Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 12 Nov 2008 00:56:07 +0000 Subject: clean up a few STATUS messages. svn path=/trunk/KDE/kdelibs/; revision=883065 --- modules/FindKDE4Internal.cmake | 10 +++++----- modules/FindStrigi.cmake | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a67d371c..79d0ef53 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1125,7 +1125,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_CXX_FPIE_FLAGS "-fPIE") set (KDE4_PIE_LDFLAGS "-pie") else(HAVE_FPIE_SUPPORT) - message(STATUS "Your compiler doesn't support PIE flag") + message(STATUS "Your compiler doesn't support the PIE flag") endif(HAVE_FPIE_SUPPORT) endif(KDE4_ENABLE_FPIE) @@ -1240,18 +1240,18 @@ macro (KDE4_PRINT_RESULTS) if(KDE4_INCLUDE_DIR) message(STATUS "Found KDE 4.2 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) - message(STATUS "ERROR: unable to find KDE 4 headers") + message(STATUS "ERROR: unable to find the KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) message(STATUS "Found KDE 4.2 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) - message(STATUS "ERROR: unable to find KDE 4 core library") + message(STATUS "ERROR: unable to find the KDE 4 core library") endif(KDE4_LIB_DIR) endif (NOT _kdeBootStrapping) if(KDE4_KCFGC_EXECUTABLE) - message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") + message(STATUS "Found the KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}") else(KDE4_KCFGC_EXECUTABLE) message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor") endif(KDE4_KCFGC_EXECUTABLE) @@ -1259,7 +1259,7 @@ macro (KDE4_PRINT_RESULTS) if(AUTOMOC4_EXECUTABLE) message(STATUS "Found automoc4: ${AUTOMOC4_EXECUTABLE}") else(AUTOMOC4_EXECUTABLE) - message(STATUS "Didn't find the automoc4") + message(STATUS "Didn't find automoc4") endif(AUTOMOC4_EXECUTABLE) endmacro (KDE4_PRINT_RESULTS) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 4bd07898..05d1f7b4 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -110,10 +110,10 @@ int main() set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) set( STRIGI_NEEDS_CHAR ${STRIGI_NEEDS_CHAR} CACHE BOOL "TRUE if strigi is 0.5.9 or before" ) if (STRIGI_NEEDS_SIGNED_CHAR) - message(STATUS "Strigi API is post-screwup, needs 'signed char'") + message(STATUS "Strigi API needs 'signed char'") else (STRIGI_NEEDS_SIGNED_CHAR) if (STRIGI_NEEDS_CHAR) - message(STATUS "Strigi API is pre-screwup check, need 'char'") + message(STATUS "Strigi API needs 'char'") else (STRIGI_NEEDS_CHAR) message(FATAL_ERROR "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") endif (STRIGI_NEEDS_CHAR) -- cgit v1.2.1 From 4a2b41ff7cd32887f7af33b9078eb7dad567fa8c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 13 Nov 2008 00:16:49 +0000 Subject: -fix FindStrigi when pkg-config didn't find strigi: in this case STRIGI_INCLUDEDIR is empty, and then used as result variable for FIND_PATH(). But FIND_PATH() only does something if the used variable contains "NOTFOUND", so it didn't search for the header actually. Now FIND_PATH() uses STRIGI_INCLUDE_DIR and sets STRIGI_INCLUDEDIR for compatibility. Hint: FOO_INCLUDE_DIR is the correct naming according to the cmake module coding rules (see kdelibs/cmake/modules/cmake-modules/styleguide.txt), not legacy. Alex CCMAIL: helio@kde.org Helio: are you sure there are not other such breakages left ? I'm always *very* cautious when touching these files, I still have a bad feeling after these big changes. svn path=/trunk/KDE/kdelibs/; revision=883470 --- modules/FindStrigi.cmake | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 05d1f7b4..843dc358 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -32,16 +32,17 @@ if (NOT WIN32) endif(NOT WIN32) if (NOT STRIGI_INCLUDEDIR) - find_path(STRIGI_INCLUDEDIR strigi/streamanalyzer.h - PATHS - ${strigi_home}/include - ${STRIGI_INCLUDEDIR} - ${_program_FILES_DIR}/strigi/include + find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h + PATHS + ${strigi_home}/include + ${STRIGI_INCLUDEDIR} + ${_program_FILES_DIR}/strigi/include ) + set( STRIGI_INCLUDEDIR ${STRIGI_INCLUDE_DIR} ) +else (NOT STRIGI_INCLUDEDIR) + set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) endif (NOT STRIGI_INCLUDEDIR) -# Legacy -set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY WIN32_DEBUG_POSTFIX d @@ -79,8 +80,8 @@ find_package_handle_standard_args(Strigi if (STRIGI_FOUND) # Check for the SIC change between 0.5.9 and 0.6.0... - MACRO(MACRO_CHECK_STRIGI_API_SCREWUP _RETTYPE _RESULT) - SET (_STRIGI_API_SCREWUP_SOURCE_CODE " + macro(MACRO_CHECK_STRIGI_API_SCREWUP _RETTYPE _RESULT) + set (_STRIGI_API_SCREWUP_SOURCE_CODE " #include using namespace Strigi; class ScrewupEndAnalyzer : public StreamEndAnalyzer { @@ -98,15 +99,15 @@ int main() return 0; } ") - CHECK_CXX_SOURCE_COMPILES("${_STRIGI_API_SCREWUP_SOURCE_CODE}" ${_RESULT}) - ENDMACRO(MACRO_CHECK_STRIGI_API_SCREWUP) + check_cxx_source_compiles("${_STRIGI_API_SCREWUP_SOURCE_CODE}" ${_RESULT}) + endmacro(MACRO_CHECK_STRIGI_API_SCREWUP) - INCLUDE(CheckCXXSourceCompiles) + include(CheckCXXSourceCompiles) macro_push_required_vars() set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDEDIR} ) set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) - MACRO_CHECK_STRIGI_API_SCREWUP( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) - MACRO_CHECK_STRIGI_API_SCREWUP( "char" STRIGI_NEEDS_CHAR ) + macro_check_strigi_api_screwup( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) + macro_check_strigi_api_screwup( "char" STRIGI_NEEDS_CHAR ) set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) set( STRIGI_NEEDS_CHAR ${STRIGI_NEEDS_CHAR} CACHE BOOL "TRUE if strigi is 0.5.9 or before" ) if (STRIGI_NEEDS_SIGNED_CHAR) -- cgit v1.2.1 From 7ac1d3792224e6ad536231088a760b1b8f7ef1e9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 13 Nov 2008 22:23:31 +0000 Subject: -make it work also without pkgconfig Alex svn path=/trunk/KDE/kdelibs/; revision=883961 --- modules/FindQCA2.cmake | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index af34892b..fd081160 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -30,12 +30,21 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) set(QCA2_DEFINITIONS ${QCA2_CFLAGS}) - FIND_LIBRARY(QCA2_LIBRARIES NAMES qca - PATHS - ${QCA2_LIBRARY_DIRS} - NO_DEFAULT_PATH - ) - set(QCA2_INCLUDE_DIR ${QCA2_INCLUDEDIR}) + # If pkgconfig found QCA2, get the full path to the library using find_library() + # but only in the path reported by pkgconfig. + # Otherwise do a normal search. + if(QCA2_FOUND) + set(QCA2_INCLUDE_DIR ${QCA2_INCLUDEDIR}) + find_library(QCA2_LIBRARIES NAMES qca + PATHS + ${QCA2_LIBRARY_DIRS} + NO_DEFAULT_PATH + ) + else(QCA2_FOUND) + find_library(QCA2_LIBRARIES NAMES qca ) + find_path(QCA2_INCLUDE_DIR qca.h PATH_SUFFIXES QtCrypto) + endif(QCA2_FOUND) + ELSE (NOT WIN32) FIND_LIBRARY_WITH_DEBUG(QCA2_LIBRARIES WIN32_DEBUG_POSTFIX d -- cgit v1.2.1 From f795a59b17fad91b09939517bfd3dd4e28795fbc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 13 Nov 2008 22:28:41 +0000 Subject: -lowercasing -use find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=883966 --- modules/FindQCA2.cmake | 31 ++++++++----------------------- 1 file changed, 8 insertions(+), 23 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index fd081160..a80469d2 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -24,7 +24,7 @@ if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - IF (NOT WIN32) + if (NOT WIN32) find_package(PkgConfig) pkg_check_modules(QCA2 qca2) @@ -45,32 +45,17 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) find_path(QCA2_INCLUDE_DIR qca.h PATH_SUFFIXES QtCrypto) endif(QCA2_FOUND) - ELSE (NOT WIN32) - FIND_LIBRARY_WITH_DEBUG(QCA2_LIBRARIES + else (NOT WIN32) + find_library_with_debug(QCA2_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES qca) - FIND_PATH(QCA2_INCLUDE_DIR_tmp QtCrypto/qca.h) - IF(QCA2_INCLUDE_DIR_tmp) - SET(QCA2_INCLUDE_DIR ${QCA2_INCLUDE_DIR_tmp}/QtCrypto CACHE TYPE PATH FORCE) - ENDIF(QCA2_INCLUDE_DIR_tmp) - ENDIF (NOT WIN32) + find_path(QCA2_INCLUDE_DIR qca.h PATH_SUFFIXES QtCrypto) + endif (NOT WIN32) + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(QCA2 DEFAULT_MSG QCA2_LIBRARIES QCA2_INCLUDE_DIR) - if (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - set(QCA2_FOUND TRUE) - else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - if (NOT QCA2_INCLUDE_DIR) - message(STATUS "Could NOT find QCA2 includes") - endif (NOT QCA2_INCLUDE_DIR) - if (NOT QCA2_LIBRARIES) - message(STATUS "Could NOT find QCA2 libraries") - endif (NOT QCA2_LIBRARIES) - if (QCA2_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find QCA2") - endif (QCA2_FIND_REQUIRED) - endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) - - MARK_AS_ADVANCED(QCA2_INCLUDE_DIR QCA2_LIBRARIES) + mark_as_advanced(QCA2_INCLUDE_DIR QCA2_LIBRARIES) endif (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) -- cgit v1.2.1 From 9b429eb292024c8c5eafb5d052606f0661af7662 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 14 Nov 2008 18:17:03 +0000 Subject: Revert those files back to rev 882880 to get them into a known working state again, except FindStrigi.cmake, which seems to be working. Let's start now cleaning them up step by step. Alex CCMAIL: helio@kde.org svn path=/trunk/KDE/kdelibs/; revision=884355 --- modules/FindExiv2.cmake | 101 ++++++++++++++++++++++++++----------- modules/FindKdcraw.cmake | 127 +++++++++++++++++++++++++++++++++++------------ modules/FindKexiv2.cmake | 124 +++++++++++++++++++++++++++++++++------------ modules/FindKipi.cmake | 116 ++++++++++++++++++++++++++++++++----------- modules/FindXine.cmake | 74 +++++++++++++++++++++------ 5 files changed, 405 insertions(+), 137 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index c9d8f539..5bef48be 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -2,42 +2,85 @@ # # EXIV2_MIN_VERSION - You can set this variable to the minimum version you need # before doing FIND_PACKAGE(Exiv2). The default is 0.12. +# +# Once done this will define +# +# EXIV2_FOUND - system has libexiv2 +# EXIV2_INCLUDE_DIR - the libexiv2 include directory +# EXIV2_LIBRARIES - Link these to use libexiv2 +# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 # -# All definitions come with new cmake macro PKG_CHECK_MODULES -if (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) +if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) # in cache already set(EXIV2_FOUND TRUE) -else (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) - if (NOT WIN32) - find_package(PkgConfig REQUIRED) - - if(NOT EXIV2_MIN_VERSION) - set(EXIV2_MIN_VERSION "0.12") - endif(NOT EXIV2_MIN_VERSION) - - if (Exiv2_FIND_REQUIRED) - PKG_CHECK_MODULES(EXIV2 REQUIRED exiv2>=${EXIV2_MIN_VERSION}) - else (Exiv2_FIND_REQUIRED) - PKG_CHECK_MODULES(EXIV2 exiv2>=${EXIV2_MIN_VERSION}) - endif (Exiv2_FIND_REQUIRED) - - if(NOT EXIV2_FOUND) - message(STATUS "Cannot find Exiv2 library!") - endif(NOT EXIV2_FOUND) - else(NOT WIN32) - #Better check - set(EXIV2_FOUND TRUE) - endif (NOT WIN32) +else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + include(UsePkgConfig) + + if(NOT EXIV2_MIN_VERSION) + set(EXIV2_MIN_VERSION "0.12") + endif(NOT EXIV2_MIN_VERSION) + + pkgconfig(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) - if(EXIV2_FOUND) - set(EXIV2_DEFINITIONS ${EXIV2_CFLAGS}) - if (NOT Exiv2_FIND_QUIETLY) - message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") - endif (NOT Exiv2_FIND_QUIETLY) + if(_EXIV2LinkFlags) + # query pkg-config asking for a Exiv2 >= 0.12 + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found Exiv2 release >= ${EXIV2_MIN_VERSION}") + set(EXIV2_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(STATUS "Found Exiv2 release < ${EXIV2_MIN_VERSION}") + endif(_return_VALUE STREQUAL "0") + else(_EXIV2LinkFlags) + set(EXIV2_FOUND FALSE) + set(EXIV2_VERSION_GOOD_FOUND FALSE) + message(STATUS "Cannot find Exiv2 library!") + endif(_EXIV2LinkFlags) + + else(NOT WIN32) + #Better check + set(EXIV2_VERSION_GOOD_FOUND TRUE) + endif (NOT WIN32) + + if(EXIV2_VERSION_GOOD_FOUND) + set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) + + find_path(EXIV2_INCLUDE_DIR exiv2/exif.hpp + ${_EXIV2IncDir} + ) + + find_library(EXIV2_LIBRARIES NAMES exiv2 libexiv2 + PATHS + ${_EXIV2LinkDir} + ) + + if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + set(EXIV2_FOUND TRUE) + # TODO version check is missing + endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) + endif(EXIV2_VERSION_GOOD_FOUND) + if (EXIV2_FOUND) + if (NOT Exiv2_FIND_QUIETLY) + message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") + endif (NOT Exiv2_FIND_QUIETLY) + else (EXIV2_FOUND) + if (Exiv2_FIND_REQUIRED) + if (NOT EXIV2_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find Exiv2 header files") + endif (NOT EXIV2_INCLUDE_DIR) + if (NOT EXIV2_LIBRARIES) + message(FATAL_ERROR "Could NOT find Exiv2 library") + endif (NOT EXIV2_LIBRARIES) + endif (Exiv2_FIND_REQUIRED) endif (EXIV2_FOUND) -endif (EXIV2_INCLUDEDIR AND EXIV2_LIBRARIES) + mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) + +endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index 5527a5f4..f3b33bf8 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -1,41 +1,104 @@ -# - Try to find the Kdcraw library using cmake pkg_check_modulesi otherwise fallback to standard search -# Once done this will define: +# - Try to find the Kdcraw library +# Once done this will define # # KDCRAW_FOUND - system has libkdcraw -# KDCRAW_INCLUDEDIR - the libkdcraw include directory +# KDCRAW_INCLUDE_DIR - the libkdcraw include directory # KDCRAW_LIBRARIES - Link these to use libkdcraw # KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw +# + +if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + + message(STATUS "Found Kdcraw library in cache: ${KDCRAW_LIBRARIES}") + + # in cache already + SET(KDCRAW_FOUND TRUE) + +else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + + message(STATUS "Check Kdcraw library in local sub-folder...") + + # Check if library is not in local sub-folder + + FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/version.h ${CMAKE_BINARY_DIR}/libkdcraw ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + + if (KDCRAW_LOCAL_FOUND) + # Was it found in libkdcraw/ or in libs/libkdcraw? + FIND_FILE(KDCRAW_LOCAL_FOUND_IN_LIBS libkdcraw/version.h ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + if (KDCRAW_LOCAL_FOUND_IN_LIBS) + set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkdcraw) + else (KDCRAW_LOCAL_FOUND_IN_LIBS) + set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) + endif (KDCRAW_LOCAL_FOUND_IN_LIBS) + set(KDCRAW_DEFINITIONS "-I${KDCRAW_INCLUDE_DIR}") + set(KDCRAW_LIBRARIES kdcraw) + message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_INCLUDE_DIR}") + set(KDCRAW_FOUND TRUE) + MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) -if (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) - # in cache already - SET(KDCRAW_FOUND TRUE) -else (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) + else(KDCRAW_LOCAL_FOUND) + + message(STATUS "Check Kdcraw library using pkg-config...") if(NOT WIN32) - find_package(PkgConfig) - if(PKG_CONFIG_EXECUTABLE) - pkg_check_modules(KDCRAW libkdcraw>=0.2.0) - endif(PKG_CONFIG_EXECUTABLE) - endif(NOT WIN32) - - if(NOT KDCRAW_FOUND) - find_path(KDCRAW_INCLUDEDIR libkdcraw/version.h) - find_library(KDCRAW_LIBRARIES NAMES kdcraw) - if (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libkdcraw _KDCRAWIncDir _KDCRAWLinkDir _KDCRAWLinkFlags _KDCRAWCflags) + + if(_KDCRAWLinkFlags) + # query pkg-config asking for a libkdcraw >= 0.2.0 + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkdcraw RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found libkdcraw release >= 0.2.0") + set(KDCRAW_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(STATUS "Found libkdcaw release < 0.2.0, too old") + set(KDCRAW_VERSION_GOOD_FOUND FALSE) + set(KDCRAW_FOUND FALSE) + endif(_return_VALUE STREQUAL "0") + else(_KDCRAWLinkFlags) + set(KDCRAW_VERSION_GOOD_FOUND FALSE) + set(KDCRAW_FOUND FALSE) + endif(_KDCRAWLinkFlags) + ELSE(NOT WIN32) + set(KDCRAW_VERSION_GOOD_FOUND TRUE) + ENDif(NOT WIN32) + + if(KDCRAW_VERSION_GOOD_FOUND) + set(KDCRAW_DEFINITIONS "${_KDCRAWCflags}") + + FIND_PATH(KDCRAW_INCLUDE_DIR libkdcraw/version.h + ${_KDCRAWIncDir} + ) + + FIND_LIBRARY(KDCRAW_LIBRARIES NAMES kdcraw + PATHS + ${_KDCRAWLinkDir} + ) + + if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) set(KDCRAW_FOUND TRUE) - endif (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) - endif(NOT KDCRAW_FOUND) + endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + endif(KDCRAW_VERSION_GOOD_FOUND) + if (KDCRAW_FOUND) + if (NOT Kdcraw_FIND_QUIETLY) + message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") + endif (NOT Kdcraw_FIND_QUIETLY) + else (KDCRAW_FOUND) + if (Kdcraw_FIND_REQUIRED) + if (NOT KDCRAW_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkdcraw header files") + endif (NOT KDCRAW_INCLUDE_DIR) + if (NOT KDCRAW_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkdcraw library") + endif (NOT KDCRAW_LIBRARIES) + endif (Kdcraw_FIND_REQUIRED) + endif (KDCRAW_FOUND) - if(KDCRAW_FOUND) - set(KDCRAW_DEFINITIONS ${KDCRAW_CFLAGS}) - if (NOT Kdcraw_FIND_QUIETLY) - message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") - endif (NOT Kdcraw_FIND_QUIETLY) - set(KDCRAW_INCLUDE_DIR ${KDCRAW_INCLUDEDIR}) - mark_as_advanced( KDCRAW_INCLUDE_DIR ) - else(KDCRAW_FOUND) - if (Kdcraw_FIND_REQUIRED) - message(FATAL_ERROR "Not found required libkdcraw") - endif (Kdcraw_FIND_REQUIRED) - endif (KDCRAW_FOUND) -endif (KDCRAW_INCLUDEDIR AND KDCRAW_LIBRARIES) + MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) + + endif(KDCRAW_LOCAL_FOUND) + +endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index 739f187d..c57ed1c2 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -1,41 +1,103 @@ -# - Try to find the Kexiv2 library using cmake pkg_check_modulesi otherwise fallback to standard search -# Once done this will define: +# - Try to find the KExiv2 library +# Once done this will define # # KEXIV2_FOUND - system has libkexiv2 -# KEXIV2_INCLUDEDIR - the libkexiv2 include directory +# KEXIV2_INCLUDE_DIR - the libkexiv2 include directory # KEXIV2_LIBRARIES - Link these to use libkexiv2 # KEXIV2_DEFINITIONS - Compiler switches required for using libkexiv2 +# + +if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + + message(STATUS "Found Kexiv2 library in cache: ${KEXIV2_LIBRARIES}") + + # in cache already + SET(KEXIV2_FOUND TRUE) + +else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + + message(STATUS "Check Kexiv2 library in local sub-folder...") + + # Check if library is not in local sub-folder + + FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) + if (KEXIV2_LOCAL_FOUND) -if (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) - # in cache already - SET(KEXIV2_FOUND TRUE) -else (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) - if(NOT WIN32) - find_package(PkgConfig) - if(PKG_CONFIG_EXECUTABLE) - pkg_check_modules(KEXIV2 libkexiv2>=0.2.0) - endif(PKG_CONFIG_EXECUTABLE) + FIND_FILE(KEXIV2_LOCAL_FOUND_IN_LIBS libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) + if (KEXIV2_LOCAL_FOUND_IN_LIBS) + set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkexiv2) + else (KEXIV2_LOCAL_FOUND_IN_LIBS) + set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) + endif (KEXIV2_LOCAL_FOUND_IN_LIBS) + set(KEXIV2_DEFINITIONS "-I${KEXIV2_INCLUDE_DIR}") + set(KEXIV2_LIBRARIES kexiv2) + message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_INCLUDE_DIR}") + set(KEXIV2_FOUND TRUE) + MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) + + else(KEXIV2_LOCAL_FOUND) + if(NOT WIN32) + message(STATUS "Check Kexiv2 library using pkg-config...") + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libkexiv2 _KEXIV2IncDir _KEXIV2LinkDir _KEXIV2LinkFlags _KEXIV2Cflags) + + if(_KEXIV2LinkFlags) + # query pkg-config asking for a libkexiv2 >= 0.2.0 + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkexiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found libkexiv2 release >= 0.2.0") + set(KEXIV2_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(STATUS "Found libkexiv2 release < 0.2.0, too old") + set(KEXIV2_VERSION_GOOD_FOUND FALSE) + set(KEXIV2_FOUND FALSE) + endif(_return_VALUE STREQUAL "0") + else(_KEXIV2LinkFlags) + set(KEXIV2_VERSION_GOOD_FOUND FALSE) + set(KEXIV2_FOUND FALSE) + endif(_KEXIV2LinkFlags) + else(NOT WIN32) + set(KEXIV2_VERSION_GOOD_FOUND TRUE) endif(NOT WIN32) - if(NOT KEXIV2_FOUND) - find_path(KEXIV2_INCLUDEDIR libkexiv2/version.h) - find_library(KEXIV2_LIBRARIES NAMES kexiv2) - if (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) + if(KEXIV2_VERSION_GOOD_FOUND) + set(KEXIV2_DEFINITIONS "${_KEXIV2Cflags}") + + FIND_PATH(KEXIV2_INCLUDE_DIR libkexiv2/version.h + ${_KEXIV2IncDir} + ) + + FIND_LIBRARY(KEXIV2_LIBRARIES NAMES kexiv2 + PATHS + ${_KEXIV2LinkDir} + ) + + if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) set(KEXIV2_FOUND TRUE) - endif (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) - endif(NOT KEXIV2_FOUND) + endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) + endif(KEXIV2_VERSION_GOOD_FOUND) + if (KEXIV2_FOUND) + if (NOT Kexiv2_FIND_QUIETLY) + message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") + endif (NOT Kexiv2_FIND_QUIETLY) + else (KEXIV2_FOUND) + if (Kexiv2_FIND_REQUIRED) + if (NOT KEXIV2_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkexiv2 header files") + endif (NOT KEXIV2_INCLUDE_DIR) + if (NOT KEXIV2_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkexiv2 library") + endif (NOT KEXIV2_LIBRARIES) + endif (Kexiv2_FIND_REQUIRED) + endif (KEXIV2_FOUND) - if(KEXIV2_FOUND) - set(KEXIV2_DEFINITIONS ${KEXIV2_CFLAGS}) - if (NOT Kexiv2_FIND_QUIETLY) - message(STATUS "Found libkexiv2: ${KEXIV2_LIBRARIES}") - endif (NOT Kexiv2_FIND_QUIETLY) - set(KEXIV2_INCLUDE_DIR ${KEXIV2_INCLUDEDIR}) - mark_as_advanced( KEXIV2_INCLUDE_DIR ) - else(KEXIV2_FOUND) - if (Kexiv2_FIND_REQUIRED) - message(FATAL_ERROR "Not found required libkexiv2") - endif (Kexiv2_FIND_REQUIRED) - endif (KEXIV2_FOUND) -endif (KEXIV2_INCLUDEDIR AND KEXIV2_LIBRARIES) + MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) + + endif(KEXIV2_LOCAL_FOUND) + +endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index 0c6c33d7..de0d046b 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -1,41 +1,97 @@ -# - Try to find the Kipi library using cmake pkg_check_modulesi otherwise fallback to standard search -# Once done this will define: +# - Try to find the Kipi library +# Once done this will define # # KIPI_FOUND - system has libkipi -# KIPI_INCLUDEDIR - the libkipi include directory +# KIPI_INCLUDE_DIR - the libkipi include directory # KIPI_LIBRARIES - Link these to use libkipi # KIPI_DEFINITIONS - Compiler switches required for using libkipi +# + +if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + + message(STATUS "Found Kipi library in cache: ${KIPI_LIBRARIES}") + + # in cache already + SET(KIPI_FOUND TRUE) + +else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + + message(STATUS "Check Kipi library in local sub-folder...") + + # Check if library is not in local sub-folder + + find_file (KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + if (KIPI_LOCAL_FOUND) + + find_file (KIPI_LOCAL_FOUND_IN_LIBS libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + if (KIPI_LOCAL_FOUND_IN_LIBS) + set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkipi) + else (KIPI_LOCAL_FOUND_IN_LIBS) + set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkipi) + endif (KIPI_LOCAL_FOUND_IN_LIBS) + set(KIPI_DEFINITIONS -I${KIPI_INCLUDE_DIR}) + set(KIPI_LIBRARIES kipi) + message(STATUS "Found Kipi library in local sub-folder: ${KIPI_INCLUDE_DIR}") + set(KIPI_FOUND TRUE) + mark_as_advanced(KIPI_INCLUDE_DIR KIPI_LIBRARIES) + + else(KIPI_LOCAL_FOUND) -if (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) - # in cache already - SET(KIPI_FOUND TRUE) -else (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) if(NOT WIN32) - find_package(PkgConfig) - if(PKG_CONFIG_EXECUTABLE) - pkg_check_modules(KIPI libkipi>=0.2.0) - endif(PKG_CONFIG_EXECUTABLE) + message(STATUS "Check Kipi library using pkg-config...") + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libkipi _KIPIIncDir _KIPILinkDir _KIPILinkFlags _KIPICflags) + + if(_KIPILinkFlags) + # query pkg-config asking for a libkipi >= 0.2.0 + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkipi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if(_return_VALUE STREQUAL "0") + message(STATUS "Found libkipi release >= 0.2.0") + set(KIPI_VERSION_GOOD_FOUND TRUE) + else(_return_VALUE STREQUAL "0") + message(STATUS "Found libkipi release < 0.2.0, too old") + set(KIPI_VERSION_GOOD_FOUND FALSE) + set(KIPI_FOUND FALSE) + endif(_return_VALUE STREQUAL "0") + else(_KIPILinkFlags) + set(KIPI_VERSION_GOOD_FOUND FALSE) + set(KIPI_FOUND FALSE) + endif(_KIPILinkFlags) + else(NOT WIN32) + set(KIPI_VERSION_GOOD_FOUND TRUE) endif(NOT WIN32) + if(KIPI_VERSION_GOOD_FOUND) + set(KIPI_DEFINITIONS ${_KIPICflags}) + + find_path(KIPI_INCLUDE_DIR NAMES libkipi/version.h PATHS ${KDE4_INCLUDE_DIR} ${_KIPIIncDir}) + find_library(KIPI_LIBRARIES NAMES kipi PATHS ${KDE4_LIB_DIR} ${_KIPILinkDir}) - if(NOT KIPI_FOUND) - find_path(KIPI_INCLUDEDIR libkipi/version.h) - find_library(KIPI_LIBRARIES NAMES kipi) - if (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) + if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) set(KIPI_FOUND TRUE) - endif (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) - endif(NOT KIPI_FOUND) + endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) + endif(KIPI_VERSION_GOOD_FOUND) + if (KIPI_FOUND) + if (NOT Kipi_FIND_QUIETLY) + message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") + endif (NOT Kipi_FIND_QUIETLY) + else (KIPI_FOUND) + if (Kipi_FIND_REQUIRED) + if (NOT KIPI_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkipi header files") + endif (NOT KIPI_INCLUDE_DIR) + if (NOT KIPI_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkipi library") + endif (NOT KIPI_LIBRARIES) + endif (Kipi_FIND_REQUIRED) + endif (KIPI_FOUND) - if(KIPI_FOUND) - set(KIPI_DEFINITIONS ${KIPI_CFLAGS}) - if (NOT Kipi_FIND_QUIETLY) - message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") - endif (NOT Kipi_FIND_QUIETLY) - set(KIPI_INCLUDE_DIR ${KIPI_INCLUDEDIR}) - mark_as_advanced( KIPI_INCLUDE_DIR ) - else(KIPI_FOUND) - if (Kipi_FIND_REQUIRED) - message(FATAL_ERROR "Not found required libkipi") - endif (Kipi_FIND_REQUIRED) - endif (KIPI_FOUND) -endif (KIPI_INCLUDEDIR AND KIPI_LIBRARIES) + MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) + + endif(KIPI_LOCAL_FOUND) + +endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index c7dce744..534613a6 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -1,28 +1,72 @@ -# - Try to find the XINE library using standard cmake tool PKG_CHECK_MODULES +# - Try to find the XINE library +# Once done this will define +# +# XINE_FOUND - system has the XINE library +# XINE_VERSION - XINE version +# XINE_BUGFIX_VERSION - the XINE bugfix version +# XINE_INCLUDE_DIR - the XINE include directory +# XINE_LIBRARY - The libraries needed to use XINE +# XINE_XCB_FOUND - libxine can use XCB for video output -# Copyright (c) 2008 Helio Chissini de Castro, # Copyright (c) 2006,2007 Laurent Montel, # Copyright (c) 2006, Matthias Kretz, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (XINE_INCLUDEDIR AND XINE_LIBRARIES) - # Already in cache, be silent - set(Xine_FIND_QUIETLY TRUE) -endif (XINE_INCLUDEDIR AND XINE_LIBRARIES) +if (XINE_INCLUDE_DIR AND XINE_LIBRARY) + # Already in cache, be silent + set(Xine_FIND_QUIETLY TRUE) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) + IF (NOT WIN32) + INCLUDE(UsePkgConfig) + PKGCONFIG(libxine _LibXineIncDir _LibXineLinkDir _LibXineLinkFlags _LibXineCflags) + EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) + ENDIF (NOT WIN32) +FIND_PATH(XINE_INCLUDE_DIR NAMES xine.h + PATHS + ${_LibXineIncDir} + NO_DEFAULT_PATH) + +FIND_LIBRARY(XINE_LIBRARY NAMES xine + PATHS + ${_LibXineLinkDir} + NO_DEFAULT_PATH +) + +FIND_PROGRAM(XINECONFIG_EXECUTABLE NAMES xine-config PATHS + ${_LibXinePrefix}/bin +) + +if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) + EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) + macro_ensure_version(1.1.1 ${XINE_VERSION} XINE_VERSION_OK) + if (XINE_VERSION_OK) + set(XINE_FOUND TRUE) + string(REGEX REPLACE "[0-9].[0-9]." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) + endif (XINE_VERSION_OK) +endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) -IF (NOT WIN32) - find_package(PkgConfig REQUIRED) - pkg_check_modules(XINE libxine>=1.1.9) -ENDIF (NOT WIN32) if( XINE_FOUND ) - SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDEDIR}) - SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARIES}) - if (NOT Xine_FIND_QUIETLY) - message(STATUS "Found XINE: ${XINE_LIBRARIES}") - endif (NOT Xine_FIND_QUIETLY) + INCLUDE(CheckCSourceCompiles) + SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) + SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) + CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) endif(XINE_FOUND) +if (XINE_FOUND) + if (NOT Xine_FIND_QUIETLY) + message(STATUS "Found XINE: ${XINE_LIBRARY}") + endif (NOT Xine_FIND_QUIETLY) + # if(XINECONFIG_EXECUTABLE) + # EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --plugindir RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINEPLUGINSDIR) + # MESSAGE(STATUS "XINEPLUGINSDIR :<${XINEPLUGINSDIR}>") + # endif(XINECONFIG_EXECUTABLE) +else (XINE_FOUND) + if (Xine_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find XINE 1.1.1 or greater") + endif (Xine_FIND_REQUIRED) +endif (XINE_FOUND) +MARK_AS_ADVANCED(XINE_INCLUDE_DIR XINE_LIBRARY) -- cgit v1.2.1 From d52280765fad034f67a8d8078951f8770528a03f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 14 Nov 2008 18:50:47 +0000 Subject: -replace UsePkgConfig with FindPkgConfig -FindPkgConfig can also be used under Windows, usually it will do just nothing then -also work if pkg-config fails -use FIND_PACKAGE_HANDLE_STANDARD_ARGS() -use the new HINTS argument for the FIND_XXX() commands, these directories are then preferred over the default ones -use the new if(... VERSION_GREATER) instead of macro_ensure_version() (new since 2.6.2) Alex svn path=/trunk/KDE/kdelibs/; revision=884360 --- modules/FindXine.cmake | 68 +++++++++++++++++++++----------------------------- 1 file changed, 29 insertions(+), 39 deletions(-) (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 534613a6..914b9c09 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -18,55 +18,45 @@ if (XINE_INCLUDE_DIR AND XINE_LIBRARY) # Already in cache, be silent set(Xine_FIND_QUIETLY TRUE) endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) - IF (NOT WIN32) - INCLUDE(UsePkgConfig) - PKGCONFIG(libxine _LibXineIncDir _LibXineLinkDir _LibXineLinkFlags _LibXineCflags) - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) - ENDIF (NOT WIN32) -FIND_PATH(XINE_INCLUDE_DIR NAMES xine.h - PATHS - ${_LibXineIncDir} - NO_DEFAULT_PATH) -FIND_LIBRARY(XINE_LIBRARY NAMES xine - PATHS - ${_LibXineLinkDir} - NO_DEFAULT_PATH -) +find_package(PkgConfig) +if (PKG_CONFIG_FOUND) + pkg_check_modules(PC_LIBXINE libxine) + exec_program(${PKG_CONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) +endif (PKG_CONFIG_FOUND) + +find_path(XINE_INCLUDE_DIR NAMES xine.h + HINTS # HINTS is new in cmake 2.6. These dirs will be preferred over the default ones + ${PC_LIBXINE_INCLUDEDIR} + ) + +find_library(XINE_LIBRARY NAMES xine + HINTS + ${PC_LIBXINE_LIBDIR} + ) -FIND_PROGRAM(XINECONFIG_EXECUTABLE NAMES xine-config PATHS +find_program(XINECONFIG_EXECUTABLE NAMES xine-config + HINTS ${_LibXinePrefix}/bin ) if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) - EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) - macro_ensure_version(1.1.1 ${XINE_VERSION} XINE_VERSION_OK) - if (XINE_VERSION_OK) - set(XINE_FOUND TRUE) - string(REGEX REPLACE "[0-9].[0-9]." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) - endif (XINE_VERSION_OK) + exec_program(${XINECONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINE_VERSION) + if("${XINE_VERSION}" VERSION_GREATER "1.1.0") #if (... VERSION_GREATER) is new since cmake 2.6.2 + set(XINE_VERSION_OK TRUE) + string(REGEX REPLACE "[0-9]\\.[0-9]\\." "" XINE_BUGFIX_VERSION ${XINE_VERSION}) + endif("${XINE_VERSION}" VERSION_GREATER "1.1.0") endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) if( XINE_FOUND ) - INCLUDE(CheckCSourceCompiles) - SET(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) - SET(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) - CHECK_C_SOURCE_COMPILES("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) + include(CheckCSourceCompiles) + set(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) + check_c_source_compiles("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) endif(XINE_FOUND) -if (XINE_FOUND) - if (NOT Xine_FIND_QUIETLY) - message(STATUS "Found XINE: ${XINE_LIBRARY}") - endif (NOT Xine_FIND_QUIETLY) - # if(XINECONFIG_EXECUTABLE) - # EXEC_PROGRAM(${XINECONFIG_EXECUTABLE} ARGS --plugindir RETURN_VALUE _return_VALUE OUTPUT_VARIABLE XINEPLUGINSDIR) - # MESSAGE(STATUS "XINEPLUGINSDIR :<${XINEPLUGINSDIR}>") - # endif(XINECONFIG_EXECUTABLE) -else (XINE_FOUND) - if (Xine_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find XINE 1.1.1 or greater") - endif (Xine_FIND_REQUIRED) -endif (XINE_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Xine "Could NOT find XINE 1.1.1 or greater" XINE_INCLUDE_DIR XINE_LIBRARY XINECONFIG_EXECUTABLE XINE_VERSION_OK) -MARK_AS_ADVANCED(XINE_INCLUDE_DIR XINE_LIBRARY) +mark_as_advanced(XINE_INCLUDE_DIR XINE_LIBRARY XINECONFIG_EXECUTABLE) -- cgit v1.2.1 From 5dee5a83bd51420f74a5723583b9c194077397bd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 14 Nov 2008 19:02:54 +0000 Subject: -mark variables as advanced and add simple test Alex svn path=/trunk/KDE/kdelibs/; revision=884365 --- modules/FindFlex.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index 01f909c0..4a2034eb 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -32,3 +32,4 @@ ELSE(FLEX_FOUND) ENDIF(Flex_FIND_REQUIRED) ENDIF(FLEX_FOUND) +MARK_AS_ADVANCED(FLEX_INCLUDE_DIR FLEX_LIBRARY FLEX_EXECUTABLE) \ No newline at end of file -- cgit v1.2.1 From 202abd1adc09efd99d510bafebb71de6baf2117a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 14 Nov 2008 19:54:22 +0000 Subject: -_PREFIX is also already set by pkg_check_modules() Alex svn path=/trunk/KDE/kdelibs/; revision=884375 --- modules/FindXine.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 914b9c09..1f177b0c 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -22,7 +22,6 @@ endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) find_package(PkgConfig) if (PKG_CONFIG_FOUND) pkg_check_modules(PC_LIBXINE libxine) - exec_program(${PKG_CONFIG_EXECUTABLE} ARGS "--variable=prefix libxine" OUTPUT_VARIABLE _LibXinePrefix) endif (PKG_CONFIG_FOUND) find_path(XINE_INCLUDE_DIR NAMES xine.h @@ -37,7 +36,7 @@ find_library(XINE_LIBRARY NAMES xine find_program(XINECONFIG_EXECUTABLE NAMES xine-config HINTS - ${_LibXinePrefix}/bin + ${PC_LIBXINE_PREFIX}/bin ) if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) -- cgit v1.2.1 From edbb4a8a70a894c46be88fa9cb7ef38a6032fcc1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 14 Nov 2008 19:55:04 +0000 Subject: add eol at eof Alex svn path=/trunk/KDE/kdelibs/; revision=884376 --- modules/FindFlex.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index 4a2034eb..c69cffd0 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -32,4 +32,4 @@ ELSE(FLEX_FOUND) ENDIF(Flex_FIND_REQUIRED) ENDIF(FLEX_FOUND) -MARK_AS_ADVANCED(FLEX_INCLUDE_DIR FLEX_LIBRARY FLEX_EXECUTABLE) \ No newline at end of file +MARK_AS_ADVANCED(FLEX_INCLUDE_DIR FLEX_LIBRARY FLEX_EXECUTABLE) -- cgit v1.2.1 From f5a97932d02a33bb9c78c7aae074a9cc86cc73aa Mon Sep 17 00:00:00 2001 From: Thorsten Staerk Date: Sat, 15 Nov 2008 17:33:49 +0000 Subject: Tell the correct version information about needed libraries. BUGS:175232 svn path=/trunk/KDE/kdelibs/; revision=884713 --- modules/MacroLogFeature.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index f0f39882..11861b95 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -70,7 +70,7 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ IF (NOT ${_var}) IF (${_minvers} MATCHES ".*") - SET(_logtext "${_logtext}, ${_minvers}") + SET(_logtext "${_logtext}, ${_minvers} or higher") ENDIF (${_minvers} MATCHES ".*") SET(_logtext "${_logtext}: ${_description} <${_url}>") IF (${_comments} MATCHES ".*") -- cgit v1.2.1 From 806d9ba50d86b67889b7666d651ff6ab7a55d2f4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 16 Nov 2008 19:03:49 +0000 Subject: -load the enhanced StrigiConfig.cmake if available. If this succeeds, there is no need to search for the headers and libraries or test for the API anymore, since all that information is provided ready-to-use by StrigiConfig.cmake Alex CCMAIL: jvdoever@gmail.com svn path=/trunk/KDE/kdelibs/; revision=885206 --- modules/FindStrigi.cmake | 214 +++++++++++++++++++++++++---------------------- 1 file changed, 114 insertions(+), 100 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 843dc358..391b4189 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -9,78 +9,99 @@ # STRIGI_THROUGH_ANALYZER_PREFIX - strigi plugin prefix -include(FindLibraryWithDebug) -include(MacroPushRequiredVars) - if(NOT STRIGI_MIN_VERSION) set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) -if (WIN32) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) -endif(WIN32) - file(TO_CMAKE_PATH "$ENV{STRIGI_HOME}" strigi_home) -if (NOT WIN32) - if(NOT strigi_home) - find_package(PkgConfig) - if(PKG_CONFIG_EXECUTABLE) - pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) - endif(PKG_CONFIG_EXECUTABLE) - endif(NOT strigi_home) -endif(NOT WIN32) - -if (NOT STRIGI_INCLUDEDIR) - find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h - PATHS - ${strigi_home}/include - ${STRIGI_INCLUDEDIR} - ${_program_FILES_DIR}/strigi/include - ) - set( STRIGI_INCLUDEDIR ${STRIGI_INCLUDE_DIR} ) -else (NOT STRIGI_INCLUDEDIR) - set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) -endif (NOT STRIGI_INCLUDEDIR) - - -find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY - WIN32_DEBUG_POSTFIX d - NAMES streamanalyzer - PATHS - ${strigi_home}/lib - ${STRIGI_LIBRARY_DIRS} - ${_program_FILES_DIR}/strigi/lib -) - - -find_library_with_debug(STRIGI_STREAMS_LIBRARY - WIN32_DEBUG_POSTFIX d - NAMES streams - PATHS - ${strigi_home}/lib - ${STRIGI_LIBRARY_DIRS} - ${_program_FILES_DIR}/strigi/lib -) - -find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY - WIN32_DEBUG_POSTFIX d - NAMES strigiqtdbusclient - PATHS - ${strigi_home}/lib - ${STRIGI_LIBRARY_DIRS} - ${_program_FILES_DIR}/strigi/lib -) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Strigi - "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." - STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) - -if (STRIGI_FOUND) - # Check for the SIC change between 0.5.9 and 0.6.0... - - macro(MACRO_CHECK_STRIGI_API_SCREWUP _RETTYPE _RESULT) +# Try to find and load the StrigiConfig.cmake installed by kdesupport/strigi +find_package(Strigi NO_MODULE PATHS "${strigi_home}/lib/strigi" "${strigi_home}/lib64/strigi") + +# If StrigiConfig.cmake (installed by kdesupport/Strigi) has been found +# and it contains all necessary information (since November 16th, 2008), use the information +# included there, otherwise search it in the same way as any non-cmake project. +# This variable is set by StrigiConfig.cmake . Alex +if (STRIGI_CONFIG_FOUND_AND_HAS_COMPLETE_INFORMATION) + set (_strigiErrorMessage "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH) to the strigi install dir.") + set(STRIGI_VERSION_OK TRUE) + if(STRIGI_VERSION VERSION_LESS ${STRIGI_MIN_VERSION}) + set(_strigiErrorMessage "Strigi version ${STRIGI_VERSION} found, but at least version ${STRIGI_MIN_VERSION} is required") + set(STRIGI_VERSION_OK FALSE) + endif(STRIGI_VERSION VERSION_LESS ${STRIGI_MIN_VERSION}) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(Strigi + "${_strigiErrorMessage}" + STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR STRIGI_VERSION_OK) + +else(STRIGI_CONFIG_FOUND_AND_HAS_COMPLETE_INFORMATION) + # this else() branch is for finding strigi versions before November 16th, 2008. Alex + include(FindLibraryWithDebug) + include(MacroPushRequiredVars) + + if (WIN32) + file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR) + endif(WIN32) + + if (NOT WIN32) + if(NOT strigi_home) + find_package(PkgConfig) + if(PKG_CONFIG_EXECUTABLE) + pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) + endif(PKG_CONFIG_EXECUTABLE) + endif(NOT strigi_home) + endif(NOT WIN32) + + if (NOT STRIGI_INCLUDEDIR) + find_path(STRIGI_INCLUDE_DIR strigi/streamanalyzer.h + PATHS + ${strigi_home}/include + ${STRIGI_INCLUDEDIR} + ${_program_FILES_DIR}/strigi/include + ) + set( STRIGI_INCLUDEDIR ${STRIGI_INCLUDE_DIR} ) + else (NOT STRIGI_INCLUDEDIR) + set( STRIGI_INCLUDE_DIR ${STRIGI_INCLUDEDIR} ) + endif (NOT STRIGI_INCLUDEDIR) + + + find_library_with_debug(STRIGI_STREAMANALYZER_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES streamanalyzer + PATHS + ${strigi_home}/lib + ${STRIGI_LIBRARY_DIRS} + ${_program_FILES_DIR}/strigi/lib + ) + + find_library_with_debug(STRIGI_STREAMS_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES streams + PATHS + ${strigi_home}/lib + ${STRIGI_LIBRARY_DIRS} + ${_program_FILES_DIR}/strigi/lib + ) + + find_library_with_debug(STRIGI_STRIGIQTDBUSCLIENT_LIBRARY + WIN32_DEBUG_POSTFIX d + NAMES strigiqtdbusclient + PATHS + ${strigi_home}/lib + ${STRIGI_LIBRARY_DIRS} + ${_program_FILES_DIR}/strigi/lib + ) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(Strigi + "Couldn't find Strigi streams and streamanalyzer libraries. Set the environment variable STRIGI_HOME (or CMAKE_PREFIX_PATH if using CMake >=2.6) to the strigi install dir." + STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) + + if (STRIGI_FOUND) + # Check for the SIC change between 0.5.9 and 0.6.0... + + macro(MACRO_CHECK_STRIGI_API_SCREWUP _RETTYPE _RESULT) set (_STRIGI_API_SCREWUP_SOURCE_CODE " #include using namespace Strigi; @@ -99,53 +120,46 @@ int main() return 0; } ") - check_cxx_source_compiles("${_STRIGI_API_SCREWUP_SOURCE_CODE}" ${_RESULT}) - endmacro(MACRO_CHECK_STRIGI_API_SCREWUP) - - include(CheckCXXSourceCompiles) - macro_push_required_vars() - set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDEDIR} ) - set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) - macro_check_strigi_api_screwup( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) - macro_check_strigi_api_screwup( "char" STRIGI_NEEDS_CHAR ) - set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) - set( STRIGI_NEEDS_CHAR ${STRIGI_NEEDS_CHAR} CACHE BOOL "TRUE if strigi is 0.5.9 or before" ) - if (STRIGI_NEEDS_SIGNED_CHAR) - message(STATUS "Strigi API needs 'signed char'") - else (STRIGI_NEEDS_SIGNED_CHAR) - if (STRIGI_NEEDS_CHAR) - message(STATUS "Strigi API needs 'char'") - else (STRIGI_NEEDS_CHAR) - message(FATAL_ERROR "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") - endif (STRIGI_NEEDS_CHAR) - endif (STRIGI_NEEDS_SIGNED_CHAR) - macro_pop_required_vars() -endif (STRIGI_FOUND) + check_cxx_source_compiles("${_STRIGI_API_SCREWUP_SOURCE_CODE}" ${_RESULT}) + endmacro(MACRO_CHECK_STRIGI_API_SCREWUP) + + include(CheckCXXSourceCompiles) + macro_push_required_vars() + set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDEDIR} ) + set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) + macro_check_strigi_api_screwup( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) + macro_check_strigi_api_screwup( "char" STRIGI_NEEDS_CHAR ) + set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) + set( STRIGI_NEEDS_CHAR ${STRIGI_NEEDS_CHAR} CACHE BOOL "TRUE if strigi is 0.5.9 or before" ) + if (STRIGI_NEEDS_SIGNED_CHAR) + message(STATUS "Strigi API needs 'signed char'") + else (STRIGI_NEEDS_SIGNED_CHAR) + if (STRIGI_NEEDS_CHAR) + message(STATUS "Strigi API needs 'char'") + else (STRIGI_NEEDS_CHAR) + message(FATAL_ERROR "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") + endif (STRIGI_NEEDS_CHAR) + endif (STRIGI_NEEDS_SIGNED_CHAR) + macro_pop_required_vars() + endif (STRIGI_FOUND) + +endif (STRIGI_CONFIG_FOUND_AND_HAS_COMPLETE_INFORMATION) if(WIN32) # this is needed to have mingw, cygwin and msvc libs installed in one directory if(MSVC) set(STRIGI_LINE_ANALYZER_PREFIX msvc_strigila_) - elseif(CYGWIN) - set(STRIGI_LINE_ANALYZER_PREFIX cyg_strigila_) - elseif(MINGW) - set(STRIGI_LINE_ANALYZER_PREFIX mingw_strigila_) - endif(MSVC) -else(WIN32) - set(STRIGI_LINE_ANALYZER_PREFIX strigila_) -endif(WIN32) - -if(WIN32) - # this is needed to have mingw, cygwin and msvc libs installed in one directory - if(MSVC) set(STRIGI_THROUGH_ANALYZER_PREFIX msvc_strigita_) elseif(CYGWIN) + set(STRIGI_LINE_ANALYZER_PREFIX cyg_strigila_) set(STRIGI_THROUGH_ANALYZER_PREFIX cyg_strigita_) elseif(MINGW) + set(STRIGI_LINE_ANALYZER_PREFIX mingw_strigila_) set(STRIGI_THROUGH_ANALYZER_PREFIX mingw_strigita_) endif(MSVC) else(WIN32) + set(STRIGI_LINE_ANALYZER_PREFIX strigila_) set(STRIGI_THROUGH_ANALYZER_PREFIX strigita_) endif(WIN32) -- cgit v1.2.1 From 7fa1b497d115b80bad259aa2fb09fe4b1101c84b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Sun, 16 Nov 2008 20:01:31 +0000 Subject: remove remnants of eigen 1 svn path=/trunk/KDE/kdelibs/; revision=885225 --- modules/FindEigen.cmake | 30 ------------------------------ 1 file changed, 30 deletions(-) delete mode 100644 modules/FindEigen.cmake (limited to 'modules') diff --git a/modules/FindEigen.cmake b/modules/FindEigen.cmake deleted file mode 100644 index 1a5fe34f..00000000 --- a/modules/FindEigen.cmake +++ /dev/null @@ -1,30 +0,0 @@ -# - Try to find eigen lib -# Once done this will define -# -# EIGEN_FOUND - system has eigen lib -# EIGEN_INCLUDE_DIR - the eigen include directory - -# Copyright (c) 2006, 2007 Montel Laurent, -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -if (EIGEN_INCLUDE_DIR) - - # in cache already - set(EIGEN_FOUND TRUE) - -else (EIGEN_INCLUDE_DIR) - -find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h - PATHS - ${INCLUDE_INSTALL_DIR} - ) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Eigen DEFAULT_MSG EIGEN_INCLUDE_DIR ) - - -mark_as_advanced(EIGEN_INCLUDE_DIR) - -endif(EIGEN_INCLUDE_DIR) - -- cgit v1.2.1 From 68c96bf5f6b6571f22a874ecdcf236bed465dc2a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 18 Nov 2008 00:37:07 +0000 Subject: reintroduce the cmake option KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT to enable the reduced link interface in modules != kdelibs obe by one Alex svn path=/trunk/KDE/kdelibs/; revision=885852 --- modules/FindKDE4Internal.cmake | 46 ++++++++++++------------------------------ modules/KDE4Macros.cmake | 4 ++-- 2 files changed, 15 insertions(+), 35 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 79d0ef53..6f45763d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -638,39 +638,19 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") -# Remove this below once it's sure it really works, Alex - -# # This option enables the reduced link interface for libs on UNIX -# # -# # The purpose of the KDE4_DISABLE_PROPERTY_ variable is to be used as a prefix for -# # the target property LINK_INTERFACE_LIBRARIES. If it is empty, the property will have its -# # correct name, if it's not empty, it will be a different name, i.e. the actual property -# # will not be set, i.e. disabled. See kdelibs/kdecore/CMakeLists.txt for an example. -# # -# # By default (i.e. also for Windows) make it non-empty, so the property name will -# # change from "LINK_INTERFACE_LIBRARIES" to "DISABLED_LINK_INTERFACE_LIBRARIES", -# # which is a different (non-existing) target property, and so setting that property -# # won't have an effect - -# disable this for now for Windows, since there is an issue with the use of "debug" and -# "optimized" in the LINK_INTERFACE_LIBRARIES target property, Alex - -# disable the reduced linking temporarily for Windows, cmake HEAD and the soon-to-be-released cmake 2.6.2 -# With 2.6.0 and 2.6.1 it can happen that the "debug", "optimized" and "general" keywords are -# misinterpreted by cmake as library names, the linking fails. Usually this happens under Windows. -# In 2.6.2 this will be an error at cmake time, so we disable it for now and once we require -# 2.6.2 we'll fix it the right way (using TARGET_LINK_LIBRARIES(foo LINK_INTERFACE_LIBRARIES ...) -if (WIN32 OR "${CMAKE_MINOR_VERSION}" EQUAL 7 OR "${CMAKE_PATCH_VERSION}" EQUAL 2) - set(KDE4_DISABLE_PROPERTY_ "DISABLED_") -endif (WIN32 OR "${CMAKE_MINOR_VERSION}" EQUAL 7 OR "${CMAKE_PATCH_VERSION}" EQUAL 2) -#endif(WIN32) - -# option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the experimental reduced library exports" FALSE) -# # If enabled, make it empty, so the property will keep it's actual name. -# # and the LINK_INTERFACE_LIBRARIES property will be set. -# if (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) -# set(KDE4_DISABLE_PROPERTY_ ) -# endif (KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) +# This is for the reduced link interface. +# In kdelibs it is already alwaysenabled. +# In all other modules provide the switch _KDE4_USE_REDUCED_LINK_INTERFACE to turn it on. +if(kdelibs_SOURCE_DIR) + set(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT TRUE) +else(kdelibs_SOURCE_DIR) + option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the reduced link interface" OFF) +endif(kdelibs_SOURCE_DIR) + +# Setting the target property LINK_INTERFACE_LIBRARIES directly shouldn't be done, +# instead TARGET_LINK_LIBRARIES(... LINK_INTERFACE_LIBRARIES ... ) must be used. +set(KDE4_DISABLE_PROPERTY_ "DISABLED_") + if( KDE4_ENABLE_FINAL) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 93120ddb..709748de 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -904,9 +904,9 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) # dependencies of shared libraries without breaking binary compatibility. if(NOT "${_add_lib_param}" STREQUAL "STATIC") # only do this inside kdelibs for now (so there is not too much breakage all at once, Alex - if(kdelibs_SOURCE_DIR) + if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) set_target_properties(${_target_NAME} PROPERTIES LINK_INTERFACE_LIBRARIES "" ) - endif(kdelibs_SOURCE_DIR) + endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) endif(NOT "${_add_lib_param}" STREQUAL "STATIC") endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -- cgit v1.2.1 From fc5cadc93a7d0191e6653fcf5bc502b7c1d22f6d Mon Sep 17 00:00:00 2001 From: Manuel Nickschas Date: Tue, 18 Nov 2008 12:10:44 +0000 Subject: Fixing FindQCA2.cmake based on suggestions by Alex Neundorf. This should now provide absolute library paths and fix the problems various packages had with building QCA2 support. svn path=/trunk/KDE/kdelibs/; revision=885998 --- modules/FindQCA2.cmake | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index a80469d2..4cee0676 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -26,24 +26,24 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) if (NOT WIN32) find_package(PkgConfig) - pkg_check_modules(QCA2 qca2) - - set(QCA2_DEFINITIONS ${QCA2_CFLAGS}) + pkg_check_modules(PC_QCA2 qca2) # If pkgconfig found QCA2, get the full path to the library using find_library() # but only in the path reported by pkgconfig. # Otherwise do a normal search. - if(QCA2_FOUND) - set(QCA2_INCLUDE_DIR ${QCA2_INCLUDEDIR}) + if(PC_QCA2_FOUND) + set(QCA2_DEFINITIONS ${PC_QCA2_CFLAGS}) + set(QCA2_INCLUDE_DIR ${PC_QCA2_INCLUDE_DIRS}) find_library(QCA2_LIBRARIES NAMES qca PATHS - ${QCA2_LIBRARY_DIRS} + ${PC_QCA2_LIBRARY_DIRS} NO_DEFAULT_PATH ) - else(QCA2_FOUND) + set(QCA2_LIBRARY_DIRS ${PC_QCA2_LIBRARY_DIRS}) + else(PC_QCA2_FOUND) find_library(QCA2_LIBRARIES NAMES qca ) find_path(QCA2_INCLUDE_DIR qca.h PATH_SUFFIXES QtCrypto) - endif(QCA2_FOUND) + endif(PC_QCA2_FOUND) else (NOT WIN32) find_library_with_debug(QCA2_LIBRARIES -- cgit v1.2.1 From 877046103ca395ba7b2d842fd00404869e54bef0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 18 Nov 2008 21:58:50 +0000 Subject: -use the prefix PC_ for the variables coming from pkgconfig (these three modules were working correctly, this is just to establish a convention how to deal with this) Alex svn path=/trunk/KDE/kdelibs/; revision=886256 --- modules/FindLibArt.cmake | 14 +++++++------- modules/FindLibXml2.cmake | 8 ++++---- modules/FindLibXslt.cmake | 10 +++++----- 3 files changed, 16 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 13191d23..d886eeb1 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -23,21 +23,21 @@ else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - pkg_check_modules(LIBART libart-2.0) + pkg_check_modules(PC_LIBART libart-2.0) ######### ?? where is this used ?? ############### - set(LIBART_DEFINITIONS ${LIBART_CFLAGS}) + set(LIBART_DEFINITIONS ${PC_LIBART_CFLAGS}) ENDIF (NOT WIN32) - FIND_PATH(LIBART_INCLUDE_DIR libart_lgpl/libart.h - ${LIBART_INCLUDE_DIRS}/libart-2.0 - /usr/include/libart-2.0 - /usr/local/include/libart-2.0 + FIND_PATH(LIBART_INCLUDE_DIR NAMES libart_lgpl/libart.h + PATHS + ${PC_LIBART_INCLUDE_DIRS} + PATH_SUFFIXES libart-2.0 ) FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 PATHS - ${LIBART_LIBRARY_DIRS} + ${PC_LIBART_LIBRARY_DIRS} ) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 8615e77b..1849e099 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -22,19 +22,19 @@ IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(LIBXML libxml-2.0) - SET(LIBXML2_DEFINITIONS ${LIBXML_CFLAGS}) + pkg_check_modules(PC_LIBXML libxml-2.0) + SET(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h PATHS - ${LIBXML_INCLUDE_DIRS} + ${PC_LIBXML_INCLUDE_DIRS} PATH_SUFFIXES libxml2 ) FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 PATHS - ${LIBXML_LIBRARY_DIRS} + ${PC_LIBXML_LIBRARY_DIRS} ) IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 76e8f77a..ff0110c7 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -22,22 +22,22 @@ IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(XSLT libxslt) - SET(LIBXSLT_DEFINITIONS ${XSLT_CFLAGS}) + pkg_check_modules(PC_XSLT libxslt) + SET(LIBXSLT_DEFINITIONS ${PC_XSLT_CFLAGS}) ENDIF (NOT WIN32) FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h - ${XSLT_INCLUDE_DIRS} + ${PC_XSLT_INCLUDE_DIRS} ) FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt PATHS - ${XSLT_LIBRARY_DIRS} + ${PC_XSLT_LIBRARY_DIRS} ) FIND_LIBRARY(LIBEXSLT_LIBRARIES NAMES exslt libexslt PATHS - ${XSLT_LIBRARY_DIRS} + ${PC_XSLT_LIBRARY_DIRS} ) IF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) -- cgit v1.2.1 From 9fa39a6c1756f33fefc331ae4204087d68092b53 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Tue, 18 Nov 2008 22:35:17 +0000 Subject: figure out the Phonon version and put it in PHONON_VERSION svn path=/trunk/KDE/kdelibs/; revision=886287 --- modules/FindPhonon.cmake | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 14d15422..4d015129 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -4,14 +4,23 @@ # PHONON_FOUND - system has Phonon Library # PHONON_INCLUDES - the Phonon include directory # PHONON_LIBS - link these to use Phonon +# PHONON_VERSION - the version of the Phonon Library # Copyright (c) 2008, Matthias Kretz # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +macro(_phonon_find_version) + file(READ "${PHONON_INCLUDE_DIR}/phonon/phononnamespace.h" _phonon_header LIMIT 5000 OFFSET 1000) + string(REGEX MATCH "define PHONON_VERSION_STR \"(4\\.[0-9]+\\.[0-9a-z]+)\"" _phonon_version_match "${_phonon_header}") + #set(PHONON_VERSION "${CMAKE_MATCH_1}") + message(STATUS "Phonon Version: ${PHONON_VERSION}") +endmacro(_phonon_find_version) + if(PHONON_FOUND) - # Already found, nothing more to do + # Already found, nothing more to do except figuring out the version + _phonon_find_version() else(PHONON_FOUND) if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) set(PHONON_FIND_QUIETLY TRUE) @@ -29,6 +38,7 @@ else(PHONON_FOUND) set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) set(PHONON_FOUND TRUE) + _phonon_find_version() else(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) set(PHONON_FOUND FALSE) endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) -- cgit v1.2.1 From 3ee4f7bfb085ca93e2669b1fd336d40bda76866d Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 20 Nov 2008 15:32:50 +0000 Subject: useful information for debugging, so why not print it svn path=/trunk/KDE/kdelibs/; revision=886921 --- modules/FindSoprano.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 84581a3f..3cc3f22f 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -166,6 +166,7 @@ message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") + message(STATUS "Found Soprano Plugin Dir: ${SOPRANO_PLUGIN_DIR}") message(STATUS "Found Soprano Plugins:${_plugins}") endif(NOT Soprano_FIND_QUIETLY) else(Soprano_FOUND) -- cgit v1.2.1 From 798e10891449f1b381133f45b02117a894965396 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 20 Nov 2008 23:37:45 +0000 Subject: fix QCA detection once again svn path=/trunk/KDE/kdelibs/; revision=887054 --- modules/FindQCA2.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 4cee0676..fe4b0766 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -36,10 +36,9 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) set(QCA2_INCLUDE_DIR ${PC_QCA2_INCLUDE_DIRS}) find_library(QCA2_LIBRARIES NAMES qca PATHS - ${PC_QCA2_LIBRARY_DIRS} + ${PC_QCA2_LIBDIR} NO_DEFAULT_PATH ) - set(QCA2_LIBRARY_DIRS ${PC_QCA2_LIBRARY_DIRS}) else(PC_QCA2_FOUND) find_library(QCA2_LIBRARIES NAMES qca ) find_path(QCA2_INCLUDE_DIR qca.h PATH_SUFFIXES QtCrypto) -- cgit v1.2.1 From 871ed131dbeec812da54b47c8f2da6b68d538db5 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 23 Nov 2008 14:25:02 +0000 Subject: boost 1.37 is out now svn path=/trunk/KDE/kdelibs/; revision=888030 --- modules/FindBoost.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index 171409c6..c378d821 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -93,7 +93,7 @@ OPTION(Boost_USE_MULTITHREADED "Use the multithreaded versions of the boost libraries" ON) -SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1" "1.33.0" "1.33" ) +SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.37" "1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1" "1.33.0" "1.33" ) ############################################ @@ -253,6 +253,7 @@ ELSE (_boost_IN_CACHE) IF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\2" Boost_FIND_VERSION_MINOR ${Boost_MINIMUM_VERSION}) + message(STATUS "3") STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\3" Boost_FIND_VERSION_PATCH ${Boost_MINIMUM_VERSION}) ELSEIF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+") STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) -- cgit v1.2.1 From 75908891c6843f01bcf544c3759e0cf7e4cd3bb3 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 23 Nov 2008 18:04:56 +0000 Subject: SVN_SILENT: remove debug output svn path=/trunk/KDE/kdelibs/; revision=888076 --- modules/FindBoost.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index c378d821..cf0333a0 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -253,7 +253,6 @@ ELSE (_boost_IN_CACHE) IF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\2" Boost_FIND_VERSION_MINOR ${Boost_MINIMUM_VERSION}) - message(STATUS "3") STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\3" Boost_FIND_VERSION_PATCH ${Boost_MINIMUM_VERSION}) ELSEIF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+") STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) -- cgit v1.2.1 From 75930de900d9bd42883dee356b69616e23e033cb Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 24 Nov 2008 08:18:08 +0000 Subject: Port to use new PkgConfig Why FindBlitz.cmake ? I think that we can remove it svn path=/trunk/KDE/kdelibs/; revision=888266 --- modules/FindBlitz.cmake | 9 ++++----- modules/FindQImageBlitz.cmake | 8 ++++---- 2 files changed, 8 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index a26cf5c8..ed439458 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -22,8 +22,8 @@ endif (BLITZ_INCLUDES AND BLITZ_LIBRARIES) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) - pkgconfig(qimageblitz _QIMAGEBLITZ_INCLUDEDIR _QIMAGEBLITZ_LIBDIR _dummyLinkFlags _dummyCflags) + find_package(PkgConfig) + pkg_check_modules(BLITZ qimageblitz) endif (NOT WIN32) find_path(BLITZ_INCLUDES @@ -32,7 +32,7 @@ find_path(BLITZ_INCLUDES PATH_SUFFIXES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/include - ${_QIMAGEBLITZ_INCLUDEDIR} + ${BLITZ_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -42,7 +42,7 @@ find_library_with_debug(BLITZ_LIBRARIES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/lib - ${_QIMAGEBLITZ_LIBDIR} + ${BLITZ_LIBRARY_DIRS} ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) @@ -50,5 +50,4 @@ find_library_with_debug(BLITZ_LIBRARIES include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Blitz DEFAULT_MSG BLITZ_INCLUDES BLITZ_LIBRARIES) - mark_as_advanced(BLITZ_INCLUDES BLITZ_LIBRARIES) diff --git a/modules/FindQImageBlitz.cmake b/modules/FindQImageBlitz.cmake index ae610f1e..8cb56432 100644 --- a/modules/FindQImageBlitz.cmake +++ b/modules/FindQImageBlitz.cmake @@ -19,8 +19,8 @@ endif (QIMAGEBLITZ_INCLUDES AND QIMAGEBLITZ_LIBRARIES) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) - pkgconfig(qimageblitz _QIMAGEBLITZ_INCLUDEDIR _QIMAGEBLITZ_LIBDIR _dummyLinkFlags _dummyCflags) + find_package(PkgConfig) + pkg_check_modules(QIMAGEBLITZ qimageblitz) endif (NOT WIN32) find_path(QIMAGEBLITZ_INCLUDES @@ -29,7 +29,7 @@ find_path(QIMAGEBLITZ_INCLUDES PATH_SUFFIXES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/include - ${_QIMAGEBLITZ_INCLUDEDIR} + ${QIMAGEBLITZ_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -39,7 +39,7 @@ find_library_with_debug(QIMAGEBLITZ_LIBRARIES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/lib - ${_QIMAGEBLITZ_LIBDIR} + ${QIMAGEBLITZ_LIBRARY_DIRS} ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From 301bf4d88c7b62ef81b5ad8c48621205519ad14e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Mon, 24 Nov 2008 22:14:32 +0000 Subject: add back FindEigen.cmake, deprecated (in favor of Eigen2), for compatibility only. CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=888585 --- modules/FindEigen.cmake | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 modules/FindEigen.cmake (limited to 'modules') diff --git a/modules/FindEigen.cmake b/modules/FindEigen.cmake new file mode 100644 index 00000000..c65cb8dc --- /dev/null +++ b/modules/FindEigen.cmake @@ -0,0 +1,33 @@ +# Note that Eigen1 is deprecated in favor of Eigen2. So this file is deprecated +# in favor of FindEigen2.cmake. It is kept only for compatibility. +# +# - Try to find Eigen1 library +# Once done this will define +# +# EIGEN_FOUND - system has eigen lib +# EIGEN_INCLUDE_DIR - the eigen include directory + +# Copyright (c) 2006, 2007 Montel Laurent, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (EIGEN_INCLUDE_DIR) + + # in cache already + set(EIGEN_FOUND TRUE) + +else (EIGEN_INCLUDE_DIR) + +find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h + PATHS + ${INCLUDE_INSTALL_DIR} + ) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Eigen DEFAULT_MSG EIGEN_INCLUDE_DIR ) + + +mark_as_advanced(EIGEN_INCLUDE_DIR) + +endif(EIGEN_INCLUDE_DIR) + -- cgit v1.2.1 From 449870cbb3fd765121cb9f75ab338beb184b8a11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6kcen=20Eraslan?= Date: Fri, 28 Nov 2008 16:54:09 +0000 Subject: Fix the variable name to be checked to make this module really work svn path=/trunk/KDE/kdelibs/; revision=890246 --- modules/FindXine.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 1f177b0c..8f4a6539 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -48,12 +48,12 @@ if (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) endif (XINE_INCLUDE_DIR AND XINE_LIBRARY AND XINECONFIG_EXECUTABLE) -if( XINE_FOUND ) +if( XINE_VERSION_OK) include(CheckCSourceCompiles) set(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) set(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) check_c_source_compiles("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) -endif(XINE_FOUND) +endif(XINE_VERSION_OK) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Xine "Could NOT find XINE 1.1.1 or greater" XINE_INCLUDE_DIR XINE_LIBRARY XINECONFIG_EXECUTABLE XINE_VERSION_OK) -- cgit v1.2.1 From 4c7425e626141ef3d0d3e9f147e660160abe34c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6kcen=20Eraslan?= Date: Sat, 29 Nov 2008 18:01:08 +0000 Subject: If version is OK, set XINE_FOUND to true also. svn path=/trunk/KDE/kdelibs/; revision=890642 --- modules/FindXine.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 8f4a6539..9452e781 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -53,6 +53,7 @@ if( XINE_VERSION_OK) set(CMAKE_REQUIRED_INCLUDES ${XINE_INCLUDE_DIR}) set(CMAKE_REQUIRED_LIBRARIES ${XINE_LIBRARY}) check_c_source_compiles("#include \nint main()\n{\n xine_open_video_driver(xine_new(), \"auto\", XINE_VISUAL_TYPE_XCB, NULL);\n return 0;\n}\n" XINE_XCB_FOUND) + set(XINE_FOUND TRUE) endif(XINE_VERSION_OK) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 68d1c5c031d0b956a6a157f5950970d547d95b7a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 1 Dec 2008 22:36:05 +0000 Subject: -add some comments about the imported targets -remove old commented code Alex svn path=/trunk/KDE/kdelibs/; revision=891394 --- modules/FindKDE4Internal.cmake | 62 +++++------------------------------------- 1 file changed, 7 insertions(+), 55 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6f45763d..c0952482 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -447,146 +447,98 @@ else (_kdeBootStrapping) get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) endif (WIN32) - # this file contains all dependencies of all libraries of kdelibs, Alex + # This file contains information about the installed kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + # This file contains the exported library target from kdelibs (new with cmake 2.6.x) + # Include it to "import" the libraries from kdelibs into the current projects as targets. + # This makes setting the _LIBRARY and _LIBS variables actually a bit superfluos, since e.g. + # the kdeui library could now also be used just as "kdeui" and still have all their + # dependent libraries handled correctly. But to keep compatibility and not to change + # behaviour we set all these variables anyway as seen below. Alex include(${kde_cmake_module_dir}/KDELibsLibraryTargets.cmake) if (UNIX) -# find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} ) set(KDE4_KDEFAKES_LIBRARY kdefakes ) set(KDE4_KDEFAKES_LIBS kdefakes ) endif (UNIX) -# find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} ) - set(KDE4_KDECORE_LIBRARY kdecore) set(KDE4_KDECORE_LIBS kdecore) - -# find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} ) set(KDE4_KDEUI_LIBRARY kdeui ) set(KDE4_KDEUI_LIBS kdeui ) -# find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} ) set(KDE4_KIO_LIBRARY kio ) set(KDE4_KIO_LIBS kio ) -# find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} ) set(KDE4_KPARTS_LIBRARY kparts ) set(KDE4_KPARTS_LIBS kparts ) -# find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} ) set(KDE4_KUTILS_LIBRARY kutils ) set(KDE4_KUTILS_LIBS kutils ) -# find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} ) set(KDE4_KDE3SUPPORT_LIBRARY kde3support ) set(KDE4_KDE3SUPPORT_LIBS kde3support ) -# find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} ) set(KDE4_KFILE_LIBRARY kfile ) set(KDE4_KFILE_LIBS kfile ) -# find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} ) set(KDE4_KHTML_LIBRARY khtml ) set(KDE4_KHTML_LIBS khtml ) -# find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} ) set(KDE4_KJS_LIBRARY kjs ) set(KDE4_KJS_LIBS kjs ) -# find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KJSAPI_LIBS ${kjsapi_LIB_DEPENDS} ${KDE4_KJSAPI_LIBRARY} ) set(KDE4_KJSAPI_LIBRARY kjsapi ) set(KDE4_KJSAPI_LIBS kjsapi ) -# find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} ) set(KDE4_KNEWSTUFF2_LIBRARY knewstuff2 ) set(KDE4_KNEWSTUFF2_LIBS knewstuff2 ) if (UNIX) -# find_library(KDE4_KPTY_LIBRARY NAMES kpty PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KPTY_LIBS ${kpty_LIB_DEPENDS} ${KDE4_KPTY_LIBRARY} ) set(KDE4_KPTY_LIBRARY kpty ) set(KDE4_KPTY_LIBS kpty ) -# find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} ) set(KDE4_KDESU_LIBRARY kdesu ) set(KDE4_KDESU_LIBS kdesu ) endif (UNIX) -# find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} ) set(KDE4_KDNSSD_LIBRARY kdnssd ) set(KDE4_KDNSSD_LIBS kdnssd ) -# find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} ) set(KDE4_SOLID_LIBRARY solid ) set(KDE4_SOLID_LIBS solid ) -# find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} ) set(KDE4_THREADWEAVER_LIBRARY threadweaver ) set(KDE4_THREADWEAVER_LIBS threadweaver ) set(KDE4_THREADWEAVER_LIBRARIES threadweaver ) -# find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} ) set(KDE4_KNOTIFYCONFIG_LIBRARY knotifyconfig ) set(KDE4_KNOTIFYCONFIG_LIBS knotifyconfig ) -# find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} ) set(KDE4_KROSSCORE_LIBRARY krosscore ) set(KDE4_KROSSCORE_LIBS krosscore ) -# find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} ) set(KDE4_KROSSUI_LIBRARY krossui ) set(KDE4_KROSSUI_LIBS krossui ) -# find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} ) set(KDE4_KTEXTEDITOR_LIBRARY ktexteditor ) set(KDE4_KTEXTEDITOR_LIBS ktexteditor ) - # Can't do that, it's not always compiled. - #find_library(KDE4_KNEPOMUK_LIBRARY NAMES knepomuk PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - #set(KDE4_KNEPOMUK_LIBS ${knepomuk_LIB_DEPENDS} ${KDE4_KNEPOMUK_LIBRARY} ) if(TARGET knepomuk) set(KDE4_KNEPOMUK_LIBRARY knepomuk ) set(KDE4_KNEPOMUK_LIBS knepomuk ) endif(TARGET knepomuk) - # Can't do that, it's not always compiled. See FindKMetaData.cmake - #find_library(KDE4_KMETADATA_LIBRARY NAMES kmetadata PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) - #set(KDE4_KMETADATA_LIBS ${kmetadata_LIB_DEPENDS} ${KDE4_KMETADATA_LIBRARY} ) if(TARGET kmetadata) set(KDE4_KMETADATA_LIBRARY kmetadata ) set(KDE4_KMETADATA_LIBS kmetadata ) endif(TARGET kmetadata) -# find_library(KDE4_KFORMULA_LIBRARY NAMES kformula PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_KFORMULA_LIBS ${kformula_LIB_DEPENDS} ${KDE4_KFORMULA_LIBRARY} ) set(KDE4_KFORMULA_LIBRARY kformula ) set(KDE4_KFORMULA_LIBS kformula ) -# find_library(KDE4_PLASMA_LIBRARY NAMES plasma PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH ) -# set(KDE4_PLASMA_LIBS ${plasma_LIB_DEPENDS} ${KDE4_PLASMA_LIBRARY} ) set(KDE4_PLASMA_LIBRARY plasma ) set(KDE4_PLASMA_LIBS plasma ) -- cgit v1.2.1 From d4d0eb927fcfc990d4f6ee1dc31705bedaaba84a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 2 Dec 2008 02:16:39 +0000 Subject: big patch which makes the reduced link interface work for kdepimlibs and kdepim: * Use target_link_libraries(... LINK_INTERFACE_LIBRARIES ...) to define the "link interface" of the libs in kdepimlibs. To enable this, set the option KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT to on using "make edit_cache". Then apps linking to libraries will only link to the library itself and to the libraries specified using LINK_INTERFACE_LIBRARIES. This gives less dependencies for packagers, after startup and I think there were more advantages. * To make this work, export_library_dependencies() may not be used anymore, but instead the library targets have to be "exported", so they can be imported again later by other projects and this way bring their link interface with them. So now all library targets from kdepimlibs are exported in the set kdepimlibsLibraryTargets. * To be able to give the developer some useful error message, KdepimLibsDependencies.cmake now errors out and tells the developer to update kdelibs, and the install location information is now in KdepimLibsInformation.cmake, which tells the developer to update kdepimlibs if it's not recent enough. So: you need now an up-to-date version of kdepimlibs and kdesupport ! If that's not acceptable let me know and I'll add some workaround. * Search the xsl file in the install location of the already installed kdelibs, not in the current install location, which may be in a completely different place. * Use the correct install location (KDEPIMLIBS_INSTALL_DIR) in KdepimLibsInformation.cmake instead of KDE4_INSTALL_DIR, which is the one for kdelibs, but not for kdepimlibs. * more minor things I don't remember right now * Do you actually have a version number for kdepimlibs ? It would be easy to add via KdepimLibsInformation.cmake Alex CCMAIL: kdepim@kde.org CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=891439 --- modules/FindKdepimLibs.cmake | 124 +++++++++++++++++++++++-------------------- 1 file changed, 65 insertions(+), 59 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 759ccfa0..8b449d93 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -3,7 +3,25 @@ # # KDEPIMLIBS_FOUND - system has KDE PIM Libraries # KDEPIMLIBS_INCLUDE_DIR - the KDE PIM Libraries include directory - +# It also sets: +# KDEPIMLIBS_AKONADI_LIBS +# KDEPIMLIBS_AKONADI_KMIME_LIBS +# KDEPIMLIBS_AKONADI_KABC_LIBS +# KDEPIMLIBS_GPGMEPP_LIBS +# KDEPIMLIBS_KABC_LIBS +# KDEPIMLIBS_KBLOG_LIBS +# KDEPIMLIBS_KCAL_LIBS +# KDEPIMLIBS_KIMAP_LIBS +# KDEPIMLIBS_KLDAP_LIBS +# KDEPIMLIBS_KMIME_LIBS +# KDEPIMLIBS_KPIMIDENTITIES_LIBS +# KDEPIMLIBS_KPIMUTILS_LIBS +# KDEPIMLIBS_KRESOURCES_LIBS +# KDEPIMLIBS_KTNEF_LIBS +# KDEPIMLIBS_KXMLRPCCLIENT_LIBS +# KDEPIMLIBS_MAILTRANSPORT_LIBS +# KDEPIMLIBS_QGPGME_LIBS +# KDEPIMLIBS_SYNDICATION_LIBS # Copyright (c) 2006, Laurent Montel, # Copyright (c) 2006, Ralf Habacker, @@ -26,72 +44,61 @@ find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal_export.h ${KDE4_INCLUDE_DIR} ) -if( KDEPIMLIBS_INCLUDE_DIR ) - set(KDEPIMLIBS_FOUND TRUE) - - # this file contains all dependencies of all libraries of kdepimlibs, Alex - include(KDEPimLibsDependencies) - - find_library(KDE4_AKONADI_LIBRARY NAMES akonadi-kde PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_AKONADI_LIBS ${akonadi_LIB_DEPENDS} ${KDE4_AKONADI_LIBRARY} ) - - find_library(KDE4_AKONADI_KMIME_LIBRARY NAMES akonadi-kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_AKONADI_KMIME_LIBS ${akonadi_kmime_LIB_DEPENDS} ${KDE4_AKONADI_KMIME_LIBRARY} ) - - find_library(KDE4_AKONADI_KABC_LIBRARY NAMES akonadi-kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_AKONADI_KABC_LIBS ${akonadi_kabc_LIB_DEPENDS} ${KDE4_AKONADI_KABC_LIBRARY} ) - - find_library(KDE4_GPGMEPP_LIBRARY NAMES gpgme++ PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_GPGMEPP_LIBS ${gpgmepp_LIB_DEPENDS} ${KDE4_GPGMEPP_LIBRARY} ) - - find_library(KDE4_KABC_LIBRARY NAMES kabc PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KABC_LIBS ${kabc_LIB_DEPENDS} ${KDE4_KABC_LIBRARY} ) - - find_library(KDE4_KBLOG_LIBRARY NAMES kblog PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KBLOG_LIBS ${kblog_LIB_DEPENDS} ${KDE4_KBLOG_LIBRARY} ) - - find_library(KDE4_KCAL_LIBRARY NAMES kcal PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KCAL_LIBS ${kcal_LIB_DEPENDS} ${KDE4_KCAL_LIBRARY} ) +macro(_KDEPIMLibs_Set_Lib_Vars _prefix _lib) + set(KDEPIMLIBS_${_prefix}_LIBRARY ${_lib}) + set(KDEPIMLIBS_${_prefix}_LIBS ${_lib}) + # these two are set for compatibility with KDE 4.[01], Alex: + set(KDE4_${_prefix}_LIBRARY ${_lib}) + set(KDE4_${_prefix}_LIBS ${_lib}) +endmacro(_KDEPIMLibs_Set_Lib_Vars) - find_library(KDE4_KIMAP_LIBRARY NAMES kimap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KIMAP_LIBS ${kimap_LIB_DEPENDS} ${KDE4_KIMAP_LIBRARY} ) - find_library(KDE4_KLDAP_LIBRARY NAMES kldap PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KLDAP_LIBS ${kldap_LIB_DEPENDS} ${KDE4_KLDAP_LIBRARY} ) - - find_library(KDE4_KMIME_LIBRARY NAMES kmime PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KMIME_LIBS ${kmime_LIB_DEPENDS} ${KDE4_KMIME_LIBRARY} ) - - find_library(KDE4_KPIMIDENTITIES_LIBRARY NAMES kpimidentities PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPIMIDENTITIES_LIBS ${kpimidentities_LIB_DEPENDS} ${KDE4_KPIMIDENTITIES_LIBRARY} ) - - find_library(KDE4_KPIMUTILS_LIBRARY NAMES kpimutils PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KPIMUTILS_LIBS ${kpimutils_LIB_DEPENDS} ${KDE4_KPIMUTILS_LIBRARY} ) - - find_library(KDE4_KRESOURCES_LIBRARY NAMES kresources PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KRESOURCES_LIBS ${kresources_LIB_DEPENDS} ${KDE4_KRESOURCES_LIBRARY} ) - - find_library(KDE4_KTNEF_LIBRARY NAMES ktnef PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KTNEF_LIBS ${ktnef_LIB_DEPENDS} ${KDE4_KTNEF_LIBRARY} ) - - find_library(KDE4_KXMLRPCCLIENT_LIBRARY NAMES kxmlrpcclient PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_KXMLRPCCLIENT_LIBS ${kxmlrpcclient_LIB_DEPENDS} ${KDE4_KXMLRPCCLIENT_LIBRARY} ) - - find_library(KDE4_MAILTRANSPORT_LIBRARY NAMES mailtransport PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_MAILTRANSPORT_LIBS ${mailtransport_LIB_DEPENDS} ${KDE4_MAILTRANSPORT_LIBRARY} ) +if( KDEPIMLIBS_INCLUDE_DIR ) + set(KDEPIMLIBS_FOUND TRUE) - find_library(KDE4_QGPGME_LIBRARY NAMES qgpgme PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_QGPGME_LIBS ${qgpgme_LIB_DEPENDS} ${KDE4_QGPGME_LIBRARY} ) + get_filename_component( kdepimlibs_cmake_module_dir "${KDEPIMLIBS_INCLUDE_DIR}" PATH) + set(kdepimlibs_cmake_module_dir "${kdepimlibs_cmake_module_dir}/share/apps/cmake/modules") + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${kdepimlibs_cmake_module_dir}") - find_library(KDE4_SYNDICATION_LIBRARY NAMES syndication PATHS ${KDE4_LIB_DIR} NO_DEFAULT_PATH ) - set(KDE4_SYNDICATION_LIBS ${syndication_LIB_DEPENDS} ${KDE4_SYNDICATION_LIBRARY} ) + # this file contains all dependencies of all libraries of kdepimlibs, Alex + include("${kdepimlibs_cmake_module_dir}/KDEPimLibsInformation.cmake" OPTIONAL RESULT_VARIABLE _newKdepimLibsFound) + # if this file could not be loaded, we found an older version of Kdepimlibs, tell the + # developer that he should update kdepimlibs. Alex + if (NOT _newKdepimLibsFound) + message(FATAL_ERROR "You need a newer version of kdepimlibs, please update it") + endif (NOT _newKdepimLibsFound) + + include("${kdepimlibs_cmake_module_dir}/KDEPimLibsLibraryTargets.cmake") + + _kdepimlibs_set_lib_vars( AKONADI akonadi-kde) + _kdepimlibs_set_lib_vars( AKONADI_KMIME akonadi-kmime) + _kdepimlibs_set_lib_vars( AKONADI_KABC akonadi-kabc) + _kdepimlibs_set_lib_vars( GPGMEPP gpgmepp) + _kdepimlibs_set_lib_vars( KABC kabc) + _kdepimlibs_set_lib_vars( KBLOG kblog) + _kdepimlibs_set_lib_vars( KCAL kcal) + _kdepimlibs_set_lib_vars( KIMAP kimap) + _kdepimlibs_set_lib_vars( KLDAP kldap) + _kdepimlibs_set_lib_vars( KMIME kmime) + _kdepimlibs_set_lib_vars( KPIMIDENTITIES kpimidentities) + _kdepimlibs_set_lib_vars( KPIMUTILS kpimutils) + _kdepimlibs_set_lib_vars( KRESOURCES kresources) + _kdepimlibs_set_lib_vars( KTNEF ktnef) + _kdepimlibs_set_lib_vars( KXMLRPCCLIENT kxmlrpcclient) + _kdepimlibs_set_lib_vars( MAILTRANSPORT mailtransport) + _kdepimlibs_set_lib_vars( QGPGME qgpgme) + _kdepimlibs_set_lib_vars( SYNDICATION syndication) + + # this is bad, so I commented it out. A module shouldn't modify variables + # set by another module. Alex. + # # setup global used KDE include + # set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) - # setup global used KDE include - set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) else( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND FALSE) endif( KDEPIMLIBS_INCLUDE_DIR ) + if (KDEPIMLIBS_FOUND) if (NOT KdepimLibs_FIND_QUIETLY) message(STATUS "Found KDE PIM libraries") @@ -102,4 +109,3 @@ else (KDEPIMLIBS_FOUND) endif (KdepimLibs_FIND_REQUIRED) endif (KDEPIMLIBS_FOUND) - -- cgit v1.2.1 From 8a48c79821aa605c7cd4b85353b0ed118164c62d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 2 Dec 2008 15:33:17 +0000 Subject: make more variables as advanced, so the non-advanced view is less cluttered Alex svn path=/trunk/KDE/kdelibs/; revision=891674 --- modules/FindFlac.cmake | 2 +- modules/FindKDE4Internal.cmake | 2 ++ modules/FindOggVorbis.cmake | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindFlac.cmake b/modules/FindFlac.cmake index 0be8a407..56b3eef9 100644 --- a/modules/FindFlac.cmake +++ b/modules/FindFlac.cmake @@ -51,5 +51,5 @@ ELSE(FLAC_FOUND) ENDIF(FLAC_FOUND) # show the FLAC_INCLUDE_DIR and FLAC_LIBRARIES variables only in the advanced view -MARK_AS_ADVANCED(FLAC_INCLUDE_DIR FLAC_LIBRARIES ) +MARK_AS_ADVANCED(FLAC_INCLUDE_DIR FLAC_LIBRARIES FLAC_OGG_LIBRARY) diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c0952482..739bf876 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -558,6 +558,8 @@ else (_kdeBootStrapping) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) + + mark_as_advanced(KDE4_KCFGC_EXECUTABLE KDE4_MEINPROC_EXECUTABLE KDE4_MAKEKDEWIDGETS_EXECUTABLE) # allow searching cmake modules in all given kde install locations (KDEDIRS based) execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) diff --git a/modules/FindOggVorbis.cmake b/modules/FindOggVorbis.cmake index 79a9ab40..e72d849d 100644 --- a/modules/FindOggVorbis.cmake +++ b/modules/FindOggVorbis.cmake @@ -26,6 +26,9 @@ find_library(VORBIS_LIBRARY NAMES vorbis) find_library(VORBISFILE_LIBRARY NAMES vorbisfile) find_library(VORBISENC_LIBRARY NAMES vorbisenc) +mark_as_advanced(VORBIS_INCLUDE_DIR OGG_INCLUDE_DIR + OGG_LIBRARY VORBIS_LIBRARY VORBISFILE_LIBRARY VORBISENC_LIBRARY) + if (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_LIBRARY) set(OGGVORBIS_FOUND TRUE) -- cgit v1.2.1 From 6f0bf4d857818abe898ec635ea5de0aacf6e5814 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 2 Dec 2008 20:26:47 +0000 Subject: -make pkgconfig working and optional Alex Boudewijn: can you please let me know if this one works for you know ? CCMAIL: boud@valdyas.org svn path=/trunk/KDE/kdelibs/; revision=891754 --- modules/FindOpenEXR.cmake | 56 +++++++++++++++++++++++------------------------ 1 file changed, 27 insertions(+), 29 deletions(-) (limited to 'modules') diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index 7b7a03f0..eb3829cb 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -14,53 +14,52 @@ if (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) # in cache already - SET(OPENEXR_FOUND TRUE) + set(OPENEXR_FOUND TRUE) else (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) -IF (NOT WIN32) + # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(OPENEXR OpenEXR) - -ENDIF (NOT WIN32) + pkg_check_modules(PC_OPENEXR OpenEXR) + FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h - ${OPENEXR_INCLUDE_DIRS} - PATH_SUFFIXES /OpenEXR/ + HINTS + ${PC_OPENEXR_INCLUDEDIR} + ${PC_OPENEXR_INCLUDE_DIRS} + PATH_SUFFIXES OpenEXR ) FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half - PATHS - ${OPENEXR_LIBRARY_DIRS} - NO_DEFAULT_PATH + HINTS + ${PC_OPENEXR_LIBDIR} + ${PC_OPENEXR_LIBRARY_DIRS} ) - FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half ) - - + + FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex PATHS - ${OPENEXR_LIBRARY_DIRS} - NO_DEFAULT_PATH + ${PC_OPENEXR_LIBDIR} + ${PC_OPENEXR_LIBRARY_DIRS} ) - FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex ) - + FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath - PATHS - ${OPENEXR_LIBRARY_DIRS} + HINTS + ${PC_OPENEXR_LIBDIR} + ${PC_OPENEXR_LIBRARY_DIRS} NO_DEFAULT_PATH ) - FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath ) - + FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf - PATHS - ${OPENEXR_LIBRARY_DIRS} - NO_DEFAULT_PATH + HINTS + ${PC_OPENEXR_LIBDIR} + ${PC_OPENEXR_LIBRARY_DIRS} ) - FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf ) FIND_LIBRARY(OPENEXR_ILMTHREAD_LIBRARY NAMES IlmThread - PATHS - ${OPENEXR_LIBRARY_DIRS} + HINTS + ${PC_OPENEXR_LIBDIR} + ${PC_OPENEXR_LIBRARY_DIRS} ) if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) @@ -82,7 +81,6 @@ ENDIF (NOT WIN32) endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - if (OPENEXR_FOUND) if (NOT OpenEXR_FIND_QUIETLY) message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") @@ -93,7 +91,7 @@ ENDIF (NOT WIN32) endif (OpenEXR_FIND_REQUIRED) endif (OPENEXR_FOUND) - MARK_AS_ADVANCED( + mark_as_advanced( OPENEXR_INCLUDE_DIR OPENEXR_LIBRARIES OPENEXR_ILMIMF_LIBRARY -- cgit v1.2.1 From c379d4c4e0655fac2dadd4be57e2e5cd23d40572 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 2 Dec 2008 21:49:01 +0000 Subject: -rework all uses of find_package(PkgConfig)/pkg_check_modules(): the prefix used for pkgconfig config (e.g. SQLITE) now *always* gets an additional "PC_" prefix, so the prefix used for pkgconfig is now "PC_SQLITE_". This avoids name clashes between variables defined by the pkgconfig macro and the find module and unwanted effects. *Never* use the _CFLAGS coming from pkgconfig, but always CFLAGS_OTHER, since these shouldn't contain the include directories. If the include directories would be in the DEFINITIONS variable this could clash with the results of find_path() for finding include dirs. *Always* use both foo_INCLUDEDIR, foo_INCLUDE_DIRS for searching the include dir, and also both foo_LIBDIR and foo_LIBRARY_DIRS for searching the libraries. These directories coming from pkgconfig are *never* used exclusively, but *always* additionally to the standard search dirs, either before them (then using the "HINTS" keyword) or after them (then using the "PATHS" keyword) I hope I didn't break (too much) stuff. At least on my system it all seems to work the same way as it did before, with and without pkgconfig. Alex svn path=/trunk/KDE/kdelibs/; revision=891805 --- modules/FindAGG.cmake | 30 +++++++++++++++--------------- modules/FindBlitz.cmake | 8 +++++--- modules/FindBlueZ.cmake | 10 ++++++---- modules/FindFontconfig.cmake | 11 +++++++---- modules/FindGObject.cmake | 27 +++++++++++++++------------ modules/FindGStreamer.cmake | 20 ++++++++++++-------- modules/FindLCMS.cmake | 28 ++++++++++------------------ modules/FindLibArt.cmake | 4 +++- modules/FindLibXml2.cmake | 8 +++++--- modules/FindLibXslt.cmake | 6 +++++- modules/FindPCRE.cmake | 14 ++++++++------ modules/FindQCA2.cmake | 37 ++++++++++++------------------------- modules/FindQImageBlitz.cmake | 8 +++++--- modules/FindSqlite.cmake | 10 ++++++---- modules/FindStrigi.cmake | 1 - modules/FindUSB.cmake | 6 +++--- modules/FindXine.cmake | 2 ++ modules/FindXmms.cmake | 39 ++++++++++++++++++++++----------------- 18 files changed, 141 insertions(+), 128 deletions(-) (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index ea7905bd..94d68da4 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -14,24 +14,24 @@ if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) # in cache already - SET(AGG_FOUND TRUE) + set(AGG_FOUND TRUE) else (AGG_INCLUDE_DIR AND AGG_LIBRARIES) -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - pkg_check_modules(AGG libagg) - - set(AGG_DEFINITIONS ${AGG_CFLAGS}) -ENDIF (NOT WIN32) - FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h - ${AGG_INCLUDE_DIRS} + if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + pkg_check_modules(PC_AGG libagg) + + set(AGG_DEFINITIONS ${PC_AGG_CFLAGS_OTHER}) + endif (NOT WIN32) + + find_path(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h + PATHS ${PC_AGG_INCLUDEDIR} ${PC_AGG_INCLUDE_DIRS} ) - FIND_LIBRARY(AGG_LIBRARIES NAMES agg - PATHS - ${AGG_LIBRARY_DIRS} + find_library(AGG_LIBRARIES NAMES agg + PATHS ${PC_AGG_LIBDIR} ${PC_AGG_LIBRARY_DIRS} ) if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) @@ -48,6 +48,6 @@ ENDIF (NOT WIN32) endif (AGG_FIND_REQUIRED) endif (AGG_FOUND) - MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) + mark_as_advanced(AGG_INCLUDE_DIR AGG_LIBRARIES) endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index ed439458..2427999e 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -23,7 +23,7 @@ if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(BLITZ qimageblitz) + pkg_check_modules(PC_BLITZ qimageblitz) endif (NOT WIN32) find_path(BLITZ_INCLUDES @@ -32,7 +32,8 @@ find_path(BLITZ_INCLUDES PATH_SUFFIXES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/include - ${BLITZ_INCLUDE_DIRS} + ${PC_BLITZ_INCLUDEDIR} + ${PC_BLITZ_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -42,7 +43,8 @@ find_library_with_debug(BLITZ_LIBRARIES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/lib - ${BLITZ_LIBRARY_DIRS} + ${PC_BLITZ_LIBRARY_DIRS} + ${PC_BLITZ_LIBDIR} ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake index 8e1a2fc4..47161868 100644 --- a/modules/FindBlueZ.cmake +++ b/modules/FindBlueZ.cmake @@ -20,20 +20,22 @@ endif ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) if( NOT WIN32 ) find_package(PkgConfig) - pkg_check_modules(BLUEZ bluez) + pkg_check_modules(PC_BLUEZ bluez) - set(BLUEZ_DEFINITIONS ${BLUEZ_CFLAGS}) + set(BLUEZ_DEFINITIONS ${PC_BLUEZ_CFLAGS_OTHER}) endif( NOT WIN32 ) FIND_PATH(BLUEZ_INCLUDE_DIR NAMES bluetooth/bluetooth.h PATHS - ${BLUEZ_INCLUDE_DIRS} + ${PC_BLUEZ_INCLUDEDIR} + ${PC_BLUEZ_INCLUDE_DIRS} /usr/X11/include ) FIND_LIBRARY(BLUEZ_LIBRARIES NAMES bluetooth PATHS - ${BLUEZ_LIBRARY_DIRS} + ${PC_BLUEZ_LIBDIR} + ${PC_BLUEZ_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 10fd0734..268a61ae 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -2,6 +2,7 @@ # Once done this will define # # FONTCONFIG_FOUND - system has Fontconfig +# FONTCONFIG_INCLUDE_DIR - The include directory to use for the fontconfig headers # FONTCONFIG_LIBRARIES - Link these to use FONTCONFIG # FONTCONFIG_DEFINITIONS - Compiler switches required for using FONTCONFIG @@ -22,20 +23,22 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(FONTCONFIG fontconfig) + pkg_check_modules(PC_FONTCONFIG fontconfig) - set(FONTCONFIG_DEFINITIONS ${FONTCONFIG_CFLAGS}) + set(FONTCONFIG_DEFINITIONS ${PC_FONTCONFIG_CFLAGS_OTHER}) endif (NOT WIN32) find_path(FONTCONFIG_INCLUDE_DIR fontconfig/fontconfig.h PATHS - ${FONTCONFIG_INCLUDE_DIRS} + ${PC_FONTCONFIG_INCLUDEDIR} + ${PC_FONTCONFIG_INCLUDE_DIRS} /usr/X11/include ) find_library(FONTCONFIG_LIBRARIES NAMES fontconfig PATHS - ${FONTCONFIG_LIBRARY_DIRS} + ${PC_FONTCONFIG_LIBDIR} + ${PC_FONTCONFIG_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index 3774b914..538cad5f 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -19,37 +19,40 @@ ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - pkg_check_modules(GOBJECT gobject-2.0) + FIND_PACKAGE(PkgConfig) + PKG_CHECK_MODULES(PC_GOBJECT gobject-2.0) #MESSAGE(STATUS "DEBUG: GObject include directory = ${GOBJECT_INCLUDE_DIRS}") #MESSAGE(STATUS "DEBUG: GObject link directory = ${GOBJECT_LIBRARY_DIRS}") #MESSAGE(STATUS "DEBUG: GObject CFlags = ${GOBJECT_CFLAGS}") - SET(GOBJECT_DEFINITIONS ${GOBJECT_CFLAGS}) + SET(GOBJECT_DEFINITIONS ${PC_GOBJECT_CFLAGS_OTHER}) ENDIF (NOT WIN32) FIND_PATH(GOBJECT_INCLUDE_DIR gobject.h PATHS - ${GOBJECT_INCLUDE_DIRS} - ${GOBJECT_INCLUDE_DIRS}/glib-2.0/gobject/ - /usr/include/glib-2.0/gobject/ - #PATH_SUFFIXES gst + ${PC_GOBJECT_INCLUDEDIR} + ${PC_GOBJECT_INCLUDE_DIRS} + PATH_SUFFIXES glib-2.0/gobject/ ) FIND_LIBRARY(_GObjectLibs NAMES gobject-2.0 PATHS - ${GOBJECT_LIBRARY_DIRS} + ${PC_GOBJECT_LIBDIR} + ${PC_GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GModuleLibs NAMES gmodule-2.0 PATHS - ${GOBJECT_LIBRARY_DIRS} + ${PC_GOBJECT_LIBDIR} + ${PC_GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GThreadLibs NAMES gthread-2.0 PATHS - ${GOBJECT_LIBRARY_DIRS} + ${PC_GOBJECT_LIBDIR} + ${PC_GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GLibs NAMES glib-2.0 PATHS - ${GOBJECT_LIBRARY_DIRS} + ${PC_GOBJECT_LIBDIR} + ${PC_GOBJECT_LIBRARY_DIRS} ) SET( GOBJECT_LIBRARIES ${_GObjectLibs} ${_GModuleLibs} ${_GThreadLibs} ${_GLibs} ) @@ -71,4 +74,4 @@ ELSE (GOBJECT_FOUND) ENDIF(GObject_FIND_REQUIRED) ENDIF (GOBJECT_FOUND) -MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES) +MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR _GObjectLibs _GModuleLibs _GThreadLibs _GLibs) diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake index 291ddc3b..b87e37fd 100644 --- a/modules/FindGStreamer.cmake +++ b/modules/FindGStreamer.cmake @@ -20,33 +20,37 @@ ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARIES AND GSTREAMER_BASE_LIBRARY IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - pkg_check_modules(GSTREAMER gstreamer-0.10) + FIND_PACKAGE(PkgConfig) + PKG_CHECK_MODULES(PC_GSTREAMER gstreamer-0.10) #MESSAGE(STATUS "DEBUG: GStreamer include directory = ${GSTREAMER_INCLUDE_DIRS}") #MESSAGE(STATUS "DEBUG: GStreamer link directory = ${GSTREAMER_LIBRARY_DIRS}") - #MESSAGE(STATUS "DEBUG: GStreamer CFlags = ${GSTREAMER_CFLAGS}") - SET(GSTREAMER_DEFINITIONS ${GSTREAMER_CFLAGS}) + #MESSAGE(STATUS "DEBUG: GStreamer CFlags = ${GSTREAMER_CFLAGS_OTHER}") + SET(GSTREAMER_DEFINITIONS ${PC_GSTREAMER_CFLAGS_OTHER}) ENDIF (NOT WIN32) FIND_PATH(GSTREAMER_INCLUDE_DIR gst/gst.h PATHS - ${GSTREAMER_INCLUDE_DIRS} + ${PC_GSTREAMER_INCLUDEDIR} + ${PC_GSTREAMER_INCLUDE_DIRS} #PATH_SUFFIXES gst ) FIND_LIBRARY(GSTREAMER_LIBRARIES NAMES gstreamer-0.10 PATHS - ${GSTREAMER_LIBRARY_DIRS} + ${PC_GSTREAMER_LIBDIR} + ${PC_GSTREAMER_LIBRARY_DIRS} ) FIND_LIBRARY(GSTREAMER_BASE_LIBRARY NAMES gstbase-0.10 PATHS - ${GSTREAMER_LIBRARY_DIRS} + ${PC_GSTREAMER_LIBDIR} + ${PC_GSTREAMER_LIBRARY_DIRS} ) FIND_LIBRARY(GSTREAMER_INTERFACE_LIBRARY NAMES gstinterfaces-0.10 PATHS - ${GSTREAMER_LIBRARY_DIRS} + ${PC_GSTREAMER_LIBDIR} + ${PC_GSTREAMER_LIBRARY_DIRS} ) IF (GSTREAMER_INCLUDE_DIR) diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 97ac7ef1..52109933 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -9,31 +9,23 @@ # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls if(NOT WIN32) -find_package(PkgConfig) -pkg_check_modules(LCMS lcms) -set(LCMS_DEFINITIONS ${LCMS_CFLAGS}) + find_package(PkgConfig) + pkg_check_modules(PC_LCMS lcms) + set(LCMS_DEFINITIONS ${PC_LCMS_CFLAGS_OTHER}) endif(NOT WIN32) find_path(LCMS_INCLUDE_DIR lcms.h - ${LCMS_INCLUDE_DIRS} - ${CMAKE_INSTALL_PREFIX}/include - /usr/include/lcms - /usr/include/liblcms1 - /usr/local/include/lcms - NO_DEFAULT_PATH -) -find_path(LCMS_INCLUDE_DIR lcms.h + PATHS + ${PC_LCMS_INCLUDEDIR} + ${PC_LCMS_INCLUDE_DIRS} + PATH_SUFFIXES lcms liblcms1 ) find_library(LCMS_LIBRARIES NAMES lcms liblcms lcms-1 liblcms-1 PATHS - ${LCMS_LIBRARY_DIRS} - ${CMAKE_INSTALL_PREFIX}/lib - /usr/lib/lcms - /usr/local/lib/lcms - NO_DEFAULT_PATH -) -find_library(LCMS_LIBRARIES NAMES lcms liblcms lcms-1 liblcms-1 + ${PC_LCMS_LIBDIR} + ${PC_LCMS_LIBRARY_DIRS} + PATH_SUFFIXES lcms ) if(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index d886eeb1..99eaff65 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -26,17 +26,19 @@ else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) pkg_check_modules(PC_LIBART libart-2.0) ######### ?? where is this used ?? ############### - set(LIBART_DEFINITIONS ${PC_LIBART_CFLAGS}) + set(LIBART_DEFINITIONS ${PC_LIBART_CFLAGS_OTHER}) ENDIF (NOT WIN32) FIND_PATH(LIBART_INCLUDE_DIR NAMES libart_lgpl/libart.h PATHS + ${PC_LIBART_INCLUDEDIR} ${PC_LIBART_INCLUDE_DIRS} PATH_SUFFIXES libart-2.0 ) FIND_LIBRARY(LIBART_LIBRARIES NAMES art_lgpl_2 PATHS + ${PC_LIBART_LIBDIR} ${PC_LIBART_LIBRARY_DIRS} ) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 1849e099..04a73857 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -23,17 +23,19 @@ IF (NOT WIN32) # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) pkg_check_modules(PC_LIBXML libxml-2.0) - SET(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS}) + SET(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS_OTHER}) ENDIF (NOT WIN32) FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h - PATHS + HINTS + ${PC_LIBXML_INCLUDEDIR} ${PC_LIBXML_INCLUDE_DIRS} PATH_SUFFIXES libxml2 ) FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 - PATHS + HINTS + ${PC_LIBXML_LIBDIR} ${PC_LIBXML_LIBRARY_DIRS} ) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index ff0110c7..3a1bcd46 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -23,20 +23,24 @@ IF (NOT WIN32) # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) pkg_check_modules(PC_XSLT libxslt) - SET(LIBXSLT_DEFINITIONS ${PC_XSLT_CFLAGS}) + SET(LIBXSLT_DEFINITIONS ${PC_XSLT_CFLAGS_OTHER}) ENDIF (NOT WIN32) FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h + PATHS + ${PC_XSLT_INCLUDEDIR} ${PC_XSLT_INCLUDE_DIRS} ) FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt PATHS + ${PC_XSLT_LIBDIR} ${PC_XSLT_LIBRARY_DIRS} ) FIND_LIBRARY(LIBEXSLT_LIBRARIES NAMES exslt libexslt PATHS + ${PC_XSLT_LIBDIR} ${PC_XSLT_LIBRARY_DIRS} ) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 80fdfd9f..efba0652 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -22,17 +22,19 @@ if (NOT WIN32) # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PCRE libpcre) + pkg_check_modules(PC_PCRE libpcre) - set(PCRE_DEFINITIONS ${PCRE_CFLAGS}) + set(PCRE_DEFINITIONS ${PC_PCRE_CFLAGS_OTHER}) -endif (NOT WIN32) +endif (NOT WIN32) -find_path(PCRE_INCLUDE_DIR pcre.h PATHS ${PCRE_INCLUDE_DIRS} PATH_SUFFIXES pcre) +find_path(PCRE_INCLUDE_DIR pcre.h + HINTS ${PC_PCRE_INCLUDEDIR} ${PC_PCRE_INCLUDE_DIRS} + PATH_SUFFIXES pcre) -find_library(PCRE_PCRE_LIBRARY NAMES pcre PATHS ${PCRE_LIBRARY_DIRS}) +find_library(PCRE_PCRE_LIBRARY NAMES pcre HINTS ${PC_PCRE_LIBDIR} ${PC_PCRE_LIBRARY_DIRS}) -find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix PATHS ${PCRE_LIBRARY_DIRS}) +find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix HINTS ${PC_PCRE_LIBDIR} ${PC_PCRE_LIBRARY_DIRS}) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index fe4b0766..6b82a965 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -27,33 +27,20 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) if (NOT WIN32) find_package(PkgConfig) pkg_check_modules(PC_QCA2 qca2) - - # If pkgconfig found QCA2, get the full path to the library using find_library() - # but only in the path reported by pkgconfig. - # Otherwise do a normal search. - if(PC_QCA2_FOUND) - set(QCA2_DEFINITIONS ${PC_QCA2_CFLAGS}) - set(QCA2_INCLUDE_DIR ${PC_QCA2_INCLUDE_DIRS}) - find_library(QCA2_LIBRARIES NAMES qca - PATHS - ${PC_QCA2_LIBDIR} - NO_DEFAULT_PATH - ) - else(PC_QCA2_FOUND) - find_library(QCA2_LIBRARIES NAMES qca ) - find_path(QCA2_INCLUDE_DIR qca.h PATH_SUFFIXES QtCrypto) - endif(PC_QCA2_FOUND) - - else (NOT WIN32) - find_library_with_debug(QCA2_LIBRARIES - WIN32_DEBUG_POSTFIX d - NAMES qca) - - find_path(QCA2_INCLUDE_DIR qca.h PATH_SUFFIXES QtCrypto) + set(QCA2_DEFINITIONS ${PC_QCA2_CFLAGS_OTHER}) endif (NOT WIN32) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(QCA2 DEFAULT_MSG QCA2_LIBRARIES QCA2_INCLUDE_DIR) + find_library_with_debug(QCA2_LIBRARIES + WIN32_DEBUG_POSTFIX d + HINTS ${PC_QCA2_LIBDIR} ${PC_QCA2_LIBRARY_DIRS} + NAMES qca) + + find_path(QCA2_INCLUDE_DIR qca.h + HINTS ${PC_QCA2_INCLUDEDIR} ${PC_QCA2_INCLUDE_DIRS} + PATH_SUFFIXES QtCrypto) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(QCA2 DEFAULT_MSG QCA2_LIBRARIES QCA2_INCLUDE_DIR) mark_as_advanced(QCA2_INCLUDE_DIR QCA2_LIBRARIES) diff --git a/modules/FindQImageBlitz.cmake b/modules/FindQImageBlitz.cmake index 8cb56432..9e31c047 100644 --- a/modules/FindQImageBlitz.cmake +++ b/modules/FindQImageBlitz.cmake @@ -20,7 +20,7 @@ if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(QIMAGEBLITZ qimageblitz) + pkg_check_modules(PC_QIMAGEBLITZ qimageblitz) endif (NOT WIN32) find_path(QIMAGEBLITZ_INCLUDES @@ -29,7 +29,8 @@ find_path(QIMAGEBLITZ_INCLUDES PATH_SUFFIXES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/include - ${QIMAGEBLITZ_INCLUDE_DIRS} + ${PC_QIMAGEBLITZ_INCLUDEDIR} + ${PC_QIMAGEBLITZ_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -39,7 +40,8 @@ find_library_with_debug(QIMAGEBLITZ_LIBRARIES qimageblitz PATHS $ENV{QIMAGEBLITZDIR}/lib - ${QIMAGEBLITZ_LIBRARY_DIRS} + ${PC_QIMAGEBLITZ_LIBDIR} + ${PC_QIMAGEBLITZ_LIBRARY_DIRS} ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index 3dd53351..d010719f 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -20,19 +20,21 @@ endif ( SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) if( NOT WIN32 ) find_package(PkgConfig) - pkg_check_modules(SQLITE sqlite3) + pkg_check_modules(PC_SQLITE sqlite3) - set(SQLITE_DEFINITIONS ${SQLITE_CFLAGS}) + set(SQLITE_DEFINITIONS ${PC_SQLITE_CFLAGS_OTHER}) endif( NOT WIN32 ) FIND_PATH(SQLITE_INCLUDE_DIR NAMES sqlite3.h PATHS - ${SQLITE_INCLUDE_DIRS} + ${PC_SQLITE_INCLUDEDIR} + ${PC_SQLITE_INCLUDE_DIRS} ) FIND_LIBRARY(SQLITE_LIBRARIES NAMES sqlite3 PATHS - ${SQLITE_LIBRARY_DIRS} + ${PC_SQLITE_LIBDIR} + ${PC_SQLITE_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 391b4189..52a9aa66 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -8,7 +8,6 @@ # STRIGI_LINE_ANALYZER_PREFIX - strigi plugin prefix # STRIGI_THROUGH_ANALYZER_PREFIX - strigi plugin prefix - if(NOT STRIGI_MIN_VERSION) set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 862388b9..566cdd8e 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -21,14 +21,14 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(LIBUSB libusb) + pkg_check_modules(PC_LIBUSB libusb) ENDIF(NOT WIN32) FIND_PATH(LIBUSB_INCLUDE_DIR usb.h - PATHS ${LIBUSB_INCLUDE_DIRS} ) + PATHS ${PC_LIBUSB_INCLUDEDIR} ${PC_LIBUSB_INCLUDE_DIRS}) FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb - PATHS ${LIBUSB_LIBRARY_DIRS} ) + PATHS ${PC_LIBUSB_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS}) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIR) diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 9452e781..1223851b 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -27,11 +27,13 @@ endif (PKG_CONFIG_FOUND) find_path(XINE_INCLUDE_DIR NAMES xine.h HINTS # HINTS is new in cmake 2.6. These dirs will be preferred over the default ones ${PC_LIBXINE_INCLUDEDIR} + ${PC_LIBXINE_INCLUDE_DIRS} ) find_library(XINE_LIBRARY NAMES xine HINTS ${PC_LIBXINE_LIBDIR} + ${PC_LIBXINE_LIBRARY_DIRS} ) find_program(XINECONFIG_EXECUTABLE NAMES xine-config diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index 8d42b12f..c43893fb 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -1,9 +1,10 @@ # Search xmms -## Once done this will define +# Once done this will define # # XMMS_FOUND - system has xmms # XMMS_INCLUDE_DIRS - the xmms include directory -# XMMS_LDFLAGS - Link these to use xmms +# XMMS_LIBRARIES - Link these to use xmms +# XMMS_LDFLAGS - for compatibility only, same as XMMS_LIBRARIES # Copyright (c) 2006, 2007 Laurent Montel, # Copyright (c) 2007 Allen Winter @@ -11,29 +12,33 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) +if (XMMS_INCLUDE_DIRS AND XMMS_LIBRARIES) # in cache already - SET(XMMS_FOUND TRUE) + set(XMMS_FOUND TRUE) -else (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) - IF (NOT WIN32) +else (XMMS_INCLUDE_DIRS AND XMMS_LIBRARIES) + if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(XMMS xmms) - ENDIF(NOT WIN32) + pkg_check_modules(PC_XMMS xmms) + endif(NOT WIN32) - FIND_PATH(XMMS_INCLUDE_DIRS xmmsctrl.h - PATHS ${_XMMSIncDir} PATH_SUFFIXES xmms) + find_path(XMMS_INCLUDE_DIRS xmmsctrl.h + PATHS ${PC_XMMS_INCLUDEDIR} ${PC_XMMS_INCLUDE_DIRS} + PATH_SUFFIXES xmms) - FIND_LIBRARY(XMMS_LDFLAGS NAMES xmms - PATHS ${_XMMSLinkDir}) + find_library(XMMS_LIBRARIES NAMES xmms + PATHS ${PC_XMMS_LIBDIR} ${PC_XMMS_LIBRARY_DIRS}) - INCLUDE(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(Xmms DEFAULT_MSG - XMMS_LDFLAGS XMMS_INCLUDE_DIRS) + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(Xmms DEFAULT_MSG + XMMS_LIBRARIES XMMS_INCLUDE_DIRS) - MARK_AS_ADVANCED(XMMS_INCLUDE_DIRS XMMS_LDFLAGS) + mark_as_advanced(XMMS_INCLUDE_DIRS XMMS_LIBRARIES) -endif (XMMS_INCLUDE_DIRS AND XMMS_LDFLAGS) +endif (XMMS_INCLUDE_DIRS AND XMMS_LIBRARIES) + +# for compatibility +set(XMMS_LDFLAGS ${XMMS_LIBRARIES}) -- cgit v1.2.1 From 8d1fd716cfc4223028f256dd0b53f3cd1395d6a5 Mon Sep 17 00:00:00 2001 From: Ben Cooksley Date: Tue, 2 Dec 2008 23:35:52 +0000 Subject: Fix finding of pimlibs to search in KDE4_INCLUDE_DIR first. This will allow those who do not install trunk to /usr to build again CCMAIL: kdepim@kde.org CCMAIL: winter@kde.org svn path=/trunk/KDE/kdelibs/; revision=891837 --- modules/FindKdepimLibs.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 8b449d93..d0ae4522 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -40,8 +40,8 @@ if (WIN32) endif (KDEPIMLIBS_DIR) endif (WIN32) -find_path( KDEPIMLIBS_INCLUDE_DIR kcal/kcal_export.h - ${KDE4_INCLUDE_DIR} +find_path( KDEPIMLIBS_INCLUDE_DIR NAMES kcal/kcal_export.h + HINTS ${KDE4_INCLUDE_DIR} ) macro(_KDEPIMLibs_Set_Lib_Vars _prefix _lib) -- cgit v1.2.1 From e0109ea9c73f23d308d43dac6e8aec49a734ca38 Mon Sep 17 00:00:00 2001 From: Matthias Kretz Date: Wed, 3 Dec 2008 17:12:34 +0000 Subject: I have no idea why that line is commented out... svn path=/trunk/KDE/kdelibs/; revision=892147 --- modules/FindPhonon.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 4d015129..93332697 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -14,7 +14,7 @@ macro(_phonon_find_version) file(READ "${PHONON_INCLUDE_DIR}/phonon/phononnamespace.h" _phonon_header LIMIT 5000 OFFSET 1000) string(REGEX MATCH "define PHONON_VERSION_STR \"(4\\.[0-9]+\\.[0-9a-z]+)\"" _phonon_version_match "${_phonon_header}") - #set(PHONON_VERSION "${CMAKE_MATCH_1}") + set(PHONON_VERSION "${CMAKE_MATCH_1}") message(STATUS "Phonon Version: ${PHONON_VERSION}") endmacro(_phonon_find_version) -- cgit v1.2.1 From 4c183f990df8a96627f057224d73349061e74909 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 3 Dec 2008 18:43:27 +0000 Subject: -prefix the targets exported from kdepimlibs with "KDEPIMLibs::", this should fix building kdebindings -support both version of the file, with and without prefix until next monday Using "::" in imported target names works here, I have no idea whether this might break with nmake/XCode/MSVC... Please let me know if it does. So, MSVC and XCode users, please eupdate kdelibs, kdepimlibs and kdepim or kdebase and let me know if kdepim/kdebase still builds (links). Alex CCMAIL: ps_ml@gmx.de CCMAIL: illogical1@gmail.com CCMAIL: simon@etotheipiplusone.com svn path=/trunk/KDE/kdelibs/; revision=892177 --- modules/FindKdepimLibs.cmake | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index d0ae4522..b5ef55f1 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -45,11 +45,12 @@ find_path( KDEPIMLIBS_INCLUDE_DIR NAMES kcal/kcal_export.h ) macro(_KDEPIMLibs_Set_Lib_Vars _prefix _lib) - set(KDEPIMLIBS_${_prefix}_LIBRARY ${_lib}) - set(KDEPIMLIBS_${_prefix}_LIBS ${_lib}) + # KDEPIMLIBS_TARGET_PREFIX exists since 03. Dec. and is empty before that, Alex + set(KDEPIMLIBS_${_prefix}_LIBRARY ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) + set(KDEPIMLIBS_${_prefix}_LIBS ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) # these two are set for compatibility with KDE 4.[01], Alex: - set(KDE4_${_prefix}_LIBRARY ${_lib}) - set(KDE4_${_prefix}_LIBS ${_lib}) + set(KDE4_${_prefix}_LIBRARY ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) + set(KDE4_${_prefix}_LIBS ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) endmacro(_KDEPIMLibs_Set_Lib_Vars) @@ -67,8 +68,12 @@ if( KDEPIMLIBS_INCLUDE_DIR ) if (NOT _newKdepimLibsFound) message(FATAL_ERROR "You need a newer version of kdepimlibs, please update it") endif (NOT _newKdepimLibsFound) - - include("${kdepimlibs_cmake_module_dir}/KDEPimLibsLibraryTargets.cmake") + + # this is for compatibility, starting next monday only the version with prefix will be installed, Alex + include("${kdepimlibs_cmake_module_dir}/KDEPimLibsLibraryTargetsWithPrefix.cmake" OPTIONAL RESULT_VARIABLE KDEPimLibsLibraryTargetsWithPrefix_LOADED) + if(NOT KDEPimLibsLibraryTargetsWithPrefix_LOADED) + include("${kdepimlibs_cmake_module_dir}/KDEPimLibsLibraryTargets.cmake") + endif(NOT KDEPimLibsLibraryTargetsWithPrefix_LOADED) _kdepimlibs_set_lib_vars( AKONADI akonadi-kde) _kdepimlibs_set_lib_vars( AKONADI_KMIME akonadi-kmime) -- cgit v1.2.1 From e34ca7a9480b9dd714cec2f8a0e58c1f731bf25a Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 4 Dec 2008 13:13:40 +0000 Subject: removed references to the obsolate KDEWIN package svn path=/trunk/KDE/kdelibs/; revision=892482 --- modules/FindKDEWIN32.cmake | 3 --- modules/FindKDEWIN_Packager.cmake | 8 ++------ 2 files changed, 2 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index d22a85a7..abbff19e 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -15,9 +15,6 @@ if (WIN32) if (NOT KDEWIN32_DIR) - if(NOT KDEWIN_FOUND) - find_package(KDEWIN) - endif(NOT KDEWIN_FOUND) find_path(KDEWIN32_INCLUDE_DIR winposix_export.h ${CMAKE_INCLUDE_PATH} diff --git a/modules/FindKDEWIN_Packager.cmake b/modules/FindKDEWIN_Packager.cmake index c19f4115..b8f023e5 100644 --- a/modules/FindKDEWIN_Packager.cmake +++ b/modules/FindKDEWIN_Packager.cmake @@ -1,5 +1,5 @@ # -# KDEWIN packager support http://download.cegit.de/kde-windows/installer +# KDEWIN packager http://www.winkde.org/pub/kde/ports/win32/installer # # The kdewin packager is searched in the following pathes and order # @@ -51,16 +51,12 @@ if (WIN32) endif(NOT KDEWIN_PACKAGER_DIR) endif(NOT KDEWIN_PACKAGER_DIR) - # added FindKDEWIN.cmake support - if (NOT KDEWIN_PACKAGER_DIR AND KDEWIN_DIR) - set (KDEWIN_PACKAGER_DIR ${KDEWIN_DIR}) - endif (NOT KDEWIN_PACKAGER_DIR AND KDEWIN_DIR) - if (KDEWIN_PACKAGER_DIR) find_program(KDEWIN_PACKAGER_EXECUTABLE kdewin-packager PATHS ${KDEWIN_PACKAGER_DIR}/bin + ${CMAKE_INSTALL_PREFIX}/bin ) set(KDEWIN_PACKAGER_FOUND TRUE) -- cgit v1.2.1 From 868db0bdfe314a4ddc0665dadb17d7eacb2dd548 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 4 Dec 2008 13:15:14 +0000 Subject: removed obsolate package, it could be replaced completly by using CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH svn path=/trunk/KDE/kdelibs/; revision=892486 --- modules/FindKDEWIN.cmake | 64 ------------------------------------------------ 1 file changed, 64 deletions(-) delete mode 100644 modules/FindKDEWIN.cmake (limited to 'modules') diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake deleted file mode 100644 index dfd7d071..00000000 --- a/modules/FindKDEWIN.cmake +++ /dev/null @@ -1,64 +0,0 @@ -# - Try to find the directory in which the kde windows supplementary libraries are living -# -# used environment vars -# KDEWIN_DIR - kdewin root dir -# -# this will define -# KDEWIN_FOUND - system has KDEWIN -# KDEWIN_DIR - the KDEWIN root installation dir - -# Copyright (c) 2007, Ralf Habacker, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -if (WIN32) - IF (NOT KDEWIN_DIR) - # check for enviroment variable - file(TO_CMAKE_PATH "$ENV{KDEWIN_DIR}" KDEWIN_DIR) - if(NOT KDEWIN_DIR) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - if (MINGW) - set (DIR "kdewin-mingw") - else (MINGW) - set (DIR "kdewin-msvc") - endif (MINGW) - - # search in the default program install folder - find_file(KDEWIN_DIR_tmp ${DIR} kdewin kdewin32 win32libs gnuwin32 - PATHS - "${_progFiles}" - ) - set (KDEWIN_DIR ${KDEWIN_DIR_tmp}) - endif (NOT KDEWIN_DIR) - if (KDEWIN_DIR) - message(STATUS "Found windows supplementary package location: ${KDEWIN_DIR}") - endif (KDEWIN_DIR) - endif (NOT KDEWIN_DIR) - - # this must be set every time - if (KDEWIN_DIR) - # add include path and library to all targets, this is required because - # cmake's 2.4.6 FindZLib.cmake does not use CMAKE_REQUIRED... vars - set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${KDEWIN_DIR}/include) - set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${KDEWIN_DIR}/lib) - - set (KDEWIN_FOUND 1) - if (NOT KDEWIN_FIND_QUIETLY) - message(STATUS "Found kdewin32 library: ${KDEWIN32_LIBRARY}") - endif (NOT KDEWIN_FIND_QUIETLY) - - else(KDEWIN_DIR) - if( KDEWIN_FIND_REQUIRED ) - message(FATAL_ERROR "Could not find the location of the windows supplementary packages which is \n" - "\t\tenvironment variable KDEWIN_DIR\n" - "\t\t/${DIR}\n" - "\t\t/kdewin\n" - "\t\t/kdewin32\n" - "\t\t/win32libs\n" - "\t\t/gnuwin32\n" - ) - endif( KDEWIN_FIND_REQUIRED ) - endif(KDEWIN_DIR) - -endif (WIN32) -- cgit v1.2.1 From 7285826cedf2c374655242c8f64e432256dd1ecc Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sat, 6 Dec 2008 14:47:57 +0000 Subject: instead of guessing that kdepimlibs is installed under a hardcoded path, just find it. makes build work on openSUSE again. svn path=/trunk/KDE/kdelibs/; revision=893381 --- modules/FindKdepimLibs.cmake | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index b5ef55f1..522489a0 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -57,9 +57,8 @@ endmacro(_KDEPIMLibs_Set_Lib_Vars) if( KDEPIMLIBS_INCLUDE_DIR ) set(KDEPIMLIBS_FOUND TRUE) - get_filename_component( kdepimlibs_cmake_module_dir "${KDEPIMLIBS_INCLUDE_DIR}" PATH) - set(kdepimlibs_cmake_module_dir "${kdepimlibs_cmake_module_dir}/share/apps/cmake/modules") - set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${kdepimlibs_cmake_module_dir}") + find_file(_kdepimlibs_cmake_module_info KDEPimLibsInformation.cmake PATHS ${CMAKE_MODULE_PATH}) + get_filename_component( kdepimlibs_cmake_module_dir "${_kdepimlibs_cmake_module_info}" PATH) # this file contains all dependencies of all libraries of kdepimlibs, Alex include("${kdepimlibs_cmake_module_dir}/KDEPimLibsInformation.cmake" OPTIONAL RESULT_VARIABLE _newKdepimLibsFound) -- cgit v1.2.1 From f9248c8938c2ee4e31cb2ea8565c6350757dbae2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 8 Dec 2008 22:39:27 +0000 Subject: -make finding the FooConfig.cmake file quiet, but don't make the outer FindFoo.cmake file quiet Alex svn path=/trunk/KDE/kdelibs/; revision=894602 --- modules/FindAutomoc4.cmake | 2 ++ modules/FindStrigi.cmake | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index c76d20b8..1192ea01 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -25,7 +25,9 @@ else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") # when building this project outside kdesupport # use the new "config-mode" of cmake 2.6, which searches the installed Automoc4Config.cmake file # see the man page for details + set(_Automoc4_FIND_QUIETLY ${Automoc4_FIND_QUIETLY}) find_package(Automoc4 QUIET NO_MODULE) + set(Automoc4_FIND_QUIETLY ${_Automoc4_FIND_QUIETLY}) endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") include(FindPackageHandleStandardArgs) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 52a9aa66..372cea8b 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -14,8 +14,10 @@ endif(NOT STRIGI_MIN_VERSION) file(TO_CMAKE_PATH "$ENV{STRIGI_HOME}" strigi_home) +set(_Strigi_FIND_QUIETLY ${Strigi_FIND_QUIETLY}) # Try to find and load the StrigiConfig.cmake installed by kdesupport/strigi -find_package(Strigi NO_MODULE PATHS "${strigi_home}/lib/strigi" "${strigi_home}/lib64/strigi") +find_package(Strigi QUIET NO_MODULE PATHS "${strigi_home}/lib/strigi" "${strigi_home}/lib64/strigi") +set(Strigi_FIND_QUIETLY ${_Strigi_FIND_QUIETLY}) # If StrigiConfig.cmake (installed by kdesupport/Strigi) has been found # and it contains all necessary information (since November 16th, 2008), use the information -- cgit v1.2.1 From ddce29b67748989feea12ac395c70328c58559cd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 8 Dec 2008 23:23:55 +0000 Subject: -one more rework the installation of kdepimlibs (last one hopefully) Now kdepimlibs installs a KdepimLibsConfig.cmake file in a cmake-conform location, i.e. ${LIB_INSTALL_DIR}/KdepimLibs/cmake/ . This file is created by kdepimlibs/CMakeLists.txt using configure_file() from kdepimlibs/KdepimLibsConfig.cmake.in and contains all necessary information about kdepimlibs. It also loads the exported target file (and makes sure to do this only once, so kdebindings still builds). Does kdepimlibs actually have a version number ? Alex CCMAIL: kde-pim@kde.org CCMAIL: mueller@kde.org svn path=/trunk/KDE/kdelibs/; revision=894621 --- modules/FindKdepimLibs.cmake | 127 ++++++++++++++----------------------------- 1 file changed, 42 insertions(+), 85 deletions(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 522489a0..29741328 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -3,7 +3,8 @@ # # KDEPIMLIBS_FOUND - system has KDE PIM Libraries # KDEPIMLIBS_INCLUDE_DIR - the KDE PIM Libraries include directory -# It also sets: +# +# It also sets variables for the following libraries: # KDEPIMLIBS_AKONADI_LIBS # KDEPIMLIBS_AKONADI_KMIME_LIBS # KDEPIMLIBS_AKONADI_KABC_LIBS @@ -22,94 +23,50 @@ # KDEPIMLIBS_MAILTRANSPORT_LIBS # KDEPIMLIBS_QGPGME_LIBS # KDEPIMLIBS_SYNDICATION_LIBS +# +# And the following locations: +# KDEPIMLIBS_DATA_DIR +# KDEPIMLIBS_DBUS_INTERFACES_DIR +# KDEPIMLIBS_DBUS_SERVICES_DIR +# KDEPIMLIBS_INCLUDE_DIR +# KDEPIMLIBS_LIB_DIR +# KDEPIMLIBS_BIN_DIR +# KDEPIMLIBS_LIBEXEC_DIR +# KDEPIMLIBS_SBIN_DIR +# KDEPIMLIBS_HTML_DIR +# KDEPIMLIBS_CONFIG_DIR +# KDEPIMLIBS_ICON_DIR +# KDEPIMLIBS_KCFG_DIR +# KDEPIMLIBS_LOCALE_DIR +# KDEPIMLIBS_MIME_DIR +# KDEPIMLIBS_SOUND_DIR +# KDEPIMLIBS_TEMPLATES_DIR +# KDEPIMLIBS_KCONF_UPDATE_DIR +# KDEPIMLIBS_AUTOSTART_DIR +# KDEPIMLIBS_XDG_APPS_DIR +# KDEPIMLIBS_XDG_DIRECTORY_DIR +# KDEPIMLIBS_SYSCONF_DIR +# KDEPIMLIBS_MAN_DIR +# KDEPIMLIBS_INFO_DIR +# KDEPIMLIBS_SERVICES_DIR +# KDEPIMLIBS_SERVICETYPES_DIR -# Copyright (c) 2006, Laurent Montel, -# Copyright (c) 2006, Ralf Habacker, + +# Copyright (c) 2008, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (WIN32) - if (KDEPIMLIBS_DIR) - set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${KDEPIMLIBS_DIR}/include) - set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${KDEPIMLIBS_DIR}/lib) - else (KDEPIMLIBS_DIR) - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _progFiles) - set (KDE4_INCLUDE_DIR ${KDE4_INCLUDE_DIR} ${_progFiles}/kdepimlibs/include) - set (KDE4_LIB_DIR ${KDE4_LIB_DIR} ${_progFiles}/kdepimlibs/lib) - endif (KDEPIMLIBS_DIR) -endif (WIN32) - -find_path( KDEPIMLIBS_INCLUDE_DIR NAMES kcal/kcal_export.h - HINTS ${KDE4_INCLUDE_DIR} -) - -macro(_KDEPIMLibs_Set_Lib_Vars _prefix _lib) - # KDEPIMLIBS_TARGET_PREFIX exists since 03. Dec. and is empty before that, Alex - set(KDEPIMLIBS_${_prefix}_LIBRARY ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) - set(KDEPIMLIBS_${_prefix}_LIBS ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) - # these two are set for compatibility with KDE 4.[01], Alex: - set(KDE4_${_prefix}_LIBRARY ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) - set(KDE4_${_prefix}_LIBS ${KDEPIMLIBS_TARGET_PREFIX}${_lib}) -endmacro(_KDEPIMLibs_Set_Lib_Vars) - - -if( KDEPIMLIBS_INCLUDE_DIR ) - set(KDEPIMLIBS_FOUND TRUE) - - find_file(_kdepimlibs_cmake_module_info KDEPimLibsInformation.cmake PATHS ${CMAKE_MODULE_PATH}) - get_filename_component( kdepimlibs_cmake_module_dir "${_kdepimlibs_cmake_module_info}" PATH) - - # this file contains all dependencies of all libraries of kdepimlibs, Alex - include("${kdepimlibs_cmake_module_dir}/KDEPimLibsInformation.cmake" OPTIONAL RESULT_VARIABLE _newKdepimLibsFound) - # if this file could not be loaded, we found an older version of Kdepimlibs, tell the - # developer that he should update kdepimlibs. Alex - if (NOT _newKdepimLibsFound) - message(FATAL_ERROR "You need a newer version of kdepimlibs, please update it") - endif (NOT _newKdepimLibsFound) - - # this is for compatibility, starting next monday only the version with prefix will be installed, Alex - include("${kdepimlibs_cmake_module_dir}/KDEPimLibsLibraryTargetsWithPrefix.cmake" OPTIONAL RESULT_VARIABLE KDEPimLibsLibraryTargetsWithPrefix_LOADED) - if(NOT KDEPimLibsLibraryTargetsWithPrefix_LOADED) - include("${kdepimlibs_cmake_module_dir}/KDEPimLibsLibraryTargets.cmake") - endif(NOT KDEPimLibsLibraryTargetsWithPrefix_LOADED) - - _kdepimlibs_set_lib_vars( AKONADI akonadi-kde) - _kdepimlibs_set_lib_vars( AKONADI_KMIME akonadi-kmime) - _kdepimlibs_set_lib_vars( AKONADI_KABC akonadi-kabc) - _kdepimlibs_set_lib_vars( GPGMEPP gpgmepp) - _kdepimlibs_set_lib_vars( KABC kabc) - _kdepimlibs_set_lib_vars( KBLOG kblog) - _kdepimlibs_set_lib_vars( KCAL kcal) - _kdepimlibs_set_lib_vars( KIMAP kimap) - _kdepimlibs_set_lib_vars( KLDAP kldap) - _kdepimlibs_set_lib_vars( KMIME kmime) - _kdepimlibs_set_lib_vars( KPIMIDENTITIES kpimidentities) - _kdepimlibs_set_lib_vars( KPIMUTILS kpimutils) - _kdepimlibs_set_lib_vars( KRESOURCES kresources) - _kdepimlibs_set_lib_vars( KTNEF ktnef) - _kdepimlibs_set_lib_vars( KXMLRPCCLIENT kxmlrpcclient) - _kdepimlibs_set_lib_vars( MAILTRANSPORT mailtransport) - _kdepimlibs_set_lib_vars( QGPGME qgpgme) - _kdepimlibs_set_lib_vars( SYNDICATION syndication) - - # this is bad, so I commented it out. A module shouldn't modify variables - # set by another module. Alex. - # # setup global used KDE include - # set (KDE4_INCLUDES ${KDE4_INCLUDES} ${KDEPIMLIBS_INCLUDE_DIR}) - -else( KDEPIMLIBS_INCLUDE_DIR ) - set(KDEPIMLIBS_FOUND FALSE) -endif( KDEPIMLIBS_INCLUDE_DIR ) - +# The find_package() call below loads the file KdepimLibsConfig.cmake file. +# This file is created and installed by kdepimlibs/CMakeLists.txt +# It contains settings for all install location of kdepimlibs, as e.g. +# KDEPIMLIBS_INCLUDE_DIR, and also variables for all libraries. +# See kdepimlibs/CMakeLists.txt and kdepimlibs/KdepimLibsConfig.cmake.in +# for details. Alex +set(_KdepimLibs_FIND_QUIETLY ${KdepimLibs_FIND_QUIETLY}) +find_package(KdepimLibs QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KdepimLibs/cmake ) +set(KdepimLibs_FIND_QUIETLY ${_KdepimLibs_FIND_QUIETLY}) -if (KDEPIMLIBS_FOUND) - if (NOT KdepimLibs_FIND_QUIETLY) - message(STATUS "Found KDE PIM libraries") - endif (NOT KdepimLibs_FIND_QUIETLY) -else (KDEPIMLIBS_FOUND) - if (KdepimLibs_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find a kdepimlibs installation in ${KDE4_INCLUDE_DIR}.\nPlease build and install kdepimlibs first.") - endif (KdepimLibs_FIND_REQUIRED) -endif (KDEPIMLIBS_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(KdepimLibs DEFAULT_MSG KdepimLibs_CONFIG ) -- cgit v1.2.1 From fd9c83a60e5a2f592a8b3f61ee057ee8dd5e3be2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 9 Dec 2008 00:33:41 +0000 Subject: -add a central FindKDE4Workspace.cmake in kdelibs, which is used by kdetoys, kdeartwork and kdeplasma-addons (e.g. kscreensaver, plasmaclock and some more) -install a KDE4WorkspaceConfig.cmake file from kdebase/workspace, which is loaded by FindKDE4Workspace.cmake from kdelibs/cmake/modules, and which provides all information and targets necessary to use this stuff Unfortunately this may required updating both kdelibs and kdebase for kdetoys, kdeartwork and kdeplasma-addons Alex svn path=/trunk/KDE/kdelibs/; revision=894637 --- modules/CMakeLists.txt | 2 +- modules/FindKDE4Workspace.cmake | 65 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 modules/FindKDE4Workspace.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index af84391d..32493031 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,4 +1,4 @@ -## install the cmake files +# install the cmake files file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") file(GLOB pyfiles "${CMAKE_CURRENT_SOURCE_DIR}/*.py") diff --git a/modules/FindKDE4Workspace.cmake b/modules/FindKDE4Workspace.cmake new file mode 100644 index 00000000..c88d405d --- /dev/null +++ b/modules/FindKDE4Workspace.cmake @@ -0,0 +1,65 @@ +# Find if we installed kdebase/workspaces. +# Once done this will define +# +# KDE4WORKSPACE_FOUND - system has KDE workspace installed +# KDE4WORKSPACE_INCLUDE_DIR - the KDE workspace include directory +# +# It also sets variables for the following libraries: +# KDE4WORKSPACE_TASKMANAGER_LIBRARY, KDE4WORKSPACE_TASKMANAGER_LIBS +# KDE4WORKSPACE_KWORKSPACE_LIBRARY, KDE4WORKSPACE_KWORKSPACE_LIBS +# KDE4WORKSPACE_SOLIDCONTROLIFACES_LIBRARY, KDE4WORKSPACE_SOLIDCONTROLIFACES_LIBS +# KDE4WORKSPACE_SOLIDCONTROL_LIBRARY, KDE4WORKSPACE_SOLIDCONTROL_LIBS +# KDE4WORKSPACE_PROCESSUI_LIBRARY, KDE4WORKSPACE_PROCESSUI_LIBS +# KDE4WORKSPACE_LSOFUI_LIBRARY, KDE4WORKSPACE_LSOFUI_LIBS +# KDE4WORKSPACE_PLASMACLOCK_LIBRARY, KDE4WORKSPACE_PLASMACLOCK_LIBS +# KDE4WORKSPACE_NEPOMUKQUERYCLIENT_LIBRARY, KDE4WORKSPACE_NEPOMUKQUERYCLIENT_LIBS +# KDE4WORKSPACE_NEPOMUKQUERY_LIBRARY, KDE4WORKSPACE_NEPOMUKQUERY_LIBS +# KDE4WORKSPACE_KSCREENSAVER_LIBRARY, KDE4WORKSPACE_KSCREENSAVER_LIBS +# KDE4WORKSPACE_WEATHERION_LIBRARY, KDE4WORKSPACE_WEATHERION_LIBS +# +# And the following locations: +# KDE4WORKSPACE_LIB_DIR +# KDE4WORKSPACE_LIBEXEC_DIR +# KDE4WORKSPACE_INCLUDE_DIR +# KDE4WORKSPACE_BIN_DIR +# KDE4WORKSPACE_SBIN_DIR +# KDE4WORKSPACE_DATA_DIR +# KDE4WORKSPACE_HTML_DIR +# KDE4WORKSPACE_CONFIG_DIR +# KDE4WORKSPACE_ICON_DIR +# KDE4WORKSPACE_KCFG_DIR +# KDE4WORKSPACE_LOCALE_DIR +# KDE4WORKSPACE_MIME_DIR +# KDE4WORKSPACE_SOUND_DIR +# KDE4WORKSPACE_TEMPLATES_DIR +# KDE4WORKSPACE_WALLPAPER_DIR +# KDE4WORKSPACE_KCONF_UPDATE_DIR +# KDE4WORKSPACE_AUTOSTART_DIR +# KDE4WORKSPACE_XDG_APPS_DIR +# KDE4WORKSPACE_XDG_DIRECTORY_DIR +# KDE4WORKSPACE_SYSCONF_DIR +# KDE4WORKSPACE_MAN_DIR +# KDE4WORKSPACE_INFO_DIR +# KDE4WORKSPACE_DBUS_INTERFACES_DIR +# KDE4WORKSPACE_DBUS_SERVICES_DIR +# KDE4WORKSPACE_SERVICES_DIR +# KDE4WORKSPACE_SERVICETYPES_DIR + +# Copyright (c) 2008, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +# The find_package() call below loads the file KDE4WorkspaceConfig.cmake file. +# This file is created and installed by kdebase/workspace/CMakeLists.txt +# It contains settings for all install location of kdebase/workspace, as e.g. +# KDE4WORKSPACE_INCLUDE_DIR, and also variables for all libraries. +# See kdebase/workspace/CMakeLists.txt and kdebase/workspace/KDE4WorkspaceConfig.cmake.in +# for details. Alex +set(_KDE4Workspace_FIND_QUIETLY ${KDE4Workspace_FIND_QUIETLY}) +find_package(KDE4Workspace QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KDE4Workspace/cmake ) +set(KDE4Workspace_FIND_QUIETLY ${_KDE4Workspace_FIND_QUIETLY}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(KDE4Workspace DEFAULT_MSG KDE4Workspace_CONFIG ) + -- cgit v1.2.1 From e5e1e76dbf63a26379e79a77bd98173841c796b4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 9 Dec 2008 21:27:30 +0000 Subject: -also export kephal, kdecorations, kwineffects and ksrgd (or so) Alex CCMAIL: christoph@maxiom.de svn path=/trunk/KDE/kdelibs/; revision=895041 --- modules/FindKDE4Workspace.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Workspace.cmake b/modules/FindKDE4Workspace.cmake index c88d405d..81a3e40c 100644 --- a/modules/FindKDE4Workspace.cmake +++ b/modules/FindKDE4Workspace.cmake @@ -16,6 +16,10 @@ # KDE4WORKSPACE_NEPOMUKQUERY_LIBRARY, KDE4WORKSPACE_NEPOMUKQUERY_LIBS # KDE4WORKSPACE_KSCREENSAVER_LIBRARY, KDE4WORKSPACE_KSCREENSAVER_LIBS # KDE4WORKSPACE_WEATHERION_LIBRARY, KDE4WORKSPACE_WEATHERION_LIBS +# KDE4WORKSPACE_KWINEFFECTS_LIBRARY, KDE4WORKSPACE_KWINEFFECTS_LIBS +# KDE4WORKSPACE_KDECORATIONS_LIBRARY, KDE4WORKSPACE_KDECORATIONS_LIBS +# KDE4WORKSPACE_KSGRD_LIBRARY, KDE4WORKSPACE_KSGRD_LIBS +# KDE4WORKSPACE_KEPHAL_LIBRARY, KDE4WORKSPACE_KEPHAL_LIBS # # And the following locations: # KDE4WORKSPACE_LIB_DIR -- cgit v1.2.1 From 2c5711d6bb2ca01d2e37490114e10edd6139dfe6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Burkhard=20L=C3=BCck?= Date: Thu, 11 Dec 2008 15:00:20 +0000 Subject: make it possible to install several man page docbooks from one dir by generating an unique target for each docbook improve get filename without extension to work for names with a dot in the filename like man-zonetab2pot.py.1.docbook get_filename_component( NAME_WE) cuts this to man-zonetab2pot, but it has to be man-zonetab2pot.py svn path=/trunk/KDE/kdelibs/; revision=895719 --- modules/KDE4Macros.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 709748de..be4620a8 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -250,7 +250,9 @@ endmacro (KDE4_CREATE_HANDBOOK) macro (KDE4_CREATE_MANPAGE _docbook _section) get_filename_component(_input ${_docbook} ABSOLUTE) - get_filename_component(_base ${_input} NAME_WE) + get_filename_component(_base ${_input} NAME) + + string(REGEX REPLACE "\\.${_section}\\.docbook$" "" _base ${_base}) set(_doc ${CMAKE_CURRENT_BINARY_DIR}/${_base}.${_section}) # sometimes we have "man-" prepended @@ -270,7 +272,7 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} ) get_filename_component(_targ ${CMAKE_CURRENT_SOURCE_DIR} NAME) - set(_targ "${_targ}-manpage") + set(_targ "${_targ}-manpage-${_base}") add_custom_target(${_targ} ALL DEPENDS "${_outdoc}") set(_args ${ARGN}) -- cgit v1.2.1 From 6c7568d6bc02570b267c2f0f7832fa33fc91fff7 Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 12 Dec 2008 21:59:24 +0000 Subject: SVN_SILENT no it does not ;-) svn path=/trunk/KDE/kdelibs/; revision=896223 --- modules/FindKDE4Internal.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 739bf876..7a03ca35 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -141,7 +141,6 @@ # Create a KDE plugin (KPart, kioslave, etc.) from the given source files. # It supports KDE4_ENABLE_FINAL. # If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't. -# It creates and installs an appropriate libtool la-file. # # KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN) # Create a KDE application in the form of a module loadable via kdeinit. -- cgit v1.2.1 From 4c11eb8050bdfc8465f45700e4d0969337999e08 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Dec 2008 21:23:07 +0000 Subject: -break the long line into multiple lines -don't glob for *.py files but instead list them all explicitely (same would be nice for the *cmake files but it's just too convenient) Alex svn path=/trunk/KDE/kdelibs/; revision=896959 --- modules/CMakeLists.txt | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 32493031..b9dea894 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,11 +1,20 @@ -# install the cmake files +## install the cmake files file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") -file(GLOB pyfiles "${CMAKE_CURRENT_SOURCE_DIR}/*.py") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in ${cmakeFiles} ${pyfiles} +install( FILES cmake-modules-styleguide.txt + kde4init_dummy.cpp.in + kde4init_win32lib_dummy.cpp.in + kde4_cmake_uninstall.cmake.in + kde4automoc.files.in + FindLibPython.py + FindPyKDE4.py + FindPyQt.py + FindSIP.py + PythonCompile.py + ${cmakeFiles} DESTINATION ${module_install_dir} ) # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex -- cgit v1.2.1 From bbe1d875e27f9d87fefa985d6a819cf931031be9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Dec 2008 21:35:54 +0000 Subject: -add a macro which helps with generating a find_package() conform Version.cmake file Alex svn path=/trunk/KDE/kdelibs/; revision=896965 --- modules/CMakeLists.txt | 1 + modules/FindKDE4Internal.cmake | 22 +++++++++++++++++++++- modules/KDE4Macros.cmake | 11 ++++++++++- modules/kde4BasicFindPackageVersion.cmake.in | 27 +++++++++++++++++++++++++++ 4 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 modules/kde4BasicFindPackageVersion.cmake.in (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index b9dea894..35526b69 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -9,6 +9,7 @@ install( FILES cmake-modules-styleguide.txt kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in + kde4BasicFindPackageVersion.cmake.in FindLibPython.py FindPyKDE4.py FindPyQt.py diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7a03ca35..386586aa 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -115,8 +115,11 @@ # KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation # KDE4_BUILD_TESTS - enable this to build the testcases # KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature +# KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR - only present for CMake >= 2.6.3, defaults to TRUE +# If enabled, the package should install its Config.cmake file to +# lib/cmake// instead to lib//cmake # -# It also adds the following macros (from KDE4Macros.cmake) +# It also adds the following macros and functions (from KDE4Macros.cmake) # KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) # Use this to add Qt designer ui files to your application/library. # @@ -131,6 +134,14 @@ # Use this to add widget description files for the makekdewidgets code generator # for Qt Designer plugins. # +# KDE4_WRITE_BASIC_CMAKE_VERSION_FILE( _filename _major _minor _patch) +# Writes a file for use as Version.cmake file to <_filename>. +# See the documentation of FIND_PACKAGE() for details on this. +# _filename is the output filename, it should be in the build tree. +# _major is the major version number of the project to be installed +# _minor is the minor version number of the project to be installed +# _patch is the patch version number of the project to be installed +# # KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) # This macro is intended mainly for internal uses. # It is used for enable-final. It will generate two source files, @@ -591,6 +602,15 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") +if(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSION_GREATER 2.6.2) + option(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR + "Prefer to install the Config.cmake files to lib/cmake/ instead to lib//cmake" + TRUE) +else(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSION_GREATER 2.6.2) + set(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR FALSE) +endif(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSION_GREATER 2.6.2) + + # This is for the reduced link interface. # In kdelibs it is already alwaysenabled. # In all other modules provide the switch _KDE4_USE_REDUCED_LINK_INTERFACE to turn it on. diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index be4620a8..37195e87 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1,6 +1,6 @@ # for documentation look at FindKDE4Internal.cmake -# this file contains the following macros: +# this file contains the following macros (or functions): # KDE4_ADD_UI_FILES # KDE4_ADD_UI3_FILES # KDE4_ADD_KCFG_FILES @@ -21,6 +21,7 @@ # KDE4_CREATE_HANDBOOK # KDE4_ADD_APP_ICON # KDE4_CREATE_MANPAGE +# KDE4_CREATE_BASIC_CMAKE_VERSION_FILE (function) # Copyright (c) 2006, 2007, Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, @@ -1133,6 +1134,14 @@ macro (KDE4_ADD_APP_ICON appsources pattern) endmacro (KDE4_ADD_APP_ICON) +function(KDE4_WRITE_BASIC_CMAKE_VERSION_FILE _filename _major _minor _patch) + set(PROJECT_VERSION_MAJOR ${_major}) + set(PROJECT_VERSION_MINOR ${_minor}) + set(PROJECT_VERSION_PATCH ${_patch}) + configure_file(${KDE4_MODULE_DIR}/kde4BasicFindPackageVersion.cmake.in "${_filename}" @ONLY) +endfunction(KDE4_WRITE_BASIC_CMAKE_VERSION_FILE _major _minor _patch) + + macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) message(FATAL_ERROR "_KDE4_EXPORT_LIBRARY_DEPENDENCIES() was an internal macro and has been removed again. Just remove the code which calls it, there is no substitute.") endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) diff --git a/modules/kde4BasicFindPackageVersion.cmake.in b/modules/kde4BasicFindPackageVersion.cmake.in new file mode 100644 index 00000000..a347e15f --- /dev/null +++ b/modules/kde4BasicFindPackageVersion.cmake.in @@ -0,0 +1,27 @@ +# This is a very basic file for the new style find_package() search mode, +# i.e. Config-mode. It is used by KDE4_WRITE_BASIC_CMAKE_VERSION_FILE() from +# KDE4Macros.cmake. +# In this mode find_package() searches for a Config.cmake +# file and an associated Version.cmake file, which it loads to check +# the version number. +# This file can be used with configure_file() to generate such a file for a project +# with very basic logic. +# It sets PACKAGE_VERSION_EXACT if the current version string and the requested +# version string are exactly the same and it sets PACKAGE_VERSION_COMPATIBLE +# if the current version is >= requested version. +# If this is not good enough for your project, you need to write your own +# improved Version.cmake file. +# This file requires the following three variables to be set: +# PROJECT_VERSION_MAJOR +# PROJECT_VERSION_MINOR +# PROJECT_VERSION_PATCH + + +set(PACKAGE_VERSION @PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@) + +if(NOT ${PACKAGE_FIND_VERSION} VERSION_LESS ${PACKAGE_VERSION} ) + set(PACKAGE_VERSION_COMPATIBLE TRUE) + if( ${PACKAGE_FIND_VERSION} STREQUAL ${PACKAGE_VERSION}) + set(PACKAGE_VERSION_EXACT TRUE) + endif( ${PACKAGE_FIND_VERSION} STREQUAL ${PACKAGE_VERSION}) +endif(NOT ${PACKAGE_FIND_VERSION} VERSION_LESS ${PACKAGE_VERSION} ) -- cgit v1.2.1 From 8a43bd02a65fb884553e5e87f09923a591dbd55b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Dec 2008 22:45:39 +0000 Subject: -optionally support a version number for searching kdepimlibs -fix comment, filename is ConfigVersion.cmake -fix logic in Version template file, it was the wrong way Alex svn path=/trunk/KDE/kdelibs/; revision=896993 --- modules/FindKDE4Internal.cmake | 2 +- modules/FindKdepimLibs.cmake | 2 +- modules/kde4BasicFindPackageVersion.cmake.in | 11 +++++++---- 3 files changed, 9 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 386586aa..ba03f65f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -135,7 +135,7 @@ # for Qt Designer plugins. # # KDE4_WRITE_BASIC_CMAKE_VERSION_FILE( _filename _major _minor _patch) -# Writes a file for use as Version.cmake file to <_filename>. +# Writes a file for use as ConfigVersion.cmake file to <_filename>. # See the documentation of FIND_PACKAGE() for details on this. # _filename is the output filename, it should be in the build tree. # _major is the major version number of the project to be installed diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 29741328..603a27f2 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -64,7 +64,7 @@ # See kdepimlibs/CMakeLists.txt and kdepimlibs/KdepimLibsConfig.cmake.in # for details. Alex set(_KdepimLibs_FIND_QUIETLY ${KdepimLibs_FIND_QUIETLY}) -find_package(KdepimLibs QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KdepimLibs/cmake ) +find_package(KdepimLibs ${KdepimLibs_FIND_VERSION} QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KdepimLibs/cmake ) set(KdepimLibs_FIND_QUIETLY ${_KdepimLibs_FIND_QUIETLY}) include(FindPackageHandleStandardArgs) diff --git a/modules/kde4BasicFindPackageVersion.cmake.in b/modules/kde4BasicFindPackageVersion.cmake.in index a347e15f..4760f301 100644 --- a/modules/kde4BasicFindPackageVersion.cmake.in +++ b/modules/kde4BasicFindPackageVersion.cmake.in @@ -19,9 +19,12 @@ set(PACKAGE_VERSION @PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@) -if(NOT ${PACKAGE_FIND_VERSION} VERSION_LESS ${PACKAGE_VERSION} ) +if(${PACKAGE_VERSION} LESS ${PACKAGE_FIND_VERSION} ) + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else(${PACKAGE_VERSION} LESS ${PACKAGE_FIND_VERSION} ) set(PACKAGE_VERSION_COMPATIBLE TRUE) - if( ${PACKAGE_FIND_VERSION} STREQUAL ${PACKAGE_VERSION}) + if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") set(PACKAGE_VERSION_EXACT TRUE) - endif( ${PACKAGE_FIND_VERSION} STREQUAL ${PACKAGE_VERSION}) -endif(NOT ${PACKAGE_FIND_VERSION} VERSION_LESS ${PACKAGE_VERSION} ) + endif( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") +endif(${PACKAGE_VERSION} LESS ${PACKAGE_FIND_VERSION} ) + -- cgit v1.2.1 From d6452721669defdbf81eb43cdab8e08b4ef43ed7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Dec 2008 22:51:31 +0000 Subject: -now really fix the logic Alex svn path=/trunk/KDE/kdelibs/; revision=896994 --- modules/kde4BasicFindPackageVersion.cmake.in | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/kde4BasicFindPackageVersion.cmake.in b/modules/kde4BasicFindPackageVersion.cmake.in index 4760f301..ba4cb1eb 100644 --- a/modules/kde4BasicFindPackageVersion.cmake.in +++ b/modules/kde4BasicFindPackageVersion.cmake.in @@ -19,12 +19,12 @@ set(PACKAGE_VERSION @PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@) -if(${PACKAGE_VERSION} LESS ${PACKAGE_FIND_VERSION} ) +if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) set(PACKAGE_VERSION_COMPATIBLE FALSE) -else(${PACKAGE_VERSION} LESS ${PACKAGE_FIND_VERSION} ) +else("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) set(PACKAGE_VERSION_COMPATIBLE TRUE) if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") set(PACKAGE_VERSION_EXACT TRUE) endif( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") -endif(${PACKAGE_VERSION} LESS ${PACKAGE_FIND_VERSION} ) +endif("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) -- cgit v1.2.1 From 728a5895ce2bd160b3a8748ee15711d942d62ebb Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Dec 2008 23:11:35 +0000 Subject: -rename the new kde4_write_basic_cmake_version_file() to macro_write_basic_cmake_version_file(), since it is completely KDE-independent and can potentially be used in any other project remove the old macro, add the new renamed one, add it to the macro library, adjust kdepimlibs/CMakeLists.txt accordingly Alex svn path=/trunk/KDE/kdelibs/; revision=896999 --- modules/BasicFindPackageVersion.cmake.in | 30 +++++++++++++++++++++++++++ modules/CMakeLists.txt | 4 ++-- modules/FindKDE4Internal.cmake | 8 ------- modules/KDE4Macros.cmake | 8 ------- modules/MacroLibrary.cmake | 1 + modules/MacroWriteBasicCMakeVersionFile.cmake | 22 ++++++++++++++++++++ modules/kde4BasicFindPackageVersion.cmake.in | 30 --------------------------- 7 files changed, 55 insertions(+), 48 deletions(-) create mode 100644 modules/BasicFindPackageVersion.cmake.in create mode 100644 modules/MacroWriteBasicCMakeVersionFile.cmake delete mode 100644 modules/kde4BasicFindPackageVersion.cmake.in (limited to 'modules') diff --git a/modules/BasicFindPackageVersion.cmake.in b/modules/BasicFindPackageVersion.cmake.in new file mode 100644 index 00000000..ae5d3125 --- /dev/null +++ b/modules/BasicFindPackageVersion.cmake.in @@ -0,0 +1,30 @@ +# This is a very basic file for the new style find_package() search mode, +# i.e. Config-mode. It is used by MACRO_WRITE_BASIC_CMAKE_VERSION_FILE() from +# MacroWriteBasicCMakeVersionFile.cmake. +# In this mode find_package() searches for a Config.cmake +# file and an associated Version.cmake file, which it loads to check +# the version number. +# This file can be used with configure_file() to generate such a file for a project +# with very basic logic. +# It sets PACKAGE_VERSION_EXACT if the current version string and the requested +# version string are exactly the same and it sets PACKAGE_VERSION_COMPATIBLE +# if the current version is >= requested version. +# If this is not good enough for your project, you need to write your own +# improved Version.cmake file. +# This file requires the following three variables to be set: +# PROJECT_VERSION_MAJOR +# PROJECT_VERSION_MINOR +# PROJECT_VERSION_PATCH + + +set(PACKAGE_VERSION @PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@) + +if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) + set(PACKAGE_VERSION_COMPATIBLE TRUE) + if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") + set(PACKAGE_VERSION_EXACT TRUE) + endif( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") +endif("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) + diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 35526b69..675659c4 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,4 +1,4 @@ -## install the cmake files +# install the cmake files file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") @@ -9,7 +9,7 @@ install( FILES cmake-modules-styleguide.txt kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in kde4automoc.files.in - kde4BasicFindPackageVersion.cmake.in + BasicFindPackageVersion.cmake.in FindLibPython.py FindPyKDE4.py FindPyQt.py diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ba03f65f..6d839124 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -134,14 +134,6 @@ # Use this to add widget description files for the makekdewidgets code generator # for Qt Designer plugins. # -# KDE4_WRITE_BASIC_CMAKE_VERSION_FILE( _filename _major _minor _patch) -# Writes a file for use as ConfigVersion.cmake file to <_filename>. -# See the documentation of FIND_PACKAGE() for details on this. -# _filename is the output filename, it should be in the build tree. -# _major is the major version number of the project to be installed -# _minor is the minor version number of the project to be installed -# _patch is the patch version number of the project to be installed -# # KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN) # This macro is intended mainly for internal uses. # It is used for enable-final. It will generate two source files, diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 37195e87..f0bd9c8e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1134,14 +1134,6 @@ macro (KDE4_ADD_APP_ICON appsources pattern) endmacro (KDE4_ADD_APP_ICON) -function(KDE4_WRITE_BASIC_CMAKE_VERSION_FILE _filename _major _minor _patch) - set(PROJECT_VERSION_MAJOR ${_major}) - set(PROJECT_VERSION_MINOR ${_minor}) - set(PROJECT_VERSION_PATCH ${_patch}) - configure_file(${KDE4_MODULE_DIR}/kde4BasicFindPackageVersion.cmake.in "${_filename}" @ONLY) -endfunction(KDE4_WRITE_BASIC_CMAKE_VERSION_FILE _major _minor _patch) - - macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) message(FATAL_ERROR "_KDE4_EXPORT_LIBRARY_DEPENDENCIES() was an internal macro and has been removed again. Just remove the code which calls it, there is no substitute.") endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake index 5e482f92..a467d840 100644 --- a/modules/MacroLibrary.cmake +++ b/modules/MacroLibrary.cmake @@ -16,3 +16,4 @@ INCLUDE(MacroEnsureOutOfSourceBuild) INCLUDE(MacroBoolTo01) INCLUDE(MacroPushRequiredVars) INCLUDE(MacroLogFeature) +INCLUDE(MacroWriteBasicCMakeVersionFile) diff --git a/modules/MacroWriteBasicCMakeVersionFile.cmake b/modules/MacroWriteBasicCMakeVersionFile.cmake new file mode 100644 index 00000000..6f9e4189 --- /dev/null +++ b/modules/MacroWriteBasicCMakeVersionFile.cmake @@ -0,0 +1,22 @@ +# MACRO_WRITE_BASIC_CMAKE_VERSION_FILE( _filename _major _minor _patch) +# Writes a file for use as ConfigVersion.cmake file to <_filename>. +# See the documentation of FIND_PACKAGE() for details on this. +# _filename is the output filename, it should be in the build tree. +# _major is the major version number of the project to be installed +# _minor is the minor version number of the project to be installed +# _patch is the patch version number of the project to be installed +# + +# Copyright (c) 2008, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +get_filename_component(_currentListFileDir ${CMAKE_CURRENT_LIST_FILE} PATH) + +function(MACRO_WRITE_BASIC_CMAKE_VERSION_FILE _filename _major _minor _patch) + set(PROJECT_VERSION_MAJOR ${_major}) + set(PROJECT_VERSION_MINOR ${_minor}) + set(PROJECT_VERSION_PATCH ${_patch}) + configure_file(${_currentListFileDir}/BasicFindPackageVersion.cmake.in "${_filename}" @ONLY) +endfunction(MACRO_WRITE_BASIC_CMAKE_VERSION_FILE _major _minor _patch) diff --git a/modules/kde4BasicFindPackageVersion.cmake.in b/modules/kde4BasicFindPackageVersion.cmake.in deleted file mode 100644 index ba4cb1eb..00000000 --- a/modules/kde4BasicFindPackageVersion.cmake.in +++ /dev/null @@ -1,30 +0,0 @@ -# This is a very basic file for the new style find_package() search mode, -# i.e. Config-mode. It is used by KDE4_WRITE_BASIC_CMAKE_VERSION_FILE() from -# KDE4Macros.cmake. -# In this mode find_package() searches for a Config.cmake -# file and an associated Version.cmake file, which it loads to check -# the version number. -# This file can be used with configure_file() to generate such a file for a project -# with very basic logic. -# It sets PACKAGE_VERSION_EXACT if the current version string and the requested -# version string are exactly the same and it sets PACKAGE_VERSION_COMPATIBLE -# if the current version is >= requested version. -# If this is not good enough for your project, you need to write your own -# improved Version.cmake file. -# This file requires the following three variables to be set: -# PROJECT_VERSION_MAJOR -# PROJECT_VERSION_MINOR -# PROJECT_VERSION_PATCH - - -set(PACKAGE_VERSION @PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@) - -if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) - set(PACKAGE_VERSION_COMPATIBLE FALSE) -else("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) - set(PACKAGE_VERSION_COMPATIBLE TRUE) - if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") - set(PACKAGE_VERSION_EXACT TRUE) - endif( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") -endif("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) - -- cgit v1.2.1 From 8542f5bf442c24a199ba42777cbc763f5e7d54c5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Dec 2008 23:30:55 +0000 Subject: -remove support for option KDE4_USE_ALWAYS_FULL_RPATH, with cmake >= 2.6.0 we build always with full RPATH enabled, since the only reason not to do so was because the relinking this caused was slow. Now with camke 2.6 the libraries and executables don't have to be relinked again, instead the RPATH inside the binaries is patched, which is *much* faster. So we can always play safe and use the full RPATH. I also changed this setting for the Mac, because I don't see why it should be necessary there. If this breaks something (i.e. when starting an app wrong libs are linked/or they are not found), please let me know. Alex CCMAIL: illogical1@gmail.com svn path=/trunk/KDE/kdelibs/; revision=897003 --- modules/FindKDE4Internal.cmake | 17 ++++-------- modules/KDE4Macros.cmake | 61 ++++++++++++++---------------------------- 2 files changed, 25 insertions(+), 53 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6d839124..13752006 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -890,17 +890,10 @@ if (WIN32) endif (WIN32) -# setup default RPATH/install_name handling, may be overridden by KDE4_HANDLE_RPATH_FOR_[LIBRARY|EXECUTABLE] -# default is to build with RPATH for the install dir, so it doesn't need to relink +# setup default RPATH/install_name handling, may be overridden by KDE4_HANDLE_RPATH_FOR_EXECUTABLE +# It sets up to build with full RPATH. When installing, RPATH will be changed to the LIB_INSTALL_DIR +# and all link directories which are not inside the current build dir. if (UNIX) - if (NOT APPLE) - set( _KDE4_DEFAULT_USE_FULL_RPATH ON ) - else (NOT APPLE) - set( _KDE4_DEFAULT_USE_FULL_RPATH OFF ) - endif (NOT APPLE) - - option(KDE4_USE_ALWAYS_FULL_RPATH "If set to TRUE, also libs and plugins will be linked with the full RPATH, which will usually make them work better, but make install will take longer." ${_KDE4_DEFAULT_USE_FULL_RPATH} ) - set( _KDE4_PLATFORM_INCLUDE_DIRS) # the rest is RPATH handling @@ -912,8 +905,8 @@ if (UNIX) else (APPLE) # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) - set(CMAKE_SKIP_BUILD_RPATH TRUE) - set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_SKIP_BUILD_RPATH FALSE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) endif (APPLE) endif (UNIX) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f0bd9c8e..b5300836 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -454,22 +454,9 @@ macro (KDE4_CREATE_FINAL_FILES _filenameCPP _filesExcludedFromFinalFile ) endmacro (KDE4_CREATE_FINAL_FILES) -# This macro sets the RPATH related options for libraries, plugins and kdeinit executables. -# It overrides the defaults set in FindKDE4Internal.cmake. -# If RPATH is not explicitly disabled, libraries and plugins are built without RPATH, in -# the hope that the RPATH which is compiled into the executable is good enough. -macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) - if (NOT CMAKE_SKIP_RPATH) - if(KDE4_USE_ALWAYS_FULL_RPATH) - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) - else(KDE4_USE_ALWAYS_FULL_RPATH) - set_target_properties(${_target_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH FALSE SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE INSTALL_RPATH "") - endif(KDE4_USE_ALWAYS_FULL_RPATH) - endif (NOT CMAKE_SKIP_RPATH) -endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) - -# This macro sets the RPATH related options for executables -# and creates wrapper shell scripts for the executables. +# This macro doesn't set up the RPATH related options for executables anymore, +# since now (wioth cmake 2.6) just the full RPATH is used always for everything. +# It does create wrapper shell scripts for the executables. # It overrides the defaults set in FindKDE4Internal.cmake. # For every executable a wrapper script is created, which sets the appropriate # environment variable for the platform (LD_LIBRARY_PATH on most UNIX systems, @@ -479,28 +466,8 @@ endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) # If RPATH is not disabled, these scripts are also used but only for consistency, because # they don't really influence anything then, because the compiled-in RPATH overrides # the LD_LIBRARY_PATH env. variable. -# Executables with the RUN_UNINSTALLED option will be built with the RPATH pointing to the -# build dir, so that they can be run safely without being installed, e.g. as code generators -# for other stuff during the build. These executables will be relinked during "make install". -# All other executables are built with the RPATH with which they will be installed. macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) if (UNIX) - - # set the RPATH related properties - if (NOT CMAKE_SKIP_RPATH) - if (${_type} STREQUAL "GUI") - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) - endif (${_type} STREQUAL "GUI") - - if (${_type} STREQUAL "NOGUI") - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH TRUE BUILD_WITH_INSTALL_RPATH TRUE) - endif (${_type} STREQUAL "NOGUI") - - if (${_type} STREQUAL "RUN_UNINSTALLED") - set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) - endif (${_type} STREQUAL "RUN_UNINSTALLED") - endif (NOT CMAKE_SKIP_RPATH) - if (APPLE) set(_library_path_variable "DYLD_LIBRARY_PATH") else (APPLE) @@ -580,8 +547,6 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") endif (_first_SRC) - kde4_handle_rpath_for_library(${_target_NAME}) - if (WIN32) # for shared libraries/plugins a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) @@ -709,7 +674,6 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS}) endif (KDE4_ENABLE_FINAL) - kde4_handle_rpath_for_library(kdeinit_${_target_NAME}) set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) @@ -891,8 +855,6 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) add_dependencies(${_target_NAME} "${_target_NAME}_automoc") endif(MSVC) - kde4_handle_rpath_for_library(${_target_NAME}) - # for shared libraries a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) @@ -1134,6 +1096,23 @@ macro (KDE4_ADD_APP_ICON appsources pattern) endmacro (KDE4_ADD_APP_ICON) +# This macro is only kept around for compatibility, it is not needed/used anymore +# since CMake 2.6.0. With CMake 2.6.0 it is not necessary anymore link libraries again +# ("relink") to change their RPATH. Since this is fast now, they are now always built with +# full RPATH. +# Still keep this macro here, since somebody might use it and so that would break +# if we would just remove it from here. +# What it does now it sets the target properties of the given target the same way as +# they were set by the old version of the macro with the option FULL_RPATH enabled. +# This one may be a candidate for removal. Alex +macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) + message(STATUS "You are using the macro KDE4_HANDLE_RPATH_FOR_LIBRARY(), which is an internal macro and shouldn't be used by external projects. Please remove it.") + if (NOT CMAKE_SKIP_RPATH) + set_target_properties(${_target_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE BUILD_WITH_INSTALL_RPATH FALSE) + endif (NOT CMAKE_SKIP_RPATH) +endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) + + macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) message(FATAL_ERROR "_KDE4_EXPORT_LIBRARY_DEPENDENCIES() was an internal macro and has been removed again. Just remove the code which calls it, there is no substitute.") endmacro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES) -- cgit v1.2.1 From 67e3e2a04e3c29f72feae38afc5b5a1c54760968 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 15 Dec 2008 22:19:47 +0000 Subject: -unconditionally enable the reduced link interface I checked that all modules (except extragear, review, playground, kwebdev) link on my machine, which means it can still break on other configurations. Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: mueller@kde.org CCMAIL: Sune@vuorela.dk CCMAIL: modestas@vainius.eu svn path=/trunk/KDE/kdelibs/; revision=897386 --- modules/FindKDE4Internal.cmake | 29 +++++++++++++++++------------ modules/KDE4Macros.cmake | 7 ++----- 2 files changed, 19 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 13752006..7a7a02a5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -603,18 +603,23 @@ else(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSIO endif(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSION_GREATER 2.6.2) -# This is for the reduced link interface. -# In kdelibs it is already alwaysenabled. -# In all other modules provide the switch _KDE4_USE_REDUCED_LINK_INTERFACE to turn it on. -if(kdelibs_SOURCE_DIR) - set(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT TRUE) -else(kdelibs_SOURCE_DIR) - option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the reduced link interface" OFF) -endif(kdelibs_SOURCE_DIR) - -# Setting the target property LINK_INTERFACE_LIBRARIES directly shouldn't be done, -# instead TARGET_LINK_LIBRARIES(... LINK_INTERFACE_LIBRARIES ... ) must be used. -set(KDE4_DISABLE_PROPERTY_ "DISABLED_") +# This is obsolete now. I just keep it here so in case somebody stumbles upon it somewhere +# he can still find a hint where it came from and what it was good for. +# +# What to do in that case ? Just remove it. Alex +# +# # This is for the reduced link interface. +# # In kdelibs it is already alwaysenabled. +# # In all other modules provide the switch _KDE4_USE_REDUCED_LINK_INTERFACE to turn it on. +# if(kdelibs_SOURCE_DIR) +# set(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT TRUE) +# else(kdelibs_SOURCE_DIR) +# option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the reduced link interface" OFF) +# endif(kdelibs_SOURCE_DIR) +# +# # Setting the target property LINK_INTERFACE_LIBRARIES directly shouldn't be done, +# # instead TARGET_LINK_LIBRARIES(... LINK_INTERFACE_LIBRARIES ... ) must be used. +# set(KDE4_DISABLE_PROPERTY_ "DISABLED_") diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b5300836..b6987111 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -861,17 +861,14 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) set(_symbol "MAKE_${_symbol}_LIB") set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) - # by default don't add any linked libraries to the "exported" + # By default don't add any linked libraries to the "exported" # link interfaces, so that executables linking against this library # will not automatically add implicit dependencies to their link list. # # This reduces inter-package dependencies and makes it easier to remove # dependencies of shared libraries without breaking binary compatibility. if(NOT "${_add_lib_param}" STREQUAL "STATIC") - # only do this inside kdelibs for now (so there is not too much breakage all at once, Alex - if(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) - set_target_properties(${_target_NAME} PROPERTIES LINK_INTERFACE_LIBRARIES "" ) - endif(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT) + set_target_properties(${_target_NAME} PROPERTIES LINK_INTERFACE_LIBRARIES "" ) endif(NOT "${_add_lib_param}" STREQUAL "STATIC") endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -- cgit v1.2.1 From 6a41335841372f6434795b9ada5fa41652d4d845 Mon Sep 17 00:00:00 2001 From: Simon Edwards Date: Wed, 17 Dec 2008 20:33:13 +0000 Subject: PyQt SIP flags patch applied. CCBUGS: 177965 svn path=/trunk/KDE/kdelibs/; revision=898246 --- modules/FindPyQt.py | 1 + modules/FindPyQt4.cmake | 4 ++++ 2 files changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindPyQt.py b/modules/FindPyQt.py index 1978f2d8..8e255319 100644 --- a/modules/FindPyQt.py +++ b/modules/FindPyQt.py @@ -20,3 +20,4 @@ for item in pyqtcfg.pyqt_sip_flags.split(' '): print("pyqt_version_tag:%s" % pyqt_version_tag) print("pyqt_sip_dir:%s" % pyqtcfg.pyqt_sip_dir) +print("pyqt_sip_flags:%s" % pyqtcfg.pyqt_sip_flags) diff --git a/modules/FindPyQt4.cmake b/modules/FindPyQt4.cmake index 68a82cbc..37f645ea 100644 --- a/modules/FindPyQt4.cmake +++ b/modules/FindPyQt4.cmake @@ -19,6 +19,8 @@ # PYQT4_VERSION_TAG - The PyQt version tag using by PyQt's sip files. # # PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. +# +# PYQT4_SIP_FLAGS - The SIP flags used to build PyQt. IF(EXISTS PYQT4_VERSION) # Already in cache, be silent @@ -33,6 +35,8 @@ ELSE(EXISTS PYQT4_VERSION) STRING(REGEX REPLACE ".*\npyqt_version_str:([^\n]+).*$" "\\1" PYQT4_VERSION_STR ${pyqt_config}) STRING(REGEX REPLACE ".*\npyqt_version_tag:([^\n]+).*$" "\\1" PYQT4_VERSION_TAG ${pyqt_config}) STRING(REGEX REPLACE ".*\npyqt_sip_dir:([^\n]+).*$" "\\1" PYQT4_SIP_DIR ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_sip_flags:([^\n]+).*$" "\\1" PYQT4_SIP_FLAGS ${pyqt_config}) + SET(PYQT4_FOUND TRUE) ENDIF(pyqt_config) -- cgit v1.2.1 From 7a2d02b259024c74e6fd7a34822b2824af1b1789 Mon Sep 17 00:00:00 2001 From: Carlo Segato Date: Wed, 17 Dec 2008 23:40:49 +0000 Subject: remove the drive letter from the path on windows, since we can't make a directory named 'c:/path/' svn path=/trunk/KDE/kdelibs/; revision=898330 --- modules/PythonMacros.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/PythonMacros.cmake b/modules/PythonMacros.cmake index fa9b2ba7..96d9cd35 100644 --- a/modules/PythonMacros.cmake +++ b/modules/PythonMacros.cmake @@ -31,6 +31,10 @@ MACRO(PYTHON_INSTALL SOURCE_FILE DESINATION_DIR) SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename}) SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc) + if(WIN32) + string(REGEX REPLACE ".:/" "/" _basepath "${_basepath}") + endif(WIN32) + FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}) SET(_message "-DMESSAGE=Byte-compiling ${_bin_py}") -- cgit v1.2.1 From ecb937b3ac82ba3236537186ed728eb4e5d0ca23 Mon Sep 17 00:00:00 2001 From: Carlo Segato Date: Thu, 18 Dec 2008 00:00:12 +0000 Subject: move the drive letter replace a bit higher svn path=/trunk/KDE/kdelibs/; revision=898341 --- modules/PythonMacros.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/PythonMacros.cmake b/modules/PythonMacros.cmake index 96d9cd35..4ae5a3c7 100644 --- a/modules/PythonMacros.cmake +++ b/modules/PythonMacros.cmake @@ -28,13 +28,14 @@ MACRO(PYTHON_INSTALL SOURCE_FILE DESINATION_DIR) GET_FILENAME_COMPONENT(_filename ${SOURCE_FILE} NAME) GET_FILENAME_COMPONENT(_filenamebase ${SOURCE_FILE} NAME_WE) GET_FILENAME_COMPONENT(_basepath ${SOURCE_FILE} PATH) - SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename}) - SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc) if(WIN32) string(REGEX REPLACE ".:/" "/" _basepath "${_basepath}") endif(WIN32) + SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename}) + SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc) + FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}) SET(_message "-DMESSAGE=Byte-compiling ${_bin_py}") -- cgit v1.2.1 From bfa11e38bd5e34283ab55c318f2ca3b66457d84b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 22 Dec 2008 07:52:21 +0000 Subject: -delete FindPNG.cmake and FindTIFF.cmake, they are synced with the ones from cmake 2.6.2 -use the find_package_handle_standards_args() macro in FindLibXml2.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=900078 --- modules/FindLibXml2.cmake | 15 +++++------- modules/FindPNG.cmake | 59 ----------------------------------------------- modules/FindTIFF.cmake | 27 ---------------------- 3 files changed, 6 insertions(+), 95 deletions(-) delete mode 100644 modules/FindPNG.cmake delete mode 100644 modules/FindTIFF.cmake (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 04a73857..fd1a6319 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -53,15 +53,12 @@ IF( NOT LIBXML2_XMLLINT_EXECUTABLE ) MESSAGE(STATUS "xmllint program not found. Install it if you want validate generated doc file.") ENDIF(NOT LIBXML2_XMLLINT_EXECUTABLE ) -IF (LIBXML2_FOUND) - IF (NOT LibXml2_FIND_QUIETLY) - MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}") - ENDIF (NOT LibXml2_FIND_QUIETLY) -ELSE (LIBXML2_FOUND) - IF (LibXml2_FIND_REQUIRED) - MESSAGE(SEND_ERROR "Could NOT find LibXml2") - ENDIF (LibXml2_FIND_REQUIRED) -ENDIF (LIBXML2_FOUND) + +INCLUDE(FindPackageHandleStandardArgs) + +# handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if +# all listed variables are TRUE +FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE) diff --git a/modules/FindPNG.cmake b/modules/FindPNG.cmake deleted file mode 100644 index d00c93a0..00000000 --- a/modules/FindPNG.cmake +++ /dev/null @@ -1,59 +0,0 @@ -# - Find the native PNG includes and library -# -# This module defines -# PNG_INCLUDE_DIR, where to find png.h, etc. -# PNG_LIBRARIES, the libraries to link against to use PNG. -# PNG_DEFINITIONS - You should ADD_DEFINITONS(${PNG_DEFINITIONS}) before compiling code that includes png library files. -# PNG_FOUND, If false, do not try to use PNG. -# also defined, but not for general use are -# PNG_LIBRARY, where to find the PNG library. -# None of the above will be defined unles zlib can be found. -# PNG depends on Zlib - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - - -INCLUDE(FindZLIB) - -SET(PNG_FOUND "NO") - -IF(ZLIB_FOUND) - FIND_PATH(PNG_PNG_INCLUDE_DIR png.h - /usr/local/include/libpng # OpenBSD - ) - - SET(PNG_NAMES ${PNG_NAMES} png libpng png12 libpng12) - FIND_LIBRARY(PNG_LIBRARY - NAMES ${PNG_NAMES} - ) - - IF (PNG_LIBRARY AND PNG_PNG_INCLUDE_DIR) - # png.h includes zlib.h. Sigh. - SET(PNG_INCLUDE_DIR ${PNG_PNG_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} ) - SET(PNG_LIBRARIES ${PNG_LIBRARY} ${ZLIB_LIBRARY}) - SET(PNG_FOUND "YES") - - IF (CYGWIN) - IF(BUILD_SHARED_LIBS) - # No need to define PNG_USE_DLL here, because it's default for Cygwin. - ELSE(BUILD_SHARED_LIBS) - SET (PNG_DEFINITIONS -DPNG_STATIC) - ENDIF(BUILD_SHARED_LIBS) - ENDIF (CYGWIN) - - ENDIF (PNG_LIBRARY AND PNG_PNG_INCLUDE_DIR) - -ENDIF(ZLIB_FOUND) - -IF (PNG_FOUND) - IF (NOT PNG_FIND_QUIETLY) - MESSAGE(STATUS "Found PNG: ${PNG_LIBRARY}") - ENDIF (NOT PNG_FIND_QUIETLY) -ELSE (PNG_FOUND) - IF (PNG_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find PNG library") - ENDIF (PNG_FIND_REQUIRED) -ENDIF (PNG_FOUND) - -MARK_AS_ADVANCED(PNG_PNG_INCLUDE_DIR PNG_LIBRARY ) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake deleted file mode 100644 index 829a3485..00000000 --- a/modules/FindTIFF.cmake +++ /dev/null @@ -1,27 +0,0 @@ -# - Find TIFF library -# Find the native TIFF includes and library -# This module defines -# TIFF_INCLUDE_DIR, where to find tiff.h, etc. -# TIFF_LIBRARIES, libraries to link against to use TIFF. -# TIFF_FOUND, If false, do not try to use TIFF. -# also defined, but not for general use are -# TIFF_LIBRARY, where to find the TIFF library. - -# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. -# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. - -if (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - # Already in cache, be silent - set(TIFF_FIND_QUIETLY TRUE) -endif (TIFF_INCLUDE_DIR AND TIFF_LIBRARY) - -find_path(TIFF_INCLUDE_DIR NAMES tiff.h ) - -set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff libtiff3) -find_library(TIFF_LIBRARY NAMES ${TIFF_NAMES} ) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(TIFF DEFAULT_MSG TIFF_INCLUDE_DIR TIFF_LIBRARY) - -set(TIFF_LIBRARIES ${TIFF_LIBRARY} ) -mark_as_advanced(TIFF_INCLUDE_DIR TIFF_LIBRARY) -- cgit v1.2.1 From 9873dd51efce5302db772b87300159d484a8cca5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 22 Dec 2008 07:54:41 +0000 Subject: this is not necessary anymore when using find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=900080 --- modules/FindLibXml2.cmake | 6 ------ 1 file changed, 6 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index fd1a6319..bb3b860d 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -39,12 +39,6 @@ FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 ${PC_LIBXML_LIBRARY_DIRS} ) -IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - SET(LIBXML2_FOUND TRUE) -ELSE (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - SET(LIBXML2_FOUND FALSE) -ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) - FIND_PROGRAM(LIBXML2_XMLLINT_EXECUTABLE xmllint) # for backwards compat. with KDE 4.0.x: SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}") -- cgit v1.2.1 From 2bf8819d6bc23ab9b3bedb14a2ab7d1866d2e85e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 22 Dec 2008 07:58:59 +0000 Subject: -use uppercase consistently in this file Alex svn path=/trunk/KDE/kdelibs/; revision=900082 --- modules/FindLibXml2.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index bb3b860d..453c261b 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -21,8 +21,8 @@ ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES) IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - pkg_check_modules(PC_LIBXML libxml-2.0) + FIND_PACKAGE(PkgConfig) + PKG_CHECK_MODULES(PC_LIBXML libxml-2.0) SET(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS_OTHER}) ENDIF (NOT WIN32) -- cgit v1.2.1 From 784e9f347be5efef42ad23afbda12f6fc64d6093 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 22 Dec 2008 08:35:55 +0000 Subject: -use FindPkgConfig.cmake instead of UsePkgConfig.cmake Alex CCMAIL: kretz@kde.org Matthias: please check that it still works for you, it does on my machine (e.g. by running cmake -DMODULE=FFmpeg -P RunAllModuleTests.cmake in kdelibs/cmake/module-tests/ ) svn path=/trunk/KDE/kdelibs/; revision=900098 --- modules/FindFFmpeg.cmake | 48 ++++++++++++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/FindFFmpeg.cmake b/modules/FindFFmpeg.cmake index 16233510..d6259b0c 100644 --- a/modules/FindFFmpeg.cmake +++ b/modules/FindFFmpeg.cmake @@ -2,30 +2,32 @@ # Once done this will define # # FFMPEG_FOUND - system has ffmpeg +# FFMPEG_INCLUDE_DIR - Include directory necessary for using the ffmpeg headers # FFMPEG_LIBRARIES - Link these to use ffmpeg # FFMPEG_DEFINITIONS - Compiler switches required for using ffmpeg # Copyright (c) 2006, Matthias Kretz, +# Copyright (c) 2008, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) +if (FFMPEG_LIBRARIES) # in cache already set(FFMPEG_FOUND TRUE) -else (FFMPEG_LIBRARIES)# AND FFMPEG_DEFINITIONS) +else (FFMPEG_LIBRARIES) if (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + pkg_check_modules(PC_LIBAVCODEC libavcodec) + set(FFMPEG_DEFINITIONS ${PC_LIBAVCODEC_CFLAGS_OTHER}) - pkgconfig(libavcodec _FFMPEGIncDir _FFMPEGLinkDir _FFMPEGLinkFlags _FFMPEGCflags) endif (NOT WIN32) - #set(FFMPEG_DEFINITIONS ${_FFMPEGCflags}) # # #include is the new style for FFMPEG headers @@ -35,38 +37,40 @@ endif (NOT WIN32) # installation. # find_path(FFMPEG_INCLUDE_DIR libavcodec/avcodec.h - PATHS - ${_FFMPEGIncDir} - NO_DEFAULT_PATH + HINTS + ${PC_LIBAVCODEC_INCLUDEDIR} + ${PC_LIBAVCODEC_INCLUDE_DIRS} ) # also search for the old style include dir, just for the purpose # of giving a useful error message if an old libavcodec is installed # and the user might wonder why it is not found find_path(FFMPEG_INCLUDE_DIR_OLD_STYLE ffmpeg/avcodec.h - PATHS - ${_FFMPEGIncDir} - NO_DEFAULT_PATH + HINTS + ${PC_LIBAVCODEC_INCLUDEDIR} + ${PC_LIBAVCODEC_INCLUDE_DIRS} ) find_library(AVCODEC_LIBRARIES NAMES avcodec - PATHS - ${_FFMPEGLinkDir} - NO_DEFAULT_PATH + HINTS + ${PC_LIBAVCODEC_LIBDIR} + ${PC_LIBAVCODEC_LIBRARY_DIRS} ) find_library(AVFORMAT_LIBRARIES NAMES avformat - PATHS - ${_FFMPEGLinkDir} - NO_DEFAULT_PATH + HINTS + ${PC_LIBAVCODEC_LIBDIR} + ${PC_LIBAVCODEC_LIBRARY_DIRS} ) find_library(AVUTIL_LIBRARIES NAMES avutil - PATHS - ${_FFMPEGLinkDir} - NO_DEFAULT_PATH + HINTS + ${PC_LIBAVCODEC_LIBDIR} + ${PC_LIBAVCODEC_LIBRARY_DIRS} ) + + set(FFMPEG_LIBRARIES ) if (AVCODEC_LIBRARIES) set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${AVCODEC_LIBRARIES}) -- cgit v1.2.1 From 09e19ac8b80fd04365c1342ca47f72aa81c7379d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 22 Dec 2008 09:48:55 +0000 Subject: -remove the set() for CMAKE_USE_CHRPATH, this was not part of any released cmake version -add some comments Alex svn path=/trunk/KDE/kdelibs/; revision=900115 --- modules/KDE4Defaults.cmake | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index e2af0acd..de56a822 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -21,17 +21,13 @@ set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) # since cmake 2.4.0 set(CMAKE_COLOR_MAKEFILE ON) -# Enable use of chrpath to avoid the need for actually relinking on install -# since cmake cvs 12/19/2007 -if (NOT CMAKE_SKIP_RPATH) - set(CMAKE_USE_CHRPATH ON) -endif (NOT CMAKE_SKIP_RPATH) - # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes +# Use this version number for libraries which are at version n in KDE version n set(GENERIC_LIB_VERSION "4.2.0") set(GENERIC_LIB_SOVERSION "4") +# Use this version number for libraries which are already at version n+1 in KDE version n set(KDE_NON_GENERIC_LIB_VERSION "5.2.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") -- cgit v1.2.1 From 3e35ce31b2824e0a37b98cba98d29a5227f46370 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 23 Dec 2008 09:41:26 +0000 Subject: -replace UsePkgConfig with FindPkgConfig Alex svn path=/trunk/KDE/kdelibs/; revision=900552 --- modules/FindENCHANT.cmake | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 76d577c6..0b30f326 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -21,24 +21,24 @@ else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) - - pkgconfig(enchant _ENCHANTIncDir _ENCHANTLinkDir _ENCHANTLinkFlags _ENCHANTCflags) - - set(ENCHANT_DEFINITIONS ${_ENCHANTCflags}) + find_package(PkgConfig) + pkg_check_modules(PC_ENCHANT enchant) + set(ENCHANT_DEFINITIONS ${PC_ENCHANT_CFLAGS_OTHER}) endif (NOT WIN32) find_path(ENCHANT_INCLUDE_DIR - NAMES enchant++.h - PATH_SUFFIXES enchant - PATHS ${_ENCHANTIncDir} ) + NAMES enchant++.h + HINTS ${PC_ENCHANT_INCLUDEDIR} + ${PC_ENCHANT_INCLUDE_DIRS} + PATH_SUFFIXES enchant ) find_library(ENCHANT_LIBRARIES NAMES enchant - PATHS ${_ENCHANTLinkDir} ) + HINTS ${PC_ENCHANT_LIBDIR} + ${PC_ENCHANT_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES ) + find_package_handle_standard_args(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES ) mark_as_advanced(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES) - + endif (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) -- cgit v1.2.1 From 3e55b225326c2e3472b861c620c7fa51e03eff64 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Tue, 23 Dec 2008 18:40:10 +0000 Subject: fix cmake version variable names patch by Modestas Vainius svn path=/trunk/KDE/kdelibs/; revision=900828 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7a7a02a5..2ff87969 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -594,13 +594,13 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") -if(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSION_GREATER 2.6.2) +if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.6.2) option(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR "Prefer to install the Config.cmake files to lib/cmake/ instead to lib//cmake" TRUE) -else(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSION_GREATER 2.6.2) +else(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.6.2) set(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR FALSE) -endif(${CMAKE_VERSION_MAJOR}.${CMAKE_VERSION_MINOR}.${CMAKE_VERSION_PATCH} VERSION_GREATER 2.6.2) +endif(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.6.2) # This is obsolete now. I just keep it here so in case somebody stumbles upon it somewhere -- cgit v1.2.1 From 9f8f5c5a93d60e23e52ea4dd82cc8638aecb8445 Mon Sep 17 00:00:00 2001 From: Simon Edwards Date: Wed, 31 Dec 2008 13:23:56 +0000 Subject: Removed this gcc visibility hack. It is no longer needed. svn path=/trunk/KDE/kdelibs/; revision=903773 --- modules/SIPMacros.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/SIPMacros.cmake b/modules/SIPMacros.cmake index c9ca7136..eb5ea06c 100644 --- a/modules/SIPMacros.cmake +++ b/modules/SIPMacros.cmake @@ -43,8 +43,6 @@ SET(SIP_EXTRA_OPTIONS) MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) - # FIXME this removes -fvisibility=hidden from the compiler flags and has global affect. - STRING(REPLACE "-fvisibility=hidden" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) SET(EXTRA_LINK_LIBRARIES ${ARGN}) STRING(REPLACE "." "/" _x ${MODULE_NAME}) -- cgit v1.2.1 From 39378151ea5052350c3d731bcb32aea41aad1c77 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 1 Jan 2009 17:04:02 +0000 Subject: find qca2 on windows again svn path=/trunk/KDE/kdelibs/; revision=904220 --- modules/FindQCA2.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 6b82a965..9966c224 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -32,8 +32,9 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) find_library_with_debug(QCA2_LIBRARIES WIN32_DEBUG_POSTFIX d + NAMES qca HINTS ${PC_QCA2_LIBDIR} ${PC_QCA2_LIBRARY_DIRS} - NAMES qca) + ) find_path(QCA2_INCLUDE_DIR qca.h HINTS ${PC_QCA2_INCLUDEDIR} ${PC_QCA2_INCLUDE_DIRS} -- cgit v1.2.1 From e133d4967f4d1a4a94d87e35846db17acaf77461 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 2 Jan 2009 15:08:48 +0000 Subject: -introduce two new internal macros which do the necessary handling for automoc, they are only created if they are not provided by automoc4 itself (which will happen soon) Alex CCMAIL: kretz@kde.org svn path=/trunk/KDE/kdelibs/; revision=904586 --- modules/KDE4Macros.cmake | 65 +++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 25 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b6987111..b30bebd9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -30,6 +30,29 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +# This is for versions of automoc4 which don't provide these two macros. +# If such a version is used, just use the "old" style automoc handling. +if(NOT COMMAND _AUTOMOC4_KDE4_PRE_TARGET_HANDLING) + + macro(_AUTOMOC4_KDE4_PRE_TARGET_HANDLING _target _srcs) + if(MSVC) + add_automoc4_target("${_target}_automoc" ${_srcs}) + else(MSVC) + automoc4(${_target} ${_srcs} ) + endif(MSVC) + endmacro(_AUTOMOC4_KDE4_PRE_TARGET_HANDLING) + + + macro(_AUTOMOC4_KDE4_POST_TARGET_HANDLING _target) + if(MSVC) + add_dependencies(${_target} "${_target}_automoc") + endif(MSVC) + endmacro(_AUTOMOC4_KDE4_POST_TARGET_HANDLING) + +endif(NOT COMMAND _AUTOMOC4_KDE4_PRE_TARGET_HANDLING) + + macro (KDE4_ADD_KCFG_FILES _sources ) if( ${ARGV1} STREQUAL "GENERATE_MOC" ) set(_kcfg_generatemoc TRUE) @@ -528,20 +551,17 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") set(_SRCS ${_first_SRC} ${ARGN}) - if(MSVC) - add_automoc4_target("${_target_NAME}_automoc" _SRCS) - else(MSVC) - automoc4(${_target_NAME} _SRCS) - endif(MSVC) + + _automoc4_kde4_pre_target_handling(${_target_NAME} _SRCS) + if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) add_library(${_target_NAME} MODULE ${_SRCS}) endif (KDE4_ENABLE_FINAL) - if(MSVC) - add_dependencies(${_target_NAME} "${_target_NAME}_automoc") - endif(MSVC) + + _automoc4_kde4_post_target_handling(${_target_NAME}) if (_first_SRC) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") @@ -664,7 +684,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY} kdeinit_${_target_NAME}) else(WIN32) - kde4_handle_automoc(kdeinit_${_target_NAME} _SRCS) + _automoc4_kde4_pre_target_handling(kdeinit_${_target_NAME} _SRCS) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) @@ -674,6 +694,8 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) add_library(kdeinit_${_target_NAME} SHARED ${_SRCS}) endif (KDE4_ENABLE_FINAL) + _automoc4_kde4_post_target_handling(kdeinit_${_target_NAME}) + set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) @@ -792,20 +814,16 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set(_add_executable_param ${_add_executable_param} EXCLUDE_FROM_ALL) endif (_test AND NOT KDE4_BUILD_TESTS) - if(MSVC) - add_automoc4_target("${_target_NAME}_automoc" _SRCS) - else(MSVC) - automoc4(${_target_NAME} _SRCS) - endif(MSVC) + _automoc4_kde4_pre_target_handling(${_target_NAME} _SRCS) + if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) - if(MSVC) - add_dependencies(${_target_NAME} "${_target_NAME}_automoc") - endif(MSVC) + + _automoc4_kde4_post_target_handling(${_target_NAME}) if (_test) set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"") @@ -840,20 +858,17 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endif (${_lib_TYPE} STREQUAL "MODULE") set(_SRCS ${_first_SRC} ${ARGN}) - if(MSVC) - add_automoc4_target("${_target_NAME}_automoc" _SRCS) - else(MSVC) - automoc4(${_target_NAME} _SRCS) - endif(MSVC) + + _automoc4_kde4_pre_target_handling(${_target_NAME} _SRCS) + if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) add_library(${_target_NAME} ${_add_lib_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) - if(MSVC) - add_dependencies(${_target_NAME} "${_target_NAME}_automoc") - endif(MSVC) + + _automoc4_kde4_post_target_handling(${_target_NAME}) # for shared libraries a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) -- cgit v1.2.1 From 438ae0cadc7eeb56aa445f31dc2f5ff5fba9801a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 2 Jan 2009 15:29:46 +0000 Subject: -check the version of kdelibs using the KDE_VERSION variable from KDELibsDependencies.cmake instead of running kde4-config and parsing its output This should be (very) slightly faster, makes cross compiling one step easier and should be more robust. Copyright the files also this year for me :-) Alex svn path=/trunk/KDE/kdelibs/; revision=904590 --- modules/FindKDE4Internal.cmake | 66 +++++++++++++++++++----------------------- modules/KDE4Macros.cmake | 2 +- 2 files changed, 31 insertions(+), 37 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2ff87969..9948ce9c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -236,7 +236,7 @@ # _KDE4_PLATFORM_INCLUDE_DIRS is used only internally # _KDE4_PLATFORM_DEFINITIONS is used only internally -# Copyright (c) 2006-2008, Alexander Neundorf +# Copyright (c) 2006-2009, Alexander Neundorf # Copyright (c) 2006, Laurent Montel, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -399,41 +399,6 @@ else (_kdeBootStrapping) set( _KDE4_MAKEKDEWIDGETS_DEP) set( _KDE4_MEINPROC_EXECUTABLE_DEP) - # Check the version of kde. KDE4_KDECONFIG_EXECUTABLE was set by FindKDE4 - exec_program(${KDE4_KDECONFIG_EXECUTABLE} ARGS "--version" OUTPUT_VARIABLE kdeconfig_output ) - string(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${kdeconfig_output}") - - if (KDEVERSION) - string(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") - - # we need at least this version: - if (NOT KDE_MIN_VERSION) - if (KDE4_FIND_VERSION_MAJOR) - if (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) - if (KDE4_FIND_VERSION_MINOR) - set(KDE_MIN_VERSION "4.${KDE4_FIND_VERSION_MINOR}") - else (KDE4_FIND_VERSION_MINOR) - set(KDE_MIN_VERSION "4.0") - endif (KDE4_FIND_VERSION_MINOR) - if (KDE4_FIND_VERSION_PATCH) - set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.${KDE4_FIND_VERSION_PATCH}") - else (KDE4_FIND_VERSION_PATCH) - set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.0") - endif (KDE4_FIND_VERSION_PATCH) - else (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) - message(FATAL_ERROR "FindKDE4 can only be used for finding KDE 4 (not for KDE ${KDE4_FIND_VERSION_MAJOR}).") - endif (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) - else (KDE4_FIND_VERSION_MAJOR) - set (KDE_MIN_VERSION "4.0.0") - endif (KDE4_FIND_VERSION_MAJOR) - endif (NOT KDE_MIN_VERSION) - - #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDEVERSION}") - macro_ensure_version( ${KDE_MIN_VERSION} ${KDEVERSION} KDE4_INSTALLED_VERSION_OK ) - else (KDEVERSION) - message(FATAL_ERROR "Couldn't parse KDE version string from the kde4-config output:\n${kdeconfig_output}") - endif (KDEVERSION) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) if (WIN32) @@ -451,6 +416,35 @@ else (_kdeBootStrapping) # This file contains information about the installed kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + + # Check the version of KDE. It must be at least KDE_MIN_VERSION as set by the user. + # KDE_VERSION is set in KDELibsDependencies.cmake since KDE 4.0.x. Alex + # we need at least this version: + if (NOT KDE_MIN_VERSION) + + if (KDE4_FIND_VERSION_MAJOR) + if (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) + if (KDE4_FIND_VERSION_MINOR) + set(KDE_MIN_VERSION "4.${KDE4_FIND_VERSION_MINOR}") + else (KDE4_FIND_VERSION_MINOR) + set(KDE_MIN_VERSION "4.0") + endif (KDE4_FIND_VERSION_MINOR) + if (KDE4_FIND_VERSION_PATCH) + set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.${KDE4_FIND_VERSION_PATCH}") + else (KDE4_FIND_VERSION_PATCH) + set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.0") + endif (KDE4_FIND_VERSION_PATCH) + else (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) + message(FATAL_ERROR "FindKDE4 can only be used for finding KDE 4 (not for KDE ${KDE4_FIND_VERSION_MAJOR}).") + endif (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) + else (KDE4_FIND_VERSION_MAJOR) + set (KDE_MIN_VERSION "4.0.0") + endif (KDE4_FIND_VERSION_MAJOR) + endif (NOT KDE_MIN_VERSION) + + #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDE_VERSION}") + macro_ensure_version( ${KDE_MIN_VERSION} ${KDE_VERSION} KDE4_INSTALLED_VERSION_OK ) + # This file contains the exported library target from kdelibs (new with cmake 2.6.x) # Include it to "import" the libraries from kdelibs into the current projects as targets. # This makes setting the _LIBRARY and _LIBS variables actually a bit superfluos, since e.g. diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b30bebd9..f719e4a3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -23,7 +23,7 @@ # KDE4_CREATE_MANPAGE # KDE4_CREATE_BASIC_CMAKE_VERSION_FILE (function) -# Copyright (c) 2006, 2007, Alexander Neundorf, +# Copyright (c) 2006-2009 Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, # Copyright (c) 2007 Matthias Kretz # -- cgit v1.2.1 From e6960bcec4ab88337f7c25b53a4e1947651da380 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 2 Jan 2009 15:48:04 +0000 Subject: -since cmake 2.6.2 the _FIND_VERSION_(MAJOR|MINOR|PATCH) variables are initialized automatically to "0", so no need to do it manually here Alex CCMAIL: apaku@gmx.de svn path=/trunk/KDE/kdelibs/; revision=904593 --- modules/FindKDE4Internal.cmake | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9948ce9c..563aeaee 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -419,30 +419,14 @@ else (_kdeBootStrapping) # Check the version of KDE. It must be at least KDE_MIN_VERSION as set by the user. # KDE_VERSION is set in KDELibsDependencies.cmake since KDE 4.0.x. Alex - # we need at least this version: + # Support for the new-style (>= 2.6.0) support for requiring some version of a package: if (NOT KDE_MIN_VERSION) - if (KDE4_FIND_VERSION_MAJOR) - if (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) - if (KDE4_FIND_VERSION_MINOR) - set(KDE_MIN_VERSION "4.${KDE4_FIND_VERSION_MINOR}") - else (KDE4_FIND_VERSION_MINOR) - set(KDE_MIN_VERSION "4.0") - endif (KDE4_FIND_VERSION_MINOR) - if (KDE4_FIND_VERSION_PATCH) - set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.${KDE4_FIND_VERSION_PATCH}") - else (KDE4_FIND_VERSION_PATCH) - set(KDE_MIN_VERSION "${KDE_MIN_VERSION}.0") - endif (KDE4_FIND_VERSION_PATCH) - else (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) - message(FATAL_ERROR "FindKDE4 can only be used for finding KDE 4 (not for KDE ${KDE4_FIND_VERSION_MAJOR}).") - endif (${KDE4_FIND_VERSION_MAJOR} EQUAL 4) - else (KDE4_FIND_VERSION_MAJOR) - set (KDE_MIN_VERSION "4.0.0") + set(KDE_MIN_VERSION "${KDE4_FIND_VERSION_MAJOR}.${KDE4_FIND_VERSION_MINOR}.${KDE4_FIND_VERSION_PATCH}") endif (KDE4_FIND_VERSION_MAJOR) endif (NOT KDE_MIN_VERSION) - #message(STATUS "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDE_VERSION}") + #message(FATAL_ERROR "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDE_VERSION} exact: -${KDE4_FIND_VERSION_EXACT}- version: -${KDE4_FIND_VERSION}-") macro_ensure_version( ${KDE_MIN_VERSION} ${KDE_VERSION} KDE4_INSTALLED_VERSION_OK ) # This file contains the exported library target from kdelibs (new with cmake 2.6.x) -- cgit v1.2.1 From 26c3c040c23e00ad5cdf4053429870365d0097f2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 2 Jan 2009 16:20:12 +0000 Subject: -replace check_include_files() with find_path(), should fix the problem on OSX where libintl.h is in /opt/somewhere.../ and was not found by check_include_files() Alex svn path=/trunk/KDE/kdelibs/; revision=904608 --- modules/FindGettext.cmake | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 8c50e43f..e35dceda 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -19,28 +19,31 @@ if (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) # in cache already - SET(GETTEXT_FOUND TRUE) + set(GETTEXT_FOUND TRUE) else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) - include(CheckIncludeFiles) include(CheckLibraryExists) include(CheckFunctionExists) - - check_include_files(libintl.h HAVE_LIBINTL_H) - - set(GETTEXT_INCLUDE_DIR) + + find_path(GETTEXT_INCLUDE_DIR libintl.h) + if(GETTEXT_INCLUDE_DIR) + set(HAVE_LIBINTL_H 1) + else(GETTEXT_INCLUDE_DIR) + set(HAVE_LIBINTL_H 0) + endif(GETTEXT_INCLUDE_DIR) + set(GETTEXT_LIBRARIES) - + if (HAVE_LIBINTL_H) check_function_exists(dgettext LIBC_HAS_DGETTEXT) if (LIBC_HAS_DGETTEXT) set(GETTEXT_SOURCE "built in libc") set(GETTEXT_FOUND TRUE) else (LIBC_HAS_DGETTEXT) - FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl libintl ) + find_library(LIBINTL_LIBRARY NAMES intl libintl ) - CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT) + check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT) if (LIBINTL_HAS_DGETTEXT) set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}") set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY}) @@ -59,7 +62,7 @@ else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) endif (Gettext_FIND_REQUIRED) endif (GETTEXT_FOUND) - MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) + mark_as_advanced(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) endif (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT) -- cgit v1.2.1 From cb5daf602f0e312c2bd1508c2cc8519d74f2da34 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 2 Jan 2009 19:35:21 +0000 Subject: fix error message: KDEVERSION -> KDE_VERSION Alex svn path=/trunk/KDE/kdelibs/; revision=904678 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 563aeaee..4d6a0ad7 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1189,7 +1189,7 @@ if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) #bail out if something wasn't found kde4_print_results() if (NOT KDE4_INSTALLED_VERSION_OK) - message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDEVERSION} is too old, at least version ${KDE_MIN_VERSION} is required") + message(FATAL_ERROR "ERROR: the installed kdelibs version ${KDE_VERSION} is too old, at least version ${KDE_MIN_VERSION} is required") endif (NOT KDE4_INSTALLED_VERSION_OK) if (NOT KDE4_KCFGC_EXECUTABLE) -- cgit v1.2.1 From 03e6a8809995b19e7d8f0094d9fca76dcc952ea3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 2 Jan 2009 19:41:18 +0000 Subject: -if no minimum version is given, set it to 4.0.0 Alex svn path=/trunk/KDE/kdelibs/; revision=904680 --- modules/FindKDE4Internal.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4d6a0ad7..540d2e8e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -423,6 +423,8 @@ else (_kdeBootStrapping) if (NOT KDE_MIN_VERSION) if (KDE4_FIND_VERSION_MAJOR) set(KDE_MIN_VERSION "${KDE4_FIND_VERSION_MAJOR}.${KDE4_FIND_VERSION_MINOR}.${KDE4_FIND_VERSION_PATCH}") + else (KDE4_FIND_VERSION_MAJOR) + set(KDE_MIN_VERSION "4.0.0") endif (KDE4_FIND_VERSION_MAJOR) endif (NOT KDE_MIN_VERSION) -- cgit v1.2.1 From 99b6d16f076a6c41c7a60d8e217db535455f1df0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 3 Jan 2009 14:17:30 +0000 Subject: -use cmake_policy(VERSION) instead of a second cmake_minimum_required(VERSION) to set the cmake policies to 2.4 compatiblity -> should be more obvious to understand the purpose Alex svn path=/trunk/KDE/kdelibs/; revision=904879 --- modules/FindKDE4Internal.cmake | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 540d2e8e..15fa0d98 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -245,9 +245,8 @@ # this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR) -# this second call will never fail -# it is here for the effect that it sets the cmake policies to the 2.4.x compatibility settings for now -cmake_minimum_required(VERSION 2.4.5) +# set the cmake policies to the 2.4.x compatibility settings (may change for KDE 4.3) +cmake_policy(VERSION 2.4.5) # CMake 2.6, set compatibility behaviour to cmake 2.4 # this must be executed always, because the CMAKE_MINIMUM_REQUIRED() command above -- cgit v1.2.1 From a40b954547076460b8a30160edbe2f86381a8543 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 3 Jan 2009 16:21:39 +0000 Subject: -don't search for the KDE4_INCLUDE_DIR using FIND_PATH() but use the value from KDELibsDependencies.cmake (should be more correct and a bit faster) -"export" the targets meinproc4, makekdewidgets and kconfig_compiler, and do this into a separate exports-file, putting them in the same file as the exported targets potentially makes cross compiling harder -use a "KDE4__" prefix (or "namepace") for all exported targets, both libraries and executables -add some more documentation, fix some comments, remove commented code Alex svn path=/trunk/KDE/kdelibs/; revision=905044 --- modules/FindKDE4Internal.cmake | 199 +++++++++++++++-------------------------- 1 file changed, 72 insertions(+), 127 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 15fa0d98..9075661d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -430,117 +430,81 @@ else (_kdeBootStrapping) #message(FATAL_ERROR "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDE_VERSION} exact: -${KDE4_FIND_VERSION_EXACT}- version: -${KDE4_FIND_VERSION}-") macro_ensure_version( ${KDE_MIN_VERSION} ${KDE_VERSION} KDE4_INSTALLED_VERSION_OK ) - # This file contains the exported library target from kdelibs (new with cmake 2.6.x) + # This file contains the exported library target from kdelibs (new with cmake 2.6.x), e.g. + # the library target "kdeui" is exported as "KDE4__kdeui". The "KDE4__" is used as + # "namespace" to separate the imported targets from "normal" targets, it is stored in + # KDE4_TARGET_PREFIX, which is set in KDELibsDependencies.cmake . # Include it to "import" the libraries from kdelibs into the current projects as targets. # This makes setting the _LIBRARY and _LIBS variables actually a bit superfluos, since e.g. - # the kdeui library could now also be used just as "kdeui" and still have all their + # the kdeui library could now also be used just as "KDE4__kdeui" and still have all their # dependent libraries handled correctly. But to keep compatibility and not to change # behaviour we set all these variables anyway as seen below. Alex include(${kde_cmake_module_dir}/KDELibsLibraryTargets.cmake) - if (UNIX) - set(KDE4_KDEFAKES_LIBRARY kdefakes ) - set(KDE4_KDEFAKES_LIBS kdefakes ) - endif (UNIX) - - set(KDE4_KDECORE_LIBRARY kdecore) - set(KDE4_KDECORE_LIBS kdecore) - - set(KDE4_KDEUI_LIBRARY kdeui ) - set(KDE4_KDEUI_LIBS kdeui ) - - set(KDE4_KIO_LIBRARY kio ) - set(KDE4_KIO_LIBS kio ) - - set(KDE4_KPARTS_LIBRARY kparts ) - set(KDE4_KPARTS_LIBS kparts ) - - set(KDE4_KUTILS_LIBRARY kutils ) - set(KDE4_KUTILS_LIBS kutils ) - - set(KDE4_KDE3SUPPORT_LIBRARY kde3support ) - set(KDE4_KDE3SUPPORT_LIBS kde3support ) - - set(KDE4_KFILE_LIBRARY kfile ) - set(KDE4_KFILE_LIBS kfile ) - - set(KDE4_KHTML_LIBRARY khtml ) - set(KDE4_KHTML_LIBS khtml ) - - set(KDE4_KJS_LIBRARY kjs ) - set(KDE4_KJS_LIBS kjs ) - - set(KDE4_KJSAPI_LIBRARY kjsapi ) - set(KDE4_KJSAPI_LIBS kjsapi ) - - set(KDE4_KNEWSTUFF2_LIBRARY knewstuff2 ) - set(KDE4_KNEWSTUFF2_LIBS knewstuff2 ) + # helper macro, sets both the KDE4_FOO_LIBRARY and KDE4_FOO_LIBS variables to KDE4__foo + macro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) + set(KDE4_${_var}_LIBRARY ${_prefix}${lib} ) + set(KDE4_${_var}_LIBS ${_prefix}${_lib} ) + endmacro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) + + # sorted by names + _kde4_set_lib_variables(KDE3SUPPORT kde3support ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KDECORE kdecore ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KDEUI kdeui ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KDNSSD kdnssd ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KFILE kfile ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KFORMULA kformula ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KHTML khtml ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KIO kio ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KJS kjs ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KJSAPI kjsapi ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KNEWSTUFF2 knewstuff2 ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KNOTIFYCONFIG knotifyconfig ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KPARTS kparts ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KROSSCORE krosscore ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KROSSUI krossui ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KTEXTEDITOR ktexteditor ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(PLASMA plasma ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(SOLID solid ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(THREADWEAVER threadweaver ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KUTILS kutils ${KDE4_TARGET_PREFIX}) if (UNIX) - set(KDE4_KPTY_LIBRARY kpty ) - set(KDE4_KPTY_LIBS kpty ) - - set(KDE4_KDESU_LIBRARY kdesu ) - set(KDE4_KDESU_LIBS kdesu ) + _kde4_set_lib_variables(KDEFAKES kdefakes ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KDESU kdesu ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KPTY kpty ${KDE4_TARGET_PREFIX}) endif (UNIX) - set(KDE4_KDNSSD_LIBRARY kdnssd ) - set(KDE4_KDNSSD_LIBS kdnssd ) - - set(KDE4_SOLID_LIBRARY solid ) - set(KDE4_SOLID_LIBS solid ) - - set(KDE4_THREADWEAVER_LIBRARY threadweaver ) - set(KDE4_THREADWEAVER_LIBS threadweaver ) - set(KDE4_THREADWEAVER_LIBRARIES threadweaver ) - - set(KDE4_KNOTIFYCONFIG_LIBRARY knotifyconfig ) - set(KDE4_KNOTIFYCONFIG_LIBS knotifyconfig ) - - set(KDE4_KROSSCORE_LIBRARY krosscore ) - set(KDE4_KROSSCORE_LIBS krosscore ) - - set(KDE4_KROSSUI_LIBRARY krossui ) - set(KDE4_KROSSUI_LIBS krossui ) - - set(KDE4_KTEXTEDITOR_LIBRARY ktexteditor ) - set(KDE4_KTEXTEDITOR_LIBS ktexteditor ) + # these targets do not always exist, since they are built conditionally: + if(TARGET ${KDE4_TARGET_PREFIX}knepomuk) + _kde4_set_lib_variables(KNEPOMUK knepomuk ${KDE4_TARGET_PREFIX}) + endif(TARGET ${KDE4_TARGET_PREFIX}knepomuk) - if(TARGET knepomuk) - set(KDE4_KNEPOMUK_LIBRARY knepomuk ) - set(KDE4_KNEPOMUK_LIBS knepomuk ) - endif(TARGET knepomuk) + if(TARGET ${KDE4_TARGET_PREFIX}kmetadata) + _kde4_set_lib_variables(KMETADATA kmetadata ${KDE4_TARGET_PREFIX}) + endif(TARGET ${KDE4_TARGET_PREFIX}kmetadata) + # and this one for compatibility: + set(KDE4_THREADWEAVER_LIBRARIES ${KDE4_TARGET_PREFIX}threadweaver ) - if(TARGET kmetadata) - set(KDE4_KMETADATA_LIBRARY kmetadata ) - set(KDE4_KMETADATA_LIBS kmetadata ) - endif(TARGET kmetadata) - - set(KDE4_KFORMULA_LIBRARY kformula ) - set(KDE4_KFORMULA_LIBS kformula ) - - set(KDE4_PLASMA_LIBRARY plasma ) - set(KDE4_PLASMA_LIBS plasma ) - + # KDE4_LIB_INSTALL_DIR and KDE4_INCLUDE_INSTALL_DIR are set in KDELibsDependencies.cmake, + # use them to set the KDE4_LIB_DIR and KDE4_INCLUDE_DIR "public interface" variables set(KDE4_LIB_DIR ${KDE4_LIB_INSTALL_DIR} ) + set(KDE4_INCLUDE_DIR ${KDE4_INCLUDE_INSTALL_DIR} ) - # kpassworddialog.h is new with KDE4 - # KDE4_INCLUDE_INSTALL_DIR is defined by KDELibsDependencies.cmake - find_path(KDE4_INCLUDE_DIR kpassworddialog.h ${KDE4_INCLUDE_INSTALL_DIR} NO_DEFAULT_PATH ) - # at first look in LIBEXEC_INSTALL_DIR and no default paths, - # if this didn't succeed, the second call makes cmake search again, but in the standard paths - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler ) + # now include the file with the imported tools (executable targets) + # Having the libs and tools in two separate files should help with cross compiling. + include(${kde_cmake_module_dir}/KDELibsToolsTargets.cmake) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 ) + # get the build CONFIGURATIONS which were exported in this file, and use just the first + # of them to get the location of the installed executables + get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS ) + list(GET _importedConfigurations 0 _firstConfig) - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH ) - find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets ) - - mark_as_advanced(KDE4_KCFGC_EXECUTABLE KDE4_MEINPROC_EXECUTABLE KDE4_MAKEKDEWIDGETS_EXECUTABLE) + get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${firstConfig}) + get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${firstConfig}) + get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${firstConfig}) # allow searching cmake modules in all given kde install locations (KDEDIRS based) execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) @@ -573,45 +537,28 @@ option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") +# if CMake 2.6.3 or above is used, provide an option which should be used by other KDE packages +# whether to install a CMake FooConfig.cmake into lib/foo/cmake/ or /lib/cmake/foo/ +# (with 2.6.3 and above also lib/cmake/foo/ is supported): if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.6.2) - option(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR - "Prefer to install the Config.cmake files to lib/cmake/ instead to lib//cmake" - TRUE) + option(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR "Prefer to install the Config.cmake files to lib/cmake/ instead to lib//cmake" TRUE) else(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.6.2) set(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR FALSE) endif(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.6.2) - -# This is obsolete now. I just keep it here so in case somebody stumbles upon it somewhere -# he can still find a hint where it came from and what it was good for. -# -# What to do in that case ? Just remove it. Alex -# -# # This is for the reduced link interface. -# # In kdelibs it is already alwaysenabled. -# # In all other modules provide the switch _KDE4_USE_REDUCED_LINK_INTERFACE to turn it on. -# if(kdelibs_SOURCE_DIR) -# set(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT TRUE) -# else(kdelibs_SOURCE_DIR) -# option(KDE4_ENABLE_EXPERIMENTAL_LIB_EXPORT "Enable the reduced link interface" OFF) -# endif(kdelibs_SOURCE_DIR) -# -# # Setting the target property LINK_INTERFACE_LIBRARIES directly shouldn't be done, -# # instead TARGET_LINK_LIBRARIES(... LINK_INTERFACE_LIBRARIES ... ) must be used. -# set(KDE4_DISABLE_PROPERTY_ "DISABLED_") +# Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable +# which is something between a shared library and a normal executable. +# Programs compiled with these features appear as ?shared object? with the file command. +# info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" +option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") +##################### some more settings ########################################## if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) endif(KDE4_ENABLE_FINAL) -# Position-Independent-Executable is a feature of Binutils, Libc, and GCC that creates an executable -# which is something between a shared library and a normal executable. -# Programs compiled with these features appear as ?shared object? with the file command. -# info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" -option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") - # If we are building ! kdelibs, check where kdelibs are installed. # If they are installed in a directory which contains "lib64", we default to "64" for LIB_SUFFIX, # so the current project will by default also go into lib64. @@ -747,11 +694,11 @@ endif (WIN32) # The INSTALL_TARGETS_DEFAULT_ARGS variable should be used when libraries are installed. -# The arguments are also ok for regular executables, i.e. executables which don't go -# into sbin/ or libexec/, but for installing executables the basic syntax -# INSTALL(TARGETS kate DESTINATION "${BIN_INSTALL_DIR}") -# is enough, so using this variable there doesn't help a lot. -# The variable must not be used for installing plugins. +# It should also be used when installing applications, since then +# on OS X application bundles will be installed to BUNDLE_INSTALL_DIR. +# The variable MUST NOT be used for installing plugins. +# It also MUST NOT be used for executables which are intended to go into sbin/ or libexec/. +# # Usage is like this: # install(TARGETS kdecore kdeui ${INSTALL_TARGETS_DEFAULT_ARGS} ) # @@ -771,7 +718,6 @@ set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" ARCHIVE DESTINATION "${LIB_INSTALL_DIR}" COMPONENT Devel ) - # on the Mac support an extra install directory for application bundles starting with cmake 2.6 if(APPLE) set(INSTALL_TARGETS_DEFAULT_ARGS ${INSTALL_TARGETS_DEFAULT_ARGS} @@ -1231,4 +1177,3 @@ if (NOT _kde4_uninstall_rule_created) endif (NOT _kde4_uninstall_rule_created) endif(NOT KDE4_FOUND) - -- cgit v1.2.1 From 403060aeba469dd0dc6372ac8247ce5bf498f84b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 3 Jan 2009 16:30:59 +0000 Subject: -fix typo, unbreak build (of kdebase/runtime) Alex svn path=/trunk/KDE/kdelibs/; revision=905054 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9075661d..86ab17f7 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -443,7 +443,7 @@ else (_kdeBootStrapping) # helper macro, sets both the KDE4_FOO_LIBRARY and KDE4_FOO_LIBS variables to KDE4__foo macro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) - set(KDE4_${_var}_LIBRARY ${_prefix}${lib} ) + set(KDE4_${_var}_LIBRARY ${_prefix}${_lib} ) set(KDE4_${_var}_LIBS ${_prefix}${_lib} ) endmacro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) -- cgit v1.2.1 From 87c903a8e853eec433860818a01040da8d1c5f1a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 4 Jan 2009 15:39:53 +0000 Subject: -add missing copyright notices, I hope I got it right -also a few empty lines here and there to make it look nicer Alex svn path=/trunk/KDE/kdelibs/; revision=905547 --- modules/FindAutomoc4.cmake | 26 ++++++++++++++++++++++++-- modules/FindBlueZ.cmake | 5 +++++ modules/FindExiv2.cmake | 6 ++++++ modules/FindFlex.cmake | 5 +++++ modules/FindGLIB2.cmake | 6 ++++++ modules/FindGObject.cmake | 5 ++++- modules/FindGStreamer.cmake | 5 ++++- modules/FindKDE4Workspace.cmake | 2 ++ modules/FindKNepomuk.cmake | 6 ++++++ modules/FindKdcraw.cmake | 6 ++++++ modules/FindKdepimLibs.cmake | 2 ++ modules/FindKexiv2.cmake | 5 +++++ modules/FindKonto.cmake | 6 ++++++ modules/FindLCMS.cmake | 7 +++++++ modules/FindLibPython.py | 2 ++ modules/FindNepomuk.cmake | 7 +++++++ modules/FindPyKDE4.cmake | 1 + modules/FindPyKDE4.py | 1 + modules/FindPyQt.py | 1 + modules/FindPythonLibrary.cmake | 10 ++++++---- modules/FindSIP.cmake | 9 ++++++--- modules/FindSIP.py | 1 + modules/FindSoprano.cmake | 8 +++++++- modules/FindSqlite.cmake | 5 +++++ modules/FindStrigi.cmake | 6 ++++++ 25 files changed, 131 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index 1192ea01..cbe7ad1e 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -3,20 +3,42 @@ # # AUTOMOC4_FOUND - automoc4 has been found # AUTOMOC4_EXECUTABLE - the automoc4 tool +# AUTOMOC4_VERSION - the full version of automoc4 +# AUTOMOC4_VERSION_MAJOR, AUTOMOC4_VERSION_MINOR, AUTOMOC4_VERSION_PATCH - AUTOMOC4_VERSION +# broken into its components # # It also adds the following macros # AUTOMOC4( ) # Use this to run automoc4 on all files contained in the list . # -# AUTOMOC4_MOC_HEADERS( header1.h header2.h) +# AUTOMOC4_MOC_HEADERS( header1.h header2.h ...) # Use this to add more header files to be processed with automoc4. +# +# AUTOMOC4_ADD_EXECUTABLE( src1 src2 ...) +# This macro does the same as ADD_EXECUTABLE, but additionally +# adds automoc4 handling for all source files. +# +# AUTOMOC4_ADD_LIBRARY( src1 src2 ...) +# This macro does the same as ADD_LIBRARY, but additionally +# adds automoc4 handling for all source files. +# Internal helper macro, may change or be removed anytime: +# _ADD_AUTOMOC4_TARGET( ) +# +# Since version 0.9.88: +# The following two macros are only to be used for KDE4 projects +# and do something which makes sure automoc4 works for KDE. Don't +# use them anywhere else. +# _AUTOMOC4_KDE4_PRE_TARGET_HANDLING( ) +# _AUTOMOC4_KDE4_POST_TARGET_HANDLING() -# Copyright (c) 2008, Alexander Neundorf, + +# Copyright (c) 2008-2009, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + # check if we are inside KDESupport and automoc is enabled if("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") # when building this project as part of kdesupport diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake index 47161868..8601b935 100644 --- a/modules/FindBlueZ.cmake +++ b/modules/FindBlueZ.cmake @@ -9,6 +9,11 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. # +# Copyright (c) 2008, Daniel Gollub, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) # in cache already diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 5bef48be..693f5465 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -11,6 +11,12 @@ # EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 # +# Copyright (c) 2008, Gilles Caulier, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) # in cache already diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index c69cffd0..a2db9864 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -6,6 +6,11 @@ # FLEX_VERSION - the version string, like "2.5.31" +# Copyright (c) 2008, Jakob Petsovits, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + FIND_PROGRAM(FLEX_EXECUTABLE NAMES flex) INCLUDE(MacroEnsureVersion) diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 3467562a..431f2e5e 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -5,6 +5,12 @@ # GLIB2_INCLUDE_DIR - the glib2 include directory # GLIB2_LIBRARIES - glib2 library +# Copyright (c) 2008 Laurent Montel, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) # Already in cache, be silent set(GLIB2_FIND_QUIETLY TRUE) diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index 538cad5f..d9e8df9c 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -6,7 +6,10 @@ # GOBJECT_LIBRARIES - the libraries needed to use GObject # GOBJECT_DEFINITIONS - Compiler switches required for using GObject -# (c)2006, Tim Beaulen +# Copyright (c) 2006, Tim Beaulen +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake index b87e37fd..8e98b892 100644 --- a/modules/FindGStreamer.cmake +++ b/modules/FindGStreamer.cmake @@ -6,7 +6,10 @@ # GSTREAMER_LIBRARIES - the libraries needed to use GStreamer # GSTREAMER_DEFINITIONS - Compiler switches required for using GStreamer -# (c)2006, Tim Beaulen +# Copyright (c) 2006, Tim Beaulen +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. # TODO: Other versions --> GSTREAMER_X_Y_FOUND (Example: GSTREAMER_0_8_FOUND and GSTREAMER_0_10_FOUND etc) diff --git a/modules/FindKDE4Workspace.cmake b/modules/FindKDE4Workspace.cmake index 81a3e40c..660c7b8d 100644 --- a/modules/FindKDE4Workspace.cmake +++ b/modules/FindKDE4Workspace.cmake @@ -60,6 +60,8 @@ # KDE4WORKSPACE_INCLUDE_DIR, and also variables for all libraries. # See kdebase/workspace/CMakeLists.txt and kdebase/workspace/KDE4WorkspaceConfig.cmake.in # for details. Alex + + set(_KDE4Workspace_FIND_QUIETLY ${KDE4Workspace_FIND_QUIETLY}) find_package(KDE4Workspace QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KDE4Workspace/cmake ) set(KDE4Workspace_FIND_QUIETLY ${_KDE4Workspace_FIND_QUIETLY}) diff --git a/modules/FindKNepomuk.cmake b/modules/FindKNepomuk.cmake index dbbadfeb..655f6fe8 100644 --- a/modules/FindKNepomuk.cmake +++ b/modules/FindKNepomuk.cmake @@ -5,6 +5,12 @@ # KNEPOMUK_LIBRARIES - Link these to use libKNep # +# Copyright (c) 2008, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) set(KNepomuk_FIND_QUIETLY TRUE) endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index f3b33bf8..dfd901c5 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -7,6 +7,12 @@ # KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw # +# Copyright (c) 2008, Gilles Caulier, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) message(STATUS "Found Kdcraw library in cache: ${KDCRAW_LIBRARIES}") diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 603a27f2..3ab58e21 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -63,6 +63,8 @@ # KDEPIMLIBS_INCLUDE_DIR, and also variables for all libraries. # See kdepimlibs/CMakeLists.txt and kdepimlibs/KdepimLibsConfig.cmake.in # for details. Alex + + set(_KdepimLibs_FIND_QUIETLY ${KdepimLibs_FIND_QUIETLY}) find_package(KdepimLibs ${KdepimLibs_FIND_VERSION} QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KdepimLibs/cmake ) set(KdepimLibs_FIND_QUIETLY ${_KdepimLibs_FIND_QUIETLY}) diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index c57ed1c2..dd62e885 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -7,6 +7,11 @@ # KEXIV2_DEFINITIONS - Compiler switches required for using libkexiv2 # +# Copyright (c) 2008, Gilles Caulier, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) message(STATUS "Found Kexiv2 library in cache: ${KEXIV2_LIBRARIES}") diff --git a/modules/FindKonto.cmake b/modules/FindKonto.cmake index 0aeccedf..d3c3458b 100644 --- a/modules/FindKonto.cmake +++ b/modules/FindKonto.cmake @@ -5,6 +5,12 @@ # KONTO_LIBRARIES - Link these to use libKonto # +# Copyright (c) 2008, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if(KONTO_INCLUDES AND KONTO_LIBRARIES) # Already in cache, be silent set(Konto_FIND_QUIETLY TRUE) diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 52109933..9d162d2c 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -6,6 +6,13 @@ # LCMS_VERSION, The value of LCMS_VERSION defined in lcms.h # LCMS_FOUND, If false, do not try to use LCMS. + +# Copyright (c) 2008, Adrian Page, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls if(NOT WIN32) diff --git a/modules/FindLibPython.py b/modules/FindLibPython.py index 4deabb9e..ec21b338 100644 --- a/modules/FindLibPython.py +++ b/modules/FindLibPython.py @@ -1,6 +1,8 @@ + # Copyright (c) 2007, Simon Edwards # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + import sys import distutils.sysconfig diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index 51cd7549..deb0c8c6 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -8,6 +8,13 @@ # NEPOMUK_DEFINITIONS - Compiler switches required for using Nepomuk # + +# Copyright (c) 2008, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if (NOT DEFINED Soprano_FOUND) macro_optional_find_package(Soprano) macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk") diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake index fbc34f8b..f738741e 100644 --- a/modules/FindPyKDE4.cmake +++ b/modules/FindPyKDE4.cmake @@ -4,6 +4,7 @@ # * PYKDE4_INSTALL_PYTHON_FILES # * PYKDE4_ADD_UI_FILES # * PYKDE4_ADD_EXECUTABLE + # By Simon Edwards # This file is in the public domain. diff --git a/modules/FindPyKDE4.py b/modules/FindPyKDE4.py index 23b0d831..e436c2a9 100644 --- a/modules/FindPyKDE4.py +++ b/modules/FindPyKDE4.py @@ -2,6 +2,7 @@ # modified by Paul Giannaros to add better PyKDE4 # sip directory finding # This file is in the public domain. + import sys import os import PyKDE4.pykdeconfig diff --git a/modules/FindPyQt.py b/modules/FindPyQt.py index 8e255319..5d2f9514 100644 --- a/modules/FindPyQt.py +++ b/modules/FindPyQt.py @@ -1,6 +1,7 @@ # Copyright (c) 2007, Simon Edwards # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + import PyQt4.pyqtconfig pyqtcfg = PyQt4.pyqtconfig.Configuration() diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index dd33ab37..80f3f4ab 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -1,9 +1,5 @@ # Find Python # ~~~~~~~~~~~ -# Copyright (c) 2007, Simon Edwards -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. -# # Find the Python interpreter and related Python directories. # # This file defines the following variables: @@ -22,6 +18,12 @@ # # PYTHON_LIBRARY, PYTHON_LIBRARIES- Location of the Python library. +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + + INCLUDE(CMakeFindFrameworks) if(EXISTS PYTHON_LIBRARY) diff --git a/modules/FindSIP.cmake b/modules/FindSIP.cmake index afe8b7b1..01f3bd16 100644 --- a/modules/FindSIP.cmake +++ b/modules/FindSIP.cmake @@ -1,8 +1,5 @@ # Find SIP # ~~~~~~~~ -# Copyright (c) 2007, Simon Edwards -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. # # SIP website: http://www.riverbankcomputing.co.uk/sip/index.php # @@ -23,6 +20,12 @@ # SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed # into. +# Copyright (c) 2007, Simon Edwards +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + + IF(SIP_VERSION) # Already in cache, be silent SET(SIP_FOUND TRUE) diff --git a/modules/FindSIP.py b/modules/FindSIP.py index 18db89b3..ecb734f2 100644 --- a/modules/FindSIP.py +++ b/modules/FindSIP.py @@ -3,6 +3,7 @@ # Copyright (c) 2007, Simon Edwards # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + import sys import sipconfig diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 3cc3f22f..fc00a9c9 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -16,11 +16,17 @@ # SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND - true if the raptorserializer plugin is found # SOPRANO_PLUGIN_REDLANDBACKEND_FOUND - true if the redlandbackend plugin is found # SOPRANO_PLUGIN_SESAME2BACKEND_FOUND - true if the sesame2backend plugin is found - +# # Options: # Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) # +# Copyright (c) 2008, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + #if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) # read from cache diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index d010719f..2fa76330 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -10,6 +10,11 @@ # +# Copyright (c) 2008, Gilles Caulier, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if ( SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) # in cache already SET(Sqlite_FIND_QUIETLY TRUE) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 372cea8b..f0a3921e 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -8,6 +8,12 @@ # STRIGI_LINE_ANALYZER_PREFIX - strigi plugin prefix # STRIGI_THROUGH_ANALYZER_PREFIX - strigi plugin prefix +# Copyright (c) 2008, Jos van den Oever, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + if(NOT STRIGI_MIN_VERSION) set(STRIGI_MIN_VERSION "0.5.9") endif(NOT STRIGI_MIN_VERSION) -- cgit v1.2.1 From 825dc168ed09e440f4d1d0048d3e25a4b21f3051 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 4 Jan 2009 17:58:19 +0000 Subject: -add a test for plasma/glapplet.h to see whether the plasma opengl support is installed (this test was previously in FindPlasma.cmake but at least in trunk/KDE/ never executed, so in the only place where the result was used (kdeplasma-addons/applets/) the result was always wrong) Alex svn path=/trunk/KDE/kdelibs/; revision=905603 --- modules/FindKDE4Internal.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 86ab17f7..1587bdf0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -46,6 +46,8 @@ # KDE4_KFORMULA_LIBRARY - the kformula library # KDE4_PLASMA_LIBRARY - the plasma library # +# KDE4_PLASMA_OPENGL_FOUND - TRUE if the OpenGL support of Plasma has been found, NOTFOUND otherwise +# # Compared to the variables above, the following variables # also contain all of the depending libraries, so the variables below # should be used instead of the ones above: @@ -493,6 +495,9 @@ else (_kdeBootStrapping) set(KDE4_INCLUDE_DIR ${KDE4_INCLUDE_INSTALL_DIR} ) + # This setting is currently not recorded in KDELibsDependencies.cmake: + find_file(KDE4_PLASMA_OPENGL_FOUND plasma/glapplet.h PATHS ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH) + # now include the file with the imported tools (executable targets) # Having the libs and tools in two separate files should help with cross compiling. include(${kde_cmake_module_dir}/KDELibsToolsTargets.cmake) -- cgit v1.2.1 From aa3cec92d6671cc624ff0bc9ae01c326c1ca1eb9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 4 Jan 2009 18:03:46 +0000 Subject: -add copyright notice to this one too Alex svn path=/trunk/KDE/kdelibs/; revision=905609 --- modules/FindKipi.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index de0d046b..ccb699f1 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -7,6 +7,11 @@ # KIPI_DEFINITIONS - Compiler switches required for using libkipi # +# Copyright (c) 2008, Gilles Caulier, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) message(STATUS "Found Kipi library in cache: ${KIPI_LIBRARIES}") -- cgit v1.2.1 From 34bf652b09c5a929bf0a43a744fdd51153906020 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 5 Jan 2009 18:36:26 +0000 Subject: -disable FindPlasma.cmake: it was broken, undocumented and since plasma didn't keep compatibility the cmake support for plasma also doesn't have to This file is not used by anything in trunk/KDE/ anymore. Alex svn path=/trunk/KDE/kdelibs/; revision=906186 --- modules/FindPlasma.cmake | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindPlasma.cmake b/modules/FindPlasma.cmake index 9346067b..72d07c79 100644 --- a/modules/FindPlasma.cmake +++ b/modules/FindPlasma.cmake @@ -1,17 +1,20 @@ -# PLASMA_INCLUDE_DIR -# PLASMA_LIBS -# Copyright (C) 2007 Brad Hards -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -set(PLASMA_LIBS ${KDE4_PLASMA_LIBS} ) -set(PLASMA_INCLUDE_DIR ${KDE4_INCLUDE_DIR}) -set(PLASMA_FOUND true) - -find_file(PLASMA_OPENGL_FOUND plasma/glapplet.h - PATHS ${PLASMA_INCLUDE_DIR} - NO_DEFAULT_PATH) +# FindPlasma.cmake was part of KDE 4.1, but Plasma itself didn't guarantee compatibility before 4.2, +# so anything which relied on Plasma < 4.2 is broken anyway with KDE 4.2. +# So since the package itself didn't keep compatibility, it doesn't make sense to provide +# this file just to keep compatibility for the cmake part, this doesn't help anybody. +# Especially now that plasma is part of kdelibs and as such the variables required +# for using plasma are set by FindKDE4Internal.cmake. +# This file is not used anywhere in trunk/KDE/ anymore, 3rd party projects get a +# error message which tells them what to do, so we should be fine. +# Alex +# -mark_as_advanced(PLASMA_INCLUDE_DIR PLASMA_LIBS) +message(FATAL_ERROR "FindPlasma.cmake is deprecated. Now with KDE 4.2 Plasma is part of kdelibs and automatically found using find_package(KDE4) instead. +Replace the variables previously coming from FindPlasma.cmake as follows: +PLASMA_OPENGL_FOUND -> KDE4_PLASMA_OPENGL_FOUND +PLASMA_LIBS -> KDE4_PLASMA_LIBS +PLASMA_INCLUDE_DIR -> KDE4_INCLUDE_DIR or KDE4_INCLUDES, should be already set anyway +PLASMA_FOUND -> nothing, it's always there if KDE4, version 4.2 or newer has been found. +If you see this error message in a module within KDE/, update it from svn, it has been fixed already. +") -- cgit v1.2.1 From 51a0fee9a7674449106206f98058ab1571cc0505 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 5 Jan 2009 20:51:55 +0000 Subject: Remove kformula as discussed on k-c-d. It needs better maintainership, more apps using it, to follow the review process, and to avoid the code duplication with koffice... svn path=/trunk/KDE/kdelibs/; revision=906279 --- modules/FindKDE4Internal.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1587bdf0..37d1f8c3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -43,7 +43,6 @@ # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library # KDE4_KNEPOMUK_LIBRARY - the knepomuk library # KDE4_KMETADATA_LIBRARY - the kmetadata library -# KDE4_KFORMULA_LIBRARY - the kformula library # KDE4_PLASMA_LIBRARY - the plasma library # # KDE4_PLASMA_OPENGL_FOUND - TRUE if the OpenGL support of Plasma has been found, NOTFOUND otherwise @@ -75,7 +74,6 @@ # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries # KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries # KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries -# KDE4_KFORMULA_LIBS - the kformula library and all depending librairies # KDE4_PLASMA_LIBS - the plasma library and all depending librairies # # This module defines a bunch of variables used as locations for install directories. @@ -455,7 +453,6 @@ else (_kdeBootStrapping) _kde4_set_lib_variables(KDEUI kdeui ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KDNSSD kdnssd ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KFILE kfile ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KFORMULA kformula ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KHTML khtml ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KIO kio ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KJS kjs ${KDE4_TARGET_PREFIX}) -- cgit v1.2.1 From 6280df3dd62e0fea5d8cf35f63ea5a6453841c66 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 5 Jan 2009 21:50:36 +0000 Subject: -add a file which can take care of checking whether the already installed and the about to be installed exports files are identical Alex svn path=/trunk/KDE/kdelibs/; revision=906298 --- modules/check_installed_exports_file.cmake | 44 ++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 modules/check_installed_exports_file.cmake (limited to 'modules') diff --git a/modules/check_installed_exports_file.cmake b/modules/check_installed_exports_file.cmake new file mode 100644 index 00000000..454d2a09 --- /dev/null +++ b/modules/check_installed_exports_file.cmake @@ -0,0 +1,44 @@ +# INSTALL_DIR - set it to the install destination +# INSTALL_PREFIX - set it to CMAKE_INSTALL_PREFIX +# CURRENT_BINARY_DIR - set it to CMAKE_CURRENT_BINARY_DIR +# FILENAME - the filename of the exports file + +# get the absolute install directory, consider absolute and relative paths and also DESTDIR +if(IS_ABSOLUTE "${INSTALL_DIR}") + set(installDir "$ENV{DESTDIR}${INSTALL_DIR}") +else(IS_ABSOLUTE "${INSTALL_DIR}") + set(installDir "$ENV{DESTDIR}${INSTALL_PREFIX}/${INSTALL_DIR}") +endif(IS_ABSOLUTE "${INSTALL_DIR}") + +set(installedExportsFile "${installDir}/${FILENAME}") + + +# if the file already exists at the install location, and if we can +# find the exports file in the build dir, read both, and if their contents differ, +# remove all configuration-specific exports files from the install dir, since +# they may create conflicts if the new targets have been added/targets have been +# removed/ targets have been renamed/ the namespace for the exported targets has changed +if(EXISTS "${installedExportsFile}") + if (${INSTALL_DIR} MATCHES "^(/)(.+)$") + set(binaryDirExportFileDir "_${CMAKE_MATCH_2}") + set(binaryDirExportsFile "${CURRENT_BINARY_DIR}/CMakeFiles/Export/${binaryDirExportFileDir}/${FILENAME}") + + if(EXISTS "${binaryDirExportsFile}") + file(READ "${installedExportsFile}" installedExportsFileContents) + file(READ "${binaryDirExportsFile}" binaryDirExportsFileContents) + + if(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") + + if("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") + message(STATUS "Installed and new ${FILENAME} differ, removing installed ${CMAKE_MATCH_1}-*.cmake files") + file(GLOB files "${installDir}/${CMAKE_MATCH_1}-*.cmake") + file(REMOVE ${files}) + endif("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") +# else(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") +# message(STATUS "FILES are the same") + endif(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") + + endif(EXISTS "${binaryDirExportsFile}") + endif (${INSTALL_DIR} MATCHES "^(/)(.+)$") + +endif(EXISTS "${installedExportsFile}") -- cgit v1.2.1 From cb5d64618a470700e0ff86435cecc64ca46afcac Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 6 Jan 2009 18:22:56 +0000 Subject: -this should now also work for relative install directories Alex svn path=/trunk/KDE/kdelibs/; revision=906719 --- modules/check_installed_exports_file.cmake | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/check_installed_exports_file.cmake b/modules/check_installed_exports_file.cmake index 454d2a09..ab36b9cf 100644 --- a/modules/check_installed_exports_file.cmake +++ b/modules/check_installed_exports_file.cmake @@ -22,23 +22,25 @@ if(EXISTS "${installedExportsFile}") if (${INSTALL_DIR} MATCHES "^(/)(.+)$") set(binaryDirExportFileDir "_${CMAKE_MATCH_2}") set(binaryDirExportsFile "${CURRENT_BINARY_DIR}/CMakeFiles/Export/${binaryDirExportFileDir}/${FILENAME}") + else (${INSTALL_DIR} MATCHES "^(/)(.+)$") + set(binaryDirExportsFile "${CURRENT_BINARY_DIR}/CMakeFiles/Export/${INSTALL_DIR}/${FILENAME}") + endif (${INSTALL_DIR} MATCHES "^(/)(.+)$") - if(EXISTS "${binaryDirExportsFile}") - file(READ "${installedExportsFile}" installedExportsFileContents) - file(READ "${binaryDirExportsFile}" binaryDirExportsFileContents) + if(EXISTS "${binaryDirExportsFile}") + file(READ "${installedExportsFile}" installedExportsFileContents) + file(READ "${binaryDirExportsFile}" binaryDirExportsFileContents) - if(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") + if(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") - if("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") - message(STATUS "Installed and new ${FILENAME} differ, removing installed ${CMAKE_MATCH_1}-*.cmake files") - file(GLOB files "${installDir}/${CMAKE_MATCH_1}-*.cmake") - file(REMOVE ${files}) - endif("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") -# else(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") -# message(STATUS "FILES are the same") - endif(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") + if("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") + message(STATUS "Installed and new ${FILENAME} differ, removing installed ${CMAKE_MATCH_1}-*.cmake files") + file(GLOB files "${installDir}/${CMAKE_MATCH_1}-*.cmake") + file(REMOVE ${files}) + endif("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") + else(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") + message(STATUS "FILES are the same") + endif(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") - endif(EXISTS "${binaryDirExportsFile}") - endif (${INSTALL_DIR} MATCHES "^(/)(.+)$") + endif(EXISTS "${binaryDirExportsFile}") endif(EXISTS "${installedExportsFile}") -- cgit v1.2.1 From 85b8a06b9be6673fd3c12114e4e073961e6fad7a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 6 Jan 2009 18:33:02 +0000 Subject: -install the exports file as KDELibs4LibraryTargets.cmake, instead of KDELibsLibraryTargets.cmake -> fix against the problem which happens if you have a relatively old kdelibs installation (when the targets where exported without "namespace"), then switched the buildtype and installed a new kdelibs The patch which makes this safe for the case that we have similar changes in the future will come later today. Alex svn path=/trunk/KDE/kdelibs/; revision=906725 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 37d1f8c3..0d50b2d5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -439,7 +439,7 @@ else (_kdeBootStrapping) # the kdeui library could now also be used just as "KDE4__kdeui" and still have all their # dependent libraries handled correctly. But to keep compatibility and not to change # behaviour we set all these variables anyway as seen below. Alex - include(${kde_cmake_module_dir}/KDELibsLibraryTargets.cmake) + include(${kde_cmake_module_dir}/KDELibs4LibraryTargets.cmake) # helper macro, sets both the KDE4_FOO_LIBRARY and KDE4_FOO_LIBS variables to KDE4__foo macro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) @@ -497,7 +497,7 @@ else (_kdeBootStrapping) # now include the file with the imported tools (executable targets) # Having the libs and tools in two separate files should help with cross compiling. - include(${kde_cmake_module_dir}/KDELibsToolsTargets.cmake) + include(${kde_cmake_module_dir}/KDELibs4ToolsTargets.cmake) # get the build CONFIGURATIONS which were exported in this file, and use just the first # of them to get the location of the installed executables -- cgit v1.2.1 From cab30f1102a6a326e32616aa5ed483493751bbfb Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Tue, 6 Jan 2009 20:30:27 +0000 Subject: Add FindLibKonq.cmake from kdiff3 to kdelibs so others can use it too svn path=/trunk/KDE/kdelibs/; revision=906765 --- modules/FindLibKonq.cmake | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 modules/FindLibKonq.cmake (limited to 'modules') diff --git a/modules/FindLibKonq.cmake b/modules/FindLibKonq.cmake new file mode 100644 index 00000000..f9a06d2f --- /dev/null +++ b/modules/FindLibKonq.cmake @@ -0,0 +1,39 @@ +# - Try to find konqueror library +# Once done this will define +# +# LIBKONQ_FOUND - system has libkonq library +# LIBKONQ_INCLUDE_DIR - the LIBKONQ include directory +# LIBKONQ_LIBRARY - the libkonq library +# +# Original file: FindMarbleWidget.cmake (found in digikam-0.10.0-beta2) +# copyright 2008 by Patrick Spendrin +# use this file as you like +# +# Modifications to find libkonq by Joachim Eibl 2008 + +if(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) + + # Already in cache + set(LIBKONQ_FOUND TRUE) + +else(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) + find_path(LIBKONQ_INCLUDE_DIR konq_popupmenuplugin.h ) + + find_library(LIBKONQ_LIBRARY konq) + + if(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) + set(LIBKONQ_FOUND TRUE) + endif(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) + + if(LIBKONQ_FOUND) + if (NOT LIBKONQ_FIND_QUIETLY) + message(STATUS "Found libkonq: ${LIBKONQ_LIBRARY}") + endif (NOT LIBKONQ_FIND_QUIETLY) + else(LIBKONQ_FOUND) + if(LIBKONQ_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find KDE4 libkonq library") + endif(LIBKONQ_FIND_REQUIRED) + endif(LIBKONQ_FOUND) + + mark_as_advanced(LIBKONQ_INCLUDE_DIR LIBKONQ_LIBRARY) +endif(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) -- cgit v1.2.1 From 3dfdda2dc0367ccae61938b2a1b835c8612322a8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 6 Jan 2009 22:04:12 +0000 Subject: -before installing the exports files, compate the new and the already installed one, and if they are different, delete any previously installed configuration specific exports files Alex svn path=/trunk/KDE/kdelibs/; revision=906811 --- modules/check_installed_exports_file.cmake | 119 ++++++++++++++++++----------- 1 file changed, 73 insertions(+), 46 deletions(-) (limited to 'modules') diff --git a/modules/check_installed_exports_file.cmake b/modules/check_installed_exports_file.cmake index ab36b9cf..d1d0c718 100644 --- a/modules/check_installed_exports_file.cmake +++ b/modules/check_installed_exports_file.cmake @@ -1,46 +1,73 @@ -# INSTALL_DIR - set it to the install destination -# INSTALL_PREFIX - set it to CMAKE_INSTALL_PREFIX -# CURRENT_BINARY_DIR - set it to CMAKE_CURRENT_BINARY_DIR -# FILENAME - the filename of the exports file - -# get the absolute install directory, consider absolute and relative paths and also DESTDIR -if(IS_ABSOLUTE "${INSTALL_DIR}") - set(installDir "$ENV{DESTDIR}${INSTALL_DIR}") -else(IS_ABSOLUTE "${INSTALL_DIR}") - set(installDir "$ENV{DESTDIR}${INSTALL_PREFIX}/${INSTALL_DIR}") -endif(IS_ABSOLUTE "${INSTALL_DIR}") - -set(installedExportsFile "${installDir}/${FILENAME}") - - -# if the file already exists at the install location, and if we can -# find the exports file in the build dir, read both, and if their contents differ, -# remove all configuration-specific exports files from the install dir, since -# they may create conflicts if the new targets have been added/targets have been -# removed/ targets have been renamed/ the namespace for the exported targets has changed -if(EXISTS "${installedExportsFile}") - if (${INSTALL_DIR} MATCHES "^(/)(.+)$") - set(binaryDirExportFileDir "_${CMAKE_MATCH_2}") - set(binaryDirExportsFile "${CURRENT_BINARY_DIR}/CMakeFiles/Export/${binaryDirExportFileDir}/${FILENAME}") - else (${INSTALL_DIR} MATCHES "^(/)(.+)$") - set(binaryDirExportsFile "${CURRENT_BINARY_DIR}/CMakeFiles/Export/${INSTALL_DIR}/${FILENAME}") - endif (${INSTALL_DIR} MATCHES "^(/)(.+)$") - - if(EXISTS "${binaryDirExportsFile}") - file(READ "${installedExportsFile}" installedExportsFileContents) - file(READ "${binaryDirExportsFile}" binaryDirExportsFileContents) - - if(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") - - if("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") - message(STATUS "Installed and new ${FILENAME} differ, removing installed ${CMAKE_MATCH_1}-*.cmake files") - file(GLOB files "${installDir}/${CMAKE_MATCH_1}-*.cmake") - file(REMOVE ${files}) - endif("${FILENAME}" MATCHES "^(.+)(\\.cmake)$") - else(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") - message(STATUS "FILES are the same") - endif(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") - - endif(EXISTS "${binaryDirExportsFile}") - -endif(EXISTS "${installedExportsFile}") + +# This file is executed via install(SCRIPT). +# This means it is include()d into the cmake_install.cmake file +# Due to this the following variables already have the correct value: +# CMAKE_INSTALL_PREFIX +# CMAKE_CURRENT_BINARY_DIR +# +# Additionally the following two variables have to be set: +# EXPORT_INSTALL_DIR - set it to the install destination +# EXPORT_FILES - the filenames of the exports file +# +# Alex + + +# put all the code into a function so all variables used here are local +# which makes sure including this file multiple times in a cmake_install.cmake works +function(CHECK_INSTALLED_EXPORTS_FILE _filename) + + # get the absolute install directory, consider absolute and relative paths and also DESTDIR + if(IS_ABSOLUTE "${EXPORT_INSTALL_DIR}") + set(installDir "$ENV{DESTDIR}${EXPORT_INSTALL_DIR}") + else(IS_ABSOLUTE "${EXPORT_INSTALL_DIR}") + set(installDir "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${EXPORT_INSTALL_DIR}") + endif(IS_ABSOLUTE "${EXPORT_INSTALL_DIR}") + + set(installedExportsFile "${installDir}/${_filename}") + + #message(STATUS "************ bin dir: ${CMAKE_CURRENT_BINARY_DIR}") + #message(STATUS "************ prefix: ${CMAKE_INSTALL_PREFIX}") + #message(STATUS "************ exportsfile: ${installedExportsFile}") + + # if the file already exists at the install location, and if we can + # find the exports file in the build dir, read both, and if their contents differ, + # remove all configuration-specific exports files from the install dir, since + # they may create conflicts if the new targets have been added/targets have been + # removed/ targets have been renamed/ the namespace for the exported targets has changed + if(EXISTS "${installedExportsFile}") + if (${EXPORT_INSTALL_DIR} MATCHES "^(/)(.+)$") + set(binaryDirExportFileDir "_${CMAKE_MATCH_2}") + set(binaryDirExportsFile "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/Export/${binaryDirExportFileDir}/${_filename}") + else (${EXPORT_INSTALL_DIR} MATCHES "^(/)(.+)$") + set(binaryDirExportsFile "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/Export/${EXPORT_INSTALL_DIR}/${_filename}") + endif (${EXPORT_INSTALL_DIR} MATCHES "^(/)(.+)$") + + # message(STATUS "************* binaryDirExportsFile: ${binaryDirExportsFile}") + + if(EXISTS "${binaryDirExportsFile}") + file(READ "${installedExportsFile}" installedExportsFileContents) + file(READ "${binaryDirExportsFile}" binaryDirExportsFileContents) + + if(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") + + if("${_filename}" MATCHES "^(.+)(\\.cmake)$") + message(STATUS "XXX Installed and new ${_filename} differ, removing installed ${CMAKE_MATCH_1}-*.cmake files") + file(GLOB exportFiles "${installDir}/${CMAKE_MATCH_1}-*.cmake") +# message(STATUS "XXX files: ${exportFiles}") + file(REMOVE ${exportFiles}) + endif("${_filename}" MATCHES "^(.+)(\\.cmake)$") + else(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") +# message(STATUS "XXX FILES ${_filename} are the same") + endif(NOT "${installedExportsFileContents}" STREQUAL "${binaryDirExportsFileContents}") + + endif(EXISTS "${binaryDirExportsFile}") + + endif(EXISTS "${installedExportsFile}") + +endfunction(CHECK_INSTALLED_EXPORTS_FILE) + +# call the function for each exports file +foreach(_currentExportsFile ${EXPORT_FILES}) + check_installed_exports_file("${_currentExportsFile}") +endforeach(_currentExportsFile ${EXPORT_FILES}) + -- cgit v1.2.1 From 03e430f2ccc3fb31c328026537fb1a851cd9f128 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 9 Jan 2009 07:55:58 +0000 Subject: Need by kdemultimedia too svn path=/trunk/KDE/kdelibs/; revision=908062 --- modules/FindPulseAudio.cmake | 52 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 modules/FindPulseAudio.cmake (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake new file mode 100644 index 00000000..3bdec315 --- /dev/null +++ b/modules/FindPulseAudio.cmake @@ -0,0 +1,52 @@ +# Try to find the PulseAudio library +# +# Once done this will define: +# +# PULSEAUDIO_FOUND - system has the PulseAudio library +# PULSEAUDIO_INCLUDE_DIR - the PulseAudio include directory +# PULSEAUDIO_LIBRARY - the libraries needed to use PulseAudio +# +# Copyright (c) 2008, Matthias Kretz, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + # Already in cache, be silent + set(PULSEAUDIO_FIND_QUIETLY TRUE) +endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + +if (NOT WIN32) + include(FindPkgConfig) + pkg_check_modules(PULSEAUDIO libpulse) + if(PULSEAUDIO_FOUND) + set(PULSEAUDIO_LIBRARY ${PULSEAUDIO_LIBRARIES} CACHE FILEPATH "Path to the PulseAudio library") + set(PULSEAUDIO_INCLUDE_DIR ${PULSEAUDIO_INCLUDEDIR} CACHE PATH "Path to the PulseAudio includes") + # PULSEAUDIO_DEFINITIONS - Compiler switches required for using PulseAudio + # set(PULSEAUDIO_DEFINITIONS ${PULSEAUDIO_CFLAGS}) + endif(PULSEAUDIO_FOUND) +endif (NOT WIN32) + +if (NOT PULSEAUDIO_INCLUDE_DIR) + FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h) +endif (NOT PULSEAUDIO_INCLUDE_DIR) + +if (NOT PULSEAUDIO_LIBRARY) + FIND_LIBRARY(PULSEAUDIO_LIBRARY NAMES pulse) +endif (NOT PULSEAUDIO_LIBRARY) + +if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + set(PULSEAUDIO_FOUND TRUE) +else (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + set(PULSEAUDIO_FOUND FALSE) +endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + +if (PULSEAUDIO_FOUND) + if (NOT PULSEAUDIO_FIND_QUIETLY) + message(STATUS "Found PulseAudio: ${PULSEAUDIO_LIBRARY}") + endif (NOT PULSEAUDIO_FIND_QUIETLY) +else (PULSEAUDIO_FOUND) + message(STATUS "Could NOT find PulseAudio") +endif (PULSEAUDIO_FOUND) + +#mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY) -- cgit v1.2.1 From 0edc600f2dfef9acf01382a796fd630fa98a6342 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 9 Jan 2009 08:20:13 +0000 Subject: Allow to specify minimum version (need to compile kmix, kmix need pulseaudio >= 0.9.12) svn path=/trunk/KDE/kdelibs/; revision=908067 --- modules/FindPulseAudio.cmake | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index 3bdec315..f9e5855f 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -11,6 +11,10 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +if (NOT PULSEAUDIO_MINIMUM_VERSION) + set(PULSEAUDIO_MINIMUM_VERSION "0.9.9") +endif (NOT PULSEAUDIO_MINIMUM_VERSION) + if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) # Already in cache, be silent set(PULSEAUDIO_FIND_QUIETLY TRUE) @@ -18,29 +22,29 @@ endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) if (NOT WIN32) include(FindPkgConfig) - pkg_check_modules(PULSEAUDIO libpulse) + pkg_check_modules(PULSEAUDIO libpulse>=${PULSEAUDIO_MINIMUM_VERSION}) if(PULSEAUDIO_FOUND) set(PULSEAUDIO_LIBRARY ${PULSEAUDIO_LIBRARIES} CACHE FILEPATH "Path to the PulseAudio library") set(PULSEAUDIO_INCLUDE_DIR ${PULSEAUDIO_INCLUDEDIR} CACHE PATH "Path to the PulseAudio includes") # PULSEAUDIO_DEFINITIONS - Compiler switches required for using PulseAudio # set(PULSEAUDIO_DEFINITIONS ${PULSEAUDIO_CFLAGS}) endif(PULSEAUDIO_FOUND) -endif (NOT WIN32) - -if (NOT PULSEAUDIO_INCLUDE_DIR) - FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h) -endif (NOT PULSEAUDIO_INCLUDE_DIR) +else (NOT WIN32) -if (NOT PULSEAUDIO_LIBRARY) - FIND_LIBRARY(PULSEAUDIO_LIBRARY NAMES pulse) -endif (NOT PULSEAUDIO_LIBRARY) + if (NOT PULSEAUDIO_INCLUDE_DIR) + FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h) + endif (NOT PULSEAUDIO_INCLUDE_DIR) -if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - set(PULSEAUDIO_FOUND TRUE) -else (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - set(PULSEAUDIO_FOUND FALSE) -endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + if (NOT PULSEAUDIO_LIBRARY) + FIND_LIBRARY(PULSEAUDIO_LIBRARY NAMES pulse) + endif (NOT PULSEAUDIO_LIBRARY) + if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + set(PULSEAUDIO_FOUND TRUE) + else (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + set(PULSEAUDIO_FOUND FALSE) + endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) +endif( NOT WIN32) if (PULSEAUDIO_FOUND) if (NOT PULSEAUDIO_FIND_QUIETLY) message(STATUS "Found PulseAudio: ${PULSEAUDIO_LIBRARY}") -- cgit v1.2.1 From 9b1592ac60d8ca3c717085fd2a51789deca298a3 Mon Sep 17 00:00:00 2001 From: Anne-Marie Mahfouf Date: Fri, 9 Jan 2009 15:02:42 +0000 Subject: add a training / so it's easier to call a filename without having to prepend the / OKed by David Faure svn path=/trunk/KDE/kdelibs/; revision=908300 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f719e4a3..7f5b1d6f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -826,7 +826,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) _automoc4_kde4_post_target_handling(${_target_NAME}) if (_test) - set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}\\"") + set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}/\\"") endif (_test) kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) -- cgit v1.2.1 From a6c9b82dcad7e0847d609bc0673a9c7fe61a34ab Mon Sep 17 00:00:00 2001 From: James Richard Tyrer Date: Sun, 11 Jan 2009 16:00:32 +0000 Subject: updating FindEigen2.cmake for proper search order svn path=/trunk/KDE/kdelibs/; revision=909439 --- modules/FindEigen2.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 2579a6c9..5feddf3e 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -16,10 +16,10 @@ if (EIGEN2_INCLUDE_DIR) else (EIGEN2_INCLUDE_DIR) find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core - PATHS + PATH_SUFFIXES eigen2 + HINTS ${INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} - PATH_SUFFIXES eigen2 ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 5020bf83969392d03b7bdbd775a9b42fdf2a6b49 Mon Sep 17 00:00:00 2001 From: Marcus Hufgard Date: Wed, 14 Jan 2009 14:26:33 +0000 Subject: we need the PulseAudio Mainloop Library in kdemultimedia. Please have a look over it and expand it to win32 libs. Thanks svn path=/trunk/KDE/kdelibs/; revision=910978 --- modules/FindPulseAudio.cmake | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index f9e5855f..c9689219 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -5,6 +5,7 @@ # PULSEAUDIO_FOUND - system has the PulseAudio library # PULSEAUDIO_INCLUDE_DIR - the PulseAudio include directory # PULSEAUDIO_LIBRARY - the libraries needed to use PulseAudio +# PULSEAUDIO_MAINLOOP_LIBRARY - the libraries needed to use PulsAudio Mailoop # # Copyright (c) 2008, Matthias Kretz, # @@ -15,10 +16,10 @@ if (NOT PULSEAUDIO_MINIMUM_VERSION) set(PULSEAUDIO_MINIMUM_VERSION "0.9.9") endif (NOT PULSEAUDIO_MINIMUM_VERSION) -if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) +if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY AND PULSEAUDIO_MAINLOOP_LIBRARY) # Already in cache, be silent set(PULSEAUDIO_FIND_QUIETLY TRUE) -endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) +endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY AND PULSEAUDIO_MAINLOOP_LIBRARY) if (NOT WIN32) include(FindPkgConfig) @@ -28,6 +29,10 @@ if (NOT WIN32) set(PULSEAUDIO_INCLUDE_DIR ${PULSEAUDIO_INCLUDEDIR} CACHE PATH "Path to the PulseAudio includes") # PULSEAUDIO_DEFINITIONS - Compiler switches required for using PulseAudio # set(PULSEAUDIO_DEFINITIONS ${PULSEAUDIO_CFLAGS}) + pkg_check_modules(PULSEAUDIO_MAINLOOP libpulse-mainloop-glib) + if(PULSEAUDIO_MAINLOOP_FOUND) + set(PULSEAUDIO_MAINLOOP_LIBRARY ${PULSEAUDIO_MAINLOOP_LIBRARIES} CACHE FILEPATH "Path to the PulsAudio Mainloop library") + endif(PULSEAUDIO_MAINLOOP_FOUND) endif(PULSEAUDIO_FOUND) else (NOT WIN32) @@ -48,9 +53,14 @@ endif( NOT WIN32) if (PULSEAUDIO_FOUND) if (NOT PULSEAUDIO_FIND_QUIETLY) message(STATUS "Found PulseAudio: ${PULSEAUDIO_LIBRARY}") + if (PULSEAUDIO_MAINLOOP_FOUND) + message(STATUS "Found PulseAudio Mainloop: ${PULSEAUDIO_MAINLOOP_LIBRARY}") + else (PULSAUDIO_MAINLOOP_FOUND) + message(STATUS "Could NOT find PulseAudio Mainloop Library") + endif (PULSEAUDIO_MAINLOOP_FOUND) endif (NOT PULSEAUDIO_FIND_QUIETLY) else (PULSEAUDIO_FOUND) message(STATUS "Could NOT find PulseAudio") endif (PULSEAUDIO_FOUND) -#mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY) +#mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY PULSEAUDIO_MAINLOOP_LIBRARY) -- cgit v1.2.1 From c43b051c975ef76f411342116053da84e0ee3cd3 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 17 Jan 2009 12:19:34 +0000 Subject: Fix create symlink svn path=/trunk/KDE/kdelibs/; revision=912335 --- modules/FindPyKDE4.cmake | 6 +++++- modules/create_exe_symlink.cmake | 16 ++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 modules/create_exe_symlink.cmake (limited to 'modules') diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake index f738741e..dd2b7380 100644 --- a/modules/FindPyKDE4.cmake +++ b/modules/FindPyKDE4.cmake @@ -156,5 +156,9 @@ ENDMACRO(PYKDE4_INSTALL_PYTHON_FILES) # executable. # MACRO(PYKDE4_ADD_EXECUTABLE _pyname _exename) - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname} -DLINK_NAME=${BIN_INSTALL_DIR}/${_exename} -P ${CMAKE_SOURCE_DIR}/cmake/modules/create_exe_symlink.cmake)" ) + if(NOT ${PROJECT_NAME}) + MESSAGE(STATUS "Project name is necessary to create symlink against python program!!! It will failed.") + endif(NOT ${PROJECT_NAME}) + INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname} -DLINK_NAME=${BIN_INSTALL_DIR}/${_exename} -P ${current_module_dir}/create_exe_symlink.cmake)" ) ENDMACRO(PYKDE4_ADD_EXECUTABLE) + diff --git a/modules/create_exe_symlink.cmake b/modules/create_exe_symlink.cmake new file mode 100644 index 00000000..6f35ff76 --- /dev/null +++ b/modules/create_exe_symlink.cmake @@ -0,0 +1,16 @@ +# Create an executable symlink to a Python script. +# This also sets the target script's permission bits. + +MESSAGE(STATUS "Symlinking $ENV{DESTDIR}/${LINK_NAME} to $ENV{DESTDIR}/${TARGET}") + +GET_FILENAME_COMPONENT(abs_link_name $ENV{DESTDIR}/${LINK_NAME} ABSOLUTE) +GET_FILENAME_COMPONENT(link_path $ENV{DESTDIR}/${LINK_NAME} PATH) +GET_FILENAME_COMPONENT(abs_link_path ${link_path} ABSOLUTE) +FILE(MAKE_DIRECTORY ${abs_link_path}) + +GET_FILENAME_COMPONENT(abs_target $ENV{DESTDIR}/${TARGET} ABSOLUTE) +IF(UNIX) + EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink ${abs_target} ${abs_link_name}) + EXECUTE_PROCESS(COMMAND chmod a+x ${abs_target}) +ENDIF(UNIX) +# FIXME: WIN32 support -- cgit v1.2.1 From b97bd54ee16e626b6b04aee4e432aa4474c2c9cb Mon Sep 17 00:00:00 2001 From: Andreas Hartmetz Date: Sat, 24 Jan 2009 19:45:16 +0000 Subject: - define NDEBUG and QT_NO_DEBUG in relwithebinfo build mode - that is how it already is in release build mode. this disables assert() and Q_ASSERT() in all release modes. - only soft disable kDebug() at runtime depending on QT_NO_DEBUG, instead of making it a no-op by #definition. svn path=/trunk/KDE/kdelibs/; revision=916186 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0d50b2d5..c07de2c4 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -960,12 +960,12 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) set (KDE4_ENABLE_EXCEPTIONS -fexceptions) # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") -- cgit v1.2.1 From 46a8e62d0e22a0e2bba899e735ba30aa093f2b96 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 25 Jan 2009 17:50:01 +0000 Subject: it's libgmp on windows svn path=/trunk/KDE/kdelibs/; revision=916638 --- modules/FindGMP.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGMP.cmake b/modules/FindGMP.cmake index 67ccbbb1..17d175c6 100644 --- a/modules/FindGMP.cmake +++ b/modules/FindGMP.cmake @@ -15,7 +15,7 @@ if (GMP_INCLUDE_DIR AND GMP_LIBRARIES) endif (GMP_INCLUDE_DIR AND GMP_LIBRARIES) find_path(GMP_INCLUDE_DIR NAMES gmp.h ) -find_library(GMP_LIBRARIES NAMES gmp ) +find_library(GMP_LIBRARIES NAMES gmp libgmp) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(GMP DEFAULT_MSG GMP_INCLUDE_DIR GMP_LIBRARIES) -- cgit v1.2.1 From 19812fe56d141e45665fbaaf8a3e4600e0523720 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 28 Jan 2009 19:16:42 +0000 Subject: GLOB_RECURSE in KDE4_ADD_WIN32_APP_ICON is wrong - GLOB should be enough svn path=/trunk/KDE/kdelibs/; revision=917903 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7f5b1d6f..4ae57fce 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1016,7 +1016,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) endif(MSVC) if (PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) string(REPLACE "*" "(.*)" pattern_rx "${pattern}") - file(GLOB_RECURSE files "${pattern}") + file(GLOB files "${pattern}") foreach (it ${files}) string(REGEX REPLACE "${pattern_rx}" "\\1" fn "${it}") if (fn MATCHES ".*16.*" ) -- cgit v1.2.1 From 7997b3d0378422cd51aabad3e1967f8fda461b93 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 28 Jan 2009 20:25:15 +0000 Subject: minor doc update. svn path=/trunk/KDE/kdelibs/; revision=917924 --- modules/FindKdepimLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 3ab58e21..e160719b 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -12,6 +12,7 @@ # KDEPIMLIBS_KABC_LIBS # KDEPIMLIBS_KBLOG_LIBS # KDEPIMLIBS_KCAL_LIBS +# KDEPIMLIBS_KHOLIDAYS_LIBS # KDEPIMLIBS_KIMAP_LIBS # KDEPIMLIBS_KLDAP_LIBS # KDEPIMLIBS_KMIME_LIBS -- cgit v1.2.1 From b4da6f8dab9370a92352bfdfe9176d6d7d05e139 Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Wed, 28 Jan 2009 21:02:20 +0000 Subject: FindKdepim isn't (and shouldn't) be used anymore. Removing this cmake module. Ack. by Allen. svn path=/trunk/KDE/kdelibs/; revision=917950 --- modules/FindKdepim.cmake | 31 ------------------------------- 1 file changed, 31 deletions(-) delete mode 100644 modules/FindKdepim.cmake (limited to 'modules') diff --git a/modules/FindKdepim.cmake b/modules/FindKdepim.cmake deleted file mode 100644 index d04886af..00000000 --- a/modules/FindKdepim.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# cmake macro to see if we have kdepim installed - -# KDEPIM_INCLUDE_DIR -# KDEPIM_FOUND -# Copyright (C) 2007 Laurent Montel -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if (KDEPIM_INCLUDE_DIR) - # Already in cache, be silent - set(KDEPIM_FOUND TRUE) -endif (KDEPIM_INCLUDE_DIR) - - -FIND_PATH(KDEPIM_INCLUDE_DIR NAMES kdepimprotocols.h - PATHS - ${INCLUDE_INSTALL_DIR} -) - -FIND_LIBRARY(KDEPIM_LIBRARIES NAMES kdepim - PATHS - ${LIB_INSTALL_DIR} -) - -include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Kdepim DEFAULT_MSG KDEPIM_LIBRARIES KDEPIM_INCLUDE_DIR ) - -MARK_AS_ADVANCED(KDEPIM_INCLUDE_DIR KDEPIM_LIBRARIES) - -- cgit v1.2.1 From dc3d2e24549f2091a86798b3972969271e344b68 Mon Sep 17 00:00:00 2001 From: Marcus Hufgard Date: Fri, 30 Jan 2009 20:04:34 +0000 Subject: Optimiced Code svn path=/trunk/KDE/kdelibs/; revision=918830 --- modules/FindPulseAudio.cmake | 58 +++++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index c9689219..057d1c29 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -8,6 +8,7 @@ # PULSEAUDIO_MAINLOOP_LIBRARY - the libraries needed to use PulsAudio Mailoop # # Copyright (c) 2008, Matthias Kretz, +# Copyright (c) 2009, Marcus Hufgard, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -23,44 +24,45 @@ endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY AND PULSEAUDIO_MAINLOOP_LIB if (NOT WIN32) include(FindPkgConfig) - pkg_check_modules(PULSEAUDIO libpulse>=${PULSEAUDIO_MINIMUM_VERSION}) - if(PULSEAUDIO_FOUND) - set(PULSEAUDIO_LIBRARY ${PULSEAUDIO_LIBRARIES} CACHE FILEPATH "Path to the PulseAudio library") - set(PULSEAUDIO_INCLUDE_DIR ${PULSEAUDIO_INCLUDEDIR} CACHE PATH "Path to the PulseAudio includes") - # PULSEAUDIO_DEFINITIONS - Compiler switches required for using PulseAudio - # set(PULSEAUDIO_DEFINITIONS ${PULSEAUDIO_CFLAGS}) - pkg_check_modules(PULSEAUDIO_MAINLOOP libpulse-mainloop-glib) - if(PULSEAUDIO_MAINLOOP_FOUND) - set(PULSEAUDIO_MAINLOOP_LIBRARY ${PULSEAUDIO_MAINLOOP_LIBRARIES} CACHE FILEPATH "Path to the PulsAudio Mainloop library") - endif(PULSEAUDIO_MAINLOOP_FOUND) - endif(PULSEAUDIO_FOUND) -else (NOT WIN32) + pkg_check_modules(PC_PULSEAUDIO libpulse>=${PULSEAUDIO_MINIMUM_VERSION}) + pkg_check_modules(PC_PULSEAUDIO_MAINLOOP libpulse-mainloop-glib) +endif (NOT WIN32) - if (NOT PULSEAUDIO_INCLUDE_DIR) - FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h) - endif (NOT PULSEAUDIO_INCLUDE_DIR) +FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h + HINTS + ${PC_PULSEADUIO_INCLUDEDIR} + ${PC_PULSEADUIO_INCLUDE_DIRS} + ) - if (NOT PULSEAUDIO_LIBRARY) - FIND_LIBRARY(PULSEAUDIO_LIBRARY NAMES pulse) - endif (NOT PULSEAUDIO_LIBRARY) +FIND_LIBRARY(PULSEAUDIO_LIBRARY NAMES pulse libpulse + HINTS + ${PC_PULSEAUDIO_LIBDIR} + ${PC_PULSEAUDIO_LIBRARY_DIRS} + ) + +FIND_LIBRARY(PULSEAUDIO_MAINLOOP_LIBRARY NAMES pulse-mainloop pulse-mainloop-glib libpulse-mainloop-glib + HINTS + ${PC_PULSEAUDIO_LIBDIR} + ${PC_PULSEAUDIO_LIBRARY_DIRS} + ) + +if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + set(PULSEAUDIO_FOUND TRUE) +else (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + set(PULSEAUDIO_FOUND FALSE) +endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - set(PULSEAUDIO_FOUND TRUE) - else (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - set(PULSEAUDIO_FOUND FALSE) - endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) -endif( NOT WIN32) if (PULSEAUDIO_FOUND) if (NOT PULSEAUDIO_FIND_QUIETLY) message(STATUS "Found PulseAudio: ${PULSEAUDIO_LIBRARY}") - if (PULSEAUDIO_MAINLOOP_FOUND) + if (PULSEAUDIO_MAINLOOP_LIBRARY) message(STATUS "Found PulseAudio Mainloop: ${PULSEAUDIO_MAINLOOP_LIBRARY}") - else (PULSAUDIO_MAINLOOP_FOUND) + else (PULSAUDIO_MAINLOOP_LIBRARY) message(STATUS "Could NOT find PulseAudio Mainloop Library") - endif (PULSEAUDIO_MAINLOOP_FOUND) + endif (PULSEAUDIO_MAINLOOP_LIBRARY) endif (NOT PULSEAUDIO_FIND_QUIETLY) else (PULSEAUDIO_FOUND) message(STATUS "Could NOT find PulseAudio") endif (PULSEAUDIO_FOUND) -#mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY PULSEAUDIO_MAINLOOP_LIBRARY) +mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY PULSEAUDIO_MAINLOOP_LIBRARY) -- cgit v1.2.1 From 2638304d661b11a9590da90b8466f6066eb31c43 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Mon, 9 Feb 2009 18:13:39 +0000 Subject: find our new slef-compiled openssl 0.9.8j svn path=/trunk/KDE/kdelibs/; revision=923916 --- modules/FindOpenSSL.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index 1b915530..4ce8321b 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -32,7 +32,7 @@ FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h ) FIND_LIBRARY_WITH_DEBUG(OPENSSL_LIBRARIES WIN32_DEBUG_POSTFIX d - NAMES ssl ssleay ssleay32 ssleay32MD) + NAMES ssl ssleay ssleay32 libssleay32 ssleay32MD) IF(WIN32) OPENSSL_ADD_LIB_EAY_LIBS() -- cgit v1.2.1 From 75e7747ab465844a8fc682a412b05811088f988c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 9 Feb 2009 22:40:46 +0000 Subject: explicitely set CMP0011 to OLD, so we don't get the warning with cmake >= 2.6.3 Alex svn path=/trunk/KDE/kdelibs/; revision=924046 --- modules/FindKDE4Internal.cmake | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c07de2c4..50a190bd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -260,6 +260,13 @@ cmake_policy(SET CMP0002 OLD) cmake_policy(SET CMP0003 OLD) # CMP0005: keep escaping behaviour for definitions added via add_definitions() cmake_policy(SET CMP0005 OLD) +# since cmake 2.6.3: NEW behaviour is that setting policies doesn't "escape" the file +# where this is done, macros and functions are executed with the policies as they +# were when the were defined. Keep the OLD behaviour so we can set the policies here +# for all KDE software without the big warning +if(POLICY CMP0011) + cmake_policy(SET CMP0011 OLD) +endif(POLICY CMP0011) # Only do something if it hasn't been found yet -- cgit v1.2.1 From d370592f8f03a3733aa6fb491e7ab17bdf314d83 Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 13 Feb 2009 11:00:05 +0000 Subject: Fix linking in kdelibs/kate/plugins/ svn path=/trunk/KDE/kdelibs/; revision=925451 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 50a190bd..537e6da0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -371,6 +371,7 @@ if (_kdeBootStrapping) set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) set(KDE4_KFILE_LIBS ${KDE4_KIO_LIBS} kfile) set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) + set(KDE4_KTEXTEDITOR_LIBS ktexteditor) set(EXECUTABLE_OUTPUT_PATH ${kdelibs_BINARY_DIR}/bin ) -- cgit v1.2.1 From 67c989612b318a527a447af56a68f35f12f38383 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 16 Feb 2009 22:05:45 +0000 Subject: Reflect new reality -- kdelibs trunk requires Qt 4.5 (rc1 passes this check) svn path=/trunk/KDE/kdelibs/; revision=927156 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 537e6da0..0e134b0c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -286,7 +286,7 @@ else(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) set(_REQ_STRING_KDE4_MESSAGE "STATUS") endif(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) -set(QT_MIN_VERSION "4.4.0") +set(QT_MIN_VERSION "4.5.0") #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 ${_REQ_STRING_KDE4}) -- cgit v1.2.1 From 78b2fd1b23c2bb0aef88245c952e543ff33531fe Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 19 Feb 2009 14:52:08 +0000 Subject: actually check also the version of the found pulseaudio (by getting its version from the version.h) against the minimum version required svn path=/trunk/KDE/kdelibs/; revision=928423 --- modules/FindPulseAudio.cmake | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index 057d1c29..f3569a31 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -47,7 +47,15 @@ FIND_LIBRARY(PULSEAUDIO_MAINLOOP_LIBRARY NAMES pulse-mainloop pulse-mainloop-gli ) if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - set(PULSEAUDIO_FOUND TRUE) + include(MacroEnsureVersion) + + # get PulseAudio's version from its version.h, and compare it with our minimum version + file(STRINGS "${PULSEAUDIO_INCLUDE_DIR}/pulse/version.h" pulse_version_h + REGEX ".*pa_get_headers_version\\(\\).*" + ) + string(REGEX REPLACE ".*pa_get_headers_version\\(\\)\ \\(\"([0-9]+\\.[0-9]+\\.[0-9]+)\"\\).*" "\\1" + PULSEAUDIO_VERSION "${pulse_version_h}") + macro_ensure_version("${PULSEAUDIO_MINIMUM_VERSION}" "${PULSEAUDIO_VERSION}" PULSEAUDIO_FOUND) else (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) set(PULSEAUDIO_FOUND FALSE) endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) -- cgit v1.2.1 From ea6c26c2cfc2c1e22ed3afaa7a3124e289e8145e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 23 Feb 2009 17:51:33 +0000 Subject: Increase the shared library versioning from .2 to .3 svn path=/trunk/KDE/kdelibs/; revision=930511 --- modules/KDE4Defaults.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index de56a822..6407b3f3 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -24,11 +24,11 @@ set(CMAKE_COLOR_MAKEFILE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes # Use this version number for libraries which are at version n in KDE version n -set(GENERIC_LIB_VERSION "4.2.0") +set(GENERIC_LIB_VERSION "4.3.0") set(GENERIC_LIB_SOVERSION "4") # Use this version number for libraries which are already at version n+1 in KDE version n -set(KDE_NON_GENERIC_LIB_VERSION "5.2.0") +set(KDE_NON_GENERIC_LIB_VERSION "5.3.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar -- cgit v1.2.1 From d18a1fb7a0f43272beae5ff8c7e3ba8cdbaef4a4 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 23 Feb 2009 17:51:57 +0000 Subject: 4.2 -> 4.3 in some messages svn path=/trunk/KDE/kdelibs/; revision=930512 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0e134b0c..09115cf7 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1116,13 +1116,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.2 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.3 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find the KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.2 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.3 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find the KDE 4 core library") endif(KDE4_LIB_DIR) -- cgit v1.2.1 From 9ae1c29f129e722f31fa0aaa7fa90b994f73788f Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Mon, 23 Feb 2009 20:21:06 +0000 Subject: New layout for the cmake summary as discussed on kde-buildsystem. Will backport to 4.2 soon. svn path=/trunk/KDE/kdelibs/; revision=930559 --- modules/MacroLogFeature.cmake | 93 ++++++++++++++++++++++++++----------------- 1 file changed, 57 insertions(+), 36 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 11861b95..21f6ddbd 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -26,6 +26,7 @@ # Copyright (c) 2006, Alexander Neundorf, # Copyright (c) 2006, Allen Winter, +# Copyright (c) 2009, Sebastian Trueg, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -66,18 +67,26 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ ENDIF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") ENDIF (${_var}) - SET(_logtext "+ ${_package}") + SET(_logtext " * ${_package}") IF (NOT ${_var}) IF (${_minvers} MATCHES ".*") - SET(_logtext "${_logtext}, ${_minvers} or higher") + SET(_logtext "${_logtext} (${_minvers} or higher)") ENDIF (${_minvers} MATCHES ".*") - SET(_logtext "${_logtext}: ${_description} <${_url}>") + SET(_logtext "${_logtext} <${_url}>\n ") + ELSE (NOT ${_var}) + SET(_logtext "${_logtext} - ") + ENDIF (NOT ${_var}) + + SET(_logtext "${_logtext}${_description}") + + IF (NOT ${_var}) IF (${_comments} MATCHES ".*") - SET(_logtext "${_logtext}\n${_comments}") + SET(_logtext "${_logtext}\n ${_comments}") ENDIF (${_comments} MATCHES ".*") # SET(_logtext "${_logtext}\n") #double-space missing features? ENDIF (NOT ${_var}) + FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n") ENDMACRO(MACRO_LOG_FEATURE) @@ -85,41 +94,53 @@ ENDMACRO(MACRO_LOG_FEATURE) MACRO(MACRO_DISPLAY_FEATURE_LOG) - SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt) - IF (EXISTS ${_file}) - FILE(READ ${_file} _requirements) - MESSAGE(STATUS "\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- Please install them before continuing this software installation.\n-----------------------------------------------------------------------------\n${_requirements}-----------------------------------------------------------------------------") - FILE(REMOVE ${_file}) - MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") - ENDIF (EXISTS ${_file}) + SET(_missingFile ${CMAKE_BINARY_DIR}/MissingRequirements.txt) + SET(_enabledFile ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) + SET(_disabledFile ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) - SET(_summary "\n") + IF (EXISTS ${_missingFile} OR EXISTS ${_enabledFile} OR EXISTS ${_disabledFile}) + SET(_printSummary TRUE) + ENDIF (EXISTS ${_missingFile} OR EXISTS ${_enabledFile} OR EXISTS ${_disabledFile}) - SET(_elist 0) - SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) - IF (EXISTS ${_file}) - SET(_elist 1) - FILE(READ ${_file} _enabled) - FILE(REMOVE ${_file}) - SET(_summary "${_summary}-----------------------------------------------------------------------------\n-- The following external packages were located on your system.\n-- This installation will have the extra features provided by these packages.\n${_enabled}") - ENDIF (EXISTS ${_file}) + IF(_printSummary) + SET(_missingDeps 0) + IF (EXISTS ${_enabledFile}) + FILE(READ ${_enabledFile} _enabled) + FILE(REMOVE ${_enabledFile}) + SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following external packages were located on your system.\n-- This installation will have the extra features provided by these packages.\n-----------------------------------------------------------------------------\n${_enabled}") + ENDIF (EXISTS ${_enabledFile}) - SET(_dlist 0) - SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) - IF (EXISTS ${_file}) - SET(_dlist 1) - FILE(READ ${_file} _disabled) - FILE(REMOVE ${_file}) - SET(_summary "${_summary}-----------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n${_disabled}") - ELSE (EXISTS ${_file}) - IF (${_elist}) - SET(_summary "${_summary}Congratulations! All external packages have been found.\n") - ENDIF (${_elist}) - ENDIF (EXISTS ${_file}) - IF (${_elist} OR ${_dlist}) - SET(_summary "${_summary}-----------------------------------------------------------------------------\n") - ENDIF (${_elist} OR ${_dlist}) - MESSAGE(STATUS "${_summary}") + IF (EXISTS ${_disabledFile}) + SET(_missingDeps 1) + FILE(READ ${_disabledFile} _disabled) + FILE(REMOVE ${_disabledFile}) + SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n-----------------------------------------------------------------------------\n${_disabled}") + ENDIF (EXISTS ${_disabledFile}) + + + IF (EXISTS ${_missingFile}) + SET(_missingDeps 1) + FILE(READ ${_missingFile} _requirements) + SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n-----------------------------------------------------------------------------\n${_requirements}") + FILE(REMOVE ${_missingFile}) + SET(_haveMissingReq 1) + ENDIF (EXISTS ${_missingFile}) + + + IF (NOT ${_missingDeps}) + SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- Congratulations! All external packages have been found.") + ENDIF (NOT ${_missingDeps}) + + + MESSAGE(${_summary}) + MESSAGE("-----------------------------------------------------------------------------\n") + + + IF(_haveMissingReq) + MESSAGE(FATAL_ERROR "Exiting: Missing Requirements") + ENDIF(_haveMissingReq) + + ENDIF(_printSummary) ENDMACRO(MACRO_DISPLAY_FEATURE_LOG) -- cgit v1.2.1 From b51954895b0c62d8452b9c9400c39f8be692caf8 Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Tue, 24 Feb 2009 20:32:55 +0000 Subject: Add KDEPIMLIBS_INCLUDE_DIRS svn path=/trunk/KDE/kdelibs/; revision=931131 --- modules/FindKdepimLibs.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index e160719b..dcbe2f94 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -3,6 +3,7 @@ # # KDEPIMLIBS_FOUND - system has KDE PIM Libraries # KDEPIMLIBS_INCLUDE_DIR - the KDE PIM Libraries include directory +# KDEPIMLIBS_INCLUDE_DIRS - the KDE PIM Libraries include directory and CamelCase headers # # It also sets variables for the following libraries: # KDEPIMLIBS_AKONADI_LIBS @@ -30,6 +31,7 @@ # KDEPIMLIBS_DBUS_INTERFACES_DIR # KDEPIMLIBS_DBUS_SERVICES_DIR # KDEPIMLIBS_INCLUDE_DIR +# KDEPIMLIBS_INCLUDE_DIRS # KDEPIMLIBS_LIB_DIR # KDEPIMLIBS_BIN_DIR # KDEPIMLIBS_LIBEXEC_DIR -- cgit v1.2.1 From 6b7a40490fb2551476f95831b00f196390951cf4 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 25 Feb 2009 23:08:45 +0000 Subject: symlinking DESTDIR in the source of the symlink is wrong, as it will be a stale link in the case where DESTDIR is already used. svn path=/trunk/KDE/kdelibs/; revision=931922 --- modules/create_exe_symlink.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/create_exe_symlink.cmake b/modules/create_exe_symlink.cmake index 6f35ff76..95db4b48 100644 --- a/modules/create_exe_symlink.cmake +++ b/modules/create_exe_symlink.cmake @@ -8,7 +8,7 @@ GET_FILENAME_COMPONENT(link_path $ENV{DESTDIR}/${LINK_NAME} PATH) GET_FILENAME_COMPONENT(abs_link_path ${link_path} ABSOLUTE) FILE(MAKE_DIRECTORY ${abs_link_path}) -GET_FILENAME_COMPONENT(abs_target $ENV{DESTDIR}/${TARGET} ABSOLUTE) +GET_FILENAME_COMPONENT(abs_target ${TARGET} ABSOLUTE) IF(UNIX) EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink ${abs_target} ${abs_link_name}) EXECUTE_PROCESS(COMMAND chmod a+x ${abs_target}) -- cgit v1.2.1 From 1f207c6a9f1990a5f96a7e2d0a4acce08f58be9f Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Fri, 27 Feb 2009 16:47:51 +0000 Subject: fix poppler detection for openSUSE (https://bugzilla.novell.com/show_bug.cgi?id=480485) svn path=/trunk/KDE/kdelibs/; revision=932963 --- modules/FindPopplerQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPopplerQt4.cmake b/modules/FindPopplerQt4.cmake index b4ee4086..fbc1820c 100644 --- a/modules/FindPopplerQt4.cmake +++ b/modules/FindPopplerQt4.cmake @@ -26,7 +26,7 @@ endif(NOT WIN32) find_path(POPPLER_QT4_INCLUDE_DIR NAMES poppler-qt4.h - PATH_SUFFIXES poppler + PATH_SUFFIXES poppler/qt4 poppler PATHS ${_PopplerQt4IncDir} ) -- cgit v1.2.1 From 105205cfa600256f4a57f9f6e4c9e5fc7e12a3c8 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 27 Feb 2009 20:46:36 +0000 Subject: typo fix, found by Robby Stephenson svn path=/trunk/KDE/kdelibs/; revision=933023 --- modules/FindPulseAudio.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index f3569a31..3a014012 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -30,8 +30,8 @@ endif (NOT WIN32) FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h HINTS - ${PC_PULSEADUIO_INCLUDEDIR} - ${PC_PULSEADUIO_INCLUDE_DIRS} + ${PC_PULSEAUDIO_INCLUDEDIR} + ${PC_PULSEAUDIO_INCLUDE_DIRS} ) FIND_LIBRARY(PULSEAUDIO_LIBRARY NAMES pulse libpulse -- cgit v1.2.1 From b32cde33229975966e54e31f19b90629056c9fb5 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sat, 28 Feb 2009 12:19:41 +0000 Subject: Add SOPRANO_PLUGIN_VIRTUOSOBACKEND_FOUND svn path=/trunk/KDE/kdelibs/; revision=933219 --- modules/FindSoprano.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index fc00a9c9..ad608962 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -16,6 +16,7 @@ # SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND - true if the raptorserializer plugin is found # SOPRANO_PLUGIN_REDLANDBACKEND_FOUND - true if the redlandbackend plugin is found # SOPRANO_PLUGIN_SESAME2BACKEND_FOUND - true if the sesame2backend plugin is found +# SOPRANO_PLUGIN_VIRTUOSOBACKEND_FOUND - true if the virtuosobackend plugin is found # # Options: # Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) @@ -164,6 +165,11 @@ set(_plugins "${_plugins} sesame2backend") endif(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) + if(EXISTS ${SOPRANO_PLUGIN_DIR}/virtuosobackend.desktop) + set(SOPRANO_PLUGIN_VIRTUOSOBACKEND_FOUND TRUE) + set(_plugins "${_plugins} virtuosobackend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/virtuosobackend.desktop) + endif(Soprano_FOUND) if(Soprano_FOUND) -- cgit v1.2.1 From 3613f31ef1873544c274a1b77365e53464b720db Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 1 Mar 2009 17:19:39 +0000 Subject: fix a typo where OPTIONAL could be printed for missing *required* features. svn path=/trunk/KDE/kdelibs/; revision=933810 --- modules/MacroLogFeature.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 21f6ddbd..ebaf9d18 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -122,7 +122,7 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) IF (EXISTS ${_missingFile}) SET(_missingDeps 1) FILE(READ ${_missingFile} _requirements) - SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n-----------------------------------------------------------------------------\n${_requirements}") + SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n-----------------------------------------------------------------------------\n${_requirements}") FILE(REMOVE ${_missingFile}) SET(_haveMissingReq 1) ENDIF (EXISTS ${_missingFile}) -- cgit v1.2.1 From 6bed940f12ef980a97332c59abab13f6960bb5c6 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 4 Mar 2009 17:54:01 +0000 Subject: Support for .kcfg files being generated using configure_file like tmcguire wants to do in kmail. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=935251 --- modules/KDE4Macros.cmake | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4ae57fce..7384e70f 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -70,13 +70,21 @@ macro (KDE4_ADD_KCFG_FILES _sources ) set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + set(_kcfg_PATH ${_abs_PATH}/${_kcfg_FILE}) + # Maybe the .kcfg is a generated file? + if(NOT EXISTS "${_kcfg_PATH}") + set(_kcfg_PATH ${CMAKE_CURRENT_BINARY_DIR}/${_kcfg_FILE}) + endif(NOT EXISTS "${_kcfg_PATH}") + if(NOT EXISTS "${_kcfg_PATH}") + message(ERROR "${_kcfg_FILE} not found; tried in ${_abs_PATH} and ${CMAKE_CURRENT_BINARY_DIR}") + endif(NOT EXISTS "${_kcfg_PATH}") # the command for creating the source file from the kcfg file add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} - ARGS ${_abs_PATH}/${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} + ARGS ${_kcfg_PATH} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} MAIN_DEPENDENCY ${_tmp_FILE} - DEPENDS ${_abs_PATH}/${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) + DEPENDS ${_kcfg_PATH} ${_KDE4_KCONFIG_COMPILER_DEP} ) if(_kcfg_generatemoc) qt4_generate_moc(${_header_FILE} ${_moc_FILE} ) -- cgit v1.2.1 From 758460bad1654d1cfc469820470760f27d85d3a2 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 7 Mar 2009 19:25:39 +0000 Subject: define UNICODE also for mingw make w2k the lowest win version we support svn path=/trunk/KDE/kdelibs/; revision=936493 --- modules/FindKDE4Internal.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 09115cf7..18a55304 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -802,7 +802,7 @@ if (WIN32) # windows, microsoft compiler if(MSVC) - set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN -DUNICODE ) + set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN ) # C4250: 'class1' : inherits 'class2::member' via dominance set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' @@ -827,6 +827,9 @@ if (WIN32) set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" CACHE STATIC "MSVC IDE Run path" FORCE) endif(MSVC_IDE) + + # we don't support anything below w2k and all winapi calls are unicodes + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0500 -DUNICODE" ) endif (WIN32) -- cgit v1.2.1 From 206879ba8676585e80e3a13de8d875140855efc6 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 8 Mar 2009 18:06:06 +0000 Subject: we need to define _WIN32_IE too (for mingw) svn path=/trunk/KDE/kdelibs/; revision=936949 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 18a55304..85bb71c2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -829,7 +829,7 @@ if (WIN32) endif(MSVC_IDE) # we don't support anything below w2k and all winapi calls are unicodes - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0500 -DUNICODE" ) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0500 -D_WIN32_IE=0x0500 -DUNICODE" ) endif (WIN32) -- cgit v1.2.1 From b2cc675c861d7f0d67b4bd75d7ab3bdf70a7dbba Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Sun, 8 Mar 2009 22:09:35 +0000 Subject: cmake check for finding IOKit on Mac OS X svn path=/trunk/KDE/kdelibs/; revision=937040 --- modules/FindIOKit.cmake | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 modules/FindIOKit.cmake (limited to 'modules') diff --git a/modules/FindIOKit.cmake b/modules/FindIOKit.cmake new file mode 100644 index 00000000..f3e3ecb2 --- /dev/null +++ b/modules/FindIOKit.cmake @@ -0,0 +1,23 @@ +# - Find IOKit on Mac +# +# IOKIT_LIBRARY - the library to use IOKit +# IOKIT_FOUND - true if IOKit has been found + +# Copyright (c) 2009, Harald Fernengel +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +include(CMakeFindFrameworks) + +cmake_find_frameworks(IOKit) +cmake_find_frameworks(CoreFoundation) + +if (IOKit_FRAMEWORKS) + set(IOKIT_LIBRARY "-framework IOKit -framework CoreFoundation" CACHE FILEPATH "IOKit framework" FORCE) + set(IOKIT_FOUND 1) +endif (IOKit_FRAMEWORKS) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(IOKit DEFAULT_MSG IOKIT_LIBRARY) + -- cgit v1.2.1 From 8660472cecf9357344f601a40a8e7c6f5608dc0a Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 9 Mar 2009 14:43:33 +0000 Subject: Improve the sentence svn path=/trunk/KDE/kdelibs/; revision=937330 --- modules/MacroOptionalDependPackage.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalDependPackage.cmake b/modules/MacroOptionalDependPackage.cmake index 1a6df36a..bc7b671b 100644 --- a/modules/MacroOptionalDependPackage.cmake +++ b/modules/MacroOptionalDependPackage.cmake @@ -13,10 +13,10 @@ MACRO (MACRO_OPTIONAL_DEPEND_PACKAGE _name _module_needed) set(_packagename Find${_name}.cmake) find_file(_PACKAGE_DEPEND_FOUND ${_packagename} PATHS ${CMAKE_MODULE_PATH} ) if(NOT _PACKAGE_DEPEND_FOUND) - MESSAGE(STATUS "cmake package ${_packagename} was not found. This package needs ${_module_needed} to be compile all program") - set(DEPEND_PACKAGE_${_name} FALSE) + MESSAGE(STATUS "optional cmake package ${_packagename} (for ${_module_needed}) was not found.") + set(DEPEND_PACKAGE_${_name} FALSE) else(NOT _PACKAGE_DEPEND_FOUND) - set(DEPEND_PACKAGE_${_name} TRUE) + set(DEPEND_PACKAGE_${_name} TRUE) endif(NOT _PACKAGE_DEPEND_FOUND) ENDMACRO (MACRO_OPTIONAL_DEPEND_PACKAGE) -- cgit v1.2.1 From 85e20f5fffa43268e3ca4a5f745f4e1910cf3fea Mon Sep 17 00:00:00 2001 From: David Jarvie Date: Wed, 11 Mar 2009 00:51:46 +0000 Subject: Add a variant of the standard cmake FindPkgConfig.cmake, which provides a QUIET option to pkg_check_modules() to suppress error messages if pkgconfig has not found the package. svn path=/trunk/KDE/kdelibs/; revision=938016 --- modules/FindPkgConfig.cmake | 376 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 376 insertions(+) create mode 100644 modules/FindPkgConfig.cmake (limited to 'modules') diff --git a/modules/FindPkgConfig.cmake b/modules/FindPkgConfig.cmake new file mode 100644 index 00000000..b2f5ea57 --- /dev/null +++ b/modules/FindPkgConfig.cmake @@ -0,0 +1,376 @@ +# - a pkg-config module for CMake +# +# Usage: +# pkg_check_modules( [REQUIRED] [QUIET] []*) +# checks for all the given modules +# +# pkg_search_module( [REQUIRED] []*) +# checks for given modules and uses the first working one +# +# When the 'REQUIRED' argument was set, macros will fail with an error +# when module(s) could not be found +# +# When the 'QUIET' argument is set, no error message will be output if +# the package was not found. +# +# It sets the following variables: +# PKG_CONFIG_FOUND ... true if pkg-config works on the system +# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program +# _FOUND ... set to 1 if module(s) exist +# +# For the following variables two sets of values exist; first one is the +# common one and has the given PREFIX. The second set contains flags +# which are given out when pkgconfig was called with the '--static' +# option. +# _LIBRARIES ... only the libraries (w/o the '-l') +# _LIBRARY_DIRS ... the paths of the libraries (w/o the '-L') +# _LDFLAGS ... all required linker flags +# _LDFLAGS_OTHER ... all other linker flags +# _INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I') +# _CFLAGS ... all required cflags +# _CFLAGS_OTHER ... the other compiler flags +# +# = for common case +# = _STATIC for static linking +# +# There are some special variables whose prefix depends on the count +# of given modules. When there is only one module, stays +# unchanged. When there are multiple modules, the prefix will be +# changed to _: +# _VERSION ... version of the module +# _PREFIX ... prefix-directory of the module +# _INCLUDEDIR ... include-dir of the module +# _LIBDIR ... lib-dir of the module +# +# = when |MODULES| == 1, else +# = _ +# +# A parameter can have the following formats: +# {MODNAME} ... matches any version +# {MODNAME}>={VERSION} ... at least version is required +# {MODNAME}={VERSION} ... exactly version is required +# {MODNAME}<={VERSION} ... modules must not be newer than +# +# Examples +# pkg_check_modules (GLIB2 glib-2.0) +# +# pkg_check_modules (GLIB2 glib-2.0>=2.10) +# requires at least version 2.10 of glib2 and defines e.g. +# GLIB2_VERSION=2.10.3 +# +# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0) +# requires both glib2 and gtk2, and defines e.g. +# FOO_glib-2.0_VERSION=2.10.3 +# FOO_gtk+-2.0_VERSION=2.8.20 +# +# pkg_check_modules (XRENDER REQUIRED xrender) +# defines e.g.: +# XRENDER_LIBRARIES=Xrender;X11 +# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp +# +# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2) + + +# Copyright (C) 2006 Enrico Scholz +# +# Redistribution and use, with or without modification, are permitted +# provided that the following conditions are met: +# +# 1. Redistributions must retain the above copyright notice, this +# list of conditions and the following disclaimer. +# 2. The name of the author may not be used to endorse or promote +# products derived from this software without specific prior +# written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Modified for KDE use from cmake 2.6.2 version, to add QUIET option to +# pkg_check_modules(). +# Copyright (c) 2009, David Jarvie +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + + +### Common stuff #### +set(PKG_CONFIG_VERSION 1) +set(PKG_CONFIG_FOUND 0) + +find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable") +mark_as_advanced(PKG_CONFIG_EXECUTABLE) + +if(PKG_CONFIG_EXECUTABLE) + set(PKG_CONFIG_FOUND 1) +endif(PKG_CONFIG_EXECUTABLE) + + +# Unsets the given variables +macro(_pkgconfig_unset var) + set(${var} "" CACHE INTERNAL "") +endmacro(_pkgconfig_unset) + +macro(_pkgconfig_set var value) + set(${var} ${value} CACHE INTERNAL "") +endmacro(_pkgconfig_set) + +# Invokes pkgconfig, cleans up the result and sets variables +macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp) + set(_pkgconfig_invoke_result) + + execute_process( + COMMAND ${PKG_CONFIG_EXECUTABLE} ${ARGN} ${_pkglist} + OUTPUT_VARIABLE _pkgconfig_invoke_result + RESULT_VARIABLE _pkgconfig_failed) + + if (_pkgconfig_failed) + set(_pkgconfig_${_varname} "") + _pkgconfig_unset(${_prefix}_${_varname}) + else(_pkgconfig_failed) + string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") + string(REGEX REPLACE " +$" "" _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") + + if (NOT ${_regexp} STREQUAL "") + string(REGEX REPLACE "${_regexp}" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}") + endif(NOT ${_regexp} STREQUAL "") + + separate_arguments(_pkgconfig_invoke_result) + + #message(STATUS " ${_varname} ... ${_pkgconfig_invoke_result}") + set(_pkgconfig_${_varname} ${_pkgconfig_invoke_result}) + _pkgconfig_set(${_prefix}_${_varname} "${_pkgconfig_invoke_result}") + endif(_pkgconfig_failed) +endmacro(_pkgconfig_invoke) + +# Invokes pkgconfig two times; once without '--static' and once with +# '--static' +macro(_pkgconfig_invoke_dyn _pkglist _prefix _varname cleanup_regexp) + _pkgconfig_invoke("${_pkglist}" ${_prefix} ${_varname} "${cleanup_regexp}" ${ARGN}) + _pkgconfig_invoke("${_pkglist}" ${_prefix} STATIC_${_varname} "${cleanup_regexp}" --static ${ARGN}) +endmacro(_pkgconfig_invoke_dyn) + +# Splits given arguments into options and a package list +macro(_pkgconfig_parse_options _result _is_req _is_silent) + set(${_is_req} 0) + set(${_is_silent} 0) + + foreach(_pkg ${ARGN}) + if (_pkg STREQUAL "REQUIRED") + set(${_is_req} 1) + endif (_pkg STREQUAL "REQUIRED") + if (_pkg STREQUAL "QUIET") + set(${_is_silent} 1) + endif (_pkg STREQUAL "QUIET") + endforeach(_pkg ${ARGN}) + + set(${_result} ${ARGN}) + list(REMOVE_ITEM ${_result} "REQUIRED") + list(REMOVE_ITEM ${_result} "QUIET") +endmacro(_pkgconfig_parse_options) + +### +macro(_pkg_check_modules_internal _is_required _is_silent _prefix) + _pkgconfig_unset(${_prefix}_FOUND) + _pkgconfig_unset(${_prefix}_VERSION) + _pkgconfig_unset(${_prefix}_PREFIX) + _pkgconfig_unset(${_prefix}_INCLUDEDIR) + _pkgconfig_unset(${_prefix}_LIBDIR) + _pkgconfig_unset(${_prefix}_LIBS) + _pkgconfig_unset(${_prefix}_LIBS_L) + _pkgconfig_unset(${_prefix}_LIBS_PATHS) + _pkgconfig_unset(${_prefix}_LIBS_OTHER) + _pkgconfig_unset(${_prefix}_CFLAGS) + _pkgconfig_unset(${_prefix}_CFLAGS_I) + _pkgconfig_unset(${_prefix}_CFLAGS_OTHER) + _pkgconfig_unset(${_prefix}_STATIC_LIBDIR) + _pkgconfig_unset(${_prefix}_STATIC_LIBS) + _pkgconfig_unset(${_prefix}_STATIC_LIBS_L) + _pkgconfig_unset(${_prefix}_STATIC_LIBS_PATHS) + _pkgconfig_unset(${_prefix}_STATIC_LIBS_OTHER) + _pkgconfig_unset(${_prefix}_STATIC_CFLAGS) + _pkgconfig_unset(${_prefix}_STATIC_CFLAGS_I) + _pkgconfig_unset(${_prefix}_STATIC_CFLAGS_OTHER) + + # create a better addressable variable of the modules and calculate its size + set(_pkg_check_modules_list ${ARGN}) + list(LENGTH _pkg_check_modules_list _pkg_check_modules_cnt) + + if(PKG_CONFIG_EXECUTABLE) + # give out status message telling checked module + if (NOT ${_is_silent}) + if (_pkg_check_modules_cnt EQUAL 1) + message(STATUS "checking for module '${_pkg_check_modules_list}'") + else(_pkg_check_modules_cnt EQUAL 1) + message(STATUS "checking for modules '${_pkg_check_modules_list}'") + endif(_pkg_check_modules_cnt EQUAL 1) + endif(NOT ${_is_silent}) + + set(_pkg_check_modules_packages) + set(_pkg_check_modules_failed) + + # iterate through module list and check whether they exist and match the required version + foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list}) + set(_pkg_check_modules_exist_query) + + # check whether version is given + if (_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") + string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\1" _pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}") + string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\2" _pkg_check_modules_pkg_op "${_pkg_check_modules_pkg}") + string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\3" _pkg_check_modules_pkg_ver "${_pkg_check_modules_pkg}") + else(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") + set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}") + set(_pkg_check_modules_pkg_op) + set(_pkg_check_modules_pkg_ver) + endif(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*") + + # handle the operands + if (_pkg_check_modules_pkg_op STREQUAL ">=") + list(APPEND _pkg_check_modules_exist_query --atleast-version) + endif(_pkg_check_modules_pkg_op STREQUAL ">=") + + if (_pkg_check_modules_pkg_op STREQUAL "=") + list(APPEND _pkg_check_modules_exist_query --exact-version) + endif(_pkg_check_modules_pkg_op STREQUAL "=") + + if (_pkg_check_modules_pkg_op STREQUAL "<=") + list(APPEND _pkg_check_modules_exist_query --max-version) + endif(_pkg_check_modules_pkg_op STREQUAL "<=") + + # create the final query which is of the format: + # * --atleast-version + # * --exact-version + # * --max-version + # * --exists + if (_pkg_check_modules_pkg_op) + list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}") + else(_pkg_check_modules_pkg_op) + list(APPEND _pkg_check_modules_exist_query --exists) + endif(_pkg_check_modules_pkg_op) + + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION) + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX) + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR) + _pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR) + + list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}") + list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}") + + # execute the query + execute_process( + COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query} + RESULT_VARIABLE _pkgconfig_retval) + + # evaluate result and tell failures + if (_pkgconfig_retval) + if(NOT ${_is_silent}) + message(STATUS " package '${_pkg_check_modules_pkg}' not found") + endif(NOT ${_is_silent}) + + set(_pkg_check_modules_failed 1) + endif(_pkgconfig_retval) + endforeach(_pkg_check_modules_pkg) + + if(_pkg_check_modules_failed) + # fail when requested + if (${_is_required}) + message(SEND_ERROR "A required package was not found") + endif (${_is_required}) + else(_pkg_check_modules_failed) + # when we are here, we checked whether requested modules + # exist. Now, go through them and set variables + + _pkgconfig_set(${_prefix}_FOUND 1) + list(LENGTH _pkg_check_modules_packages pkg_count) + + # iterate through all modules again and set individual variables + foreach (_pkg_check_modules_pkg ${_pkg_check_modules_packages}) + # handle case when there is only one package required + if (pkg_count EQUAL 1) + set(_pkg_check_prefix "${_prefix}") + else(pkg_count EQUAL 1) + set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}") + endif(pkg_count EQUAL 1) + + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion ) + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" PREFIX "" --variable=prefix ) + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir ) + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" LIBDIR "" --variable=libdir ) + + message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}") + endforeach(_pkg_check_modules_pkg) + + # set variables which are combined for multiple modules + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARY_DIRS "(^| )-L" --libs-only-L ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS "" --libs ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS_OTHER "" --libs-only-other ) + + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags ) + _pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other ) + endif(_pkg_check_modules_failed) + else(PKG_CONFIG_EXECUTABLE) + if (${_is_required}) + message(SEND_ERROR "pkg-config tool not found") + endif (${_is_required}) + endif(PKG_CONFIG_EXECUTABLE) +endmacro(_pkg_check_modules_internal) + +### +### User visible macros start here +### + +### +macro(pkg_check_modules _prefix _module0) + # check cached value + if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND) + _pkgconfig_parse_options (_pkg_modules _pkg_is_required _pkg_is_silent "${_module0}" ${ARGN}) + _pkg_check_modules_internal("${_pkg_is_required}" "${_pkg_is_silent}" "${_prefix}" ${_pkg_modules}) + + _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION}) + endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND) +endmacro(pkg_check_modules) + +### +macro(pkg_search_module _prefix _module0) + # check cached value + if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND) + set(_pkg_modules_found 0) + _pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required _pkg_is_silent "${_module0}" ${ARGN}) + + message(STATUS "checking for one of the modules '${_pkg_modules_alt}'") + + # iterate through all modules and stop at the first working one. + foreach(_pkg_alt ${_pkg_modules_alt}) + if(NOT _pkg_modules_found) + _pkg_check_modules_internal(0 1 "${_prefix}" "${_pkg_alt}") + endif(NOT _pkg_modules_found) + + if (${_prefix}_FOUND) + set(_pkg_modules_found 1) + endif(${_prefix}_FOUND) + endforeach(_pkg_alt) + + if (NOT ${_prefix}_FOUND) + if(${_pkg_is_required}) + message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found") + endif(${_pkg_is_required}) + endif(NOT ${_prefix}_FOUND) + + _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION}) + endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND) +endmacro(pkg_search_module) + +### Local Variables: +### mode: cmake +### End: -- cgit v1.2.1 From ac954219018fac1c1cae99b6e69be9438e452233 Mon Sep 17 00:00:00 2001 From: David Jarvie Date: Wed, 11 Mar 2009 22:39:22 +0000 Subject: Suppress 'not found' messages from pkgconfig when the module subsequently attempts to locate the package by other means. svn path=/trunk/KDE/kdelibs/; revision=938476 --- modules/FindAGG.cmake | 2 +- modules/FindBlitz.cmake | 2 +- modules/FindBlueZ.cmake | 2 +- modules/FindENCHANT.cmake | 2 +- modules/FindFontconfig.cmake | 2 +- modules/FindGStreamer.cmake | 2 +- modules/FindLCMS.cmake | 2 +- modules/FindLibArt.cmake | 2 +- modules/FindLibXml2.cmake | 2 +- modules/FindLibXslt.cmake | 2 +- modules/FindOpenEXR.cmake | 2 +- modules/FindPCRE.cmake | 2 +- modules/FindPulseAudio.cmake | 4 ++-- modules/FindQCA2.cmake | 2 +- modules/FindQImageBlitz.cmake | 2 +- modules/FindSqlite.cmake | 2 +- modules/FindStrigi.cmake | 2 +- modules/FindUSB.cmake | 2 +- modules/FindXine.cmake | 2 +- modules/FindXmms.cmake | 2 +- 20 files changed, 21 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 94d68da4..86d5618a 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -21,7 +21,7 @@ else (AGG_INCLUDE_DIR AND AGG_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_AGG libagg) + pkg_check_modules(PC_AGG QUIET libagg) set(AGG_DEFINITIONS ${PC_AGG_CFLAGS_OTHER}) endif (NOT WIN32) diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index 2427999e..a3abd6b0 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -23,7 +23,7 @@ if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_BLITZ qimageblitz) + pkg_check_modules(PC_BLITZ QUIET qimageblitz) endif (NOT WIN32) find_path(BLITZ_INCLUDES diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake index 8601b935..8332797f 100644 --- a/modules/FindBlueZ.cmake +++ b/modules/FindBlueZ.cmake @@ -25,7 +25,7 @@ endif ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) if( NOT WIN32 ) find_package(PkgConfig) - pkg_check_modules(PC_BLUEZ bluez) + pkg_check_modules(PC_BLUEZ QUIET bluez) set(BLUEZ_DEFINITIONS ${PC_BLUEZ_CFLAGS_OTHER}) endif( NOT WIN32 ) diff --git a/modules/FindENCHANT.cmake b/modules/FindENCHANT.cmake index 0b30f326..9c13c488 100644 --- a/modules/FindENCHANT.cmake +++ b/modules/FindENCHANT.cmake @@ -22,7 +22,7 @@ else (ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_ENCHANT enchant) + pkg_check_modules(PC_ENCHANT QUIET enchant) set(ENCHANT_DEFINITIONS ${PC_ENCHANT_CFLAGS_OTHER}) endif (NOT WIN32) diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 268a61ae..5e2f3ead 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -23,7 +23,7 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_FONTCONFIG fontconfig) + pkg_check_modules(PC_FONTCONFIG QUIET fontconfig) set(FONTCONFIG_DEFINITIONS ${PC_FONTCONFIG_CFLAGS_OTHER}) endif (NOT WIN32) diff --git a/modules/FindGStreamer.cmake b/modules/FindGStreamer.cmake index 8e98b892..43793711 100644 --- a/modules/FindGStreamer.cmake +++ b/modules/FindGStreamer.cmake @@ -24,7 +24,7 @@ IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls FIND_PACKAGE(PkgConfig) - PKG_CHECK_MODULES(PC_GSTREAMER gstreamer-0.10) + PKG_CHECK_MODULES(PC_GSTREAMER QUIET gstreamer-0.10) #MESSAGE(STATUS "DEBUG: GStreamer include directory = ${GSTREAMER_INCLUDE_DIRS}") #MESSAGE(STATUS "DEBUG: GStreamer link directory = ${GSTREAMER_LIBRARY_DIRS}") #MESSAGE(STATUS "DEBUG: GStreamer CFlags = ${GSTREAMER_CFLAGS_OTHER}") diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 9d162d2c..cbb6b179 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -17,7 +17,7 @@ # in the FIND_PATH() and FIND_LIBRARY() calls if(NOT WIN32) find_package(PkgConfig) - pkg_check_modules(PC_LCMS lcms) + pkg_check_modules(PC_LCMS QUIET lcms) set(LCMS_DEFINITIONS ${PC_LCMS_CFLAGS_OTHER}) endif(NOT WIN32) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 99eaff65..b14cd9db 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -23,7 +23,7 @@ else (LIBART_INCLUDE_DIR AND LIBART_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - pkg_check_modules(PC_LIBART libart-2.0) + pkg_check_modules(PC_LIBART QUIET libart-2.0) ######### ?? where is this used ?? ############### set(LIBART_DEFINITIONS ${PC_LIBART_CFLAGS_OTHER}) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index 453c261b..83858047 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -22,7 +22,7 @@ IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls FIND_PACKAGE(PkgConfig) - PKG_CHECK_MODULES(PC_LIBXML libxml-2.0) + PKG_CHECK_MODULES(PC_LIBXML QUIET libxml-2.0) SET(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS_OTHER}) ENDIF (NOT WIN32) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 3a1bcd46..1c55c4c5 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -22,7 +22,7 @@ IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_XSLT libxslt) + pkg_check_modules(PC_XSLT QUIET libxslt) SET(LIBXSLT_DEFINITIONS ${PC_XSLT_CFLAGS_OTHER}) ENDIF (NOT WIN32) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index eb3829cb..405b892d 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -21,7 +21,7 @@ else (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_OPENEXR OpenEXR) + pkg_check_modules(PC_OPENEXR QUIET OpenEXR) FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h HINTS diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index efba0652..c8f8326d 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -22,7 +22,7 @@ if (NOT WIN32) # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_PCRE libpcre) + pkg_check_modules(PC_PCRE QUIET libpcre) set(PCRE_DEFINITIONS ${PC_PCRE_CFLAGS_OTHER}) diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index 3a014012..dbb1f6b5 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -24,8 +24,8 @@ endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY AND PULSEAUDIO_MAINLOOP_LIB if (NOT WIN32) include(FindPkgConfig) - pkg_check_modules(PC_PULSEAUDIO libpulse>=${PULSEAUDIO_MINIMUM_VERSION}) - pkg_check_modules(PC_PULSEAUDIO_MAINLOOP libpulse-mainloop-glib) + pkg_check_modules(PC_PULSEAUDIO QUIET libpulse>=${PULSEAUDIO_MINIMUM_VERSION}) + pkg_check_modules(PC_PULSEAUDIO_MAINLOOP QUIET libpulse-mainloop-glib) endif (NOT WIN32) FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 9966c224..478105f4 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -26,7 +26,7 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) if (NOT WIN32) find_package(PkgConfig) - pkg_check_modules(PC_QCA2 qca2) + pkg_check_modules(PC_QCA2 QUIET qca2) set(QCA2_DEFINITIONS ${PC_QCA2_CFLAGS_OTHER}) endif (NOT WIN32) diff --git a/modules/FindQImageBlitz.cmake b/modules/FindQImageBlitz.cmake index 9e31c047..232d7c40 100644 --- a/modules/FindQImageBlitz.cmake +++ b/modules/FindQImageBlitz.cmake @@ -20,7 +20,7 @@ if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_QIMAGEBLITZ qimageblitz) + pkg_check_modules(PC_QIMAGEBLITZ QUIET qimageblitz) endif (NOT WIN32) find_path(QIMAGEBLITZ_INCLUDES diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index 2fa76330..dc36457b 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -25,7 +25,7 @@ endif ( SQLITE_INCLUDE_DIR AND SQLITE_LIBRARIES ) if( NOT WIN32 ) find_package(PkgConfig) - pkg_check_modules(PC_SQLITE sqlite3) + pkg_check_modules(PC_SQLITE QUIET sqlite3) set(SQLITE_DEFINITIONS ${PC_SQLITE_CFLAGS_OTHER}) endif( NOT WIN32 ) diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index f0a3921e..57220678 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -55,7 +55,7 @@ else(STRIGI_CONFIG_FOUND_AND_HAS_COMPLETE_INFORMATION) if(NOT strigi_home) find_package(PkgConfig) if(PKG_CONFIG_EXECUTABLE) - pkg_check_modules(STRIGI libstreamanalyzer>=${STRIGI_MIN_VERSION}) + pkg_check_modules(STRIGI QUIET libstreamanalyzer>=${STRIGI_MIN_VERSION}) endif(PKG_CONFIG_EXECUTABLE) endif(NOT strigi_home) endif(NOT WIN32) diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index 566cdd8e..dfcf650c 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -21,7 +21,7 @@ else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_LIBUSB libusb) + pkg_check_modules(PC_LIBUSB QUIET libusb) ENDIF(NOT WIN32) FIND_PATH(LIBUSB_INCLUDE_DIR usb.h diff --git a/modules/FindXine.cmake b/modules/FindXine.cmake index 1223851b..4ad0c2a8 100644 --- a/modules/FindXine.cmake +++ b/modules/FindXine.cmake @@ -21,7 +21,7 @@ endif (XINE_INCLUDE_DIR AND XINE_LIBRARY) find_package(PkgConfig) if (PKG_CONFIG_FOUND) - pkg_check_modules(PC_LIBXINE libxine) + pkg_check_modules(PC_LIBXINE QUIET libxine) endif (PKG_CONFIG_FOUND) find_path(XINE_INCLUDE_DIR NAMES xine.h diff --git a/modules/FindXmms.cmake b/modules/FindXmms.cmake index c43893fb..9f2cdf26 100644 --- a/modules/FindXmms.cmake +++ b/modules/FindXmms.cmake @@ -22,7 +22,7 @@ else (XMMS_INCLUDE_DIRS AND XMMS_LIBRARIES) # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_XMMS xmms) + pkg_check_modules(PC_XMMS QUIET xmms) endif(NOT WIN32) find_path(XMMS_INCLUDE_DIRS xmmsctrl.h -- cgit v1.2.1 From 200901dce93b54946d79b6d38564cddf14990afe Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 17 Mar 2009 21:27:31 +0000 Subject: Add a cmake variable DISABLE_ALL_OPTIONAL_SUBDIRECTORIES which can be set to TRUE to disable all subdirectories by default This should make building project in a modular way easier. Alex svn path=/trunk/KDE/kdelibs/; revision=940644 --- modules/MacroOptionalAddSubdirectory.cmake | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/MacroOptionalAddSubdirectory.cmake b/modules/MacroOptionalAddSubdirectory.cmake index 32e25141..bf1196bf 100644 --- a/modules/MacroOptionalAddSubdirectory.cmake +++ b/modules/MacroOptionalAddSubdirectory.cmake @@ -9,6 +9,12 @@ # subdirectory. # This is useful if you want to compile only a subset of all # directories. +# +# If the CMake variable DISABLE_ALL_OPTIONAL_SUBDIRECTORIES is set to TRUE +# for the first CMake run on the project, all subdirectories will be disabled +# by default (but can of course be enabled via the respective options). +# E.g. the following will disable all subdirectories except the one named "kcalc": +# $ cmake -DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE -DBUILD_kcalc=TRUE # Copyright (c) 2007, Alexander Neundorf, # @@ -19,7 +25,11 @@ MACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY _dir ) GET_FILENAME_COMPONENT(_fullPath ${_dir} ABSOLUTE) IF(EXISTS ${_fullPath}) - SET(_DEFAULT_OPTION_VALUE TRUE) + IF(DISABLE_ALL_OPTIONAL_SUBDIRECTORIES) + SET(_DEFAULT_OPTION_VALUE FALSE) + ELSE(DISABLE_ALL_OPTIONAL_SUBDIRECTORIES) + SET(_DEFAULT_OPTION_VALUE TRUE) + ENDIF(DISABLE_ALL_OPTIONAL_SUBDIRECTORIES) IF(DISABLE_ALL_OPTIONAL_SUBDIRS AND NOT DEFINED BUILD_${_dir}) SET(_DEFAULT_OPTION_VALUE FALSE) ENDIF(DISABLE_ALL_OPTIONAL_SUBDIRS AND NOT DEFINED BUILD_${_dir}) -- cgit v1.2.1 From 402833335d31d0b7c445e082f1134357c68ed350 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 17 Mar 2009 22:03:56 +0000 Subject: -make documentation more exact Alex svn path=/trunk/KDE/kdelibs/; revision=940658 --- modules/MacroOptionalAddSubdirectory.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalAddSubdirectory.cmake b/modules/MacroOptionalAddSubdirectory.cmake index bf1196bf..5de49f95 100644 --- a/modules/MacroOptionalAddSubdirectory.cmake +++ b/modules/MacroOptionalAddSubdirectory.cmake @@ -11,9 +11,9 @@ # directories. # # If the CMake variable DISABLE_ALL_OPTIONAL_SUBDIRECTORIES is set to TRUE -# for the first CMake run on the project, all subdirectories will be disabled +# for the first CMake run on the project, all optional subdirectories will be disabled # by default (but can of course be enabled via the respective options). -# E.g. the following will disable all subdirectories except the one named "kcalc": +# E.g. the following will disable all optional subdirectories except the one named "kcalc": # $ cmake -DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE -DBUILD_kcalc=TRUE # Copyright (c) 2007, Alexander Neundorf, -- cgit v1.2.1 From 8315ebd18918dae0e2099119183da67e4d769039 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 19 Mar 2009 00:46:46 +0000 Subject: SOPRANO_PLUGIN_DIR should be advanced as the other SOPRANO_* variables Alex svn path=/trunk/KDE/kdelibs/; revision=941174 --- modules/FindSoprano.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index ad608962..c6a758cf 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -184,10 +184,10 @@ else(Soprano_FOUND) if(Soprano_FIND_REQUIRED) if(NOT SOPRANO_INCLUDE_DIR) - message(FATAL_ERROR "Could not find Soprano includes.") + message(FATAL_ERROR "Could not find Soprano includes.") endif(NOT SOPRANO_INCLUDE_DIR) if(NOT SOPRANO_LIBRARIES) - message(FATAL_ERROR "Could not find Soprano library.") + message(FATAL_ERROR "Could not find Soprano library.") endif(NOT SOPRANO_LIBRARIES) else(Soprano_FIND_REQUIRED) if(NOT SOPRANO_INCLUDE_DIR) @@ -199,6 +199,11 @@ endif(Soprano_FIND_REQUIRED) endif(Soprano_FOUND) -mark_as_advanced(SOPRANO_CLIENT_LIBRARIES SOPRANO_INDEX_LIBRARIES SOPRANO_LIBRARIES SOPRANO_SERVER_LIBRARIES SOPRANO_INCLUDE_DIR ) +mark_as_advanced(SOPRANO_CLIENT_LIBRARIES + SOPRANO_INDEX_LIBRARIES + SOPRANO_LIBRARIES + SOPRANO_SERVER_LIBRARIES + SOPRANO_INCLUDE_DIR + SOPRANO_PLUGIN_DIR) #endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) -- cgit v1.2.1 From b6b707c5d1cbb53bc3207e12cc57392feb150fa2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 19 Mar 2009 00:49:58 +0000 Subject: -mark more variables as advanced Alex svn path=/trunk/KDE/kdelibs/; revision=941175 --- modules/FindStrigi.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 57220678..57f2199b 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -173,8 +173,14 @@ endif(WIN32) mark_as_advanced( STRIGI_INCLUDE_DIR STRIGI_STREAMANALYZER_LIBRARY + STRIGI_STREAMANALYZER_LIBRARY_DEBUG + STRIGI_STREAMANALYZER_LIBRARY_RELEASE STRIGI_STREAMS_LIBRARY + STRIGI_STREAMS_LIBRARY_DEBUG + STRIGI_STREAMS_LIBRARY_RELEASE STRIGI_STRIGIQTDBUSCLIENT_LIBRARY + STRIGI_STRIGIQTDBUSCLIENT_LIBRARY_DEBUG + STRIGI_STRIGIQTDBUSCLIENT_LIBRARY_RELEASE STRIGI_LINE_ANALYZER_PREFIX STRIGI_THROUGH_ANALYZER_PREFIX STRIGI_NEEDS_SIGNED_CHAR -- cgit v1.2.1 From 3e31cecffb401508cd893032be8b77889c721b83 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 19 Mar 2009 00:55:45 +0000 Subject: -add modified versions of CheckCXXSourceRuns/Compiles.cmake, which can handle imported library targets (see http://lists.kde.org/?t=123686453500002&r=1&w=2 ) Alex svn path=/trunk/KDE/kdelibs/; revision=941177 --- modules/CMakeLists.txt | 2 +- modules/CheckCXXSourceCompiles.cmake | 68 ++++++++++++++++++ modules/CheckCXXSourceRuns.cmake | 81 ++++++++++++++++++++++ ...leImportedTargetsInCMakeRequiredLibraries.cmake | 81 ++++++++++++++++++++++ 4 files changed, 231 insertions(+), 1 deletion(-) create mode 100644 modules/CheckCXXSourceCompiles.cmake create mode 100644 modules/CheckCXXSourceRuns.cmake create mode 100644 modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 675659c4..70df69b2 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,4 +1,4 @@ -# install the cmake files +## install the cmake files file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") diff --git a/modules/CheckCXXSourceCompiles.cmake b/modules/CheckCXXSourceCompiles.cmake new file mode 100644 index 00000000..ba7f185c --- /dev/null +++ b/modules/CheckCXXSourceCompiles.cmake @@ -0,0 +1,68 @@ +# - Check if the source code provided in the SOURCE argument compiles. +# CHECK_CXX_SOURCE_COMPILES(SOURCE VAR) +# - macro which checks if the source code compiles +# SOURCE - source code to try to compile +# VAR - variable to store whether the source code compiled +# +# The following variables may be set before calling this macro to +# modify the way the check is run: +# +# CMAKE_REQUIRED_FLAGS = string of compile command line flags +# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) +# CMAKE_REQUIRED_INCLUDES = list of include directories +# CMAKE_REQUIRED_LIBRARIES = list of libraries to link + +GET_FILENAME_COMPONENT(_CHECK_CXX_SOURCE_COMPILES_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) +INCLUDE(${_CHECK_CXX_SOURCE_COMPILES_DIR}/HandleImportedTargetsInCMakeRequiredLibraries.cmake) + + +MACRO(CHECK_CXX_SOURCE_COMPILES SOURCE VAR) + IF("${VAR}" MATCHES "^${VAR}$") + SET(MACRO_CHECK_FUNCTION_DEFINITIONS + "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") + IF(CMAKE_REQUIRED_LIBRARIES) + # this one translates potentially used imported library targets to their files on disk + HANDLE_IMPORTED_TARGETS_IN_CMAKE_REQUIRED_LIBRARIES(_CHECK_CXX_SOURCE_COMPILES_CMAKE_REQUIRED_LIBRARES) + + SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${_CHECK_CXX_SOURCE_COMPILES_CMAKE_REQUIRED_LIBRARES}") +# "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ELSE(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES) + ENDIF(CMAKE_REQUIRED_LIBRARIES) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ELSE(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES) + ENDIF(CMAKE_REQUIRED_INCLUDES) + FILE(WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.cxx" + "${SOURCE}\n") + + MESSAGE(STATUS "Performing Test ${VAR}") + TRY_COMPILE(${VAR} + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.cxx + COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS} + "${CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES}" + "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}" + OUTPUT_VARIABLE OUTPUT) + IF(${VAR}) + SET(${VAR} 1 CACHE INTERNAL "Test ${VAR}") + MESSAGE(STATUS "Performing Test ${VAR} - Success") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log + "Performing C++ SOURCE FILE Test ${VAR} succeded with the following output:\n" + "${OUTPUT}\n" + "Source file was:\n${SOURCE}\n") + ELSE(${VAR}) + MESSAGE(STATUS "Performing Test ${VAR} - Failed") + SET(${VAR} "" CACHE INTERNAL "Test ${VAR}") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log + "Performing C++ SOURCE FILE Test ${VAR} failed with the following output:\n" + "${OUTPUT}\n" + "Source file was:\n${SOURCE}\n") + ENDIF(${VAR}) + ENDIF("${VAR}" MATCHES "^${VAR}$") +ENDMACRO(CHECK_CXX_SOURCE_COMPILES) + diff --git a/modules/CheckCXXSourceRuns.cmake b/modules/CheckCXXSourceRuns.cmake new file mode 100644 index 00000000..c18d8b37 --- /dev/null +++ b/modules/CheckCXXSourceRuns.cmake @@ -0,0 +1,81 @@ +# - Check if the C++ source code provided in the SOURCE argument compiles and runs. +# CHECK_CXX_SOURCE_RUNS(SOURCE VAR) +# +# SOURCE - source code to try to compile +# VAR - variable to store the result, 1 for success, empty for failure +# +# The following variables may be set before calling this macro to +# modify the way the check is run: +# +# CMAKE_REQUIRED_FLAGS = string of compile command line flags +# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) +# CMAKE_REQUIRED_INCLUDES = list of include directories +# CMAKE_REQUIRED_LIBRARIES = list of libraries to link + +GET_FILENAME_COMPONENT(_CHECK_CXX_SOURCE_RUNS_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) +INCLUDE(${_CHECK_CXX_SOURCE_RUNS_DIR}/HandleImportedTargetsInCMakeRequiredLibraries.cmake) + +MACRO(CHECK_CXX_SOURCE_RUNS SOURCE VAR) + IF("${VAR}" MATCHES "^${VAR}$") + SET(MACRO_CHECK_FUNCTION_DEFINITIONS + "-D${VAR} ${CMAKE_REQUIRED_FLAGS}") + IF(CMAKE_REQUIRED_LIBRARIES) + # this one translates potentially used imported library targets to their files on disk + HANDLE_IMPORTED_TARGETS_IN_CMAKE_REQUIRED_LIBRARIES(_CHECK_CXX_SOURCE_RUNS_CMAKE_REQUIRED_LIBRARES) + + SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES + "-DLINK_LIBRARIES:STRING=${_CHECK_CXX_SOURCE_RUNS_CMAKE_REQUIRED_LIBRARES}") +# "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ELSE(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES) + ENDIF(CMAKE_REQUIRED_LIBRARIES) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ELSE(CMAKE_REQUIRED_INCLUDES) + SET(CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES) + ENDIF(CMAKE_REQUIRED_INCLUDES) + FILE(WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.cxx" + "${SOURCE}\n") + + MESSAGE(STATUS "Performing Test ${VAR}") + TRY_RUN(${VAR}_EXITCODE ${VAR}_COMPILED + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.cxx + COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS} + -DCMAKE_SKIP_RPATH:BOOL=${CMAKE_SKIP_RPATH} + "${CHECK_CXX_SOURCE_COMPILES_ADD_LIBRARIES}" + "${CHECK_CXX_SOURCE_COMPILES_ADD_INCLUDES}" + COMPILE_OUTPUT_VARIABLE OUTPUT) + + # if it did not compile make the return value fail code of 1 + IF(NOT ${VAR}_COMPILED) + SET(${VAR}_EXITCODE 1) + ENDIF(NOT ${VAR}_COMPILED) + # if the return value was 0 then it worked + IF("${${VAR}_EXITCODE}" EQUAL 0) + SET(${VAR} 1 CACHE INTERNAL "Test ${VAR}") + MESSAGE(STATUS "Performing Test ${VAR} - Success") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log + "Performing C++ SOURCE FILE Test ${VAR} succeded with the following output:\n" + "${OUTPUT}\n" + "Return value: ${${VAR}}\n" + "Source file was:\n${SOURCE}\n") + ELSE("${${VAR}_EXITCODE}" EQUAL 0) + IF(CMAKE_CROSSCOMPILING AND "${${VAR}_EXITCODE}" MATCHES "FAILED_TO_RUN") + SET(${VAR} "${${VAR}_EXITCODE}") + ELSE(CMAKE_CROSSCOMPILING AND "${${VAR}_EXITCODE}" MATCHES "FAILED_TO_RUN") + SET(${VAR} "" CACHE INTERNAL "Test ${VAR}") + ENDIF(CMAKE_CROSSCOMPILING AND "${${VAR}_EXITCODE}" MATCHES "FAILED_TO_RUN") + + MESSAGE(STATUS "Performing Test ${VAR} - Failed") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log + "Performing C++ SOURCE FILE Test ${VAR} failed with the following output:\n" + "${OUTPUT}\n" + "Return value: ${${VAR}_EXITCODE}\n" + "Source file was:\n${SOURCE}\n") + ENDIF("${${VAR}_EXITCODE}" EQUAL 0) + ENDIF("${VAR}" MATCHES "^${VAR}$") +ENDMACRO(CHECK_CXX_SOURCE_RUNS) + diff --git a/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake b/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake new file mode 100644 index 00000000..28564ab6 --- /dev/null +++ b/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake @@ -0,0 +1,81 @@ + +# This is a helper function used by CheckCXXSourceRuns.cmake and +# CheckCXXSourceCompiles.cmake. Actually it should be used by all macros which +# use TRY_COMPILE() or TRY_RUN(). +# It takes the CMAKE_REQUIRED_LIBRARY variable and searches it for imported +# (library) targets. Since the project created by TRY_COMPILE() (and TRY_RUN()) +# does not know about these imported targets, this macro here replaces these +# imported targets with the actual library files on disk and it also +# adds the libraries from the link interface of these imported targets. +# E.g the imported target KDE4__kdeui is replaced on my system with /opt/kdelibs/lib/libkdeui.so +# and the link interface libraries, which includes e.g. /opt/kdelibs/lib/libkdecore.so. +# This way imported targets work also when used with CHECK_CXX_SOURCE_COMPILES/RUNS(). + +# Copyright (c) 2009, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +FUNCTION(HANDLE_IMPORTED_TARGETS_IN_CMAKE_REQUIRED_LIBRARIES _RESULT) +# handle imported library targets + SET(_CCSR_IMP_TARGETS_MAP) + SET(_CCSR_REQ_LIBS ${CMAKE_REQUIRED_LIBRARIES}) + SET(_CHECK_FOR_IMPORTED_TARGETS TRUE) + SET(_CCSR_LOOP_COUNTER 0) + WHILE(_CHECK_FOR_IMPORTED_TARGETS) + MATH(EXPR _CCSR_LOOP_COUNTER "${_CCSR_LOOP_COUNTER} + 1 ") + SET(_CCSR_NEW_REQ_LIBS ) + SET(_CHECK_FOR_IMPORTED_TARGETS FALSE) + FOREACH(_CURRENT_LIB ${_CCSR_REQ_LIBS}) + GET_TARGET_PROPERTY(_importedConfigs ${_CURRENT_LIB} IMPORTED_CONFIGURATIONS) + IF (_importedConfigs) + # Ok, so this is an imported target. + # First we get the imported configurations. + # Then we get the location of the actual library on disk of the first configuration. + # then we'll get its link interface libraries property, + # iterate through it and replace all imported targets we find there + # with there actual location. + + # guard against infinite loop: abort after 100 iterations ( 100 is arbitrary chosen) + IF ("${_CCSR_LOOP_COUNTER}" LESS 100) + SET(_CHECK_FOR_IMPORTED_TARGETS TRUE) +# ELSE ("${_CCSR_LOOP_COUNTER}" LESS 1) +# MESSAGE(STATUS "********* aborting loop, counter : ${_CCSR_LOOP_COUNTER}") + ENDIF ("${_CCSR_LOOP_COUNTER}" LESS 100) + + LIST(GET _importedConfigs 0 _firstImportedConfig) + GET_TARGET_PROPERTY(_firstImportedLocation ${_CURRENT_LIB} LOCATION_${_firstImportedConfig}) + GET_TARGET_PROPERTY(_linkInterfaceLibs ${_CURRENT_LIB} IMPORTED_LINK_INTERFACE_LIBRARIES_${_firstImportedConfig} ) + + LIST(APPEND _CCSR_NEW_REQ_LIBS ${_firstImportedLocation}) +# MESSAGE(STATUS "Appending lib ${_CURRENT_LIB} as ${_firstImportedLocation}") + FOREACH(_currentLinkInterfaceLib ${_linkInterfaceLibs}) +# MESSAGE(STATUS "Appending link interface lib ${_currentLinkInterfaceLib}") + LIST(APPEND _CCSR_NEW_REQ_LIBS ${_currentLinkInterfaceLib} ) + ENDFOREACH(_currentLinkInterfaceLib ${_linkInterfaceLibs}) + ELSE(_importedConfigs) + # "Normal" libraries are just used as they are. + LIST(APPEND _CCSR_NEW_REQ_LIBS ${_CURRENT_LIB} ) +# MESSAGE(STATUS "Appending lib directly: ${_CURRENT_LIB}") + ENDIF(_importedConfigs) + ENDFOREACH(_CURRENT_LIB ${_CCSR_REQ_LIBS}) + + SET(_CCSR_REQ_LIBS ${_CCSR_NEW_REQ_LIBS} ) + ENDWHILE(_CHECK_FOR_IMPORTED_TARGETS) + + # Finally we iterate once more over all libraries. This loop only removes + # all remaining imported target names (there shouldn't be any left anyway). + SET(_CCSR_NEW_REQ_LIBS ) + FOREACH(_CURRENT_LIB ${_CCSR_REQ_LIBS}) + GET_TARGET_PROPERTY(_importedConfigs ${_CURRENT_LIB} IMPORTED_CONFIGURATIONS) + IF (NOT _importedConfigs) + LIST(APPEND _CCSR_NEW_REQ_LIBS ${_CURRENT_LIB} ) +# MESSAGE(STATUS "final: appending ${_CURRENT_LIB}") + ELSE (NOT _importedConfigs) +# MESSAGE(STATUS "final: skipping ${_CURRENT_LIB}") + ENDIF (NOT _importedConfigs) + ENDFOREACH(_CURRENT_LIB ${_CCSR_REQ_LIBS}) + SET(${_RESULT} ${_CCSR_NEW_REQ_LIBS} PARENT_SCOPE) + +ENDFUNCTION(HANDLE_IMPORTED_TARGETS_IN_CMAKE_REQUIRED_LIBRARIES _CCSR_REQ_LIBS) + -- cgit v1.2.1 From 851b948483811d367ed54441f3a1bf3dfbd06d04 Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 20 Mar 2009 00:03:20 +0000 Subject: SVN_SILENT fix typo in comment svn path=/trunk/KDE/kdelibs/; revision=941576 --- modules/KDE4Defaults.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 6407b3f3..1f2d07c0 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -7,7 +7,7 @@ if (EXISTS ${CMAKE_SOURCE_DIR}/CTestConfig.cmake) endif (EXISTS ${CMAKE_SOURCE_DIR}/CTestConfig.cmake) # Always include srcdir and builddir in include path -# This saves typing ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY} in about every subdir +# This saves typing ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} in about every subdir # since cmake 2.4.0 set(CMAKE_INCLUDE_CURRENT_DIR ON) -- cgit v1.2.1 From 11e81246749ceb069ac32a7bb8e622d2e0f5a6e7 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 21 Mar 2009 19:43:20 +0000 Subject: although we do support w2k, define win32_winnt to 0x0501 (winxp) to be able to use IPV6 defines (in k3socket*). svn path=/trunk/KDE/kdelibs/; revision=942460 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 85bb71c2..e182e50a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -829,7 +829,7 @@ if (WIN32) endif(MSVC_IDE) # we don't support anything below w2k and all winapi calls are unicodes - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0500 -D_WIN32_IE=0x0500 -DUNICODE" ) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0501 -D_WIN32_IE=0x0501 -DUNICODE" ) endif (WIN32) -- cgit v1.2.1 From 3906bdfc1e9489d2e65ed5e5295a0f9434dc9bc1 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Wed, 25 Mar 2009 04:53:33 +0000 Subject: forward-port various Mac OS X fixes from the 4.2 branch to trunk svn path=/trunk/KDE/kdelibs/; revision=944123 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7384e70f..280fbd39 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1067,7 +1067,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) message(STATUS "Unable to find the png2ico or windres utilities - application will not have an application icon!") endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) endif(WIN32) - if (APPLE) + if (Q_WS_MAC) # first convert image to a tiff using the Mac OS X "sips" utility, # then use tiff2icns to convert to an icon find_program(SIPS_EXECUTABLE NAMES sips) @@ -1112,7 +1112,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) else(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) message(STATUS "Unable to find the sips and tiff2icns utilities - application will not have an application icon!") endif(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) - endif(APPLE) + endif(Q_WS_MAC) endmacro (KDE4_ADD_APP_ICON) -- cgit v1.2.1 From 6eeed4de5687df7a65fdf1aa3771a17163a123e3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 27 Mar 2009 21:04:53 +0000 Subject: -don't require Perl for building any KDE4 app, this is not necessary (documented on techbase) -add a better message if Phonon could not be found Alex svn path=/trunk/KDE/kdelibs/; revision=945641 --- modules/FindKDE4Internal.cmake | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e182e50a..aa6b5b24 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -303,8 +303,18 @@ macro_ensure_version("0.9.87" "${AUTOMOC4_VERSION}" _automoc4_version_ok) # for compatibility with KDE 4.0.x set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) -# Perl is required for building KDE software -find_package(Perl ${_REQ_STRING_KDE4}) +# Perl is not required for building KDE software, but we had that here since 4.0 +find_package(Perl) +if(NOT PERL_FOUND) + message(STATUS "Perl not found") +endif(NOT PERL_FOUND) + +# only make Phonon REQUIRED if KDE4 itself is REQUIRED +find_package(Phonon ${_REQ_STRING_KDE4}) +set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) +set(KDE4_PHONON_LIBS ${PHONON_LIBS}) +set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) + # Check that we really found everything. # If KDE4 was searched with REQUIRED, we error out with FATAL_ERROR if something wasn't found @@ -312,16 +322,17 @@ find_package(Perl ${_REQ_STRING_KDE4}) # If KDE4 was searched without REQUIRED and something in the FIND_PACKAGE() calls above wasn't found, # then we get here and must check that everything has actually been found. If something is missing, # we must not fail with FATAL_ERROR, but only not set KDE4_FOUND. -if(NOT PERL_FOUND) - message(STATUS "KDE4 not found, because Perl not found") - return() -endif(NOT PERL_FOUND) if(NOT QT4_FOUND) - message(STATUS "KDE4 not found, because Qt4 not found") + message(STATUS "KDE4 not found, because Qt4 was not found") return() endif(NOT QT4_FOUND) +if(NOT PHONON_FOUND) + message(STATUS "KDE4 not found, because Phonon was not found") + return() +endif(NOT PHONON_FOUND) + if(NOT AUTOMOC4_FOUND OR NOT _automoc4_version_ok) if(NOT AUTOMOC4_FOUND) message(${_REQ_STRING_KDE4_MESSAGE} "KDE4 not found, because Automoc4 not found.") @@ -1159,11 +1170,6 @@ if (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs") endif (KDE4Internal_FIND_REQUIRED AND NOT KDE4_FOUND) -find_package(Phonon REQUIRED) -set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) -set(KDE4_PHONON_LIBS ${PHONON_LIBS}) -set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) - if (NOT KDE4Internal_FIND_QUIETLY) kde4_print_results() endif (NOT KDE4Internal_FIND_QUIETLY) -- cgit v1.2.1 From 4f6490f5fc3a2541af4aac5850e7eb9f171087d1 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 1 Apr 2009 15:26:25 +0000 Subject: Honour request from Alex to use _FILE for files, by using _FILENAME for "just the filename". svn path=/trunk/KDE/kdelibs/; revision=947898 --- modules/KDE4Macros.cmake | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 280fbd39..ce310ebf 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -66,25 +66,25 @@ macro (KDE4_ADD_KCFG_FILES _sources ) get_filename_component(_basename ${_tmp_FILE} NAME_WE) file(READ ${_tmp_FILE} _contents) - string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILE "${_contents}") + string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILENAME "${_contents}") set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - set(_kcfg_PATH ${_abs_PATH}/${_kcfg_FILE}) + set(_kcfg_FILE ${_abs_PATH}/${_kcfg_FILENAME}) # Maybe the .kcfg is a generated file? - if(NOT EXISTS "${_kcfg_PATH}") - set(_kcfg_PATH ${CMAKE_CURRENT_BINARY_DIR}/${_kcfg_FILE}) - endif(NOT EXISTS "${_kcfg_PATH}") - if(NOT EXISTS "${_kcfg_PATH}") - message(ERROR "${_kcfg_FILE} not found; tried in ${_abs_PATH} and ${CMAKE_CURRENT_BINARY_DIR}") - endif(NOT EXISTS "${_kcfg_PATH}") + if(NOT EXISTS "${_kcfg_FILE}") + set(_kcfg_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_kcfg_FILENAME}) + endif(NOT EXISTS "${_kcfg_FILE}") + if(NOT EXISTS "${_kcfg_FILE}") + message(ERROR "${_kcfg_FILENAME} not found; tried in ${_abs_PATH} and ${CMAKE_CURRENT_BINARY_DIR}") + endif(NOT EXISTS "${_kcfg_FILE}") # the command for creating the source file from the kcfg file add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} - ARGS ${_kcfg_PATH} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} + ARGS ${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} MAIN_DEPENDENCY ${_tmp_FILE} - DEPENDS ${_kcfg_PATH} ${_KDE4_KCONFIG_COMPILER_DEP} ) + DEPENDS ${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) if(_kcfg_generatemoc) qt4_generate_moc(${_header_FILE} ${_moc_FILE} ) -- cgit v1.2.1 From 10cc4b25a49c97e7b7d84cd60f8b2d6df8492743 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 10 Apr 2009 20:32:18 +0000 Subject: Fix the info message when REQUIRED packages are not found. svn path=/trunk/KDE/kdelibs/; revision=952070 --- modules/MacroLogFeature.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index ebaf9d18..9a487687 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -122,7 +122,7 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) IF (EXISTS ${_missingFile}) SET(_missingDeps 1) FILE(READ ${_missingFile} _requirements) - SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n-----------------------------------------------------------------------------\n${_requirements}") + SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- You must install them before this software installation can continue.\n-----------------------------------------------------------------------------\n${_requirements}") FILE(REMOVE ${_missingFile}) SET(_haveMissingReq 1) ENDIF (EXISTS ${_missingFile}) -- cgit v1.2.1 From 2d26fb16c057cfbd17c099bf113ec66ef1e9370c Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Fri, 10 Apr 2009 20:49:45 +0000 Subject: another try at making a nice message when a required package cannot be found. svn path=/trunk/KDE/kdelibs/; revision=952076 --- modules/MacroLogFeature.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 9a487687..5db50edf 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -122,7 +122,7 @@ MACRO(MACRO_DISPLAY_FEATURE_LOG) IF (EXISTS ${_missingFile}) SET(_missingDeps 1) FILE(READ ${_missingFile} _requirements) - SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- You must install them before this software installation can continue.\n-----------------------------------------------------------------------------\n${_requirements}") + SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- You must install these packages before continuing.\n-----------------------------------------------------------------------------\n${_requirements}") FILE(REMOVE ${_missingFile}) SET(_haveMissingReq 1) ENDIF (EXISTS ${_missingFile}) -- cgit v1.2.1 From 0573909d5ab4123c4cb85ea019464de98aa33ca4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 14 Apr 2009 20:37:12 +0000 Subject: -search for phonon after KDELibsDependencies.cmake has been included Alex svn path=/trunk/KDE/kdelibs/; revision=953958 --- modules/FindKDE4Internal.cmake | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index aa6b5b24..9cd93c8f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -204,11 +204,11 @@ # # A note on the possible values for CMAKE_BUILD_TYPE and how KDE handles # the flags for those buildtypes. FindKDE4Internal supports the values -# Debug, Release, RelWithDebInfo, Profile and Debugfull +# Debug, Release, RelWithDebInfo, Profile and Debugfull: # # Release # optimised for speed, qDebug/kDebug turned off, no debug symbols -# Release with debug info +# RelWithDebInfo (Release with debug info) # optimised for speed, debugging symbols on (-g) # Debug # optimised but debuggable, debugging on (-g) @@ -309,11 +309,11 @@ if(NOT PERL_FOUND) message(STATUS "Perl not found") endif(NOT PERL_FOUND) -# only make Phonon REQUIRED if KDE4 itself is REQUIRED -find_package(Phonon ${_REQ_STRING_KDE4}) -set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) -set(KDE4_PHONON_LIBS ${PHONON_LIBS}) -set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) + +# we check for Phonon not here, but further below, i.e. after KDELibsDependencies.cmake +# has been loaded, which helps in the case that phonon is installed to the same +# directory as kdelibs. +# find_package(Phonon ${_REQ_STRING_KDE4}) # Check that we really found everything. @@ -328,11 +328,6 @@ if(NOT QT4_FOUND) return() endif(NOT QT4_FOUND) -if(NOT PHONON_FOUND) - message(STATUS "KDE4 not found, because Phonon was not found") - return() -endif(NOT PHONON_FOUND) - if(NOT AUTOMOC4_FOUND OR NOT _automoc4_version_ok) if(NOT AUTOMOC4_FOUND) message(${_REQ_STRING_KDE4_MESSAGE} "KDE4 not found, because Automoc4 not found.") @@ -552,6 +547,25 @@ else (_kdeBootStrapping) endif (_kdeBootStrapping) + +################### try to find Phonon ############################################ + +# we do this here instead of above together with the checks for Perl etc. +# since FindPhonon.cmake also uses ${KDE4_LIB_INSTALL_DIR} to check for Phonon, +# which helps with finding the phonon installed as part of kdesupport: + +# only make Phonon REQUIRED if KDE4 itself is REQUIRED +find_package(Phonon ${_REQ_STRING_KDE4}) +set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) +set(KDE4_PHONON_LIBS ${PHONON_LIBS}) +set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) + +if(NOT PHONON_FOUND) + message(STATUS "KDE4 not found, because Phonon was not found") + return() +endif(NOT PHONON_FOUND) + + ##################### provide some options ########################################## option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") -- cgit v1.2.1 From 98ff7741015d6e0db548caf5a671dc8a70c17b11 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 14 Apr 2009 22:07:49 +0000 Subject: =?UTF-8?q?Add=20lzma/xz=20compression=20algorithm=20handling.=20O?= =?UTF-8?q?riginal=20code=20by=20Per=20=C3=98yvind=20Karlsen,=20=20Minor=20modifications=20bu=20Helio=20Castro=20?= =?UTF-8?q?=20Reviewed=20by=20David=20Faure?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit svn path=/trunk/KDE/kdelibs/; revision=954017 --- modules/FindLibLZMA.cmake | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 modules/FindLibLZMA.cmake (limited to 'modules') diff --git a/modules/FindLibLZMA.cmake b/modules/FindLibLZMA.cmake new file mode 100644 index 00000000..f0797e34 --- /dev/null +++ b/modules/FindLibLZMA.cmake @@ -0,0 +1,39 @@ +# - Find LibLZMA +# Find LibLZMA headers and library +# +# LIBLZMA_FOUND - True if liblzma is found. +# LIBLZMA_INCLUDE_DIR - Directory where liblzma headers are located. +# LIBLZMA_LIBRARIES - Lzma libraries to link against. +# LIBLZMA_HAS_AUTO_DECODER - True if lzma_auto_decoder() is found (required). +# LIBLZMA_HAS_EASY_ENCODER - True if lzma_easy_encoder() is found (required). +# LIBLZMA_HAS_LZMA_PRESET - True if lzma_lzma_preset() is found (required). + + +# Copyright (c) 2008, Per Øyvind Karlsen, + + +IF (LIBLZMA_INCLUDE_DIRS AND LIBLZMA_LIBRARIES) + SET(LIBLZMA_FIND_QUIETLY TRUE) +ENDIF (LIBLZMA_INCLUDE_DIRS AND LIBLZMA_LIBRARIES) + +IF (NOT WIN32) + INCLUDE(FindPkgConfig) + PKG_SEARCH_MODULE(LIBLZMA liblzma) + ELSE (NOT WIN32) + FIND_PATH(LIBLZMA_INCLUDE_DIRS lzma.h ) + FIND_LIBRARY(LIBLZMA_LIBRARIES NAMES lzma ) + INCLUDE(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBLZMA DEFAULT_MSG LIBLZMA_INCLUDE_DIRS LIBLZMA_LIBRARIES) +ENDIF (NOT WIN32) + +IF (LIBLZMA_FOUND) + INCLUDE(CheckLibraryExists) + CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_auto_decoder "" LIBLZMA_HAS_AUTO_DECODER) + CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_easy_encoder "" LIBLZMA_HAS_EASY_ENCODER) + CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_lzma_preset "" LIBLZMA_HAS_LZMA_PRESET) + IF (NOT LIBLZMA_HAS_AUTO_DECODER AND LIBLZMA_HAS_EASY_ENCODER AND LIBLZMA_HAS_LZMA_PRESET) + SET(LIBLZMA_FOUND FALSE) + ENDIF(NOT LIBLZMA_HAS_AUTO_DECODER AND LIBLZMA_HAS_EASY_ENCODER AND LIBLZMA_HAS_LZMA_PRESET) +ENDIF (LIBLZMA_FOUND) + +MARK_AS_ADVANCED( LIBLZMA_INCLUDE_DIRS LIBLZMA_LIBRARIES ) -- cgit v1.2.1 From f60b36ec9cf811a6e4c39194c455dcc951ccc2dc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 17 Apr 2009 18:43:52 +0000 Subject: -remove this file This is no source incompatible change, because this file is a) not for building anything with cmake, but for setting up Nightly builds (which nobody has done until now). b) It also was not in a working state at all, so removing it cannot break anyhting. Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=955472 --- modules/KDE4CTestNightlySetup.cmake | 102 ------------------------------------ 1 file changed, 102 deletions(-) delete mode 100644 modules/KDE4CTestNightlySetup.cmake (limited to 'modules') diff --git a/modules/KDE4CTestNightlySetup.cmake b/modules/KDE4CTestNightlySetup.cmake deleted file mode 100644 index 4c21a583..00000000 --- a/modules/KDE4CTestNightlySetup.cmake +++ /dev/null @@ -1,102 +0,0 @@ -# The following variables have to be set before including this file: -# CTEST_CMAKE_GENERATOR -# CTEST_UPDATE_TYPE (if update from cvs or svn is required) -# SVN_REPOSITORY or CVS_REPOSITORY and CVS_MODULE -# -# If the project doesn't build with spaces in the path, do the following: -# set(CTEST_AVOID_SPACES TRUE) -# -# After this file has been included, the regular new style ctest -# scripting commands can be used, e.g. -# -# ctest_empty_binary_directory("${CTEST_BINARY_DIRECTORY}") -# ctest_start(Nightly) -# ctest_update(SOURCE "${CTEST_SOURCE_DIRECTORY}" ) -# ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}" ) -# ctest_build(BUILD "${CTEST_BINARY_DIRECTORY}" ) -# ctest_test(BUILD "${CTEST_BINARY_DIRECTORY}" ) -# ctest_submit() - - - - -set(currentDirectory "${CTEST_SCRIPT_DIRECTORY}") - -if(NOT EXISTS "${currentDirectory}/CMakeLists.txt") - message(FATAL_ERROR "This macro must be called from a cmake script in the source tree of your project.") -endif(NOT EXISTS "${currentDirectory}/CMakeLists.txt") - -include("${currentDirectory}/CTestConfig.cmake") -include("${currentDirectory}/CTestCustom.cmake" OPTIONAL) - -# Set up the directories where the dashboards will be created -# By default this will be "$HOME/Dashboards//(src|build) dir". -# It can be overriden by the user. -set(DASHBOARD_DIR "$ENV{HOME}/Dashboards" ) - -if(NOT DEFINED CTEST_SOURCE_DIRECTORY) - if(CTEST_AVOID_SPACES) - set(CTEST_SOURCE_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/srcdir" ) - else(CTEST_AVOID_SPACES) - set(CTEST_SOURCE_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/src dir" ) - endif(CTEST_AVOID_SPACES) -endif(NOT DEFINED CTEST_SOURCE_DIRECTORY) - -if(NOT DEFINED CTEST_BINARY_DIRECTORY) - if(CTEST_AVOID_SPACES) - set(CTEST_BINARY_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/builddir" ) - else(CTEST_AVOID_SPACES) - set(CTEST_BINARY_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/build dir" ) - endif(CTEST_AVOID_SPACES) -endif(NOT DEFINED CTEST_BINARY_DIRECTORY) - - - -site_name(CTEST_SITE) -if(NOT DEFINED CTEST_BUILD_NAME) - set(CTEST_BUILD_NAME ${CMAKE_SYSTEM_NAME}) -endif(NOT DEFINED CTEST_BUILD_NAME) - -if("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile) - find_program(MAKE_EXECUTABLE make gmake) - set(CTEST_BUILD_COMMAND "${MAKE_EXECUTABLE}" ) -else("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile) - if(NOT DEFINED CTEST_BUILD_COMMAND) - message(FATAL_ERROR "CTEST_CMAKE_GENERATOR is set to \"${CTEST_CMAKE_GENERATOR}\", but CTEST_BUILD_COMMAND has not been set") - endif(NOT DEFINED CTEST_BUILD_COMMAND) -endif("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile) - -# set up version control - -string(TOLOWER ${CTEST_UPDATE_TYPE} _ctest_vcs) -set(_have_vcs FALSE) - -if ("${_ctest_vcs}" STREQUAL svn) - find_program(SVN_EXECUTABLE svn) - if (NOT SVN_EXECUTABLE) - message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is svn, but could not find svn executable") - endif (NOT SVN_EXECUTABLE) - if(NOT SVN_REPOSITORY) - message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is svn, but SVN_REPOSITORY is not set") - endif(NOT SVN_REPOSITORY) - set(CTEST_UPDATE_COMMAND ${SVN_EXECUTABLE}) - set(CTEST_CHECKOUT_COMMAND "${SVN_EXECUTABLE} co ${SVN_REPOSITORY} \"${CTEST_SOURCE_DIRECTORY}\"") - set(_have_vcs TRUE) -endif ("${_ctest_vcs}" STREQUAL svn) - -if ("${_ctest_vcs}" STREQUAL cvs) - find_program(CVS_EXECUTABLE cvs cvsnt) - if (NOT CVS_EXECUTABLE) - message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is cvs, but could not find cvs or cvsnt executable") - endif (NOT CVS_EXECUTABLE) - if (NOT CVS_REPOSITORY) - message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is cvs, but CVS_REPOSITORY is not set") - endif (NOT CVS_REPOSITORY) - if (NOT CVS_MODULE) - message(FATAL_ERROR "Error: CTEST_UPDATE_TYPE is cvs, but CVS_MODULE is not set") - endif (NOT CVS_MODULE) - - set(CTEST_UPDATE_COMMAND ${CVS_EXECUTABLE}) - set(CTEST_CHECKOUT_COMMAND "${CVS_EXECUTABLE} -d ${CVS_REPOSITORY} co -d \"${CTEST_SOURCE_DIRECTORY}\" ${CVS_MODULE}") - set(_have_vcs TRUE) -endif ("${_ctest_vcs}" STREQUAL cvs) -- cgit v1.2.1 From 93a513122e1391099139ee7c1e4c2b116dab527f Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Mon, 20 Apr 2009 19:21:46 +0000 Subject: If kdesupport is installed to a place != /usr /usr/local and whatever SHARE_INSTALL_PREFIX contains, soprano is found. BUT the plugins not. Fix that. I have no idea if there are other variations needed. CCMAIL:kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=956855 --- modules/FindSoprano.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index c6a758cf..c35307a1 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -123,6 +123,9 @@ endif(SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) + + message(${SOPRANO_INCLUDE_DIR}) + #look for parser plugins if(Soprano_FOUND) find_path(SOPRANO_PLUGIN_DIR @@ -130,6 +133,7 @@ soprano/plugins PATHS ${SHARE_INSTALL_PREFIX} /usr/share /usr/local/share + ${SOPRANO_INCLUDE_DIR}/../share NO_DEFAULT_PATH NO_SYSTEM_ENVIRONMENT_PATH ) -- cgit v1.2.1 From 08e17b64961d96ce8cd8531151cbdbc7eb4ecdeb Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 20 Apr 2009 20:12:09 +0000 Subject: as Alan said, we don't want that message... and I guess when looking for the plugins, looking first in the directory which is close the the include dir is a goiod thing Alex svn path=/trunk/KDE/kdelibs/; revision=956872 --- modules/FindSoprano.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index c35307a1..1f45f972 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -122,9 +122,7 @@ endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") endif(SOPRANO_VERSION_MATCH) endif(Soprano_FOUND) - - message(${SOPRANO_INCLUDE_DIR}) #look for parser plugins if(Soprano_FOUND) @@ -132,8 +130,10 @@ NAMES soprano/plugins PATHS - ${SHARE_INSTALL_PREFIX} /usr/share /usr/local/share ${SOPRANO_INCLUDE_DIR}/../share + ${SHARE_INSTALL_PREFIX} + /usr/share + /usr/local/share NO_DEFAULT_PATH NO_SYSTEM_ENVIRONMENT_PATH ) -- cgit v1.2.1 From a2b442576d7e8fac377701aa98db0250803a0f8d Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Tue, 28 Apr 2009 11:14:39 +0000 Subject: Removed non-existing kmetadata and renamed knepomuk to nepomuk - is this enough to get rid of the extra nepomuk checks? svn path=/trunk/KDE/kdelibs/; revision=960334 --- modules/FindKDE4Internal.cmake | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 9cd93c8f..1eddbb8f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -41,8 +41,7 @@ # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # KDE4_KROSSCORE_LIBRARY - the krosscore library # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library -# KDE4_KNEPOMUK_LIBRARY - the knepomuk library -# KDE4_KMETADATA_LIBRARY - the kmetadata library +# KDE4_NEPOMUK_LIBRARY - the nepomuk library # KDE4_PLASMA_LIBRARY - the plasma library # # KDE4_PLASMA_OPENGL_FOUND - TRUE if the OpenGL support of Plasma has been found, NOTFOUND otherwise @@ -72,8 +71,7 @@ # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries # KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries -# KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries -# KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries +# KDE4_NEPOMUK_LIBS - the nepomuk library and all depending libraries # KDE4_PLASMA_LIBS - the plasma library and all depending librairies # # This module defines a bunch of variables used as locations for install directories. @@ -489,13 +487,9 @@ else (_kdeBootStrapping) endif (UNIX) # these targets do not always exist, since they are built conditionally: - if(TARGET ${KDE4_TARGET_PREFIX}knepomuk) - _kde4_set_lib_variables(KNEPOMUK knepomuk ${KDE4_TARGET_PREFIX}) - endif(TARGET ${KDE4_TARGET_PREFIX}knepomuk) - - if(TARGET ${KDE4_TARGET_PREFIX}kmetadata) - _kde4_set_lib_variables(KMETADATA kmetadata ${KDE4_TARGET_PREFIX}) - endif(TARGET ${KDE4_TARGET_PREFIX}kmetadata) + if(TARGET ${KDE4_TARGET_PREFIX}nepomuk) + _kde4_set_lib_variables(NEPOMUK nepomuk ${KDE4_TARGET_PREFIX}) + endif(TARGET ${KDE4_TARGET_PREFIX}nepomuk) # and this one for compatibility: set(KDE4_THREADWEAVER_LIBRARIES ${KDE4_TARGET_PREFIX}threadweaver ) -- cgit v1.2.1 From 60fe0691762de905807e704846946f31a56219d2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 29 Apr 2009 18:06:33 +0000 Subject: -fix FindLibLZMA.cmake, so it sets the variables according to our conventions (http://techbase.kde.org/Policies/CMake_Coding_Style) and works also without pkg-config -fix kdecore/CMakeLists.txt accordingly Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=961236 --- modules/FindLibLZMA.cmake | 45 ++++++++++++++++++++++++++------------------- 1 file changed, 26 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindLibLZMA.cmake b/modules/FindLibLZMA.cmake index f0797e34..f63de69c 100644 --- a/modules/FindLibLZMA.cmake +++ b/modules/FindLibLZMA.cmake @@ -2,7 +2,7 @@ # Find LibLZMA headers and library # # LIBLZMA_FOUND - True if liblzma is found. -# LIBLZMA_INCLUDE_DIR - Directory where liblzma headers are located. +# LIBLZMA_INCLUDE_DIRS - Directory where liblzma headers are located. # LIBLZMA_LIBRARIES - Lzma libraries to link against. # LIBLZMA_HAS_AUTO_DECODER - True if lzma_auto_decoder() is found (required). # LIBLZMA_HAS_EASY_ENCODER - True if lzma_easy_encoder() is found (required). @@ -10,30 +10,37 @@ # Copyright (c) 2008, Per Øyvind Karlsen, +# Copyright (c) 2009, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +FIND_PATH(LIBLZMA_INCLUDE_DIR lzmadec.h ) +FIND_LIBRARY(LIBLZMA_LIBRARY lzmadec) -IF (LIBLZMA_INCLUDE_DIRS AND LIBLZMA_LIBRARIES) - SET(LIBLZMA_FIND_QUIETLY TRUE) -ENDIF (LIBLZMA_INCLUDE_DIRS AND LIBLZMA_LIBRARIES) +SET(LIBLZMA_LIBRARIES ${LIBLZMA_LIBRARY}) +SET(LIBLZMA_INCLUDE_DIRS ${LIBLZMA_INCLUDE_DIR}) -IF (NOT WIN32) - INCLUDE(FindPkgConfig) - PKG_SEARCH_MODULE(LIBLZMA liblzma) - ELSE (NOT WIN32) - FIND_PATH(LIBLZMA_INCLUDE_DIRS lzma.h ) - FIND_LIBRARY(LIBLZMA_LIBRARIES NAMES lzma ) - INCLUDE(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBLZMA DEFAULT_MSG LIBLZMA_INCLUDE_DIRS LIBLZMA_LIBRARIES) -ENDIF (NOT WIN32) -IF (LIBLZMA_FOUND) +# what's up with the following tests ? +# I downloaded, built and installed the lzma-4.32.7 source package directly +# from http://tukaani.org/lzma/download and they resulting library doesn't have +# these symbols. Also "grep -R auto_decoder *" gives no results. +# Where should they come frome ? Alex +IF (LIBLZMA_LIBRARIES) INCLUDE(CheckLibraryExists) CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_auto_decoder "" LIBLZMA_HAS_AUTO_DECODER) CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_easy_encoder "" LIBLZMA_HAS_EASY_ENCODER) CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_lzma_preset "" LIBLZMA_HAS_LZMA_PRESET) - IF (NOT LIBLZMA_HAS_AUTO_DECODER AND LIBLZMA_HAS_EASY_ENCODER AND LIBLZMA_HAS_LZMA_PRESET) - SET(LIBLZMA_FOUND FALSE) - ENDIF(NOT LIBLZMA_HAS_AUTO_DECODER AND LIBLZMA_HAS_EASY_ENCODER AND LIBLZMA_HAS_LZMA_PRESET) -ENDIF (LIBLZMA_FOUND) +ENDIF (LIBLZMA_LIBRARIES) + +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBLZMA DEFAULT_MSG LIBLZMA_INCLUDE_DIR + LIBLZMA_LIBRARY + LIBLZMA_HAS_AUTO_DECODER + LIBLZMA_HAS_EASY_ENCODER + LIBLZMA_HAS_LZMA_PRESET + ) -MARK_AS_ADVANCED( LIBLZMA_INCLUDE_DIRS LIBLZMA_LIBRARIES ) +MARK_AS_ADVANCED( LIBLZMA_INCLUDE_DIR LIBLZMA_LIBRARY ) -- cgit v1.2.1 From dc80a9086df23892adc55af668433d581d72cca2 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Thu, 30 Apr 2009 20:12:45 +0000 Subject: - We are using the new XZ codebase instead of old codebase. Can be found in http://tukaani.org/xz/ svn path=/trunk/KDE/kdelibs/; revision=961856 --- modules/FindLibLZMA.cmake | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindLibLZMA.cmake b/modules/FindLibLZMA.cmake index f63de69c..1a341b28 100644 --- a/modules/FindLibLZMA.cmake +++ b/modules/FindLibLZMA.cmake @@ -11,23 +11,22 @@ # Copyright (c) 2008, Per Øyvind Karlsen, # Copyright (c) 2009, Alexander Neundorf, +# Copyright (c) 2009, Helio Chissini de Castro, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -FIND_PATH(LIBLZMA_INCLUDE_DIR lzmadec.h ) -FIND_LIBRARY(LIBLZMA_LIBRARY lzmadec) +FIND_PATH(LIBLZMA_INCLUDE_DIR lzma.h ) +FIND_LIBRARY(LIBLZMA_LIBRARY lzma) SET(LIBLZMA_LIBRARIES ${LIBLZMA_LIBRARY}) SET(LIBLZMA_INCLUDE_DIRS ${LIBLZMA_INCLUDE_DIR}) -# what's up with the following tests ? -# I downloaded, built and installed the lzma-4.32.7 source package directly -# from http://tukaani.org/lzma/download and they resulting library doesn't have -# these symbols. Also "grep -R auto_decoder *" gives no results. -# Where should they come frome ? Alex +# We're using new code known now as XZ, even library still been called LZMA +# it can be found in http://tukaani.org/xz/ +# Avoid using old codebase IF (LIBLZMA_LIBRARIES) INCLUDE(CheckLibraryExists) CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_auto_decoder "" LIBLZMA_HAS_AUTO_DECODER) -- cgit v1.2.1 From c6d500966585b114f2ba7c0ddaee8f51ed184708 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 6 May 2009 10:16:38 +0000 Subject: make it easier to bump the min version svn path=/trunk/KDE/kdelibs/; revision=964198 --- modules/FindKDE4Internal.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1eddbb8f..d22e7a75 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -296,7 +296,8 @@ if (NOT AUTOMOC4_VERSION) # the version macro was added for 0.9.84 set(AUTOMOC4_VERSION "0.9.83") endif (NOT AUTOMOC4_VERSION) -macro_ensure_version("0.9.87" "${AUTOMOC4_VERSION}" _automoc4_version_ok) +set(_automoc4_min_version "0.9.87") +macro_ensure_version("${_automoc4_min_version}" "${AUTOMOC4_VERSION}" _automoc4_version_ok) # for compatibility with KDE 4.0.x set(KDE4_AUTOMOC_EXECUTABLE "${AUTOMOC4_EXECUTABLE}" ) @@ -332,7 +333,7 @@ if(NOT AUTOMOC4_FOUND OR NOT _automoc4_version_ok) return() else(NOT AUTOMOC4_FOUND) if(NOT _automoc4_version_ok) - message(${_REQ_STRING_KDE4_MESSAGE} "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least 0.9.87") + message(${_REQ_STRING_KDE4_MESSAGE} "Your version of automoc4 is too old. You have ${AUTOMOC4_VERSION}, you need at least ${_automoc4_min_version}") return() endif(NOT _automoc4_version_ok) endif(NOT AUTOMOC4_FOUND) -- cgit v1.2.1 From 49866aeaab3ff12f9a320491f783694148505510 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 7 May 2009 11:42:09 +0000 Subject: fix in-place location of libkdcraw, making use of an existing header in the source dir headers in the build dir will not work, as they will be generated in the compiling phrase, not at the cmake phase CCMAIL: caulier.gilles@gmail.com svn path=/trunk/KDE/kdelibs/; revision=964721 --- modules/FindKdcraw.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake index dfd901c5..2eb0814f 100644 --- a/modules/FindKdcraw.cmake +++ b/modules/FindKdcraw.cmake @@ -26,12 +26,12 @@ else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) # Check if library is not in local sub-folder - FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/version.h ${CMAKE_BINARY_DIR}/libkdcraw ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/kdcraw.h ${CMAKE_SOURCE_DIR}/libkdcraw ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) if (KDCRAW_LOCAL_FOUND) # Was it found in libkdcraw/ or in libs/libkdcraw? - FIND_FILE(KDCRAW_LOCAL_FOUND_IN_LIBS libkdcraw/version.h ${CMAKE_BINARY_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + FIND_FILE(KDCRAW_LOCAL_FOUND_IN_LIBS libkdcraw/kdcraw.h ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) if (KDCRAW_LOCAL_FOUND_IN_LIBS) set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkdcraw) else (KDCRAW_LOCAL_FOUND_IN_LIBS) -- cgit v1.2.1 From 2118ce5907c4748fec1982fc281187a01a4860b7 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 7 May 2009 13:55:37 +0000 Subject: we need 0.9.88 now svn path=/trunk/KDE/kdelibs/; revision=964858 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d22e7a75..b5a9bb5a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -296,7 +296,7 @@ if (NOT AUTOMOC4_VERSION) # the version macro was added for 0.9.84 set(AUTOMOC4_VERSION "0.9.83") endif (NOT AUTOMOC4_VERSION) -set(_automoc4_min_version "0.9.87") +set(_automoc4_min_version "0.9.88") macro_ensure_version("${_automoc4_min_version}" "${AUTOMOC4_VERSION}" _automoc4_version_ok) # for compatibility with KDE 4.0.x -- cgit v1.2.1 From 424619adfbeaf79a0b4c1e4c3011aa45d2967901 Mon Sep 17 00:00:00 2001 From: Marcos David Dione Date: Sat, 9 May 2009 16:37:59 +0000 Subject: this patch honors -DPYTHON_SITE_PACKAGES_DIR. if not set, then checks for -DPYTHON_LIBS_WITH_KDE_LIBS. if set, it installs python modules in kde's lib dir; if not, it installs them in python's dir, which is the default. svn path=/trunk/KDE/kdelibs/; revision=965738 --- modules/FindPythonLibrary.cmake | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index 80f3f4ab..d98cb621 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -3,12 +3,12 @@ # Find the Python interpreter and related Python directories. # # This file defines the following variables: -# +# # PYTHON_EXECUTABLE - The path and filename of the Python interpreter. # # PYTHON_SHORT_VERSION - The version of the Python interpreter found, # excluding the patch version number. (e.g. 2.5 and not 2.5.1)) -# +# # PYTHON_LONG_VERSION - The version of the Python interpreter found as a human # readable string. # @@ -43,7 +43,13 @@ else(EXISTS PYTHON_LIBRARY) STRING(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) STRING(REGEX REPLACE ".*\nlong_version:([^\n]+).*$" "\\1" PYTHON_LONG_VERSION ${python_config}) STRING(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" PYTHON_INCLUDE_PATH ${python_config}) - STRING(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) + if(NOT PYTHON_SITE_PACKAGES_DIR) + if(NOT PYTHON_LIBS_WITH_KDE_LIBS) + STRING(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) + else(NOT PYTHON_LIBS_WITH_KDE_LIBS) + set(PYTHON_SITE_PACKAGES_DIR ${KDE4_LIB_INSTALL_DIR}/python${PYTHON_SHORT_VERSION}/site-packages) + endif(NOT PYTHON_LIBS_WITH_KDE_LIBS) + endif(NOT PYTHON_SITE_PACKAGES_DIR) STRING(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) if(WIN32) -- cgit v1.2.1 From abaf53ba35773fb51af489096eefd07a1a5d232e Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 10 May 2009 20:26:00 +0000 Subject: Reduce this file to a minimal version, CMake 2.6.2 ships with a quite good and improved (compared to this version) FindBoost.cmake. For backward compatibility we're adding 1.37 to Boost_ADDITIONAL_VERSIONS, that should stay the only version in this file, so once we update our cmake requirement this file can go completely. CCMAIL:kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=966265 --- modules/FindBoost.cmake | 582 +----------------------------------------------- 1 file changed, 12 insertions(+), 570 deletions(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index cf0333a0..c2dd58f0 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -1,575 +1,17 @@ # - Try to find Boost include dirs and libraries -# Usage of this module as follows: # -# SET(Boost_USE_STATIC_LIBS ON) -# SET(Boost_USE_MULTITHREAD OFF) -# FIND_PACKAGE( Boost COMPONENTS date_time filesystem iostreams ... ) -# -# The Boost_ADDITIONAL_VERSIONS variable can be used to specify a list of -# boost version numbers that should be taken into account when searching -# for the libraries. Unfortunately boost puts the version number into the -# actual filename for the libraries, so this might be needed in the future -# when new boost versions are released. -# -# Currently this module searches for the following version numbers: -# 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, 1.35, 1.35.0, 1.35.1, 1.36, 1.36.0, 1.36.1 -# -# The components list needs to be the actual names of boost libraries, that is -# the part of the actual library files that differ on different libraries. So -# its "date_time" for "libboost_date_time...". Anything else will result in -# errors -# -# Variables used by this module, they can change the default behaviour and need to be set -# before calling find_package: -# Boost_USE_STATIC_LIBS Can be set to ON to force the use of static -# boost libraries. Defaults to OFF -# Boost_USE_MULTITHREAD Can be set to OFF to use the non-multithreaded -# boost libraries. Defaults to ON. -# Boost_ADDITIONAL_VERSIONS A list of version numbers to use for searching -# the boost include directory. The default list -# of version numbers is: -# 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, -# 1.35, 1.35.0, 1.35.1, 1.36.0, 1.36.1 -# If you want to look for an older or newer -# version set this variable to a list of -# strings, where each string contains a number, i.e. -# SET(Boost_ADDITIONAL_VERSIONS "0.99.0" "1.35.0") -# Boost_MINIMUM_VERSION Can be used to require a specific minimum version of boost. -# Should be set as a plain string in the form "major.minor[.subminor]". -# If this variable is set and find_package is called with the REQUIRED -# option, FindBoost.cmake will fail if it doesn't find a suitable version. -# BOOST_ROOT Preferred installation prefix for searching for Boost, -# set this if the module has problems finding the proper Boost installation -# BOOST_INCLUDEDIR Set this to the include directory of Boost, if the -# module has problems finding the proper Boost installation -# BOOST_LIBRARYDIR Set this to the lib directory of Boost, if the -# module has problems finding the proper Boost installation -# -# The last three variables are available also as environment variables -# -# -# Variables defined by this module: -# -# Boost_FOUND System has Boost, this means the include dir was found, -# as well as all the libraries specified in the COMPONENTS list -# Boost_INCLUDE_DIRS Boost include directories, not cached -# Boost_INCLUDE_DIR This is almost the same as above, but this one is cached and may be -# modified by advanced users -# Boost_LIBRARIES Link these to use the Boost libraries that you specified, not cached -# Boost_LIBRARY_DIRS The path to where the Boost library files are. -# Boost_VERSION The version number of the boost libraries that have been found, -# same as in version.hpp from Boost -# Boost_LIB_VERSION The version number in filename form as its appended to the library filenames -# Boost_MAJOR_VERSION major version number of boost -# Boost_MINOR_VERSION minor version number of boost -# Boost_SUBMINOR_VERSION subminor version number of boost -# Boost_LIB_DIAGNOSTIC_DEFINITIONS Only set on windows. Can be used with add_definitions -# to print diagnostic information about the automatic -# linking done on windows -# -# For each component you list the following variables are set. -# ATTENTION: The component names need to be in lower case, just as the boost -# library names however the cmake variables use upper case for the component -# part. So you'd get Boost_SERIALIZATION_FOUND for example. -# -# Boost_${COMPONENT}_FOUND True IF the Boost library "component" was found. -# Boost_${COMPONENT}_LIBRARY The absolute path of the Boost library "component". -# Boost_${COMPONENT}_LIBRARY_DEBUG The absolute path of the debug version of the -# Boost library "component". -# Boost_${COMPONENT}_LIBRARY_RELEASE The absolute path of the release version of the -# Boost library "component" -# -# Copyright (c) 2006-2008 Andreas Schneider -# Copyright (c) 2007 Wengo -# Copyright (c) 2007 Mike Jackson -# Copyright (c) 2008 Andreas Pakulat -# -# Redistribution AND use is allowed according to the terms of the New -# BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. -# - -# MESSAGE(STATUS "Finding Boost libraries.... ") - -OPTION(Boost_USE_MULTITHREADED "Use the multithreaded versions of the boost libraries" ON) - -SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.37" "1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1" "1.33.0" "1.33" ) - - -############################################ -# -# Check the existence of the libraries. -# -############################################ -# This macro was taken directly from the FindQt4.cmake file that is included -# with the CMake distribution. This is NOT my work. All work was done by the -# original authors of the FindQt4.cmake file. Only minor modifications were -# made to remove references to Qt and make this file more generally applicable -######################################################################### - -MACRO (_Boost_ADJUST_LIB_VARS basename) - IF (Boost_INCLUDE_DIR ) - #MESSAGE(STATUS "Adjusting ${basename} ") - - IF (Boost_${basename}_LIBRARY_DEBUG AND Boost_${basename}_LIBRARY_RELEASE) - # if the generator supports configuration types then set - # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value - IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - SET(Boost_${basename}_LIBRARY optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG}) - ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - # if there are no configuration types and CMAKE_BUILD_TYPE has no value - # then just use the release libraries - SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE} ) - ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - SET(Boost_${basename}_LIBRARIES optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG}) - ENDIF (Boost_${basename}_LIBRARY_DEBUG AND Boost_${basename}_LIBRARY_RELEASE) - - # if only the release version was found, set the debug variable also to the release version - IF (Boost_${basename}_LIBRARY_RELEASE AND NOT Boost_${basename}_LIBRARY_DEBUG) - SET(Boost_${basename}_LIBRARY_DEBUG ${Boost_${basename}_LIBRARY_RELEASE}) - SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE}) - SET(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_RELEASE}) - ENDIF (Boost_${basename}_LIBRARY_RELEASE AND NOT Boost_${basename}_LIBRARY_DEBUG) - - # if only the debug version was found, set the release variable also to the debug version - IF (Boost_${basename}_LIBRARY_DEBUG AND NOT Boost_${basename}_LIBRARY_RELEASE) - SET(Boost_${basename}_LIBRARY_RELEASE ${Boost_${basename}_LIBRARY_DEBUG}) - SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_DEBUG}) - SET(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_DEBUG}) - ENDIF (Boost_${basename}_LIBRARY_DEBUG AND NOT Boost_${basename}_LIBRARY_RELEASE) - - IF (Boost_${basename}_LIBRARY) - SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY} CACHE FILEPATH "The Boost ${basename} library") - GET_FILENAME_COMPONENT(Boost_LIBRARY_DIRS "${Boost_${basename}_LIBRARY}" PATH) - SET(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIRS} CACHE FILEPATH "Boost library directory") - SET(Boost_${basename}_FOUND ON CACHE INTERNAL "Was the boost boost ${basename} library found") - ENDIF (Boost_${basename}_LIBRARY) - - ENDIF (Boost_INCLUDE_DIR ) - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( - Boost_${basename}_LIBRARY - Boost_${basename}_LIBRARY_RELEASE - Boost_${basename}_LIBRARY_DEBUG - ) -ENDMACRO (_Boost_ADJUST_LIB_VARS) - -#------------------------------------------------------------------------------- - - -SET( _boost_IN_CACHE TRUE) -IF(Boost_INCLUDE_DIR) - FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) - STRING(TOUPPER ${COMPONENT} COMPONENT) - IF(NOT Boost_${COMPONENT}_FOUND) - SET( _boost_IN_CACHE FALSE) - ENDIF(NOT Boost_${COMPONENT}_FOUND) - ENDFOREACH(COMPONENT) -ELSE(Boost_INCLUDE_DIR) - SET( _boost_IN_CACHE FALSE) -ENDIF(Boost_INCLUDE_DIR) - -IF (_boost_IN_CACHE) - # in cache already - SET(Boost_FOUND TRUE) - FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) - STRING(TOUPPER ${COMPONENT} COMPONENT) - _Boost_ADJUST_LIB_VARS( ${COMPONENT} ) - SET(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${COMPONENT}_LIBRARY}) - ENDFOREACH(COMPONENT) - SET(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIR}) - IF(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0") - MATH(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000") - MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000") - MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100") - ENDIF(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0") -ELSE (_boost_IN_CACHE) - # Need to search for boost - - IF(WIN32) - # In windows, automatic linking is performed, so you do not have to specify the libraries. - # If you are linking to a dynamic runtime, then you can choose to link to either a static or a - # dynamic Boost library, the default is to do a static link. You can alter this for a specific - # library "whatever" by defining BOOST_WHATEVER_DYN_LINK to force Boost library "whatever" to - # be linked dynamically. Alternatively you can force all Boost libraries to dynamic link by - # defining BOOST_ALL_DYN_LINK. - - # This feature can be disabled for Boost library "whatever" by defining BOOST_WHATEVER_NO_LIB, - # or for all of Boost by defining BOOST_ALL_NO_LIB. - - # If you want to observe which libraries are being linked against then defining - # BOOST_LIB_DIAGNOSTIC will cause the auto-linking code to emit a #pragma message each time - # a library is selected for linking. - SET(Boost_LIB_DIAGNOSTIC_DEFINITIONS "-DBOOST_LIB_DIAGNOSTIC" CACHE STRING "Boost diagnostic define") - ENDIF(WIN32) - - - SET(_boost_INCLUDE_SEARCH_DIRS - C:/boost/include - "C:/Program Files/boost/boost_${Boost_MINIMUM_VERSION}" - # D: is very often the cdrom drive, IF you don't have a - # cdrom inserted it will popup a very annoying dialog - #D:/boost/include - /sw/local/include - ) - - SET(_boost_LIBRARIES_SEARCH_DIRS - C:/boost/lib - "C:/Program Files/boost/boost_${Boost_MINIMUM_VERSION}/lib" - /sw/local/lib - ) - - IF( NOT $ENV{BOOST_ROOT} STREQUAL "" ) - SET(_boost_INCLUDE_SEARCH_DIRS $ENV{BOOST_ROOT}/include ${_boost_INCLUDE_SEARCH_DIRS}) - SET(_boost_LIBRARIES_SEARCH_DIRS $ENV{BOOST_ROOT}/lib ${_boost_INCLUDE_SEARCH_DIRS}) - ENDIF( NOT $ENV{BOOST_ROOT} STREQUAL "" ) - - IF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" ) - SET(_boost_INCLUDE_SEARCH_DIRS $ENV{BOOST_INCLUDEDIR} ${_boost_INCLUDE_SEARCH_DIRS}) - ENDIF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" ) - - IF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" ) - SET(_boost_LIBRARIES_SEARCH_DIRS $ENV{BOOST_LIBRARYDIR} ${_boost_INCLUDE_SEARCH_DIRS}) - ENDIF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" ) - - IF( BOOST_ROOT ) - IF( WIN32 ) - SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_ROOT} ${_boost_INCLUDE_SEARCH_DIRS}) - ELSE( WIN32 ) - SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_ROOT}/include ${_boost_INCLUDE_SEARCH_DIRS}) - ENDIF( WIN32 ) - SET(_boost_LIBRARIES_SEARCH_DIRS ${BOOST_ROOT}/lib ${_boost_LIBRARIES_SEARCH_DIRS}) - ENDIF( BOOST_ROOT ) - - IF( BOOST_INCLUDEDIR ) - SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_INCLUDEDIR} ${_boost_INCLUDE_SEARCH_DIRS}) - ENDIF( BOOST_INCLUDEDIR ) - - IF( BOOST_LIBRARYDIR ) - SET(_boost_LIBRARIES_SEARCH_DIRS ${BOOST_LIBRARYDIR} ${_boost_LIBRARIES_SEARCH_DIRS}) - ENDIF( BOOST_LIBRARYDIR ) - - IF( Boost_MINIMUM_VERSION ) - IF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\2" Boost_FIND_VERSION_MINOR ${Boost_MINIMUM_VERSION}) - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\3" Boost_FIND_VERSION_PATCH ${Boost_MINIMUM_VERSION}) - ELSEIF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+") - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1" Boost_FIND_VERSION_MAJOR ${Boost_MINIMUM_VERSION}) - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\2" Boost_FIND_VERSION_MINOR ${Boost_MINIMUM_VERSION}) - SET(Boost_FIND_VERSION_PATCH 0) - ELSE(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") - MESSAGE(FATAL_ERROR "Wrong format for Boost_MINIMUM_VERSION variable, the format needs to be major.minor[.subminor]") - ENDIF(Boost_MINIMUM_VERSION MATCHES "[0-9]+\\.[0-9]+\\.[0-9]") - - ENDIF( Boost_MINIMUM_VERSION ) - - - # Try first in our own include search paths (e.g. BOOST_ROOT) - FOREACH(_boost_VER ${_boost_TEST_VERSIONS}) - IF( NOT Boost_INCLUDE_DIR ) - - # Add in a path suffix, based on the required version, ideally we could - # read this from version.hpp, but for that to work we'd need to know the include - # dir already - SET(_boost_PATH_SUFFIX - boost-${_boost_VER} - ) - - IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) - ELSEIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+") - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) - ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") - - FIND_PATH(Boost_INCLUDE_DIR - NAMES boost/config.hpp - PATHS ${_boost_INCLUDE_SEARCH_DIRS} - PATH_SUFFIXES ${_boost_PATH_SUFFIX} - NO_DEFAULT_PATH - ) - - ENDIF( NOT Boost_INCLUDE_DIR ) - ENDFOREACH(_boost_VER) - - # If nothing is found search again using system default paths - FOREACH(_boost_VER ${_boost_TEST_VERSIONS}) - IF( NOT Boost_INCLUDE_DIR ) - - # Add in a path suffix, based on the required version, ideally we could - # read this from version.hpp, but for that to work we'd need to know the include - # dir already - SET(_boost_PATH_SUFFIX - boost-${_boost_VER} - ) - - IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) - ELSEIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+") - STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX}) - ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") - - FIND_PATH(Boost_INCLUDE_DIR - NAMES boost/config.hpp - PATH_SUFFIXES ${_boost_PATH_SUFFIX} - ) - - ENDIF(NOT Boost_INCLUDE_DIR) - ENDFOREACH(_boost_VER) - - IF(Boost_INCLUDE_DIR) - # Extract Boost_VERSION and Boost_LIB_VERSION from version.hpp - # Read the whole file: - # - SET(BOOST_VERSION 0) - SET(BOOST_LIB_VERSION "") - FILE(READ "${Boost_INCLUDE_DIR}/boost/version.hpp" _boost_VERSION_HPP_CONTENTS) - - STRING(REGEX REPLACE ".*#define BOOST_VERSION ([0-9]+).*" "\\1" Boost_VERSION "${_boost_VERSION_HPP_CONTENTS}") - STRING(REGEX REPLACE ".*#define BOOST_LIB_VERSION \"([0-9_]+)\".*" "\\1" Boost_LIB_VERSION "${_boost_VERSION_HPP_CONTENTS}") - - SET(Boost_LIB_VERSION ${Boost_LIB_VERSION} CACHE INTERNAL "The library version string for boost libraries") - SET(Boost_VERSION ${Boost_VERSION} CACHE INTERNAL "The version number for boost libraries") - - IF(NOT "${Boost_VERSION}" STREQUAL "0") - MATH(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000") - MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000") - MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100") - ENDIF(NOT "${Boost_VERSION}" STREQUAL "0") - ENDIF(Boost_INCLUDE_DIR) - - #Setting some more suffixes for the library - SET (Boost_LIB_PREFIX "") - IF ( WIN32 AND Boost_USE_STATIC_LIBS ) - SET (Boost_LIB_PREFIX "lib") - ENDIF ( WIN32 AND Boost_USE_STATIC_LIBS ) - SET (_boost_COMPILER "-gcc") - IF (MSVC71) - SET (_boost_COMPILER "-vc71") - ENDIF(MSVC71) - IF (MSVC80) - SET (_boost_COMPILER "-vc80") - ENDIF(MSVC80) - IF (MSVC90) - SET (_boost_COMPILER "-vc90") - ENDIF(MSVC90) - IF (MINGW) - EXEC_PROGRAM(${CMAKE_CXX_COMPILER} - ARGS --version - OUTPUT_VARIABLE _boost_COMPILER_VERSION - ) - STRING(REGEX REPLACE ".* ([0-9])\\.([0-9])\\.[0-9].*" "\\1\\2" - _boost_COMPILER_VERSION ${_boost_COMPILER_VERSION}) - SET (_boost_COMPILER "-mgw${_boost_COMPILER_VERSION}") - ENDIF(MINGW) - IF (CYGWIN) - SET (_boost_COMPILER "-gcc") - ENDIF (CYGWIN) - IF (UNIX) - IF (APPLE) - SET (_boost_COMPILER "") - ELSE (APPLE) - IF (NOT CMAKE_COMPILER_IS_GNUCC) - # This is for the intel compiler - SET (_boost_COMPILER "-il") - ELSE (NOT CMAKE_COMPILER_IS_GNUCC) - #find out the version of gcc being used. - EXEC_PROGRAM(${CMAKE_CXX_COMPILER} - ARGS --version - OUTPUT_VARIABLE _boost_COMPILER_VERSION - ) - STRING(REGEX MATCH "([0-9])\\.([0-9])\\.[0-9]" - _boost_COMPILER_VERSION ${_boost_COMPILER_VERSION}) - STRING(REGEX REPLACE "([0-9])\\.([0-9])\\.[0-9]" "\\1\\2" - _boost_COMPILER_VERSION ${_boost_COMPILER_VERSION}) - SET (_boost_COMPILER "-gcc${_boost_COMPILER_VERSION}") - ENDIF (NOT CMAKE_COMPILER_IS_GNUCC) - ENDIF (APPLE) - ENDIF(UNIX) - - SET (_boost_MULTITHREADED "-mt") - - IF( NOT Boost_USE_MULTITHREADED ) - SET (_boost_MULTITHREADED "") - ENDIF( NOT Boost_USE_MULTITHREADED ) - - SET( _boost_STATIC_TAG "") - IF (WIN32) - IF(MSVC) - SET (_boost_ABI_TAG "g") - ENDIF(MSVC) - IF( Boost_USE_STATIC_LIBS ) - SET( _boost_STATIC_TAG "-s") - ENDIF( Boost_USE_STATIC_LIBS ) - ENDIF(WIN32) - SET (_boost_ABI_TAG "${_boost_ABI_TAG}d") - - # ------------------------------------------------------------------------ - # Begin finding boost libraries - # ------------------------------------------------------------------------ - FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) - STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT) - SET( Boost_${UPPERCOMPONENT}_LIBRARY "Boost_${UPPERCOMPONENT}_LIBRARY-NOTFOUND" ) - SET( Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE "Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE-NOTFOUND" ) - SET( Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG "Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG-NOTFOUND") - # Support preference of static libs by adjusting CMAKE_FIND_LIBRARY_SUFFIXES - IF( Boost_USE_STATIC_LIBS ) - SET( _boost_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) - IF(WIN32) - SET(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) - ELSE(WIN32) - SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) - ENDIF(WIN32) - ENDIF( Boost_USE_STATIC_LIBS ) - FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE - NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG} - ${Boost_LIB_PREFIX}boost_${COMPONENT} - PATHS ${_boost_LIBRARIES_SEARCH_DIRS} - NO_DEFAULT_PATH - ) - - IF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE} ) - FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE - NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG} - ${Boost_LIB_PREFIX}boost_${COMPONENT} - ) - ENDIF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE} ) - - FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG - NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${_boost_ABI_TAG}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}-${_boost_ABI_TAG} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG} - ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_boost_ABI_TAG} - PATHS ${_boost_LIBRARIES_SEARCH_DIRS} - NO_DEFAULT_PATH - ) - - IF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG} ) - FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG - NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${_boost_ABI_TAG}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}-${Boost_LIB_VERSION} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}-${_boost_ABI_TAG} - ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG} - ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_boost_ABI_TAG} - ) - ENDIF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG} ) - IF( Boost_USE_STATIC_LIBS ) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ${_boost_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) - ENDIF( Boost_USE_STATIC_LIBS ) - - _Boost_ADJUST_LIB_VARS(${UPPERCOMPONENT}) - ENDFOREACH(COMPONENT) - # ------------------------------------------------------------------------ - # End finding boost libraries - # ------------------------------------------------------------------------ - - SET(Boost_INCLUDE_DIRS - ${Boost_INCLUDE_DIR} - ) - - # MESSAGE(STATUS "Boost_INCLUDE_DIRS: ${Boost_INCLUDE_DIRS}") - # MESSAGE(STATUS "Boost_LIBRARIES: ${Boost_LIBRARIES}") - - SET(Boost_FOUND FALSE) - IF(Boost_INCLUDE_DIR) - SET( Boost_FOUND TRUE ) - IF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) - SET( Boost_FOUND FALSE ) - ELSEIF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION EQUAL "${Boost_FIND_VERSION_MAJOR}" ) - IF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) - SET( Boost_FOUND FALSE ) - ELSEIF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION EQUAL "${Boost_FIND_VERSION_MINOR}" ) - IF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) - SET( Boost_FOUND FALSE ) - ENDIF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" ) - ENDIF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" ) - ENDIF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" ) - set(_boost_CHECKED_COMPONENT FALSE) - FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) - STRING(TOUPPER ${COMPONENT} COMPONENT) - set(_boost_CHECKED_COMPONENT TRUE) - IF(NOT Boost_${COMPONENT}_FOUND) - SET( Boost_FOUND FALSE) - ENDIF(NOT Boost_${COMPONENT}_FOUND) - ENDFOREACH(COMPONENT) - IF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT ) - # Compatibility Code for backwards compatibility with CMake 2.4 - - # Look for the boost library path. - # Note that the user may not have installed any libraries - # so it is quite possible the Boost_LIBRARY_PATH may not exist. - SET(_boost_LIB_DIR ${Boost_INCLUDE_DIR}) - - IF("${_boost_LIB_DIR}" MATCHES "boost-[0-9]+") - GET_FILENAME_COMPONENT(_boost_LIB_DIR ${_boost_LIB_DIR} PATH) - ENDIF ("${_boost_LIB_DIR}" MATCHES "boost-[0-9]+") - - IF("${_boost_LIB_DIR}" MATCHES "/include$") - # Strip off the trailing "/include" in the path. - GET_FILENAME_COMPONENT(_boost_LIB_DIR ${_boost_LIB_DIR} PATH) - ENDIF("${_boost_LIB_DIR}" MATCHES "/include$") - - IF(EXISTS "${_boost_LIB_DIR}/lib") - SET (_boost_LIB_DIR ${_boost_LIB_DIR}/lib) - ELSE(EXISTS "${_boost_LIB_DIR}/lib") - IF(EXISTS "${_boost_LIB_DIR}/stage/lib") - SET(_boost_LIB_DIR ${_boost_LIB_DIR}/stage/lib) - ELSE(EXISTS "${_boost_LIB_DIR}/stage/lib") - SET(_boost_LIB_DIR "") - ENDIF(EXISTS "${_boost_LIB_DIR}/stage/lib") - ENDIF(EXISTS "${_boost_LIB_DIR}/lib") - - IF(_boost_LIB_DIR AND EXISTS "${_boost_LIB_DIR}") - SET(Boost_LIBRARY_DIRS ${_boost_LIB_DIR} CACHE FILEPATH "Boost library directory") - ENDIF(_boost_LIB_DIR AND EXISTS "${_boost_LIB_DIR}") - - ENDIF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT ) - - ELSE(Boost_INCLUDE_DIR) - SET( Boost_FOUND FALSE) - ENDIF(Boost_INCLUDE_DIR) - - IF (Boost_FOUND) - IF (NOT Boost_FIND_QUIETLY) - MESSAGE(STATUS "Boost version: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}") - MESSAGE(STATUS "Found the following Boost libraries:") - ENDIF (NOT Boost_FIND_QUIETLY) - - FOREACH ( COMPONENT ${Boost_FIND_COMPONENTS} ) - STRING( TOUPPER ${COMPONENT} UPPERCOMPONENT ) - IF ( Boost_${UPPERCOMPONENT}_FOUND ) - IF (NOT Boost_FIND_QUIETLY) - MESSAGE (STATUS " ${COMPONENT}") - ENDIF (NOT Boost_FIND_QUIETLY) - SET(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY}) - ENDIF ( Boost_${UPPERCOMPONENT}_FOUND ) - ENDFOREACH(COMPONENT) - ELSE (Boost_FOUND) - IF (Boost_FIND_REQUIRED) - MESSAGE(STATUS "Boost Version required: ${Boost_FIND_VERSION_MAJOR}.${Boost_FIND_VERSION_MINOR}.${Boost_FIND_VERSION_PATCH} Found: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}") - MESSAGE(FATAL_ERROR "Couldn't find the Boost libraries and/or include directory, or the version found is too old. Please install the Boost libraries AND development packages. You can set BOOST_ROOT, BOOST_INCLUDEDIR and BOOST_LIBRARYDIR to help find Boost.") - ENDIF(Boost_FIND_REQUIRED) - ENDIF(Boost_FOUND) +# Please see the Documentation for Boost in the CMake Manual for details +# This module only forwards to the one included in cmake for compatibility +# reasons. - # Under Windows, automatic linking is performed, so no need to specify the libraries. - IF (WIN32) - IF (NOT MINGW) - SET(Boost_LIBRARIES "") - ENDIF (NOT MINGW) - ENDIF(WIN32) +# This call is kept for compatibility of this module with CMake 2.6.2, which +# only knows about Boost < 1.37. +# Note: Do _not_ add new Boost versions here, we're trying to get rid +# of this module in kdelibs, but thats only possible if there's a CMake-included +# version that finds all modules that this file finds. +# Instead add a similar call with newer version numbers to the CMakeLists.txt +# in your project before calling find_package(Boost) +set( Boost_ADDITIONAL_VERSION ${Boost_ADDITIONAL_VERSIONS} "1.37") - # show the Boost_INCLUDE_DIRS AND Boost_LIBRARIES variables only in the advanced view - MARK_AS_ADVANCED(Boost_INCLUDE_DIR - Boost_INCLUDE_DIRS - Boost_LIBRARY_DIRS - Boost_USE_MULTITHREADED - ) -ENDIF(_boost_IN_CACHE) +include(${CMAKE_ROOT}/Modules/FindBoost.cmake) -- cgit v1.2.1 From 2f16ffc3c01179c38cfd938cce7f0395bd3fce9e Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Mon, 11 May 2009 13:41:53 +0000 Subject: Fix typo preventing 1.37 to be found. Re-Add my copyright and a notice regarding license svn path=/trunk/KDE/kdelibs/; revision=966579 --- modules/FindBoost.cmake | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindBoost.cmake b/modules/FindBoost.cmake index c2dd58f0..8534abd9 100644 --- a/modules/FindBoost.cmake +++ b/modules/FindBoost.cmake @@ -11,7 +11,15 @@ # version that finds all modules that this file finds. # Instead add a similar call with newer version numbers to the CMakeLists.txt # in your project before calling find_package(Boost) -set( Boost_ADDITIONAL_VERSION ${Boost_ADDITIONAL_VERSIONS} "1.37") +# +# Copyright (c) 2009 Andreas Pakulat +# +# Redistribution AND use is allowed according to the terms of the New +# BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +set( Boost_ADDITIONAL_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.37" ) include(${CMAKE_ROOT}/Modules/FindBoost.cmake) -- cgit v1.2.1 From fa5c61695a8658b5cae4865bd1f124d4a93c2542 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Wed, 13 May 2009 07:42:56 +0000 Subject: Make sure to always search the install path first - very important for development with trunk version of Soprano svn path=/trunk/KDE/kdelibs/; revision=967293 --- modules/FindSoprano.cmake | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 1f45f972..fb84c2e4 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -42,44 +42,44 @@ find_path(SOPRANO_INCLUDE_DIR NAMES soprano/soprano.h - PATHS - ${KDE4_INCLUDE_DIR} + HINTS ${INCLUDE_INSTALL_DIR} + ${KDE4_INCLUDE_DIR} ) find_library_with_debug(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoindex - PATHS - ${KDE4_LIB_DIR} + HINTS ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} ) find_library_with_debug(SOPRANO_CLIENT_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoclient - PATHS - ${KDE4_LIB_DIR} + HINTS ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} ) find_library_with_debug(SOPRANO_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES soprano - PATHS - ${KDE4_LIB_DIR} + HINTS ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} ) find_library_with_debug(SOPRANO_SERVER_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES sopranoserver - PATHS - ${KDE4_LIB_DIR} + HINTS ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} ) # check for all the libs as required to make sure that we do not try to compile with an old version @@ -178,7 +178,7 @@ if(Soprano_FOUND) if(NOT Soprano_FIND_QUIETLY) - message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") + message(STATUS "Found Soprano version ${SOPRANO_VERSION}: ${SOPRANO_LIBRARIES}") message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") -- cgit v1.2.1 From 82747026163b9ef9c0e0a35dab23764908aea495 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 13 May 2009 07:50:11 +0000 Subject: Forwardport r963449: Fix strcasestr detection for glibc-2.9 svn path=/trunk/KDE/kdelibs/; revision=967299 --- modules/CheckCXXSymbolExists.cmake | 71 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 modules/CheckCXXSymbolExists.cmake (limited to 'modules') diff --git a/modules/CheckCXXSymbolExists.cmake b/modules/CheckCXXSymbolExists.cmake new file mode 100644 index 00000000..f309fb0a --- /dev/null +++ b/modules/CheckCXXSymbolExists.cmake @@ -0,0 +1,71 @@ +# - Check if the symbol exists in include files, in C++ mode +# Forked off cmake's CheckSymbolExists.cmake +# CHECK_CXX_SYMBOL_EXISTS(SYMBOL FILES VARIABLE) +# +# SYMBOL - symbol +# FILES - include files to check +# VARIABLE - variable to return result +# +# The following variables may be set before calling this macro to +# modify the way the check is run: +# +# CMAKE_REQUIRED_FLAGS = string of compile command line flags +# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) +# CMAKE_REQUIRED_INCLUDES = list of include directories +# CMAKE_REQUIRED_LIBRARIES = list of libraries to link + +MACRO(CHECK_CXX_SYMBOL_EXISTS SYMBOL FILES VARIABLE) + IF("${VARIABLE}" MATCHES "^${VARIABLE}$") + SET(CMAKE_CONFIGURABLE_FILE_CONTENT "/* */\n") + SET(MACRO_CHECK_SYMBOL_EXISTS_FLAGS ${CMAKE_REQUIRED_FLAGS}) + IF(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_SYMBOL_EXISTS_LIBS + "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}") + ELSE(CMAKE_REQUIRED_LIBRARIES) + SET(CHECK_SYMBOL_EXISTS_LIBS) + ENDIF(CMAKE_REQUIRED_LIBRARIES) + IF(CMAKE_REQUIRED_INCLUDES) + SET(CMAKE_SYMBOL_EXISTS_INCLUDES + "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}") + ELSE(CMAKE_REQUIRED_INCLUDES) + SET(CMAKE_SYMBOL_EXISTS_INCLUDES) + ENDIF(CMAKE_REQUIRED_INCLUDES) + FOREACH(FILE ${FILES}) + SET(CMAKE_CONFIGURABLE_FILE_CONTENT + "${CMAKE_CONFIGURABLE_FILE_CONTENT}#include <${FILE}>\n") + ENDFOREACH(FILE) + SET(CMAKE_CONFIGURABLE_FILE_CONTENT + "${CMAKE_CONFIGURABLE_FILE_CONTENT}\nvoid cmakeRequireSymbol(int dummy,...){(void)dummy;}\nint main()\n{\n#ifndef ${SYMBOL}\n cmakeRequireSymbol(0,&${SYMBOL});\n#endif\n return 0;\n}\n") + + CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CMakeConfigurableFile.in" + "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckSymbolExists.cxx" @ONLY) + + MESSAGE(STATUS "Looking for ${SYMBOL}") + TRY_COMPILE(${VARIABLE} + ${CMAKE_BINARY_DIR} + ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckSymbolExists.cxx + COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} + CMAKE_FLAGS + -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_SYMBOL_EXISTS_FLAGS} + "${CHECK_SYMBOL_EXISTS_LIBS}" + "${CMAKE_SYMBOL_EXISTS_INCLUDES}" + OUTPUT_VARIABLE OUTPUT) + IF(${VARIABLE}) + MESSAGE(STATUS "Looking for ${SYMBOL} - found") + SET(${VARIABLE} 1 CACHE INTERNAL "Have symbol ${SYMBOL}") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log + "Determining if the ${SYMBOL} " + "exist passed with the following output:\n" + "${OUTPUT}\nFile ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckSymbolExists.cxx:\n" + "${CMAKE_CONFIGURABLE_FILE_CONTENT}\n") + ELSE(${VARIABLE}) + MESSAGE(STATUS "Looking for ${SYMBOL} - not found.") + SET(${VARIABLE} "" CACHE INTERNAL "Have symbol ${SYMBOL}") + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log + "Determining if the ${SYMBOL} " + "exist failed with the following output:\n" + "${OUTPUT}\nFile ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckSymbolExists.cxx:\n" + "${CMAKE_CONFIGURABLE_FILE_CONTENT}\n") + ENDIF(${VARIABLE}) + ENDIF("${VARIABLE}" MATCHES "^${VARIABLE}$") +ENDMACRO(CHECK_CXX_SYMBOL_EXISTS) -- cgit v1.2.1 From 607257d3d0239e79ca8a7527af5025070a191276 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 May 2009 20:37:26 +0000 Subject: -simplify it Alex svn path=/trunk/KDE/kdelibs/; revision=969756 --- modules/FindLibKonq.cmake | 31 +++++++------------------------ 1 file changed, 7 insertions(+), 24 deletions(-) (limited to 'modules') diff --git a/modules/FindLibKonq.cmake b/modules/FindLibKonq.cmake index f9a06d2f..365708f8 100644 --- a/modules/FindLibKonq.cmake +++ b/modules/FindLibKonq.cmake @@ -4,36 +4,19 @@ # LIBKONQ_FOUND - system has libkonq library # LIBKONQ_INCLUDE_DIR - the LIBKONQ include directory # LIBKONQ_LIBRARY - the libkonq library -# + # Original file: FindMarbleWidget.cmake (found in digikam-0.10.0-beta2) # copyright 2008 by Patrick Spendrin +# Copyright (c) 2009, Alexander Neundorf, # use this file as you like # # Modifications to find libkonq by Joachim Eibl 2008 -if(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) - - # Already in cache - set(LIBKONQ_FOUND TRUE) - -else(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) - find_path(LIBKONQ_INCLUDE_DIR konq_popupmenuplugin.h ) - - find_library(LIBKONQ_LIBRARY konq) +find_path(LIBKONQ_INCLUDE_DIR konq_popupmenuplugin.h ) - if(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) - set(LIBKONQ_FOUND TRUE) - endif(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) +find_library(LIBKONQ_LIBRARY konq) - if(LIBKONQ_FOUND) - if (NOT LIBKONQ_FIND_QUIETLY) - message(STATUS "Found libkonq: ${LIBKONQ_LIBRARY}") - endif (NOT LIBKONQ_FIND_QUIETLY) - else(LIBKONQ_FOUND) - if(LIBKONQ_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find KDE4 libkonq library") - endif(LIBKONQ_FIND_REQUIRED) - endif(LIBKONQ_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(LIBKONQ DEFAULT_MSG LIBKONQ_INCLUDE_DIR LIBKONG_LIBRARY ) - mark_as_advanced(LIBKONQ_INCLUDE_DIR LIBKONQ_LIBRARY) -endif(LIBKONQ_INCLUDE_DIR AND LIBKONQ_LIBRARY) +mark_as_advanced(LIBKONQ_INCLUDE_DIR LIBKONQ_LIBRARY) -- cgit v1.2.1 From 227748b9aa38b1deee3bf9a825a5d0a2971b5836 Mon Sep 17 00:00:00 2001 From: Christoph Feck Date: Tue, 19 May 2009 12:07:33 +0000 Subject: Fix spelling svn path=/trunk/KDE/kdelibs/; revision=969968 --- modules/FindLibKonq.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindLibKonq.cmake b/modules/FindLibKonq.cmake index 365708f8..eaf4c08f 100644 --- a/modules/FindLibKonq.cmake +++ b/modules/FindLibKonq.cmake @@ -17,6 +17,6 @@ find_path(LIBKONQ_INCLUDE_DIR konq_popupmenuplugin.h ) find_library(LIBKONQ_LIBRARY konq) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(LIBKONQ DEFAULT_MSG LIBKONQ_INCLUDE_DIR LIBKONG_LIBRARY ) +find_package_handle_standard_args(LIBKONQ DEFAULT_MSG LIBKONQ_INCLUDE_DIR LIBKONQ_LIBRARY ) mark_as_advanced(LIBKONQ_INCLUDE_DIR LIBKONQ_LIBRARY) -- cgit v1.2.1 From 3708a63008ee9b8cdee6acf24019d76aaa09d372 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 26 May 2009 07:43:03 +0000 Subject: added initial support for fixing windows vista uac problem by adding a specific manifest file to executables. Vista manifest support is disabled by default and could be enabled by setting the KDE4_ENABLE_UAC_MANIFEST variable. This support requires kdewin32 >= 0.3.9 The basic idea of this patch was announced at kde-buildsystem mailing list http://lists.kde.org/?l=kde-buildsystem&m=124220817129087&w=2 without any objections for about two weeks. svn path=/trunk/KDE/kdelibs/; revision=972974 --- modules/CMakeLists.txt | 28 ++++++++++++++++++++++++++- modules/KDE4Macros.cmake | 49 ++++++++++++++++++++++++++++++++++++++++++++--- modules/Win32.Manifest.in | 10 ++++++++++ 3 files changed, 83 insertions(+), 4 deletions(-) create mode 100644 modules/Win32.Manifest.in (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 70df69b2..b67e7337 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,5 +1,23 @@ -## install the cmake files +if (WIN32) + OPTION(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) + if (KDE4_ENABLE_UAC_MANIFEST) + if (NOT MT_EXECUTABLE) + find_program(MT_EXECUTABLE mt + PATHS ${KDEWIN32_INCLUDE_DIR}/../bin + NO_DEFAULT_PATH + ) + endif (NOT MT_EXECUTABLE) + if (MT_EXECUTABLE) + message(STATUS "Found KDE manifest tool at ${MT_EXECUTABLE} ") + else (MT_EXECUTABLE) + message(STATUS "KDE manifest tool not found, manifest generating for Windows Vista disabled") + set (KDE4_ENABLE_UAC_MANIFEST OFF) + endif (MT_EXECUTABLE) + endif (KDE4_ENABLE_UAC_MANIFEST) +endif (WIN32) +## install the cmake files + file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) @@ -15,9 +33,17 @@ install( FILES cmake-modules-styleguide.txt FindPyQt.py FindSIP.py PythonCompile.py + Win32.Manifest.in ${cmakeFiles} DESTINATION ${module_install_dir} ) +if (KDE4_ENABLE_UAC_MANIFEST) + install( FILES cmake-modules-styleguide.txt + Win32.Manifest.in + DESTINATION ${module_install_dir} + ) +endif (KDE4_ENABLE_UAC_MANIFEST) + # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex #set(FILES_TO_REMOVE #) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ce310ebf..eadf5708 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -30,7 +30,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. - # This is for versions of automoc4 which don't provide these two macros. # If such a version is used, just use the "old" style automoc handling. if(NOT COMMAND _AUTOMOC4_KDE4_PRE_TARGET_HANDLING) @@ -791,6 +790,47 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endmacro (KDE4_ADD_UNIT_TEST) +# add a manifest file to executables. This macro is used by kde4_add_executable +# +# In cmake <= 2.6.4 there is a bug which returns a wrong path from +# get_target_property(var LOCATION), when the +# OUTPUT_NAME property of a target is set before. +# +# To workaround those cases a specific variable should be set before +# calling kde4_add_executable as shown by the following example: +# +# set(xyz_OUTPUT_NAME test) +# kde4_add_executable( xyz ) +# set_target_properties( xyz PROPERTIES OUTPUT_NAME ${xyz_OUTPUT_NAME} ) +# +macro (KDE4_ADD_MANIFEST _target_NAME) + set(x ${_target_NAME}_OUTPUT_NAME) + if (${x}) + set (_executable ${_target_NAME}_LOCATION) + else(${x}) + get_target_property(_executable ${_target_NAME} LOCATION ) + endif(${x}) + + if (_kdeBootStrapping) + set(_cmake_module_path ${CMAKE_SOURCE_DIR}/cmake/modules) + else (_kdeBootStrapping) + set(_cmake_module_path ${KDE4_INSTALL_DIR}/share/apps/cmake/modules) + endif (_kdeBootStrapping) + + set(_manifest ${_cmake_module_path}/Win32.Manifest.in) + #message(STATUS ${_executable} ${_manifest}) + add_custom_command( + TARGET ${_target_NAME} + POST_BUILD + COMMAND ${MT_EXECUTABLE} + ARGS + -manifest ${_manifest} + -updateresource:${_executable} + COMMENT "adding vista trustInfo manifest to ${_target_NAME}" + ) +endmacro(KDE4_ADD_MANIFEST) + + macro (KDE4_ADD_EXECUTABLE _target_NAME) kde4_check_executable_params( _SRCS _nogui _uninst _test ${ARGN}) @@ -823,7 +863,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endif (_test AND NOT KDE4_BUILD_TESTS) _automoc4_kde4_pre_target_handling(${_target_NAME} _SRCS) - + if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) add_executable(${_target_NAME} ${_add_executable_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) @@ -831,6 +871,10 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) add_executable(${_target_NAME} ${_add_executable_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) + IF (KDE4_ENABLE_UAC_MANIFEST) + KDE4_ADD_MANIFEST(${_target_NAME}) + ENDIF(KDE4_ENABLE_UAC_MANIFEST) + _automoc4_kde4_post_target_handling(${_target_NAME}) if (_test) @@ -896,7 +940,6 @@ macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) endmacro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) - macro (KDE4_ADD_WIDGET_FILES _sources) foreach (_current_FILE ${ARGN}) diff --git a/modules/Win32.Manifest.in b/modules/Win32.Manifest.in new file mode 100644 index 00000000..f8d7ba4f --- /dev/null +++ b/modules/Win32.Manifest.in @@ -0,0 +1,10 @@ + + + + + + + + + + -- cgit v1.2.1 From 47deb33eb4acf0d48476eb07cf7ab0e3a187b580 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 26 May 2009 07:50:25 +0000 Subject: fixed double install svn path=/trunk/KDE/kdelibs/; revision=972977 --- modules/CMakeLists.txt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index b67e7337..7d61821e 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -33,13 +33,11 @@ install( FILES cmake-modules-styleguide.txt FindPyQt.py FindSIP.py PythonCompile.py - Win32.Manifest.in ${cmakeFiles} DESTINATION ${module_install_dir} ) if (KDE4_ENABLE_UAC_MANIFEST) - install( FILES cmake-modules-styleguide.txt - Win32.Manifest.in + install( FILES Win32.Manifest.in DESTINATION ${module_install_dir} ) endif (KDE4_ENABLE_UAC_MANIFEST) -- cgit v1.2.1 From b3c2e3ff4e329cdc24e3275aaeb61cd4e0525a31 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 26 May 2009 10:54:50 +0000 Subject: documented the real problem better svn path=/trunk/KDE/kdelibs/; revision=973034 --- modules/KDE4Macros.cmake | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index eadf5708..d02e0c55 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -792,17 +792,30 @@ endmacro (KDE4_ADD_UNIT_TEST) # add a manifest file to executables. This macro is used by kde4_add_executable # -# In cmake <= 2.6.4 there is a bug which returns a wrong path from -# get_target_property(var LOCATION), when the -# OUTPUT_NAME property of a target is set before. +# There is a henn-egg problem when a target runtime part is renamed using +# the OUTPUT_NAME option of cmake's set_target_properties command. +# +# At now the Makefiles rules creating for manifest adding are performed +# *after* the cmake's add_executable command but *before* an optional +# set_target_properties command. +# This means that in KDE4_ADD_MANIFEST the LOCATION property contains +# the unchanged runtime part name of the target. :-( # -# To workaround those cases a specific variable should be set before -# calling kde4_add_executable as shown by the following example: +# The recently used workaround is to specify a variable build off the target name followed +# by _OUTPUT_NAME before calling kde4_add_executable as shown in the following example: # # set(xyz_OUTPUT_NAME test) # kde4_add_executable( xyz ) # set_target_properties( xyz PROPERTIES OUTPUT_NAME ${xyz_OUTPUT_NAME} ) # +# The full solution would be to introduce a kde4_target_link_libraries macro and to +# call KDE4_ADD_MANIFEST inside instead of calling in kde4_add_executable. +# This would require patching of *all* places in the KDE sources. where target_link_libraries +# is used and to change the related docs. +# +# Because yet I found only 2 locations where this problem occurs (kjs, k3b), the workaround +# seems to be a pragmatically solution. +# macro (KDE4_ADD_MANIFEST _target_NAME) set(x ${_target_NAME}_OUTPUT_NAME) if (${x}) -- cgit v1.2.1 From 820fd6937b0732ee3bd4a87c0f9b5c9e5a4262c0 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 26 May 2009 11:19:11 +0000 Subject: space fix svn path=/trunk/KDE/kdelibs/; revision=973042 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index d02e0c55..abdd01e9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -810,10 +810,10 @@ endmacro (KDE4_ADD_UNIT_TEST) # # The full solution would be to introduce a kde4_target_link_libraries macro and to # call KDE4_ADD_MANIFEST inside instead of calling in kde4_add_executable. -# This would require patching of *all* places in the KDE sources. where target_link_libraries +# This would require patching of *all* places in the KDE sources where target_link_libraries # is used and to change the related docs. # -# Because yet I found only 2 locations where this problem occurs (kjs, k3b), the workaround +# Because yet I found only 2 locations where this problem occurs (kjs, k3b), the workaround # seems to be a pragmatically solution. # macro (KDE4_ADD_MANIFEST _target_NAME) -- cgit v1.2.1 From cfa2b7678a59d2fba8b569bb2cf2aa842cdef6d7 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 26 May 2009 11:20:38 +0000 Subject: fixed initialisation of uac manifest support for non kdelibs packages svn path=/trunk/KDE/kdelibs/; revision=973045 --- modules/CMakeLists.txt | 18 ------------------ modules/FindKDE4Internal.cmake | 20 ++++++++++++++++++-- 2 files changed, 18 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 7d61821e..0d17be16 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,21 +1,3 @@ -if (WIN32) - OPTION(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) - if (KDE4_ENABLE_UAC_MANIFEST) - if (NOT MT_EXECUTABLE) - find_program(MT_EXECUTABLE mt - PATHS ${KDEWIN32_INCLUDE_DIR}/../bin - NO_DEFAULT_PATH - ) - endif (NOT MT_EXECUTABLE) - if (MT_EXECUTABLE) - message(STATUS "Found KDE manifest tool at ${MT_EXECUTABLE} ") - else (MT_EXECUTABLE) - message(STATUS "KDE manifest tool not found, manifest generating for Windows Vista disabled") - set (KDE4_ENABLE_UAC_MANIFEST OFF) - endif (MT_EXECUTABLE) - endif (KDE4_ENABLE_UAC_MANIFEST) -endif (WIN32) - ## install the cmake files file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b5a9bb5a..a9997dfa 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -582,6 +582,24 @@ endif(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSI # info from "http://www.linuxfromscratch.org/hlfs/view/unstable/glibc/chapter02/pie.html" option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") +if (WIN32) + find_package(KDEWIN32 REQUIRED) + OPTION(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) + if (KDE4_ENABLE_UAC_MANIFEST) + if (NOT MT_EXECUTABLE) + find_program(MT_EXECUTABLE mt + PATHS ${KDEWIN32_INCLUDE_DIR}/../bin + NO_DEFAULT_PATH + ) + endif (NOT MT_EXECUTABLE) + if (MT_EXECUTABLE) + message(STATUS "Found KDE manifest tool at ${MT_EXECUTABLE} ") + else (MT_EXECUTABLE) + message(STATUS "KDE manifest tool not found, manifest generating for Windows Vista disabled") + set (KDE4_ENABLE_UAC_MANIFEST OFF) + endif (MT_EXECUTABLE) + endif (KDE4_ENABLE_UAC_MANIFEST) +endif (WIN32) ##################### some more settings ########################################## @@ -794,8 +812,6 @@ if (WIN32) message(FATAL_ERROR "Cygwin is NOT supported, use mingw or MSVC to build KDE4.") endif(CYGWIN) - find_package(KDEWIN32 REQUIRED) - # limit win32 packaging to kdelibs at now # don't know if package name, version and notes are always available if(_kdeBootStrapping) -- cgit v1.2.1 From 56362390af4fb86fba0771eafdb174ed96224783 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Thu, 28 May 2009 22:19:31 +0000 Subject: Support and document QT_VERSION_(MAJOR|MINOR|PATCH) as does FindQt4.cmake from cmake-upstream. svn path=/trunk/KDE/kdelibs/; revision=974307 --- modules/FindQt4.cmake | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index cfac9b60..4fc50324 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -120,6 +120,10 @@ # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. # +# QT_VERSION_MAJOR The major version of Qt found. +# QT_VERSION_MINOR The minor version of Qt found. +# QT_VERSION_PATCH The patch version of Qt found. +# # QT_QTCORE_FOUND True if QtCore was found. # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. @@ -391,13 +395,13 @@ IF (QT_QMAKE_EXECUTABLE) ENDIF (NOT req_qt_major_vers EQUAL 4) # and now the version string given by qmake - STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}") - STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}") + STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" QT_VERSION_MAJOR "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" QT_VERSION_MINOR "${QTVERSION}") + STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" QT_VERSION_PATCH "${QTVERSION}") # compute an overall version number which can be compared at once MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") - MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}") + MATH(EXPR found_vers "${QT_VERSION_MAJOR}*10000 + ${QT_VERSION_MINOR}*100 + ${QT_VERSION_PATCH}") IF (found_vers LESS req_vers) SET(QT4_QMAKE_FOUND FALSE) -- cgit v1.2.1 From 97e20ea060df47c3d6a849026826a32e98375f5b Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 29 May 2009 15:55:37 +0000 Subject: made cmake policy conform svn path=/trunk/KDE/kdelibs/; revision=974523 --- modules/FindKDE4Internal.cmake | 18 ++++++++---------- modules/KDE4Macros.cmake | 16 +++++++++------- 2 files changed, 17 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a9997dfa..a99ddd14 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -586,18 +586,16 @@ if (WIN32) find_package(KDEWIN32 REQUIRED) OPTION(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) if (KDE4_ENABLE_UAC_MANIFEST) - if (NOT MT_EXECUTABLE) - find_program(MT_EXECUTABLE mt - PATHS ${KDEWIN32_INCLUDE_DIR}/../bin - NO_DEFAULT_PATH - ) - endif (NOT MT_EXECUTABLE) - if (MT_EXECUTABLE) - message(STATUS "Found KDE manifest tool at ${MT_EXECUTABLE} ") - else (MT_EXECUTABLE) + find_program(KDE4_MT_EXECUTABLE mt + PATHS ${KDEWIN32_INCLUDE_DIR}/../bin + NO_DEFAULT_PATH + ) + if (KDE4_MT_EXECUTABLE) + message(STATUS "Found KDE manifest tool at ${KDE4_MT_EXECUTABLE} ") + else (KDE4_MT_EXECUTABLE) message(STATUS "KDE manifest tool not found, manifest generating for Windows Vista disabled") set (KDE4_ENABLE_UAC_MANIFEST OFF) - endif (MT_EXECUTABLE) + endif (KDE4_MT_EXECUTABLE) endif (KDE4_ENABLE_UAC_MANIFEST) endif (WIN32) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index abdd01e9..ce293b51 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -790,18 +790,18 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endmacro (KDE4_ADD_UNIT_TEST) -# add a manifest file to executables. This macro is used by kde4_add_executable +# add a manifest file to executables. # # There is a henn-egg problem when a target runtime part is renamed using # the OUTPUT_NAME option of cmake's set_target_properties command. # # At now the Makefiles rules creating for manifest adding are performed -# *after* the cmake's add_executable command but *before* an optional +# *after* the cmake's add_executable command but *before* an optional # set_target_properties command. # This means that in KDE4_ADD_MANIFEST the LOCATION property contains # the unchanged runtime part name of the target. :-( # -# The recently used workaround is to specify a variable build off the target name followed +# The recently used workaround is to specify a variable build off the target name followed # by _OUTPUT_NAME before calling kde4_add_executable as shown in the following example: # # set(xyz_OUTPUT_NAME test) @@ -816,7 +816,9 @@ endmacro (KDE4_ADD_UNIT_TEST) # Because yet I found only 2 locations where this problem occurs (kjs, k3b), the workaround # seems to be a pragmatically solution. # -macro (KDE4_ADD_MANIFEST _target_NAME) +# This macro is an internal macro only used by kde4_add_executable +# +macro (_KDE4_ADD_MANIFEST _target_NAME) set(x ${_target_NAME}_OUTPUT_NAME) if (${x}) set (_executable ${_target_NAME}_LOCATION) @@ -835,13 +837,13 @@ macro (KDE4_ADD_MANIFEST _target_NAME) add_custom_command( TARGET ${_target_NAME} POST_BUILD - COMMAND ${MT_EXECUTABLE} + COMMAND ${KDE4_MT_EXECUTABLE} ARGS -manifest ${_manifest} -updateresource:${_executable} COMMENT "adding vista trustInfo manifest to ${_target_NAME}" ) -endmacro(KDE4_ADD_MANIFEST) +endmacro(_KDE4_ADD_MANIFEST) macro (KDE4_ADD_EXECUTABLE _target_NAME) @@ -885,7 +887,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endif (KDE4_ENABLE_FINAL) IF (KDE4_ENABLE_UAC_MANIFEST) - KDE4_ADD_MANIFEST(${_target_NAME}) + _kde4_add_manifest(${_target_NAME}) ENDIF(KDE4_ENABLE_UAC_MANIFEST) _automoc4_kde4_post_target_handling(${_target_NAME}) -- cgit v1.2.1 From 2d05aab9b32bed3b52a703079a076e24a6c4fd2c Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 29 May 2009 15:56:51 +0000 Subject: fixed manifest adding when using OUTPUT_NAME target properties svn path=/trunk/KDE/kdelibs/; revision=974524 --- modules/KDE4Macros.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ce293b51..17a8065e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -821,7 +821,8 @@ endmacro (KDE4_ADD_UNIT_TEST) macro (_KDE4_ADD_MANIFEST _target_NAME) set(x ${_target_NAME}_OUTPUT_NAME) if (${x}) - set (_executable ${_target_NAME}_LOCATION) + get_target_property(_var ${_target_NAME} LOCATION ) + string(REPLACE "${_target_NAME}" "${${x}}" _executable ${_var}) else(${x}) get_target_property(_executable ${_target_NAME} LOCATION ) endif(${x}) -- cgit v1.2.1 From 6fbc2e42f2f54f1e88b29e3498861080afec8473 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Fri, 29 May 2009 15:57:25 +0000 Subject: added commit policy links svn path=/trunk/KDE/kdelibs/; revision=974525 --- modules/README | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'modules') diff --git a/modules/README b/modules/README index 14fab742..d487a0b2 100644 --- a/modules/README +++ b/modules/README @@ -4,5 +4,16 @@ coming with cmake, some of them are NOT yet part of cmake. To use them, copy them into the cmake Module directory or run "cmake ." followed by "make install" +Changes to any files should follow the + +cmake commit policy + + at http://techbase.kde.org/Policies/CMake_Commit_Policy + +and the cmake coding style + + at http://techbase.kde.org/Policies/CMake_Coding_Style + + Alex -- cgit v1.2.1 From ae3ca088bb52dd48d2ecba2e00467e7803a516f2 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Mon, 1 Jun 2009 11:43:33 +0000 Subject: Also serach for the QtHelp library when using frameworks. svn path=/trunk/KDE/kdelibs/; revision=976236 --- modules/FindQt4.cmake | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 4fc50324..52359172 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -851,6 +851,12 @@ IF (QT4_QMAKE_FOUND) SET(QT_QTXMLPATTERNS_FOUND FALSE) ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) + IF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) + SET(QT_QTHELP_FOUND TRUE) + SET(QT_QTHELP_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtHelp" CACHE STRING "The QtHelp library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) + SET(QT_QTHELP_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) # WTF? why don't we have frameworks? :P # Set QT_QTUITOOLS_LIBRARY -- cgit v1.2.1 From 5363f85ae5e6be164e1bb32164f45c41800fb520 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Tue, 2 Jun 2009 21:19:45 +0000 Subject: if PHONON_INCLUDE_DIR is a framework directory on Mac OS X, we need to include the Headers/ subdir to read the .h file directly svn path=/trunk/KDE/kdelibs/; revision=976874 --- modules/FindPhonon.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 93332697..e9d45f0b 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -12,7 +12,11 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. macro(_phonon_find_version) - file(READ "${PHONON_INCLUDE_DIR}/phonon/phononnamespace.h" _phonon_header LIMIT 5000 OFFSET 1000) + set(_phonon_namespace_header_file "${PHONON_INCLUDE_DIR}/phonon/phononnamespace.h") + if (APPLE AND EXISTS "${PHONON_INCLUDE_DIR}/Headers/phonon/phononnamespace.h") + set(_phonon_namespace_header_file "${PHONON_INCLUDE_DIR}/Headers/phonon/phononnamespace.h") + endif (APPLE AND EXISTS "${PHONON_INCLUDE_DIR}/Headers/phonon/phononnamespace.h") + file(READ _phonon_namespace_header_file _phonon_header LIMIT 5000 OFFSET 1000) string(REGEX MATCH "define PHONON_VERSION_STR \"(4\\.[0-9]+\\.[0-9a-z]+)\"" _phonon_version_match "${_phonon_header}") set(PHONON_VERSION "${CMAKE_MATCH_1}") message(STATUS "Phonon Version: ${PHONON_VERSION}") -- cgit v1.2.1 From 752d23e59dd11f71763cc1c72dad30a2cc0964a7 Mon Sep 17 00:00:00 2001 From: Benjamin Reed Date: Tue, 2 Jun 2009 21:23:43 +0000 Subject: it helps to check in the right file when editing in 2 different places :P svn path=/trunk/KDE/kdelibs/; revision=976876 --- modules/FindPhonon.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index e9d45f0b..33faaada 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -13,10 +13,10 @@ macro(_phonon_find_version) set(_phonon_namespace_header_file "${PHONON_INCLUDE_DIR}/phonon/phononnamespace.h") - if (APPLE AND EXISTS "${PHONON_INCLUDE_DIR}/Headers/phonon/phononnamespace.h") - set(_phonon_namespace_header_file "${PHONON_INCLUDE_DIR}/Headers/phonon/phononnamespace.h") - endif (APPLE AND EXISTS "${PHONON_INCLUDE_DIR}/Headers/phonon/phononnamespace.h") - file(READ _phonon_namespace_header_file _phonon_header LIMIT 5000 OFFSET 1000) + if (APPLE AND EXISTS "${PHONON_INCLUDE_DIR}/Headers/phononnamespace.h") + set(_phonon_namespace_header_file "${PHONON_INCLUDE_DIR}/Headers/phononnamespace.h") + endif (APPLE AND EXISTS "${PHONON_INCLUDE_DIR}/Headers/phononnamespace.h") + file(READ ${_phonon_namespace_header_file} _phonon_header LIMIT 5000 OFFSET 1000) string(REGEX MATCH "define PHONON_VERSION_STR \"(4\\.[0-9]+\\.[0-9a-z]+)\"" _phonon_version_match "${_phonon_header}") set(PHONON_VERSION "${CMAKE_MATCH_1}") message(STATUS "Phonon Version: ${PHONON_VERSION}") -- cgit v1.2.1 From ad016366d75d46d029b469ba8073cbf8c0fec113 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 10 Jun 2009 08:56:30 +0000 Subject: uses new kdewin library first, only when not found the old kdewin32 library svn path=/trunk/KDE/kdelibs/; revision=979583 --- modules/FindKDEWIN32.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index abbff19e..ec6ac8fa 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -25,9 +25,9 @@ if (WIN32) FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) if (CMAKE_BUILD_TYPE STREQUAL "Debug") - set (LIBRARY_NAME kdewin32d) + set (LIBRARY_NAME kdewind kdewin32d) else (CMAKE_BUILD_TYPE STREQUAL "Debug") - set (LIBRARY_NAME kdewin32) + set (LIBRARY_NAME kdewin kdewin32) endif (CMAKE_BUILD_TYPE STREQUAL "Debug") find_library(KDEWIN32_LIBRARY -- cgit v1.2.1 From f22141bb6681a17948dca23a39d0779e9375bde2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6kcen=20Eraslan?= Date: Wed, 10 Jun 2009 09:29:49 +0000 Subject: Fix project name control. Previously, condition was always true since there is no variable named printer-applet. CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=979601 --- modules/FindPyKDE4.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake index dd2b7380..1db7bf08 100644 --- a/modules/FindPyKDE4.cmake +++ b/modules/FindPyKDE4.cmake @@ -156,9 +156,9 @@ ENDMACRO(PYKDE4_INSTALL_PYTHON_FILES) # executable. # MACRO(PYKDE4_ADD_EXECUTABLE _pyname _exename) - if(NOT ${PROJECT_NAME}) - MESSAGE(STATUS "Project name is necessary to create symlink against python program!!! It will failed.") - endif(NOT ${PROJECT_NAME}) + if(NOT PROJECT_NAME) + MESSAGE(STATUS "Project name is necessary to create symlink against python program!!! It will fail.") + endif(NOT PROJECT_NAME) INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname} -DLINK_NAME=${BIN_INSTALL_DIR}/${_exename} -P ${current_module_dir}/create_exe_symlink.cmake)" ) ENDMACRO(PYKDE4_ADD_EXECUTABLE) -- cgit v1.2.1 From abb2c24845f953eb181b7858ca8aecc145e99462 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6kcen=20Eraslan?= Date: Wed, 10 Jun 2009 11:34:57 +0000 Subject: Do not show DESTDIR of target in CMake status message, according to r931922. CCMAIL: mueller@kde.org svn path=/trunk/KDE/kdelibs/; revision=979647 --- modules/create_exe_symlink.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/create_exe_symlink.cmake b/modules/create_exe_symlink.cmake index 95db4b48..691e8458 100644 --- a/modules/create_exe_symlink.cmake +++ b/modules/create_exe_symlink.cmake @@ -1,7 +1,7 @@ # Create an executable symlink to a Python script. # This also sets the target script's permission bits. -MESSAGE(STATUS "Symlinking $ENV{DESTDIR}/${LINK_NAME} to $ENV{DESTDIR}/${TARGET}") +MESSAGE(STATUS "Symlinking $ENV{DESTDIR}/${LINK_NAME} to ${TARGET}") GET_FILENAME_COMPONENT(abs_link_name $ENV{DESTDIR}/${LINK_NAME} ABSOLUTE) GET_FILENAME_COMPONENT(link_path $ENV{DESTDIR}/${LINK_NAME} PATH) -- cgit v1.2.1 From 8905501ac368562a62408b50768da681c0fd8bb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6kcen=20Eraslan?= Date: Wed, 10 Jun 2009 13:01:43 +0000 Subject: Run chmod on compiled files, instead of files installed on system. CCMAIL: montel@kde.org svn path=/trunk/KDE/kdelibs/; revision=979688 --- modules/create_exe_symlink.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/create_exe_symlink.cmake b/modules/create_exe_symlink.cmake index 691e8458..f265780b 100644 --- a/modules/create_exe_symlink.cmake +++ b/modules/create_exe_symlink.cmake @@ -11,6 +11,6 @@ FILE(MAKE_DIRECTORY ${abs_link_path}) GET_FILENAME_COMPONENT(abs_target ${TARGET} ABSOLUTE) IF(UNIX) EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink ${abs_target} ${abs_link_name}) - EXECUTE_PROCESS(COMMAND chmod a+x ${abs_target}) + EXECUTE_PROCESS(COMMAND chmod a+x $ENV{DESTDIR}/${abs_target}) ENDIF(UNIX) # FIXME: WIN32 support -- cgit v1.2.1 From 98b828d70a0d23c5de29b30854685a9252b7762d Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Mon, 15 Jun 2009 13:31:38 +0000 Subject: minor fix for finding the kdewin package svn path=/trunk/KDE/kdelibs/; revision=982307 --- modules/FindKDEWIN32.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index ec6ac8fa..6ed0492c 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -16,7 +16,7 @@ if (WIN32) if (NOT KDEWIN32_DIR) - find_path(KDEWIN32_INCLUDE_DIR winposix_export.h + find_path(KDEWIN32_INCLUDE_DIR kdewin_export.h winposix_export.h ${CMAKE_INCLUDE_PATH} ${CMAKE_INSTALL_PREFIX}/include ) -- cgit v1.2.1 From 6962f4ad4ba904ce99398af174de6fbb06bb9be9 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 16 Jun 2009 06:43:45 +0000 Subject: renamed kdewin32 to kdewin to have a more generic name, approved by kde-buildsystem list svn path=/trunk/KDE/kdelibs/; revision=982530 --- modules/FindKDE4Internal.cmake | 10 +++--- modules/FindKDEWIN.cmake | 73 ++++++++++++++++++++++++++++++++++++++++++ modules/FindKDEWIN32.cmake | 67 ++++++-------------------------------- 3 files changed, 88 insertions(+), 62 deletions(-) create mode 100644 modules/FindKDEWIN.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a99ddd14..397a0d79 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -583,11 +583,11 @@ endif(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSI option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") if (WIN32) - find_package(KDEWIN32 REQUIRED) + find_package(KDEWIN REQUIRED) OPTION(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) if (KDE4_ENABLE_UAC_MANIFEST) find_program(KDE4_MT_EXECUTABLE mt - PATHS ${KDEWIN32_INCLUDE_DIR}/../bin + PATHS ${KDEWIN_INCLUDE_DIR}/../bin NO_DEFAULT_PATH ) if (KDE4_MT_EXECUTABLE) @@ -822,12 +822,12 @@ if (WIN32) addExplorerWrapper("kdelibs") endif(_kdeBootStrapping) - set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN32_INCLUDES}) + set( _KDE4_PLATFORM_INCLUDE_DIRS ${KDEWIN_INCLUDES}) - # if we are compiling kdelibs, add KDEWIN32_LIBRARIES explicitely, + # if we are compiling kdelibs, add KDEWIN_LIBRARIES explicitely, # otherwise they come from KDELibsDependencies.cmake, Alex if (_kdeBootStrapping) - set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN32_LIBRARIES} ) + set( KDE4_KDECORE_LIBS ${KDE4_KDECORE_LIBS} ${KDEWIN_LIBRARIES} ) endif (_kdeBootStrapping) # we prefer to use a different postfix for debug libs only on Windows diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake new file mode 100644 index 00000000..354ecb91 --- /dev/null +++ b/modules/FindKDEWIN.cmake @@ -0,0 +1,73 @@ +# - Try to find the KDEWIN library +# +# Once done this will define +# +# KDEWIN_FOUND - system has KDEWIN +# KDEWIN_INCLUDES - the KDEWIN include directories +# KDEWIN_LIBRARIES - The libraries needed to use KDEWIN + +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007-2009, Ralf Habacker, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (WIN32) + if (NOT KDEWIN_LIBRARIES) + + find_path(KDEWIN_INCLUDE_DIR kdewin_export.h + ${CMAKE_INCLUDE_PATH} + ${CMAKE_INSTALL_PREFIX}/include + ) + + # search for kdewin in the default install directory for applications (default of (n)make install) + FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) + + if (CMAKE_BUILD_TYPE STREQUAL "Debug") + set (LIBRARY_NAME kdewind) + else (CMAKE_BUILD_TYPE STREQUAL "Debug") + set (LIBRARY_NAME kdewin) + endif (CMAKE_BUILD_TYPE STREQUAL "Debug") + + find_library(KDEWIN_LIBRARY + NAMES ${LIBRARY_NAME} + PATHS + ${_cmakeLibraryPathCmakeStyle} + ${CMAKE_INSTALL_PREFIX}/lib + NO_SYSTEM_ENVIRONMENT_PATH + ) + + if (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) + set(KDEWIN_FOUND TRUE) + # add needed system libs + set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) + + if (MINGW) + #mingw compiler + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + else (MINGW) + # msvc compiler + # add the MS SDK include directory if available + file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + endif (MINGW) + + endif (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) + # required for configure + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN_INCLUDES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN_LIBRARIES}) + + endif (NOT KDEWIN_LIBRARIES) + + if (KDEWIN_FOUND) + if (NOT KDEWIN_FIND_QUIETLY) + message(STATUS "Found KDEWIN library: ${KDEWIN_LIBRARY}") + endif (NOT KDEWIN_FIND_QUIETLY) + + else (KDEWIN_FOUND) + if (KDEWIN_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find KDEWIN library\nPlease install it first") + endif (KDEWIN_FIND_REQUIRED) + endif (KDEWIN_FOUND) +endif (WIN32) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake index 6ed0492c..1f78055b 100644 --- a/modules/FindKDEWIN32.cmake +++ b/modules/FindKDEWIN32.cmake @@ -1,4 +1,5 @@ # - Try to find the KDEWIN32 library +# - Try to find the KDEWIN32 library - deprecated # # Once done this will define # @@ -7,67 +8,19 @@ # KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 # Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2007-2008, Ralf Habacker, +# Copyright (c) 2007-2009, Ralf Habacker, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. if (WIN32) - if (NOT KDEWIN32_DIR) - - find_path(KDEWIN32_INCLUDE_DIR kdewin_export.h winposix_export.h - ${CMAKE_INCLUDE_PATH} - ${CMAKE_INSTALL_PREFIX}/include - ) - - # search for kdewin32 in the default install directory for applications (default of (n)make install) - FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) - - if (CMAKE_BUILD_TYPE STREQUAL "Debug") - set (LIBRARY_NAME kdewind kdewin32d) - else (CMAKE_BUILD_TYPE STREQUAL "Debug") - set (LIBRARY_NAME kdewin kdewin32) - endif (CMAKE_BUILD_TYPE STREQUAL "Debug") - - find_library(KDEWIN32_LIBRARY - NAMES ${LIBRARY_NAME} - PATHS - ${_cmakeLibraryPathCmakeStyle} - ${CMAKE_INSTALL_PREFIX}/lib - NO_SYSTEM_ENVIRONMENT_PATH - ) - - if (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - set(KDEWIN32_FOUND TRUE) - # add needed system libs - set(KDEWIN32_LIBRARIES ${KDEWIN32_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) - - if (MINGW) - #mingw compiler - set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - else (MINGW) - # msvc compiler - # add the MS SDK include directory if available - file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) - set(KDEWIN32_INCLUDES ${KDEWIN32_INCLUDE_DIR} ${KDEWIN32_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) - endif (MINGW) - - endif (KDEWIN32_LIBRARY AND KDEWIN32_INCLUDE_DIR) - # required for configure - set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN32_INCLUDES}) - set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN32_LIBRARIES}) - - endif (NOT KDEWIN32_DIR) - - if (KDEWIN32_FOUND) - if (NOT KDEWIN32_FIND_QUIETLY) - message(STATUS "Found kdewin32 library: ${KDEWIN32_LIBRARY}") - endif (NOT KDEWIN32_FIND_QUIETLY) - - else (KDEWIN32_FOUND) - if (KDEWIN32_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find KDEWIN32 library\nPlease install it first") - endif (KDEWIN32_FIND_REQUIRED) - endif (KDEWIN32_FOUND) + message(STATUS "The kdewin32 cmake module is deprecated, use kdewin instead") + find_package(KDEWIN) + + if (KDEWIN_FOUND) + set(KDEWIN32_FOUND ${KDEWIN_FOUND}) + set(KDEWIN32_INCLUDES ${KDEWIN_INCLUDES}) + set(KDEWIN32_LIBRARIES ${KDEWIN_LIBRARIES}) + endif (KDEWIN_FOUND) endif (WIN32) -- cgit v1.2.1 From 852c577c89a7195b94545a53b40406f1034baf3c Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 17 Jun 2009 08:02:55 +0000 Subject: followed other module naming scheme svn path=/trunk/KDE/kdelibs/; revision=982916 --- modules/FindKDEWIN.cmake | 73 ---------------------------------------------- modules/FindKDEWIN32.cmake | 26 ----------------- modules/FindKDEWin.cmake | 73 ++++++++++++++++++++++++++++++++++++++++++++++ modules/FindKDEWin32.cmake | 26 +++++++++++++++++ 4 files changed, 99 insertions(+), 99 deletions(-) delete mode 100644 modules/FindKDEWIN.cmake delete mode 100644 modules/FindKDEWIN32.cmake create mode 100644 modules/FindKDEWin.cmake create mode 100644 modules/FindKDEWin32.cmake (limited to 'modules') diff --git a/modules/FindKDEWIN.cmake b/modules/FindKDEWIN.cmake deleted file mode 100644 index 354ecb91..00000000 --- a/modules/FindKDEWIN.cmake +++ /dev/null @@ -1,73 +0,0 @@ -# - Try to find the KDEWIN library -# -# Once done this will define -# -# KDEWIN_FOUND - system has KDEWIN -# KDEWIN_INCLUDES - the KDEWIN include directories -# KDEWIN_LIBRARIES - The libraries needed to use KDEWIN - -# Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2007-2009, Ralf Habacker, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if (WIN32) - if (NOT KDEWIN_LIBRARIES) - - find_path(KDEWIN_INCLUDE_DIR kdewin_export.h - ${CMAKE_INCLUDE_PATH} - ${CMAKE_INSTALL_PREFIX}/include - ) - - # search for kdewin in the default install directory for applications (default of (n)make install) - FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) - - if (CMAKE_BUILD_TYPE STREQUAL "Debug") - set (LIBRARY_NAME kdewind) - else (CMAKE_BUILD_TYPE STREQUAL "Debug") - set (LIBRARY_NAME kdewin) - endif (CMAKE_BUILD_TYPE STREQUAL "Debug") - - find_library(KDEWIN_LIBRARY - NAMES ${LIBRARY_NAME} - PATHS - ${_cmakeLibraryPathCmakeStyle} - ${CMAKE_INSTALL_PREFIX}/lib - NO_SYSTEM_ENVIRONMENT_PATH - ) - - if (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) - set(KDEWIN_FOUND TRUE) - # add needed system libs - set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) - - if (MINGW) - #mingw compiler - set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - else (MINGW) - # msvc compiler - # add the MS SDK include directory if available - file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) - set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) - endif (MINGW) - - endif (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) - # required for configure - set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN_INCLUDES}) - set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN_LIBRARIES}) - - endif (NOT KDEWIN_LIBRARIES) - - if (KDEWIN_FOUND) - if (NOT KDEWIN_FIND_QUIETLY) - message(STATUS "Found KDEWIN library: ${KDEWIN_LIBRARY}") - endif (NOT KDEWIN_FIND_QUIETLY) - - else (KDEWIN_FOUND) - if (KDEWIN_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find KDEWIN library\nPlease install it first") - endif (KDEWIN_FIND_REQUIRED) - endif (KDEWIN_FOUND) -endif (WIN32) diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake deleted file mode 100644 index 1f78055b..00000000 --- a/modules/FindKDEWIN32.cmake +++ /dev/null @@ -1,26 +0,0 @@ -# - Try to find the KDEWIN32 library -# - Try to find the KDEWIN32 library - deprecated -# -# Once done this will define -# -# KDEWIN32_FOUND - system has KDEWIN32 -# KDEWIN32_INCLUDES - the KDEWIN32 include directories -# KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 - -# Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2007-2009, Ralf Habacker, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if (WIN32) - message(STATUS "The kdewin32 cmake module is deprecated, use kdewin instead") - find_package(KDEWIN) - - if (KDEWIN_FOUND) - set(KDEWIN32_FOUND ${KDEWIN_FOUND}) - set(KDEWIN32_INCLUDES ${KDEWIN_INCLUDES}) - set(KDEWIN32_LIBRARIES ${KDEWIN_LIBRARIES}) - endif (KDEWIN_FOUND) -endif (WIN32) diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake new file mode 100644 index 00000000..354ecb91 --- /dev/null +++ b/modules/FindKDEWin.cmake @@ -0,0 +1,73 @@ +# - Try to find the KDEWIN library +# +# Once done this will define +# +# KDEWIN_FOUND - system has KDEWIN +# KDEWIN_INCLUDES - the KDEWIN include directories +# KDEWIN_LIBRARIES - The libraries needed to use KDEWIN + +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007-2009, Ralf Habacker, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (WIN32) + if (NOT KDEWIN_LIBRARIES) + + find_path(KDEWIN_INCLUDE_DIR kdewin_export.h + ${CMAKE_INCLUDE_PATH} + ${CMAKE_INSTALL_PREFIX}/include + ) + + # search for kdewin in the default install directory for applications (default of (n)make install) + FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) + + if (CMAKE_BUILD_TYPE STREQUAL "Debug") + set (LIBRARY_NAME kdewind) + else (CMAKE_BUILD_TYPE STREQUAL "Debug") + set (LIBRARY_NAME kdewin) + endif (CMAKE_BUILD_TYPE STREQUAL "Debug") + + find_library(KDEWIN_LIBRARY + NAMES ${LIBRARY_NAME} + PATHS + ${_cmakeLibraryPathCmakeStyle} + ${CMAKE_INSTALL_PREFIX}/lib + NO_SYSTEM_ENVIRONMENT_PATH + ) + + if (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) + set(KDEWIN_FOUND TRUE) + # add needed system libs + set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) + + if (MINGW) + #mingw compiler + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + else (MINGW) + # msvc compiler + # add the MS SDK include directory if available + file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + endif (MINGW) + + endif (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) + # required for configure + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN_INCLUDES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN_LIBRARIES}) + + endif (NOT KDEWIN_LIBRARIES) + + if (KDEWIN_FOUND) + if (NOT KDEWIN_FIND_QUIETLY) + message(STATUS "Found KDEWIN library: ${KDEWIN_LIBRARY}") + endif (NOT KDEWIN_FIND_QUIETLY) + + else (KDEWIN_FOUND) + if (KDEWIN_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find KDEWIN library\nPlease install it first") + endif (KDEWIN_FIND_REQUIRED) + endif (KDEWIN_FOUND) +endif (WIN32) diff --git a/modules/FindKDEWin32.cmake b/modules/FindKDEWin32.cmake new file mode 100644 index 00000000..1f78055b --- /dev/null +++ b/modules/FindKDEWin32.cmake @@ -0,0 +1,26 @@ +# - Try to find the KDEWIN32 library +# - Try to find the KDEWIN32 library - deprecated +# +# Once done this will define +# +# KDEWIN32_FOUND - system has KDEWIN32 +# KDEWIN32_INCLUDES - the KDEWIN32 include directories +# KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 + +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007-2009, Ralf Habacker, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (WIN32) + message(STATUS "The kdewin32 cmake module is deprecated, use kdewin instead") + find_package(KDEWIN) + + if (KDEWIN_FOUND) + set(KDEWIN32_FOUND ${KDEWIN_FOUND}) + set(KDEWIN32_INCLUDES ${KDEWIN_INCLUDES}) + set(KDEWIN32_LIBRARIES ${KDEWIN_LIBRARIES}) + endif (KDEWIN_FOUND) +endif (WIN32) -- cgit v1.2.1 From 568ba25d48ff2d2f4b66f066f33fd43e6a20446c Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 17 Jun 2009 08:03:52 +0000 Subject: applied naming change svn path=/trunk/KDE/kdelibs/; revision=982917 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 397a0d79..e06789c5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -583,7 +583,7 @@ endif(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSI option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") if (WIN32) - find_package(KDEWIN REQUIRED) + find_package(KDEWin REQUIRED) OPTION(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) if (KDE4_ENABLE_UAC_MANIFEST) find_program(KDE4_MT_EXECUTABLE mt -- cgit v1.2.1 From b3b6fa673138519b3bea123e464ec1d9ca6ef915 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 18 Jun 2009 08:55:37 +0000 Subject: applied suggest change from alex on kde-commit svn path=/trunk/KDE/kdelibs/; revision=983398 --- modules/FindKDEWIN32.cmake | 26 ++++++++++++++++++++++++++ modules/FindKDEWin32.cmake | 26 -------------------------- 2 files changed, 26 insertions(+), 26 deletions(-) create mode 100644 modules/FindKDEWIN32.cmake delete mode 100644 modules/FindKDEWin32.cmake (limited to 'modules') diff --git a/modules/FindKDEWIN32.cmake b/modules/FindKDEWIN32.cmake new file mode 100644 index 00000000..1f78055b --- /dev/null +++ b/modules/FindKDEWIN32.cmake @@ -0,0 +1,26 @@ +# - Try to find the KDEWIN32 library +# - Try to find the KDEWIN32 library - deprecated +# +# Once done this will define +# +# KDEWIN32_FOUND - system has KDEWIN32 +# KDEWIN32_INCLUDES - the KDEWIN32 include directories +# KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 + +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007-2009, Ralf Habacker, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (WIN32) + message(STATUS "The kdewin32 cmake module is deprecated, use kdewin instead") + find_package(KDEWIN) + + if (KDEWIN_FOUND) + set(KDEWIN32_FOUND ${KDEWIN_FOUND}) + set(KDEWIN32_INCLUDES ${KDEWIN_INCLUDES}) + set(KDEWIN32_LIBRARIES ${KDEWIN_LIBRARIES}) + endif (KDEWIN_FOUND) +endif (WIN32) diff --git a/modules/FindKDEWin32.cmake b/modules/FindKDEWin32.cmake deleted file mode 100644 index 1f78055b..00000000 --- a/modules/FindKDEWin32.cmake +++ /dev/null @@ -1,26 +0,0 @@ -# - Try to find the KDEWIN32 library -# - Try to find the KDEWIN32 library - deprecated -# -# Once done this will define -# -# KDEWIN32_FOUND - system has KDEWIN32 -# KDEWIN32_INCLUDES - the KDEWIN32 include directories -# KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32 - -# Copyright (c) 2006, Alexander Neundorf, -# Copyright (c) 2007-2009, Ralf Habacker, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if (WIN32) - message(STATUS "The kdewin32 cmake module is deprecated, use kdewin instead") - find_package(KDEWIN) - - if (KDEWIN_FOUND) - set(KDEWIN32_FOUND ${KDEWIN_FOUND}) - set(KDEWIN32_INCLUDES ${KDEWIN_INCLUDES}) - set(KDEWIN32_LIBRARIES ${KDEWIN_LIBRARIES}) - endif (KDEWIN_FOUND) -endif (WIN32) -- cgit v1.2.1 From e256c297bce63e3a34091026f46fb4a1145d945d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Tue, 23 Jun 2009 13:40:54 +0000 Subject: update FindEigen2 to allow checking versions svn path=/trunk/KDE/kdelibs/; revision=985774 --- modules/FindEigen2.cmake | 57 ++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 50 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 5feddf3e..74e183e2 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -1,30 +1,73 @@ # - Try to find Eigen2 lib # Once done this will define # -# EIGEN2_FOUND - system has eigen lib +# EIGEN2_FOUND - system has eigen lib with correct version # EIGEN2_INCLUDE_DIR - the eigen include directory +# EIGEN2_VERSION - eigen version # Copyright (c) 2006, 2007 Montel Laurent, +# Copyright (c) 2008, 2009 Gael Guennebaud, # Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(NOT EIGEN2_MIN_VERSION) + if(NOT Eigen2_FIND_VERSION_MAJOR) + set(Eigen2_FIND_VERSION_MAJOR 2) + endif(NOT Eigen2_FIND_VERSION_MAJOR) + if(NOT Eigen2_FIND_VERSION_MINOR) + set(Eigen2_FIND_VERSION_MINOR 0) + endif(NOT Eigen2_FIND_VERSION_MINOR) + if(NOT Eigen2_FIND_VERSION_PATCH) + set(Eigen2_FIND_VERSION_PATCH 0) + endif(NOT Eigen2_FIND_VERSION_PATCH) + + set(EIGEN2_MIN_VERSION "${Eigen2_FIND_VERSION_MAJOR}.${Eigen2_FIND_VERSION_MINOR}.${Eigen2_FIND_VERSION_PATCH}") +endif(NOT EIGEN2_MIN_VERSION) + +macro(_eigen2_check_version) + file(READ "${EIGEN2_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen2_version_header LIMIT 5000 OFFSET 1000) + + string(REGEX MATCH "define *EIGEN_WORLD_VERSION ([0-9]*)" _eigen2_world_version_match "${_eigen2_version_header}") + set(EIGEN2_WORLD_VERSION "${CMAKE_MATCH_1}") + string(REGEX MATCH "define *EIGEN_MAJOR_VERSION ([0-9]*)" _eigen2_major_version_match "${_eigen2_version_header}") + set(EIGEN2_MAJOR_VERSION "${CMAKE_MATCH_1}") + string(REGEX MATCH "define *EIGEN_MINOR_VERSION ([0-9]*)" _eigen2_minor_version_match "${_eigen2_version_header}") + set(EIGEN2_MINOR_VERSION "${CMAKE_MATCH_1}") + + set(EIGEN2_VERSION ${EIGEN2_WORLD_VERSION}.${EIGEN2_MAJOR_VERSION}.${EIGEN2_MINOR_VERSION}) + if(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION}) + set(EIGEN2_VERSION_OK FALSE) + else(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION}) + set(EIGEN2_VERSION_OK TRUE) + endif(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION}) + + if(NOT EIGEN2_VERSION_OK) + + message(STATUS "Eigen2 version ${EIGEN2_VERSION} found in ${EIGEN2_INCLUDE_DIR}, " + "but at least version ${EIGEN2_MIN_VERSION} is required") + endif(NOT EIGEN2_VERSION_OK) +endmacro(_eigen2_check_version) if (EIGEN2_INCLUDE_DIR) # in cache already - set(EIGEN2_FOUND TRUE) + _eigen2_check_version() + set(EIGEN2_FOUND ${EIGEN2_VERSION_OK}) else (EIGEN2_INCLUDE_DIR) find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core - PATH_SUFFIXES eigen2 - HINTS + PATHS ${INCLUDE_INSTALL_DIR} ${KDE4_INCLUDE_DIR} + PATH_SUFFIXES eigen2 ) -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Eigen2 DEFAULT_MSG EIGEN2_INCLUDE_DIR ) +if(EIGEN2_INCLUDE_DIR) + _eigen2_check_version() +endif(EIGEN2_INCLUDE_DIR) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Eigen2 DEFAULT_MSG EIGEN2_INCLUDE_DIR EIGEN2_VERSION_OK) mark_as_advanced(EIGEN2_INCLUDE_DIR) -- cgit v1.2.1 From 1512b378b6933d38ecbf23a472a90dd3a4d79b23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Wed, 24 Jun 2009 01:56:45 +0000 Subject: kill the variable EIGEN2_MIN_VERSION, instead use the native Eigen2_FIND_VERSION svn path=/trunk/KDE/kdelibs/; revision=986049 --- modules/FindEigen2.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 74e183e2..8679a36b 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -9,7 +9,7 @@ # Copyright (c) 2008, 2009 Gael Guennebaud, # Redistribution and use is allowed according to the terms of the BSD license. -if(NOT EIGEN2_MIN_VERSION) +if(NOT Eigen2_FIND_VERSION) if(NOT Eigen2_FIND_VERSION_MAJOR) set(Eigen2_FIND_VERSION_MAJOR 2) endif(NOT Eigen2_FIND_VERSION_MAJOR) @@ -20,8 +20,8 @@ if(NOT EIGEN2_MIN_VERSION) set(Eigen2_FIND_VERSION_PATCH 0) endif(NOT Eigen2_FIND_VERSION_PATCH) - set(EIGEN2_MIN_VERSION "${Eigen2_FIND_VERSION_MAJOR}.${Eigen2_FIND_VERSION_MINOR}.${Eigen2_FIND_VERSION_PATCH}") -endif(NOT EIGEN2_MIN_VERSION) + set(Eigen2_FIND_VERSION "${Eigen2_FIND_VERSION_MAJOR}.${Eigen2_FIND_VERSION_MINOR}.${Eigen2_FIND_VERSION_PATCH}") +endif(NOT Eigen2_FIND_VERSION) macro(_eigen2_check_version) file(READ "${EIGEN2_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen2_version_header LIMIT 5000 OFFSET 1000) @@ -34,16 +34,16 @@ macro(_eigen2_check_version) set(EIGEN2_MINOR_VERSION "${CMAKE_MATCH_1}") set(EIGEN2_VERSION ${EIGEN2_WORLD_VERSION}.${EIGEN2_MAJOR_VERSION}.${EIGEN2_MINOR_VERSION}) - if(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION}) + if(${EIGEN2_VERSION} VERSION_LESS ${Eigen2_FIND_VERSION}) set(EIGEN2_VERSION_OK FALSE) - else(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION}) + else(${EIGEN2_VERSION} VERSION_LESS ${Eigen2_FIND_VERSION}) set(EIGEN2_VERSION_OK TRUE) - endif(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION}) + endif(${EIGEN2_VERSION} VERSION_LESS ${Eigen2_FIND_VERSION}) if(NOT EIGEN2_VERSION_OK) message(STATUS "Eigen2 version ${EIGEN2_VERSION} found in ${EIGEN2_INCLUDE_DIR}, " - "but at least version ${EIGEN2_MIN_VERSION} is required") + "but at least version ${Eigen2_FIND_VERSION} is required") endif(NOT EIGEN2_VERSION_OK) endmacro(_eigen2_check_version) -- cgit v1.2.1 From ff23bc780fa3f7623bff89a7d85baf7a60749d8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Jacob?= Date: Wed, 24 Jun 2009 23:02:46 +0000 Subject: add documentation svn path=/trunk/KDE/kdelibs/; revision=986742 --- modules/FindEigen2.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 8679a36b..0e86aaf2 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -1,4 +1,9 @@ # - Try to find Eigen2 lib +# +# This module supports requiring a minimum version, e.g. you can do +# find_package(Eigen2 2.0.3) +# to require version 2.0.3 to newer of Eigen2. +# # Once done this will define # # EIGEN2_FOUND - system has eigen lib with correct version -- cgit v1.2.1 From b27d904b1e3e07e9e61217b6575ef148be8d8f53 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 25 Jun 2009 07:58:38 +0000 Subject: libsasl2 add, because the windows package of cyrus-sasl2 contains a libsasl2 also for msvc which is not standard conform svn path=/trunk/KDE/kdelibs/; revision=986838 --- modules/FindSasl2.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index 855266fc..787b578c 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -19,7 +19,9 @@ endif (SASL2_INCLUDE_DIR) FIND_PATH(SASL2_INCLUDE_DIR sasl/sasl.h ) -FIND_LIBRARY(SASL2_LIBRARIES NAMES sasl2 +# libsasl2 add for windows, because the windows package of cyrus-sasl2 +# contains a libsasl2 also for msvc which is not standard conform +FIND_LIBRARY(SASL2_LIBRARIES NAMES sasl2 libsasl2 ) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 0ad585886909c360d359842c49d109de69cda220 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 28 Jun 2009 08:12:43 +0000 Subject: -fix getting the correct location for the respective configuration, (the resulting name was just "LOCATION_", which is unknown to cmake, so it returns just the information for any configuration it finds Thanks to Aleix for finding the issue Alex svn path=/trunk/KDE/kdelibs/; revision=988522 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index e06789c5..ac9c3542 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -513,9 +513,9 @@ else (_kdeBootStrapping) get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS ) list(GET _importedConfigurations 0 _firstConfig) - get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${firstConfig}) - get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${firstConfig}) - get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${firstConfig}) + get_target_property(_KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig}) + get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${_firstConfig}) + get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${_firstConfig}) # allow searching cmake modules in all given kde install locations (KDEDIRS based) execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) -- cgit v1.2.1 From 163d24c2ba3b69edbef8ba51d315eec2be0d6714 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Sun, 28 Jun 2009 11:01:03 +0000 Subject: unbreak (remove an underscore too much) svn path=/trunk/KDE/kdelibs/; revision=988553 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index ac9c3542..6ba7c9f6 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -513,7 +513,7 @@ else (_kdeBootStrapping) get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS ) list(GET _importedConfigurations 0 _firstConfig) - get_target_property(_KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig}) + get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig}) get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${_firstConfig}) get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${_firstConfig}) -- cgit v1.2.1 From 76b65a95c4dab6390a80d402ac9cb9ad229b01c9 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 2 Jul 2009 06:01:55 +0000 Subject: Account for CMAKE_EXECUTABLE_SUFFIX in KDE4_*_EXECUTABLE .shell names, since that is how they are created. by cygwin ports maintainer svn path=/trunk/KDE/kdelibs/; revision=990260 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6ba7c9f6..7932393d 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -389,10 +389,10 @@ if (_kdeBootStrapping) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler${CMAKE_EXECUTABLE_SUFFIX}.shell ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4${CMAKE_EXECUTABLE_SUFFIX}.shell ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets${CMAKE_EXECUTABLE_SUFFIX}.shell ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) -- cgit v1.2.1 From 127ef12ad423eb824cf8074bda92efc140e53982 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 2 Jul 2009 06:02:34 +0000 Subject: Cygwin uses $PATH for runtime library resolution by cygwin ports maintainer svn path=/trunk/KDE/kdelibs/; revision=990261 --- modules/KDE4Macros.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 17a8065e..ef5c61b1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -500,6 +500,8 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) if (UNIX) if (APPLE) set(_library_path_variable "DYLD_LIBRARY_PATH") + elseif (CYGWIN) + set(_library_path_variable "PATH") else (APPLE) set(_library_path_variable "LD_LIBRARY_PATH") endif (APPLE) @@ -572,6 +574,8 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) if (_first_SRC) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") + else (_first_SRC) + set_target_properties(${_target_NAME} PROPERTIES PREFIX "lib") endif (_first_SRC) if (WIN32) -- cgit v1.2.1 From c1cfe015fbc7f6244fe1fce8920de6088add61ee Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 2 Jul 2009 06:03:54 +0000 Subject: Python modules should be MODULE, not SHARED, so they are installed correctly and not create import libs on Win32/Cygwin - by cygwin ports maintainer svn path=/trunk/KDE/kdelibs/; revision=990262 --- modules/SIPMacros.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/SIPMacros.cmake b/modules/SIPMacros.cmake index eb5ea06c..6096ccb6 100644 --- a/modules/SIPMacros.cmake +++ b/modules/SIPMacros.cmake @@ -102,8 +102,12 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} ${_sip_includes} ${_abs_module_sip} DEPENDS ${_abs_module_sip} ${SIP_EXTRA_FILES_DEPEND} ) - - ADD_LIBRARY(${_logical_name} SHARED ${_sip_output_files} ) + # not sure if type MODULE could be uses anywhere, limit to cygwin for now + IF (CYGWIN) + ADD_LIBRARY(${_logical_name} MODULE ${_sip_output_files} ) + ELSE (CYGWIN) + ADD_LIBRARY(${_logical_name} SHARED ${_sip_output_files} ) + ENDIF (CYGWIN) TARGET_LINK_LIBRARIES(${_logical_name} ${PYTHON_LIBRARY}) TARGET_LINK_LIBRARIES(${_logical_name} ${EXTRA_LINK_LIBRARIES}) SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES PREFIX "" OUTPUT_NAME ${_child_module_name}) -- cgit v1.2.1 From 20c769da015bc819c37256bdcab75aa5186c7ea6 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 2 Jul 2009 06:05:55 +0000 Subject: could not change commit log after a commit, so revert the part of the patch for which is the comment was forgotten svn path=/trunk/KDE/kdelibs/; revision=990264 --- modules/KDE4Macros.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ef5c61b1..238076a3 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -574,8 +574,6 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) if (_first_SRC) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") - else (_first_SRC) - set_target_properties(${_target_NAME} PROPERTIES PREFIX "lib") endif (_first_SRC) if (WIN32) -- cgit v1.2.1 From 287aac90ae08721eeb90c181f4fb442decdb5b95 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Thu, 2 Jul 2009 06:06:42 +0000 Subject: Force the prefix to "lib" so that the plugin name is sure to match the init_ symbol exactly - by cygwin ports maintainer svn path=/trunk/KDE/kdelibs/; revision=990265 --- modules/KDE4Macros.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 238076a3..ef5c61b1 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -574,6 +574,8 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) if (_first_SRC) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") + else (_first_SRC) + set_target_properties(${_target_NAME} PROPERTIES PREFIX "lib") endif (_first_SRC) if (WIN32) -- cgit v1.2.1 From 7216be1cbfb8cc8b95a6f632dd62cacfa15bdb75 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Thu, 2 Jul 2009 16:00:31 +0000 Subject: use this for spaces in the path svn path=/trunk/KDE/kdelibs/; revision=990545 --- modules/FindSharedMimeInfo.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 707cb006..9b076a30 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -70,7 +70,7 @@ set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") if (NOT DESTDIR_VALUE) # under Windows relative paths are used, that's why it runs from CMAKE_INSTALL_PREFIX execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir} - WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}) + WORKING_DIRECTORY \"${CMAKE_INSTALL_PREFIX}\") endif (NOT DESTDIR_VALUE) ") endmacro (UPDATE_XDG_MIMETYPES) -- cgit v1.2.1 From 80aa9fd27790cd92664da486115cfbc484b0c989 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Thu, 2 Jul 2009 16:11:54 +0000 Subject: it can work without backslashes of course too svn path=/trunk/KDE/kdelibs/; revision=990546 --- modules/FindSharedMimeInfo.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 9b076a30..8bb8365b 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -70,7 +70,7 @@ set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") if (NOT DESTDIR_VALUE) # under Windows relative paths are used, that's why it runs from CMAKE_INSTALL_PREFIX execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir} - WORKING_DIRECTORY \"${CMAKE_INSTALL_PREFIX}\") + WORKING_DIRECTORY "${CMAKE_INSTALL_PREFIX}") endif (NOT DESTDIR_VALUE) ") endmacro (UPDATE_XDG_MIMETYPES) -- cgit v1.2.1 From 6f621faba414c1c0b0398a1a68194a451f545fc6 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Thu, 2 Jul 2009 19:28:48 +0000 Subject: the backslashes are definitely needed svn path=/trunk/KDE/kdelibs/; revision=990592 --- modules/FindSharedMimeInfo.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 8bb8365b..9b076a30 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -70,7 +70,7 @@ set(DESTDIR_VALUE \"\$ENV{DESTDIR}\") if (NOT DESTDIR_VALUE) # under Windows relative paths are used, that's why it runs from CMAKE_INSTALL_PREFIX execute_process(COMMAND ${UPDATE_MIME_DATABASE_EXECUTABLE} ${_xdgmimeDir} - WORKING_DIRECTORY "${CMAKE_INSTALL_PREFIX}") + WORKING_DIRECTORY \"${CMAKE_INSTALL_PREFIX}\") endif (NOT DESTDIR_VALUE) ") endmacro (UPDATE_XDG_MIMETYPES) -- cgit v1.2.1 From a513aa5bcd0bd58344a102f1e54376f6f40e2d76 Mon Sep 17 00:00:00 2001 From: Cyrille Berger Skott Date: Sun, 5 Jul 2009 14:04:26 +0000 Subject: Find lcms version using a regexp, instead of compiling a program. svn path=/trunk/KDE/kdelibs/; revision=991725 --- modules/FindLCMS.cmake | 29 +++++++++-------------------- 1 file changed, 9 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index cbb6b179..92604e3d 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -8,6 +8,7 @@ # Copyright (c) 2008, Adrian Page, +# Copyright (c) 2009, Cyrille Berger, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -17,7 +18,7 @@ # in the FIND_PATH() and FIND_LIBRARY() calls if(NOT WIN32) find_package(PkgConfig) - pkg_check_modules(PC_LCMS QUIET lcms) + pkg_check_modules(PC_LCMS lcms) set(LCMS_DEFINITIONS ${PC_LCMS_CFLAGS_OTHER}) endif(NOT WIN32) @@ -42,34 +43,22 @@ else(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) endif(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) if(LCMS_FOUND) - set(FIND_LCMS_VERSION_SOURCE - "#include \n int main()\n {\n return LCMS_VERSION;\n }\n") - set(FIND_LCMS_VERSION_SOURCE_FILE ${CMAKE_BINARY_DIR}/CMakeTmp/FindLCMS.cxx) - file(WRITE "${FIND_LCMS_VERSION_SOURCE_FILE}" "${FIND_LCMS_VERSION_SOURCE}") - - set(FIND_LCMS_VERSION_ADD_INCLUDES - "-DINCLUDE_DIRECTORIES:STRING=${LCMS_INCLUDE_DIR}") - - try_run(LCMS_VERSION LCMS_COMPILE_RESULT - ${CMAKE_BINARY_DIR} - ${FIND_LCMS_VERSION_SOURCE_FILE} - CMAKE_FLAGS "${FIND_LCMS_VERSION_ADD_INCLUDES}" - OUTPUT_VARIABLE OUTPUT) - - if(LCMS_COMPILE_RESULT AND NOT LCMS_VERSION STREQUAL FAILED_TO_RUN) + file(READ ${LCMS_INCLUDE_DIR}/lcms.h LCMS_VERSION_CONTENT) + string(REGEX MATCH "#define LCMS_VERSION[ ]*[0-9]*\n" LCMS_VERSION_MATCH ${LCMS_VERSION_CONTENT}) + if(LCMS_VERSION_MATCH) + message(STATUS "hello") + string(REGEX REPLACE "#define LCMS_VERSION[ ]*([0-9]*)\n" "\\1" LCMS_VERSION ${LCMS_VERSION_MATCH}) if(NOT LCMS_FIND_QUIETLY) string(SUBSTRING ${LCMS_VERSION} 0 1 LCMS_MAJOR_VERSION) string(SUBSTRING ${LCMS_VERSION} 1 2 LCMS_MINOR_VERSION) message(STATUS "Found lcms version ${LCMS_MAJOR_VERSION}.${LCMS_MINOR_VERSION}, ${LCMS_LIBRARIES}") endif(NOT LCMS_FIND_QUIETLY) - else(LCMS_COMPILE_RESULT AND NOT LCMS_VERSION STREQUAL FAILED_TO_RUN) + else(LCMS_VERSION_MATCH) if(NOT LCMS_FIND_QUIETLY) message(STATUS "Found lcms but failed to find version ${LCMS_LIBRARIES}") - file(APPEND ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log - "Find lcms version failed with the following output:\n${OUTPUT}\nFindLCMS.cxx:\n${FIND_LCMS_VERSION_SOURCE}\n\n") endif(NOT LCMS_FIND_QUIETLY) set(LCMS_VERSION NOTFOUND) - endif(LCMS_COMPILE_RESULT AND NOT LCMS_VERSION STREQUAL FAILED_TO_RUN) + endif(LCMS_VERSION_MATCH) else(LCMS_FOUND) if(NOT LCMS_FIND_QUIETLY) if(LCMS_FIND_REQUIRED) -- cgit v1.2.1 From c547441e914a677fe8d2daf7e94b94b8d64f1124 Mon Sep 17 00:00:00 2001 From: Cyrille Berger Skott Date: Sun, 5 Jul 2009 14:20:09 +0000 Subject: no need to be nice and to welcome people :) (thanks to krop for seeing that ;) ) svn path=/trunk/KDE/kdelibs/; revision=991734 --- modules/FindLCMS.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 92604e3d..2b1f3cd7 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -46,7 +46,6 @@ if(LCMS_FOUND) file(READ ${LCMS_INCLUDE_DIR}/lcms.h LCMS_VERSION_CONTENT) string(REGEX MATCH "#define LCMS_VERSION[ ]*[0-9]*\n" LCMS_VERSION_MATCH ${LCMS_VERSION_CONTENT}) if(LCMS_VERSION_MATCH) - message(STATUS "hello") string(REGEX REPLACE "#define LCMS_VERSION[ ]*([0-9]*)\n" "\\1" LCMS_VERSION ${LCMS_VERSION_MATCH}) if(NOT LCMS_FIND_QUIETLY) string(SUBSTRING ${LCMS_VERSION} 0 1 LCMS_MAJOR_VERSION) -- cgit v1.2.1 From 7aab253a3d616da4b8569147d12255f3545c6bdb Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Sun, 5 Jul 2009 21:28:07 +0000 Subject: Show a fatal error if anyone tries to use FindKdepim. svn path=/trunk/KDE/kdelibs/; revision=991884 --- modules/FindKdepim.cmake | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 modules/FindKdepim.cmake (limited to 'modules') diff --git a/modules/FindKdepim.cmake b/modules/FindKdepim.cmake new file mode 100644 index 00000000..5757b0ab --- /dev/null +++ b/modules/FindKdepim.cmake @@ -0,0 +1,3 @@ +# Nothing should require kdepim. We'll show a fatal error and an explanation. +message(FATAL_ERROR "You must not use the FindKdepim CMake module. If you need more informations about this error, please contact us on the kde-pim mailing list.") + -- cgit v1.2.1 From e8e499b81748508ea167e0aa50f69bcb199ba650 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Tue, 7 Jul 2009 14:55:50 +0000 Subject: KDEWIN_INCLUDES and KDEWIN_LIBRARIES need to be set always, not only for the first time svn path=/trunk/KDE/kdelibs/; revision=992670 --- modules/FindKDEWin.cmake | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index 354ecb91..f034b738 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -14,7 +14,7 @@ if (WIN32) - if (NOT KDEWIN_LIBRARIES) + if (NOT KDEWIN_LIBRARY) find_path(KDEWIN_INCLUDE_DIR kdewin_export.h ${CMAKE_INCLUDE_PATH} @@ -26,9 +26,12 @@ if (WIN32) if (CMAKE_BUILD_TYPE STREQUAL "Debug") set (LIBRARY_NAME kdewind) - else (CMAKE_BUILD_TYPE STREQUAL "Debug") + else(CMAKE_BUILD_TYPE STREQUAL "Debug") set (LIBRARY_NAME kdewin) endif (CMAKE_BUILD_TYPE STREQUAL "Debug") + if (MSVC_IDE ) + set (LIBRARY_NAME "kdewind") + endif (MSVC_IDE) find_library(KDEWIN_LIBRARY NAMES ${LIBRARY_NAME} @@ -37,28 +40,27 @@ if (WIN32) ${CMAKE_INSTALL_PREFIX}/lib NO_SYSTEM_ENVIRONMENT_PATH ) + endif (NOT KDEWIN_LIBRARY) - if (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) - set(KDEWIN_FOUND TRUE) - # add needed system libs - set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) - - if (MINGW) - #mingw compiler - set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/mingw ${QT_INCLUDES}) - else (MINGW) - # msvc compiler - # add the MS SDK include directory if available - file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) - set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) - endif (MINGW) - - endif (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) - # required for configure - set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN_INCLUDES}) - set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN_LIBRARIES}) + if (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) + set(KDEWIN_FOUND TRUE) + # add needed system libs + set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) - endif (NOT KDEWIN_LIBRARIES) + if (MINGW) + #mingw compiler + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/mingw ${QT_INCLUDES}) + else (MINGW) + # msvc compiler + # add the MS SDK include directory if available + file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + endif (MINGW) + + endif (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) + # required for configure + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${KDEWIN_INCLUDES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN_LIBRARIES}) if (KDEWIN_FOUND) if (NOT KDEWIN_FIND_QUIETLY) -- cgit v1.2.1 From 830d26307d0e3fc93c25cea04a9bac0b2dded13a Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Thu, 9 Jul 2009 17:18:00 +0000 Subject: enable QT_USE_FAST_OPERATOR_PLUS and QT_USE_FAST_CONCATENATION svn path=/trunk/KDE/kdelibs/; revision=993910 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 52359172..56ba8f21 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -307,7 +307,7 @@ INCLUDE(MacroPushRequiredVars) SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) -SET( QT_DEFINITIONS "") +SET( QT_DEFINITIONS -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION) IF (WIN32) SET(QT_DEFINITIONS -DQT_DLL) -- cgit v1.2.1 From 0c35434924122153d0fe34c7b3d054cf56b2e33a Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Thu, 9 Jul 2009 17:23:37 +0000 Subject: whoops - revert last change, this should not have gone in svn path=/trunk/KDE/kdelibs/; revision=993915 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 56ba8f21..52359172 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -307,7 +307,7 @@ INCLUDE(MacroPushRequiredVars) SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) -SET( QT_DEFINITIONS -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION) +SET( QT_DEFINITIONS "") IF (WIN32) SET(QT_DEFINITIONS -DQT_DLL) -- cgit v1.2.1 From e4e6fac4f2ca0786ded3922b574273d127d6f417 Mon Sep 17 00:00:00 2001 From: Mike Arthur Date: Thu, 9 Jul 2009 19:21:01 +0000 Subject: Add Qt Webkit framework support. svn path=/trunk/KDE/kdelibs/; revision=993948 --- modules/FindQt4.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 52359172..3506a548 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -727,6 +727,7 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_INCLUDE_DIR}/QtWebKit ${QT_HEADERS_DIR}/QtWebKit + ${QT_LIBRARY_DIR}/QtWebKit.framework/Headers NO_DEFAULT_PATH ) -- cgit v1.2.1 From 0ce3a1e6440db8190a4c7da5535b632df76bf1cb Mon Sep 17 00:00:00 2001 From: David Faure Date: Sun, 12 Jul 2009 22:37:46 +0000 Subject: Always define MAKE_FOO_LIB, not only on Windows. This is used in konqueror to know when to enable KDE_TESTS_EXPORT. What I don't understand, is why it worked before; konqprivate_export.h always relied on MAKE_KDEINIT_KONQUEROR_LIB... (and without this commit, konqviewmgrtest failed with undefined symbol KonqSettings::self(), which is logical [hidden symbol]) svn path=/trunk/KDE/kdelibs/; revision=995537 --- modules/KDE4Macros.cmake | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ef5c61b1..1b7a934e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -578,13 +578,11 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) set_target_properties(${_target_NAME} PROPERTIES PREFIX "lib") endif (_first_SRC) - if (WIN32) - # for shared libraries/plugins a -DMAKE_target_LIB is required - string(TOUPPER ${_target_NAME} _symbol) - string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) - set(_symbol "MAKE_${_symbol}_LIB") - set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) - endif (WIN32) + # for shared libraries/plugins a -DMAKE_target_LIB is required + string(TOUPPER ${_target_NAME} _symbol) + string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _symbol ${_symbol}) + set(_symbol "MAKE_${_symbol}_LIB") + set_target_properties(${_target_NAME} PROPERTIES DEFINE_SYMBOL ${_symbol}) endmacro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -- cgit v1.2.1 From 00a6480f957d06b8679c1e62cded97402fb10e50 Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Tue, 14 Jul 2009 12:50:30 +0000 Subject: arf, this little bugger took me two hours to find :-o svn path=/trunk/KDE/kdelibs/; revision=996456 --- modules/FindKDEWin.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index f034b738..469ba3dc 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -63,13 +63,13 @@ if (WIN32) set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${KDEWIN_LIBRARIES}) if (KDEWIN_FOUND) - if (NOT KDEWIN_FIND_QUIETLY) - message(STATUS "Found KDEWIN library: ${KDEWIN_LIBRARY}") - endif (NOT KDEWIN_FIND_QUIETLY) + if (NOT KDEWin_FIND_QUIETLY) + message(STATUS "Found KDEWin library: ${KDEWIN_LIBRARY}") + endif (NOT KDEWin_FIND_QUIETLY) else (KDEWIN_FOUND) - if (KDEWIN_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find KDEWIN library\nPlease install it first") - endif (KDEWIN_FIND_REQUIRED) + if (KDEWin_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find KDEWin library\nPlease install it first") + endif (KDEWin_FIND_REQUIRED) endif (KDEWIN_FOUND) endif (WIN32) -- cgit v1.2.1 From b4ba1600ca61259417da8571b14d0d924f0fe862 Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Tue, 14 Jul 2009 13:14:04 +0000 Subject: add the standard KDE paths to the include/lib search paths, useful when KDE is built with emerge svn path=/trunk/KDE/kdelibs/; revision=996461 --- modules/FindKDEWin.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index 469ba3dc..2da5384e 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -17,6 +17,7 @@ if (WIN32) if (NOT KDEWIN_LIBRARY) find_path(KDEWIN_INCLUDE_DIR kdewin_export.h + ${KDE4_INCLUDE_DIR} ${CMAKE_INCLUDE_PATH} ${CMAKE_INSTALL_PREFIX}/include ) @@ -36,6 +37,7 @@ if (WIN32) find_library(KDEWIN_LIBRARY NAMES ${LIBRARY_NAME} PATHS + ${KDE4_LIB_DIR} ${_cmakeLibraryPathCmakeStyle} ${CMAKE_INSTALL_PREFIX}/lib NO_SYSTEM_ENVIRONMENT_PATH -- cgit v1.2.1 From add341781f3c8c3be79c2e68201ddfcfe1de421c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 24 Jul 2009 20:05:10 +0000 Subject: -search also for SopranoAddOntology.cmake and include it automatically if found Alex svn path=/trunk/KDE/kdelibs/; revision=1002028 --- modules/FindSoprano.cmake | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index fb84c2e4..e40275cd 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -47,6 +47,18 @@ ${KDE4_INCLUDE_DIR} ) + # find the cmake macro file installed by soprano, relative to the include dir + get_filename_component(_SOPRANO_PREFIX ${SOPRANO_INCLUDE_DIR} PATH) + # first check in /share/soprano/cmake, if it's not found there, check in /share/apps/cmake/modules + # find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/soprano/cmake ) + find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/apps/cmake/modules ) + + # since which version of soprano is this file installed ? + # we should fail if the file is not found but SOPRANO_MIN_VERSION is bigger than this version. + if(_SOPRANO_MACRO_FILE) + include(${_SOPRANO_MACRO_FILE}) + endif(_SOPRANO_MACRO_FILE) + find_library_with_debug(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES @@ -208,6 +220,8 @@ mark_as_advanced(SOPRANO_CLIENT_LIBRARIES SOPRANO_LIBRARIES SOPRANO_SERVER_LIBRARIES SOPRANO_INCLUDE_DIR - SOPRANO_PLUGIN_DIR) + SOPRANO_PLUGIN_DIR + _SOPRANO_MACRO_FILE + ) #endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) -- cgit v1.2.1 From a9ed3a40905c027bbc94de8066d48b27a38b5570 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Sun, 26 Jul 2009 12:50:57 +0000 Subject: First step to implement hunspell plugins svn path=/trunk/KDE/kdelibs/; revision=1002571 --- modules/FindHUNSPELL.cmake | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 modules/FindHUNSPELL.cmake (limited to 'modules') diff --git a/modules/FindHUNSPELL.cmake b/modules/FindHUNSPELL.cmake new file mode 100644 index 00000000..30f37730 --- /dev/null +++ b/modules/FindHUNSPELL.cmake @@ -0,0 +1,25 @@ +# - Try to find HUNSPELL +# Once done this will define +# +# HUNSPELL_FOUND - system has HUNSPELL +# HUNSPELL_INCLUDE_DIR - the HUNSPELL include directory +# HUNSPELL_LIBRARIES - The libraries needed to use HUNSPELL +# HUNSPELL_DEFINITIONS - Compiler switches required for using HUNSPELL + + +IF (HUNSPELL_INCLUDE_DIR AND HUNSPELL_LIBRARIES) + # Already in cache, be silent + SET(HUNSPELL_FIND_QUIETLY TRUE) +ENDIF (HUNSPELL_INCLUDE_DIR AND HUNSPELL_LIBRARIES) + +FIND_PATH(HUNSPELL_INCLUDE_DIR hunspell/hunspell.hxx ) + +FIND_LIBRARY(HUNSPELL_LIBRARIES NAMES hunspell-1.2) + +# handle the QUIETLY and REQUIRED arguments and set HUNSPELL_FOUND to TRUE if +# all listed variables are TRUE +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(HUNSPELL DEFAULT_MSG HUNSPELL_LIBRARIES HUNSPELL_INCLUDE_DIR) + + +MARK_AS_ADVANCED(HUNSPELL_INCLUDE_DIR HUNSPELL_LIBRARIES) -- cgit v1.2.1 From 3208b1d4a10c81c23be871c7a74f77de49c3aeaf Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Wed, 29 Jul 2009 18:19:01 +0000 Subject: Forwardport: also include the path to the soprano cmake macro into the cmake module path. This way the macro can be used without being included manually but also by including it. svn path=/trunk/KDE/kdelibs/; revision=1004264 --- modules/FindSoprano.cmake | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index e40275cd..29331cf9 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -47,18 +47,6 @@ ${KDE4_INCLUDE_DIR} ) - # find the cmake macro file installed by soprano, relative to the include dir - get_filename_component(_SOPRANO_PREFIX ${SOPRANO_INCLUDE_DIR} PATH) - # first check in /share/soprano/cmake, if it's not found there, check in /share/apps/cmake/modules - # find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/soprano/cmake ) - find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/apps/cmake/modules ) - - # since which version of soprano is this file installed ? - # we should fail if the file is not found but SOPRANO_MIN_VERSION is bigger than this version. - if(_SOPRANO_MACRO_FILE) - include(${_SOPRANO_MACRO_FILE}) - endif(_SOPRANO_MACRO_FILE) - find_library_with_debug(SOPRANO_INDEX_LIBRARIES WIN32_DEBUG_POSTFIX d NAMES @@ -186,6 +174,23 @@ set(_plugins "${_plugins} virtuosobackend") endif(EXISTS ${SOPRANO_PLUGIN_DIR}/virtuosobackend.desktop) + # make sure the Soprano cmake macros are found + # We also include it directly for convinience + get_filename_component(_SOPRANO_PREFIX ${SOPRANO_INCLUDE_DIR} PATH) + find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/soprano/cmake ) + if(_SOPRANO_MACRO_FILE) + # new Soprano > 2.3.0 location + include(${_SOPRANO_MACRO_FILE}) + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${_SOPRANO_PREFIX}/share/soprano/cmake) + else(_SOPRANO_MACRO_FILE) + # the old Soprano 2.3.0 location + find_file(_SOPRANO_MACRO_FILE_OLD NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/apps/cmake/modules ) + if(_SOPRANO_MACRO_FILE_OLD) + include(${_SOPRANO_MACRO_FILE_OLD}) + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${_SOPRANO_PREFIX}/share/apps/cmake/modules) + endif(_SOPRANO_MACRO_FILE_OLD) + endif(_SOPRANO_MACRO_FILE) + endif(Soprano_FOUND) if(Soprano_FOUND) -- cgit v1.2.1 From 25ad300039650c3aad5919abe9ae95a525e14701 Mon Sep 17 00:00:00 2001 From: Carlo Segato Date: Sun, 9 Aug 2009 22:20:33 +0000 Subject: don't use visibility on windows with gcc 4.4 svn path=/trunk/KDE/kdelibs/; revision=1009407 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7932393d..fff9cf89 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1079,7 +1079,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") endif (GCC_IS_NEWER_THAN_4_1) - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") set (KDE4_C_FLAGS "-fvisibility=hidden") # check that Qt defines Q_DECL_EXPORT as __attribute__ ((visibility("default"))) @@ -1101,9 +1101,9 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (GCC_IS_NEWER_THAN_4_2) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") endif (GCC_IS_NEWER_THAN_4_2) - else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) endif (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From 967c0cbe1f5dabd2825fc2bc42b14403458b7185 Mon Sep 17 00:00:00 2001 From: Carlo Segato Date: Sun, 9 Aug 2009 22:30:38 +0000 Subject: add CMAKE_C_COMPILER_ARG1 as argument when executing the compiler, this way cmake doesn't fail if we set CC to something like 'distcc /path/to/gcc' svn path=/trunk/KDE/kdelibs/; revision=1009414 --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fff9cf89..adb6e8c7 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1054,7 +1054,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) set( __KDE_HAVE_GCC_VISIBILITY ${__KDE_HAVE_GCC_VISIBILITY} CACHE BOOL "GCC support for hidden visibility") # get the gcc version - exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info) + exec_program(${CMAKE_C_COMPILER} ARGS ${CMAKE_C_COMPILER_ARG1} --version OUTPUT_VARIABLE _gcc_version_info) string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: @@ -1075,7 +1075,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE) if (GCC_IS_NEWER_THAN_4_1) - exec_program(${CMAKE_C_COMPILER} ARGS -v OUTPUT_VARIABLE _gcc_alloc_info) + exec_program(${CMAKE_C_COMPILER} ARGS ${CMAKE_C_COMPILER_ARG1} -v OUTPUT_VARIABLE _gcc_alloc_info) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") endif (GCC_IS_NEWER_THAN_4_1) -- cgit v1.2.1 From 2c46da6e2a12fcd5355004d59b43017285966d9d Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Tue, 11 Aug 2009 08:50:07 +0000 Subject: Use HINTS not PATHS for paths discovered by PkgConfig svn path=/trunk/KDE/kdelibs/; revision=1009922 --- modules/FindQImageBlitz.cmake | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindQImageBlitz.cmake b/modules/FindQImageBlitz.cmake index 232d7c40..1b34741e 100644 --- a/modules/FindQImageBlitz.cmake +++ b/modules/FindQImageBlitz.cmake @@ -27,10 +27,9 @@ find_path(QIMAGEBLITZ_INCLUDES NAMES qimageblitz.h PATH_SUFFIXES qimageblitz - PATHS + HINTS $ENV{QIMAGEBLITZDIR}/include ${PC_QIMAGEBLITZ_INCLUDEDIR} - ${PC_QIMAGEBLITZ_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ) @@ -38,10 +37,9 @@ find_path(QIMAGEBLITZ_INCLUDES find_library_with_debug(QIMAGEBLITZ_LIBRARIES WIN32_DEBUG_POSTFIX d qimageblitz - PATHS + HINTS $ENV{QIMAGEBLITZDIR}/lib ${PC_QIMAGEBLITZ_LIBDIR} - ${PC_QIMAGEBLITZ_LIBRARY_DIRS} ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR} ) -- cgit v1.2.1 From 2c993c081c491ff0f686890212d7b01c801c01b1 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Tue, 11 Aug 2009 08:51:12 +0000 Subject: Use HINTS, not PATHS for pkg-config discovered paths svn path=/trunk/KDE/kdelibs/; revision=1009923 --- modules/FindPopplerQt4.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindPopplerQt4.cmake b/modules/FindPopplerQt4.cmake index fbc1820c..04911bbd 100644 --- a/modules/FindPopplerQt4.cmake +++ b/modules/FindPopplerQt4.cmake @@ -27,11 +27,12 @@ endif(NOT WIN32) find_path(POPPLER_QT4_INCLUDE_DIR NAMES poppler-qt4.h PATH_SUFFIXES poppler/qt4 poppler - PATHS ${_PopplerQt4IncDir} + HINTS ${_PopplerQt4IncDir} ) -find_library(POPPLER_QT4_LIBRARIES poppler-qt4 - ${_PopplerQt4LinkDir} +find_library(POPPLER_QT4_LIBRARIES + NAMES poppler-qt4 + HINTS ${_PopplerQt4LinkDir} ) if (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) -- cgit v1.2.1 From 8b88d351ff98ef6d04cfc0042bb7276412bfb6ef Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 17 Aug 2009 12:11:08 +0000 Subject: increase the .so versioning also replace a couple 4.3 -> 4.4 messages svn path=/trunk/KDE/kdelibs/; revision=1012303 --- modules/FindKDE4Internal.cmake | 4 ++-- modules/KDE4Defaults.cmake | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index adb6e8c7..91567585 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1153,13 +1153,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.3 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.4 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find the KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.3 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.4 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find the KDE 4 core library") endif(KDE4_LIB_DIR) diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 1f2d07c0..bc27a2db 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -24,11 +24,11 @@ set(CMAKE_COLOR_MAKEFILE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes # Use this version number for libraries which are at version n in KDE version n -set(GENERIC_LIB_VERSION "4.3.0") +set(GENERIC_LIB_VERSION "4.4.0") set(GENERIC_LIB_SOVERSION "4") # Use this version number for libraries which are already at version n+1 in KDE version n -set(KDE_NON_GENERIC_LIB_VERSION "5.3.0") +set(KDE_NON_GENERIC_LIB_VERSION "5.4.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar -- cgit v1.2.1 From f4ec59c58b550bf314c75cea38a18d2538404601 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 17 Aug 2009 16:44:13 +0000 Subject: Use -o rather than > so that we don't get an empty file on error (e.g. "qdbuscpp2xml: could not execute moc") (empty file which itself will lead to a different error message next time) Can this be merged into cmake's FindQt4.cmake? Thanks. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1012421 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 3506a548..3ed05c06 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1335,7 +1335,7 @@ IF (QT4_QMAKE_FOUND) ENDIF (_customName) ADD_CUSTOM_COMMAND(OUTPUT ${_target} - COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_qt4_dbus_options} ${_in_file} > ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_qt4_dbus_options} ${_in_file} -o ${_target} DEPENDS ${_in_file} ) ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) -- cgit v1.2.1 From 0ad628ce96572f7c2abfd561d580e52cd49a7b37 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 18 Aug 2009 22:09:20 +0000 Subject: Fix detection of Qt's phonon, patch by Pavel Volkovitskiy, approved by Thiago. This needs Qt-4.5.3 when it's out or kde-qt (which has the fix backported). For older versions of Qt, it didn't work before, and it still won't work; we used standalone phonon instead (and most people still do). svn path=/trunk/KDE/kdelibs/; revision=1013127 --- modules/FindQt4.cmake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 3ed05c06..7c79edeb 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -738,11 +738,13 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/QtXmlPatterns NO_DEFAULT_PATH ) - + # Set QT_PHONON_INCLUDE_DIR - FIND_PATH(QT_PHONON_INCLUDE_DIR phonon + # Qt >= 4.5.3 (or kde-qt-4.5.2 which has the fix too) : Phonon/ClassName is inside include/phonon + # With previous versions of Qt, this could not work; upgrade Qt or use a standalone phonon + FIND_PATH(QT_PHONON_INCLUDE_DIR Phonon PATHS - ${QT_INCLUDE_DIR}/phonon + ${QT_HEADERS_DIR}/phonon NO_DEFAULT_PATH ) -- cgit v1.2.1 From 6f3e9e9fb2fce5412ef5e4b710f52d965e20d337 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 19 Aug 2009 08:57:47 +0000 Subject: aclemens asked whether CMAKE_BUILD_TYPE was case sensitive; it's not, except for those two buggy checks - fixed. svn path=/trunk/KDE/kdelibs/; revision=1013192 --- modules/FindKDEWin.cmake | 7 ++++--- modules/FindMySQL.cmake | 10 ++++++---- 2 files changed, 10 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index 2da5384e..2c420b55 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -25,11 +25,12 @@ if (WIN32) # search for kdewin in the default install directory for applications (default of (n)make install) FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) - if (CMAKE_BUILD_TYPE STREQUAL "Debug") + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + if (CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") set (LIBRARY_NAME kdewind) - else(CMAKE_BUILD_TYPE STREQUAL "Debug") + else(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") set (LIBRARY_NAME kdewin) - endif (CMAKE_BUILD_TYPE STREQUAL "Debug") + endif (CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") if (MSVC_IDE ) set (LIBRARY_NAME "kdewind") endif (MSVC_IDE) diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index 6a0f8941..78332714 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -38,18 +38,20 @@ else(WIN32) endif(WIN32) if(WIN32) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + # path suffix for debug/release mode # binary_dist: mysql binary distribution # build_dist: custom build - if(CMAKE_BUILD_TYPE STREQUAL "Debug") + if(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") set(binary_dist debug) set(build_dist Debug) - else(CMAKE_BUILD_TYPE STREQUAL "Debug") + else(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") ADD_DEFINITIONS(-DDBUG_OFF) set(binary_dist opt) set(build_dist Release) - endif(CMAKE_BUILD_TYPE STREQUAL "Debug") - + endif(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") + # find_library(MYSQL_LIBRARIES NAMES mysqlclient find_library(MYSQL_LIBRARIES NAMES libmysql PATHS -- cgit v1.2.1 From fc1d82ab81a377b931e9bdbc1f842a3e804e6eee Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Tue, 25 Aug 2009 14:42:41 +0000 Subject: Handle relative paths gracefully for kde4_add_kcfg_files macro. If the passed arguments have a relative path, the generated files end up with the same relative path in the build dir, otherwise the old behavior is applied (generated files end up in the current build dir). (Actually we might want to investigate a similar trick for files generated from ui files, and moc files as I seem to remember having a similar issue with moc files in solid a while ago, workarounded by changing lots of filenames...) Should work fine with existing code, I only had to make a small adjustment in plasma desktop shell (committed a minute ago). CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1015454 --- modules/KDE4Macros.cmake | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 1b7a934e..ece967aa 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -62,7 +62,26 @@ macro (KDE4_ADD_KCFG_FILES _sources ) if(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) get_filename_component(_abs_PATH ${_tmp_FILE} PATH) + + # Get relative path + get_filename_component(_rel_PATH ${_current_FILE} PATH) + + # Resolve the relative path from the current source dir + if(NOT ${_rel_PATH} STREQUAL "") + get_filename_component(_abs_PATH2 ${CMAKE_CURRENT_SOURCE_DIR}/${_rel_PATH} ABSOLUTE) + endif(NOT ${_rel_PATH} STREQUAL "") + + # If the resolved relative path is not equal to the absolute one, + # that means that we got an absolute path in the first place + if(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") + set(_rel_PATH "") + endif(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") + get_filename_component(_basename ${_tmp_FILE} NAME_WE) + # If we had a real relative path, then change the basename accordingly + if(NOT ${_rel_PATH} STREQUAL "") + set(_basename ${_rel_PATH}/${_basename}) + endif(NOT ${_rel_PATH} STREQUAL "") file(READ ${_tmp_FILE} _contents) string(REGEX REPLACE "^(.*\n)?File=([^\n]+kcfg).*\n.*$" "\\2" _kcfg_FILENAME "${_contents}") @@ -78,10 +97,15 @@ macro (KDE4_ADD_KCFG_FILES _sources ) message(ERROR "${_kcfg_FILENAME} not found; tried in ${_abs_PATH} and ${CMAKE_CURRENT_BINARY_DIR}") endif(NOT EXISTS "${_kcfg_FILE}") + # make sure the directory exist in the build directory + if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}") + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}) + endif(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}") + # the command for creating the source file from the kcfg file add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} - ARGS ${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR} + ARGS ${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH} MAIN_DEPENDENCY ${_tmp_FILE} DEPENDS ${_kcfg_FILE} ${_KDE4_KCONFIG_COMPILER_DEP} ) -- cgit v1.2.1 From 037776091954af8542110d5b623c4596e94cd7db Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Wed, 26 Aug 2009 12:15:09 +0000 Subject: OK, my previous claim for r1015454 was wrong. The new behavior breaks old file in many more cases. So activating the new behavior only if the USE_RELATIVE_PATH option is given. (Still, I think we might want to investigate a this trick for files generated from ui files, and moc files ;-)) CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1015825 --- modules/KDE4Macros.cmake | 42 +++++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index ece967aa..7e25471c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -53,32 +53,40 @@ endif(NOT COMMAND _AUTOMOC4_KDE4_PRE_TARGET_HANDLING) macro (KDE4_ADD_KCFG_FILES _sources ) - if( ${ARGV1} STREQUAL "GENERATE_MOC" ) - set(_kcfg_generatemoc TRUE) - endif( ${ARGV1} STREQUAL "GENERATE_MOC" ) + foreach (_current_ARG ${ARGN}) + if( ${_current_ARG} STREQUAL "GENERATE_MOC" ) + set(_kcfg_generatemoc TRUE) + endif( ${_current_ARG} STREQUAL "GENERATE_MOC" ) + + if( ${_current_ARG} STREQUAL "USE_RELATIVE_PATH" ) + set(_kcfg_relativepath TRUE) + endif( ${_current_ARG} STREQUAL "USE_RELATIVE_PATH" ) + endforeach (_current_ARG ${ARGN}) foreach (_current_FILE ${ARGN}) - if(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") + if(NOT ${_current_FILE} STREQUAL "GENERATE_MOC" AND NOT ${_current_FILE} STREQUAL "USE_RELATIVE_PATH") get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) get_filename_component(_abs_PATH ${_tmp_FILE} PATH) - # Get relative path - get_filename_component(_rel_PATH ${_current_FILE} PATH) + if (_kcfg_relativepath) # Process relative path only if the option was set + # Get relative path + get_filename_component(_rel_PATH ${_current_FILE} PATH) - # Resolve the relative path from the current source dir - if(NOT ${_rel_PATH} STREQUAL "") - get_filename_component(_abs_PATH2 ${CMAKE_CURRENT_SOURCE_DIR}/${_rel_PATH} ABSOLUTE) - endif(NOT ${_rel_PATH} STREQUAL "") + # Resolve the relative path from the current source dir + if(NOT ${_rel_PATH} STREQUAL "") + get_filename_component(_abs_PATH2 ${CMAKE_CURRENT_SOURCE_DIR}/${_rel_PATH} ABSOLUTE) + endif(NOT ${_rel_PATH} STREQUAL "") - # If the resolved relative path is not equal to the absolute one, - # that means that we got an absolute path in the first place - if(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") - set(_rel_PATH "") - endif(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") + # If the resolved relative path is not equal to the absolute one, + # that means that we got an absolute path in the first place + if(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") + set(_rel_PATH "") + endif(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") + endif (_kcfg_relativepath) get_filename_component(_basename ${_tmp_FILE} NAME_WE) - # If we had a real relative path, then change the basename accordingly + # If we had a real relative path and we're asked to use it, then change the basename accordingly if(NOT ${_rel_PATH} STREQUAL "") set(_basename ${_rel_PATH}/${_basename}) endif(NOT ${_rel_PATH} STREQUAL "") @@ -116,7 +124,7 @@ macro (KDE4_ADD_KCFG_FILES _sources ) endif(_kcfg_generatemoc) list(APPEND ${_sources} ${_src_FILE} ${_header_FILE}) - endif(NOT ${_current_FILE} STREQUAL "GENERATE_MOC") + endif(NOT ${_current_FILE} STREQUAL "GENERATE_MOC" AND NOT ${_current_FILE} STREQUAL "USE_RELATIVE_PATH") endforeach (_current_FILE) endmacro (KDE4_ADD_KCFG_FILES) -- cgit v1.2.1 From 6027502a31085d722c07bd5a105346c3629e1a97 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 30 Aug 2009 14:46:06 +0000 Subject: revert r990265 because it breaks plugins on windows CCMAIL: kde-windows@kde.org svn path=/trunk/KDE/kdelibs/; revision=1017394 --- modules/KDE4Macros.cmake | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 7e25471c..e494c0ae 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -606,8 +606,6 @@ macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) if (_first_SRC) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") - else (_first_SRC) - set_target_properties(${_target_NAME} PROPERTIES PREFIX "lib") endif (_first_SRC) # for shared libraries/plugins a -DMAKE_target_LIB is required -- cgit v1.2.1 From 8d88fdf2461f7fe521ba2a4da945ed670557eb13 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Mon, 31 Aug 2009 00:25:55 +0000 Subject: CCMAIL: nicola.gigante@gmail.com Merging the KAuth framework, part of Nicola's GSoC project, into KDELibs svn path=/trunk/KDE/kdelibs/; revision=1017607 --- modules/FindPolkitQt.cmake | 85 ++++++++++++++++++++++++++++++++++++++++++++++ modules/MacroKAuth.cmake | 61 +++++++++++++++++++++++++++++++++ 2 files changed, 146 insertions(+) create mode 100644 modules/FindPolkitQt.cmake create mode 100644 modules/MacroKAuth.cmake (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake new file mode 100644 index 00000000..bf3980a9 --- /dev/null +++ b/modules/FindPolkitQt.cmake @@ -0,0 +1,85 @@ +# - Try to find Polkit-qt +# Once done this will define +# +# POLKITQT_FOUND - system has Polkit-qt +# POLKITQT_INCLUDE_DIR - the Polkit-qt include directory +# POLKITQT_LIBRARIES - Link these to use all Polkit-qt libs +# POLKITQT_CORE_LIBRARY +# POLKITQT_GUI_LIBRARY +# POLKITQT_DEFINITIONS - Compiler switches required for using Polkit-qt + +# Copyright (c) 2008, Adrien Bustany, +# Copyright (c) 2009, Daniel Nicoletti, +# Copyright (c) 2009, Dario Freddi, +# Copyright (c) 2009, Michal Malek, +# +# Redistribution and use is allowed according to the terms of the GPLv2+ license. + +if (POLKITQT_INCLUDE_DIR AND POLKITQT_LIB) + set(POLKITQT_FIND_QUIETLY TRUE) +endif (POLKITQT_INCLUDE_DIR AND POLKITQT_LIB) + +include(FindPkgConfig) + +if (NOT POLKITQT_MIN_VERSION) + set(POLKITQT_MIN_VERSION "0.9.0") +endif (NOT POLKITQT_MIN_VERSION) + +pkg_search_module( POLKITQT polkit-qt ) + +if (POLKITQT_FOUND) + if (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) + message(STATUS "Found Polkit-Qt release < ${POLKITQT_MIN_VERSION}") + message(STATUS "You need Polkit-Qt version ${POLKITQT_MIN_VERSION} or newer to compile this component") + set(POLKITQT_FOUND FALSE) + return() + else (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) + message(STATUS "Found Polkit-Qt release >= ${POLKITQT_MIN_VERSION}") + endif (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) +else (POLKITQT_FOUND) + set(POLKITQT_FOUND FALSE) + message(STATUS "Cannot find Polkit-Qt library!") + return() +endif (POLKITQT_FOUND) + + +# find_path( POLKITQT_INCLUDE_DIR PolicyKit/policykit-qt/Polkit-qt ) +find_path( POLKITQT_INCLUDE_DIR PolicyKit/polkit-qt/ ) + +find_library( POLKITQT_CORE_LIBRARY NAMES polkit-qt-core ) +find_library( POLKITQT_GUI_LIBRARY NAMES polkit-qt-gui ) + +if (POLKITQT_INCLUDE_DIR AND POLKITQT_CORE_LIBRARY AND POLKITQT_GUI_LIBRARY) + set(POLKITQT_FOUND TRUE) +else (POLKITQT_INCLUDE_DIR AND POLKITQT_CORE_LIBRARY AND POLKITQT_GUI_LIBRARY) + set(POLKITQT_FOUND FALSE) +endif (POLKITQT_INCLUDE_DIR AND POLKITQT_CORE_LIBRARY AND POLKITQT_GUI_LIBRARY) + +set(POLKITQT_LIBRARIES ${POLKITQT_CORE_LIBRARY} ${POLKITQT_GUI_LIBRARY}) + +set(POLKITQT_INCLUDE_DIR ${POLKITQT_INCLUDE_DIR}/PolicyKit/polkit-qt ${POLKITQT_INCLUDE_DIR}/PolicyKit/) + +set(POLICY_FILES_INSTALL_DIR ${POLKITQT_PREFIX}/share/PolicyKit/policy/) + +if (POLKITQT_FOUND) + if (NOT POLKITQT_FIND_QUIETLY) + message(STATUS "Found Polkit-Qt: ${POLKITQT_LIBRARIES}") + endif (NOT POLKITQT_FIND_QUIETLY) +else (POLKITQT_FOUND) + if (POLKITQT_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Polkit-Qt") + endif (POLKITQT_FIND_REQUIRED) +endif (POLKITQT_FOUND) + +mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_LIB) + +macro(dbus_add_activation_system_service _sources) + pkg_search_module( DBUS dbus-1 ) + foreach (_i ${_sources}) + get_filename_component(_service_file ${_i} ABSOLUTE) + string(REGEX REPLACE "\\.service.*$" ".service" _output_file ${_i}) + set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_output_file}) + configure_file(${_service_file} ${_target}) + install(FILES ${_target} DESTINATION ${DBUS_PREFIX}/share/dbus-1/system-services ) + endforeach (_i ${ARGN}) +endmacro(dbus_add_activation_system_service _sources) diff --git a/modules/MacroKAuth.cmake b/modules/MacroKAuth.cmake new file mode 100644 index 00000000..f051ee4e --- /dev/null +++ b/modules/MacroKAuth.cmake @@ -0,0 +1,61 @@ + +execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data --locate kauth/dbus_service.stub OUTPUT_VARIABLE KDE4_KAUTH_DBUS_SERVICE_STUB ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) +message(STATUS "KAuth: DBus service stub file found at ${KDE4_KAUTH_DBUS_SERVICE_STUB}") +execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data --locate kauth/dbus_policy.stub OUTPUT_VARIABLE KDE4_KAUTH_DBUS_POLICY_STUB ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) +message(STATUS "KAuth: DBus policy stub file found at ${KDE4_KAUTH_DBUS_POLICY_STUB}") +execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path libexec --locate kauth-policy-gen OUTPUT_VARIABLE KDE4_KAUTH_POLICY_GEN ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) + +set( KDE4_KAUTH_DBUS_POLICY_STUB ${DATA_INSTALL_DIR}/kauth/dbus_policy.stub) +set( KDE4_KAUTH_DBUS_SERVICE_STUB ${DATA_INSTALL_DIR}/kauth/dbus_service.stub) +set( KDE4_KAUTH_POLICY_GEN ${LIBEXEC_INSTALL_DIR}/kauth-policy-gen) + +if(NOT KDE4_KAUTH_DBUS_SERVICE_STUB) + message(FATAL_ERROR "DBus service stub file couldn't be found (required by kde4_auth_add_helper macro)") +endif(NOT KDE4_KAUTH_DBUS_SERVICE_STUB) + +if(NOT KDE4_KAUTH_DBUS_POLICY_STUB) + message(FATAL_ERROR "DBus policy stub file couldn't be found (required by kde4_auth_add_helper macro)") +endif(NOT KDE4_KAUTH_DBUS_POLICY_STUB) + +if(NOT KDE4_KAUTH_POLICY_GEN) + message(FATAL_ERROR "KAuth policy generator tool couldn't be found (required by kde4_auth_register_actions macro)") +endif(NOT KDE4_KAUTH_POLICY_GEN) + +macro(kde4_auth_add_helper _HELPER_TARGET _HELPER_ID _HELPER_USER) + + set(HELPER_ID ${_HELPER_ID}) + set(HELPER_TARGET ${_HELPER_TARGET}) + set(HELPER_USER ${_HELPER_USER}) + + kde4_add_executable(${HELPER_TARGET} ${ARGN}) + target_link_libraries(${HELPER_TARGET} ${KDE4_KDECORE_LIBS}) + install(TARGETS ${HELPER_TARGET} DESTINATION ${LIBEXEC_INSTALL_DIR}) + + configure_file(${KDE4_KAUTH_DBUS_POLICY_STUB} ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf DESTINATION /etc/dbus-1/system.d/) + + configure_file(${KDE4_KAUTH_DBUS_SERVICE_STUB} ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service DESTINATION /usr/share/dbus-1/system-services ) + + +endmacro(kde4_auth_add_helper) + +macro(kde4_auth_register_actions HELPER_ID ACTIONS_FILE) + +if(APPLE) + install(CODE "execute_process(COMMAND ${KDE4_KAUTH_POLICY_GEN} ${ACTIONS_FILE} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})") +elseif(UNIX) + set(_output ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.policy) + get_filename_component(_input ${ACTIONS_FILE} ABSOLUTE) + + add_custom_command(OUTPUT ${_output} + COMMAND ${KDE4_KAUTH_POLICY_GEN} ${_input} > ${_output} + MAIN_DEPENDENCY ${_input} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMENT "Generating ${HELPER_ID}.policy") + add_custom_target("actions for ${HELPER_ID}" ALL DEPENDS ${_output}) + + install(FILES ${_output} DESTINATION ${POLICY_FILES_INSTALL_DIR}) +endif() + +endmacro(kde4_auth_register_actions) -- cgit v1.2.1 From 30f4fb9a7189168f8b9fc87001106ef2205a99a2 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Mon, 31 Aug 2009 17:13:06 +0000 Subject: Fix modules svn path=/trunk/KDE/kdelibs/; revision=1017843 --- modules/MacroKAuth.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/MacroKAuth.cmake b/modules/MacroKAuth.cmake index f051ee4e..57d994e4 100644 --- a/modules/MacroKAuth.cmake +++ b/modules/MacroKAuth.cmake @@ -55,7 +55,9 @@ elseif(UNIX) COMMENT "Generating ${HELPER_ID}.policy") add_custom_target("actions for ${HELPER_ID}" ALL DEPENDS ${_output}) + if (POLKITQT_FOUND) install(FILES ${_output} DESTINATION ${POLICY_FILES_INSTALL_DIR}) + endif (POLKITQT_FOUND) endif() endmacro(kde4_auth_register_actions) -- cgit v1.2.1 From 2e2020a1e1e4f140fb776d0073203770b5fe6708 Mon Sep 17 00:00:00 2001 From: Raphael Kubo da Costa Date: Mon, 31 Aug 2009 18:33:55 +0000 Subject: Don't hardcode /etc and /usr. svn path=/trunk/KDE/kdelibs/; revision=1017860 --- modules/MacroKAuth.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroKAuth.cmake b/modules/MacroKAuth.cmake index 57d994e4..826c85f2 100644 --- a/modules/MacroKAuth.cmake +++ b/modules/MacroKAuth.cmake @@ -32,10 +32,10 @@ macro(kde4_auth_add_helper _HELPER_TARGET _HELPER_ID _HELPER_USER) install(TARGETS ${HELPER_TARGET} DESTINATION ${LIBEXEC_INSTALL_DIR}) configure_file(${KDE4_KAUTH_DBUS_POLICY_STUB} ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf DESTINATION /etc/dbus-1/system.d/) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d/) configure_file(${KDE4_KAUTH_DBUS_SERVICE_STUB} ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service DESTINATION /usr/share/dbus-1/system-services ) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service DESTINATION ${DBUS_PREFIX}/share/dbus-1/system-services ) endmacro(kde4_auth_add_helper) -- cgit v1.2.1 From 96038bf56b933ae9c9dcaf7c8cd0b827173eb3af Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Mon, 31 Aug 2009 19:06:32 +0000 Subject: Respect PREFIX for "dbus system service" files and dbus "system configuration files". Please review extensively :) CCMAIL: kde-buildsystem@kde.org CCMAIL: drf@kde.org svn path=/trunk/KDE/kdelibs/; revision=1017870 --- modules/FindKDE4Internal.cmake | 3 +++ modules/MacroKAuth.cmake | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 91567585..3c7c1de4 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -104,6 +104,7 @@ # XDG_MIME_INSTALL_DIR - the XDG mimetypes install dir # DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) # DBUS_SERVICES_INSTALL_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) +# DBUS_SYSTEM_SERVICES_INSTALL_DIR - the directory where dbus system services be installed (default is prefix/share/dbus-1/system-services ) # # The following variable is provided, but seem to be unused: # LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") @@ -664,6 +665,7 @@ if (WIN32) set(INFO_INSTALL_DIR "share/info" ) # The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") set(DBUS_INTERFACES_INSTALL_DIR "share/dbus-1/interfaces" ) # The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") set(DBUS_SERVICES_INSTALL_DIR "share/dbus-1/services" ) # The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + set(DBUS_SYSTEM_SERVICES_INSTALL_DIR "share/dbus-1/system-services" ) # The kde dbus system services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/system-services)") else (WIN32) @@ -735,6 +737,7 @@ else (WIN32) _set_fancy(INFO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/info" "The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") _set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + _set_fancy(DBUS_SYSTEM_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/system-services" "The kde dbus system services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/system-services)") endif (WIN32) diff --git a/modules/MacroKAuth.cmake b/modules/MacroKAuth.cmake index 826c85f2..f05bc8b4 100644 --- a/modules/MacroKAuth.cmake +++ b/modules/MacroKAuth.cmake @@ -35,7 +35,7 @@ macro(kde4_auth_add_helper _HELPER_TARGET _HELPER_ID _HELPER_USER) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d/) configure_file(${KDE4_KAUTH_DBUS_SERVICE_STUB} ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service DESTINATION ${DBUS_PREFIX}/share/dbus-1/system-services ) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service DESTINATION ${DBUS_SYSTEM_SERVICES_INSTALL_DIR}) endmacro(kde4_auth_add_helper) -- cgit v1.2.1 From 567b97273ad4f922c8b9e7a2a00595a679d082f6 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Tue, 1 Sep 2009 12:10:26 +0000 Subject: Reapply the patch I applied to FindPolkitQt when it was in kdebase svn path=/trunk/KDE/kdelibs/; revision=1018181 --- modules/FindPolkitQt.cmake | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index bf3980a9..c3f7ca67 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -44,10 +44,19 @@ endif (POLKITQT_FOUND) # find_path( POLKITQT_INCLUDE_DIR PolicyKit/policykit-qt/Polkit-qt ) -find_path( POLKITQT_INCLUDE_DIR PolicyKit/polkit-qt/ ) - -find_library( POLKITQT_CORE_LIBRARY NAMES polkit-qt-core ) -find_library( POLKITQT_GUI_LIBRARY NAMES polkit-qt-gui ) +find_path( POLKITQT_INCLUDE_DIR + NAMES PolicyKit/polkit-qt/ + HINTS ${POLKITQT_INCLUDEDIR} +) + +find_library( POLKITQT_CORE_LIBRARY + NAMES polkit-qt-core + HINTS ${POLKITQT_LIBDIR} +) +find_library( POLKITQT_GUI_LIBRARY + NAMES polkit-qt-gui + HINTS ${POLKITQT_LIBDIR} +) if (POLKITQT_INCLUDE_DIR AND POLKITQT_CORE_LIBRARY AND POLKITQT_GUI_LIBRARY) set(POLKITQT_FOUND TRUE) -- cgit v1.2.1 From 523f2823fe33dcb1da0ce0e5d4349693416893cf Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 1 Sep 2009 16:06:37 +0000 Subject: As of Qt 4.6.x, we need explicetly add macro in case of use -fno-exceptions svn path=/trunk/KDE/kdelibs/; revision=1018365 --- modules/FindKDE4Internal.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 3c7c1de4..2e1006c8 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1021,8 +1021,9 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common") - add_definitions (-D_BSD_SOURCE) + # As off Qt 4.6.x we need to override the new exception macros if we want compile with -fno-exceptions + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common") + add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux) # gcc under Windows -- cgit v1.2.1 From c3fd2890f329050cc4130cd65f6c6827ee633ac2 Mon Sep 17 00:00:00 2001 From: Helio Castro Date: Tue, 1 Sep 2009 16:42:59 +0000 Subject: - Need to undefine macro if we force exceptions. Thanks to Andreas Pakulat svn path=/trunk/KDE/kdelibs/; revision=1018389 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 2e1006c8..eaa69a2f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1006,7 +1006,7 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) + set (KDE4_ENABLE_EXCEPTIONS -fexceptions -UQT_NO_EXCEPTIONS) # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") -- cgit v1.2.1 From d9e84253aa0deb8db2c90d7e0d829cc7cbed163a Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 1 Sep 2009 18:12:15 +0000 Subject: unbreak compilation of kio/misc/kpac svn path=/trunk/KDE/kdelibs/; revision=1018464 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index eaa69a2f..dd14d994 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1006,7 +1006,7 @@ endif(MSVC) if (CMAKE_COMPILER_IS_GNUCXX) - set (KDE4_ENABLE_EXCEPTIONS -fexceptions -UQT_NO_EXCEPTIONS) + set (KDE4_ENABLE_EXCEPTIONS "-fexceptions -UQT_NO_EXCEPTIONS") # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG -DQT_NO_DEBUG") set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") -- cgit v1.2.1 From 3cc6b30ab7aa839b5b51e287fd21e0c9382d6fe9 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 1 Sep 2009 18:16:08 +0000 Subject: Forwardport improvements of uic error-handling svn path=/trunk/KDE/kdelibs/; revision=1018468 --- modules/kde4uic.cmake | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 0e2a33c9..92dd500c 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -35,21 +35,22 @@ if (KDE4_HEADER) -tr tr2i18n ${KDE_UIC_FILE} OUTPUT_VARIABLE _uic_CONTENTS - ERROR_QUIET ) set(KDE_UIC_CPP_FILE ${KDE_UIC_H_FILE}) endif (KDE4_HEADER) -#replace tr218n("") with QString::null to avoid warning from KLocale -STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) -STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) -#replace image15_data with img15_filename to make enable_final work -STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") -#fixup include guard -STRING(REGEX REPLACE "#ifndef " "#ifndef UI_" _uic_CONTENTS "${_uic_CONTENTS}") -STRING(REGEX REPLACE "#define " "#define UI_" _uic_CONTENTS "${_uic_CONTENTS}") +IF (${_uic_CONTENTS}) + #replace tr218n("") with QString::null to avoid warning from KLocale + STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) + STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) + #replace image15_data with img15_filename to make enable_final work + STRING(REGEX REPLACE "image([0-9]+)_data" "img\\1_${KDE_UIC_BASENAME}" _uic_CONTENTS "${_uic_CONTENTS}") + #fixup include guard + STRING(REGEX REPLACE "#ifndef " "#ifndef UI_" _uic_CONTENTS "${_uic_CONTENTS}") + STRING(REGEX REPLACE "#define " "#define UI_" _uic_CONTENTS "${_uic_CONTENTS}") -FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n${_uic_CONTENTS}\n") + FILE(WRITE ${KDE_UIC_CPP_FILE} "#include \n#include \n\n${_uic_CONTENTS}\n") +ENDIF() -- cgit v1.2.1 From 0ebb10bab91a5737f133036b9a759b3c10826bf1 Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 1 Sep 2009 18:48:48 +0000 Subject: oops svn path=/trunk/KDE/kdelibs/; revision=1018489 --- modules/kde4uic.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/kde4uic.cmake b/modules/kde4uic.cmake index 92dd500c..ed328b40 100644 --- a/modules/kde4uic.cmake +++ b/modules/kde4uic.cmake @@ -41,7 +41,7 @@ if (KDE4_HEADER) endif (KDE4_HEADER) -IF (${_uic_CONTENTS}) +IF (_uic_CONTENTS) #replace tr218n("") with QString::null to avoid warning from KLocale STRING(REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) STRING(REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _uic_CONTENTS "${_uic_CONTENTS}" ) -- cgit v1.2.1 From 8b60db93fb12e104abb0ef8537cbf662c6979ea2 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Wed, 2 Sep 2009 09:44:45 +0000 Subject: Fix installation prefix, still need to spit a warning svn path=/trunk/KDE/kdelibs/; revision=1018860 --- modules/FindPolkitQt.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index c3f7ca67..d6253cc7 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -68,7 +68,10 @@ set(POLKITQT_LIBRARIES ${POLKITQT_CORE_LIBRARY} ${POLKITQT_GUI_LIBRARY}) set(POLKITQT_INCLUDE_DIR ${POLKITQT_INCLUDE_DIR}/PolicyKit/polkit-qt ${POLKITQT_INCLUDE_DIR}/PolicyKit/) -set(POLICY_FILES_INSTALL_DIR ${POLKITQT_PREFIX}/share/PolicyKit/policy/) +#if (POLKITQT_PREFIX != ${CMAKE_INSTALL_PREFIX}) +#message("Warning: Move polkit files to /usr prefix") +#endif() +set(POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/PolicyKit/policy/) if (POLKITQT_FOUND) if (NOT POLKITQT_FIND_QUIETLY) -- cgit v1.2.1 From 6a8084b7a49753e558c1304d1536a586f4239ab7 Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Wed, 2 Sep 2009 18:23:54 +0000 Subject: Document the USE_RELATIVE_PATH option. svn path=/trunk/KDE/kdelibs/; revision=1019060 --- modules/FindKDE4Internal.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index dd14d994..5392f584 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -125,9 +125,11 @@ # KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui) # Use this to add Qt designer ui files from Qt version 3 to your application/library. # -# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc) +# KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] [USE_RELATIVE_PATH] file1.kcfgc ... fileN.kcfgc) # Use this to add KDE config compiler files to your application/library. # Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. +# Use optional USE_RELATIVE_PATH to generate the classes in the build following the given +# relative path to the file. # # KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) # Use this to add widget description files for the makekdewidgets code generator -- cgit v1.2.1 From 417dd868bbc34407f31dfa8632492b4cafa17950 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Wed, 2 Sep 2009 18:50:05 +0000 Subject: Spit a warning on cmake when polkit-qt is found with a different install prefix than POLKITQT_PREFIX. I will also add warnings when installing files svn path=/trunk/KDE/kdelibs/; revision=1019066 --- modules/FindPolkitQt.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index d6253cc7..c06b38c7 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -35,6 +35,10 @@ if (POLKITQT_FOUND) return() else (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) message(STATUS "Found Polkit-Qt release >= ${POLKITQT_MIN_VERSION}") + if (NOT(POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX)) + message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " + "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${POLKITQT_PREFIX} prefix") + endif (NOT(POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX)) endif (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) else (POLKITQT_FOUND) set(POLKITQT_FOUND FALSE) -- cgit v1.2.1 From 60320ce756a0bcdf2f86549c43b308fd8f1daae2 Mon Sep 17 00:00:00 2001 From: John Tapsell Date: Wed, 2 Sep 2009 21:36:40 +0000 Subject: Fix compile problem, by changing IF(NOT( to IF( NOT svn path=/trunk/KDE/kdelibs/; revision=1019111 --- modules/FindPolkitQt.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index c06b38c7..b445b2e8 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -35,10 +35,10 @@ if (POLKITQT_FOUND) return() else (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) message(STATUS "Found Polkit-Qt release >= ${POLKITQT_MIN_VERSION}") - if (NOT(POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX)) + if ( NOT POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${POLKITQT_PREFIX} prefix") - endif (NOT(POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX)) + endif (NOT POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) endif (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) else (POLKITQT_FOUND) set(POLKITQT_FOUND FALSE) -- cgit v1.2.1 From 47ed93f05b28205a472977e283efa1e61c8ae263 Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Thu, 3 Sep 2009 18:36:50 +0000 Subject: Simplify using IS_ABSOLUTE. Thanks for the tip aleXXX. CCMAIL: neundorf@kde.og svn path=/trunk/KDE/kdelibs/; revision=1019492 --- modules/KDE4Macros.cmake | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e494c0ae..288b33c6 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -73,20 +73,14 @@ macro (KDE4_ADD_KCFG_FILES _sources ) # Get relative path get_filename_component(_rel_PATH ${_current_FILE} PATH) - # Resolve the relative path from the current source dir - if(NOT ${_rel_PATH} STREQUAL "") - get_filename_component(_abs_PATH2 ${CMAKE_CURRENT_SOURCE_DIR}/${_rel_PATH} ABSOLUTE) - endif(NOT ${_rel_PATH} STREQUAL "") - - # If the resolved relative path is not equal to the absolute one, - # that means that we got an absolute path in the first place - if(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") + if (IS_ABSOLUTE ${_rel_PATH}) + # We got an absolute path set(_rel_PATH "") - endif(NOT "${_abs_PATH2}" STREQUAL "${_abs_PATH}") + endif (IS_ABSOLUTE ${_rel_PATH}) endif (_kcfg_relativepath) get_filename_component(_basename ${_tmp_FILE} NAME_WE) - # If we had a real relative path and we're asked to use it, then change the basename accordingly + # If we had a relative path and we're asked to use it, then change the basename accordingly if(NOT ${_rel_PATH} STREQUAL "") set(_basename ${_rel_PATH}/${_basename}) endif(NOT ${_rel_PATH} STREQUAL "") -- cgit v1.2.1 From c1a713b35ed16f5cbc38f9491a769c2c0104878d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petri=20Damst=C3=A9n?= Date: Sun, 6 Sep 2009 09:45:42 +0000 Subject: Add KDE4_KUNITCONVERSION_LIBS svn path=/trunk/KDE/kdelibs/; revision=1020438 --- modules/FindKDE4Internal.cmake | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 5392f584..d95a851a 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -43,6 +43,7 @@ # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library # KDE4_NEPOMUK_LIBRARY - the nepomuk library # KDE4_PLASMA_LIBRARY - the plasma library +# KDE4_KUNITCONVERSION_LIBRARY - the kunitconversion library # # KDE4_PLASMA_OPENGL_FOUND - TRUE if the OpenGL support of Plasma has been found, NOTFOUND otherwise # @@ -73,8 +74,9 @@ # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries # KDE4_NEPOMUK_LIBS - the nepomuk library and all depending libraries # KDE4_PLASMA_LIBS - the plasma library and all depending librairies +# KDE4_KUNITCONVERSION_LIBS - the kunitconversion library and all depending libraries # -# This module defines a bunch of variables used as locations for install directories. +# This module defines a bunch of variables used as locations for install directories. # They can be relative (to CMAKE_INSTALL_PREFIX) or absolute. # Under Windows they are always relative. # @@ -115,7 +117,7 @@ # KDE4_BUILD_TESTS - enable this to build the testcases # KDE4_ENABLE_FPIE - enable it to use gcc Position Independent Executables feature # KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR - only present for CMake >= 2.6.3, defaults to TRUE -# If enabled, the package should install its Config.cmake file to +# If enabled, the package should install its Config.cmake file to # lib/cmake// instead to lib//cmake # # It also adds the following macros and functions (from KDE4Macros.cmake) @@ -261,7 +263,7 @@ cmake_policy(SET CMP0002 OLD) cmake_policy(SET CMP0003 OLD) # CMP0005: keep escaping behaviour for definitions added via add_definitions() cmake_policy(SET CMP0005 OLD) -# since cmake 2.6.3: NEW behaviour is that setting policies doesn't "escape" the file +# since cmake 2.6.3: NEW behaviour is that setting policies doesn't "escape" the file # where this is done, macros and functions are executed with the policies as they # were when the were defined. Keep the OLD behaviour so we can set the policies here # for all KDE software without the big warning @@ -319,9 +321,9 @@ endif(NOT PERL_FOUND) # Check that we really found everything. -# If KDE4 was searched with REQUIRED, we error out with FATAL_ERROR if something wasn't found +# If KDE4 was searched with REQUIRED, we error out with FATAL_ERROR if something wasn't found # already above in the other FIND_PACKAGE() calls. -# If KDE4 was searched without REQUIRED and something in the FIND_PACKAGE() calls above wasn't found, +# If KDE4 was searched without REQUIRED and something in the FIND_PACKAGE() calls above wasn't found, # then we get here and must check that everything has actually been found. If something is missing, # we must not fail with FATAL_ERROR, but only not set KDE4_FOUND. @@ -417,11 +419,11 @@ else (_kdeBootStrapping) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) if (WIN32) - # we don't want to be forced to set two paths into the build tree + # we don't want to be forced to set two paths into the build tree set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin ) # on win32 the install dir is determined on runtime not install time - # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup + # KDELIBS_INSTALL_DIR and QT_INSTALL_DIR are used in KDELibsDependencies.cmake to setup # kde install paths and library dependencies get_filename_component(_DIR ${KDE4_KDECONFIG_EXECUTABLE} PATH ) get_filename_component(KDE4_INSTALL_DIR ${_DIR} PATH ) @@ -448,7 +450,7 @@ else (_kdeBootStrapping) # This file contains the exported library target from kdelibs (new with cmake 2.6.x), e.g. # the library target "kdeui" is exported as "KDE4__kdeui". The "KDE4__" is used as - # "namespace" to separate the imported targets from "normal" targets, it is stored in + # "namespace" to separate the imported targets from "normal" targets, it is stored in # KDE4_TARGET_PREFIX, which is set in KDELibsDependencies.cmake . # Include it to "import" the libraries from kdelibs into the current projects as targets. # This makes setting the _LIBRARY and _LIBS variables actually a bit superfluos, since e.g. @@ -479,6 +481,7 @@ else (_kdeBootStrapping) _kde4_set_lib_variables(KROSSCORE krosscore ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KROSSUI krossui ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KTEXTEDITOR ktexteditor ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KUNITCONVERSION kunitconversion ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(PLASMA plasma ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(SOLID solid ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(THREADWEAVER threadweaver ${KDE4_TARGET_PREFIX}) @@ -504,7 +507,7 @@ else (_kdeBootStrapping) set(KDE4_INCLUDE_DIR ${KDE4_INCLUDE_INSTALL_DIR} ) - # This setting is currently not recorded in KDELibsDependencies.cmake: + # This setting is currently not recorded in KDELibsDependencies.cmake: find_file(KDE4_PLASMA_OPENGL_FOUND plasma/glapplet.h PATHS ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH) # now include the file with the imported tools (executable targets) @@ -745,7 +748,7 @@ endif (WIN32) # The INSTALL_TARGETS_DEFAULT_ARGS variable should be used when libraries are installed. -# It should also be used when installing applications, since then +# It should also be used when installing applications, since then # on OS X application bundles will be installed to BUNDLE_INSTALL_DIR. # The variable MUST NOT be used for installing plugins. # It also MUST NOT be used for executables which are intended to go into sbin/ or libexec/. @@ -756,7 +759,7 @@ endif (WIN32) # This will install libraries correctly under UNIX, OSX and Windows (i.e. dll's go # into bin/. # Later on it will be possible to extend this for installing OSX frameworks -# The COMPONENT Devel argument has the effect that static libraries belong to the +# The COMPONENT Devel argument has the effect that static libraries belong to the # "Devel" install component. If we use this also for all install() commands # for header files, it will be possible to install # -everything: make install OR cmake -P cmake_install.cmake @@ -787,13 +790,13 @@ set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SYSTEM_INCLUDE_PATH} set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH} "${KDE4_BIN_INSTALL_DIR}" ) -set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} +set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} "${KDE4_LIB_INSTALL_DIR}" ) # under Windows dlls may be also installed in bin/ if(WIN32) - set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} - "${_CMAKE_INSTALL_DIR}/bin" + set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} + "${_CMAKE_INSTALL_DIR}/bin" "${CMAKE_INSTALL_PREFIX}/bin" ) endif(WIN32) @@ -815,8 +818,8 @@ if (WIN32) message(FATAL_ERROR "Cygwin is NOT supported, use mingw or MSVC to build KDE4.") endif(CYGWIN) - # limit win32 packaging to kdelibs at now - # don't know if package name, version and notes are always available + # limit win32 packaging to kdelibs at now + # don't know if package name, version and notes are always available if(_kdeBootStrapping) find_package(KDEWIN_Packager) if (KDEWIN_PACKAGER_FOUND) @@ -866,7 +869,7 @@ if (WIN32) set(CMAKE_MSVCIDE_RUN_PATH "${PERL_PATH_WINDOWS}\;${QT_BIN_DIR_WINDOWS}" CACHE STATIC "MSVC IDE Run path" FORCE) endif(MSVC_IDE) - + # we don't support anything below w2k and all winapi calls are unicodes set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0501 -D_WIN32_IE=0x0501 -DUNICODE" ) endif (WIN32) @@ -1025,7 +1028,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") # As off Qt 4.6.x we need to override the new exception macros if we want compile with -fno-exceptions set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common") - add_definitions (-D_BSD_SOURCE) + add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux) # gcc under Windows @@ -1210,7 +1213,7 @@ set(KDE4_INCLUDES ${KDE4_INCLUDE_DIR}/KDE ${KDE4_PHONON_INCLUDES} ${QT_INCLUDES} - ${_KDE4_PLATFORM_INCLUDE_DIRS} + ${_KDE4_PLATFORM_INCLUDE_DIRS} ) set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) -- cgit v1.2.1 From b3a1e104735c5b4f31c0b0827ce6397f071b7fa7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 6 Sep 2009 17:10:00 +0000 Subject: -the RUN_UNINSTALLED argument for KDE4_ADD_[KDEINIT]_EXECUTABLE() is ignored since KDE 4.2 (since then executables have the RPATH always pointing into the buildtree before being installed) Alex svn path=/trunk/KDE/kdelibs/; revision=1020582 --- modules/FindKDE4Internal.cmake | 20 +++++++++++++------- modules/KDE4Macros.cmake | 32 +++++++++++--------------------- 2 files changed, 24 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d95a851a..74439e3b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -152,22 +152,28 @@ # Create a KDE application in the form of a module loadable via kdeinit. # A library named kdeinit_ will be created and a small executable which links to it. # It supports KDE4_ENABLE_FINAL -# If the executable has to be run from the buildtree (e.g. unit tests and code generators -# used later on when compiling), set the option RUN_UNINSTALLED. # If the executable doesn't have a GUI, use the option NOGUI. By default on OS X # application bundles are created, with the NOGUI option no bundles but simple executables -# are created. Currently it doesn't have any effect on other platforms. +# are created. Under Windows this flag is also necessary to separate between applications +# with GUI and without. On other UNIX systems this flag has no effect. +# RUN_UNINSTALLED is deprecated and is ignored, for details see the documentation for +# KDE4_ADD_EXECUTABLE(). # # KDE4_ADD_EXECUTABLE (name [NOGUI] [TEST] [RUN_UNINSTALLED] file1 ... fileN) # Equivalent to ADD_EXECUTABLE(), but additionally adds some more features: # -support for KDE4_ENABLE_FINAL # -support for automoc # -automatic RPATH handling -# If the executable has to be run from the buildtree (e.g. unit tests and code generators -# used later on when compiling), set the option RUN_UNINSTALLED. # If the executable doesn't have a GUI, use the option NOGUI. By default on OS X # application bundles are created, with the NOGUI option no bundles but simple executables -# are created. Currently it doesn't have any effect on other platforms. +# are created. Under Windows this flag is also necessary to separate between applications +# with GUI and without. On other UNIX systems this flag has no effect. +# The option TEST is for internal use only. +# The option RUN_UNINSTALLED is ignored. It was necessary with KDE 4.0 and 4.1 +# if the executable had to be run from the build tree. Since KDE 4.2 all +# executables can be always run uninstalled (the RPATH of executables which are not +# yet installed points since then into the buildtree and is changed +# to the proper location when installing, so RUN_UNINSTALLED is not necessary anymore). # # KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) # Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL @@ -590,7 +596,7 @@ option(KDE4_ENABLE_FPIE "Enable platform supports PIE linking") if (WIN32) find_package(KDEWin REQUIRED) - OPTION(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) + option(KDE4_ENABLE_UAC_MANIFEST "add manifest to make vista uac happy" OFF) if (KDE4_ENABLE_UAC_MANIFEST) find_program(KDE4_MT_EXECUTABLE mt PATHS ${KDEWIN_INCLUDE_DIR}/../bin diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 288b33c6..13efea0d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -522,7 +522,7 @@ endmacro (KDE4_CREATE_FINAL_FILES) # If RPATH is not disabled, these scripts are also used but only for consistency, because # they don't really influence anything then, because the compiled-in RPATH overrides # the LD_LIBRARY_PATH env. variable. -macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME _type) +macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME) if (UNIX) if (APPLE) set(_library_path_variable "DYLD_LIBRARY_PATH") @@ -618,15 +618,14 @@ endmacro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) # if "NOGUI" is in the list of files, the _nogui argument is set to # "NOGUI" (which evaluates to TRUE in cmake), otherwise it is set empty # (which evaluates to FALSE in cmake) -# if "RUN_UNINSTALLED" is in the list of files, the _uninst argument is set to -# "RUN_UNINSTALLED" (which evaluates to TRUE in cmake), otherwise it is set empty -# (which evaluates to FALSE in cmake) +# "RUN_UNINSTALLED" in the list of files is ignored, it is not necessary anymore +# since KDE 4.2 (with cmake 2.6.2), since then all executables are always built +# with RPATH pointing into the build dir. # if "TEST" is in the list of files, the _test argument is set to # "TEST" (which evaluates to TRUE in cmake), otherwise it is set empty # (which evaluates to FALSE in cmake) -macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst _test) +macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _test) set(${_nogui}) - set(${_uninst}) set(${_test}) set(${_output_LIST} ${ARGN}) list(LENGTH ${_output_LIST} count) @@ -646,7 +645,6 @@ macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst _test) endif (${first_PARAM} STREQUAL "NOGUI") if (${first_PARAM} STREQUAL "RUN_UNINSTALLED") - set(${_uninst} "RUN_UNINSTALLED") set(remove 0) endif (${first_PARAM} STREQUAL "RUN_UNINSTALLED") @@ -661,7 +659,6 @@ macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst _test) endif (${second_PARAM} STREQUAL "NOGUI") if (${second_PARAM} STREQUAL "RUN_UNINSTALLED") - set(${_uninst} "RUN_UNINSTALLED") set(remove 0;1) endif (${second_PARAM} STREQUAL "RUN_UNINSTALLED") @@ -671,7 +668,6 @@ macro(KDE4_CHECK_EXECUTABLE_PARAMS _output_LIST _nogui _uninst _test) endif (${second_PARAM} STREQUAL "TEST") - if (NOT "${remove}" STREQUAL "NOTFOUND") list(REMOVE_AT ${_output_LIST} ${remove}) endif (NOT "${remove}" STREQUAL "NOTFOUND") @@ -681,7 +677,7 @@ endmacro(KDE4_CHECK_EXECUTABLE_PARAMS) macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) - kde4_check_executable_params(_SRCS _nogui _uninst _test ${ARGN}) + kde4_check_executable_params(_SRCS _nogui _test ${ARGN}) configure_file(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp PROPERTIES SKIP_AUTOMOC TRUE) @@ -707,10 +703,10 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) - kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${_resourcefile}) + kde4_add_executable(${_target_NAME} "${_nogui}" ${CMAKE_CURRENT_BINARY_DIR}/kdeinit_${_target_NAME}_final_cpp.cpp ${_separate_files} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${_resourcefile}) else (KDE4_ENABLE_FINAL) - kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${_resourcefile}) + kde4_add_executable(${_target_NAME} "${_nogui}" ${_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp ${_resourcefile}) endif (KDE4_ENABLE_FINAL) set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) @@ -731,7 +727,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) set_target_properties(kdeinit_${_target_NAME} PROPERTIES OUTPUT_NAME kdeinit4_${_target_NAME}) - kde4_add_executable(${_target_NAME} "${_nogui}" "${_uninst}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) + kde4_add_executable(${_target_NAME} "${_nogui}" ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp) target_link_libraries(${_target_NAME} kdeinit_${_target_NAME}) endif(WIN32) @@ -875,10 +871,9 @@ endmacro(_KDE4_ADD_MANIFEST) macro (KDE4_ADD_EXECUTABLE _target_NAME) - kde4_check_executable_params( _SRCS _nogui _uninst _test ${ARGN}) + kde4_check_executable_params( _SRCS _nogui _test ${ARGN}) set(_add_executable_param) - set(_type "GUI") # determine additional parameters for add_executable() # for GUI apps, create a bundle on OSX @@ -892,14 +887,9 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) endif (WIN32) if (_nogui) - set(_type "NOGUI") set(_add_executable_param) endif (_nogui) - if (_uninst OR _test) - set(_type "RUN_UNINSTALLED ${_type}") - endif (_uninst OR _test) - if (_test AND NOT KDE4_BUILD_TESTS) set(_add_executable_param ${_add_executable_param} EXCLUDE_FROM_ALL) endif (_test AND NOT KDE4_BUILD_TESTS) @@ -923,7 +913,7 @@ macro (KDE4_ADD_EXECUTABLE _target_NAME) set_target_properties(${_target_NAME} PROPERTIES COMPILE_FLAGS -DKDESRCDIR="\\"${CMAKE_CURRENT_SOURCE_DIR}/\\"") endif (_test) - kde4_handle_rpath_for_executable(${_target_NAME} ${_type}) + kde4_handle_rpath_for_executable(${_target_NAME}) if (WIN32) target_link_libraries(${_target_NAME} ${QT_QTMAIN_LIBRARY}) -- cgit v1.2.1 From f2aab6c074c4f965941e7e02ed6a5f24ad8871bc Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Mon, 7 Sep 2009 10:28:45 +0000 Subject: CCMAIL:kde-buildsystem@kde.org CCMAIL:mueller@kde.org CCMAIL:neundorf@kde.org Commit coming after a long discussion with Alexander. Changing and moving KAuth macros, updating documentation, fixing stuff that already used KAuth. Also, bumping up KDE revision, KDE4WORKSPACE revision and make kdebase/workspace depend on the new 4.3.68 snapshot. Mail me if you find anything strange, it's my first KDE version bump, so you know ;) A big thank you to Alexander for all the help he gave on the cmake side of life. svn path=/trunk/KDE/kdelibs/; revision=1020835 --- modules/FindKDE4Internal.cmake | 38 ++++++++++++---- modules/FindPolkitQt.cmake | 100 +++++++++++++++-------------------------- modules/KDE4Macros.cmake | 57 +++++++++++++++++++++++ modules/MacroKAuth.cmake | 62 +------------------------ 4 files changed, 123 insertions(+), 134 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 74439e3b..12441cb9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -210,6 +210,24 @@ # INSTALL_DESTINATION , or to / if # SUBDIR is specified. # +# KDE4_INSTALL_AUTH_ACTIONS( HELPER_ID ACTIONS_FILE ) +# This macro generates an action file, depending on the backend used, for applications using KAuth. +# It accepts the helper id (the DBUS name) and a file containing the actions (check kdelibs/kdecore/auth/example +# for file format). The macro will take care of generating the file according to the backend specified, +# and to install it in the right location. This (at the moment) means that on Linux (PolicyKit) a .policy +# file will be generated and installed into the policykit action directory (usually /usr/share/PolicyKit/policy/), +# and on Mac (Authorization Services) will be added to the system action registry using the native MacOS API during +# the install phase +# +# KDE4_INSTALL_AUTH_HELPER_FILES( HELPER_TARGET HELPER_ID HELPER_USER ) +# This macro adds the needed files for an helper executable meant to be used by applications using KAuth. +# It accepts the helper target, the helper ID (the DBUS name) and the user under which the helper will run on. +# This macro takes care of generate the needed files, and install them in the right location. This boils down +# to a DBus policy to let the helper register on the system bus, and a service file for letting the helper +# being automatically activated by the system bus. +# *WARNING* You have to install the helper in ${LIBEXEC_INSTALL_DIR} to make sure everything will work. +# +# # # A note on the possible values for CMAKE_BUILD_TYPE and how KDE handles # the flags for those buildtypes. FindKDE4Internal supports the values @@ -392,24 +410,26 @@ if (_kdeBootStrapping) set(EXECUTABLE_OUTPUT_PATH ${kdelibs_BINARY_DIR}/bin ) if (WIN32) - set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) + set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) + set(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kauth-policy-gen ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets ) else (WIN32) - set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler${CMAKE_EXECUTABLE_SUFFIX}.shell ) - - set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4${CMAKE_EXECUTABLE_SUFFIX}.shell ) - set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets${CMAKE_EXECUTABLE_SUFFIX}.shell ) + set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler${CMAKE_EXECUTABLE_SUFFIX}.shell ) + set(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kauth-policy-gen${CMAKE_EXECUTABLE_SUFFIX}.shell ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4${CMAKE_EXECUTABLE_SUFFIX}.shell ) + set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets${CMAKE_EXECUTABLE_SUFFIX}.shell ) endif (WIN32) set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) + set( _KDE4_KAUTH_POLICY_GEN_EXECUTABLE_DEP kauth-policy-gen) set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets) set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4) diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index b445b2e8..500b69d3 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -4,98 +4,70 @@ # POLKITQT_FOUND - system has Polkit-qt # POLKITQT_INCLUDE_DIR - the Polkit-qt include directory # POLKITQT_LIBRARIES - Link these to use all Polkit-qt libs -# POLKITQT_CORE_LIBRARY -# POLKITQT_GUI_LIBRARY +# POLKITQT_CORE_LIBRARY - Link this to use the polkit-qt-core library only +# POLKITQT_GUI_LIBRARY - Link this to use GUI elements in polkit-qt (polkit-qt-gui) # POLKITQT_DEFINITIONS - Compiler switches required for using Polkit-qt -# Copyright (c) 2008, Adrien Bustany, # Copyright (c) 2009, Daniel Nicoletti, # Copyright (c) 2009, Dario Freddi, # Copyright (c) 2009, Michal Malek, # -# Redistribution and use is allowed according to the terms of the GPLv2+ license. +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. if (POLKITQT_INCLUDE_DIR AND POLKITQT_LIB) set(POLKITQT_FIND_QUIETLY TRUE) endif (POLKITQT_INCLUDE_DIR AND POLKITQT_LIB) -include(FindPkgConfig) - if (NOT POLKITQT_MIN_VERSION) set(POLKITQT_MIN_VERSION "0.9.0") endif (NOT POLKITQT_MIN_VERSION) -pkg_search_module( POLKITQT polkit-qt ) - -if (POLKITQT_FOUND) - if (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) - message(STATUS "Found Polkit-Qt release < ${POLKITQT_MIN_VERSION}") - message(STATUS "You need Polkit-Qt version ${POLKITQT_MIN_VERSION} or newer to compile this component") - set(POLKITQT_FOUND FALSE) - return() - else (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) - message(STATUS "Found Polkit-Qt release >= ${POLKITQT_MIN_VERSION}") - if ( NOT POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) - message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " - "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${POLKITQT_PREFIX} prefix") - endif (NOT POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) - endif (POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) -else (POLKITQT_FOUND) - set(POLKITQT_FOUND FALSE) - message(STATUS "Cannot find Polkit-Qt library!") - return() -endif (POLKITQT_FOUND) - +if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + pkg_check_modules(PC_POLKITQT QUIET polkit-qt) + set(POLKITQT_DEFINITIONS ${PC_POLKITQT_CFLAGS_OTHER}) +endif (NOT WIN32) -# find_path( POLKITQT_INCLUDE_DIR PolicyKit/policykit-qt/Polkit-qt ) find_path( POLKITQT_INCLUDE_DIR - NAMES PolicyKit/polkit-qt/ - HINTS ${POLKITQT_INCLUDEDIR} + NAMES polkit-qt/auth.h + PATH_SUFFIXES PolicyKit ) - find_library( POLKITQT_CORE_LIBRARY NAMES polkit-qt-core - HINTS ${POLKITQT_LIBDIR} + HINTS ${PC_POLKITQT_LIBDIR} ) find_library( POLKITQT_GUI_LIBRARY NAMES polkit-qt-gui - HINTS ${POLKITQT_LIBDIR} + HINTS ${PC_POLKITQT_LIBDIR} +) +find_library( POLKITQT_LIBRARIES + NAMES polkit-qt-gui polkit-qt-core + HINTS ${PC_POLKITQT_LIBDIR} ) -if (POLKITQT_INCLUDE_DIR AND POLKITQT_CORE_LIBRARY AND POLKITQT_GUI_LIBRARY) - set(POLKITQT_FOUND TRUE) -else (POLKITQT_INCLUDE_DIR AND POLKITQT_CORE_LIBRARY AND POLKITQT_GUI_LIBRARY) - set(POLKITQT_FOUND FALSE) -endif (POLKITQT_INCLUDE_DIR AND POLKITQT_CORE_LIBRARY AND POLKITQT_GUI_LIBRARY) - -set(POLKITQT_LIBRARIES ${POLKITQT_CORE_LIBRARY} ${POLKITQT_GUI_LIBRARY}) +include(FindPackageHandleStandardArgs) -set(POLKITQT_INCLUDE_DIR ${POLKITQT_INCLUDE_DIR}/PolicyKit/polkit-qt ${POLKITQT_INCLUDE_DIR}/PolicyKit/) +# handle the QUIETLY and REQUIRED arguments and set POLKITQT_FOUND to TRUE if +# all listed variables are TRUE +find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_LIBRARIES POLKITQT_INCLUDE_DIR) -#if (POLKITQT_PREFIX != ${CMAKE_INSTALL_PREFIX}) -#message("Warning: Move polkit files to /usr prefix") -#endif() -set(POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/PolicyKit/policy/) +mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_CORE_LIBRARY POLKITQT_GUI_LIBRARY POLKITQT_LIBRARIES) if (POLKITQT_FOUND) - if (NOT POLKITQT_FIND_QUIETLY) - message(STATUS "Found Polkit-Qt: ${POLKITQT_LIBRARIES}") - endif (NOT POLKITQT_FIND_QUIETLY) -else (POLKITQT_FOUND) - if (POLKITQT_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Polkit-Qt") - endif (POLKITQT_FIND_REQUIRED) + if (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) + message(STATUS "Found Polkit-Qt release < ${POLKITQT_MIN_VERSION}") + message(STATUS "You need Polkit-Qt version ${POLKITQT_MIN_VERSION} or newer to compile this component") + set(POLKITQT_FOUND FALSE) + return() + else (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) + if ( NOT PC_POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) + message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " + "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT_PREFIX} prefix") + endif (NOT PC_POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) + endif (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) endif (POLKITQT_FOUND) -mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_LIB) - -macro(dbus_add_activation_system_service _sources) - pkg_search_module( DBUS dbus-1 ) - foreach (_i ${_sources}) - get_filename_component(_service_file ${_i} ABSOLUTE) - string(REGEX REPLACE "\\.service.*$" ".service" _output_file ${_i}) - set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_output_file}) - configure_file(${_service_file} ${_target}) - install(FILES ${_target} DESTINATION ${DBUS_PREFIX}/share/dbus-1/system-services ) - endforeach (_i ${ARGN}) -endmacro(dbus_add_activation_system_service _sources) +set(POLKITQT_POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/PolicyKit/policy/) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 13efea0d..b9feb310 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -22,6 +22,8 @@ # KDE4_ADD_APP_ICON # KDE4_CREATE_MANPAGE # KDE4_CREATE_BASIC_CMAKE_VERSION_FILE (function) +# KDE4_INSTALL_AUTH_HELPER_FILES +# KDE4_AUTH_INSTALL_ACTIONS # Copyright (c) 2006-2009 Alexander Neundorf, # Copyright (c) 2006, 2007, Laurent Montel, @@ -1207,6 +1209,61 @@ macro (KDE4_HANDLE_RPATH_FOR_LIBRARY _target_NAME) endif (NOT CMAKE_SKIP_RPATH) endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) +# This macro adds the needed files for an helper executable meant to be used by applications using KAuth. +# It accepts the helper target, the helper ID (the DBUS name) and the user under which the helper will run on. +# This macro takes care of generate the needed files, and install them in the right location. This boils down +# to a DBus policy to let the helper register on the system bus, and a service file for letting the helper +# being automatically activated by the system bus. +# *WARNING* You have to install the helper in ${LIBEXEC_INSTALL_DIR} to make sure everything will work. +function(KDE4_INSTALL_AUTH_HELPER_FILES HELPER_TARGET HELPER_ID HELPER_USER) + + if (_kdeBootStrapping) + set(_stubFilesDir ${CMAKE_SOURCE_DIR}/kdecore/auth/backends/dbus/ ) + else (_kdeBootStrapping) + set(_stubFilesDir ${KDE4_DATA_INSTALL_DIR}/kauth/ ) + endif (_kdeBootStrapping) + + configure_file(${_stubFilesDir}/dbus_policy.stub + ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf + DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d/) + + configure_file(${_stubFilesDir}/dbus_service.stub + ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service + DESTINATION ${DBUS_SYSTEM_SERVICES_INSTALL_DIR}) +endfunction(KDE4_INSTALL_AUTH_HELPER_FILES) + +# This macro generates an action file, depending on the backend used, for applications using KAuth. +# It accepts the helper id (the DBUS name) and a file containing the actions (check kdelibs/kdecore/auth/example +# for file format). The macro will take care of generating the file according to the backend specified, +# and to install it in the right location. This (at the moment) means that on Linux (PolicyKit) a .policy +# file will be generated and installed into the policykit action directory (usually /usr/share/PolicyKit/policy/), +# and on Mac (Authorization Services) will be added to the system action registry using the native MacOS API during +# the install phase +function(KDE4_INSTALL_AUTH_ACTIONS HELPER_ID ACTIONS_FILE) + + if(APPLE) + install(CODE "execute_process(COMMAND ${KDE4_KAUTH_POLICY_GEN_EXECUTABLE} ${ACTIONS_FILE} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})") + elseif(UNIX) + set(_output ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.policy) + get_filename_component(_input ${ACTIONS_FILE} ABSOLUTE) + + add_custom_command(OUTPUT ${_output} + COMMAND ${KDE4_KAUTH_POLICY_GEN_EXECUTABLE} ${_input} > ${_output} + MAIN_DEPENDENCY ${_input} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMENT "Generating ${HELPER_ID}.policy" + DEPENDS ${_KDE4_KAUTH_POLICY_GEN_EXECUTABLE_DEP}) + add_custom_target("actions for ${HELPER_ID}" ALL DEPENDS ${_output}) + + if (POLKITQT_FOUND) + install(FILES ${_output} DESTINATION ${POLKITQT_POLICY_FILES_INSTALL_DIR}) + endif (POLKITQT_FOUND) + endif() + +endfunction(KDE4_INSTALL_AUTH_ACTIONS) + macro(_KDE4_EXPORT_LIBRARY_DEPENDENCIES _append_or_write _filename) message(FATAL_ERROR "_KDE4_EXPORT_LIBRARY_DEPENDENCIES() was an internal macro and has been removed again. Just remove the code which calls it, there is no substitute.") diff --git a/modules/MacroKAuth.cmake b/modules/MacroKAuth.cmake index f05bc8b4..2bde63ce 100644 --- a/modules/MacroKAuth.cmake +++ b/modules/MacroKAuth.cmake @@ -1,63 +1,3 @@ +message(FATAL_ERROR "Don't include(MacroKAuth) anymore, it's now included in find_package(KDE4). This file will be removed soon, and will not appear in KDE 4.4 release.") -execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data --locate kauth/dbus_service.stub OUTPUT_VARIABLE KDE4_KAUTH_DBUS_SERVICE_STUB ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) -message(STATUS "KAuth: DBus service stub file found at ${KDE4_KAUTH_DBUS_SERVICE_STUB}") -execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data --locate kauth/dbus_policy.stub OUTPUT_VARIABLE KDE4_KAUTH_DBUS_POLICY_STUB ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) -message(STATUS "KAuth: DBus policy stub file found at ${KDE4_KAUTH_DBUS_POLICY_STUB}") -execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path libexec --locate kauth-policy-gen OUTPUT_VARIABLE KDE4_KAUTH_POLICY_GEN ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) -set( KDE4_KAUTH_DBUS_POLICY_STUB ${DATA_INSTALL_DIR}/kauth/dbus_policy.stub) -set( KDE4_KAUTH_DBUS_SERVICE_STUB ${DATA_INSTALL_DIR}/kauth/dbus_service.stub) -set( KDE4_KAUTH_POLICY_GEN ${LIBEXEC_INSTALL_DIR}/kauth-policy-gen) - -if(NOT KDE4_KAUTH_DBUS_SERVICE_STUB) - message(FATAL_ERROR "DBus service stub file couldn't be found (required by kde4_auth_add_helper macro)") -endif(NOT KDE4_KAUTH_DBUS_SERVICE_STUB) - -if(NOT KDE4_KAUTH_DBUS_POLICY_STUB) - message(FATAL_ERROR "DBus policy stub file couldn't be found (required by kde4_auth_add_helper macro)") -endif(NOT KDE4_KAUTH_DBUS_POLICY_STUB) - -if(NOT KDE4_KAUTH_POLICY_GEN) - message(FATAL_ERROR "KAuth policy generator tool couldn't be found (required by kde4_auth_register_actions macro)") -endif(NOT KDE4_KAUTH_POLICY_GEN) - -macro(kde4_auth_add_helper _HELPER_TARGET _HELPER_ID _HELPER_USER) - - set(HELPER_ID ${_HELPER_ID}) - set(HELPER_TARGET ${_HELPER_TARGET}) - set(HELPER_USER ${_HELPER_USER}) - - kde4_add_executable(${HELPER_TARGET} ${ARGN}) - target_link_libraries(${HELPER_TARGET} ${KDE4_KDECORE_LIBS}) - install(TARGETS ${HELPER_TARGET} DESTINATION ${LIBEXEC_INSTALL_DIR}) - - configure_file(${KDE4_KAUTH_DBUS_POLICY_STUB} ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d/) - - configure_file(${KDE4_KAUTH_DBUS_SERVICE_STUB} ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service DESTINATION ${DBUS_SYSTEM_SERVICES_INSTALL_DIR}) - - -endmacro(kde4_auth_add_helper) - -macro(kde4_auth_register_actions HELPER_ID ACTIONS_FILE) - -if(APPLE) - install(CODE "execute_process(COMMAND ${KDE4_KAUTH_POLICY_GEN} ${ACTIONS_FILE} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})") -elseif(UNIX) - set(_output ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.policy) - get_filename_component(_input ${ACTIONS_FILE} ABSOLUTE) - - add_custom_command(OUTPUT ${_output} - COMMAND ${KDE4_KAUTH_POLICY_GEN} ${_input} > ${_output} - MAIN_DEPENDENCY ${_input} - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - COMMENT "Generating ${HELPER_ID}.policy") - add_custom_target("actions for ${HELPER_ID}" ALL DEPENDS ${_output}) - - if (POLKITQT_FOUND) - install(FILES ${_output} DESTINATION ${POLICY_FILES_INSTALL_DIR}) - endif (POLKITQT_FOUND) -endif() - -endmacro(kde4_auth_register_actions) -- cgit v1.2.1 From 8909e5ec59879beae6610fc2a8b93e273370af44 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Mon, 7 Sep 2009 18:32:48 +0000 Subject: Fix KAuth also outside kdebootstrapping svn path=/trunk/KDE/kdelibs/; revision=1020983 --- modules/FindKDE4Internal.cmake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 12441cb9..34643d84 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -441,6 +441,7 @@ else (_kdeBootStrapping) set( _KDE4_KCONFIG_COMPILER_DEP) set( _KDE4_MAKEKDEWIDGETS_DEP) set( _KDE4_MEINPROC_EXECUTABLE_DEP) + set( _KDE4_KAUTH_POLICY_GEN_EXECUTABLE_DEP) set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib ) @@ -545,9 +546,10 @@ else (_kdeBootStrapping) get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS ) list(GET _importedConfigurations 0 _firstConfig) - get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig}) - get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${_firstConfig}) - get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${_firstConfig}) + get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig}) + get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${_firstConfig}) + get_target_property(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${KDE4_TARGET_PREFIX}kauth-policy-gen LOCATION_${_firstConfig}) + get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${_firstConfig}) # allow searching cmake modules in all given kde install locations (KDEDIRS based) execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) -- cgit v1.2.1 From be0e83737f286af129d5d50afdd36985833c6cfd Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Tue, 8 Sep 2009 06:43:36 +0000 Subject: Fix define POLKITQT_LIBRARIES svn path=/trunk/KDE/kdelibs/; revision=1021102 --- modules/FindPolkitQt.cmake | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index 500b69d3..8f52b10f 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -43,10 +43,7 @@ find_library( POLKITQT_GUI_LIBRARY NAMES polkit-qt-gui HINTS ${PC_POLKITQT_LIBDIR} ) -find_library( POLKITQT_LIBRARIES - NAMES polkit-qt-gui polkit-qt-core - HINTS ${PC_POLKITQT_LIBDIR} -) +set(POLKITQT_LIBRARIES ${POLKITQT_GUI_LIBRARY} ${POLKITQT_CORE_LIBRARY}) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From b99c22515244d08414cd3919edf4c1b2c5fa76dd Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 13 Sep 2009 18:49:13 +0000 Subject: Allow for changing the required Qt version for KDE apps, useful to require a particular patchlevel version to get bugfixes. svn path=/trunk/KDE/kdelibs/; revision=1023024 --- modules/FindKDE4Internal.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 34643d84..80e3656c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -313,7 +313,12 @@ else(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) set(_REQ_STRING_KDE4_MESSAGE "STATUS") endif(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) -set(QT_MIN_VERSION "4.5.0") +# if the minimum Qt requirement is changed, change all occurrence in the +# following lines +if( NOT QT_MIN_VERSION OR ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) + set(QT_MIN_VERSION "4.5.0") +endif( NOT QT_MIN_VERSION OR ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) + #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 ${_REQ_STRING_KDE4}) -- cgit v1.2.1 From ce7ce4677f1924fd15d62120ef683d16eca42186 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Sun, 13 Sep 2009 19:14:29 +0000 Subject: I shouldn't expect CMake's if-clause to be anything comparable to C/C++. Though I wonder why I didn't catch this in my tests. Having both conditions within the same if-clause doesn't work as CMake apparently always evaluates the or-part. svn path=/trunk/KDE/kdelibs/; revision=1023047 --- modules/FindKDE4Internal.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 80e3656c..75cb9988 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -315,9 +315,13 @@ endif(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) # if the minimum Qt requirement is changed, change all occurrence in the # following lines -if( NOT QT_MIN_VERSION OR ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) +if( NOT QT_MIN_VERSION ) set(QT_MIN_VERSION "4.5.0") -endif( NOT QT_MIN_VERSION OR ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) +endif( NOT QT_MIN_VERSION ) +if( ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) + set(QT_MIN_VERSION "4.5.0") +endif( ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) + #this line includes FindQt4.cmake, which searches the Qt library and headers find_package(Qt4 ${_REQ_STRING_KDE4}) -- cgit v1.2.1 From 462a246043cfb34e497257cab46e9eeb3d9c0c26 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Mon, 14 Sep 2009 10:17:16 +0000 Subject: Actually, we have to take the POLKITQT_FOUND variable from somewhere. svn path=/trunk/KDE/kdelibs/; revision=1023242 --- modules/KDE4Macros.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index b9feb310..e8d15751 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1257,6 +1257,8 @@ function(KDE4_INSTALL_AUTH_ACTIONS HELPER_ID ACTIONS_FILE) DEPENDS ${_KDE4_KAUTH_POLICY_GEN_EXECUTABLE_DEP}) add_custom_target("actions for ${HELPER_ID}" ALL DEPENDS ${_output}) + macro_optional_find_package(PolkitQt) + if (POLKITQT_FOUND) install(FILES ${_output} DESTINATION ${POLKITQT_POLICY_FILES_INSTALL_DIR}) endif (POLKITQT_FOUND) -- cgit v1.2.1 From 10761d2e3e7f1990d3055cfcc60767dddf23f63a Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Mon, 14 Sep 2009 10:21:38 +0000 Subject: But do not find it multiple times if it has been found yet svn path=/trunk/KDE/kdelibs/; revision=1023245 --- modules/KDE4Macros.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index e8d15751..4aa4236a 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1257,7 +1257,9 @@ function(KDE4_INSTALL_AUTH_ACTIONS HELPER_ID ACTIONS_FILE) DEPENDS ${_KDE4_KAUTH_POLICY_GEN_EXECUTABLE_DEP}) add_custom_target("actions for ${HELPER_ID}" ALL DEPENDS ${_output}) - macro_optional_find_package(PolkitQt) + if (NOT POLKITQT_FOUND) + macro_optional_find_package(PolkitQt) + endif (NOT POLKITQT_FOUND) if (POLKITQT_FOUND) install(FILES ${_output} DESTINATION ${POLKITQT_POLICY_FILES_INSTALL_DIR}) -- cgit v1.2.1 From d3168e3612d88480cf26d2e3ea846d7564f6f6cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaros=C5=82aw=20Staniek?= Date: Wed, 23 Sep 2009 13:18:14 +0000 Subject: use MATCHES to cover more debug targets svn path=/trunk/KDE/kdelibs/; revision=1027171 --- modules/FindMySQL.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindMySQL.cmake b/modules/FindMySQL.cmake index 78332714..39128666 100644 --- a/modules/FindMySQL.cmake +++ b/modules/FindMySQL.cmake @@ -43,14 +43,14 @@ if(WIN32) # path suffix for debug/release mode # binary_dist: mysql binary distribution # build_dist: custom build - if(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") + if(CMAKE_BUILD_TYPE_TOLOWER MATCHES "debug") set(binary_dist debug) set(build_dist Debug) - else(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES "debug") ADD_DEFINITIONS(-DDBUG_OFF) set(binary_dist opt) set(build_dist Release) - endif(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") + endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES "debug") # find_library(MYSQL_LIBRARIES NAMES mysqlclient find_library(MYSQL_LIBRARIES NAMES libmysql -- cgit v1.2.1 From 5baf063f23862551ee974322df7a6d63b4dd221e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaros=C5=82aw=20Staniek?= Date: Wed, 23 Sep 2009 13:20:36 +0000 Subject: use MATCHES to cover more debug targets svn path=/trunk/KDE/kdelibs/; revision=1027172 --- modules/FindKDEWin.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index 2c420b55..8975981a 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -26,11 +26,11 @@ if (WIN32) FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) - if (CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") + if (CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) set (LIBRARY_NAME kdewind) - else(CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") + else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) set (LIBRARY_NAME kdewin) - endif (CMAKE_BUILD_TYPE_TOLOWER STREQUAL "debug") + endif (CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) if (MSVC_IDE ) set (LIBRARY_NAME "kdewind") endif (MSVC_IDE) -- cgit v1.2.1 From 1727d50be1767d0ad511200dabca19cb48bc7fdd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 28 Sep 2009 20:43:10 +0000 Subject: QCA2 must provide the header "QtCrypto", QCA1 doesn't seem to provide such a header (i.e. it was found as QCA1 although it was only QCA1) Alex CCMAIL: CCMAIL: Please check that it also still finds QCA2 successfully (you have to remove the QCA* variables from CMakeCache.txt for this) svn path=/trunk/KDE/kdelibs/; revision=1029046 --- modules/FindQCA2.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQCA2.cmake b/modules/FindQCA2.cmake index 478105f4..e2d8f2a5 100644 --- a/modules/FindQCA2.cmake +++ b/modules/FindQCA2.cmake @@ -36,7 +36,7 @@ else (QCA2_INCLUDE_DIR AND QCA2_LIBRARIES) HINTS ${PC_QCA2_LIBDIR} ${PC_QCA2_LIBRARY_DIRS} ) - find_path(QCA2_INCLUDE_DIR qca.h + find_path(QCA2_INCLUDE_DIR QtCrypto HINTS ${PC_QCA2_INCLUDEDIR} ${PC_QCA2_INCLUDE_DIRS} PATH_SUFFIXES QtCrypto) -- cgit v1.2.1 From 43888629519ab88b7e4cd6469e27f9c44646f4cf Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 1 Oct 2009 18:11:46 +0000 Subject: -start synching with the FindQt4.cmake from current cmake cvs HEAD Alex svn path=/trunk/KDE/kdelibs/; revision=1030155 --- modules/FindQt4.cmake | 188 ++++++++++++++++++++++++++++---------------------- 1 file changed, 107 insertions(+), 81 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 7c79edeb..e4ddf862 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -3,10 +3,20 @@ # The most important issue is that the Qt4 qmake is available via the system path. # This qmake is then used to detect basically everything else. # This module defines a number of key variables and macros. -# First is QT_USE_FILE which is the path to a CMake file that can be included -# to compile Qt 4 applications and libraries. By default, the QtCore and QtGui -# libraries are loaded. This behavior can be changed by setting one or more -# of the following variables to true before doing INCLUDE(${QT_USE_FILE}): +# The variable QT_USE_FILE is set which is the path to a CMake file that can be included +# to compile Qt 4 applications and libraries. It sets up the compilation +# environment for include directories, preprocessor defines and populates a +# QT_LIBRARIES variable. +# +# Typical usage could be something like: +# find_package(Qt4 4.4.3 COMPONENTS QtCore QtGui QtXml REQUIRED ) +# include(${QT_USE_FILE}) +# add_executable(myexe main.cpp) +# target_link_libraries(myexe ${QT_LIBRARIES}) +# +# When using the components argument, QT_USE_QT* variables are automatically set +# for the QT_USE_FILE to pick up. If one wishes to manually set them, the +# available ones to set include: # QT_DONT_USE_QTCORE # QT_DONT_USE_QTGUI # QT_USE_QT3SUPPORT @@ -30,26 +40,13 @@ # QT_USE_QTXMLPATTERNS # QT_USE_PHONON # -# The file pointed to by QT_USE_FILE will set up your compile environment -# by adding include directories, preprocessor defines, and populate a -# QT_LIBRARIES variable containing all the Qt libraries and their dependencies. -# Add the QT_LIBRARIES variable to your TARGET_LINK_LIBRARIES. -# -# Typical usage could be something like: -# FIND_PACKAGE(Qt4) -# SET(QT_USE_QTXML 1) -# INCLUDE(${QT_USE_FILE}) -# ADD_EXECUTABLE(myexe main.cpp) -# TARGET_LINK_LIBRARIES(myexe ${QT_LIBRARIES}) -# -# # There are also some files that need processing by some Qt tools such as moc # and uic. Listed below are macros that may be used to process those files. # # macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...) # create moc code from a list of files containing Qt class with # the Q_OBJECT declaration. Options may be given to moc, such as those found -# when executing "moc -help" +# when executing "moc -help". # # macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...) # create code from a list of Qt designer ui files. @@ -124,25 +121,25 @@ # QT_VERSION_MINOR The minor version of Qt found. # QT_VERSION_PATCH The patch version of Qt found. # -# QT_QTCORE_FOUND True if QtCore was found. -# QT_QTGUI_FOUND True if QtGui was found. -# QT_QT3SUPPORT_FOUND True if Qt3Support was found. -# QT_QTASSISTANT_FOUND True if QtAssistant was found. -# QT_QTDBUS_FOUND True if QtDBus was found. -# QT_QTDESIGNER_FOUND True if QtDesigner was found. -# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. -# QT_QTMOTIF_FOUND True if QtMotif was found. -# QT_QTNETWORK_FOUND True if QtNetwork was found. -# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. -# QT_QTOPENGL_FOUND True if QtOpenGL was found. -# QT_QTSQL_FOUND True if QtSql was found. -# QT_QTXML_FOUND True if QtXml was found. -# QT_QTSVG_FOUND True if QtSvg was found. -# QT_QTSCRIPT_FOUND True if QtScript was found. -# QT_QTTEST_FOUND True if QtTest was found. -# QT_QTUITOOLS_FOUND True if QtUiTools was found. -# QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found. -# QT_QTHELP_FOUND True if QtHelp was found. +# QT_QTCORE_FOUND True if QtCore was found. +# QT_QTGUI_FOUND True if QtGui was found. +# QT_QT3SUPPORT_FOUND True if Qt3Support was found. +# QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTDBUS_FOUND True if QtDBus was found. +# QT_QTDESIGNER_FOUND True if QtDesigner was found. +# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. +# QT_QTMOTIF_FOUND True if QtMotif was found. +# QT_QTNETWORK_FOUND True if QtNetwork was found. +# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. +# QT_QTOPENGL_FOUND True if QtOpenGL was found. +# QT_QTSQL_FOUND True if QtSql was found. +# QT_QTXML_FOUND True if QtXml was found. +# QT_QTSVG_FOUND True if QtSvg was found. +# QT_QTSCRIPT_FOUND True if QtScript was found. +# QT_QTTEST_FOUND True if QtTest was found. +# QT_QTUITOOLS_FOUND True if QtUiTools was found. +# QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found. +# QT_QTHELP_FOUND True if QtHelp was found. # QT_QTWEBKIT_FOUND True if QtWebKit was found. # QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. # QT_PHONON_FOUND True if phonon was found. @@ -189,9 +186,12 @@ # QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" # QT_PHONON_INCLUDE_DIR Path to "include/phonon" # +# QT_BINARY_DIR Path to "bin" of Qt4 # QT_LIBRARY_DIR Path to "lib" of Qt4 -# # QT_PLUGINS_DIR Path to "plugins" for Qt4 +# QT_TRANSLATIONS_DIR Path to "translations" of Qt4 +# QT_DOC_DIR Path to "doc" of Qt4 +# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 # # For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. # @@ -243,18 +243,16 @@ # The Phonon library: QT_PHONON_LIBRARY # # also defined, but NOT for general use are -# QT_MOC_EXECUTABLE Where to find the moc tool. -# QT_UIC_EXECUTABLE Where to find the uic tool. -# QT_UIC3_EXECUTABLE Where to find the uic3 tool. -# QT_RCC_EXECUTABLE Where to find the rcc tool -# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. -# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. -# QT_LUPDATE_EXECUTABLE Where to find the lupdate tool. -# QT_LRELEASE_EXECUTABLE Where to find the lrelease tool. +# QT_MOC_EXECUTABLE Where to find the moc tool. +# QT_UIC_EXECUTABLE Where to find the uic tool. +# QT_UIC3_EXECUTABLE Where to find the uic3 tool. +# QT_RCC_EXECUTABLE Where to find the rcc tool +# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool. +# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool. +# QT_LUPDATE_EXECUTABLE Where to find the lupdate tool. +# QT_LRELEASE_EXECUTABLE Where to find the lrelease tool. +# QT_QCOLLECTIONGENERATOR_EXECUTABLE Where to find the qcollectiongenerator tool. # -# QT_DOC_DIR Path to "doc" of Qt4 -# QT_MKSPECS_DIR Path to "mkspecs" of Qt4 -# # # These are around for backwards compatibility # they will be set @@ -275,10 +273,10 @@ # If Qt3 has already been found, fail. IF(QT_QT_LIBRARY) IF(Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Qt3 and Qt4 cannot be used together in one project.") + MESSAGE( FATAL_ERROR "Qt3 and Qt4 cannot be used together in one project. If switching to Qt4, the CMakeCache.txt needs to be cleaned.") ELSE(Qt4_FIND_REQUIRED) IF(NOT Qt4_FIND_QUIETLY) - MESSAGE( STATUS "Qt3 and Qt4 cannot be used together in one project.") + MESSAGE( STATUS "Qt3 and Qt4 cannot be used together in one project. If switching to Qt4, the CMakeCache.txt needs to be cleaned.") ENDIF(NOT Qt4_FIND_QUIETLY) RETURN() ENDIF(Qt4_FIND_REQUIRED) @@ -317,28 +315,30 @@ SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) # macro for asking qmake to process pro files MACRO(QT_QUERY_QMAKE outvar invar) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro - "message(CMAKE_MESSAGE<$$${invar}>)") - - # Invoke qmake with the tmp.pro program to get the desired - # information. Use the same variable for both stdout and stderr - # to make sure we get the output on all platforms. - EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} - WORKING_DIRECTORY - ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake - OUTPUT_VARIABLE _qmake_query_output - RESULT_VARIABLE _qmake_result - ERROR_VARIABLE _qmake_query_output ) - - FILE(REMOVE_RECURSE - "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") - - IF(_qmake_result) - MESSAGE(WARNING " querying qmake for ${invar}. qmake reported:\n${_qmake_query_output}") - ELSE(_qmake_result) - STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") - ENDIF(_qmake_result) - + IF(QT_QMAKE_EXECUTABLE) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro + "message(CMAKE_MESSAGE<$$${invar}>)") + + # Invoke qmake with the tmp.pro program to get the desired + # information. Use the same variable for both stdout and stderr + # to make sure we get the output on all platforms. + EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE} + WORKING_DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake + OUTPUT_VARIABLE _qmake_query_output + RESULT_VARIABLE _qmake_result + ERROR_VARIABLE _qmake_query_output ) + + FILE(REMOVE_RECURSE + "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake") + + IF(_qmake_result) + MESSAGE(WARNING " querying qmake for ${invar}. qmake reported:\n${_qmake_query_output}") + ELSE(_qmake_result) + STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}") + ENDIF(_qmake_result) + + ENDIF(QT_QMAKE_EXECUTABLE) ENDMACRO(QT_QUERY_QMAKE) GET_FILENAME_COMPONENT(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME) @@ -433,7 +433,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") - MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt is not installed correctly.") + MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") ENDIF(NOT QT_LIBRARY_DIR) @@ -490,6 +490,7 @@ IF (QT4_QMAKE_FOUND) IF(UNIX) STRING(REPLACE ":" ";" qt_mkspecs_dirs "${qt_mkspecs_dirs}") ENDIF(UNIX) + SET(QT_MKSPECS_DIR NOTFOUND) FIND_PATH(QT_MKSPECS_DIR qconfig.pri PATHS ${qt_mkspecs_dirs} DOC "The location of the Qt mkspecs containing qconfig.pri" NO_DEFAULT_PATH ) @@ -504,6 +505,17 @@ IF (QT4_QMAKE_FOUND) FILE(TO_CMAKE_PATH "${qt_plugins_dir}" qt_plugins_dir) SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") ENDIF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR) + + # ask qmake for the translations directory + IF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR) + EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} + ARGS "-query QT_INSTALL_TRANSLATIONS" + OUTPUT_VARIABLE qt_translations_dir ) + # make sure we have / and not \ as qmake gives on windows + FILE(TO_CMAKE_PATH "${qt_translations_dir}" qt_translations_dir) + SET(QT_TRANSLATIONS_DIR ${qt_translations_dir} CACHE PATH "The location of the Qt translations" FORCE) + ENDIF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR) + ######################################## # # Setting the INCLUDE-Variables @@ -515,7 +527,7 @@ IF (QT4_QMAKE_FOUND) ${QT_LIBRARY_DIR}/QtCore.framework/Headers NO_DEFAULT_PATH ) - + # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) IF (QT_USE_FRAMEWORKS) @@ -532,6 +544,14 @@ IF (QT4_QMAKE_FOUND) ENDIF(Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR + QT_PLUGINS_DIR QT_TRANSLATIONS_DIR) + + # Set QT_INCLUDES + SET( QT_INCLUDES ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) + + ############################################# # # Find out what window system we're using @@ -749,7 +769,7 @@ IF (QT4_QMAKE_FOUND) ) # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR) + MARK_AS_ADVANCED( QT_QT_INCLUDE_DIR) # Set QT_INCLUDES SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) @@ -1109,13 +1129,19 @@ IF (QT4_QMAKE_FOUND) ) FIND_PROGRAM(QT_LUPDATE_EXECUTABLE - NAMES lupdate + NAMES lupdate-qt4 lupdate PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) FIND_PROGRAM(QT_LRELEASE_EXECUTABLE - NAMES lrelease + NAMES lrelease-qt4 lrelease + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_QCOLLECTIONGENERATOR_EXECUTABLE + NAMES qcollectiongenerator-qt4 qcollectiongenerator PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) @@ -1132,7 +1158,7 @@ IF (QT4_QMAKE_FOUND) MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE - QT_LUPDATE_EXECUTABLE QT_LRELEASE_EXECUTABLE) + QT_LUPDATE_EXECUTABLE QT_LRELEASE_EXECUTABLE QT_QCOLLECTIONGENERATOR_EXECUTABLE) ###################################### # @@ -1489,7 +1515,7 @@ IF (QT4_QMAKE_FOUND) SET( QT_QT_LIBRARY "") ELSE(QT4_QMAKE_FOUND) - + SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF(Qt4_FIND_REQUIRED) IF(QT4_INSTALLED_VERSION_TOO_OLD) @@ -1502,6 +1528,6 @@ ELSE(QT4_QMAKE_FOUND) MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) ENDIF(Qt4_FIND_REQUIRED) - + ENDIF (QT4_QMAKE_FOUND) -- cgit v1.2.1 From 03ee5db89eea1d2d2df03eac94da267fa9447845 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 1 Oct 2009 20:20:07 +0000 Subject: -some more syncing with the version from cmake: - add macros QT4_CREATE_TRANSLATION() and QT4_ADD_TRANSLATION() - figure out the QT_EDITION - check for QT_MAC_USE_COCOA Alex svn path=/trunk/KDE/kdelibs/; revision=1030195 --- modules/FindQt4.cmake | 118 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 116 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index e4ddf862..fbe10a80 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -114,6 +114,30 @@ # the suffix .xml appended. # Options may be given to qdbuscpp2xml, such as those found when executing "qdbuscpp2xml --help" # +# macro QT4_CREATE_TRANSLATION( qm_files directories ... sources ... +# ts_files ... OPTIONS ...) +# out: qm_files +# in: directories sources ts_files +# options: flags to pass to lupdate, such as -extensions to specify +# extensions for a directory scan. +# generates commands to create .ts (vie lupdate) and .qm +# (via lrelease) - files from directories and/or sources. The ts files are +# created and/or updated in the source tree (unless given with full paths). +# The qm files are generated in the build tree. +# Updating the translations can be done by adding the qm_files +# to the source list of your library/executable, so they are +# always updated, or by adding a custom target to control when +# they get updated/generated. +# +# macro QT4_ADD_TRANSLATION( qm_files ts_files ... ) +# out: qm_files +# in: ts_files +# generates commands to create .qm from .ts - files. The generated +# filenames can be found in qm_files. The ts_files +# must exists and are not updated in any way. +# +# +# Below is a detailed list of variables that FindQt4.cmake sets. # QT_FOUND If false, don't try to use Qt. # QT4_FOUND If false, don't try to use Qt 4. # @@ -121,6 +145,8 @@ # QT_VERSION_MINOR The minor version of Qt found. # QT_VERSION_PATCH The patch version of Qt found. # +# QT_EDITION Set to the edition of Qt (i.e. DesktopLight) +# QT_EDITION_DESKTOPLIGHT True if QT_EDITION == DesktopLight # QT_QTCORE_FOUND True if QtCore was found. # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. @@ -558,7 +584,7 @@ IF (QT4_QMAKE_FOUND) # ############################################# # Save required includes and required_flags variables - macro_push_required_vars() + MACRO_PUSH_REQUIRED_VARS() # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") # On Mac OS X when Qt has framework support, also add the framework path @@ -570,6 +596,12 @@ IF (QT4_QMAKE_FOUND) CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + IF(Q_WS_MAC) + IF(QT_QMAKE_CHANGED) + UNSET(QT_MAC_USE_COCOA CACHE) + ENDIF(QT_QMAKE_CHANGED) + CHECK_SYMBOL_EXISTS(QT_MAC_USE_COCOA "QtCore/qconfig.h" QT_MAC_USE_COCOA) + ENDIF(Q_WS_MAC) IF (QT_QTCOPY_REQUIRED) CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) @@ -579,10 +611,30 @@ IF (QT4_QMAKE_FOUND) ENDIF (QT_QTCOPY_REQUIRED) # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables - macro_pop_required_vars() + MACRO_POP_REQUIRED_VARS() # ############################################# + + + ####################################### + # + # Qt configuration + # + ####################################### + IF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri") + FILE(READ ${QT_MKSPECS_DIR}/qconfig.pri _qconfig_FILE_contents) + STRING(REGEX MATCH "QT_CONFIG[^\n]+" QT_QCONFIG "${_qconfig_FILE_contents}") + STRING(REGEX MATCH "CONFIG[^\n]+" QT_CONFIG "${_qconfig_FILE_contents}") + STRING(REGEX MATCH "EDITION[^\n]+" QT_EDITION "${_qconfig_FILE_contents}") + STRING(REGEX MATCH "QT_LIBINFIX[^\n]+" _qconfig_qt_libinfix "${_qconfig_FILE_contents}") + STRING(REGEX REPLACE "QT_LIBINFIX *= *([^\n]*)" "\\1" QT_LIBINFIX "${_qconfig_qt_libinfix}") + ENDIF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri") + IF("${QT_EDITION}" MATCHES "DesktopLight") + SET(QT_EDITION_DESKTOPLIGHT 1) + ENDIF("${QT_EDITION}" MATCHES "DesktopLight") + + IF (QT_USE_FRAMEWORKS) SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) ENDIF (QT_USE_FRAMEWORKS) @@ -1448,6 +1500,68 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH (_current_FILE) ENDMACRO(QT4_AUTOMOC) + MACRO(QT4_CREATE_TRANSLATION _qm_files) + QT4_EXTRACT_OPTIONS(_lupdate_files _lupdate_options ${ARGN}) + SET(_my_sources) + SET(_my_dirs) + SET(_my_tsfiles) + SET(_ts_pro) + FOREACH (_file ${_lupdate_files}) + GET_FILENAME_COMPONENT(_ext ${_file} EXT) + GET_FILENAME_COMPONENT(_abs_FILE ${_file} ABSOLUTE) + IF(_ext MATCHES "ts") + LIST(APPEND _my_tsfiles ${_abs_FILE}) + ELSE(_ext MATCHES "ts") + IF(NOT _ext) + LIST(APPEND _my_dirs ${_abs_FILE}) + ELSE(NOT _ext) + LIST(APPEND _my_sources ${_abs_FILE}) + ENDIF(NOT _ext) + ENDIF(_ext MATCHES "ts") + ENDFOREACH(_file) + FOREACH(_ts_file ${_my_tsfiles}) + IF(_my_sources) + # make a .pro file to call lupdate on, so we don't make our commands too + # long for some systems + GET_FILENAME_COMPONENT(_ts_name ${_ts_file} NAME_WE) + SET(_ts_pro ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${_ts_name}_lupdate.pro) + SET(_pro_srcs) + FOREACH(_pro_src ${_my_sources}) + SET(_pro_srcs "${_pro_srcs} \"${_pro_src}\"") + ENDFOREACH(_pro_src ${_my_sources}) + FILE(WRITE ${_ts_pro} "SOURCES = ${_pro_srcs}") + ENDIF(_my_sources) + ADD_CUSTOM_COMMAND(OUTPUT ${_ts_file} + COMMAND ${QT_LUPDATE_EXECUTABLE} + ARGS ${_lupdate_options} ${_ts_pro} ${_my_dirs} -ts ${_ts_file} + DEPENDS ${_my_sources} ${_ts_pro}) + ENDFOREACH(_ts_file) + QT4_ADD_TRANSLATION(${_qm_files} ${_my_tsfiles}) + ENDMACRO(QT4_CREATE_TRANSLATION) + + MACRO(QT4_ADD_TRANSLATION _qm_files) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(qm ${_abs_FILE} NAME_WE) + GET_SOURCE_FILE_PROPERTY(output_location ${_abs_FILE} OUTPUT_LOCATION) + IF(output_location) + FILE(MAKE_DIRECTORY "${output_location}") + SET(qm "${output_location}/${qm}.qm") + ELSE(output_location) + SET(qm "${CMAKE_CURRENT_BINARY_DIR}/${qm}.qm") + ENDIF(output_location) + + ADD_CUSTOM_COMMAND(OUTPUT ${qm} + COMMAND ${QT_LRELEASE_EXECUTABLE} + ARGS ${_abs_FILE} -qm ${qm} + DEPENDS ${_abs_FILE} + ) + SET(${_qm_files} ${${_qm_files}} ${qm}) + ENDFOREACH (_current_FILE) + ENDMACRO(QT4_ADD_TRANSLATION) + + + ###################################### -- cgit v1.2.1 From 6b9156deef9f77340d0017ae3f2ead0250c10d96 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 1 Oct 2009 20:41:32 +0000 Subject: -more synching with the file from cmake: support specifiying the minimum Qt version in the find_package() call Alex svn path=/trunk/KDE/kdelibs/; revision=1030201 --- modules/FindQt4.cmake | 83 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 75 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index fbe10a80..8dff2fb5 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -14,6 +14,14 @@ # add_executable(myexe main.cpp) # target_link_libraries(myexe ${QT_LIBRARIES}) # +# The minimum required version can be specified using the standard find_package()-syntax +# (see example above). +# For compatibility with older versions of FindQt4.cmake it is also possible to +# set the variable QT_MIN_VERSION to the minimum required version of Qt4 before the +# find_package(Qt4) command. +# If both are used, the version used in the find_package() command overrides the +# one from QT_MIN_VERSION. +# # When using the components argument, QT_USE_QT* variables are automatically set # for the QT_USE_FILE to pick up. If one wishes to manually set them, the # available ones to set include: @@ -295,6 +303,23 @@ # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. +# Use FIND_PACKAGE( Qt4 COMPONENTS ... ) to enable modules +IF( Qt4_FIND_COMPONENTS ) + FOREACH( component ${Qt4_FIND_COMPONENTS} ) + STRING( TOUPPER ${component} _COMPONENT ) + SET( QT_USE_${_COMPONENT} 1 ) + ENDFOREACH( component ) + + # To make sure we don't use QtCore or QtGui when not in COMPONENTS + IF(NOT QT_USE_QTCORE) + SET( QT_DONT_USE_QTCORE 1 ) + ENDIF(NOT QT_USE_QTCORE) + + IF(NOT QT_USE_QTGUI) + SET( QT_DONT_USE_QTGUI 1 ) + ENDIF(NOT QT_USE_QTGUI) + +ENDIF( Qt4_FIND_COMPONENTS ) # If Qt3 has already been found, fail. IF(QT_QT_LIBRARY) @@ -378,6 +403,12 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS IF (QT_QMAKE_EXECUTABLE) + IF(QT_QMAKE_EXECUTABLE_LAST) + STRING(COMPARE NOTEQUAL "${QT_QMAKE_EXECUTABLE_LAST}" "${QT_QMAKE_EXECUTABLE}" QT_QMAKE_CHANGED) + ENDIF(QT_QMAKE_EXECUTABLE_LAST) + + SET(QT_QMAKE_EXECUTABLE_LAST "${QT_QMAKE_EXECUTABLE}" CACHE INTERNAL "" FORCE) + SET(QT4_QMAKE_FOUND FALSE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) @@ -416,6 +447,16 @@ IF (QT_QMAKE_EXECUTABLE) STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}") STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") + # Suppport finding at least a particular version, for instance FIND_PACKAGE( Qt4 4.4.3 ) + # This implementation is a hack to avoid duplicating code and make sure we stay + # source-compatible with CMake 2.6.x + IF( Qt4_FIND_VERSION ) + SET( QT_MIN_VERSION ${Qt4_FIND_VERSION} ) + SET( req_qt_major_vers ${Qt4_FIND_VERSION_MAJOR} ) + SET( req_qt_minor_vers ${Qt4_FIND_VERSION_MINOR} ) + SET( req_qt_patch_vers ${Qt4_FIND_VERSION_PATCH} ) + ENDIF( Qt4_FIND_VERSION ) + IF (NOT req_qt_major_vers EQUAL 4) MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"") ENDIF (NOT req_qt_major_vers EQUAL 4) @@ -429,12 +470,26 @@ IF (QT_QMAKE_EXECUTABLE) MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}") MATH(EXPR found_vers "${QT_VERSION_MAJOR}*10000 + ${QT_VERSION_MINOR}*100 + ${QT_VERSION_PATCH}") - IF (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND FALSE) - SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) - ELSE (found_vers LESS req_vers) - SET(QT4_QMAKE_FOUND TRUE) - ENDIF (found_vers LESS req_vers) + # Support finding *exactly* a particular version, for instance FIND_PACKAGE( Qt4 4.4.3 EXACT ) + IF( Qt4_FIND_VERSION_EXACT ) + IF(found_vers EQUAL req_vers) + SET( QT4_QMAKE_FOUND TRUE ) + ELSE(found_vers EQUAL req_vers) + SET( QT4_QMAKE_FOUND FALSE ) + IF (found_vers LESS req_vers) + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) + ELSE (found_vers LESS req_vers) + SET(QT4_INSTALLED_VERSION_TOO_NEW TRUE) + ENDIF (found_vers LESS req_vers) + ENDIF(found_vers EQUAL req_vers) + ELSE( Qt4_FIND_VERSION_EXACT ) + IF (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND FALSE) + SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE) + ELSE (found_vers LESS req_vers) + SET(QT4_QMAKE_FOUND TRUE) + ENDIF (found_vers LESS req_vers) + ENDIF( Qt4_FIND_VERSION_EXACT ) ENDIF (qt_version_tmp) ENDIF (QT_QMAKE_EXECUTABLE) @@ -1631,11 +1686,23 @@ IF (QT4_QMAKE_FOUND) ELSE(QT4_QMAKE_FOUND) SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) + + # The code below is overly complex to make sure we do not break compatibility with CMake 2.6.x + # For CMake 2.8, it should be simplified by getting rid of QT4_INSTALLED_VERSION_TOO_OLD and + # QT4_INSTALLED_VERSION_TOO_NEW IF(Qt4_FIND_REQUIRED) IF(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + IF( Qt4_FIND_VERSION_EXACT ) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, version ${QT_MIN_VERSION} is required") + ELSE( Qt4_FIND_VERSION_EXACT ) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required") + ENDIF( Qt4_FIND_VERSION_EXACT ) ELSE(QT4_INSTALLED_VERSION_TOO_OLD) - MESSAGE( FATAL_ERROR "Qt qmake not found!") + IF( Qt4_FIND_VERSION_EXACT AND QT4_INSTALLED_VERSION_TOO_NEW ) + MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too new, version ${QT_MIN_VERSION} is required") + ELSE( Qt4_FIND_VERSION_EXACT AND QT4_INSTALLED_VERSION_TOO_NEW ) + MESSAGE( FATAL_ERROR "Qt qmake not found!") + ENDIF( Qt4_FIND_VERSION_EXACT AND QT4_INSTALLED_VERSION_TOO_NEW ) ENDIF(QT4_INSTALLED_VERSION_TOO_OLD) ELSE(Qt4_FIND_REQUIRED) IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY) -- cgit v1.2.1 From b0fa316f3c18ea2dfe6be7ee38e72371b86b3bd6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 1 Oct 2009 20:48:45 +0000 Subject: more sync: document QT_MAC_USE_COCOA Alex svn path=/trunk/KDE/kdelibs/; revision=1030207 --- modules/FindQt4.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8dff2fb5..90ffee69 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -178,6 +178,9 @@ # QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. # QT_PHONON_FOUND True if phonon was found. # +# QT_MAC_USE_COCOA For Mac OS X, its whether Cocoa or Carbon is used. +# In general, this should not be used, but its useful +# when having platform specific code. # # QT_DEFINITIONS Definitions to use when compiling code that uses Qt. # You do not need to use this if you include QT_USE_FILE. -- cgit v1.2.1 From 0bedd6fd5e3f7d4db3c9e1410e27956cb3dcf5eb Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 3 Oct 2009 15:38:22 +0000 Subject: -more syncing with the version from cmake cvs: also pass the compile flags to moc -pass -DWIN32 to moc under Windows -add internal macro QT4_MAKE_OUTPUT_FILE(), not used yet Alex svn path=/trunk/KDE/kdelibs/; revision=1030952 --- modules/FindQt4.cmake | 70 ++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 55 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 90ffee69..36616705 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -53,7 +53,8 @@ # # macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...) # create moc code from a list of files containing Qt class with -# the Q_OBJECT declaration. Options may be given to moc, such as those found +# the Q_OBJECT declaration. Per-direcotry preprocessor definitions +# are also added. Options may be given to moc, such as those found # when executing "moc -help". # # macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...) @@ -349,6 +350,7 @@ MACRO(QT_CHECK_FLAG_EXISTS FLAG VAR DOC) CACHE STRING "Flags used by the compiler during ${DOC} builds." FORCE) ENDIF(NOT ${VAR} MATCHES "${FLAG}") ENDMACRO(QT_CHECK_FLAG_EXISTS FLAG VAR) + QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO "Release with Debug Info") QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELEASE "release") QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL "release minsize") @@ -1293,13 +1295,48 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH(_currentArg) ENDMACRO (QT4_EXTRACT_OPTIONS) - MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) + # macro used to create the names of output files preserving relative dirs + MACRO (QT4_MAKE_OUTPUT_FILE infile prefix ext outfile ) + STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength) + STRING(LENGTH ${infile} _infileLength) + SET(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR}) + IF(_infileLength GREATER _binlength) + STRING(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile) + IF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") + FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile}) + ELSE(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") + FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) + ENDIF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") + ELSE(_infileLength GREATER _binlength) + FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) + ENDIF(_infileLength GREATER _binlength) + IF(WIN32 AND rel MATCHES "^[a-zA-Z]:") # absolute path + STRING(REGEX REPLACE "^([a-zA-Z]):(.*)$" "\\1_\\2" rel "${rel}") + ENDIF(WIN32 AND rel MATCHES "^[a-zA-Z]:") + SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}") + STRING(REPLACE ".." "__" _outfile ${_outfile}) + GET_FILENAME_COMPONENT(outpath ${_outfile} PATH) + GET_FILENAME_COMPONENT(_outfile ${_outfile} NAME_WE) + FILE(MAKE_DIRECTORY ${outpath}) + SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext}) + ENDMACRO (QT4_MAKE_OUTPUT_FILE ) + + MACRO (QT4_GET_MOC_FLAGS _moc_flags) + SET(${_moc_flags}) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) FOREACH(_current ${_inc_DIRS}) - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current}) + SET(${_moc_flags} ${${_moc_flags}} "-I${_current}") ENDFOREACH(_current ${_inc_DIRS}) + + GET_DIRECTORY_PROPERTY(_defines COMPILE_DEFINITIONS) + FOREACH(_current ${_defines}) + SET(${_moc_flags} ${${_moc_flags}} "-D${_current}") + ENDFOREACH(_current ${_defines}) + + IF(Q_WS_WIN) + SET(${_moc_flags} ${${_moc_flags}} -DWIN32) + ENDIF(Q_WS_WIN) # if Qt is installed only as framework, add -F /library/Frameworks to the moc arguments # otherwise moc can't find the headers in the framework include dirs @@ -1307,12 +1344,12 @@ IF (QT4_QMAKE_FOUND) SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-F/Library/Frameworks") ENDIF(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") - ENDMACRO(QT4_GET_MOC_INC_DIRS) - + ENDMACRO(QT4_GET_MOC_FLAGS) + MACRO (QT4_GENERATE_MOC infile outfile ) # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) + QT4_GET_MOC_FLAGS(moc_includes) GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) @@ -1342,7 +1379,7 @@ IF (QT4_QMAKE_FOUND) MACRO (QT4_WRAP_CPP outfiles ) # get include dirs - QT4_GET_MOC_INC_DIRS(moc_includes) + QT4_GET_MOC_FLAGS(moc_includes) QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN}) FOREACH (it ${moc_files}) @@ -1515,7 +1552,7 @@ IF (QT4_QMAKE_FOUND) ENDMACRO(QT4_ADD_DBUS_ADAPTOR) MACRO(QT4_AUTOMOC) - QT4_GET_MOC_INC_DIRS(_moc_INCS) + QT4_GET_MOC_FLAGS(_moc_INCS) SET(_matching_FILES ) FOREACH (_current_FILE ${ARGN}) @@ -1536,7 +1573,7 @@ IF (QT4_QMAKE_FOUND) GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}") + STRING(REGEX MATCHALL "# *include +[^ ]+\\.moc[\">]" _match "${_contents}") IF(_match) FOREACH (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") @@ -1629,7 +1666,8 @@ IF (QT4_QMAKE_FOUND) ###################################### # if the includes,libraries,moc,uic and rcc are found then we have it - IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND + QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY) SET( QT4_FOUND "YES" ) IF( NOT Qt4_FIND_QUIETLY) MESSAGE(STATUS "Found Qt-Version ${QTVERSION} (using ${QT_QMAKE_EXECUTABLE})") @@ -1655,15 +1693,17 @@ IF (QT4_QMAKE_FOUND) ENDIF( NOT QT_RCC_EXECUTABLE ) MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!") ENDIF( Qt4_FIND_REQUIRED) - ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND + QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY) + SET(QT_FOUND ${QT4_FOUND}) - ####################################### + ############################################### # - # System dependent settings + # configuration/system dependent settings # - ####################################### + ############################################### # for unix add X11 stuff IF(UNIX) # on OS X X11 may not be required -- cgit v1.2.1 From ac4a54d019658de331b1ec86addc04877ddb74ce Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 3 Oct 2009 16:42:26 +0000 Subject: more syncing with cmake cvs: use the same code for handling moc This may result in the moc files placed in other directories as before. The only difference should be when including files, but I think it should be ok. Checked building kdelibs, no problems there. Let me know if there are suddenly moc-related problems. Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1030975 --- modules/FindQt4.cmake | 85 ++++++++++++++++++++++++++++----------------------- 1 file changed, 47 insertions(+), 38 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 36616705..a55426c8 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1294,7 +1294,7 @@ IF (QT4_QMAKE_FOUND) ENDIF ("${_currentArg}" STREQUAL "OPTIONS") ENDFOREACH(_currentArg) ENDMACRO (QT4_EXTRACT_OPTIONS) - + # macro used to create the names of output files preserving relative dirs MACRO (QT4_MAKE_OUTPUT_FILE infile prefix ext outfile ) STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength) @@ -1346,29 +1346,45 @@ IF (QT4_QMAKE_FOUND) ENDMACRO(QT4_GET_MOC_FLAGS) + # helper macro to set up a moc rule + MACRO (QT4_CREATE_MOC_COMMAND infile outfile moc_flags moc_options) + # For Windows, create a parameters file to work around command line length limit + IF (WIN32) + # Pass the parameters in a file. Set the working directory to + # be that containing the parameters file and reference it by + # just the file name. This is necessary because the moc tool on + # MinGW builds does not seem to handle spaces in the path to the + # file given with the @ syntax. + GET_FILENAME_COMPONENT(_moc_outfile_name "${outfile}" NAME) + GET_FILENAME_COMPONENT(_moc_outfile_dir "${outfile}" PATH) + IF(_moc_outfile_dir) + SET(_moc_working_dir WORKING_DIRECTORY ${_moc_outfile_dir}) + ENDIF(_moc_outfile_dir) + SET (_moc_parameters_file ${outfile}_parameters) + SET (_moc_parameters ${moc_flags} ${moc_options} -o "${outfile}" "${infile}") + FILE (REMOVE ${_moc_parameters_file}) + FOREACH(arg ${_moc_parameters}) + FILE (APPEND ${_moc_parameters_file} "${arg}\n") + ENDFOREACH(arg) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} @${_moc_outfile_name}_parameters + DEPENDS ${infile} + ${_moc_working_dir} + VERBATIM) + ELSE (WIN32) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_flags} ${moc_options} -o ${outfile} ${infile} + DEPENDS ${infile}) + ENDIF (WIN32) + ENDMACRO (QT4_CREATE_MOC_COMMAND) + MACRO (QT4_GENERATE_MOC infile outfile ) - # get include dirs - QT4_GET_MOC_FLAGS(moc_includes) - + # get include dirs and flags + QT4_GET_MOC_FLAGS(moc_flags) GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - - IF (MSVC_IDE) - SET (_moc_parameter_file ${outfile}_parameters) - SET (_moc_param "${moc_includes} \n-o${outfile} \n${abs_infile}") - STRING(REGEX REPLACE ";-I;" "\\n-I" _moc_param "${_moc_param}") - FILE (WRITE ${_moc_parameter_file} "${_moc_param}") - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS @"${_moc_parameter_file}" - DEPENDS ${abs_infile}) - ELSE (MSVC_IDE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} -o ${outfile} ${abs_infile} - DEPENDS ${abs_infile}) - ENDIF (MSVC_IDE) - + QT4_CREATE_MOC_COMMAND(${abs_infile} ${outfile} "${moc_flags}" "") SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) @@ -1379,18 +1395,13 @@ IF (QT4_QMAKE_FOUND) MACRO (QT4_WRAP_CPP outfiles ) # get include dirs - QT4_GET_MOC_FLAGS(moc_includes) + QT4_GET_MOC_FLAGS(moc_flags) QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN}) FOREACH (it ${moc_files}) GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} ${moc_options} -o ${outfile} ${it} - DEPENDS ${it}) + QT4_MAKE_OUTPUT_FILE(${it} moc_ cxx outfile) + QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}") SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH(it) @@ -1578,16 +1589,14 @@ IF (QT4_QMAKE_FOUND) FOREACH (_current_MOC_INC ${_match}) STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - GET_filename_component(_basename ${_current_MOC} NAME_WE) - # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h) - SET(_header ${_abs_PATH}/${_basename}.h) + GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) + IF(EXISTS ${_abs_PATH}/${_basename}.hpp) + SET(_header ${_abs_PATH}/${_basename}.hpp) + ELSE(EXISTS ${_abs_PATH}/${_basename}.hpp) + SET(_header ${_abs_PATH}/${_basename}.h) + ENDIF(EXISTS ${_abs_PATH}/${_basename}.hpp) SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - ADD_CUSTOM_COMMAND(OUTPUT ${_moc} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${_moc_INCS} ${_header} -o ${_moc} - DEPENDS ${_header} - ) - + QT4_CREATE_MOC_COMMAND(${_header} ${_moc} "${_moc_INCS}" "") MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) ENDFOREACH (_current_MOC_INC) ENDIF(_match) -- cgit v1.2.1 From a74172f40a41de8fad1528a0fc84bbbed312e237 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 3 Oct 2009 16:49:11 +0000 Subject: unset() exists since cmake 2.6.3, so it must not be used in KDE Alex svn path=/trunk/KDE/kdelibs/; revision=1030977 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a55426c8..7de99ddd 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -658,7 +658,7 @@ IF (QT4_QMAKE_FOUND) CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) IF(Q_WS_MAC) IF(QT_QMAKE_CHANGED) - UNSET(QT_MAC_USE_COCOA CACHE) + SET(QT_MAC_USE_COCOA "" CACHE BOOL "Use Cocoa on Mac" FORCE) ENDIF(QT_QMAKE_CHANGED) CHECK_SYMBOL_EXISTS(QT_MAC_USE_COCOA "QtCore/qconfig.h" QT_MAC_USE_COCOA) ENDIF(Q_WS_MAC) -- cgit v1.2.1 From 2440e366087b378471db3a1691c4cb225d4eab42 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 3 Oct 2009 17:20:45 +0000 Subject: more syncing with cmake cvs: enforce refinding stuff if qmake has changed ...only 50 differences left Alex svn path=/trunk/KDE/kdelibs/; revision=1030987 --- modules/FindQt4.cmake | 81 ++++++++++++++++++++++++++++----------------------- 1 file changed, 45 insertions(+), 36 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 7de99ddd..b9a7d479 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -509,65 +509,65 @@ IF (QT4_QMAKE_FOUND) # ask qmake for the library dir # Set QT_LIBRARY_DIR - IF (NOT QT_LIBRARY_DIR) + IF (NOT QT_LIBRARY_DIR OR QT_QMAKE_CHANGED) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_LIBS" OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${QT_LIBRARY_DIR_TMP}" QT_LIBRARY_DIR_TMP) IF(EXISTS "${QT_LIBRARY_DIR_TMP}") - SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir") + SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir" FORCE) ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}") MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.") ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}") - ENDIF(NOT QT_LIBRARY_DIR) + ENDIF(NOT QT_LIBRARY_DIR OR QT_QMAKE_CHANGED) IF (APPLE) IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) SET(QT_USE_FRAMEWORKS ON - CACHE BOOL "Set to ON if Qt build uses frameworks.") + CACHE BOOL "Set to ON if Qt build uses frameworks." FORCE) ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) SET(QT_USE_FRAMEWORKS OFF - CACHE BOOL "Set to ON if Qt build uses frameworks.") + CACHE BOOL "Set to ON if Qt build uses frameworks." FORCE) ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) MARK_AS_ADVANCED(QT_USE_FRAMEWORKS) ENDIF (APPLE) # ask qmake for the binary dir - IF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR OR QT_QMAKE_CHANGED) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_BINS" OUTPUT_VARIABLE qt_bins ) # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${qt_bins}" qt_bins) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "") - ENDIF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "" FORCE) + ENDIF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR OR QT_QMAKE_CHANGED) # ask qmake for the include dir - IF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR OR QT_QMAKE_CHANGED) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_HEADERS" OUTPUT_VARIABLE qt_headers ) # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${qt_headers}" qt_headers) - SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "") - ENDIF(QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR) + SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "" FORCE) + ENDIF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR OR QT_QMAKE_CHANGED) # ask qmake for the documentation directory - IF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR OR QT_QMAKE_CHANGED) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_DOCS" OUTPUT_VARIABLE qt_doc_dir ) # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${qt_doc_dir}" qt_doc_dir) - SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs") - ENDIF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR) + SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs" FORCE) + ENDIF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR OR QT_QMAKE_CHANGED) # ask qmake for the mkspecs directory - IF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR OR QT_QMAKE_CHANGED) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QMAKE_MKSPECS" OUTPUT_VARIABLE qt_mkspecs_dirs ) @@ -580,27 +580,27 @@ IF (QT4_QMAKE_FOUND) FIND_PATH(QT_MKSPECS_DIR qconfig.pri PATHS ${qt_mkspecs_dirs} DOC "The location of the Qt mkspecs containing qconfig.pri" NO_DEFAULT_PATH ) - ENDIF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR) + ENDIF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR OR QT_QMAKE_CHANGED) # ask qmake for the plugins directory - IF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR OR QT_QMAKE_CHANGED) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_PLUGINS" OUTPUT_VARIABLE qt_plugins_dir ) # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${qt_plugins_dir}" qt_plugins_dir) - SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins") - ENDIF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR) + SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins" FORCE) + ENDIF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR OR QT_QMAKE_CHANGED) # ask qmake for the translations directory - IF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR) + IF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR OR QT_QMAKE_CHANGED) EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_TRANSLATIONS" OUTPUT_VARIABLE qt_translations_dir ) # make sure we have / and not \ as qmake gives on windows FILE(TO_CMAKE_PATH "${qt_translations_dir}" qt_translations_dir) SET(QT_TRANSLATIONS_DIR ${qt_translations_dir} CACHE PATH "The location of the Qt translations" FORCE) - ENDIF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR) + ENDIF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR OR QT_QMAKE_CHANGED) ######################################## # @@ -1200,21 +1200,29 @@ IF (QT4_QMAKE_FOUND) ####################################### - # find moc and uic using qmake - QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC") - QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC") - - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH - "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL) - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH - "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL) + IF(QT_QMAKE_CHANGED) + SET(QT_UIC_EXECUTABLE NOTFOUND) + SET(QT_MOC_EXECUTABLE NOTFOUND) + SET(QT_UIC3_EXECUTABLE NOTFOUND) + SET(QT_RCC_EXECUTABLE NOTFOUND) + SET(QT_DBUSCPP2XML_EXECUTABLE NOTFOUND) + SET(QT_DBUSXML2CPP_EXECUTABLE NOTFOUND) + SET(QT_LUPDATE_EXECUTABLE NOTFOUND) + SET(QT_LRELEASE_EXECUTABLE NOTFOUND) + SET(QT_QCOLLECTIONGENERATOR_EXECUTABLE NOTFOUND) + ENDIF(QT_QMAKE_CHANGED) + + FIND_PROGRAM(QT_MOC_EXECUTABLE + NAMES moc-qt4 moc + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) - SET(QT_MOC_EXECUTABLE - ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable") - SET(QT_UIC_EXECUTABLE - ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable") + FIND_PROGRAM(QT_UIC_EXECUTABLE + NAMES uic-qt4 uic + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) FIND_PROGRAM(QT_UIC3_EXECUTABLE NAMES uic3 @@ -1681,7 +1689,8 @@ IF (QT4_QMAKE_FOUND) IF( NOT Qt4_FIND_QUIETLY) MESSAGE(STATUS "Found Qt-Version ${QTVERSION} (using ${QT_QMAKE_EXECUTABLE})") ENDIF( NOT Qt4_FIND_QUIETLY) - ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND + QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY) SET( QT4_FOUND "NO") SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF( Qt4_FIND_REQUIRED) -- cgit v1.2.1 From 9be79b50dab29cd04220f1765bf369a72277012c Mon Sep 17 00:00:00 2001 From: Andreas Hartmetz Date: Sat, 3 Oct 2009 21:03:07 +0000 Subject: Fix / adapt to FindQt4.cmake changes. Found the error in kdenetwork which uses reeeally old ui files. CCMAIL: kde-buildsystem@kde.org CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=1031058 --- modules/KDE4Macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4aa4236a..fd5e62e4 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -159,7 +159,7 @@ endmacro (KDE4_ADD_UI_FILES) #usage: KDE4_ADD_UI3_FILES(foo_SRCS ${ui_files}) macro (KDE4_ADD_UI3_FILES _sources ) - qt4_get_moc_inc_dirs(_moc_INCS) + qt4_get_moc_flags(_moc_INCS) foreach (_current_FILE ${ARGN}) -- cgit v1.2.1 From 62a9e278a7114142d8315c3f86be5f915b6e1f23 Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Sun, 4 Oct 2009 13:10:30 +0000 Subject: Provide a FindKDE4Runtime.cmake file. Copied and adapted from FindKDE4Workspace.cmake. CCMAIL: kde-buildsystem@kde.org CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=1031231 --- modules/FindKDE4Runtime.cmake | 71 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 modules/FindKDE4Runtime.cmake (limited to 'modules') diff --git a/modules/FindKDE4Runtime.cmake b/modules/FindKDE4Runtime.cmake new file mode 100644 index 00000000..334cb3a2 --- /dev/null +++ b/modules/FindKDE4Runtime.cmake @@ -0,0 +1,71 @@ +# Find if we installed kdebase/runtime. +# Once done this will define +# +# KDE4RUNTIME_FOUND - system has KDE runtime installed +# KDE4RUNTIME_INCLUDE_DIR - the KDE runtime include directory +# +# It also sets variables for the following libraries: +# KDE4RUNTIME_TASKMANAGER_LIBRARY, KDE4RUNTIME_TASKMANAGER_LIBS +# KDE4RUNTIME_KRUNTIME_LIBRARY, KDE4RUNTIME_KRUNTIME_LIBS +# KDE4RUNTIME_SOLIDCONTROLIFACES_LIBRARY, KDE4RUNTIME_SOLIDCONTROLIFACES_LIBS +# KDE4RUNTIME_SOLIDCONTROL_LIBRARY, KDE4RUNTIME_SOLIDCONTROL_LIBS +# KDE4RUNTIME_PROCESSUI_LIBRARY, KDE4RUNTIME_PROCESSUI_LIBS +# KDE4RUNTIME_LSOFUI_LIBRARY, KDE4RUNTIME_LSOFUI_LIBS +# KDE4RUNTIME_PLASMACLOCK_LIBRARY, KDE4RUNTIME_PLASMACLOCK_LIBS +# KDE4RUNTIME_NEPOMUKQUERYCLIENT_LIBRARY, KDE4RUNTIME_NEPOMUKQUERYCLIENT_LIBS +# KDE4RUNTIME_NEPOMUKQUERY_LIBRARY, KDE4RUNTIME_NEPOMUKQUERY_LIBS +# KDE4RUNTIME_KSCREENSAVER_LIBRARY, KDE4RUNTIME_KSCREENSAVER_LIBS +# KDE4RUNTIME_WEATHERION_LIBRARY, KDE4RUNTIME_WEATHERION_LIBS +# KDE4RUNTIME_KWINEFFECTS_LIBRARY, KDE4RUNTIME_KWINEFFECTS_LIBS +# KDE4RUNTIME_KDECORATIONS_LIBRARY, KDE4RUNTIME_KDECORATIONS_LIBS +# KDE4RUNTIME_KSGRD_LIBRARY, KDE4RUNTIME_KSGRD_LIBS +# KDE4RUNTIME_KEPHAL_LIBRARY, KDE4RUNTIME_KEPHAL_LIBS +# +# And the following locations: +# KDE4RUNTIME_LIB_DIR +# KDE4RUNTIME_LIBEXEC_DIR +# KDE4RUNTIME_INCLUDE_DIR +# KDE4RUNTIME_BIN_DIR +# KDE4RUNTIME_SBIN_DIR +# KDE4RUNTIME_DATA_DIR +# KDE4RUNTIME_HTML_DIR +# KDE4RUNTIME_CONFIG_DIR +# KDE4RUNTIME_ICON_DIR +# KDE4RUNTIME_KCFG_DIR +# KDE4RUNTIME_LOCALE_DIR +# KDE4RUNTIME_MIME_DIR +# KDE4RUNTIME_SOUND_DIR +# KDE4RUNTIME_TEMPLATES_DIR +# KDE4RUNTIME_WALLPAPER_DIR +# KDE4RUNTIME_KCONF_UPDATE_DIR +# KDE4RUNTIME_AUTOSTART_DIR +# KDE4RUNTIME_XDG_APPS_DIR +# KDE4RUNTIME_XDG_DIRECTORY_DIR +# KDE4RUNTIME_SYSCONF_DIR +# KDE4RUNTIME_MAN_DIR +# KDE4RUNTIME_INFO_DIR +# KDE4RUNTIME_DBUS_INTERFACES_DIR +# KDE4RUNTIME_DBUS_SERVICES_DIR +# KDE4RUNTIME_SERVICES_DIR +# KDE4RUNTIME_SERVICETYPES_DIR + +# Copyright (c) 2008, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +# The find_package() call below loads the file KDE4RuntimeConfig.cmake file. +# This file is created and installed by kdebase/runtime/CMakeLists.txt +# It contains settings for all install location of kdebase/runtime, as e.g. +# KDE4RUNTIME_INCLUDE_DIR, and also variables for all libraries. +# See kdebase/runtime/CMakeLists.txt and kdebase/runtime/KDE4RuntimeConfig.cmake.in +# for details. Alex + + +set(_KDE4Runtime_FIND_QUIETLY ${KDE4Runtime_FIND_QUIETLY}) +find_package(KDE4Runtime QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KDE4Runtime/cmake ) +set(KDE4Runtime_FIND_QUIETLY ${_KDE4Runtime_FIND_QUIETLY}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(KDE4Runtime DEFAULT_MSG KDE4Runtime_CONFIG ) + -- cgit v1.2.1 From ce6c545a16f03c7bf26c496f19b730bb0b24cc73 Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Sun, 4 Oct 2009 17:57:54 +0000 Subject: Revert "Provide a FindKDE4Runtime.cmake file. Copied and adapted from" This reverts commit fc397ed11a939c7a86dc1fb7180809b6465bafe9. svn path=/trunk/KDE/kdelibs/; revision=1031319 --- modules/FindKDE4Runtime.cmake | 71 ------------------------------------------- 1 file changed, 71 deletions(-) delete mode 100644 modules/FindKDE4Runtime.cmake (limited to 'modules') diff --git a/modules/FindKDE4Runtime.cmake b/modules/FindKDE4Runtime.cmake deleted file mode 100644 index 334cb3a2..00000000 --- a/modules/FindKDE4Runtime.cmake +++ /dev/null @@ -1,71 +0,0 @@ -# Find if we installed kdebase/runtime. -# Once done this will define -# -# KDE4RUNTIME_FOUND - system has KDE runtime installed -# KDE4RUNTIME_INCLUDE_DIR - the KDE runtime include directory -# -# It also sets variables for the following libraries: -# KDE4RUNTIME_TASKMANAGER_LIBRARY, KDE4RUNTIME_TASKMANAGER_LIBS -# KDE4RUNTIME_KRUNTIME_LIBRARY, KDE4RUNTIME_KRUNTIME_LIBS -# KDE4RUNTIME_SOLIDCONTROLIFACES_LIBRARY, KDE4RUNTIME_SOLIDCONTROLIFACES_LIBS -# KDE4RUNTIME_SOLIDCONTROL_LIBRARY, KDE4RUNTIME_SOLIDCONTROL_LIBS -# KDE4RUNTIME_PROCESSUI_LIBRARY, KDE4RUNTIME_PROCESSUI_LIBS -# KDE4RUNTIME_LSOFUI_LIBRARY, KDE4RUNTIME_LSOFUI_LIBS -# KDE4RUNTIME_PLASMACLOCK_LIBRARY, KDE4RUNTIME_PLASMACLOCK_LIBS -# KDE4RUNTIME_NEPOMUKQUERYCLIENT_LIBRARY, KDE4RUNTIME_NEPOMUKQUERYCLIENT_LIBS -# KDE4RUNTIME_NEPOMUKQUERY_LIBRARY, KDE4RUNTIME_NEPOMUKQUERY_LIBS -# KDE4RUNTIME_KSCREENSAVER_LIBRARY, KDE4RUNTIME_KSCREENSAVER_LIBS -# KDE4RUNTIME_WEATHERION_LIBRARY, KDE4RUNTIME_WEATHERION_LIBS -# KDE4RUNTIME_KWINEFFECTS_LIBRARY, KDE4RUNTIME_KWINEFFECTS_LIBS -# KDE4RUNTIME_KDECORATIONS_LIBRARY, KDE4RUNTIME_KDECORATIONS_LIBS -# KDE4RUNTIME_KSGRD_LIBRARY, KDE4RUNTIME_KSGRD_LIBS -# KDE4RUNTIME_KEPHAL_LIBRARY, KDE4RUNTIME_KEPHAL_LIBS -# -# And the following locations: -# KDE4RUNTIME_LIB_DIR -# KDE4RUNTIME_LIBEXEC_DIR -# KDE4RUNTIME_INCLUDE_DIR -# KDE4RUNTIME_BIN_DIR -# KDE4RUNTIME_SBIN_DIR -# KDE4RUNTIME_DATA_DIR -# KDE4RUNTIME_HTML_DIR -# KDE4RUNTIME_CONFIG_DIR -# KDE4RUNTIME_ICON_DIR -# KDE4RUNTIME_KCFG_DIR -# KDE4RUNTIME_LOCALE_DIR -# KDE4RUNTIME_MIME_DIR -# KDE4RUNTIME_SOUND_DIR -# KDE4RUNTIME_TEMPLATES_DIR -# KDE4RUNTIME_WALLPAPER_DIR -# KDE4RUNTIME_KCONF_UPDATE_DIR -# KDE4RUNTIME_AUTOSTART_DIR -# KDE4RUNTIME_XDG_APPS_DIR -# KDE4RUNTIME_XDG_DIRECTORY_DIR -# KDE4RUNTIME_SYSCONF_DIR -# KDE4RUNTIME_MAN_DIR -# KDE4RUNTIME_INFO_DIR -# KDE4RUNTIME_DBUS_INTERFACES_DIR -# KDE4RUNTIME_DBUS_SERVICES_DIR -# KDE4RUNTIME_SERVICES_DIR -# KDE4RUNTIME_SERVICETYPES_DIR - -# Copyright (c) 2008, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -# The find_package() call below loads the file KDE4RuntimeConfig.cmake file. -# This file is created and installed by kdebase/runtime/CMakeLists.txt -# It contains settings for all install location of kdebase/runtime, as e.g. -# KDE4RUNTIME_INCLUDE_DIR, and also variables for all libraries. -# See kdebase/runtime/CMakeLists.txt and kdebase/runtime/KDE4RuntimeConfig.cmake.in -# for details. Alex - - -set(_KDE4Runtime_FIND_QUIETLY ${KDE4Runtime_FIND_QUIETLY}) -find_package(KDE4Runtime QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KDE4Runtime/cmake ) -set(KDE4Runtime_FIND_QUIETLY ${_KDE4Runtime_FIND_QUIETLY}) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(KDE4Runtime DEFAULT_MSG KDE4Runtime_CONFIG ) - -- cgit v1.2.1 From 9f7fb0716ac8c80ff11b20da4830a0e7a0066599 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 5 Oct 2009 17:48:24 +0000 Subject: -don't use the internal macro from FindQt4.cmake here -use string(TOUPPER ... ) to make testing the value easier Alex svn path=/trunk/KDE/kdelibs/; revision=1031656 --- modules/KDE4Macros.cmake | 30 +++++++++++++++++++++++++++++- modules/MacroLogFeature.cmake | 10 +++++----- 2 files changed, 34 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index fd5e62e4..2174427b 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -155,11 +155,39 @@ macro (KDE4_ADD_UI_FILES _sources ) endmacro (KDE4_ADD_UI_FILES) +# this is basically a copy of the qt4_get_moc_flags() macros from FindQt4.cmake +# which is for internal use only, so we should not use it here: +macro (_KDE4_GET_MOC_FLAGS _moc_flags) + set(${_moc_flags}) + get_directory_property(_inc_DIRS INCLUDE_DIRECTORIES) + + foreach(_current ${_inc_DIRS}) + set(${_moc_flags} ${${_moc_flags}} "-I${_current}") + endforeach(_current ${_inc_DIRS}) + + get_directory_property(_defines COMPILE_DEFINITIONS) + foreach(_current ${_defines}) + set(${_moc_flags} ${${_moc_flags}} "-D${_current}") + endforeach(_current ${_defines}) + + if(Q_WS_WIN) + set(${_moc_flags} ${${_moc_flags}} -DWIN32) + endif(Q_WS_WIN) + + # if Qt is installed only as framework, add -F /library/Frameworks to the moc arguments + # otherwise moc can't find the headers in the framework include dirs + if(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") + set(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-F/Library/Frameworks") + endif(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") + +endmacro(_KDE4_GET_MOC_FLAGS) + + #create the implementation files from the ui files and add them to the list of sources #usage: KDE4_ADD_UI3_FILES(foo_SRCS ${ui_files}) macro (KDE4_ADD_UI3_FILES _sources ) - qt4_get_moc_flags(_moc_INCS) + _kde4_get_moc_flags(_moc_INCS) foreach (_current_FILE ${ARGN}) diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 5db50edf..541078c8 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -53,18 +53,18 @@ ENDIF (NOT _macroLogFeatureAlreadyIncluded) MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _comments) - SET(_required "${ARGV4}") + STRING(TOUPPER "${ARGV4}" _required) SET(_minvers "${ARGV5}") SET(_comments "${ARGV6}") - + IF (${_var}) SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) ELSE (${_var}) - IF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") + IF ("${_required}" STREQUAL "TRUE") SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/MissingRequirements.txt) - ELSE (${_required} MATCHES "[Tt][Rr][Uu][Ee]") + ELSE ("${_required}" STREQUAL "TRUE") SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/DisabledFeatures.txt) - ENDIF (${_required} MATCHES "[Tt][Rr][Uu][Ee]") + ENDIF ("${_required}" STREQUAL "TRUE") ENDIF (${_var}) SET(_logtext " * ${_package}") -- cgit v1.2.1 From bdcbc34c5926c75b2b18a3343f5ddb9fc890056e Mon Sep 17 00:00:00 2001 From: David Faure Date: Tue, 13 Oct 2009 23:11:18 +0000 Subject: SVN_SILENT docu svn path=/trunk/KDE/kdelibs/; revision=1034922 --- modules/FindKdepimLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index dcbe2f94..96aed740 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -18,6 +18,7 @@ # KDEPIMLIBS_KLDAP_LIBS # KDEPIMLIBS_KMIME_LIBS # KDEPIMLIBS_KPIMIDENTITIES_LIBS +# KDEPIMLIBS_KPIMTEXTEDIT_LIBS # KDEPIMLIBS_KPIMUTILS_LIBS # KDEPIMLIBS_KRESOURCES_LIBS # KDEPIMLIBS_KTNEF_LIBS -- cgit v1.2.1 From 71723f6c233fb6ea753551b30f03cfb14123b226 Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Wed, 14 Oct 2009 09:46:24 +0000 Subject: SVN_SILENT missing doc svn path=/trunk/KDE/kdelibs/; revision=1035055 --- modules/FindKdepimLibs.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 96aed740..c9a8148d 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -7,8 +7,9 @@ # # It also sets variables for the following libraries: # KDEPIMLIBS_AKONADI_LIBS -# KDEPIMLIBS_AKONADI_KMIME_LIBS +# KDEPIMLIBS_AKONADI_CONTACT_LIBS # KDEPIMLIBS_AKONADI_KABC_LIBS +# KDEPIMLIBS_AKONADI_KMIME_LIBS # KDEPIMLIBS_GPGMEPP_LIBS # KDEPIMLIBS_KABC_LIBS # KDEPIMLIBS_KBLOG_LIBS @@ -17,6 +18,7 @@ # KDEPIMLIBS_KIMAP_LIBS # KDEPIMLIBS_KLDAP_LIBS # KDEPIMLIBS_KMIME_LIBS +# KDEPIMLIBS_KONTACTINTERFACE_LIBS # KDEPIMLIBS_KPIMIDENTITIES_LIBS # KDEPIMLIBS_KPIMTEXTEDIT_LIBS # KDEPIMLIBS_KPIMUTILS_LIBS @@ -24,6 +26,7 @@ # KDEPIMLIBS_KTNEF_LIBS # KDEPIMLIBS_KXMLRPCCLIENT_LIBS # KDEPIMLIBS_MAILTRANSPORT_LIBS +# KDEPIMLIBS_MICROBLOG_LIBS # KDEPIMLIBS_QGPGME_LIBS # KDEPIMLIBS_SYNDICATION_LIBS # -- cgit v1.2.1 From 687c479c154dfb6300f2338a3f358f4ba79d37bd Mon Sep 17 00:00:00 2001 From: Carlo Segato Date: Sat, 17 Oct 2009 23:03:34 +0000 Subject: fix cmake error if CMAKE_BUILD_TYPE isn't set svn path=/trunk/KDE/kdelibs/; revision=1036856 --- modules/FindKDEWin.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index 8975981a..ee2983c4 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -25,7 +25,7 @@ if (WIN32) # search for kdewin in the default install directory for applications (default of (n)make install) FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_PATH}" _cmakeLibraryPathCmakeStyle) - string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) + string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_TOLOWER) if (CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) set (LIBRARY_NAME kdewind) else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) -- cgit v1.2.1 From 6ec89331928460f79b733311a040d909c9a904e3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 20 Oct 2009 21:37:03 +0000 Subject: -explicitely list the files which will be installed, so we can also have files which are used inside kdelibs but which don't have to be installed Alex svn path=/trunk/KDE/kdelibs/; revision=1038244 --- modules/CMakeLists.txt | 151 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 142 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 0d17be16..a5184843 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -1,10 +1,143 @@ ## install the cmake files - -file(GLOB cmakeFiles "${CMAKE_CURRENT_SOURCE_DIR}/*.cmake") set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -install( FILES cmake-modules-styleguide.txt +# maybe FindHUNSPELL.cmake, FindPolkitQt.cmake don't have to be installed ? +set(cmakeFilesDontInstall ) + +# Explicitely list all files which will be installed. +# We don't use a GLOB anymore so we can have also cmake files here +# which are used inside kdelibs, but which don't have to be installed (and +# so become part of the public interface of kdelibs which has to be kept +# compatible). +set(cmakeFiles CheckCXXSourceCompiles.cmake + CheckCXXSourceRuns.cmake + CheckCXXSymbolExists.cmake + CheckPointerMember.cmake + CheckPrototypeExists.cmake + CheckStructMember.cmake + FindACL.cmake + FindAGG.cmake + FindAkode.cmake + FindAlsa.cmake + FindAutomoc4.cmake + FindAvahi.cmake + FindBerkeleyDB.cmake + FindBlitz.cmake + FindBlueZ.cmake + FindBoost.cmake + FindCarbon.cmake + FindDNSSD.cmake + FindENCHANT.cmake + FindEigen.cmake + FindEigen2.cmake + FindExiv2.cmake + FindFAM.cmake + FindFFmpeg.cmake + FindFlac.cmake + FindFlex.cmake + FindFontconfig.cmake + FindFreetype.cmake + FindGIF.cmake + FindGLIB2.cmake + FindGMP.cmake + FindGObject.cmake + FindGSSAPI.cmake + FindGStreamer.cmake + FindGettext.cmake + FindGphoto2.cmake + FindHUNSPELL.cmake + FindIOKit.cmake + FindKDE4Internal.cmake + FindKDE4Workspace.cmake + FindKDEWIN32.cmake + FindKDEWIN_Packager.cmake + FindKDEWin.cmake + FindKNepomuk.cmake + FindKdcraw.cmake + FindKdeMultimedia.cmake + FindKdepim.cmake + FindKdepimLibs.cmake + FindKexiv2.cmake + FindKipi.cmake + FindKonto.cmake + FindKopete.cmake + FindKorundum.cmake + FindLCMS.cmake + FindLibArt.cmake + FindLibKonq.cmake + FindLibLZMA.cmake + FindLibXml2.cmake + FindLibXslt.cmake + FindLibintl.cmake + FindLibraryWithDebug.cmake + FindLinuxWirelesstools.cmake + FindMsgfmt.cmake + FindMusicBrainz.cmake + FindMySQL.cmake + FindNepomuk.cmake + FindNetworkManager.cmake + FindOggVorbis.cmake + FindOpenEXR.cmake + FindOpenSSL.cmake + FindPCRE.cmake + FindPhonon.cmake + FindPkgConfig.cmake + FindPlasma.cmake + FindPolkitQt.cmake + FindPopplerQt4.cmake + FindPostgreSQL.cmake + FindPulseAudio.cmake + FindPyKDE4.cmake + FindPyQt4.cmake + FindPythonLibrary.cmake + FindQCA2.cmake + FindQImageBlitz.cmake + FindQt4.cmake + FindRUBY.cmake + FindSIP.cmake + FindSamba.cmake + FindSane.cmake + FindSasl2.cmake + FindSharedMimeInfo.cmake + FindSoprano.cmake + FindSqlite.cmake + FindStrigi.cmake + FindTaglib.cmake + FindUSB.cmake + FindX11.cmake + FindXKB.cmake + FindXine.cmake + FindXmms.cmake + HandleImportedTargetsInCMakeRequiredLibraries.cmake + KDE4Defaults.cmake + KDE4Macros.cmake + MacroAddCompileFlags.cmake + MacroAddFileDependencies.cmake + MacroAddLinkFlags.cmake + MacroAdditionalCleanFiles.cmake + MacroAppendIf.cmake + MacroBoolTo01.cmake + MacroEnsureOutOfSourceBuild.cmake + MacroEnsureVersion.cmake + MacroKAuth.cmake + MacroLibrary.cmake + MacroLogFeature.cmake + MacroOptionalAddSubdirectory.cmake + MacroOptionalDependPackage.cmake + MacroOptionalFindPackage.cmake + MacroPushRequiredVars.cmake + MacroWriteBasicCMakeVersionFile.cmake + NepomukMacros.cmake + PythonMacros.cmake + SIPMacros.cmake + Win32Macros.cmake + check_installed_exports_file.cmake + config-alsa.h.cmake + create_exe_symlink.cmake + kde4_exec_via_sh.cmake + kde4uic.cmake + cmake-modules-styleguide.txt kde4init_dummy.cpp.in kde4init_win32lib_dummy.cpp.in kde4_cmake_uninstall.cmake.in @@ -14,15 +147,15 @@ install( FILES cmake-modules-styleguide.txt FindPyKDE4.py FindPyQt.py FindSIP.py - PythonCompile.py - ${cmakeFiles} - DESTINATION ${module_install_dir} ) + ) if (KDE4_ENABLE_UAC_MANIFEST) - install( FILES Win32.Manifest.in - DESTINATION ${module_install_dir} - ) + set(cmakeFiles ${cmakeFiles} Win32.Manifest.in ) endif (KDE4_ENABLE_UAC_MANIFEST) + +install(FILES ${cmakeFiles} + DESTINATION ${module_install_dir} ) + # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex #set(FILES_TO_REMOVE -- cgit v1.2.1 From ec96981bc8aa9423c82d8f426bebafdb9b657c38 Mon Sep 17 00:00:00 2001 From: James Pike Date: Thu, 22 Oct 2009 00:50:07 +0000 Subject: Missing installed requirement for kdebase. svn path=/trunk/KDE/kdelibs/; revision=1038827 --- modules/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index a5184843..d3ec88f3 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -147,6 +147,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindPyKDE4.py FindPyQt.py FindSIP.py + PythonCompile.py ) if (KDE4_ENABLE_UAC_MANIFEST) -- cgit v1.2.1 From b7bcdf9864248f723df7285d36ad9a92230f9803 Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Thu, 22 Oct 2009 10:29:21 +0000 Subject: bring msvc compiler flags in sync with the flags used when building Qt svn path=/trunk/KDE/kdelibs/; revision=1038937 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 75cb9988..81563108 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -882,6 +882,10 @@ if (WIN32) # windows, microsoft compiler if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN ) + + # Qt disables the native wchar_t type, do it too to avoid linking issues + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Zc:wchar_t-" ) + # C4250: 'class1' : inherits 'class2::member' via dominance set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' -- cgit v1.2.1 From c083a3799c48dedbef7be7f9eec463f5ecc3d927 Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Thu, 22 Oct 2009 11:09:05 +0000 Subject: better place for the extra msvc compile flag svn path=/trunk/KDE/kdelibs/; revision=1038952 --- modules/FindKDE4Internal.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 81563108..caaa440c 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -883,9 +883,6 @@ if (WIN32) if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN ) - # Qt disables the native wchar_t type, do it too to avoid linking issues - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Zc:wchar_t-" ) - # C4250: 'class1' : inherits 'class2::member' via dominance set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' @@ -912,7 +909,7 @@ if (WIN32) endif(MSVC_IDE) # we don't support anything below w2k and all winapi calls are unicodes - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0501 -D_WIN32_IE=0x0501 -DUNICODE" ) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0501 -DWINVER=0x0501 -D_WIN32_IE=0x0501 -DUNICODE" ) endif (WIN32) @@ -1043,6 +1040,9 @@ endmacro(KDE_CHECK_FLAG_EXISTS FLAG VAR) if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) + # Qt disables the native wchar_t type, do it too to avoid linking issues + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Zc:wchar_t-" ) + # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h kde_check_flag_exists("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "Release with Debug Info") kde_check_flag_exists("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELEASE "release") -- cgit v1.2.1 From c1260310416b26088009075eb8625587e4eb8b7b Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Sat, 24 Oct 2009 23:16:14 +0000 Subject: Allow setting a simple soprano_lib_dir. svn path=/trunk/KDE/kdelibs/; revision=1039938 --- modules/FindSoprano.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 29331cf9..10cb87b5 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -52,6 +52,7 @@ NAMES sopranoindex HINTS + ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) @@ -61,6 +62,7 @@ NAMES sopranoclient HINTS + ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) @@ -69,6 +71,7 @@ WIN32_DEBUG_POSTFIX d NAMES soprano HINTS + ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) @@ -78,6 +81,7 @@ NAMES sopranoserver HINTS + ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) -- cgit v1.2.1 From c03c94ddaafdbcc805b832ec0e275fc0ea32561f Mon Sep 17 00:00:00 2001 From: David Faure Date: Sun, 25 Oct 2009 21:23:36 +0000 Subject: Hide from ccmake the cmake-internal variable used by enable_testing, to reduce confusion with KDE4_BUILD_TESTS. svn path=/trunk/KDE/kdelibs/; revision=1040227 --- modules/KDE4Defaults.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index bc27a2db..82fa6044 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -1,5 +1,6 @@ enable_testing() +SET(BUILD_TESTING ON CACHE INTERNAL "Build the testing tree (internal)") # support for Dart: http://public.kitware.com/dashboard.php?name=kde if (EXISTS ${CMAKE_SOURCE_DIR}/CTestConfig.cmake) -- cgit v1.2.1 From 7c4c6e98bea50185a63287806453eab2587020a8 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Fri, 30 Oct 2009 18:18:16 +0000 Subject: Add FindKDevPlatform from kdevplatform/cmake/modules to be able to share this among other places needing to find kdevplatform. svn path=/trunk/KDE/kdelibs/; revision=1042792 --- modules/CMakeLists.txt | 1 + modules/FindKDevPlatform.cmake | 46 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 modules/FindKDevPlatform.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index d3ec88f3..99c30c5b 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -50,6 +50,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindIOKit.cmake FindKDE4Internal.cmake FindKDE4Workspace.cmake + FindKDevPlatform.cmake FindKDEWIN32.cmake FindKDEWIN_Packager.cmake FindKDEWin.cmake diff --git a/modules/FindKDevPlatform.cmake b/modules/FindKDevPlatform.cmake new file mode 100644 index 00000000..1a771c52 --- /dev/null +++ b/modules/FindKDevPlatform.cmake @@ -0,0 +1,46 @@ +# +# Find the KDevelop Platform modules and sets various variables accordingly +# +# Example usage of this module: +# find_package(KDevPlatform 1.0.0 REQUIRED) +# +# The version number and REQUIRED flag are optional. You can set CMAKE_PREFIX_PATH +# variable to help it find the required files and directories + +# KDEVPLATFORM_FOUND - set to TRUE if the platform was found and the version is compatible FALSE otherwise +# +# KDEVPLATFORM_VERSION - The version number of kdevplatform +# KDEVPLATFORM_VERSION_MAJOR - The major version number of kdevplatform +# KDEVPLATFORM_VERSION_MINOR - The minor version number of kdevplatform +# KDEVPLATFORM_VERSION_PATCH - The patch version number of kdevplatform +# KDEVPLATFORM_INCLUDE_DIR - include dir of the platform, for example /usr/include/kdevplatform +# KDEVPLATFORM_INTERFACES_LIBRARIES - interfaces module library +# KDEVPLATFORM_LANGUAGE_LIBRARIES - language module library +# KDEVPLATFORM_OUTPUTVIEW_LIBRARIES - outputview module library +# KDEVPLATFORM_PROJECT_LIBRARIES - project module library +# KDEVPLATFORM_SUBLIME_LIBRARIES - sublime module library +# KDEVPLATFORM_SHELL_LIBRARIES - shell module library +# KDEVPLATFORM_TESTS_LIBRARIES - library to write tests for plugins, +# contains some useful tools and a way to replace parts of Core +# classes with custom implementations +# KDEVPLATFORM_UTIL_LIBRARIES - util module library +# KDEVPLATFORM_VCS_LIBRARIES - vcs module library +# KDEVPLATFORM_SOURCEFORMATTER_LIBRARIES - source formatter library +# KDEVPLATFORM_DEBUGGER_LIBRARIES - debugger module library +# +# The following macros are added (from KDevPlatformMacros.cmake): +# +# KDEVPLATFORM_ADD_APP_TEMPLATES( template1 ... templateN ) +# Use this to get packaged template archives for the given templates. +# Parameters should be the directories containing the templates. +# +# Copyright 2007 Andreas Pakulat +# Redistribution and use is allowed according to the terms of the BSD license. + +set(_KDevPlatform_FIND_QUIETLY ${KDevPlatform_FIND_QUIETLY}) +find_package( KDevPlatform ${KDevPlatform_FIND_VERSION} NO_MODULE ) +set(KDevPlatform_FIND_QUIETLY ${_KDevPlatform_FIND_QUIETLY}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(KDevPlatform DEFAULT_MSG KDevPlatform_CONFIG ) + -- cgit v1.2.1 From 2b951fde6c75a94ad0965acf3ccbca005453e04c Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Sat, 31 Oct 2009 13:27:18 +0000 Subject: Revert c1039938 CMAKE_PREFIX_PATH already covers this configuration case svn path=/trunk/KDE/kdelibs/; revision=1043006 --- modules/FindSoprano.cmake | 4 ---- 1 file changed, 4 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 10cb87b5..29331cf9 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -52,7 +52,6 @@ NAMES sopranoindex HINTS - ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) @@ -62,7 +61,6 @@ NAMES sopranoclient HINTS - ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) @@ -71,7 +69,6 @@ WIN32_DEBUG_POSTFIX d NAMES soprano HINTS - ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) @@ -81,7 +78,6 @@ NAMES sopranoserver HINTS - ${SOPRANO_LIB_DIR} ${LIB_INSTALL_DIR} ${KDE4_LIB_DIR} ) -- cgit v1.2.1 From 822b4ca32c8a4312817663859007dfe22be9820a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaros=C5=82aw=20Staniek?= Date: Sat, 31 Oct 2009 22:24:52 +0000 Subject: update email SVN_SILENT svn path=/trunk/KDE/kdelibs/; revision=1043164 --- modules/FindPostgreSQL.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPostgreSQL.cmake b/modules/FindPostgreSQL.cmake index b16e9e5e..79556120 100644 --- a/modules/FindPostgreSQL.cmake +++ b/modules/FindPostgreSQL.cmake @@ -5,7 +5,7 @@ # POSTGRESQL_LIBRARIES, the libraries needed to use POSTGRESQL. # POSTGRESQL_FOUND, If false, do not try to use PostgreSQL. -# Copyright (c) 2006, Jaroslaw Staniek, +# Copyright (c) 2006 Jarosław Staniek # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -- cgit v1.2.1 From de41f412dc5ddb2f82ae11ed2cd82adfc53b219f Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Thu, 5 Nov 2009 21:18:38 +0000 Subject: sync with cmake 2.8 version only windows specific stuff and adding QtScriptTools required for rocs svn path=/trunk/KDE/kdelibs/; revision=1045351 --- modules/FindQt4.cmake | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index b9a7d479..a0691e8b 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -29,6 +29,8 @@ # QT_DONT_USE_QTGUI # QT_USE_QT3SUPPORT # QT_USE_QTASSISTANT +# QT_USE_QAXCONTAINER +# QT_USE_QAXSERVER # QT_USE_QTDESIGNER # QT_USE_QTMOTIF # QT_USE_QTMAIN @@ -47,6 +49,7 @@ # QT_USE_QTWEBKIT # QT_USE_QTXMLPATTERNS # QT_USE_PHONON +# QT_USE_QTSCRIPTTOOLS # # There are also some files that need processing by some Qt tools such as moc # and uic. Listed below are macros that may be used to process those files. @@ -160,6 +163,8 @@ # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. # QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QAXCONTAINER_FOUND True if QAxContainer was found (Windows only). +# QT_QAXSERVER_FOUND True if QAxServer was found (Windows only). # QT_QTDBUS_FOUND True if QtDBus was found. # QT_QTDESIGNER_FOUND True if QtDesigner was found. # QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. @@ -178,6 +183,7 @@ # QT_QTWEBKIT_FOUND True if QtWebKit was found. # QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. # QT_PHONON_FOUND True if phonon was found. +# QT_QTSCRIPTTOOLS_FOUND True if QtScriptTools was found. # # QT_MAC_USE_COCOA For Mac OS X, its whether Cocoa or Carbon is used. # In general, this should not be used, but its useful @@ -204,6 +210,8 @@ # QT_QT_INCLUDE_DIR Path to "include/Qt" # QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" # QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QAXCONTAINER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) +# QT_QAXSERVER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) # QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" # QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" # QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" @@ -223,6 +231,7 @@ # QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit" # QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" # QT_PHONON_INCLUDE_DIR Path to "include/phonon" +# QT_QTSCRIPTTOOLS_INCLUDE_DIR Path to "include/QtScriptTools" # # QT_BINARY_DIR Path to "bin" of Qt4 # QT_LIBRARY_DIR Path to "lib" of Qt4 @@ -238,6 +247,10 @@ # # The QtAssistant library: QT_QTASSISTANT_LIBRARY # +# The QtAxServer library: QT_QAXSERVER_LIBRARY +# +# The QtAxContainer library: QT_QTAXCONTAINER_LIBRARY +# # The QtCore library: QT_QTCORE_LIBRARY # # The QtDBus library: QT_QTDBUS_LIBRARY @@ -280,6 +293,8 @@ # # The Phonon library: QT_PHONON_LIBRARY # +# The QtScriptTools library: QT_QTSCRIPTTOOLS_LIBRARY +# # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. # QT_UIC_EXECUTABLE Where to find the uic tool. @@ -739,6 +754,14 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + # Set QT_QTSCRIPTTOOLS_INCLUDE_DIR + FIND_PATH(QT_QTSCRIPTTOOLS_INCLUDE_DIR QtScriptTools + PATHS + ${QT_INCLUDE_DIR}/QtScriptTools + ${QT_LIBRARY_DIR}/QtScriptTools.framework/Headers + NO_DEFAULT_PATH + ) + # Set QT_QTTEST_INCLUDE_DIR FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest PATHS @@ -812,6 +835,23 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + IF(WIN32) + # Set QT_QTAXSERVER_INCLUDE_DIR + FIND_PATH(QT_QTAXSERVER_INCLUDE_DIR QtAxServer + PATHS + ${QT_INCLUDE_DIR}/QtAxServer + ${QT_HEADERS_DIR}/QtAxServer + NO_DEFAULT_PATH + ) + + # Set QT_QTAXCONTAINER_INCLUDE_DIR + FIND_PATH(QT_QTAXCONTAINER_INCLUDE_DIR QtAxContainer + PATHS + ${QT_INCLUDE_DIR}/QtAxContainer + ${QT_HEADERS_DIR}/QtAxContainer + NO_DEFAULT_PATH + ) + ENDIF(WIN32) # Set QT_QTDESIGNER_INCLUDE_DIR FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents PATHS @@ -998,6 +1038,8 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) # Set QT_QTSCRIPT_LIBRARY FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) + # Set QT_QTSCRIPTTOOLS_LIBRARY + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtScriptTools QtScriptTools4 PATHS ${QT_LIBRARY_DIR} ) ELSE (QT_USE_FRAMEWORKS) @@ -1046,6 +1088,12 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient_debug QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + IF(WIN32) + FIND_LIBRARY(QT_QTAXSERVER_LIBRARY NAMES QtAxServer QtAxServer4 QtAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTAXCONTAINER_LIBRARY NAMES QtAxContainer QtAxContainer4 QtAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(WIN32) + FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp_debug QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTWEBKIT_LIBRARY NAMES QtWebKit QtWebKit_debug QtWebKit4 QtWebKitd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -1054,6 +1102,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_PHONON_LIBRARY NAMES phonon phonon4 phonon_debug phonond4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) IF(MSVC) FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -1082,12 +1131,18 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTAXSERVER_LIBRARY_RELEASE NAMES QtAxServer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTAXSERVER_LIBRARY_DEBUG NAMES QtAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTAXCONTAINER_LIBRARY_RELEASE NAMES QtAxContainer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTAXCONTAINER_LIBRARY_DEBUG NAMES QtAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_RELEASE NAMES QtScriptTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_DEBUG NAMES QtScriptToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(MSVC) ENDIF (QT_USE_FRAMEWORKS) @@ -1182,6 +1237,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTWEBKIT) _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) _QT4_ADJUST_LIB_VARS(PHONON) + _QT4_ADJUST_LIB_VARS(QTSCRIPTTOOLS) # platform dependent libraries IF(Q_WS_X11) @@ -1189,6 +1245,8 @@ IF (QT4_QMAKE_FOUND) ENDIF(Q_WS_X11) IF(WIN32) _QT4_ADJUST_LIB_VARS(QTMAIN) + _QT4_ADJUST_LIB_VARS(QAXSERVER) + _QT4_ADJUST_LIB_VARS(QAXCONTAINER) ENDIF(WIN32) -- cgit v1.2.1 From 47d23e1b841cd76be75acd265b858d81b4c80eec Mon Sep 17 00:00:00 2001 From: Urs Wolfer Date: Sun, 8 Nov 2009 15:04:23 +0000 Subject: Move kdewebkit from kdereview to kdelibs. CCMAIL:webkit-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=1046374 --- modules/FindKDE4Internal.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index caaa440c..192eccb1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -41,9 +41,10 @@ # KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library # KDE4_KROSSCORE_LIBRARY - the krosscore library # KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library -# KDE4_NEPOMUK_LIBRARY - the nepomuk library +# KDE4_NEPOMUK_LIBRARY - the nepomuk library # KDE4_PLASMA_LIBRARY - the plasma library # KDE4_KUNITCONVERSION_LIBRARY - the kunitconversion library +# KDE4_KDEWEBKIT_LIBRARY - the kdewebkit library # # KDE4_PLASMA_OPENGL_FOUND - TRUE if the OpenGL support of Plasma has been found, NOTFOUND otherwise # @@ -72,9 +73,10 @@ # KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries # KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries # KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries -# KDE4_NEPOMUK_LIBS - the nepomuk library and all depending libraries +# KDE4_NEPOMUK_LIBS - the nepomuk library and all depending libraries # KDE4_PLASMA_LIBS - the plasma library and all depending librairies # KDE4_KUNITCONVERSION_LIBS - the kunitconversion library and all depending libraries +# KDE4_KDEWEBKIT_LIBS - the kdewebkit library and all depending libraries # # This module defines a bunch of variables used as locations for install directories. # They can be relative (to CMAKE_INSTALL_PREFIX) or absolute. @@ -505,6 +507,7 @@ else (_kdeBootStrapping) _kde4_set_lib_variables(KDE3SUPPORT kde3support ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KDECORE kdecore ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KDEUI kdeui ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KDEWEBKIT kdewebkit ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KDNSSD kdnssd ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KFILE kfile ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KHTML khtml ${KDE4_TARGET_PREFIX}) -- cgit v1.2.1 From 04700c7c77e786bc71a9b9d2f957221e89579d9c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 8 Nov 2009 17:02:15 +0000 Subject: -some syncing with FindQt4.cmake from cmake: search for clucene Alex svn path=/trunk/KDE/kdelibs/; revision=1046398 --- modules/FindQt4.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a0691e8b..3550d2a9 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1166,6 +1166,14 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(WIN32) + # Set QT_QTHELP_LIBRARY + FIND_LIBRARY(QT_QTCLUCENE_LIBRARY_RELEASE NAMES QtCLucene${QT_LIBINFIX} QtCLucene${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTCLUCENE_LIBRARY_DEBUG NAMES QtCLucene${QT_LIBINFIX}_debug QtCLucene${QT_LIBINFIX}d QtCLucene${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # QtCLucene not with other frameworks with binary installation (in /usr/lib) + IF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTCLUCENE_LIBRARY_RELEASE) + FIND_LIBRARY(QT_QTCLUCENE_LIBRARY_RELEASE NAMES QtCLucene${QT_LIBINFIX} PATHS ${QT_LIBRARY_DIR}) + ENDIF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTCLUCENE_LIBRARY_RELEASE) + ############################################ # # Check the existence of the libraries. @@ -1237,7 +1245,9 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTWEBKIT) _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) _QT4_ADJUST_LIB_VARS(PHONON) + _QT4_ADJUST_LIB_VARS(QTCLUCENE) _QT4_ADJUST_LIB_VARS(QTSCRIPTTOOLS) + # platform dependent libraries IF(Q_WS_X11) -- cgit v1.2.1 From 0b44a7baaa68cf9a620f942874e9e594f7ad4048 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 8 Nov 2009 18:06:55 +0000 Subject: some more syncing with FindQt4.cmake from cmake: -use the same cmake code for finding the include dirs for the different Qt modules -move the mark_as_advanced() around a bit -fix the the -F flag for moc on OSX Alex svn path=/trunk/KDE/kdelibs/; revision=1046417 --- modules/FindQt4.cmake | 322 +++++++++++++++----------------------------------- 1 file changed, 94 insertions(+), 228 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 3550d2a9..1ce79201 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -617,18 +617,93 @@ IF (QT4_QMAKE_FOUND) SET(QT_TRANSLATIONS_DIR ${qt_translations_dir} CACHE PATH "The location of the Qt translations" FORCE) ENDIF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR OR QT_QMAKE_CHANGED) + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_DOC_DIR QT_MKSPECS_DIR + QT_PLUGINS_DIR QT_TRANSLATIONS_DIR) + + ######################################## # # Setting the INCLUDE-Variables # ######################################## - FIND_PATH(QT_QTCORE_INCLUDE_DIR QtGlobal - ${QT_HEADERS_DIR}/QtCore - ${QT_LIBRARY_DIR}/QtCore.framework/Headers + SET(QT_MODULES QtCore QtGui Qt3Support QtSvg QtScript QtTest QtUiTools + QtHelp QtWebKit QtXmlPatterns QtNetwork + QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools) + + FOREACH(QT_MODULE ${QT_MODULES}) + STRING(TOUPPER ${QT_MODULE} _upper_qt_module) + FIND_PATH(QT_${_upper_qt_module}_INCLUDE_DIR ${QT_MODULE} + PATHS + ${QT_HEADERS_DIR}/${QT_MODULE} + ${QT_LIBRARY_DIR}/${QT_MODULE}.framework/Headers + NO_DEFAULT_PATH + ) + ENDFOREACH(QT_MODULE) + + IF(WIN32) + # Set QT_QTAXSERVER_INCLUDE_DIR + FIND_PATH(QT_QTAXSERVER_INCLUDE_DIR QtAxServer + PATHS + ${QT_INCLUDE_DIR}/QtAxServer + ${QT_HEADERS_DIR}/QtAxServer + NO_DEFAULT_PATH + ) + + # Set QT_QTAXCONTAINER_INCLUDE_DIR + FIND_PATH(QT_QTAXCONTAINER_INCLUDE_DIR QtAxContainer + PATHS + ${QT_INCLUDE_DIR}/QtAxContainer + ${QT_HEADERS_DIR}/QtAxContainer + NO_DEFAULT_PATH + ) + ENDIF(WIN32) + + # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR + FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents + PATHS + ${QT_HEADERS_DIR}/QtDesigner + ${QT_LIBRARY_DIR}/QtDesigner.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QTASSISTANT_INCLUDE_DIR + FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant + PATHS + ${QT_HEADERS_DIR}/QtAssistant + ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers NO_DEFAULT_PATH ) + # Set QT_QTASSISTANTCLIENT_INCLUDE_DIR + FIND_PATH(QT_QTASSISTANTCLIENT_INCLUDE_DIR QAssistantClient + PATHS + ${QT_HEADERS_DIR}/QtAssistant + ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_QT_INCLUDE_DIR + FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h + PATHS + ${QT_INCLUDE_DIR}/Qt + ${QT_LIBRARY_DIR}/QtCore.framework/Headers + NO_DEFAULT_PATH + ) + + # Set QT_PHONON_INCLUDE_DIR + # Qt >= 4.5.3 (or kde-qt-4.5.2 which has the fix too) : Phonon/ClassName is inside include/phonon + # With previous versions of Qt, this could not work; upgrade Qt or use a standalone phonon + FIND_PATH(QT_PHONON_INCLUDE_DIR Phonon + PATHS + ${QT_HEADERS_DIR}/phonon + NO_DEFAULT_PATH + ) + + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_INCLUDE_DIR QT_QT_INCLUDE_DIR) + # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) IF (QT_USE_FRAMEWORKS) @@ -641,16 +716,12 @@ IF (QT4_QMAKE_FOUND) IF( NOT QT_INCLUDE_DIR) IF(Qt4_FIND_REQUIRED) - MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header") + MESSAGE( FATAL_ERROR "Could NOT find QtCore header") ENDIF(Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR - QT_PLUGINS_DIR QT_TRANSLATIONS_DIR) - # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) + SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) ############################################# @@ -690,6 +761,14 @@ IF (QT4_QMAKE_FOUND) # ############################################# + # This check is after the check for the window system, since it uses Q_WS_X11: + # Set QT_QTMOTIF_INCLUDE_DIR + IF(Q_WS_X11) + FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif + PATHS + ${QT_INCLUDE_DIR}/QtMotif + NO_DEFAULT_PATH ) + ENDIF(Q_WS_X11) ####################################### @@ -714,218 +793,6 @@ IF (QT4_QMAKE_FOUND) SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) ENDIF (QT_USE_FRAMEWORKS) - # Set QT_QT3SUPPORT_INCLUDE_DIR - FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support - PATHS - ${QT_INCLUDE_DIR}/Qt3Support - ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QT_INCLUDE_DIR - FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h - PATHS - ${QT_INCLUDE_DIR}/Qt - ${QT_LIBRARY_DIR}/QtCore.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTGUI_INCLUDE_DIR - FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui - PATHS - ${QT_INCLUDE_DIR}/QtGui - ${QT_LIBRARY_DIR}/QtGui.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSVG_INCLUDE_DIR - FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg - PATHS - ${QT_INCLUDE_DIR}/QtSvg - ${QT_LIBRARY_DIR}/QtSvg.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSCRIPT_INCLUDE_DIR - FIND_PATH(QT_QTSCRIPT_INCLUDE_DIR QtScript - PATHS - ${QT_INCLUDE_DIR}/QtScript - ${QT_LIBRARY_DIR}/QtScript.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSCRIPTTOOLS_INCLUDE_DIR - FIND_PATH(QT_QTSCRIPTTOOLS_INCLUDE_DIR QtScriptTools - PATHS - ${QT_INCLUDE_DIR}/QtScriptTools - ${QT_LIBRARY_DIR}/QtScriptTools.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTTEST_INCLUDE_DIR - FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest - PATHS - ${QT_INCLUDE_DIR}/QtTest - ${QT_LIBRARY_DIR}/QtTest.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTUITOOLS_INCLUDE_DIR - FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools - PATHS - ${QT_INCLUDE_DIR}/QtUiTools - ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTMOTIF_INCLUDE_DIR - IF(Q_WS_X11) - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif - PATHS - ${QT_INCLUDE_DIR}/QtMotif - NO_DEFAULT_PATH ) - ENDIF(Q_WS_X11) - - # Set QT_QTNETWORK_INCLUDE_DIR - FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork - PATHS - ${QT_INCLUDE_DIR}/QtNetwork - ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTNSPLUGIN_INCLUDE_DIR - FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin - PATHS - ${QT_INCLUDE_DIR}/QtNsPlugin - ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTOPENGL_INCLUDE_DIR - FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL - PATHS - ${QT_INCLUDE_DIR}/QtOpenGL - ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTSQL_INCLUDE_DIR - FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql - PATHS - ${QT_INCLUDE_DIR}/QtSql - ${QT_LIBRARY_DIR}/QtSql.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTXML_INCLUDE_DIR - FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml - PATHS - ${QT_INCLUDE_DIR}/QtXml - ${QT_LIBRARY_DIR}/QtXml.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTASSISTANT_INCLUDE_DIR - FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant - PATHS - ${QT_INCLUDE_DIR}/QtAssistant - ${QT_HEADERS_DIR}/QtAssistant - ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers - NO_DEFAULT_PATH - ) - - IF(WIN32) - # Set QT_QTAXSERVER_INCLUDE_DIR - FIND_PATH(QT_QTAXSERVER_INCLUDE_DIR QtAxServer - PATHS - ${QT_INCLUDE_DIR}/QtAxServer - ${QT_HEADERS_DIR}/QtAxServer - NO_DEFAULT_PATH - ) - - # Set QT_QTAXCONTAINER_INCLUDE_DIR - FIND_PATH(QT_QTAXCONTAINER_INCLUDE_DIR QtAxContainer - PATHS - ${QT_INCLUDE_DIR}/QtAxContainer - ${QT_HEADERS_DIR}/QtAxContainer - NO_DEFAULT_PATH - ) - ENDIF(WIN32) - # Set QT_QTDESIGNER_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - ${QT_LIBRARY_DIR}/QtDesigner.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR - FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents - PATHS - ${QT_INCLUDE_DIR}/QtDesigner - ${QT_HEADERS_DIR}/QtDesigner - NO_DEFAULT_PATH - ) - - # Set QT_QTDBUS_INCLUDE_DIR - FIND_PATH(QT_QTDBUS_INCLUDE_DIR QtDBus - PATHS - ${QT_INCLUDE_DIR}/QtDBus - ${QT_HEADERS_DIR}/QtDBus - ${QT_LIBRARY_DIR}/QtDBus.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTASSISTANTCLIENT_INCLUDE_DIR - FIND_PATH(QT_QTASSISTANTCLIENT_INCLUDE_DIR QAssistantClient - PATHS - ${QT_INCLUDE_DIR}/QtAssistant - ${QT_HEADERS_DIR}/QtAssistant - NO_DEFAULT_PATH - ) - - # Set QT_QTHELP_INCLUDE_DIR - FIND_PATH(QT_QTHELP_INCLUDE_DIR QtHelp - PATHS - ${QT_INCLUDE_DIR}/QtHelp - ${QT_HEADERS_DIR}/QtHelp - NO_DEFAULT_PATH - ) - - # Set QT_QTWEBKIT_INCLUDE_DIR - FIND_PATH(QT_QTWEBKIT_INCLUDE_DIR QtWebKit - PATHS - ${QT_INCLUDE_DIR}/QtWebKit - ${QT_HEADERS_DIR}/QtWebKit - ${QT_LIBRARY_DIR}/QtWebKit.framework/Headers - NO_DEFAULT_PATH - ) - - # Set QT_QTXMLPATTERNS_INCLUDE_DIR - FIND_PATH(QT_QTXMLPATTERNS_INCLUDE_DIR QtXmlPatterns - PATHS - ${QT_INCLUDE_DIR}/QtXmlPatterns - ${QT_HEADERS_DIR}/QtXmlPatterns - NO_DEFAULT_PATH - ) - - # Set QT_PHONON_INCLUDE_DIR - # Qt >= 4.5.3 (or kde-qt-4.5.2 which has the fix too) : Phonon/ClassName is inside include/phonon - # With previous versions of Qt, this could not work; upgrade Qt or use a standalone phonon - FIND_PATH(QT_PHONON_INCLUDE_DIR Phonon - PATHS - ${QT_HEADERS_DIR}/phonon - NO_DEFAULT_PATH - ) - - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_QT_INCLUDE_DIR) - - # Set QT_INCLUDES - SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) - ######################################## # # Setting the LIBRARY-Variables @@ -1402,7 +1269,12 @@ IF (QT4_QMAKE_FOUND) GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) FOREACH(_current ${_inc_DIRS}) - SET(${_moc_flags} ${${_moc_flags}} "-I${_current}") + IF("${_current}" MATCHES ".framework/?$") + STRING(REGEX REPLACE "/[^/]+.framework" "" framework_path "${_current}") + SET(${_moc_flags} ${${_moc_flags}} "-F${framework_path}") + ELSE("${_current}" MATCHES ".framework/?$") + SET(${_moc_flags} ${${_moc_flags}} "-I${_current}") + ENDIF("${_current}" MATCHES ".framework/?$") ENDFOREACH(_current ${_inc_DIRS}) GET_DIRECTORY_PROPERTY(_defines COMPILE_DEFINITIONS) @@ -1414,12 +1286,6 @@ IF (QT4_QMAKE_FOUND) SET(${_moc_flags} ${${_moc_flags}} -DWIN32) ENDIF(Q_WS_WIN) - # if Qt is installed only as framework, add -F /library/Frameworks to the moc arguments - # otherwise moc can't find the headers in the framework include dirs - IF(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") - SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-F/Library/Frameworks") - ENDIF(APPLE AND "${QT_QTCORE_INCLUDE_DIR}" MATCHES "/Library/Frameworks/") - ENDMACRO(QT4_GET_MOC_FLAGS) # helper macro to set up a moc rule -- cgit v1.2.1 From 733a697345a7b25185d4ce1e5228da83a8f54245 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 8 Nov 2009 20:34:35 +0000 Subject: -use QT_HEADERS_DIR instead of QT_INCLUDE_DIR now after mavong some calls around Alex svn path=/trunk/KDE/kdelibs/; revision=1046471 --- modules/FindQt4.cmake | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 1ce79201..92df1def 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -646,7 +646,6 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTAXSERVER_INCLUDE_DIR FIND_PATH(QT_QTAXSERVER_INCLUDE_DIR QtAxServer PATHS - ${QT_INCLUDE_DIR}/QtAxServer ${QT_HEADERS_DIR}/QtAxServer NO_DEFAULT_PATH ) @@ -654,7 +653,6 @@ IF (QT4_QMAKE_FOUND) # Set QT_QTAXCONTAINER_INCLUDE_DIR FIND_PATH(QT_QTAXCONTAINER_INCLUDE_DIR QtAxContainer PATHS - ${QT_INCLUDE_DIR}/QtAxContainer ${QT_HEADERS_DIR}/QtAxContainer NO_DEFAULT_PATH ) @@ -687,7 +685,7 @@ IF (QT4_QMAKE_FOUND) # Set QT_QT_INCLUDE_DIR FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h PATHS - ${QT_INCLUDE_DIR}/Qt + ${QT_HEADERS_DIR}/Qt ${QT_LIBRARY_DIR}/QtCore.framework/Headers NO_DEFAULT_PATH ) -- cgit v1.2.1 From 2fc4ee5f0b2d921527128fe912d22fb3fbb5bac9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 8 Nov 2009 20:38:42 +0000 Subject: -move the mark_as_advanced() to the end of the include-path-checking section Alex svn path=/trunk/KDE/kdelibs/; revision=1046474 --- modules/FindQt4.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 92df1def..3b8dfdd0 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -699,9 +699,6 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) - # Make variables changeble to the advanced user - MARK_AS_ADVANCED( QT_INCLUDE_DIR QT_QT_INCLUDE_DIR) - # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) IF (QT_USE_FRAMEWORKS) @@ -718,6 +715,9 @@ IF (QT4_QMAKE_FOUND) ENDIF(Qt4_FIND_REQUIRED) ENDIF( NOT QT_INCLUDE_DIR) + # Make variables changeble to the advanced user + MARK_AS_ADVANCED( QT_INCLUDE_DIR QT_QT_INCLUDE_DIR) + # Set QT_INCLUDES SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) -- cgit v1.2.1 From 5cce6e36faeb9d159c0568c474012aa342ffdd38 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 9 Nov 2009 17:59:42 +0000 Subject: -sort documentation entries better Alex svn path=/trunk/KDE/kdelibs/; revision=1046787 --- modules/FindQt4.cmake | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 3b8dfdd0..73d3dd13 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -210,25 +210,25 @@ # QT_QT_INCLUDE_DIR Path to "include/Qt" # QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" # QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistantClient" # QT_QAXCONTAINER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) # QT_QAXSERVER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) # QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" +# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" # QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" # QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner" -# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" # QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" +# QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" # QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" # QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" # QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" # QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" +# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" # QT_QTSQL_INCLUDE_DIR Path to "include/QtSql" -# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" # QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg" -# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript" # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest" -# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" # QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit" +# QT_QTXML_INCLUDE_DIR Path to "include/QtXml" # QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" # QT_PHONON_INCLUDE_DIR Path to "include/phonon" # QT_QTSCRIPTTOOLS_INCLUDE_DIR Path to "include/QtScriptTools" @@ -247,6 +247,8 @@ # # The QtAssistant library: QT_QTASSISTANT_LIBRARY # +# The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY +# # The QtAxServer library: QT_QAXSERVER_LIBRARY # # The QtAxContainer library: QT_QTAXCONTAINER_LIBRARY @@ -261,6 +263,8 @@ # # The QtGui library: QT_QTGUI_LIBRARY # +# The QtHelp library: QT_QTHELP_LIBRARY +# # The QtMotif library: QT_QTMOTIF_LIBRARY # # The QtNetwork library: QT_QTNETWORK_LIBRARY @@ -269,27 +273,23 @@ # # The QtOpenGL library: QT_QTOPENGL_LIBRARY # -# The QtSql library: QT_QTSQL_LIBRARY +# The QtScript library: QT_QTSCRIPT_LIBRARY # -# The QtXml library: QT_QTXML_LIBRARY +# The QtSql library: QT_QTSQL_LIBRARY # # The QtSvg library: QT_QTSVG_LIBRARY # -# The QtScript library: QT_QTSCRIPT_LIBRARY -# # The QtTest library: QT_QTTEST_LIBRARY # -# The qtmain library for Windows QT_QTMAIN_LIBRARY -# # The QtUiTools library: QT_QTUITOOLS_LIBRARY # -# The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY +# The QtWebKit library: QT_QTWEBKIT_LIBRARY # -# The QtHelp library: QT_QTHELP_LIBRARY +# The QtXml library: QT_QTXML_LIBRARY # -# The QtWebKit library: QT_QTWEBKIT_LIBRARY +# The QtXmlPatterns library: QT_QTXMLPATTERNS_LIBRARY # -# The QtXmlPatterns library: QT_QTXMLPATTERNS_LIBRARY +# The qtmain library for Windows QT_QTMAIN_LIBRARY # # The Phonon library: QT_PHONON_LIBRARY # -- cgit v1.2.1 From d6b3dde8fc9d45ae4171fe2a7c54f5acd79a0ca8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 9 Nov 2009 21:19:02 +0000 Subject: -sync (and probably fix) the ActiveQt detection on Windows Alex svn path=/trunk/KDE/kdelibs/; revision=1046868 --- modules/FindQt4.cmake | 50 ++++++++++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 26 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 73d3dd13..0a9a698d 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -163,8 +163,8 @@ # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. # QT_QTASSISTANT_FOUND True if QtAssistant was found. -# QT_QAXCONTAINER_FOUND True if QAxContainer was found (Windows only). -# QT_QAXSERVER_FOUND True if QAxServer was found (Windows only). +# QT_QAXCONTAINER_FOUND True if QAxContainer was found (Windows only). +# QT_QAXSERVER_FOUND True if QAxServer was found (Windows only). # QT_QTDBUS_FOUND True if QtDBus was found. # QT_QTDESIGNER_FOUND True if QtDesigner was found. # QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. @@ -210,9 +210,9 @@ # QT_QT_INCLUDE_DIR Path to "include/Qt" # QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support" # QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant" -# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistantClient" -# QT_QAXCONTAINER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) -# QT_QAXSERVER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) +# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant" +# QT_QAXCONTAINER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) +# QT_QAXSERVER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only) # QT_QTCORE_INCLUDE_DIR Path to "include/QtCore" # QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus" # QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner" @@ -249,9 +249,9 @@ # # The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY # -# The QtAxServer library: QT_QAXSERVER_LIBRARY +# The QAxServer library: QT_QAXSERVER_LIBRARY # -# The QtAxContainer library: QT_QTAXCONTAINER_LIBRARY +# The QAxContainer library: QT_QAXCONTAINER_LIBRARY # # The QtCore library: QT_QTCORE_LIBRARY # @@ -643,19 +643,17 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH(QT_MODULE) IF(WIN32) - # Set QT_QTAXSERVER_INCLUDE_DIR - FIND_PATH(QT_QTAXSERVER_INCLUDE_DIR QtAxServer - PATHS - ${QT_HEADERS_DIR}/QtAxServer - NO_DEFAULT_PATH - ) - - # Set QT_QTAXCONTAINER_INCLUDE_DIR - FIND_PATH(QT_QTAXCONTAINER_INCLUDE_DIR QtAxContainer - PATHS - ${QT_HEADERS_DIR}/QtAxContainer - NO_DEFAULT_PATH - ) + # Set QT_AXCONTAINER_INCLUDE_DIR and QT_AXSERVER_INCLUDE_DIR + FIND_PATH(QT_QAXCONTAINER_INCLUDE_DIR ActiveQt + PATHS + ${QT_HEADERS_DIR}/ActiveQt + NO_DEFAULT_PATH + ) + FIND_PATH(QT_QAXSERVER_INCLUDE_DIR ActiveQt + PATHS + ${QT_HEADERS_DIR}/ActiveQt + NO_DEFAULT_PATH + ) ENDIF(WIN32) # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR @@ -954,9 +952,9 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient_debug QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) IF(WIN32) - FIND_LIBRARY(QT_QTAXSERVER_LIBRARY NAMES QtAxServer QtAxServer4 QtAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXSERVER_LIBRARY NAMES QAxServer QAxServer4 QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTAXCONTAINER_LIBRARY NAMES QtAxContainer QtAxContainer4 QtAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY NAMES QAxContainer QAxContainer4 QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(WIN32) FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp_debug QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -996,10 +994,10 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTAXSERVER_LIBRARY_RELEASE NAMES QtAxServer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTAXSERVER_LIBRARY_DEBUG NAMES QtAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTAXCONTAINER_LIBRARY_RELEASE NAMES QtAxContainer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTAXCONTAINER_LIBRARY_DEBUG NAMES QtAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXSERVER_LIBRARY_RELEASE NAMES QAxServer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXSERVER_LIBRARY_DEBUG NAMES QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_RELEASE NAMES QAxContainer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_DEBUG NAMES QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From 7bc1b84c664e4c89565151cd63f3faae2281b78d Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Tue, 10 Nov 2009 16:27:15 +0000 Subject: Also look for the nepomukquery lib svn path=/trunk/KDE/kdelibs/; revision=1047170 --- modules/FindNepomuk.cmake | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index deb0c8c6..d86f0b45 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -5,11 +5,12 @@ # NEPOMUK_FOUND - system has Nepomuk # NEPOMUK_INCLUDE_DIR - the Nepomuk include directory # NEPOMUK_LIBRARIES - Link these to use Nepomuk +# NEPOMUK_QUERY_LIBRARIES - Link these to use Nepomuk query # NEPOMUK_DEFINITIONS - Compiler switches required for using Nepomuk # -# Copyright (c) 2008, Sebastian Trueg, +# Copyright (c) 2008-2009, Sebastian Trueg, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -45,6 +46,14 @@ if (Soprano_FOUND) ${LIB_INSTALL_DIR} ) + find_library(NEPOMUK_QUERY_LIBRARIES + NAMES + nepomukquery + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES) endif (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) -- cgit v1.2.1 From 0d813daf3acca07be4e82fcf7d8ebbc76dad299c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 10 Nov 2009 21:08:26 +0000 Subject: the special handling for Apple frameworks should not be necessary, this must be a remnant from old cmake times, it's there since January 2006 (not sure cmake 2.4 was actually already released back then) Mac users: if this breaks finding Qt4 frameworks for you, please let me know Alex svn path=/trunk/KDE/kdelibs/; revision=1047264 --- modules/FindQt4.cmake | 228 +++++++++++++++++++++++++------------------------- 1 file changed, 114 insertions(+), 114 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0a9a698d..483358d6 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -785,9 +785,9 @@ IF (QT4_QMAKE_FOUND) ENDIF("${QT_EDITION}" MATCHES "DesktopLight") - IF (QT_USE_FRAMEWORKS) - SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) - ENDIF (QT_USE_FRAMEWORKS) +# IF (QT_USE_FRAMEWORKS) +# SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) +# ENDIF (QT_USE_FRAMEWORKS) ######################################## # @@ -795,116 +795,116 @@ IF (QT4_QMAKE_FOUND) # ######################################## - IF (QT_USE_FRAMEWORKS) - # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have - # to jump through these hoops. - IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND TRUE) - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - SET(QT_QTCORE_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND TRUE) - SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - SET(QT_QTGUI_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND TRUE) - SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - SET(QT_QT3SUPPORT_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND TRUE) - SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - SET(QT_QTNETWORK_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND TRUE) - SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - SET(QT_QTOPENGL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND TRUE) - SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - SET(QT_QTSQL_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND TRUE) - SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - SET(QT_QTXML_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND TRUE) - SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - SET(QT_QTSVG_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND TRUE) - SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - SET(QT_QTDBUS_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND TRUE) - SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - SET(QT_QTTEST_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) - SET(QT_QTASSISTANTCLIENT_FOUND TRUE) - SET(QT_QTASSISTANTCLIENT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtAssistantClient" CACHE STRING "The QtAssistantClient library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) - SET(QT_QTASSISTANTCLIENT_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) - SET(QT_QTWEBKIT_FOUND TRUE) - SET(QT_QTWEBKIT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtWebKit" CACHE STRING "The QtWebKit library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) - SET(QT_QTWEBKIT_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) - SET(QT_QTXMLPATTERNS_FOUND TRUE) - SET(QT_QTXMLPATTERNS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXmlPatterns" CACHE STRING "The QtXmlPatterns library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) - SET(QT_QTXMLPATTERNS_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) - - IF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) - SET(QT_QTHELP_FOUND TRUE) - SET(QT_QTHELP_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtHelp" CACHE STRING "The QtHelp library.") - ELSE(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) - SET(QT_QTHELP_FOUND FALSE) - ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) - - # WTF? why don't we have frameworks? :P - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) - # Set QT_QTSCRIPTTOOLS_LIBRARY - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtScriptTools QtScriptTools4 PATHS ${QT_LIBRARY_DIR} ) - - ELSE (QT_USE_FRAMEWORKS) +# IF (QT_USE_FRAMEWORKS) +# # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have +# # to jump through these hoops. +# IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) +# SET(QT_QTCORE_FOUND TRUE) +# SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) +# SET(QT_QTCORE_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) +# SET(QT_QTGUI_FOUND TRUE) +# SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) +# SET(QT_QTGUI_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) +# SET(QT_QT3SUPPORT_FOUND TRUE) +# SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) +# SET(QT_QT3SUPPORT_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) +# SET(QT_QTNETWORK_FOUND TRUE) +# SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) +# SET(QT_QTNETWORK_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) +# SET(QT_QTOPENGL_FOUND TRUE) +# SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) +# SET(QT_QTOPENGL_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) +# SET(QT_QTSQL_FOUND TRUE) +# SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) +# SET(QT_QTSQL_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) +# SET(QT_QTXML_FOUND TRUE) +# SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) +# SET(QT_QTXML_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) +# SET(QT_QTSVG_FOUND TRUE) +# SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) +# SET(QT_QTSVG_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) +# SET(QT_QTDBUS_FOUND TRUE) +# SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) +# SET(QT_QTDBUS_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) +# SET(QT_QTTEST_FOUND TRUE) +# SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) +# SET(QT_QTTEST_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) +# SET(QT_QTASSISTANTCLIENT_FOUND TRUE) +# SET(QT_QTASSISTANTCLIENT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtAssistantClient" CACHE STRING "The QtAssistantClient library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) +# SET(QT_QTASSISTANTCLIENT_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) +# SET(QT_QTWEBKIT_FOUND TRUE) +# SET(QT_QTWEBKIT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtWebKit" CACHE STRING "The QtWebKit library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) +# SET(QT_QTWEBKIT_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) +# SET(QT_QTXMLPATTERNS_FOUND TRUE) +# SET(QT_QTXMLPATTERNS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXmlPatterns" CACHE STRING "The QtXmlPatterns library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) +# SET(QT_QTXMLPATTERNS_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) +# +# IF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) +# SET(QT_QTHELP_FOUND TRUE) +# SET(QT_QTHELP_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtHelp" CACHE STRING "The QtHelp library.") +# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) +# SET(QT_QTHELP_FOUND FALSE) +# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) +# +# # WTF? why don't we have frameworks? :P +# # Set QT_QTUITOOLS_LIBRARY +# FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) +# # Set QT_QTSCRIPT_LIBRARY +# FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) +# # Set QT_QTSCRIPTTOOLS_LIBRARY +# FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtScriptTools QtScriptTools4 PATHS ${QT_LIBRARY_DIR} ) +# +# ELSE (QT_USE_FRAMEWORKS) # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 QtCore_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) @@ -1007,7 +1007,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_RELEASE NAMES QtScriptTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_DEBUG NAMES QtScriptToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(MSVC) - ENDIF (QT_USE_FRAMEWORKS) +# ENDIF (QT_USE_FRAMEWORKS) IF( NOT QT_QTCORE_LIBRARY ) IF(Qt4_FIND_REQUIRED) -- cgit v1.2.1 From 908cc003b04239709159ce311f060d4978c9dc09 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 12 Nov 2009 17:53:02 +0000 Subject: -remove commented out code for Apple, which was not necessary anymore (since a long time probably) -nicer formatting for the MSVC detection stuff -no functional changes Alex svn path=/trunk/KDE/kdelibs/; revision=1048068 --- modules/FindQt4.cmake | 287 ++++++++++++++++---------------------------------- 1 file changed, 88 insertions(+), 199 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 483358d6..9318448e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -784,7 +784,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_EDITION_DESKTOPLIGHT 1) ENDIF("${QT_EDITION}" MATCHES "DesktopLight") - +# Remove this when nobody comes and complains that it doesn't build for him on mac until 31.12.2009: # IF (QT_USE_FRAMEWORKS) # SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) # ENDIF (QT_USE_FRAMEWORKS) @@ -795,219 +795,108 @@ IF (QT4_QMAKE_FOUND) # ######################################## -# IF (QT_USE_FRAMEWORKS) -# # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have -# # to jump through these hoops. -# IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) -# SET(QT_QTCORE_FOUND TRUE) -# SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) -# SET(QT_QTCORE_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) -# SET(QT_QTGUI_FOUND TRUE) -# SET(QT_QTGUI_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) -# SET(QT_QTGUI_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) -# SET(QT_QT3SUPPORT_FOUND TRUE) -# SET(QT_QT3SUPPORT_LIBRARY "-F${QT_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) -# SET(QT_QT3SUPPORT_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) -# SET(QT_QTNETWORK_FOUND TRUE) -# SET(QT_QTNETWORK_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) -# SET(QT_QTNETWORK_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) -# SET(QT_QTOPENGL_FOUND TRUE) -# SET(QT_QTOPENGL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) -# SET(QT_QTOPENGL_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) -# SET(QT_QTSQL_FOUND TRUE) -# SET(QT_QTSQL_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) -# SET(QT_QTSQL_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) -# SET(QT_QTXML_FOUND TRUE) -# SET(QT_QTXML_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) -# SET(QT_QTXML_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) -# SET(QT_QTSVG_FOUND TRUE) -# SET(QT_QTSVG_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) -# SET(QT_QTSVG_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) -# SET(QT_QTDBUS_FOUND TRUE) -# SET(QT_QTDBUS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) -# SET(QT_QTDBUS_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) -# SET(QT_QTTEST_FOUND TRUE) -# SET(QT_QTTEST_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) -# SET(QT_QTTEST_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) -# SET(QT_QTASSISTANTCLIENT_FOUND TRUE) -# SET(QT_QTASSISTANTCLIENT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtAssistantClient" CACHE STRING "The QtAssistantClient library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) -# SET(QT_QTASSISTANTCLIENT_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtAssistantClient.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) -# SET(QT_QTWEBKIT_FOUND TRUE) -# SET(QT_QTWEBKIT_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtWebKit" CACHE STRING "The QtWebKit library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) -# SET(QT_QTWEBKIT_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtWebKit.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) -# SET(QT_QTXMLPATTERNS_FOUND TRUE) -# SET(QT_QTXMLPATTERNS_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtXmlPatterns" CACHE STRING "The QtXmlPatterns library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) -# SET(QT_QTXMLPATTERNS_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXmlPatterns.framework) -# -# IF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) -# SET(QT_QTHELP_FOUND TRUE) -# SET(QT_QTHELP_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtHelp" CACHE STRING "The QtHelp library.") -# ELSE(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) -# SET(QT_QTHELP_FOUND FALSE) -# ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtHelp.framework) -# -# # WTF? why don't we have frameworks? :P -# # Set QT_QTUITOOLS_LIBRARY -# FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) -# # Set QT_QTSCRIPT_LIBRARY -# FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) -# # Set QT_QTSCRIPTTOOLS_LIBRARY -# FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtScriptTools QtScriptTools4 PATHS ${QT_LIBRARY_DIR} ) -# -# ELSE (QT_USE_FRAMEWORKS) - - # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 QtCore_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support_debug Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename + FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 QtCore_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui_debug QtGui_debug QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QT3SUPPORT_LIBRARY + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support_debug Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTMOTIF_LIBRARY - IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(Q_WS_X11) + # Set QT_QTGUI_LIBRARY + FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui_debug QtGui_debug QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork_debug QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTMOTIF_LIBRARY + IF(Q_WS_X11) + FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(Q_WS_X11) - # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTNETWORK_LIBRARY + FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork_debug QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL_debug QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTNSPLUGIN_LIBRARY + FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql_debug QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTOPENGL_LIBRARY + FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL_debug QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml_debug QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTSQL_LIBRARY + FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql_debug QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg_debug QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTXML_LIBRARY + FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml_debug QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript_debug QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTSVG_LIBRARY + FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg_debug QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools_debug QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript_debug QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest_debug QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools_debug QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus_debug QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTTEST_LIBRARY + FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest_debug QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient_debug QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus_debug QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - IF(WIN32) - FIND_LIBRARY(QT_QAXSERVER_LIBRARY NAMES QAxServer QAxServer4 QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY NAMES QAxContainer QAxContainer4 QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(WIN32) - - FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp_debug QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTWEBKIT_LIBRARY NAMES QtWebKit QtWebKit_debug QtWebKit4 QtWebKitd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTXMLPATTERNS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_PHONON_LIBRARY NAMES phonon phonon4 phonon_debug phonond4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - IF(MSVC) - FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_RELEASE NAMES QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXSERVER_LIBRARY_RELEASE NAMES QAxServer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXSERVER_LIBRARY_DEBUG NAMES QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_RELEASE NAMES QAxContainer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_DEBUG NAMES QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_RELEASE NAMES QtScriptTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_DEBUG NAMES QtScriptToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(MSVC) -# ENDIF (QT_USE_FRAMEWORKS) + FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient_debug QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + IF(WIN32) + FIND_LIBRARY(QT_QAXSERVER_LIBRARY NAMES QAxServer QAxServer4 QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY NAMES QAxContainer QAxContainer4 QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(WIN32) + + FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp_debug QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTWEBKIT_LIBRARY NAMES QtWebKit QtWebKit_debug QtWebKit4 QtWebKitd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTXMLPATTERNS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_PHONON_LIBRARY NAMES phonon phonon4 phonon_debug phonond4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + IF(MSVC) + FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_RELEASE NAMES QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXSERVER_LIBRARY_RELEASE NAMES QAxServer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXSERVER_LIBRARY_DEBUG NAMES QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_RELEASE NAMES QAxContainer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_DEBUG NAMES QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_RELEASE NAMES QtScriptTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_DEBUG NAMES QtScriptToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF(MSVC) IF( NOT QT_QTCORE_LIBRARY ) IF(Qt4_FIND_REQUIRED) -- cgit v1.2.1 From 784fe8d3eb8d105f16f02cb44d6d122f8e5542f8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 12 Nov 2009 17:56:28 +0000 Subject: -also search for qmake-mac, which is used as name for qmake by macports (http://lists.kde.org/?l=kde-core-devel&m=125797773120427&w=2) Alex svn path=/trunk/KDE/kdelibs/; revision=1048069 --- modules/FindQt4.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 9318448e..47591692 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -414,7 +414,9 @@ ENDMACRO(QT_QUERY_QMAKE) GET_FILENAME_COMPONENT(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME) # check for qmake -FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS +# Debian uses qmake-qt4 +# macports' Qt uses qmake-mac +FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 qmake-mac PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin" -- cgit v1.2.1 From 08df9dc8dccab6d7e92dd84501c8fdeebbeea454 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 12 Nov 2009 18:15:10 +0000 Subject: search for onto2vocabularyclass, and use the found executable with full path in the add_ontologies() macro (should make kdelibs dashboard build again) Alex svn path=/trunk/KDE/kdelibs/; revision=1048079 --- modules/FindSoprano.cmake | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 29331cf9..91148c14 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -3,6 +3,8 @@ # # Sets the following variables: # Soprano_FOUND - true is Soprano has been found +# SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE - the onto2vocabularyclass program, required for adding ontologies +# SOPRANO_SOPRANOCMD_EXECUTABLE - the sopranocmd program # SOPRANO_INCLUDE_DIR - The include directory # SOPRANO_LIBRARIES - The Soprano core library to link to (libsoprano) # SOPRANO_INDEX_LIBRARIES - The Soprano index library (libsopranoindex) @@ -39,6 +41,21 @@ #else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) include(FindLibraryWithDebug) + find_program(SOPRANO_SOPRANOCMD_EXECUTABLE + NAMES sopranocmd + HINTS + ${BIN_INSTALL_DIR} + ${KDE4_BIN_INSTALL_DIR} + ) + + find_program(SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE + NAMES onto2vocabularyclass + HINTS + ${BIN_INSTALL_DIR} + ${KDE4_BIN_INSTALL_DIR} + ) + + find_path(SOPRANO_INCLUDE_DIR NAMES soprano/soprano.h @@ -227,6 +244,8 @@ mark_as_advanced(SOPRANO_CLIENT_LIBRARIES SOPRANO_INCLUDE_DIR SOPRANO_PLUGIN_DIR _SOPRANO_MACRO_FILE + SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE + SOPRANO_SOPRANOCMD_EXECUTABLE ) #endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) -- cgit v1.2.1 From 9ad287debff9c4d5b1f48d3b503767ea09d7c062 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= Date: Thu, 12 Nov 2009 19:19:18 +0000 Subject: Run tests from IDE. $(OutDir) must be expanded by ctest: http://www.cmake.org/pipermail/cmake/2006-January/008061.html svn path=/trunk/KDE/kdelibs/; revision=1048124 --- modules/KDE4Macros.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 2174427b..c4ddedc9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -803,6 +803,9 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) if(WIN32) get_target_property( loc ${_targetName} LOCATION ) + if(MSVC_IDE) + STRING(REGEX REPLACE "\\$\\(.*\\)" "\${CTEST_CONFIGURATION_TYPE}" loc "${loc}") + endif() # .bat because of rpath handling set(_executable ${loc}.bat) else(WIN32) -- cgit v1.2.1 From 408fad1ec96239cfe55cdd3755cf5dbc4fe8e772 Mon Sep 17 00:00:00 2001 From: Tobias Koenig Date: Fri, 13 Nov 2009 16:31:40 +0000 Subject: Make sure the NEPOMUK_QUERY_LIBRARIES are found as well svn path=/trunk/KDE/kdelibs/; revision=1048625 --- modules/FindNepomuk.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index d86f0b45..b406068c 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -24,12 +24,12 @@ endif (NOT DEFINED Soprano_FOUND) if (Soprano_FOUND) set (NEPOMUK_FIND_REQUIRED ${Nepomuk_FIND_REQUIRED}) - if (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + if (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES AND NEPOMUK_QUERY_LIBRARIES) # Already in cache, be silent set(NEPOMUK_FIND_QUIETLY TRUE) - else (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + else (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES AND NEPOMUK_QUERY_LIBRARIES) find_path(NEPOMUK_INCLUDE_DIR NAMES nepomuk/global.h @@ -56,7 +56,7 @@ if (Soprano_FOUND) mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES) - endif (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES) + endif (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES AND NEPOMUK_QUERY_LIBRARIES) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(NEPOMUK DEFAULT_MSG -- cgit v1.2.1 From 14509a5fab6ac84d825b8fc834633d37c524232f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 15 Nov 2009 18:08:02 +0000 Subject: -more syncing with cmake: split some logic of FindQt4.cmake into separate files Qt4Macros.cmake and Qt4ConfigDependentSettings.cmake, which are automatically included by FindQt4.cmake. -no functional changes Alex svn path=/trunk/KDE/kdelibs/; revision=1049722 --- modules/FindQt4.cmake | 403 +----------------------------- modules/Qt4ConfigDependentSettings.cmake | 32 +++ modules/Qt4Macros.cmake | 414 +++++++++++++++++++++++++++++++ 3 files changed, 453 insertions(+), 396 deletions(-) create mode 100644 modules/Qt4ConfigDependentSettings.cmake create mode 100644 modules/Qt4Macros.cmake (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 47591692..1f1a429c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1102,399 +1102,17 @@ IF (QT4_QMAKE_FOUND) QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE QT_LUPDATE_EXECUTABLE QT_LRELEASE_EXECUTABLE QT_QCOLLECTIONGENERATOR_EXECUTABLE) + + # get the directory of the current file, used later on in the file + GET_FILENAME_COMPONENT( _qt4_current_dir "${CMAKE_CURRENT_LIST_FILE}" PATH) + ###################################### # # Macros for building Qt files # ###################################### - MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options) - SET(${_qt4_files}) - SET(${_qt4_options}) - SET(_QT4_DOING_OPTIONS FALSE) - FOREACH(_currentArg ${ARGN}) - IF ("${_currentArg}" STREQUAL "OPTIONS") - SET(_QT4_DOING_OPTIONS TRUE) - ELSE ("${_currentArg}" STREQUAL "OPTIONS") - IF(_QT4_DOING_OPTIONS) - LIST(APPEND ${_qt4_options} "${_currentArg}") - ELSE(_QT4_DOING_OPTIONS) - LIST(APPEND ${_qt4_files} "${_currentArg}") - ENDIF(_QT4_DOING_OPTIONS) - ENDIF ("${_currentArg}" STREQUAL "OPTIONS") - ENDFOREACH(_currentArg) - ENDMACRO (QT4_EXTRACT_OPTIONS) - - # macro used to create the names of output files preserving relative dirs - MACRO (QT4_MAKE_OUTPUT_FILE infile prefix ext outfile ) - STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength) - STRING(LENGTH ${infile} _infileLength) - SET(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR}) - IF(_infileLength GREATER _binlength) - STRING(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile) - IF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") - FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile}) - ELSE(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") - FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) - ENDIF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") - ELSE(_infileLength GREATER _binlength) - FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) - ENDIF(_infileLength GREATER _binlength) - IF(WIN32 AND rel MATCHES "^[a-zA-Z]:") # absolute path - STRING(REGEX REPLACE "^([a-zA-Z]):(.*)$" "\\1_\\2" rel "${rel}") - ENDIF(WIN32 AND rel MATCHES "^[a-zA-Z]:") - SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}") - STRING(REPLACE ".." "__" _outfile ${_outfile}) - GET_FILENAME_COMPONENT(outpath ${_outfile} PATH) - GET_FILENAME_COMPONENT(_outfile ${_outfile} NAME_WE) - FILE(MAKE_DIRECTORY ${outpath}) - SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext}) - ENDMACRO (QT4_MAKE_OUTPUT_FILE ) - - MACRO (QT4_GET_MOC_FLAGS _moc_flags) - SET(${_moc_flags}) - GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) - - FOREACH(_current ${_inc_DIRS}) - IF("${_current}" MATCHES ".framework/?$") - STRING(REGEX REPLACE "/[^/]+.framework" "" framework_path "${_current}") - SET(${_moc_flags} ${${_moc_flags}} "-F${framework_path}") - ELSE("${_current}" MATCHES ".framework/?$") - SET(${_moc_flags} ${${_moc_flags}} "-I${_current}") - ENDIF("${_current}" MATCHES ".framework/?$") - ENDFOREACH(_current ${_inc_DIRS}) - - GET_DIRECTORY_PROPERTY(_defines COMPILE_DEFINITIONS) - FOREACH(_current ${_defines}) - SET(${_moc_flags} ${${_moc_flags}} "-D${_current}") - ENDFOREACH(_current ${_defines}) - - IF(Q_WS_WIN) - SET(${_moc_flags} ${${_moc_flags}} -DWIN32) - ENDIF(Q_WS_WIN) - - ENDMACRO(QT4_GET_MOC_FLAGS) - - # helper macro to set up a moc rule - MACRO (QT4_CREATE_MOC_COMMAND infile outfile moc_flags moc_options) - # For Windows, create a parameters file to work around command line length limit - IF (WIN32) - # Pass the parameters in a file. Set the working directory to - # be that containing the parameters file and reference it by - # just the file name. This is necessary because the moc tool on - # MinGW builds does not seem to handle spaces in the path to the - # file given with the @ syntax. - GET_FILENAME_COMPONENT(_moc_outfile_name "${outfile}" NAME) - GET_FILENAME_COMPONENT(_moc_outfile_dir "${outfile}" PATH) - IF(_moc_outfile_dir) - SET(_moc_working_dir WORKING_DIRECTORY ${_moc_outfile_dir}) - ENDIF(_moc_outfile_dir) - SET (_moc_parameters_file ${outfile}_parameters) - SET (_moc_parameters ${moc_flags} ${moc_options} -o "${outfile}" "${infile}") - FILE (REMOVE ${_moc_parameters_file}) - FOREACH(arg ${_moc_parameters}) - FILE (APPEND ${_moc_parameters_file} "${arg}\n") - ENDFOREACH(arg) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} @${_moc_outfile_name}_parameters - DEPENDS ${infile} - ${_moc_working_dir} - VERBATIM) - ELSE (WIN32) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_flags} ${moc_options} -o ${outfile} ${infile} - DEPENDS ${infile}) - ENDIF (WIN32) - ENDMACRO (QT4_CREATE_MOC_COMMAND) - - - MACRO (QT4_GENERATE_MOC infile outfile ) - # get include dirs and flags - QT4_GET_MOC_FLAGS(moc_flags) - GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - QT4_CREATE_MOC_COMMAND(${abs_infile} ${outfile} "${moc_flags}" "") - SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file - - MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) - ENDMACRO (QT4_GENERATE_MOC) - - - # QT4_WRAP_CPP(outfiles inputfile ... ) - - MACRO (QT4_WRAP_CPP outfiles ) - # get include dirs - QT4_GET_MOC_FLAGS(moc_flags) - QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN}) - - FOREACH (it ${moc_files}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - QT4_MAKE_OUTPUT_FILE(${it} moc_ cxx outfile) - QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}") - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) - - ENDMACRO (QT4_WRAP_CPP) - - - # QT4_WRAP_UI(outfiles inputfile ... ) - - MACRO (QT4_WRAP_UI outfiles ) - QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN}) - - FOREACH (it ${ui_files}) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_UIC_EXECUTABLE} - ARGS ${ui_options} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_WRAP_UI) - - - # QT4_ADD_RESOURCES(outfiles inputfile ... ) - - MACRO (QT4_ADD_RESOURCES outfiles ) - QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN}) - - FOREACH (it ${rcc_files}) - GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) - GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(rc_path ${infile} PATH) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) - # parse file for dependencies - # all files are absolute paths or relative to the location of the qrc file - FILE(READ "${infile}" _RC_FILE_CONTENTS) - STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") - STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}") - IF(NOT _ABS_PATH_INDICATOR) - SET(_RC_FILE "${rc_path}/${_RC_FILE}") - ENDIF(NOT _ABS_PATH_INDICATOR) - SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}") - ENDFOREACH(_RC_FILE) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND ${QT_RCC_EXECUTABLE} - ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS}) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH (it) - - ENDMACRO (QT4_ADD_RESOURCES) - - MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) - GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - GET_SOURCE_FILE_PROPERTY(_nonamespace ${_interface} NO_NAMESPACE) - IF ( _nonamespace ) - SET(_params -N -m) - ELSE ( _nonamespace ) - SET(_params -m) - ENDIF ( _nonamespace ) - - GET_SOURCE_FILE_PROPERTY(_classname ${_interface} CLASSNAME) - IF ( _classname ) - SET(_params ${_params} -c ${_classname}) - ENDIF ( _classname ) - - GET_SOURCE_FILE_PROPERTY(_include ${_interface} INCLUDE) - IF ( _include ) - SET(_params ${_params} -i ${_include}) - ENDIF ( _include ) - - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} -p ${_basename} ${_infile} - DEPENDS ${_infile}) - - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - - QT4_GENERATE_MOC(${_header} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - ENDMACRO(QT4_ADD_DBUS_INTERFACE) - - - MACRO(QT4_ADD_DBUS_INTERFACES _sources) - FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE) - # get the part before the ".xml" suffix - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) - STRING(TOLOWER ${_basename} _basename) - QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_DBUS_INTERFACES) - - - MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName OPTIONS -some -options ) - QT4_EXTRACT_OPTIONS(_customName _qt4_dbus_options ${ARGN}) - - GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) - GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) - - IF (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) - ELSE (_customName) - SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) - ENDIF (_customName) - - ADD_CUSTOM_COMMAND(OUTPUT ${_target} - COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_qt4_dbus_options} ${_in_file} -o ${_target} - DEPENDS ${_in_file} - ) - ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) - - - MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename _optionalClassName) - GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) - - SET(_optionalBasename "${ARGV4}") - IF (_optionalBasename) - SET(_basename ${_optionalBasename} ) - ELSE (_optionalBasename) - STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) - STRING(TOLOWER ${_basename} _basename) - ENDIF (_optionalBasename) - - SET(_optionalClassName "${ARGV5}") - SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) - SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) - - IF(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ELSE(_optionalClassName) - ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} - COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} - DEPENDS ${_infile} - ) - ENDIF(_optionalClassName) - - QT4_GENERATE_MOC(${_header} ${_moc}) - SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) - MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) - - SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) - ENDMACRO(QT4_ADD_DBUS_ADAPTOR) - - MACRO(QT4_AUTOMOC) - QT4_GET_MOC_FLAGS(_moc_INCS) - - SET(_matching_FILES ) - FOREACH (_current_FILE ${ARGN}) - - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. - # This is required to make uic work correctly: - # we need to add generated .cpp files to the sources (to compile them), - # but we cannot let automoc handle them, as the .cpp files don't exist yet when - # cmake is run for the very first time on them -> however the .cpp files might - # exist at a later run. at that time we need to skip them, so that we don't add two - # different rules for the same moc file - GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) - - IF ( NOT _skip AND EXISTS ${_abs_FILE} ) - - FILE(READ ${_abs_FILE} _contents) - - GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) - - STRING(REGEX MATCHALL "# *include +[^ ]+\\.moc[\">]" _match "${_contents}") - IF(_match) - FOREACH (_current_MOC_INC ${_match}) - STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") - - GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) - IF(EXISTS ${_abs_PATH}/${_basename}.hpp) - SET(_header ${_abs_PATH}/${_basename}.hpp) - ELSE(EXISTS ${_abs_PATH}/${_basename}.hpp) - SET(_header ${_abs_PATH}/${_basename}.h) - ENDIF(EXISTS ${_abs_PATH}/${_basename}.hpp) - SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) - QT4_CREATE_MOC_COMMAND(${_header} ${_moc} "${_moc_INCS}" "") - MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) - ENDFOREACH (_current_MOC_INC) - ENDIF(_match) - ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_AUTOMOC) - - MACRO(QT4_CREATE_TRANSLATION _qm_files) - QT4_EXTRACT_OPTIONS(_lupdate_files _lupdate_options ${ARGN}) - SET(_my_sources) - SET(_my_dirs) - SET(_my_tsfiles) - SET(_ts_pro) - FOREACH (_file ${_lupdate_files}) - GET_FILENAME_COMPONENT(_ext ${_file} EXT) - GET_FILENAME_COMPONENT(_abs_FILE ${_file} ABSOLUTE) - IF(_ext MATCHES "ts") - LIST(APPEND _my_tsfiles ${_abs_FILE}) - ELSE(_ext MATCHES "ts") - IF(NOT _ext) - LIST(APPEND _my_dirs ${_abs_FILE}) - ELSE(NOT _ext) - LIST(APPEND _my_sources ${_abs_FILE}) - ENDIF(NOT _ext) - ENDIF(_ext MATCHES "ts") - ENDFOREACH(_file) - FOREACH(_ts_file ${_my_tsfiles}) - IF(_my_sources) - # make a .pro file to call lupdate on, so we don't make our commands too - # long for some systems - GET_FILENAME_COMPONENT(_ts_name ${_ts_file} NAME_WE) - SET(_ts_pro ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${_ts_name}_lupdate.pro) - SET(_pro_srcs) - FOREACH(_pro_src ${_my_sources}) - SET(_pro_srcs "${_pro_srcs} \"${_pro_src}\"") - ENDFOREACH(_pro_src ${_my_sources}) - FILE(WRITE ${_ts_pro} "SOURCES = ${_pro_srcs}") - ENDIF(_my_sources) - ADD_CUSTOM_COMMAND(OUTPUT ${_ts_file} - COMMAND ${QT_LUPDATE_EXECUTABLE} - ARGS ${_lupdate_options} ${_ts_pro} ${_my_dirs} -ts ${_ts_file} - DEPENDS ${_my_sources} ${_ts_pro}) - ENDFOREACH(_ts_file) - QT4_ADD_TRANSLATION(${_qm_files} ${_my_tsfiles}) - ENDMACRO(QT4_CREATE_TRANSLATION) - - MACRO(QT4_ADD_TRANSLATION _qm_files) - FOREACH (_current_FILE ${ARGN}) - GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) - GET_FILENAME_COMPONENT(qm ${_abs_FILE} NAME_WE) - GET_SOURCE_FILE_PROPERTY(output_location ${_abs_FILE} OUTPUT_LOCATION) - IF(output_location) - FILE(MAKE_DIRECTORY "${output_location}") - SET(qm "${output_location}/${qm}.qm") - ELSE(output_location) - SET(qm "${CMAKE_CURRENT_BINARY_DIR}/${qm}.qm") - ENDIF(output_location) - - ADD_CUSTOM_COMMAND(OUTPUT ${qm} - COMMAND ${QT_LRELEASE_EXECUTABLE} - ARGS ${_abs_FILE} -qm ${qm} - DEPENDS ${_abs_FILE} - ) - SET(${_qm_files} ${${_qm_files}} ${qm}) - ENDFOREACH (_current_FILE) - ENDMACRO(QT4_ADD_TRANSLATION) - - - + INCLUDE("${_qt4_current_dir}/Qt4Macros.cmake") ###################################### @@ -1543,15 +1161,8 @@ IF (QT4_QMAKE_FOUND) # configuration/system dependent settings # ############################################### - # for unix add X11 stuff - IF(UNIX) - # on OS X X11 may not be required - IF (Q_WS_X11) - FIND_PACKAGE(X11 REQUIRED) - ENDIF (Q_WS_X11) - FIND_PACKAGE(Threads) - SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) - ENDIF(UNIX) + + INCLUDE("${_qt4_current_dir}/Qt4ConfigDependentSettings.cmake") ####################################### diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake new file mode 100644 index 00000000..4aac513a --- /dev/null +++ b/modules/Qt4ConfigDependentSettings.cmake @@ -0,0 +1,32 @@ +# This file is included by FindQt4.cmake, don't include it directly. + +#============================================================================= +# Copyright 2005-2009 Kitware, Inc. +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distributed this file outside of CMake, substitute the full +# License text for the above reference.) + + +############################################### +# +# configuration/system dependent settings +# +############################################### + +# for unix add X11 stuff +IF(UNIX) + # on OS X X11 may not be required + IF (Q_WS_X11) + FIND_PACKAGE(X11 REQUIRED) + ENDIF (Q_WS_X11) + FIND_PACKAGE(Threads) + SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) +ENDIF(UNIX) + diff --git a/modules/Qt4Macros.cmake b/modules/Qt4Macros.cmake new file mode 100644 index 00000000..1422c592 --- /dev/null +++ b/modules/Qt4Macros.cmake @@ -0,0 +1,414 @@ +# This file is included by FindQt4.cmake, don't include it directly. + +#============================================================================= +# Copyright 2005-2009 Kitware, Inc. +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distributed this file outside of CMake, substitute the full +# License text for the above reference.) + + +###################################### +# +# Macros for building Qt files +# +###################################### + + +MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options) + SET(${_qt4_files}) + SET(${_qt4_options}) + SET(_QT4_DOING_OPTIONS FALSE) + FOREACH(_currentArg ${ARGN}) + IF ("${_currentArg}" STREQUAL "OPTIONS") + SET(_QT4_DOING_OPTIONS TRUE) + ELSE ("${_currentArg}" STREQUAL "OPTIONS") + IF(_QT4_DOING_OPTIONS) + LIST(APPEND ${_qt4_options} "${_currentArg}") + ELSE(_QT4_DOING_OPTIONS) + LIST(APPEND ${_qt4_files} "${_currentArg}") + ENDIF(_QT4_DOING_OPTIONS) + ENDIF ("${_currentArg}" STREQUAL "OPTIONS") + ENDFOREACH(_currentArg) +ENDMACRO (QT4_EXTRACT_OPTIONS) + + +# macro used to create the names of output files preserving relative dirs +MACRO (QT4_MAKE_OUTPUT_FILE infile prefix ext outfile ) + STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength) + STRING(LENGTH ${infile} _infileLength) + SET(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR}) + IF(_infileLength GREATER _binlength) + STRING(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile) + IF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") + FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile}) + ELSE(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") + FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) + ENDIF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") + ELSE(_infileLength GREATER _binlength) + FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile}) + ENDIF(_infileLength GREATER _binlength) + IF(WIN32 AND rel MATCHES "^[a-zA-Z]:") # absolute path + STRING(REGEX REPLACE "^([a-zA-Z]):(.*)$" "\\1_\\2" rel "${rel}") + ENDIF(WIN32 AND rel MATCHES "^[a-zA-Z]:") + SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}") + STRING(REPLACE ".." "__" _outfile ${_outfile}) + GET_FILENAME_COMPONENT(outpath ${_outfile} PATH) + GET_FILENAME_COMPONENT(_outfile ${_outfile} NAME_WE) + FILE(MAKE_DIRECTORY ${outpath}) + SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext}) +ENDMACRO (QT4_MAKE_OUTPUT_FILE ) + + +MACRO (QT4_GET_MOC_FLAGS _moc_flags) + SET(${_moc_flags}) + GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES) + + FOREACH(_current ${_inc_DIRS}) + IF("${_current}" MATCHES ".framework/?$") + STRING(REGEX REPLACE "/[^/]+.framework" "" framework_path "${_current}") + SET(${_moc_flags} ${${_moc_flags}} "-F${framework_path}") + ELSE("${_current}" MATCHES ".framework/?$") + SET(${_moc_flags} ${${_moc_flags}} "-I${_current}") + ENDIF("${_current}" MATCHES ".framework/?$") + ENDFOREACH(_current ${_inc_DIRS}) + + GET_DIRECTORY_PROPERTY(_defines COMPILE_DEFINITIONS) + FOREACH(_current ${_defines}) + SET(${_moc_flags} ${${_moc_flags}} "-D${_current}") + ENDFOREACH(_current ${_defines}) + + IF(Q_WS_WIN) + SET(${_moc_flags} ${${_moc_flags}} -DWIN32) + ENDIF(Q_WS_WIN) + +ENDMACRO(QT4_GET_MOC_FLAGS) + + +# helper macro to set up a moc rule +MACRO (QT4_CREATE_MOC_COMMAND infile outfile moc_flags moc_options) + # For Windows, create a parameters file to work around command line length limit + IF (WIN32) + # Pass the parameters in a file. Set the working directory to + # be that containing the parameters file and reference it by + # just the file name. This is necessary because the moc tool on + # MinGW builds does not seem to handle spaces in the path to the + # file given with the @ syntax. + GET_FILENAME_COMPONENT(_moc_outfile_name "${outfile}" NAME) + GET_FILENAME_COMPONENT(_moc_outfile_dir "${outfile}" PATH) + IF(_moc_outfile_dir) + SET(_moc_working_dir WORKING_DIRECTORY ${_moc_outfile_dir}) + ENDIF(_moc_outfile_dir) + SET (_moc_parameters_file ${outfile}_parameters) + SET (_moc_parameters ${moc_flags} ${moc_options} -o "${outfile}" "${infile}") + FILE (REMOVE ${_moc_parameters_file}) + FOREACH(arg ${_moc_parameters}) + FILE (APPEND ${_moc_parameters_file} "${arg}\n") + ENDFOREACH(arg) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} @${_moc_outfile_name}_parameters + DEPENDS ${infile} + ${_moc_working_dir} + VERBATIM) + ELSE (WIN32) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_flags} ${moc_options} -o ${outfile} ${infile} + DEPENDS ${infile}) + ENDIF (WIN32) +ENDMACRO (QT4_CREATE_MOC_COMMAND) + + +MACRO (QT4_GENERATE_MOC infile outfile ) +# get include dirs and flags + QT4_GET_MOC_FLAGS(moc_flags) + GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) + QT4_CREATE_MOC_COMMAND(${abs_infile} ${outfile} "${moc_flags}" "") + SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file + + MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile}) +ENDMACRO (QT4_GENERATE_MOC) + + +# QT4_WRAP_CPP(outfiles inputfile ... ) + +MACRO (QT4_WRAP_CPP outfiles ) + # get include dirs + QT4_GET_MOC_FLAGS(moc_flags) + QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN}) + + FOREACH (it ${moc_files}) + GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) + QT4_MAKE_OUTPUT_FILE(${it} moc_ cxx outfile) + QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}") + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH(it) + +ENDMACRO (QT4_WRAP_CPP) + + +# QT4_WRAP_UI(outfiles inputfile ... ) + +MACRO (QT4_WRAP_UI outfiles ) + QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN}) + + FOREACH (it ${ui_files}) + GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_UIC_EXECUTABLE} + ARGS ${ui_options} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + +ENDMACRO (QT4_WRAP_UI) + + +# QT4_ADD_RESOURCES(outfiles inputfile ... ) + +MACRO (QT4_ADD_RESOURCES outfiles ) + QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN}) + + FOREACH (it ${rcc_files}) + GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) + GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE) + GET_FILENAME_COMPONENT(rc_path ${infile} PATH) + SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) + # parse file for dependencies + # all files are absolute paths or relative to the location of the qrc file + FILE(READ "${infile}" _RC_FILE_CONTENTS) + STRING(REGEX MATCHALL "]*>" "" _RC_FILE "${_RC_FILE}") + STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}") + IF(NOT _ABS_PATH_INDICATOR) + SET(_RC_FILE "${rc_path}/${_RC_FILE}") + ENDIF(NOT _ABS_PATH_INDICATOR) + SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}") + ENDFOREACH(_RC_FILE) + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_RCC_EXECUTABLE} + ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile} + MAIN_DEPENDENCY ${infile} + DEPENDS ${_RC_DEPENDS}) + SET(${outfiles} ${${outfiles}} ${outfile}) + ENDFOREACH (it) + +ENDMACRO (QT4_ADD_RESOURCES) + + +MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename) + GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE) + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + GET_SOURCE_FILE_PROPERTY(_nonamespace ${_interface} NO_NAMESPACE) + IF ( _nonamespace ) + SET(_params -N -m) + ELSE ( _nonamespace ) + SET(_params -m) + ENDIF ( _nonamespace ) + + GET_SOURCE_FILE_PROPERTY(_classname ${_interface} CLASSNAME) + IF ( _classname ) + SET(_params ${_params} -c ${_classname}) + ENDIF ( _classname ) + + GET_SOURCE_FILE_PROPERTY(_include ${_interface} INCLUDE) + IF ( _include ) + SET(_params ${_params} -i ${_include}) + ENDIF ( _include ) + + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} -p ${_basename} ${_infile} + DEPENDS ${_infile}) + + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + + QT4_GENERATE_MOC(${_header} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + +ENDMACRO(QT4_ADD_DBUS_INTERFACE) + + +MACRO(QT4_ADD_DBUS_INTERFACES _sources) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE) + # get the part before the ".xml" suffix + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE}) + STRING(TOLOWER ${_basename} _basename) + QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface) + ENDFOREACH (_current_FILE) +ENDMACRO(QT4_ADD_DBUS_INTERFACES) + + +MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName OPTIONS -some -options ) + QT4_EXTRACT_OPTIONS(_customName _qt4_dbus_options ${ARGN}) + + GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE) + + IF (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName}) + ELSE (_customName) + SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml) + ENDIF (_customName) + + ADD_CUSTOM_COMMAND(OUTPUT ${_target} + COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_qt4_dbus_options} ${_in_file} -o ${_target} + DEPENDS ${_in_file} + ) +ENDMACRO(QT4_GENERATE_DBUS_INTERFACE) + + +MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename _optionalClassName) + GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE) + + SET(_optionalBasename "${ARGV4}") + IF (_optionalBasename) + SET(_basename ${_optionalBasename} ) + ELSE (_optionalBasename) + STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile}) + STRING(TOLOWER ${_basename} _basename) + ENDIF (_optionalBasename) + + SET(_optionalClassName "${ARGV5}") + SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h) + SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + + IF(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ELSE(_optionalClassName) + ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header} + COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile} + DEPENDS ${_infile} + ) + ENDIF(_optionalClassName) + + QT4_GENERATE_MOC(${_header} ${_moc}) + SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE) + MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc}) + + SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc}) +ENDMACRO(QT4_ADD_DBUS_ADAPTOR) + + +MACRO(QT4_AUTOMOC) + QT4_GET_MOC_FLAGS(_moc_INCS) + + SET(_matching_FILES ) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + # if "SKIP_AUTOMOC" is set to true, we will not handle this file here. + # This is required to make uic work correctly: + # we need to add generated .cpp files to the sources (to compile them), + # but we cannot let automoc handle them, as the .cpp files don't exist yet when + # cmake is run for the very first time on them -> however the .cpp files might + # exist at a later run. at that time we need to skip them, so that we don't add two + # different rules for the same moc file + GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC) + + IF ( NOT _skip AND EXISTS ${_abs_FILE} ) + + FILE(READ ${_abs_FILE} _contents) + + GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH) + + STRING(REGEX MATCHALL "# *include +[^ ]+\\.moc[\">]" _match "${_contents}") + IF(_match) + FOREACH (_current_MOC_INC ${_match}) + STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}") + + GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE) + IF(EXISTS ${_abs_PATH}/${_basename}.hpp) + SET(_header ${_abs_PATH}/${_basename}.hpp) + ELSE(EXISTS ${_abs_PATH}/${_basename}.hpp) + SET(_header ${_abs_PATH}/${_basename}.h) + ENDIF(EXISTS ${_abs_PATH}/${_basename}.hpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC}) + QT4_CREATE_MOC_COMMAND(${_header} ${_moc} "${_moc_INCS}" "") + MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc}) + ENDFOREACH (_current_MOC_INC) + ENDIF(_match) + ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} ) + ENDFOREACH (_current_FILE) +ENDMACRO(QT4_AUTOMOC) + + +MACRO(QT4_CREATE_TRANSLATION _qm_files) + QT4_EXTRACT_OPTIONS(_lupdate_files _lupdate_options ${ARGN}) + SET(_my_sources) + SET(_my_dirs) + SET(_my_tsfiles) + SET(_ts_pro) + FOREACH (_file ${_lupdate_files}) + GET_FILENAME_COMPONENT(_ext ${_file} EXT) + GET_FILENAME_COMPONENT(_abs_FILE ${_file} ABSOLUTE) + IF(_ext MATCHES "ts") + LIST(APPEND _my_tsfiles ${_abs_FILE}) + ELSE(_ext MATCHES "ts") + IF(NOT _ext) + LIST(APPEND _my_dirs ${_abs_FILE}) + ELSE(NOT _ext) + LIST(APPEND _my_sources ${_abs_FILE}) + ENDIF(NOT _ext) + ENDIF(_ext MATCHES "ts") + ENDFOREACH(_file) + FOREACH(_ts_file ${_my_tsfiles}) + IF(_my_sources) + # make a .pro file to call lupdate on, so we don't make our commands too + # long for some systems + GET_FILENAME_COMPONENT(_ts_name ${_ts_file} NAME_WE) + SET(_ts_pro ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${_ts_name}_lupdate.pro) + SET(_pro_srcs) + FOREACH(_pro_src ${_my_sources}) + SET(_pro_srcs "${_pro_srcs} \"${_pro_src}\"") + ENDFOREACH(_pro_src ${_my_sources}) + FILE(WRITE ${_ts_pro} "SOURCES = ${_pro_srcs}") + ENDIF(_my_sources) + ADD_CUSTOM_COMMAND(OUTPUT ${_ts_file} + COMMAND ${QT_LUPDATE_EXECUTABLE} + ARGS ${_lupdate_options} ${_ts_pro} ${_my_dirs} -ts ${_ts_file} + DEPENDS ${_my_sources} ${_ts_pro}) + ENDFOREACH(_ts_file) + QT4_ADD_TRANSLATION(${_qm_files} ${_my_tsfiles}) +ENDMACRO(QT4_CREATE_TRANSLATION) + + +MACRO(QT4_ADD_TRANSLATION _qm_files) + FOREACH (_current_FILE ${ARGN}) + GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(qm ${_abs_FILE} NAME_WE) + GET_SOURCE_FILE_PROPERTY(output_location ${_abs_FILE} OUTPUT_LOCATION) + IF(output_location) + FILE(MAKE_DIRECTORY "${output_location}") + SET(qm "${output_location}/${qm}.qm") + ELSE(output_location) + SET(qm "${CMAKE_CURRENT_BINARY_DIR}/${qm}.qm") + ENDIF(output_location) + + ADD_CUSTOM_COMMAND(OUTPUT ${qm} + COMMAND ${QT_LRELEASE_EXECUTABLE} + ARGS ${_abs_FILE} -qm ${qm} + DEPENDS ${_abs_FILE} + ) + SET(${_qm_files} ${${_qm_files}} ${qm}) + ENDFOREACH (_current_FILE) +ENDMACRO(QT4_ADD_TRANSLATION) -- cgit v1.2.1 From eb0612652833020ea9cf43531ee744ae985537fa Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 15 Nov 2009 18:12:27 +0000 Subject: -sync with cmake: move -DQT_DLL into Qt4ConfigDependentSettings.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=1049724 --- modules/FindQt4.cmake | 9 --------- modules/Qt4ConfigDependentSettings.cmake | 3 +++ 2 files changed, 3 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 1f1a429c..0999931f 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -378,10 +378,6 @@ SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) SET( QT_DEFINITIONS "") -IF (WIN32) - SET(QT_DEFINITIONS -DQT_DLL) -ENDIF(WIN32) - SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE) # macro for asking qmake to process pro files @@ -786,11 +782,6 @@ IF (QT4_QMAKE_FOUND) SET(QT_EDITION_DESKTOPLIGHT 1) ENDIF("${QT_EDITION}" MATCHES "DesktopLight") -# Remove this when nobody comes and complains that it doesn't build for him on mac until 31.12.2009: -# IF (QT_USE_FRAMEWORKS) -# SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} ) -# ENDIF (QT_USE_FRAMEWORKS) - ######################################## # # Setting the LIBRARY-Variables diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake index 4aac513a..77fa4572 100644 --- a/modules/Qt4ConfigDependentSettings.cmake +++ b/modules/Qt4ConfigDependentSettings.cmake @@ -30,3 +30,6 @@ IF(UNIX) SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) ENDIF(UNIX) +IF (WIN32) + SET(QT_DEFINITIONS ${QT_DEFINITIONS} -DQT_DLL) +ENDIF(WIN32) -- cgit v1.2.1 From dc9e225ec01245048307f8cd44d49a2ba8da11d6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 15 Nov 2009 18:20:39 +0000 Subject: -add a comment that we need to check which Qt modules have been found Alex svn path=/trunk/KDE/kdelibs/; revision=1049726 --- modules/FindKDE4Internal.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 192eccb1..15c9a4bc 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -326,6 +326,7 @@ endif( ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) #this line includes FindQt4.cmake, which searches the Qt library and headers +# TODO: we should check here that all necessary modules of Qt have been found, e.g. QtDBus find_package(Qt4 ${_REQ_STRING_KDE4}) # automoc4 (from kdesupport) is now required, Alex -- cgit v1.2.1 From 3555d826506052b56c74db242c71c8faf5fdbf9c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 15 Nov 2009 18:22:28 +0000 Subject: -more syncing with cmake: make UseQt4.cmake work with the KDE version of FindQt4.cmake, i.e. detect the additional dependencies Alex svn path=/trunk/KDE/kdelibs/; revision=1049728 --- modules/Qt4ConfigDependentSettings.cmake | 323 ++++++++++++++++++++++++++++++- 1 file changed, 321 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake index 77fa4572..d67c6faa 100644 --- a/modules/Qt4ConfigDependentSettings.cmake +++ b/modules/Qt4ConfigDependentSettings.cmake @@ -20,6 +20,9 @@ # ############################################### +# this check for X11 and threads may not be necessary, since it is not +# contained in the cmake version of FindQt4.cmake: + # for unix add X11 stuff IF(UNIX) # on OS X X11 may not be required @@ -30,6 +33,322 @@ IF(UNIX) SET(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) ENDIF(UNIX) -IF (WIN32) + +# find dependencies for some Qt modules +# when doing builds against a static Qt, they are required +# when doing builds against a shared Qt, they are sometimes not required +# even some Linux distros do not require these dependencies +# if a user needs the dependencies, and they couldn't be found, they can set +# the variables themselves. + +SET(QT_QTGUI_LIB_DEPENDENCIES "") +SET(QT_QTCORE_LIB_DEPENDENCIES "") +SET(QT_QTNETWORK_LIB_DEPENDENCIES "") +SET(QT_QTOPENGL_LIB_DEPENDENCIES "") +SET(QT_QTDBUS_LIB_DEPENDENCIES "") +SET(QT_QTHELP_LIB_DEPENDENCIES ${QT_QTCLUCENE_LIBRARY}) + + +# build using shared Qt needs -DQT_DLL +IF(WIN32 AND NOT QT_CONFIG MATCHES "static") + # warning currently only qconfig.pri on Windows potentially contains "static" + # so QT_DLL might not get defined properly on other platforms. SET(QT_DEFINITIONS ${QT_DEFINITIONS} -DQT_DLL) -ENDIF(WIN32) +ENDIF(WIN32 AND NOT QT_CONFIG MATCHES "static") + + +# QtOpenGL dependencies +QT_QUERY_QMAKE(QMAKE_LIBS_OPENGL "QMAKE_LIBS_OPENGL") +SET (QT_QTOPENGL_LIB_DEPENDENCIES ${QT_QTOPENGL_LIB_DEPENDENCIES} ${QMAKE_LIBS_OPENGL}) + + +## system png +IF(QT_QCONFIG MATCHES "system-png") + FIND_LIBRARY(QT_PNG_LIBRARY NAMES png) + MARK_AS_ADVANCED(QT_PNG_LIBRARY) + IF(QT_PNG_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_PNG_LIBRARY}) + ENDIF(QT_PNG_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "system-png") + + +# for X11, get X11 library directory +IF(Q_WS_X11) + QT_QUERY_QMAKE(QMAKE_LIBDIR_X11 "QMAKE_LIBDIR_X11") +ENDIF(Q_WS_X11) + + +## X11 SM +IF(QT_QCONFIG MATCHES "x11sm") + # ask qmake where the x11 libs are + FIND_LIBRARY(QT_X11_SM_LIBRARY NAMES SM PATHS ${QMAKE_LIBDIR_X11}) + FIND_LIBRARY(QT_X11_ICE_LIBRARY NAMES ICE PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(QT_X11_SM_LIBRARY) + MARK_AS_ADVANCED(QT_X11_ICE_LIBRARY) + IF(QT_X11_SM_LIBRARY AND QT_X11_ICE_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_X11_SM_LIBRARY} ${QT_X11_ICE_LIBRARY}) + ENDIF(QT_X11_SM_LIBRARY AND QT_X11_ICE_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "x11sm") + + +## Xi +IF(QT_QCONFIG MATCHES "tablet") + FIND_LIBRARY(QT_XI_LIBRARY NAMES Xi PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(QT_XI_LIBRARY) + IF(QT_XI_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_XI_LIBRARY}) + ENDIF(QT_XI_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "tablet") + + +## Xrender +IF(QT_QCONFIG MATCHES "xrender") + FIND_LIBRARY(QT_XRENDER_LIBRARY NAMES Xrender PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(QT_XRENDER_LIBRARY) + IF(QT_XRENDER_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_XRENDER_LIBRARY}) + ENDIF(QT_XRENDER_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "xrender") + + +## Xrandr +IF(QT_QCONFIG MATCHES "xrandr") + FIND_LIBRARY(QT_XRANDR_LIBRARY NAMES Xrandr PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(QT_XRANDR_LIBRARY) + IF(QT_XRANDR_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_XRANDR_LIBRARY}) + ENDIF(QT_XRANDR_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "xrandr") + + +## Xcursor +IF(QT_QCONFIG MATCHES "xcursor") + FIND_LIBRARY(QT_XCURSOR_LIBRARY NAMES Xcursor PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(QT_XCURSOR_LIBRARY) + IF(QT_XCURSOR_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_XCURSOR_LIBRARY}) + ENDIF(QT_XCURSOR_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "xcursor") + + +## Xinerama +IF(QT_QCONFIG MATCHES "xinerama") + FIND_LIBRARY(QT_XINERAMA_LIBRARY NAMES Xinerama PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(QT_XINERAMA_LIBRARY) + IF(QT_XINERAMA_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_XINERAMA_LIBRARY}) + ENDIF(QT_XINERAMA_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "xinerama") + + +## Xfixes +IF(QT_QCONFIG MATCHES "xfixes") + FIND_LIBRARY(QT_XFIXES_LIBRARY NAMES Xfixes PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(QT_XFIXES_LIBRARY) + IF(QT_XFIXES_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_XFIXES_LIBRARY}) + ENDIF(QT_XFIXES_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "xfixes") + + +## system-freetype +IF(QT_QCONFIG MATCHES "system-freetype") + FIND_LIBRARY(QT_FREETYPE_LIBRARY NAMES freetype) + MARK_AS_ADVANCED(QT_FREETYPE_LIBRARY) + IF(QT_FREETYPE_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_FREETYPE_LIBRARY}) + ENDIF(QT_FREETYPE_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "system-freetype") + + +## fontconfig +IF(QT_QCONFIG MATCHES "fontconfig") + FIND_LIBRARY(QT_FONTCONFIG_LIBRARY NAMES fontconfig) + MARK_AS_ADVANCED(QT_FONTCONFIG_LIBRARY) + IF(QT_FONTCONFIG_LIBRARY) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${QT_FONTCONFIG_LIBRARY}) + ENDIF(QT_FONTCONFIG_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "fontconfig") + + +## system-zlib +IF(QT_QCONFIG MATCHES "system-zlib") + FIND_LIBRARY(QT_ZLIB_LIBRARY NAMES z) + MARK_AS_ADVANCED(QT_ZLIB_LIBRARY) + IF(QT_ZLIB_LIBRARY) + SET(QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} ${QT_ZLIB_LIBRARY}) + ENDIF(QT_ZLIB_LIBRARY) +ENDIF(QT_QCONFIG MATCHES "system-zlib") + + +## openssl +IF(NOT Q_WS_WIN) + SET(_QT_NEED_OPENSSL 0) + IF(QT_VERSION_MINOR LESS 4 AND QT_QCONFIG MATCHES "openssl") + SET(_QT_NEED_OPENSSL 1) + ENDIF(QT_VERSION_MINOR LESS 4 AND QT_QCONFIG MATCHES "openssl") + IF(QT_VERSION_MINOR GREATER 3 AND QT_QCONFIG MATCHES "openssl-linked") + SET(_QT_NEED_OPENSSL 1) + ENDIF(QT_VERSION_MINOR GREATER 3 AND QT_QCONFIG MATCHES "openssl-linked") + IF(_QT_NEED_OPENSSL) + FIND_PACKAGE(OpenSSL) + IF(OPENSSL_LIBRARIES) + SET(QT_QTNETWORK_LIB_DEPENDENCIES ${QT_QTNETWORK_LIB_DEPENDENCIES} ${OPENSSL_LIBRARIES}) + ENDIF(OPENSSL_LIBRARIES) + ENDIF(_QT_NEED_OPENSSL) +ENDIF(NOT Q_WS_WIN) + + +## dbus +IF(QT_QCONFIG MATCHES "dbus") + + # if the dbus library isn't found, we'll assume its not required to build + # shared Qt on Linux doesn't require it + IF(NOT QT_DBUS_LIBRARY) + EXECUTE_PROCESS(COMMAND pkg-config --libs-only-L dbus-1 + OUTPUT_VARIABLE _dbus_query_output + RESULT_VARIABLE _dbus_result + ERROR_VARIABLE _dbus_query_output ) + + IF(_dbus_result MATCHES 0) + STRING(REPLACE "-L" "" _dbus_query_output "${_dbus_query_output}") + SEPARATE_ARGUMENTS(_dbus_query_output) + ELSE(_dbus_result MATCHES 0) + SET(_dbus_query_output) + ENDIF(_dbus_result MATCHES 0) + + FIND_LIBRARY(QT_DBUS_LIBRARY NAMES dbus-1 PATHS ${_dbus_query_output} ) + + IF(QT_DBUS_LIBRARY) + SET(QT_QTDBUS_LIB_DEPENDENCIES ${QT_QTDBUS_LIB_DEPENDENCIES} ${QT_DBUS_LIBRARY}) + ENDIF(QT_DBUS_LIBRARY) + + MARK_AS_ADVANCED(QT_DBUS_LIBRARY) + ENDIF(NOT QT_DBUS_LIBRARY) + +ENDIF(QT_QCONFIG MATCHES "dbus") + + +## glib +IF(QT_QCONFIG MATCHES "glib") + + # if the glib libraries aren't found, we'll assume its not required to build + # shared Qt on Linux doesn't require it + + # Qt 4.2.0+ uses glib-2.0 + IF(NOT QT_GLIB_LIBRARY OR NOT QT_GTHREAD_LIBRARY) + EXECUTE_PROCESS(COMMAND pkg-config --libs-only-L glib-2.0 gthread-2.0 + OUTPUT_VARIABLE _glib_query_output + RESULT_VARIABLE _glib_result + ERROR_VARIABLE _glib_query_output ) + + IF(_glib_result MATCHES 0) + STRING(REPLACE "-L" "" _glib_query_output "${_glib_query_output}") + SEPARATE_ARGUMENTS(_glib_query_output) + ELSE(_glib_result MATCHES 0) + SET(_glib_query_output) + ENDIF(_glib_result MATCHES 0) + + FIND_LIBRARY(QT_GLIB_LIBRARY NAMES glib-2.0 PATHS ${_glib_query_output} ) + FIND_LIBRARY(QT_GTHREAD_LIBRARY NAMES gthread-2.0 PATHS ${_glib_query_output} ) + + MARK_AS_ADVANCED(QT_GLIB_LIBRARY) + MARK_AS_ADVANCED(QT_GTHREAD_LIBRARY) + ENDIF(NOT QT_GLIB_LIBRARY OR NOT QT_GTHREAD_LIBRARY) + + IF(QT_GLIB_LIBRARY AND QT_GTHREAD_LIBRARY) + SET(QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} + ${QT_GTHREAD_LIBRARY} ${QT_GLIB_LIBRARY}) + ENDIF(QT_GLIB_LIBRARY AND QT_GTHREAD_LIBRARY) + + + # Qt 4.5+ also links to gobject-2.0 + IF(QT_VERSION_MINOR GREATER 4) + IF(NOT QT_GOBJECT_LIBRARY) + EXECUTE_PROCESS(COMMAND pkg-config --libs-only-L gobject-2.0 + OUTPUT_VARIABLE _glib_query_output + RESULT_VARIABLE _glib_result + ERROR_VARIABLE _glib_query_output ) + + IF(_glib_result MATCHES 0) + STRING(REPLACE "-L" "" _glib_query_output "${_glib_query_output}") + SEPARATE_ARGUMENTS(_glib_query_output) + ELSE(_glib_result MATCHES 0) + SET(_glib_query_output) + ENDIF(_glib_result MATCHES 0) + + FIND_LIBRARY(QT_GOBJECT_LIBRARY NAMES gobject-2.0 PATHS ${_glib_query_output} ) + + MARK_AS_ADVANCED(QT_GOBJECT_LIBRARY) + ENDIF(NOT QT_GOBJECT_LIBRARY) + + IF(QT_GOBJECT_LIBRARY) + SET(QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} + ${QT_GOBJECT_LIBRARY}) + ENDIF(QT_GOBJECT_LIBRARY) + ENDIF(QT_VERSION_MINOR GREATER 4) + +ENDIF(QT_QCONFIG MATCHES "glib") + + +## clock-monotonic, just see if we need to link with rt +IF(QT_QCONFIG MATCHES "clock-monotonic") + SET(CMAKE_REQUIRED_LIBRARIES_SAVE ${CMAKE_REQUIRED_LIBRARIES}) + SET(CMAKE_REQUIRED_LIBRARIES rt) + CHECK_SYMBOL_EXISTS(_POSIX_TIMERS "unistd.h;time.h" QT_POSIX_TIMERS) + SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES_SAVE}) + IF(QT_POSIX_TIMERS) + FIND_LIBRARY(QT_RT_LIBRARY NAMES rt) + MARK_AS_ADVANCED(QT_RT_LIBRARY) + IF(QT_RT_LIBRARY) + SET(QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} ${QT_RT_LIBRARY}) + ENDIF(QT_RT_LIBRARY) + ENDIF(QT_POSIX_TIMERS) +ENDIF(QT_QCONFIG MATCHES "clock-monotonic") + + +IF(Q_WS_X11) + # X11 libraries Qt absolutely depends on + QT_QUERY_QMAKE(QT_LIBS_X11 "QMAKE_LIBS_X11") + SEPARATE_ARGUMENTS(QT_LIBS_X11) + FOREACH(QT_X11_LIB ${QT_LIBS_X11}) + STRING(REGEX REPLACE "-l" "" QT_X11_LIB "${QT_X11_LIB}") + SET(QT_TMP_STR "QT_X11_${QT_X11_LIB}_LIBRARY") + FIND_LIBRARY(${QT_TMP_STR} NAMES "${QT_X11_LIB}" PATHS ${QMAKE_LIBDIR_X11}) + MARK_AS_ADVANCED(${QT_TMP_STR}) + IF(${QT_TMP_STR}) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} ${${QT_TMP_STR}}) + ENDIF(${QT_TMP_STR}) + ENDFOREACH(QT_X11_LIB) + + QT_QUERY_QMAKE(QT_LIBS_THREAD "QMAKE_LIBS_THREAD") + SET(QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} ${QT_LIBS_THREAD}) + + QT_QUERY_QMAKE(QMAKE_LIBS_DYNLOAD "QMAKE_LIBS_DYNLOAD") + SET (QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} ${QMAKE_LIBS_DYNLOAD}) + +ENDIF(Q_WS_X11) + + +IF(Q_WS_WIN) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} imm32 winmm) + SET(QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} ws2_32) +ENDIF(Q_WS_WIN) + + +IF(Q_WS_MAC) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} "-framework Carbon") + + # Qt 4.0, 4.1, 4.2 use QuickTime + IF(QT_VERSION_MINOR LESS 3) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} "-framework QuickTime") + ENDIF(QT_VERSION_MINOR LESS 3) + + # Qt 4.2+ use AppKit + IF(QT_VERSION_MINOR GREATER 1) + SET(QT_QTGUI_LIB_DEPENDENCIES ${QT_QTGUI_LIB_DEPENDENCIES} "-framework AppKit") + ENDIF(QT_VERSION_MINOR GREATER 1) + + SET(QT_QTCORE_LIB_DEPENDENCIES ${QT_QTCORE_LIB_DEPENDENCIES} "-framework ApplicationServices") +ENDIF(Q_WS_MAC) + -- cgit v1.2.1 From 839685fc2c89d7ff5aa2b9609f83d2e4a02a7167 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 15 Nov 2009 18:31:14 +0000 Subject: Document X11_X11_LIB and X11_X11_INCLUDE_PATH Alex svn path=/trunk/KDE/kdelibs/; revision=1049732 --- modules/FindX11.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindX11.cmake b/modules/FindX11.cmake index 2d6d24e9..f2f879dc 100644 --- a/modules/FindX11.cmake +++ b/modules/FindX11.cmake @@ -7,6 +7,7 @@ # and also the following more fine grained variables: # X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND # X11_SM_INCLUDE_PATH, X11_SM_LIB, X11_SM_FOUND +# X11_X11_INCLUDE_PATH, X11_X11_LIB # X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND # X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND # X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND -- cgit v1.2.1 From d1a9cc7249e987cb4c465e502156a92e695314e1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 15 Nov 2009 18:54:17 +0000 Subject: -install the files which have been separated from FindQt4.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=1049743 --- modules/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 99c30c5b..728761ae 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -91,6 +91,8 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindPulseAudio.cmake FindPyKDE4.cmake FindPyQt4.cmake + Qt4Macros.cmake + Qt4ConfigDependentSettings.cmake FindPythonLibrary.cmake FindQCA2.cmake FindQImageBlitz.cmake -- cgit v1.2.1 From 83a60c0ed58c2fd9658de70ca8c9bd94fb862194 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Tue, 17 Nov 2009 12:38:27 +0000 Subject: move FindAttica.cmake into kdelibs svn path=/trunk/KDE/kdelibs/; revision=1050497 --- modules/CMakeLists.txt | 1 + modules/FindAttica.cmake | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 modules/FindAttica.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 728761ae..3c41084a 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -20,6 +20,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindAGG.cmake FindAkode.cmake FindAlsa.cmake + FindAttica.cmake FindAutomoc4.cmake FindAvahi.cmake FindBerkeleyDB.cmake diff --git a/modules/FindAttica.cmake b/modules/FindAttica.cmake new file mode 100644 index 00000000..1bc1693a --- /dev/null +++ b/modules/FindAttica.cmake @@ -0,0 +1,17 @@ +# Try to find the Attica library +# Once done this will define +# +# ATTICA_FOUND Indicates that Attica was found +# ATTICA_LIBRARIES Libraries needed to use Attica +# ATTICA_LIBRARY_DIRS Paths needed for linking against Attica +# ATTICA_INCLUDE_DIRS Paths needed for finding Attica include files +# +# Copyright (c) 2009 Frederik Gladhorn +# +# Redistribution and use is allowed according to the terms of the BSD license. + + +if (NOT WIN32) + include(FindPkgConfig) + pkg_check_modules(ATTICA REQUIRED libattica) +endif (NOT WIN32) -- cgit v1.2.1 From edb1d277de5a4531122534b635e919826b8c99f2 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Tue, 17 Nov 2009 19:51:53 +0000 Subject: improve findattica svn path=/trunk/KDE/kdelibs/; revision=1050643 --- modules/FindAttica.cmake | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindAttica.cmake b/modules/FindAttica.cmake index 1bc1693a..22a30469 100644 --- a/modules/FindAttica.cmake +++ b/modules/FindAttica.cmake @@ -10,8 +10,38 @@ # # Redistribution and use is allowed according to the terms of the BSD license. +IF (ATTICA_INCLUDE_DIR AND ATTICA_LIBRARIES) + # in cache already + SET(Attica_FIND_QUIETLY TRUE) +ENDIF (ATTICA_INCLUDE_DIR AND ATTICA_LIBRARIES) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + FIND_PACKAGE(PkgConfig) + PKG_CHECK_MODULES(PC_ATTICA QUIET libattica-0.1) + SET(ATTICA_DEFINITIONS ${PC_ATTICA_CFLAGS_OTHER}) +ENDIF (NOT WIN32) + +FIND_PATH(ATTICA_INCLUDE_DIR attica/provider.h + HINTS + ${PC_ATTICA_INCLUDEDIR} + ${PC_ATTICA_INCLUDE_DIRS} + PATH_SUFFIXES attica + ) + +FIND_LIBRARY(ATTICA_LIBRARIES NAMES attica libattica + HINTS + ${PC_ATTICA_LIBDIR} + ${PC_ATTICA_LIBRARY_DIRS} + ) + +INCLUDE(FindPackageHandleStandardArgs) + +# handle the QUIETLY and REQUIRED arguments and set ATTICA_FOUND to TRUE if +# all listed variables are TRUE +FIND_PACKAGE_HANDLE_STANDARD_ARGS(libattica DEFAULT_MSG ATTICA_LIBRARIES ATTICA_INCLUDE_DIR) + +MARK_AS_ADVANCED(ATTICA_INCLUDE_DIR ATTICA_LIBRARIES) + -if (NOT WIN32) - include(FindPkgConfig) - pkg_check_modules(ATTICA REQUIRED libattica) -endif (NOT WIN32) -- cgit v1.2.1 From 8b495e1dd1299767a3515cde7c6474a76bc5c8ec Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Wed, 18 Nov 2009 14:43:23 +0000 Subject: rename FindAttica to FindLibAttica as suggested by Alex svn path=/trunk/KDE/kdelibs/; revision=1050996 --- modules/CMakeLists.txt | 2 +- modules/FindAttica.cmake | 47 --------------------------------------------- modules/FindLibAttica.cmake | 47 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 48 deletions(-) delete mode 100644 modules/FindAttica.cmake create mode 100644 modules/FindLibAttica.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 3c41084a..fe64fe3b 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -20,7 +20,6 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindAGG.cmake FindAkode.cmake FindAlsa.cmake - FindAttica.cmake FindAutomoc4.cmake FindAvahi.cmake FindBerkeleyDB.cmake @@ -67,6 +66,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindKorundum.cmake FindLCMS.cmake FindLibArt.cmake + FindLibAttica.cmake FindLibKonq.cmake FindLibLZMA.cmake FindLibXml2.cmake diff --git a/modules/FindAttica.cmake b/modules/FindAttica.cmake deleted file mode 100644 index 22a30469..00000000 --- a/modules/FindAttica.cmake +++ /dev/null @@ -1,47 +0,0 @@ -# Try to find the Attica library -# Once done this will define -# -# ATTICA_FOUND Indicates that Attica was found -# ATTICA_LIBRARIES Libraries needed to use Attica -# ATTICA_LIBRARY_DIRS Paths needed for linking against Attica -# ATTICA_INCLUDE_DIRS Paths needed for finding Attica include files -# -# Copyright (c) 2009 Frederik Gladhorn -# -# Redistribution and use is allowed according to the terms of the BSD license. - -IF (ATTICA_INCLUDE_DIR AND ATTICA_LIBRARIES) - # in cache already - SET(Attica_FIND_QUIETLY TRUE) -ENDIF (ATTICA_INCLUDE_DIR AND ATTICA_LIBRARIES) - -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - FIND_PACKAGE(PkgConfig) - PKG_CHECK_MODULES(PC_ATTICA QUIET libattica-0.1) - SET(ATTICA_DEFINITIONS ${PC_ATTICA_CFLAGS_OTHER}) -ENDIF (NOT WIN32) - -FIND_PATH(ATTICA_INCLUDE_DIR attica/provider.h - HINTS - ${PC_ATTICA_INCLUDEDIR} - ${PC_ATTICA_INCLUDE_DIRS} - PATH_SUFFIXES attica - ) - -FIND_LIBRARY(ATTICA_LIBRARIES NAMES attica libattica - HINTS - ${PC_ATTICA_LIBDIR} - ${PC_ATTICA_LIBRARY_DIRS} - ) - -INCLUDE(FindPackageHandleStandardArgs) - -# handle the QUIETLY and REQUIRED arguments and set ATTICA_FOUND to TRUE if -# all listed variables are TRUE -FIND_PACKAGE_HANDLE_STANDARD_ARGS(libattica DEFAULT_MSG ATTICA_LIBRARIES ATTICA_INCLUDE_DIR) - -MARK_AS_ADVANCED(ATTICA_INCLUDE_DIR ATTICA_LIBRARIES) - - diff --git a/modules/FindLibAttica.cmake b/modules/FindLibAttica.cmake new file mode 100644 index 00000000..39ae84d4 --- /dev/null +++ b/modules/FindLibAttica.cmake @@ -0,0 +1,47 @@ +# Try to find the Attica library +# Once done this will define +# +# LIBATTICA_FOUND Indicates that Attica was found +# LIBATTICA_LIBRARIES Libraries needed to use Attica +# LIBATTICA_LIBRARY_DIRS Paths needed for linking against Attica +# LIBATTICA_INCLUDE_DIRS Paths needed for finding Attica include files +# +# Copyright (c) 2009 Frederik Gladhorn +# +# Redistribution and use is allowed according to the terms of the BSD license. + +IF (LIBATTICA_INCLUDE_DIR AND LIBATTICA_LIBRARIES) + # in cache already + SET(libattica_FIND_QUIETLY TRUE) +ENDIF (LIBATTICA_INCLUDE_DIR AND LIBATTICA_LIBRARIES) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + FIND_PACKAGE(PkgConfig) + PKG_CHECK_MODULES(PC_LIBATTICA QUIET libattica-0.1) + SET(LIBATTICA_DEFINITIONS ${PC_ATTICA_CFLAGS_OTHER}) +ENDIF (NOT WIN32) + +FIND_PATH(LIBATTICA_INCLUDE_DIR attica/provider.h + HINTS + ${PC_LIBATTICA_INCLUDEDIR} + ${PC_LIBATTICA_INCLUDE_DIRS} + PATH_SUFFIXES attica + ) + +FIND_LIBRARY(LIBATTICA_LIBRARIES NAMES attica libattica + HINTS + ${PC_LIBATTICA_LIBDIR} + ${PC_LIBATTICA_LIBRARY_DIRS} + ) + +INCLUDE(FindPackageHandleStandardArgs) + +# handle the QUIETLY and REQUIRED arguments and set ATTICA_FOUND to TRUE if +# all listed variables are TRUE +FIND_PACKAGE_HANDLE_STANDARD_ARGS(libattica DEFAULT_MSG LIBATTICA_LIBRARIES LIBATTICA_INCLUDE_DIR) + +MARK_AS_ADVANCED(LIBATTICA_INCLUDE_DIR LIBATTICA_LIBRARIES) + + -- cgit v1.2.1 From cc812d58d28318572719e1ced02b91f6b27cee34 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 18 Nov 2009 22:49:24 +0000 Subject: -keep in sync with cmake: don't let whitespace-separated libs slip into the variables Alex svn path=/trunk/KDE/kdelibs/; revision=1051144 --- modules/Qt4ConfigDependentSettings.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake index d67c6faa..55f7097f 100644 --- a/modules/Qt4ConfigDependentSettings.cmake +++ b/modules/Qt4ConfigDependentSettings.cmake @@ -59,6 +59,7 @@ ENDIF(WIN32 AND NOT QT_CONFIG MATCHES "static") # QtOpenGL dependencies QT_QUERY_QMAKE(QMAKE_LIBS_OPENGL "QMAKE_LIBS_OPENGL") +SEPARATE_ARGUMENTS(QMAKE_LIBS_OPENGL) SET (QT_QTOPENGL_LIB_DEPENDENCIES ${QT_QTOPENGL_LIB_DEPENDENCIES} ${QMAKE_LIBS_OPENGL}) -- cgit v1.2.1 From ba150bbaa4b62db58f59a236659debf448d5b8cd Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Fri, 20 Nov 2009 12:14:21 +0000 Subject: CCMAIL: kde-buildsystem@kde.org Adding FindPolkitQt-1.cmake for the upcoming polkit-1 support in KAuth, as discussed on kde-buildsystem some time ago. Alex, can you please take care of making this module not getting installed? svn path=/trunk/KDE/kdelibs/; revision=1051967 --- modules/FindPolkitQt-1.cmake | 74 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 modules/FindPolkitQt-1.cmake (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake new file mode 100644 index 00000000..357552b0 --- /dev/null +++ b/modules/FindPolkitQt-1.cmake @@ -0,0 +1,74 @@ +# - Try to find Polkit-qt-1 +# Once done this will define +# +# POLKITQT_1_FOUND - system has Polkit-qt +# POLKITQT_1_INCLUDE_DIR - the Polkit-qt include directory +# POLKITQT_1_LIBRARIES - Link these to use all Polkit-qt libs +# POLKITQT_1_CORE_LIBRARY - Link this to use the polkit-qt-core library only +# POLKITQT_1_GUI_LIBRARY - Link this to use GUI elements in polkit-qt (polkit-qt-gui) +# POLKITQT_1_AGENT_LIBRARY - Link this to use the agent wrapper in polkit-qt +# POLKITQT_1_DEFINITIONS - Compiler switches required for using Polkit-qt + +# Copyright (c) 2009, Dario Freddi, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (POLKITQT_1_INCLUDE_DIR AND POLKITQT_1_LIB) + set(POLKITQT_1_FIND_QUIETLY TRUE) +endif (POLKITQT_1_INCLUDE_DIR AND POLKITQT_1_LIB) + +if (NOT POLKITQT_1_MIN_VERSION) + set(POLKITQT_1_MIN_VERSION "0.95.0") +endif (NOT POLKITQT_1_MIN_VERSION) + +if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + pkg_check_modules(PC_POLKITQT_1 QUIET polkit-qt-1) + set(POLKITQT_1_DEFINITIONS ${PC_POLKITQT_1_CFLAGS_OTHER}) +endif (NOT WIN32) + +find_path( POLKITQT_1_INCLUDE_DIR + NAMES PolkitQt/authority.h + PATH_SUFFIXES polkit-qt-1 +) +find_library( POLKITQT_1_CORE_LIBRARY + NAMES polkit-qt-core-1 + HINTS ${PC_POLKITQT_1_LIBDIR} +) +find_library( POLKITQT_1_GUI_LIBRARY + NAMES polkit-qt-gui-1 + HINTS ${PC_POLKITQT_1_LIBDIR} +) +find_library( POLKITQT_1_AGENT_LIBRARY + NAMES polkit-qt-agent-1 + HINTS ${PC_POLKITQT_1_LIBDIR} +) + +set(POLKITQT_1_LIBRARIES ${POLKITQT_1_GUI_LIBRARY} ${POLKITQT_1_CORE_LIBRARY} ${POLKITQT_1_AGENT_LIBRARY}) + +include(FindPackageHandleStandardArgs) + +# handle the QUIETLY and REQUIRED arguments and set POLKITQT_1_FOUND to TRUE if +# all listed variables are TRUE +find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT_1_LIBRARIES POLKITQT_1_INCLUDE_DIR) + +mark_as_advanced(POLKITQT_1_INCLUDE_DIR POLKITQT_1_CORE_LIBRARY POLKITQT_1_GUI_LIBRARY POLKITQT_1_LIBRARIES) + +if (POLKITQT_1_FOUND) + if (PC_POLKITQT_1_VERSION VERSION_LESS POLKITQT_1_MIN_VERSION) + message(STATUS "Found Polkit-Qt-1 release < ${POLKITQT_1_MIN_VERSION}") + message(STATUS "You need Polkit-Qt-1 version ${POLKITQT_1_MIN_VERSION} or newer to compile this component") + set(POLKITQT_1_FOUND FALSE) + return() + else (PC_POLKITQT_1_VERSION VERSION_LESS POLKITQT_1_MIN_VERSION) + if ( NOT PC_POLKITQT_1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) + message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " + "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT_1_PREFIX} prefix") + endif (NOT PC_POLKITQT_1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) + endif (PC_POLKITQT_1_VERSION VERSION_LESS POLKITQT_1_MIN_VERSION) +endif (POLKITQT_1_FOUND) + +set(POLKITQT_1_POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions) -- cgit v1.2.1 From b9852ed5d6b124b16854d8415eb1ae0185276f64 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Fri, 20 Nov 2009 12:17:55 +0000 Subject: CCMAIL: kde-buildsystem@kde.org Nevermind, I found out how. Also, probably FindPolkitQt.cmake is another good candidate for non-installation? It could be just copied over to kdebase/workspace/cmake/modules in that case. For me it's more than ok and makes even more sense, as KDE applications are not supposed to take advantage of polkit-qt, but of KAuth instead. svn path=/trunk/KDE/kdelibs/; revision=1051970 --- modules/CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index fe64fe3b..960d5849 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -3,7 +3,8 @@ set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) # maybe FindHUNSPELL.cmake, FindPolkitQt.cmake don't have to be installed ? -set(cmakeFilesDontInstall ) +set(cmakeFilesDontInstall + FindPolkitQt-1.cmake) # Explicitely list all files which will be installed. # We don't use a GLOB anymore so we can have also cmake files here -- cgit v1.2.1 From b99cd4a967d0460ed8b02f5cf07f56285a28fdd8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 21 Nov 2009 23:33:57 +0000 Subject: -improve documentation -rely less on pkgconfig -honor PolkitQt_FIND_REQUIRED properly -POLKITQT_LIBRARIES doesn't have to be ADVANCED, since it is not in the cache at all -the variable POLKITQT_LIB does not exist Alex svn path=/trunk/KDE/kdelibs/; revision=1052520 --- modules/FindPolkitQt.cmake | 38 +++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index 8f52b10f..922968a3 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -7,17 +7,22 @@ # POLKITQT_CORE_LIBRARY - Link this to use the polkit-qt-core library only # POLKITQT_GUI_LIBRARY - Link this to use GUI elements in polkit-qt (polkit-qt-gui) # POLKITQT_DEFINITIONS - Compiler switches required for using Polkit-qt +# POLKITQT_POLICY_FILES_INSTALL_DIR - The directory where policy files should be installed to. +# +# The minimum required version PolkitQt can be specified by setting the +# POLKITQT_MIN_VERSION variable. # Copyright (c) 2009, Daniel Nicoletti, # Copyright (c) 2009, Dario Freddi, # Copyright (c) 2009, Michal Malek, +# Copyright (c) 2009, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (POLKITQT_INCLUDE_DIR AND POLKITQT_LIB) - set(POLKITQT_FIND_QUIETLY TRUE) -endif (POLKITQT_INCLUDE_DIR AND POLKITQT_LIB) +if (POLKITQT_INCLUDE_DIR AND POLKITQT_GUI_LIBRARY AND POLKITQT_CORE_LIBRARY) + set(PolkitQt_FIND_QUIETLY TRUE) +endif (POLKITQT_INCLUDE_DIR AND POLKITQT_GUI_LIBRARY AND POLKITQT_CORE_LIBRARY) if (NOT POLKITQT_MIN_VERSION) set(POLKITQT_MIN_VERSION "0.9.0") @@ -49,22 +54,29 @@ include(FindPackageHandleStandardArgs) # handle the QUIETLY and REQUIRED arguments and set POLKITQT_FOUND to TRUE if # all listed variables are TRUE -find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_LIBRARIES POLKITQT_INCLUDE_DIR) +find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_INCLUDE_DIR POLKITQT_GUI_LIBRARY POLKITQT_CORE_LIBRARY) mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_CORE_LIBRARY POLKITQT_GUI_LIBRARY POLKITQT_LIBRARIES) if (POLKITQT_FOUND) if (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) - message(STATUS "Found Polkit-Qt release < ${POLKITQT_MIN_VERSION}") - message(STATUS "You need Polkit-Qt version ${POLKITQT_MIN_VERSION} or newer to compile this component") + if(PolkitQt_FIND_REQUIRED) + message(FATAL_ERROR "Found Polkit-Qt release ${PC_POLKITQT_VERSION}, but at least ${POLKITQT_MIN_VERSION} is required.") + else(PolkitQt_FIND_REQUIRED) + message(STATUS "Found Polkit-Qt release ${PC_POLKITQT_VERSION}, but at least ${POLKITQT_MIN_VERSION} is required.") + endif(PolkitQt_FIND_REQUIRED) set(POLKITQT_FOUND FALSE) - return() - else (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) - if ( NOT PC_POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) - message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " - "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT_PREFIX} prefix") - endif (NOT PC_POLKITQT_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) endif (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) endif (POLKITQT_FOUND) -set(POLKITQT_POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/PolicyKit/policy/) + +if(POLKITQT_FOUND) + get_filename_component(_POLKITQT_INSTALL_PREFIX "${POLKITQT_CORE_LIBRARY}" PATH) + get_filename_component(_POLKITQT_INSTALL_PREFIX "${_POLKITQT_INSTALL_PREFIX}" PATH) + if ( NOT _POLKITQT_INSTALL_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) + message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " + "in ${CMAKE_INSTALL_PREFIX}/${POLKITQT_POLICY_FILES_INSTALL_DIR} and by dbus_add_activation_system_service to the ${_POLKITQT_INSTALL_PREFIX}/${POLKITQT_POLICY_FILES_INSTALL_DIR} prefix") + endif (NOT _POLKITQT_INSTALL_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) +endif(POLKITQT_FOUND) + +set(POLKITQT_POLICY_FILES_INSTALL_DIR share/PolicyKit/policy/) -- cgit v1.2.1 From 5aaccb74c1d4f6b409af71a8daf966ac1cdae186 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Nov 2009 01:07:03 +0000 Subject: -better comment Alex svn path=/trunk/KDE/kdelibs/; revision=1052534 --- modules/CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 960d5849..f4184f28 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -3,6 +3,9 @@ set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) # maybe FindHUNSPELL.cmake, FindPolkitQt.cmake don't have to be installed ? +# This variable doesn't actually do anything, but it's probably a good idea +# to have it around, so there is a place where the modules which are not installed +# are listed explicitely: set(cmakeFilesDontInstall FindPolkitQt-1.cmake) -- cgit v1.2.1 From 4262fee3c51bbcb849cc7ec2affafe6e6663c457 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Sun, 22 Nov 2009 11:35:26 +0000 Subject: CCMAIL: kde-buildsystem@kde.org CCMAIL: neundorf@kde.org As discussed with Alexander, don't install FindPolkitQt.cmake, as it is needed only by kdebase/workspace. KDE Application would have to use KAuth instead. svn path=/trunk/KDE/kdelibs/; revision=1052723 --- modules/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index f4184f28..7278e913 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -2,11 +2,12 @@ set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) -# maybe FindHUNSPELL.cmake, FindPolkitQt.cmake don't have to be installed ? +# maybe FindHUNSPELL.cmake doesn't have to be installed ? # This variable doesn't actually do anything, but it's probably a good idea # to have it around, so there is a place where the modules which are not installed # are listed explicitely: -set(cmakeFilesDontInstall +set(cmakeFilesDontInstall + FindPolkitQt.cmake FindPolkitQt-1.cmake) # Explicitely list all files which will be installed. @@ -90,7 +91,6 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindPhonon.cmake FindPkgConfig.cmake FindPlasma.cmake - FindPolkitQt.cmake FindPopplerQt4.cmake FindPostgreSQL.cmake FindPulseAudio.cmake -- cgit v1.2.1 From 0dceb8f7a8c3f8bfcf946d07c864d6178afa315e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Nov 2009 14:20:16 +0000 Subject: -use HINTS instead of PATHS for searching (directories listed with HINTS are searched before the standard dirs, directories listed after PATHS are searched after the standard dirs) -fix the upper/lower casing of Nepomuk -also call find_package_handle_standard_args() if soprano was not found Alex CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=1052796 --- modules/FindNepomuk.cmake | 69 +++++++++++++++++++++-------------------------- 1 file changed, 31 insertions(+), 38 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index b406068c..bc7e5470 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -23,45 +23,38 @@ endif (NOT DEFINED Soprano_FOUND) if (Soprano_FOUND) - set (NEPOMUK_FIND_REQUIRED ${Nepomuk_FIND_REQUIRED}) - if (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES AND NEPOMUK_QUERY_LIBRARIES) + find_path(NEPOMUK_INCLUDE_DIR + NAMES + nepomuk/global.h + HINTS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + + find_library(NEPOMUK_LIBRARIES + NAMES + nepomuk + HINTS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + find_library(NEPOMUK_QUERY_LIBRARIES + NAMES + nepomukquery + HINTS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + + mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES) - # Already in cache, be silent - set(NEPOMUK_FIND_QUIETLY TRUE) - - else (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES AND NEPOMUK_QUERY_LIBRARIES) - find_path(NEPOMUK_INCLUDE_DIR - NAMES - nepomuk/global.h - PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} - ) - - find_library(NEPOMUK_LIBRARIES - NAMES - nepomuk - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - - find_library(NEPOMUK_QUERY_LIBRARIES - NAMES - nepomukquery - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - - mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES) +endif (Soprano_FOUND) - endif (NEPOMUK_INCLUDE_DIR AND NEPOMUK_LIBRARIES AND NEPOMUK_QUERY_LIBRARIES) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Nepomuk DEFAULT_MSG + NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(NEPOMUK DEFAULT_MSG - NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR) - #to retain backward compatibility - set (Nepomuk_FOUND ${NEPOMUK_FOUND}) +#to retain backward compatibility +set (Nepomuk_FOUND ${NEPOMUK_FOUND}) -endif (Soprano_FOUND) -- cgit v1.2.1 From 39e15386ff70e6218ae149795c0cfbecf357c79f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Nov 2009 16:20:02 +0000 Subject: cosmetics: all lower-case Alex svn path=/trunk/KDE/kdelibs/; revision=1052840 --- modules/MacroOptionalFindPackage.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake index 816cdb7e..f09952f3 100644 --- a/modules/MacroOptionalFindPackage.cmake +++ b/modules/MacroOptionalFindPackage.cmake @@ -13,10 +13,10 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -MACRO (MACRO_OPTIONAL_FIND_PACKAGE _name ) - OPTION(WITH_${_name} "Search for ${_name} package" ON) +macro (MACRO_OPTIONAL_FIND_PACKAGE _name ) + option(WITH_${_name} "Search for ${_name} package" ON) if (WITH_${_name}) - FIND_PACKAGE(${_name} ${ARGN}) + find_package(${_name} ${ARGN}) else (WITH_${_name}) set(${_name}_FOUND) set(${_name}_INCLUDE_DIR) @@ -24,5 +24,5 @@ MACRO (MACRO_OPTIONAL_FIND_PACKAGE _name ) set(${_name}_LIBRARY) set(${_name}_LIBRARIES) endif (WITH_${_name}) -ENDMACRO (MACRO_OPTIONAL_FIND_PACKAGE) +endmacro (MACRO_OPTIONAL_FIND_PACKAGE) -- cgit v1.2.1 From 62d1e8c500349f3e98e1a9dcb793d6f4de98af1d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Nov 2009 16:34:29 +0000 Subject: -use find_package() instead of macro_optional_find_package() for soprano inside nepomuk, it doesn't make sense to be able to disable soprano if nepomuk is enabled -also search for the nepomuk stuff if soprano was not found, this makes it possible to have a better error message at the end -also add the soprano variables to the find_package_handle_standard_args() command for better error messagesa Alex CCMAIL: trueg@kde.org svn path=/trunk/KDE/kdelibs/; revision=1052846 --- modules/FindNepomuk.cmake | 69 ++++++++++++++++++++++++----------------------- 1 file changed, 36 insertions(+), 33 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index bc7e5470..24832973 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -1,13 +1,13 @@ # Once done this will define # -# Nepomuk requires Soprano, so this module checks for Soprano too. -# # NEPOMUK_FOUND - system has Nepomuk # NEPOMUK_INCLUDE_DIR - the Nepomuk include directory # NEPOMUK_LIBRARIES - Link these to use Nepomuk # NEPOMUK_QUERY_LIBRARIES - Link these to use Nepomuk query # NEPOMUK_DEFINITIONS - Compiler switches required for using Nepomuk # +# Nepomuk requires Soprano, so this module checks for Soprano too. +# # Copyright (c) 2008-2009, Sebastian Trueg, @@ -17,43 +17,46 @@ if (NOT DEFINED Soprano_FOUND) - macro_optional_find_package(Soprano) + find_package(Soprano) + include(MacroLogFeature) macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk") endif (NOT DEFINED Soprano_FOUND) -if (Soprano_FOUND) - - find_path(NEPOMUK_INCLUDE_DIR - NAMES - nepomuk/global.h - HINTS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} - ) - - find_library(NEPOMUK_LIBRARIES - NAMES - nepomuk - HINTS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - - find_library(NEPOMUK_QUERY_LIBRARIES - NAMES - nepomukquery - HINTS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} - ) - - mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES) - -endif (Soprano_FOUND) +# Check for the following stuff independent from whether soprano has been found +# or not. This will give a better error message at the end. +find_path(NEPOMUK_INCLUDE_DIR + NAMES + nepomuk/global.h + HINTS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} + ) + +find_library(NEPOMUK_LIBRARIES + NAMES + nepomuk + HINTS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + +find_library(NEPOMUK_QUERY_LIBRARIES + NAMES + nepomukquery + HINTS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} + ) + +mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES) include(FindPackageHandleStandardArgs) +# List all nepomuk and also all necessary soprano variables here, to make it +# easier for the user to see what was missing: find_package_handle_standard_args(Nepomuk DEFAULT_MSG - NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR) + NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR + Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND + ) #to retain backward compatibility set (Nepomuk_FOUND ${NEPOMUK_FOUND}) -- cgit v1.2.1 From 09bf2d93e473314638c84988f3294af443d2e694 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 22 Nov 2009 18:56:09 +0000 Subject: -use the LOCATION target property instead EXECUTABLE_OUTPUT_PATH Alex svn path=/trunk/KDE/kdelibs/; revision=1052901 --- modules/KDE4Macros.cmake | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c4ddedc9..5a7b701c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -801,24 +801,21 @@ macro (KDE4_ADD_UNIT_TEST _test_NAME) endif(NOT using_qtest) endforeach(_filename) + get_target_property( loc ${_test_NAME} LOCATION ) if(WIN32) - get_target_property( loc ${_targetName} LOCATION ) if(MSVC_IDE) STRING(REGEX REPLACE "\\$\\(.*\\)" "\${CTEST_CONFIGURATION_TYPE}" loc "${loc}") endif() # .bat because of rpath handling - set(_executable ${loc}.bat) + set(_executable "${loc}.bat") else(WIN32) - set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}) - endif(WIN32) - if (Q_WS_MAC AND NOT _nogui) + if (Q_WS_MAC AND NOT _nogui) set(_executable ${EXECUTABLE_OUTPUT_PATH}/${_test_NAME}.app/Contents/MacOS/${_test_NAME}) - else (Q_WS_MAC AND NOT _nogui) - # Use .shell wrapper where available, to use uninstalled libs. - if (UNIX) - set(_executable ${_executable}.shell) - endif (UNIX) - endif (Q_WS_MAC AND NOT _nogui) + else (Q_WS_MAC AND NOT _nogui) + # .shell because of rpath handling + set(_executable "${loc}.shell") + endif (Q_WS_MAC AND NOT _nogui) + endif(WIN32) if (using_qtest AND KDE4_TEST_OUTPUT STREQUAL "xml") #MESSAGE(STATUS "${_targetName} : Using QTestLib, can produce XML report.") -- cgit v1.2.1 From db0e350be6983f49776e7eae223284874d593bd8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 23 Nov 2009 23:02:13 +0000 Subject: keep in sync with cmake: search for linguist and designer Alex svn path=/trunk/KDE/kdelibs/; revision=1053371 --- modules/FindQt4.cmake | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0999931f..db774611 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -305,6 +305,8 @@ # QT_LUPDATE_EXECUTABLE Where to find the lupdate tool. # QT_LRELEASE_EXECUTABLE Where to find the lrelease tool. # QT_QCOLLECTIONGENERATOR_EXECUTABLE Where to find the qcollectiongenerator tool. +# QT_DESIGNER_EXECUTABLE Where to find the Qt designer tool. +# QT_LINGUIST_EXECUTABLE Where to find the Qt linguist tool. # # # These are around for backwards compatibility @@ -1023,6 +1025,8 @@ IF (QT4_QMAKE_FOUND) SET(QT_LUPDATE_EXECUTABLE NOTFOUND) SET(QT_LRELEASE_EXECUTABLE NOTFOUND) SET(QT_QCOLLECTIONGENERATOR_EXECUTABLE NOTFOUND) + SET(QT_DESIGNER_EXECUTABLE NOTFOUND) + SET(QT_LINGUIST_EXECUTABLE NOTFOUND) ENDIF(QT_QMAKE_CHANGED) FIND_PROGRAM(QT_MOC_EXECUTABLE @@ -1079,6 +1083,18 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) + FIND_PROGRAM(QT_DESIGNER_EXECUTABLE + NAMES designer-qt4 designer + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_LINGUIST_EXECUTABLE + NAMES linguist-qt4 linguist + PATHS ${QT_BINARY_DIR} + NO_DEFAULT_PATH + ) + IF (QT_MOC_EXECUTABLE) SET(QT_WRAP_CPP "YES") ENDIF (QT_MOC_EXECUTABLE) @@ -1091,7 +1107,8 @@ IF (QT4_QMAKE_FOUND) MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE - QT_LUPDATE_EXECUTABLE QT_LRELEASE_EXECUTABLE QT_QCOLLECTIONGENERATOR_EXECUTABLE) + QT_LUPDATE_EXECUTABLE QT_LRELEASE_EXECUTABLE QT_QCOLLECTIONGENERATOR_EXECUTABLE + QT_DESIGNER_EXECUTABLE QT_LINGUIST_EXECUTABLE) # get the directory of the current file, used later on in the file -- cgit v1.2.1 From da804391310966427bef25774d864ace23b08186 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Tue, 24 Nov 2009 00:11:32 +0000 Subject: set knewstuff3 variables svn path=/trunk/KDE/kdelibs/; revision=1053400 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 15c9a4bc..7eecb734 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -34,6 +34,7 @@ # KDE4_KJS_LIBRARY - the kjs library # KDE4_KJSAPI_LIBRARY - the kjs public api library # KDE4_KNEWSTUFF2_LIBRARY - the knewstuff2 library +# KDE4_KNEWSTUFF3_LIBRARY - the knewstuff3 library # KDE4_KDNSSD_LIBRARY - the kdnssd library # KDE4_PHONON_LIBRARY - the phonon library # KDE4_THREADWEAVER_LIBRARY- the threadweaver library @@ -63,6 +64,7 @@ # KDE4_KJS_LIBS - the kjs library and all depending libraries # KDE4_KJSAPI_LIBS - the kjs public api library and all depending libraries # KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries +# KDE4_KNEWSTUFF3_LIBS - the knewstuff3 library and all depending libraries # KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries # KDE4_KDESU_LIBS - the kdesu library and all depending libraries # KDE4_KPTY_LIBS - the kpty library and all depending libraries @@ -516,6 +518,7 @@ else (_kdeBootStrapping) _kde4_set_lib_variables(KJS kjs ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KJSAPI kjsapi ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KNEWSTUFF2 knewstuff2 ${KDE4_TARGET_PREFIX}) + _kde4_set_lib_variables(KNEWSTUFF3 knewstuff3 ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KNOTIFYCONFIG knotifyconfig ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KPARTS kparts ${KDE4_TARGET_PREFIX}) _kde4_set_lib_variables(KROSSCORE krosscore ${KDE4_TARGET_PREFIX}) -- cgit v1.2.1 From 35bbdae6560aae5cc4ddc6002f3d9a7e28d64b67 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Tue, 24 Nov 2009 16:53:40 +0000 Subject: add QtMultimedia svn path=/trunk/KDE/kdelibs/; revision=1053711 --- modules/FindQt4.cmake | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index db774611..ef089142 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -34,6 +34,7 @@ # QT_USE_QTDESIGNER # QT_USE_QTMOTIF # QT_USE_QTMAIN +# QT_USE_QTMULTIMEDIA # QT_USE_QTNETWORK # QT_USE_QTNSPLUGIN # QT_USE_QTOPENGL @@ -169,6 +170,7 @@ # QT_QTDESIGNER_FOUND True if QtDesigner was found. # QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. # QT_QTMOTIF_FOUND True if QtMotif was found. +# QT_QTMULTIMEDIA_FOUND True if QtMultimedia was found. # QT_QTNETWORK_FOUND True if QtNetwork was found. # QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. # QT_QTOPENGL_FOUND True if QtOpenGL was found. @@ -220,6 +222,7 @@ # QT_QTGUI_INCLUDE_DIR Path to "include/QtGui" # QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp" # QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif" +# QT_QTMULTIMEDIA_INCLUDE_DIR Path to "include/QtMultimedia" # QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork" # QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin" # QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL" @@ -249,9 +252,9 @@ # # The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY # -# The QAxServer library: QT_QAXSERVER_LIBRARY +# The QAxServer library: QT_QAXSERVER_LIBRARY # -# The QAxContainer library: QT_QAXCONTAINER_LIBRARY +# The QAxContainer library: QT_QAXCONTAINER_LIBRARY # # The QtCore library: QT_QTCORE_LIBRARY # @@ -267,6 +270,8 @@ # # The QtMotif library: QT_QTMOTIF_LIBRARY # +# The QtMultimedia library: QT_QTMULTIMEDIA_LIBRARY +# # The QtNetwork library: QT_QTNETWORK_LIBRARY # # The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY @@ -629,7 +634,7 @@ IF (QT4_QMAKE_FOUND) ######################################## SET(QT_MODULES QtCore QtGui Qt3Support QtSvg QtScript QtTest QtUiTools - QtHelp QtWebKit QtXmlPatterns QtNetwork + QtHelp QtWebKit QtXmlPatterns QtNetwork QtMultimedia QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools) FOREACH(QT_MODULE ${QT_MODULES}) @@ -805,6 +810,9 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) ENDIF(Q_WS_X11) + # Set QT_QTMULTIMEDIA_LIBRARY + FIND_LIBRARY(QT_QTMULTIMEDIA_LIBRARY NAMES QtMultimedia QtMultimedia_debug QtMultimedia4 QtMultimediad4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # Set QT_QTNETWORK_LIBRARY FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork_debug QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -859,6 +867,8 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMULTIMEDIA_LIBRARY_RELEASE NAMES QtMultimedia4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMULTIMEDIA_LIBRARY_DEBUG NAMES QtMultimediad4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -977,6 +987,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTASSISTANT) _QT4_ADJUST_LIB_VARS(QTDESIGNER) _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) + _QT4_ADJUST_LIB_VARS(QTMULTIMEDIA) _QT4_ADJUST_LIB_VARS(QTNETWORK) _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) _QT4_ADJUST_LIB_VARS(QTOPENGL) -- cgit v1.2.1 From 3759f1baebc7bbeec736b159b1a45e7aab6d466d Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Wed, 25 Nov 2009 15:11:01 +0000 Subject: removed completely deprecated stuff svn path=/trunk/KDE/kdelibs/; revision=1054115 --- modules/FindKNepomuk.cmake | 39 --------------------------------------- modules/FindKonto.cmake | 38 -------------------------------------- 2 files changed, 77 deletions(-) delete mode 100644 modules/FindKNepomuk.cmake delete mode 100644 modules/FindKonto.cmake (limited to 'modules') diff --git a/modules/FindKNepomuk.cmake b/modules/FindKNepomuk.cmake deleted file mode 100644 index 655f6fe8..00000000 --- a/modules/FindKNepomuk.cmake +++ /dev/null @@ -1,39 +0,0 @@ -# Once done this will define -# -# KNEPOMUK_FOUND - system has the Nepomuk-KDE backbone lib KNep -# KNEPOMUK_INCLUDES - the libKNep include directory -# KNEPOMUK_LIBRARIES - Link these to use libKNep -# - -# Copyright (c) 2008, Sebastian Trueg, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) - set(KNepomuk_FIND_QUIETLY TRUE) -endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) - -FIND_PATH(KNEPOMUK_INCLUDES - NAMES - knepomuk/knepomuk.h - PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} -) - -FIND_LIBRARY(KNEPOMUK_LIBRARIES - NAMES - knepomuk - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} -) - -include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(KNepomuk DEFAULT_MSG KNEPOMUK_INCLUDES KNEPOMUK_LIBRARIES ) - - -MARK_AS_ADVANCED(KNEPOMUK_INCLUDES KNEPOMUK_LIBRARIES) - diff --git a/modules/FindKonto.cmake b/modules/FindKonto.cmake deleted file mode 100644 index d3c3458b..00000000 --- a/modules/FindKonto.cmake +++ /dev/null @@ -1,38 +0,0 @@ -# Once done this will define -# -# KONTO_FOUND - system has the Nepomuk-KDE backbone lib Konto -# KONTO_INCLUDES - the libKonto include directory -# KONTO_LIBRARIES - Link these to use libKonto -# - -# Copyright (c) 2008, Sebastian Trueg, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if(KONTO_INCLUDES AND KONTO_LIBRARIES) - # Already in cache, be silent - set(Konto_FIND_QUIETLY TRUE) -endif(KONTO_INCLUDES AND KONTO_LIBRARIES - - -FIND_PATH(KONTO_INCLUDES - NAMES - konto/class.h - PATHS - ${KDE4_INCLUDE_DIR} - ${INCLUDE_INSTALL_DIR} -) - -FIND_LIBRARY(KONTO_LIBRARIES - NAMES - konto - PATHS - ${KDE4_LIB_DIR} - ${LIB_INSTALL_DIR} -) - -include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Kondo DEFAULT_MSG KONTO_INCLUDES KONTO_LIBRARIES) - -- cgit v1.2.1 From b290276613c9c0037eacc3f6d6e0f821d90d6054 Mon Sep 17 00:00:00 2001 From: Andreas Hartmetz Date: Wed, 25 Nov 2009 15:28:42 +0000 Subject: Fix install. CCMAIL: sebastian@trueg.de svn path=/trunk/KDE/kdelibs/; revision=1054124 --- modules/CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 7278e913..33237a48 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -59,14 +59,12 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindKDEWIN32.cmake FindKDEWIN_Packager.cmake FindKDEWin.cmake - FindKNepomuk.cmake FindKdcraw.cmake FindKdeMultimedia.cmake FindKdepim.cmake FindKdepimLibs.cmake FindKexiv2.cmake FindKipi.cmake - FindKonto.cmake FindKopete.cmake FindKorundum.cmake FindLCMS.cmake -- cgit v1.2.1 From 7ae2155f81e026d49740e844dd6327e3f8a901fe Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Wed, 25 Nov 2009 20:42:54 +0000 Subject: Added macro to find the new shared-desktop-ontologies package svn path=/trunk/KDE/kdelibs/; revision=1054294 --- modules/CMakeLists.txt | 1 + modules/FindNepomuk.cmake | 8 ++++++- modules/FindSharedDesktopOntologies.cmake | 36 +++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 modules/FindSharedDesktopOntologies.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 33237a48..d0fda0f6 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -106,6 +106,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindSane.cmake FindSasl2.cmake FindSharedMimeInfo.cmake + FindSharedDesktopOntologies.cmake FindSoprano.cmake FindSqlite.cmake FindStrigi.cmake diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index 24832973..b9f7b820 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -22,6 +22,12 @@ if (NOT DEFINED Soprano_FOUND) macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk") endif (NOT DEFINED Soprano_FOUND) +if (NOT DEFINED DESKTOP_ONTOLOGIES_FOUND) + find_package(SharedDesktopOntologies) + include(MacroLogFeature) + macro_log_feature(DESKTOP_ONTOLOGIES_FOUND "Shared desktop ontologies" "Desktop ontologies" "http://oscaf.sourceforge.net" FALSE "" "Ontologies necessary for the Nepomuk semantic desktop.") +endif (NOT DEFINED DESKTOP_ONTOLOGIES_FOUND) + # Check for the following stuff independent from whether soprano has been found # or not. This will give a better error message at the end. find_path(NEPOMUK_INCLUDE_DIR @@ -55,7 +61,7 @@ include(FindPackageHandleStandardArgs) # easier for the user to see what was missing: find_package_handle_standard_args(Nepomuk DEFAULT_MSG NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR - Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND + Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND DESKTOP_ONTOLOGIES_FOUND ) #to retain backward compatibility diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake new file mode 100644 index 00000000..c0ebb37d --- /dev/null +++ b/modules/FindSharedDesktopOntologies.cmake @@ -0,0 +1,36 @@ +# - Try to find shared-desktop-ontologies +# Once done this will define +# +# DESKTOP_ONTOLOGIES_FOUND - system has shared-desktop-ontologies +# DESKTOP_ONTOLOGIES_DIR - Folder where the ontologies are stored +# DESKTOP_ONTOLOGIES_VERSION - version number of shared-desktop-ontologies + +# Copyright (c) 2009, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +IF (DESKTOP_ONTOLOGIES_DIR) + # in cache already + SET(SharedDesktopOntologies_FIND_QUIETLY TRUE) +ENDIF (DESKTOP_ONTOLOGIES_DIR) + +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + PKG_SEARCH_MODULE( DESKTOP_ONTOLOGIES shared-desktop-ontologies ) + set(DESKTOP_ONTOLOGIES_DIR ${DESKTOP_ONTOLOGIES_PREFIX}/share/ontology) +ENDIF (NOT WIN32) + +IF (DESKTOP_ONTOLOGIES_FOUND) + IF (NOT SharedDesktopOntologies_FIND_QUIETLY) + MESSAGE(STATUS "Found SharedDesktopOntologies ${DESKTOP_ONTOLOGIES_VERSION}: ${DESKTOP_ONTOLOGIES_DIR}") + ENDIF (NOT SharedDesktopOntologies_FIND_QUIETLY) +ELSE (DESKTOP_ONTOLOGIES_FOUND) + IF (SharedDesktopOntologies_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could NOT find SharedDesktopOntologies, check FindPkgConfig output above!") + ENDIF (SharedDesktopOntologies_FIND_REQUIRED) +ENDIF (DESKTOP_ONTOLOGIES_FOUND) + +MARK_AS_ADVANCED(DESKTOP_ONTOLOGIES_DIR) -- cgit v1.2.1 From 8aefc95f4334a2307349a49f23f2de753072f2ac Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 25 Nov 2009 22:41:54 +0000 Subject: -rename the cache variable SOPRANO_PLUGIN_DIR to SOPRANO_PLUGIN_ROOT_DIR, so it is not shadowed by the non-cache variable SOPRANO_PLUGIN_DIR -fix indentation Alex svn path=/trunk/KDE/kdelibs/; revision=1054356 --- modules/FindSoprano.cmake | 385 ++++++++++++++++++++++------------------------ 1 file changed, 188 insertions(+), 197 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 91148c14..aab22811 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -30,219 +30,210 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -#if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) - - # read from cache -# set(Soprano_FOUND TRUE) -# set(SopranoServer_FOUND TRUE) -# set(SopranoClient_FOUND TRUE) -# set(SopranoIndex_FOUND TRUE) - -#else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) - include(FindLibraryWithDebug) - - find_program(SOPRANO_SOPRANOCMD_EXECUTABLE - NAMES sopranocmd - HINTS - ${BIN_INSTALL_DIR} - ${KDE4_BIN_INSTALL_DIR} - ) +include(FindLibraryWithDebug) - find_program(SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE - NAMES onto2vocabularyclass - HINTS - ${BIN_INSTALL_DIR} - ${KDE4_BIN_INSTALL_DIR} - ) +find_program(SOPRANO_SOPRANOCMD_EXECUTABLE + NAMES sopranocmd + HINTS + ${BIN_INSTALL_DIR} + ${KDE4_BIN_INSTALL_DIR} + ) +find_program(SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE + NAMES onto2vocabularyclass + HINTS + ${BIN_INSTALL_DIR} + ${KDE4_BIN_INSTALL_DIR} + ) - find_path(SOPRANO_INCLUDE_DIR - NAMES - soprano/soprano.h - HINTS - ${INCLUDE_INSTALL_DIR} - ${KDE4_INCLUDE_DIR} - ) - find_library_with_debug(SOPRANO_INDEX_LIBRARIES - WIN32_DEBUG_POSTFIX d - NAMES - sopranoindex - HINTS - ${LIB_INSTALL_DIR} - ${KDE4_LIB_DIR} - ) +find_path(SOPRANO_INCLUDE_DIR + NAMES + soprano/soprano.h + HINTS + ${INCLUDE_INSTALL_DIR} + ${KDE4_INCLUDE_DIR} + ) - find_library_with_debug(SOPRANO_CLIENT_LIBRARIES - WIN32_DEBUG_POSTFIX d - NAMES - sopranoclient - HINTS - ${LIB_INSTALL_DIR} - ${KDE4_LIB_DIR} - ) +find_library_with_debug(SOPRANO_INDEX_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES + sopranoindex + HINTS + ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} + ) - find_library_with_debug(SOPRANO_LIBRARIES - WIN32_DEBUG_POSTFIX d - NAMES soprano - HINTS - ${LIB_INSTALL_DIR} - ${KDE4_LIB_DIR} +find_library_with_debug(SOPRANO_CLIENT_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES + sopranoclient + HINTS + ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} ) - find_library_with_debug(SOPRANO_SERVER_LIBRARIES - WIN32_DEBUG_POSTFIX d +find_library_with_debug(SOPRANO_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES soprano + HINTS + ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} +) + +find_library_with_debug(SOPRANO_SERVER_LIBRARIES + WIN32_DEBUG_POSTFIX d + NAMES + sopranoserver + HINTS + ${LIB_INSTALL_DIR} + ${KDE4_LIB_DIR} + ) + +# check for all the libs as required to make sure that we do not try to compile with an old version + +if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + set(Soprano_FOUND TRUE) +endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) + +if(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) + set(SopranoIndex_FOUND TRUE) +endif(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) + +if(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) + set(SopranoClient_FOUND TRUE) +endif(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) + +if(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) + set(SopranoServer_FOUND TRUE) +endif(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) + +# check Soprano version + +# We set a default for the minimum required version to be backwards compatible +if(NOT SOPRANO_MIN_VERSION) + set(SOPRANO_MIN_VERSION "1.99") +endif(NOT SOPRANO_MIN_VERSION) + +if(Soprano_FOUND) + file(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) + string(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) + if(SOPRANO_VERSION_MATCH) + string(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) + if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") + set(Soprano_FOUND FALSE) + if(Soprano_FIND_REQUIRED) + message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") + else(Soprano_FIND_REQUIRED) + message(STATUS "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") + endif(Soprano_FIND_REQUIRED) + endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") + endif(SOPRANO_VERSION_MATCH) +endif(Soprano_FOUND) + + +#look for parser plugins +if(Soprano_FOUND) + find_path(SOPRANO_PLUGIN_ROOT_DIR NAMES - sopranoserver - HINTS - ${LIB_INSTALL_DIR} - ${KDE4_LIB_DIR} + soprano/plugins + PATHS + ${SOPRANO_INCLUDE_DIR}/../share + ${SHARE_INSTALL_PREFIX} + /usr/share + /usr/local/share + NO_DEFAULT_PATH + NO_SYSTEM_ENVIRONMENT_PATH ) - - # check for all the libs as required to make sure that we do not try to compile with an old version - - if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) - set(Soprano_FOUND TRUE) - endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) - - if(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) - set(SopranoIndex_FOUND TRUE) - endif(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) - - if(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) - set(SopranoClient_FOUND TRUE) - endif(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) - - if(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) - set(SopranoServer_FOUND TRUE) - endif(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) - - # check Soprano version - - # We set a default for the minimum required version to be backwards compatible - if(NOT SOPRANO_MIN_VERSION) - set(SOPRANO_MIN_VERSION "1.99") - endif(NOT SOPRANO_MIN_VERSION) - - if(Soprano_FOUND) - file(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) - string(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) - if(SOPRANO_VERSION_MATCH) - string(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) - if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") - set(Soprano_FOUND FALSE) - if(Soprano_FIND_REQUIRED) - message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") - else(Soprano_FIND_REQUIRED) - message(STATUS "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") - endif(Soprano_FIND_REQUIRED) - endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") - endif(SOPRANO_VERSION_MATCH) - endif(Soprano_FOUND) - - - #look for parser plugins - if(Soprano_FOUND) - find_path(SOPRANO_PLUGIN_DIR - NAMES - soprano/plugins - PATHS - ${SOPRANO_INCLUDE_DIR}/../share - ${SHARE_INSTALL_PREFIX} - /usr/share - /usr/local/share - NO_DEFAULT_PATH - NO_SYSTEM_ENVIRONMENT_PATH - ) - set(SOPRANO_PLUGIN_DIR "${SOPRANO_PLUGIN_DIR}/soprano/plugins") - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) - set(SOPRANO_PLUGIN_NQUADPARSER_FOUND TRUE) - set(_plugins "${_plugins} nquadparser") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) - set(SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND TRUE) - set(_plugins "${_plugins} nquadserializer") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) - set(SOPRANO_PLUGIN_RAPTORPARSER_FOUND TRUE) - set(_plugins "${_plugins} raptorparser") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) - set(SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND TRUE) - set(_plugins "${_plugins} raptorserializer") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) - set(SOPRANO_PLUGIN_REDLANDBACKEND_FOUND TRUE) - set(_plugins "${_plugins} redlandbackend") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) - set(SOPRANO_PLUGIN_SESAME2BACKEND_FOUND TRUE) - set(_plugins "${_plugins} sesame2backend") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) - - if(EXISTS ${SOPRANO_PLUGIN_DIR}/virtuosobackend.desktop) - set(SOPRANO_PLUGIN_VIRTUOSOBACKEND_FOUND TRUE) - set(_plugins "${_plugins} virtuosobackend") - endif(EXISTS ${SOPRANO_PLUGIN_DIR}/virtuosobackend.desktop) - - # make sure the Soprano cmake macros are found - # We also include it directly for convinience - get_filename_component(_SOPRANO_PREFIX ${SOPRANO_INCLUDE_DIR} PATH) - find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/soprano/cmake ) - if(_SOPRANO_MACRO_FILE) - # new Soprano > 2.3.0 location - include(${_SOPRANO_MACRO_FILE}) - set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${_SOPRANO_PREFIX}/share/soprano/cmake) - else(_SOPRANO_MACRO_FILE) - # the old Soprano 2.3.0 location - find_file(_SOPRANO_MACRO_FILE_OLD NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/apps/cmake/modules ) - if(_SOPRANO_MACRO_FILE_OLD) - include(${_SOPRANO_MACRO_FILE_OLD}) - set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${_SOPRANO_PREFIX}/share/apps/cmake/modules) - endif(_SOPRANO_MACRO_FILE_OLD) - endif(_SOPRANO_MACRO_FILE) - - endif(Soprano_FOUND) - - if(Soprano_FOUND) - if(NOT Soprano_FIND_QUIETLY) - message(STATUS "Found Soprano version ${SOPRANO_VERSION}: ${SOPRANO_LIBRARIES}") - message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") - message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") - message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") - message(STATUS "Found Soprano Plugin Dir: ${SOPRANO_PLUGIN_DIR}") - message(STATUS "Found Soprano Plugins:${_plugins}") - endif(NOT Soprano_FIND_QUIETLY) - else(Soprano_FOUND) - if(Soprano_FIND_REQUIRED) - if(NOT SOPRANO_INCLUDE_DIR) - message(FATAL_ERROR "Could not find Soprano includes.") - endif(NOT SOPRANO_INCLUDE_DIR) - if(NOT SOPRANO_LIBRARIES) - message(FATAL_ERROR "Could not find Soprano library.") - endif(NOT SOPRANO_LIBRARIES) - else(Soprano_FIND_REQUIRED) - if(NOT SOPRANO_INCLUDE_DIR) - message(STATUS "Could not find Soprano includes.") - endif(NOT SOPRANO_INCLUDE_DIR) - if(NOT SOPRANO_LIBRARIES) - message(STATUS "Could not find Soprano library.") - endif(NOT SOPRANO_LIBRARIES) - endif(Soprano_FIND_REQUIRED) - endif(Soprano_FOUND) + set(SOPRANO_PLUGIN_DIR "${SOPRANO_PLUGIN_ROOT_DIR}/soprano/plugins") + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) + set(SOPRANO_PLUGIN_NQUADPARSER_FOUND TRUE) + set(_plugins "${_plugins} nquadparser") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadparser.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) + set(SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND TRUE) + set(_plugins "${_plugins} nquadserializer") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/nquadserializer.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) + set(SOPRANO_PLUGIN_RAPTORPARSER_FOUND TRUE) + set(_plugins "${_plugins} raptorparser") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorparser.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) + set(SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND TRUE) + set(_plugins "${_plugins} raptorserializer") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/raptorserializer.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) + set(SOPRANO_PLUGIN_REDLANDBACKEND_FOUND TRUE) + set(_plugins "${_plugins} redlandbackend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/redlandbackend.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) + set(SOPRANO_PLUGIN_SESAME2BACKEND_FOUND TRUE) + set(_plugins "${_plugins} sesame2backend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/sesame2backend.desktop) + + if(EXISTS ${SOPRANO_PLUGIN_DIR}/virtuosobackend.desktop) + set(SOPRANO_PLUGIN_VIRTUOSOBACKEND_FOUND TRUE) + set(_plugins "${_plugins} virtuosobackend") + endif(EXISTS ${SOPRANO_PLUGIN_DIR}/virtuosobackend.desktop) + + # make sure the Soprano cmake macros are found + # We also include it directly for convinience + get_filename_component(_SOPRANO_PREFIX ${SOPRANO_INCLUDE_DIR} PATH) + find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/soprano/cmake ) + if(_SOPRANO_MACRO_FILE) + # new Soprano > 2.3.0 location + include(${_SOPRANO_MACRO_FILE}) + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${_SOPRANO_PREFIX}/share/soprano/cmake) + else(_SOPRANO_MACRO_FILE) + # the old Soprano 2.3.0 location + find_file(_SOPRANO_MACRO_FILE_OLD NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/apps/cmake/modules ) + if(_SOPRANO_MACRO_FILE_OLD) + include(${_SOPRANO_MACRO_FILE_OLD}) + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${_SOPRANO_PREFIX}/share/apps/cmake/modules) + endif(_SOPRANO_MACRO_FILE_OLD) + endif(_SOPRANO_MACRO_FILE) + +endif(Soprano_FOUND) + +if(Soprano_FOUND) + if(NOT Soprano_FIND_QUIETLY) + message(STATUS "Found Soprano version ${SOPRANO_VERSION}: ${SOPRANO_LIBRARIES}") + message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") + message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") + message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") + message(STATUS "Found Soprano Plugin Dir: ${SOPRANO_PLUGIN_DIR}") + message(STATUS "Found Soprano Plugins:${_plugins}") + endif(NOT Soprano_FIND_QUIETLY) +else(Soprano_FOUND) + if(Soprano_FIND_REQUIRED) + if(NOT SOPRANO_INCLUDE_DIR) + message(FATAL_ERROR "Could not find Soprano includes.") + endif(NOT SOPRANO_INCLUDE_DIR) + if(NOT SOPRANO_LIBRARIES) + message(FATAL_ERROR "Could not find Soprano library.") + endif(NOT SOPRANO_LIBRARIES) + else(Soprano_FIND_REQUIRED) + if(NOT SOPRANO_INCLUDE_DIR) + message(STATUS "Could not find Soprano includes.") + endif(NOT SOPRANO_INCLUDE_DIR) + if(NOT SOPRANO_LIBRARIES) + message(STATUS "Could not find Soprano library.") + endif(NOT SOPRANO_LIBRARIES) + endif(Soprano_FIND_REQUIRED) +endif(Soprano_FOUND) mark_as_advanced(SOPRANO_CLIENT_LIBRARIES SOPRANO_INDEX_LIBRARIES SOPRANO_LIBRARIES SOPRANO_SERVER_LIBRARIES SOPRANO_INCLUDE_DIR - SOPRANO_PLUGIN_DIR + SOPRANO_PLUGIN_ROOT_DIR _SOPRANO_MACRO_FILE SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE SOPRANO_SOPRANOCMD_EXECUTABLE -- cgit v1.2.1 From 037710f025b810bc0afee7b60dc0d3bdf946def8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 25 Nov 2009 23:26:44 +0000 Subject: Add those files back because we shipped them with stable KDE releases. We will in no way completely remove them, at least empty files just printing a useful error message will stay. Let's see what Sebastian says. Alex svn path=/trunk/KDE/kdelibs/; revision=1054390 --- modules/FindKNepomuk.cmake | 39 +++++++++++++++++++++++++++++++++++++++ modules/FindKonto.cmake | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 modules/FindKNepomuk.cmake create mode 100644 modules/FindKonto.cmake (limited to 'modules') diff --git a/modules/FindKNepomuk.cmake b/modules/FindKNepomuk.cmake new file mode 100644 index 00000000..655f6fe8 --- /dev/null +++ b/modules/FindKNepomuk.cmake @@ -0,0 +1,39 @@ +# Once done this will define +# +# KNEPOMUK_FOUND - system has the Nepomuk-KDE backbone lib KNep +# KNEPOMUK_INCLUDES - the libKNep include directory +# KNEPOMUK_LIBRARIES - Link these to use libKNep +# + +# Copyright (c) 2008, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) + set(KNepomuk_FIND_QUIETLY TRUE) +endif(KNEPOMUK_INCLUDES AND KNEPOMUK_LIBRARIES) + +FIND_PATH(KNEPOMUK_INCLUDES + NAMES + knepomuk/knepomuk.h + PATHS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(KNEPOMUK_LIBRARIES + NAMES + knepomuk + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(KNepomuk DEFAULT_MSG KNEPOMUK_INCLUDES KNEPOMUK_LIBRARIES ) + + +MARK_AS_ADVANCED(KNEPOMUK_INCLUDES KNEPOMUK_LIBRARIES) + diff --git a/modules/FindKonto.cmake b/modules/FindKonto.cmake new file mode 100644 index 00000000..d3c3458b --- /dev/null +++ b/modules/FindKonto.cmake @@ -0,0 +1,38 @@ +# Once done this will define +# +# KONTO_FOUND - system has the Nepomuk-KDE backbone lib Konto +# KONTO_INCLUDES - the libKonto include directory +# KONTO_LIBRARIES - Link these to use libKonto +# + +# Copyright (c) 2008, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if(KONTO_INCLUDES AND KONTO_LIBRARIES) + # Already in cache, be silent + set(Konto_FIND_QUIETLY TRUE) +endif(KONTO_INCLUDES AND KONTO_LIBRARIES + + +FIND_PATH(KONTO_INCLUDES + NAMES + konto/class.h + PATHS + ${KDE4_INCLUDE_DIR} + ${INCLUDE_INSTALL_DIR} +) + +FIND_LIBRARY(KONTO_LIBRARIES + NAMES + konto + PATHS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Kondo DEFAULT_MSG KONTO_INCLUDES KONTO_LIBRARIES) + -- cgit v1.2.1 From 76554f48cb318850451b05d9e4bcd9a246fe1f92 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 25 Nov 2009 23:39:14 +0000 Subject: -add support for the COMPONENTS keyword, so we can specifiy which components are REQUIRED (PLUGIN_RAPTORPARSER and PLUGIN_REDLANDBACKEND for kdelibs) Alex CCMAIL: trueg@kde.org CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1054394 --- modules/FindSoprano.cmake | 106 +++++++++++++++++++++++----------------------- 1 file changed, 52 insertions(+), 54 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index aab22811..d7b82bca 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -2,7 +2,7 @@ # Find an installation of Soprano # # Sets the following variables: -# Soprano_FOUND - true is Soprano has been found +# Soprano_FOUND, SOPRANO_FOUND - true is Soprano has been found # SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE - the onto2vocabularyclass program, required for adding ontologies # SOPRANO_SOPRANOCMD_EXECUTABLE - the sopranocmd program # SOPRANO_INCLUDE_DIR - The include directory @@ -23,8 +23,21 @@ # Options: # Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) # +# FindSoprano.cmake supports the COMPOENTS keyword of find_package(). +# If the REQUIRED keyword is used and any of the specified components have not been +# found, SOPRANO_FOUND will be set to FALSE. +# +# The following components are supported: +# PLUGIN_NQUADPARSER +# PLUGIN_NQUADSERIALIZER +# PLUGIN_RAPTORPARSER +# PLUGIN_RAPTORSERIALIZER +# PLUGIN_REDLANDBACKEND +# PLUGIN_SESAME2BACKEND +# PLUGIN_VIRTUOSOBACKEND # Copyright (c) 2008, Sebastian Trueg, +# Copyright (c) 2009, Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -90,23 +103,6 @@ find_library_with_debug(SOPRANO_SERVER_LIBRARIES ${KDE4_LIB_DIR} ) -# check for all the libs as required to make sure that we do not try to compile with an old version - -if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) - set(Soprano_FOUND TRUE) -endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES) - -if(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) - set(SopranoIndex_FOUND TRUE) -endif(Soprano_FOUND AND SOPRANO_INDEX_LIBRARIES) - -if(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) - set(SopranoClient_FOUND TRUE) -endif(Soprano_FOUND AND SOPRANO_CLIENT_LIBRARIES) - -if(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) - set(SopranoServer_FOUND TRUE) -endif(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) # check Soprano version @@ -115,13 +111,12 @@ if(NOT SOPRANO_MIN_VERSION) set(SOPRANO_MIN_VERSION "1.99") endif(NOT SOPRANO_MIN_VERSION) -if(Soprano_FOUND) +if(SOPRANO_INCLUDE_DIR) file(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) - string(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) + string(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH "${SOPRANO_VERSION_CONTENT}") if(SOPRANO_VERSION_MATCH) string(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) if(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") - set(Soprano_FOUND FALSE) if(Soprano_FIND_REQUIRED) message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install ${SOPRANO_MIN_VERSION} or newer") else(Soprano_FIND_REQUIRED) @@ -129,16 +124,24 @@ if(Soprano_FOUND) endif(Soprano_FIND_REQUIRED) endif(SOPRANO_VERSION STRLESS "${SOPRANO_MIN_VERSION}") endif(SOPRANO_VERSION_MATCH) -endif(Soprano_FOUND) +endif(SOPRANO_INCLUDE_DIR) +set(_SOPRANO_REQUIRED_COMPONENTS_RESULTS) +if( Soprano_FIND_COMPONENTS ) + foreach( _component ${Soprano_FIND_COMPONENTS} ) + set(_SOPRANO_REQUIRED_COMPONENTS_RESULTS ${_SOPRANO_REQUIRED_COMPONENTS_RESULTS} SOPRANO_${_component}_FOUND) + endforeach( _component ) +endif( Soprano_FIND_COMPONENTS ) #look for parser plugins -if(Soprano_FOUND) +if(SOPRANO_INCLUDE_DIR) + get_filename_component(_SOPRANO_PREFIX ${SOPRANO_INCLUDE_DIR} PATH) + find_path(SOPRANO_PLUGIN_ROOT_DIR NAMES soprano/plugins PATHS - ${SOPRANO_INCLUDE_DIR}/../share + ${_SOPRANO_PREFIX}/share ${SHARE_INSTALL_PREFIX} /usr/share /usr/local/share @@ -184,7 +187,6 @@ if(Soprano_FOUND) # make sure the Soprano cmake macros are found # We also include it directly for convinience - get_filename_component(_SOPRANO_PREFIX ${SOPRANO_INCLUDE_DIR} PATH) find_file(_SOPRANO_MACRO_FILE NAMES SopranoAddOntology.cmake HINTS ${_SOPRANO_PREFIX}/share/soprano/cmake ) if(_SOPRANO_MACRO_FILE) # new Soprano > 2.3.0 location @@ -199,34 +201,31 @@ if(Soprano_FOUND) endif(_SOPRANO_MACRO_FILE_OLD) endif(_SOPRANO_MACRO_FILE) -endif(Soprano_FOUND) - -if(Soprano_FOUND) - if(NOT Soprano_FIND_QUIETLY) - message(STATUS "Found Soprano version ${SOPRANO_VERSION}: ${SOPRANO_LIBRARIES}") - message(STATUS "Found Soprano includes: ${SOPRANO_INCLUDE_DIR}") - message(STATUS "Found Soprano Index: ${SOPRANO_INDEX_LIBRARIES}") - message(STATUS "Found Soprano Client: ${SOPRANO_CLIENT_LIBRARIES}") - message(STATUS "Found Soprano Plugin Dir: ${SOPRANO_PLUGIN_DIR}") - message(STATUS "Found Soprano Plugins:${_plugins}") - endif(NOT Soprano_FIND_QUIETLY) -else(Soprano_FOUND) - if(Soprano_FIND_REQUIRED) - if(NOT SOPRANO_INCLUDE_DIR) - message(FATAL_ERROR "Could not find Soprano includes.") - endif(NOT SOPRANO_INCLUDE_DIR) - if(NOT SOPRANO_LIBRARIES) - message(FATAL_ERROR "Could not find Soprano library.") - endif(NOT SOPRANO_LIBRARIES) - else(Soprano_FIND_REQUIRED) - if(NOT SOPRANO_INCLUDE_DIR) - message(STATUS "Could not find Soprano includes.") - endif(NOT SOPRANO_INCLUDE_DIR) - if(NOT SOPRANO_LIBRARIES) - message(STATUS "Could not find Soprano library.") - endif(NOT SOPRANO_LIBRARIES) - endif(Soprano_FIND_REQUIRED) -endif(Soprano_FOUND) +endif(SOPRANO_INCLUDE_DIR) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Soprano DEFAULT_MSG + SOPRANO_INCLUDE_DIR SOPRANO_LIBRARIES + ${_SOPRANO_REQUIRED_COMPONENTS_RESULTS} ) + +# for compatibility: +set(Soprano_FOUND ${SOPRANO_FOUND}) + +# check for all the libs as required to make sure that we do not try to compile with an old version + +if(SOPRANO_FOUND AND SOPRANO_INDEX_LIBRARIES) + set(SopranoIndex_FOUND TRUE) +endif(SOPRANO_FOUND AND SOPRANO_INDEX_LIBRARIES) + +if(SOPRANO_FOUND AND SOPRANO_CLIENT_LIBRARIES) + set(SopranoClient_FOUND TRUE) +endif(SOPRANO_FOUND AND SOPRANO_CLIENT_LIBRARIES) + +if(SOPRANO_FOUND AND SOPRANO_SERVER_LIBRARIES) + set(SopranoServer_FOUND TRUE) +endif(SOPRANO_FOUND AND SOPRANO_SERVER_LIBRARIES) + + mark_as_advanced(SOPRANO_CLIENT_LIBRARIES SOPRANO_INDEX_LIBRARIES @@ -239,4 +238,3 @@ mark_as_advanced(SOPRANO_CLIENT_LIBRARIES SOPRANO_SOPRANOCMD_EXECUTABLE ) -#endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) -- cgit v1.2.1 From e9a85eb38858566704041b761a5b8bfa3222e0e3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 25 Nov 2009 23:47:30 +0000 Subject: Revert the new cmake module committed without any review or announcement and which was in a broken state. This has the effect that the condition for building nepomuk is now never true (instead of sometimes), but I have the impression that for successfully building all of KDE nepomuk is always required, since the nepomuk/trig parsing is also used e.g. in kdepim and I think also in kdenetwork. So the behaviour was already wrong, and now it is more exposed. This should help getting it fixed. Also, this commit makes explicit that soprano with redland backend and raptorparser are in fact required for building KDE since last week. Alex CCMAIL: trueg@kde.org CCMAIL: kde-buildsystem@kde.org CCMAIL: kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=1054396 --- modules/FindSharedDesktopOntologies.cmake | 38 +++---------------------------- 1 file changed, 3 insertions(+), 35 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index c0ebb37d..9e9f4278 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -1,36 +1,4 @@ -# - Try to find shared-desktop-ontologies -# Once done this will define -# -# DESKTOP_ONTOLOGIES_FOUND - system has shared-desktop-ontologies -# DESKTOP_ONTOLOGIES_DIR - Folder where the ontologies are stored -# DESKTOP_ONTOLOGIES_VERSION - version number of shared-desktop-ontologies +# This module was committed without any review or announcement and in a not acceptable state, so disable it for now. Alex +message(STATUS "FindSharedDesktopOntologies.cmake is just a placeholder until a reviewed module is committed") -# Copyright (c) 2009, Sebastian Trueg, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -IF (DESKTOP_ONTOLOGIES_DIR) - # in cache already - SET(SharedDesktopOntologies_FIND_QUIETLY TRUE) -ENDIF (DESKTOP_ONTOLOGIES_DIR) - -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - PKG_SEARCH_MODULE( DESKTOP_ONTOLOGIES shared-desktop-ontologies ) - set(DESKTOP_ONTOLOGIES_DIR ${DESKTOP_ONTOLOGIES_PREFIX}/share/ontology) -ENDIF (NOT WIN32) - -IF (DESKTOP_ONTOLOGIES_FOUND) - IF (NOT SharedDesktopOntologies_FIND_QUIETLY) - MESSAGE(STATUS "Found SharedDesktopOntologies ${DESKTOP_ONTOLOGIES_VERSION}: ${DESKTOP_ONTOLOGIES_DIR}") - ENDIF (NOT SharedDesktopOntologies_FIND_QUIETLY) -ELSE (DESKTOP_ONTOLOGIES_FOUND) - IF (SharedDesktopOntologies_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could NOT find SharedDesktopOntologies, check FindPkgConfig output above!") - ENDIF (SharedDesktopOntologies_FIND_REQUIRED) -ENDIF (DESKTOP_ONTOLOGIES_FOUND) - -MARK_AS_ADVANCED(DESKTOP_ONTOLOGIES_DIR) +set(DESKTOP_ONTOLOGIES_DIR "") -- cgit v1.2.1 From 3ebe3e49632c59e189b309379ab5928029b3355a Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Fri, 27 Nov 2009 09:25:47 +0000 Subject: Fixed Nepomuk build system including the shared ontologies. Approved by Andreas Pakulat. svn path=/trunk/KDE/kdelibs/; revision=1054973 --- modules/FindNepomuk.cmake | 10 ++++---- modules/FindSharedDesktopOntologies.cmake | 39 ++++++++++++++++++++++++++++--- 2 files changed, 41 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index b9f7b820..8ca6e4f2 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -19,14 +19,14 @@ if (NOT DEFINED Soprano_FOUND) find_package(Soprano) include(MacroLogFeature) - macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk") + macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" TRUE "" "Soprano is needed for Nepomuk") endif (NOT DEFINED Soprano_FOUND) -if (NOT DEFINED DESKTOP_ONTOLOGIES_FOUND) +if (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) find_package(SharedDesktopOntologies) include(MacroLogFeature) - macro_log_feature(DESKTOP_ONTOLOGIES_FOUND "Shared desktop ontologies" "Desktop ontologies" "http://oscaf.sourceforge.net" FALSE "" "Ontologies necessary for the Nepomuk semantic desktop.") -endif (NOT DEFINED DESKTOP_ONTOLOGIES_FOUND) + macro_log_feature(SHAREDDESKTOPONTOLOGIES_FOUND "Shared desktop ontologies" "Desktop ontologies" "http://oscaf.sourceforge.net" TRUE "" "Ontologies necessary for the Nepomuk semantic desktop.") +endif (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) # Check for the following stuff independent from whether soprano has been found # or not. This will give a better error message at the end. @@ -61,7 +61,7 @@ include(FindPackageHandleStandardArgs) # easier for the user to see what was missing: find_package_handle_standard_args(Nepomuk DEFAULT_MSG NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR - Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND DESKTOP_ONTOLOGIES_FOUND + Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND SHAREDDESKTOPONTOLOGIES_FOUND ) #to retain backward compatibility diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index 9e9f4278..f102126f 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -1,4 +1,37 @@ -# This module was committed without any review or announcement and in a not acceptable state, so disable it for now. Alex -message(STATUS "FindSharedDesktopOntologies.cmake is just a placeholder until a reviewed module is committed") +# - Try to find shared-desktop-ontologies +# The shared-desktop-ontologies package is a direct dependancy of the Nepomuk +# semantic desktop system and provides all necessary ontology files like +# RDF, RDFS, NRL, or NIE. +# +# The package is created by the OSCAF project (http://oscaf.sourceforge.net). +# +# Once done this will define +# +# SHAREDDESKTOPONTOLOGIES_FOUND - system has shared-desktop-ontologies +# SHAREDDESKTOPONTOLOGIES_ROOT_DIR - Folder where the ontologies are stored +# -set(DESKTOP_ONTOLOGIES_DIR "") +# Copyright (c) 2009, Sebastian Trueg, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) + # in cache already + set(SHAREDDESKTOPONTOLOGIES_FIND_QUIETLY TRUE) +endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) + +find_path (SHAREDDESKTOPONTOLOGIES_ROOT_DIR + nie/nie.trig + PATHS + /usr/share + /usr/local/share + ${SHARE_INSTALL_PREFIX} + ENV XDG_DATA_DIRS + PATH_SUFFIXES ontology +) + +mark_as_advanced(SHAREDDESKTOPONTOLOGIES_ROOT_DIR) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(SharedDesktopOntologies DEFAULT_MSG SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -- cgit v1.2.1 From c8ff15f718ab374ac2f30721256b42ee9c73f17f Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Fri, 27 Nov 2009 11:32:53 +0000 Subject: Also find shared-desktop-ontologies in CMAKE_PREFIX_PATH svn path=/trunk/KDE/kdelibs/; revision=1055125 --- modules/FindSharedDesktopOntologies.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index f102126f..6b3cabe8 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -21,6 +21,7 @@ if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) set(SHAREDDESKTOPONTOLOGIES_FIND_QUIETLY TRUE) endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) +# Look in the standard dirs find_path (SHAREDDESKTOPONTOLOGIES_ROOT_DIR nie/nie.trig PATHS @@ -28,8 +29,12 @@ find_path (SHAREDDESKTOPONTOLOGIES_ROOT_DIR /usr/local/share ${SHARE_INSTALL_PREFIX} ENV XDG_DATA_DIRS - PATH_SUFFIXES ontology -) + PATH_SUFFIXES ontology) + +# Look in CMAKE_PREFIX_PATH +find_path(SHAREDDESKTOPONTOLOGIES_ROOT_DIR + nie/nie.trig + PATH_SUFFIXES share/ontology) mark_as_advanced(SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -- cgit v1.2.1 From 5de80f62cd5cf81df29334e14b81696f8764b8d6 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Fri, 27 Nov 2009 14:36:29 +0000 Subject: CCMAIL: neundorf@kde.org Fixing naming mess in polkitqt-1 cmake files. Renaming all the according variables to POLKITQT-1_* for consistency with the so name of the library (polkit-qt-1). Again for consistency, rename the KAUTH_BACKEND of polkitqt-1 to PolkitQt-1 instead of PolkitQt1. This time it works :) svn path=/trunk/KDE/kdelibs/; revision=1055185 --- modules/FindPolkitQt-1.cmake | 78 ++++++++++++++++++++++---------------------- 1 file changed, 39 insertions(+), 39 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake index 357552b0..b9b73cd7 100644 --- a/modules/FindPolkitQt-1.cmake +++ b/modules/FindPolkitQt-1.cmake @@ -1,74 +1,74 @@ -# - Try to find Polkit-qt-1 +# - Try to find PolkitQt-1 # Once done this will define # -# POLKITQT_1_FOUND - system has Polkit-qt -# POLKITQT_1_INCLUDE_DIR - the Polkit-qt include directory -# POLKITQT_1_LIBRARIES - Link these to use all Polkit-qt libs -# POLKITQT_1_CORE_LIBRARY - Link this to use the polkit-qt-core library only -# POLKITQT_1_GUI_LIBRARY - Link this to use GUI elements in polkit-qt (polkit-qt-gui) -# POLKITQT_1_AGENT_LIBRARY - Link this to use the agent wrapper in polkit-qt -# POLKITQT_1_DEFINITIONS - Compiler switches required for using Polkit-qt +# POLKITQT-1_FOUND - system has Polkit-qt +# POLKITQT-1_INCLUDE_DIR - the Polkit-qt include directory +# POLKITQT-1_LIBRARIES - Link these to use all Polkit-qt libs +# POLKITQT-1_CORE_LIBRARY - Link this to use the polkit-qt-core library only +# POLKITQT-1_GUI_LIBRARY - Link this to use GUI elements in polkit-qt (polkit-qt-gui) +# POLKITQT-1_AGENT_LIBRARY - Link this to use the agent wrapper in polkit-qt +# POLKITQT-1_DEFINITIONS - Compiler switches required for using Polkit-qt # Copyright (c) 2009, Dario Freddi, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (POLKITQT_1_INCLUDE_DIR AND POLKITQT_1_LIB) - set(POLKITQT_1_FIND_QUIETLY TRUE) -endif (POLKITQT_1_INCLUDE_DIR AND POLKITQT_1_LIB) +if (POLKITQT-1_INCLUDE_DIR AND POLKITQT-1_LIB) + set(POLKITQT-1_FIND_QUIETLY TRUE) +endif (POLKITQT-1_INCLUDE_DIR AND POLKITQT-1_LIB) -if (NOT POLKITQT_1_MIN_VERSION) - set(POLKITQT_1_MIN_VERSION "0.95.0") -endif (NOT POLKITQT_1_MIN_VERSION) +if (NOT POLKITQT-1_MIN_VERSION) + set(POLKITQT-1_MIN_VERSION "0.95.0") +endif (NOT POLKITQT-1_MIN_VERSION) if (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig) - pkg_check_modules(PC_POLKITQT_1 QUIET polkit-qt-1) - set(POLKITQT_1_DEFINITIONS ${PC_POLKITQT_1_CFLAGS_OTHER}) + pkg_check_modules(PC_POLKITQT-1 QUIET polkit-qt-1) + set(POLKITQT-1_DEFINITIONS ${PC_POLKITQT-1_CFLAGS_OTHER}) endif (NOT WIN32) -find_path( POLKITQT_1_INCLUDE_DIR +find_path( POLKITQT-1_INCLUDE_DIR NAMES PolkitQt/authority.h PATH_SUFFIXES polkit-qt-1 ) -find_library( POLKITQT_1_CORE_LIBRARY +find_library( POLKITQT-1_CORE_LIBRARY NAMES polkit-qt-core-1 - HINTS ${PC_POLKITQT_1_LIBDIR} + HINTS ${PC_POLKITQT-1_LIBDIR} ) -find_library( POLKITQT_1_GUI_LIBRARY +find_library( POLKITQT-1_GUI_LIBRARY NAMES polkit-qt-gui-1 - HINTS ${PC_POLKITQT_1_LIBDIR} + HINTS ${PC_POLKITQT-1_LIBDIR} ) -find_library( POLKITQT_1_AGENT_LIBRARY +find_library( POLKITQT-1_AGENT_LIBRARY NAMES polkit-qt-agent-1 - HINTS ${PC_POLKITQT_1_LIBDIR} + HINTS ${PC_POLKITQT-1_LIBDIR} ) -set(POLKITQT_1_LIBRARIES ${POLKITQT_1_GUI_LIBRARY} ${POLKITQT_1_CORE_LIBRARY} ${POLKITQT_1_AGENT_LIBRARY}) +set(POLKITQT-1_LIBRARIES ${POLKITQT-1_GUI_LIBRARY} ${POLKITQT-1_CORE_LIBRARY} ${POLKITQT-1_AGENT_LIBRARY}) include(FindPackageHandleStandardArgs) -# handle the QUIETLY and REQUIRED arguments and set POLKITQT_1_FOUND to TRUE if +# handle the QUIETLY and REQUIRED arguments and set POLKITQT-1_FOUND to TRUE if # all listed variables are TRUE -find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT_1_LIBRARIES POLKITQT_1_INCLUDE_DIR) +find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT-1_LIBRARIES POLKITQT-1_INCLUDE_DIR) -mark_as_advanced(POLKITQT_1_INCLUDE_DIR POLKITQT_1_CORE_LIBRARY POLKITQT_1_GUI_LIBRARY POLKITQT_1_LIBRARIES) +mark_as_advanced(POLKITQT-1_INCLUDE_DIR POLKITQT-1_CORE_LIBRARY POLKITQT-1_GUI_LIBRARY POLKITQT-1_LIBRARIES) -if (POLKITQT_1_FOUND) - if (PC_POLKITQT_1_VERSION VERSION_LESS POLKITQT_1_MIN_VERSION) - message(STATUS "Found Polkit-Qt-1 release < ${POLKITQT_1_MIN_VERSION}") - message(STATUS "You need Polkit-Qt-1 version ${POLKITQT_1_MIN_VERSION} or newer to compile this component") - set(POLKITQT_1_FOUND FALSE) +if (POLKITQT-1_FOUND) + if (PC_POLKITQT-1_VERSION VERSION_LESS POLKITQT-1_MIN_VERSION) + message(STATUS "Found PolkitQt-1 release < ${POLKITQT-1_MIN_VERSION}") + message(STATUS "You need PolkitQt-1 version ${POLKITQT-1_MIN_VERSION} or newer to compile this component") + set(POLKITQT-1_FOUND FALSE) return() - else (PC_POLKITQT_1_VERSION VERSION_LESS POLKITQT_1_MIN_VERSION) - if ( NOT PC_POLKITQT_1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) + else (PC_POLKITQT-1_VERSION VERSION_LESS POLKITQT-1_MIN_VERSION) + if ( NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " - "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT_1_PREFIX} prefix") - endif (NOT PC_POLKITQT_1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) - endif (PC_POLKITQT_1_VERSION VERSION_LESS POLKITQT_1_MIN_VERSION) -endif (POLKITQT_1_FOUND) + "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT-1_PREFIX} prefix") + endif (NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) + endif (PC_POLKITQT-1_VERSION VERSION_LESS POLKITQT-1_MIN_VERSION) +endif (POLKITQT-1_FOUND) -set(POLKITQT_1_POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions) +set(POLKITQT-1_POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions) -- cgit v1.2.1 From f9eb85764ac652b8afba04e363c67128a861a7e4 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Sun, 29 Nov 2009 21:27:26 +0000 Subject: Support upcoming 0.2 version of the shared-desktop-ontologies which will bring a cmake config file svn path=/trunk/KDE/kdelibs/; revision=1056325 --- modules/FindSharedDesktopOntologies.cmake | 38 +++++++++++++++++++------------ 1 file changed, 23 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index 6b3cabe8..073ca08f 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -7,8 +7,11 @@ # # Once done this will define # -# SHAREDDESKTOPONTOLOGIES_FOUND - system has shared-desktop-ontologies -# SHAREDDESKTOPONTOLOGIES_ROOT_DIR - Folder where the ontologies are stored +# SHAREDDESKTOPONTOLOGIES_FOUND - system has shared-desktop-ontologies +# SHAREDDESKTOPONTOLOGIES_ROOT_DIR - Folder where the ontologies are stored +# SHAREDDESKTOPONTOLOGIES_VERSION_MAJOR - The major version number, i.e. '1' in '1.2' +# SHAREDDESKTOPONTOLOGIES_VERSION_MINOR - The minor version number, i.e. '2' in '1.2' +# SHAREDDESKTOPONTOLOGIES_VERSION - The complete version string, i.e. '1.2' # # Copyright (c) 2009, Sebastian Trueg, @@ -21,20 +24,25 @@ if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) set(SHAREDDESKTOPONTOLOGIES_FIND_QUIETLY TRUE) endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -# Look in the standard dirs -find_path (SHAREDDESKTOPONTOLOGIES_ROOT_DIR - nie/nie.trig - PATHS - /usr/share - /usr/local/share - ${SHARE_INSTALL_PREFIX} - ENV XDG_DATA_DIRS - PATH_SUFFIXES ontology) +# First try the SharedDesktopOntologiesConfig.cmake from shared-desktop-ontologies 0.2 and newer +find_package(SharedDesktopOntologies ${SharedDesktopOntologies_FIND_VERSION} QUIET NO_MODULE) -# Look in CMAKE_PREFIX_PATH -find_path(SHAREDDESKTOPONTOLOGIES_ROOT_DIR - nie/nie.trig - PATH_SUFFIXES share/ontology) +if (NOT SHAREDDESKTOPONTOLOGIES_ROOT_DIR) + # Look in the standard dirs + find_path (SHAREDDESKTOPONTOLOGIES_ROOT_DIR + nie/nie.trig + PATHS + /usr/share + /usr/local/share + ${SHARE_INSTALL_PREFIX} + ENV XDG_DATA_DIRS + PATH_SUFFIXES ontology) + + # Look in CMAKE_PREFIX_PATH + find_path(SHAREDDESKTOPONTOLOGIES_ROOT_DIR + nie/nie.trig + PATH_SUFFIXES share/ontology) +endif (NOT SHAREDDESKTOPONTOLOGIES_ROOT_DIR) mark_as_advanced(SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -- cgit v1.2.1 From bc0afe6c35476c3a7f68ed05d6811cc45b2db9e0 Mon Sep 17 00:00:00 2001 From: George Kiagiadakis Date: Mon, 30 Nov 2009 12:18:45 +0000 Subject: Make soprano and sdo optional in FindNepomuk.cmake. If nepomuk is optional, they should not be marked as required. svn path=/trunk/KDE/kdelibs/; revision=1056584 --- modules/FindNepomuk.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index 8ca6e4f2..35b7c4de 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -19,13 +19,13 @@ if (NOT DEFINED Soprano_FOUND) find_package(Soprano) include(MacroLogFeature) - macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" TRUE "" "Soprano is needed for Nepomuk") + macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk") endif (NOT DEFINED Soprano_FOUND) if (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) find_package(SharedDesktopOntologies) include(MacroLogFeature) - macro_log_feature(SHAREDDESKTOPONTOLOGIES_FOUND "Shared desktop ontologies" "Desktop ontologies" "http://oscaf.sourceforge.net" TRUE "" "Ontologies necessary for the Nepomuk semantic desktop.") + macro_log_feature(SHAREDDESKTOPONTOLOGIES_FOUND "Shared desktop ontologies" "Desktop ontologies" "http://oscaf.sourceforge.net" FALSE "" "Ontologies necessary for the Nepomuk semantic desktop.") endif (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) # Check for the following stuff independent from whether soprano has been found -- cgit v1.2.1 From 14224f75231147cb4dd434d409e7ddca76c75040 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 30 Nov 2009 19:31:25 +0000 Subject: -find_package_handle_standard_args() already takes care of not printing the same message twice, so it's not necessary to set the QUIETLY -multiple suffixes can be listed after PATH_SUFFIXES, so it's not necessary to have two find_path() calls -/usr and /usr/local are already part of CMAKE_SYSTEM_PREFIX_PATH, so it's not necessary to set /usr/share and /usr/local/share explicitely (see CMake Modules/Platform/UnixPath.cmake) Alex CCMAIL: trueg@kde.org svn path=/trunk/KDE/kdelibs/; revision=1056761 --- modules/FindSharedDesktopOntologies.cmake | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index 073ca08f..c5b78fc9 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -19,10 +19,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) - # in cache already - set(SHAREDDESKTOPONTOLOGIES_FIND_QUIETLY TRUE) -endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) # First try the SharedDesktopOntologiesConfig.cmake from shared-desktop-ontologies 0.2 and newer find_package(SharedDesktopOntologies ${SharedDesktopOntologies_FIND_VERSION} QUIET NO_MODULE) @@ -32,16 +28,10 @@ if (NOT SHAREDDESKTOPONTOLOGIES_ROOT_DIR) find_path (SHAREDDESKTOPONTOLOGIES_ROOT_DIR nie/nie.trig PATHS - /usr/share - /usr/local/share ${SHARE_INSTALL_PREFIX} ENV XDG_DATA_DIRS - PATH_SUFFIXES ontology) + PATH_SUFFIXES ontology share/ontology ) - # Look in CMAKE_PREFIX_PATH - find_path(SHAREDDESKTOPONTOLOGIES_ROOT_DIR - nie/nie.trig - PATH_SUFFIXES share/ontology) endif (NOT SHAREDDESKTOPONTOLOGIES_ROOT_DIR) mark_as_advanced(SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -- cgit v1.2.1 From 3557fbb0ab929c40e0ff437af2e0dfa7a58a589e Mon Sep 17 00:00:00 2001 From: Mike Arthur Date: Tue, 1 Dec 2009 16:17:08 +0000 Subject: Find Phonon include directory on Qt with Frameworks. svn path=/trunk/KDE/kdelibs/; revision=1057166 --- modules/FindPhonon.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 33faaada..daa457ad 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -35,7 +35,7 @@ else(PHONON_FOUND) # then at the default system locations (CMAKE_SYSTEM_PREFIX_PATH, i.e. /usr etc.) find_library(PHONON_LIBRARY NAMES phonon) - find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) + find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h) if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) -- cgit v1.2.1 From 8addb224c5682e43dc750f946a95ed2b8063db93 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Tue, 1 Dec 2009 20:43:41 +0000 Subject: correct copy'n'paste error svn path=/trunk/KDE/kdelibs/; revision=1057264 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index ef089142..2ca486eb 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -858,7 +858,7 @@ IF (QT4_QMAKE_FOUND) FIND_LIBRARY(QT_PHONON_LIBRARY NAMES phonon phonon4 phonon_debug phonond4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtScriptTools QtScriptTools_debug QtScriptTools4 QtScriptToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) IF(MSVC) FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) -- cgit v1.2.1 From de2e12bd1bac0eaad299831dfe4e25d7a96c02d9 Mon Sep 17 00:00:00 2001 From: Mike Arthur Date: Wed, 2 Dec 2009 15:26:12 +0000 Subject: Various OSX 10.6 fixes. svn path=/trunk/KDE/kdelibs/; revision=1057486 --- modules/FindKDE4Internal.cmake | 3 +++ 1 file changed, 3 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 7eecb734..710a8af9 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -979,6 +979,9 @@ if (APPLE) # optimization flags are set below for the various build types set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") + if (QT_USE_FRAMEWORKS) + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -F${QT_LIBRARY_DIR}") + endif (QT_USE_FRAMEWORKS) endif (APPLE) -- cgit v1.2.1 From ae8b227b55ed43a330faca5a61830268277a9039 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 3 Dec 2009 21:24:54 +0000 Subject: -use HINTS instead of PATHS and don't disable the default search path, this should find it in more places Alex svn path=/trunk/KDE/kdelibs/; revision=1058054 --- modules/FindSoprano.cmake | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index d7b82bca..67b47868 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -140,13 +140,10 @@ if(SOPRANO_INCLUDE_DIR) find_path(SOPRANO_PLUGIN_ROOT_DIR NAMES soprano/plugins - PATHS + HINTS ${_SOPRANO_PREFIX}/share ${SHARE_INSTALL_PREFIX} - /usr/share - /usr/local/share - NO_DEFAULT_PATH - NO_SYSTEM_ENVIRONMENT_PATH + PATH_SUFFIXES share ) set(SOPRANO_PLUGIN_DIR "${SOPRANO_PLUGIN_ROOT_DIR}/soprano/plugins") -- cgit v1.2.1 From 3b68688a4a9b55b52a218550a6581693fce8d5a3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 3 Dec 2009 21:36:28 +0000 Subject: -move this file also to cmake/modules/ where all the other installed files are Alex CCMAIL: trueg@kde.org svn path=/trunk/KDE/kdelibs/; revision=1058059 --- modules/NepomukAddOntologyClasses.cmake | 98 +++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 modules/NepomukAddOntologyClasses.cmake (limited to 'modules') diff --git a/modules/NepomukAddOntologyClasses.cmake b/modules/NepomukAddOntologyClasses.cmake new file mode 100644 index 00000000..687db6ef --- /dev/null +++ b/modules/NepomukAddOntologyClasses.cmake @@ -0,0 +1,98 @@ +# +# Use the Nepomuk resource class generator to generate convinient Resource subclasses +# from ontologies. +# +# Usage: +# NEPOMUK_ADD_ONTOLOGY_CLASSES( +# [FAST] +# [ONTOLOGIES] [ ...] +# [CLASSES [ ...]] +# [VISIBILITY ] +# ) +# +# If FAST is specified the rcgen parameter --fast will be used which results in resource classes +# not based on Nepomuk::Resource but on a custom class which does not perform any checks and simply +# writes the data to Nepomuk (hence the name fast). +# +# The optional CLASSES parameter allows to specify the classes to be generated (RDF URIs) in +# case one does not want all classes in the ontologies to be generated. +# +# The optional VISIBILITY parameter can only be used in non-fast mode and allows to set the gcc visibility +# to make the generated classes usable in a publically exported API. The is used to create +# the name of the export macro and the export include file. Thus, when using "VISIBILITY foobar" include +# file "foobar_export.h" needs to define FOOBAR_EXPORT. +# +# Copyright (c) 2009 Sebastian Trueg +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# +macro(NEPOMUK_ADD_ONTOLOGY_CLASSES _sources) + # extract arguments + set(_current_arg_type "onto") + foreach(_arg ${ARGN}) + if(${_arg} STREQUAL "ONTOLOGIES") + set(_current_arg_type "onto") + elseif(${_arg} STREQUAL "VISIBILITY") + set(_current_arg_type "visib") + elseif(${_arg} STREQUAL "CLASSES") + set(_current_arg_type "class") + elseif(${_arg} STREQUAL "FAST") + set(_fastmode "--fast") + else(${_arg} STREQUAL "ONTOLOGIES") + if(${_current_arg_type} STREQUAL "onto") + list(APPEND _ontologies ${_arg}) + get_filename_component(_filename ${_arg} NAME) + list(APPEND _ontofilenames ${_filename}) + elseif(${_current_arg_type} STREQUAL "class") + list(APPEND _classes "--class" "${_arg}") + else(${_current_arg_type} STREQUAL "onto") + set(_visibility "--visibility" "${_arg}") + endif(${_current_arg_type} STREQUAL "onto") + endif(${_arg} STREQUAL "ONTOLOGIES") + endforeach(_arg) + + # find our helper program (first in the install dir, then everywhere) + find_program(RCGEN nepomuk-rcgen PATHS ${KDE4_BIN_INSTALL_DIR} ${BIN_INSTALL_DIR} NO_DEFAULT_PATH) + find_program(RCGEN nepomuk-rcgen) + + if(NOT RCGEN) + message(SEND_ERROR "Failed to find the Nepomuk source generator" ) + else(NOT RCGEN) + FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) + + # we generate the files in the current binary dir + set(_targetdir ${CMAKE_CURRENT_BINARY_DIR}) + + # generate the list of source and header files + execute_process( + COMMAND ${RCGEN} ${_fastmode} --listheaders --prefix ${_targetdir}/ ${_classes} ${_visibility} ${_ontologies} + OUTPUT_VARIABLE _out_headers + RESULT_VARIABLE rcgen_result + ) + if(NOT ${rcgen_result} EQUAL 0) + message(SEND_ERROR "Running ${RCGEN} to generate list of headers failed with error code ${rcgen_result}") + endif(NOT ${rcgen_result} EQUAL 0) + + execute_process( + COMMAND ${RCGEN} ${_fastmode} --listsources --prefix ${_targetdir}/ ${_classes} ${_visibility} ${_ontologies} + OUTPUT_VARIABLE _out_sources + RESULT_VARIABLE rcgen_result + ) + if(NOT ${rcgen_result} EQUAL 0) + message(SEND_ERROR "Running ${RCGEN} to generate list of sources failed with error code ${rcgen_result}") + endif(NOT ${rcgen_result} EQUAL 0) + + add_custom_command(OUTPUT ${_out_headers} ${_out_sources} + COMMAND ${RCGEN} ${_fastmode} --writeall --target ${_targetdir}/ ${_classes} ${_visibility} ${_ontologies} + DEPENDS ${_ontologies} + COMMENT "Generating ontology source files from ${_ontofilenames}" + ) + + # make sure the includes are found + include_directories(${_targetdir}) + + # finally append the source files to the source list + list(APPEND ${_sources} ${_out_sources}) + endif(NOT RCGEN) +endmacro(NEPOMUK_ADD_ONTOLOGY_CLASSES) -- cgit v1.2.1 From c319cfd6fd332da0de068103e81f38abdf9fd3fc Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 3 Dec 2009 21:39:22 +0000 Subject: NepomukAddOntologies.cmake is now in cmake/modules/ like all the other files Alex svn path=/trunk/KDE/kdelibs/; revision=1058060 --- modules/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index d0fda0f6..8650e807 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -136,6 +136,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake MacroPushRequiredVars.cmake MacroWriteBasicCMakeVersionFile.cmake NepomukMacros.cmake + NepomukAddOntologies.cmake PythonMacros.cmake SIPMacros.cmake Win32Macros.cmake -- cgit v1.2.1 From 0b4be0b79c76bf1d4db8a50e595e3b1f06a7a733 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 3 Dec 2009 21:46:23 +0000 Subject: fix name of the nepomuk file Alex svn path=/trunk/KDE/kdelibs/; revision=1058063 --- modules/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 8650e807..7be269ac 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -136,7 +136,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake MacroPushRequiredVars.cmake MacroWriteBasicCMakeVersionFile.cmake NepomukMacros.cmake - NepomukAddOntologies.cmake + NepomukAddOntologyClasses.cmake PythonMacros.cmake SIPMacros.cmake Win32Macros.cmake -- cgit v1.2.1 From f11f354de9484949ff5567f344b38207d67fcd46 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 3 Dec 2009 21:52:34 +0000 Subject: -autmatically include NepomukAddOn...cmake file, so modules using nepomuk don't have to do this unfortunately I couldn't test it, since I still have build problems with redland :-/ Sebastian, please check that it works as expected Alex CCMAIL: trueg@kde.org svn path=/trunk/KDE/kdelibs/; revision=1058066 --- modules/FindNepomuk.cmake | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index 35b7c4de..c4768002 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -54,14 +54,22 @@ find_library(NEPOMUK_QUERY_LIBRARIES ${LIB_INSTALL_DIR} ) -mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES) +find_file(NEPOMUK_ADDONTOLOGYCLASSES_FILE NepomukAddOntologyClasses.cmake + HINTS ${KDE4_DATA_INSTALL_DIR}/cmake/modules/ + PATH_SUFFIXES share/apps/cmake/modules/ + ) + +include("${NEPOMUK_ADDONTOLOGYCLASSES_FILE}" OPTIONAL) + +mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES NEPOMUK_ADDONTOLOGIES_FILE) include(FindPackageHandleStandardArgs) # List all nepomuk and also all necessary soprano variables here, to make it # easier for the user to see what was missing: find_package_handle_standard_args(Nepomuk DEFAULT_MSG - NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR - Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND SHAREDDESKTOPONTOLOGIES_FOUND + NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR NEPOMUK_ADDONTOLOGYCLASSES_FILE + Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND + SHAREDDESKTOPONTOLOGIES_FOUND ) #to retain backward compatibility -- cgit v1.2.1 From 666608af55e914cbf0ab3b4af51a4bc79ba831b3 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 3 Dec 2009 23:34:11 +0000 Subject: add support for the GNU OS (also known as Hurd) - it mostly behaves as linux, as the toolchain (gcc, gnu ld, gnu libc) is the same - add -pthread to the ld flags for shared modules and libraries svn path=/trunk/KDE/kdelibs/; revision=1058116 --- modules/FindKDE4Internal.cmake | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 710a8af9..41204bf4 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -985,7 +985,7 @@ if (APPLE) endif (APPLE) -if (CMAKE_SYSTEM_NAME MATCHES Linux) +if (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) if (CMAKE_COMPILER_IS_GNUCXX) set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") @@ -1006,7 +1006,7 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") endif (CMAKE_C_COMPILER MATCHES "icc") -endif (CMAKE_SYSTEM_NAME MATCHES Linux) +endif (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) if (UNIX) set ( _KDE4_PLATFORM_DEFINITIONS "${_KDE4_PLATFORM_DEFINITIONS} -D_LARGEFILE64_SOURCE") @@ -1075,12 +1075,17 @@ if (CMAKE_COMPILER_IS_GNUCXX) set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") - if (CMAKE_SYSTEM_NAME MATCHES Linux) + if (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") # As off Qt 4.6.x we need to override the new exception macros if we want compile with -fno-exceptions set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common") add_definitions (-D_BSD_SOURCE) - endif (CMAKE_SYSTEM_NAME MATCHES Linux) + endif (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) + + if (CMAKE_SYSTEM_NAME STREQUAL GNU) + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -pthread") + set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -pthread") + endif (CMAKE_SYSTEM_NAME STREQUAL GNU) # gcc under Windows if (MINGW) -- cgit v1.2.1 From 4c7071d194a170b51e679bb54d76574094799573 Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Fri, 4 Dec 2009 18:14:09 +0000 Subject: SVN_SILENT typo svn path=/trunk/KDE/kdelibs/; revision=1058574 --- modules/FindSoprano.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 67b47868..4cc4334a 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -23,7 +23,7 @@ # Options: # Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99) # -# FindSoprano.cmake supports the COMPOENTS keyword of find_package(). +# FindSoprano.cmake supports the COMPONENTS keyword of find_package(). # If the REQUIRED keyword is used and any of the specified components have not been # found, SOPRANO_FOUND will be set to FALSE. # -- cgit v1.2.1 From 8d13ffd7bbbbc8d9ca9a5f932363bb2a52f9d6bc Mon Sep 17 00:00:00 2001 From: Mike Arthur Date: Mon, 7 Dec 2009 12:06:38 +0000 Subject: Remove CMake module: identical to upstream. svn path=/trunk/KDE/kdelibs/; revision=1059810 --- modules/MacroAddFileDependencies.cmake | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 modules/MacroAddFileDependencies.cmake (limited to 'modules') diff --git a/modules/MacroAddFileDependencies.cmake b/modules/MacroAddFileDependencies.cmake deleted file mode 100644 index 9e553607..00000000 --- a/modules/MacroAddFileDependencies.cmake +++ /dev/null @@ -1,20 +0,0 @@ -# MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) - -# Copyright (c) 2006, Alexander Neundorf, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -MACRO (MACRO_ADD_FILE_DEPENDENCIES _file) - - GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS) - if (_deps) - set(_deps ${_deps} ${ARGN}) - else (_deps) - set(_deps ${ARGN}) - endif (_deps) - - SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}") - -ENDMACRO (MACRO_ADD_FILE_DEPENDENCIES) -- cgit v1.2.1 From 1ec8211d8f26f9ac96f7075d20fc21489800b5b7 Mon Sep 17 00:00:00 2001 From: Will Stephenson Date: Mon, 7 Dec 2009 13:42:55 +0000 Subject: Remove file removed in 1059810 from CMakeLists.txt too. "I will 'make' before committing" ... CCMAIL: mike@mikearthur.co.uk svn path=/trunk/KDE/kdelibs/; revision=1059829 --- modules/CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 7be269ac..587a289f 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -120,7 +120,6 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake KDE4Defaults.cmake KDE4Macros.cmake MacroAddCompileFlags.cmake - MacroAddFileDependencies.cmake MacroAddLinkFlags.cmake MacroAdditionalCleanFiles.cmake MacroAppendIf.cmake -- cgit v1.2.1 From 985f0374dfe89dcff0e58c5e76a1ae6710ee1c18 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Tue, 8 Dec 2009 10:46:16 +0000 Subject: add version check for attica svn path=/trunk/KDE/kdelibs/; revision=1060235 --- modules/FindLibAttica.cmake | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindLibAttica.cmake b/modules/FindLibAttica.cmake index 39ae84d4..151a3bfb 100644 --- a/modules/FindLibAttica.cmake +++ b/modules/FindLibAttica.cmake @@ -10,6 +10,10 @@ # # Redistribution and use is allowed according to the terms of the BSD license. +IF (NOT LIBATTICA_MIN_VERSION) + SET(LIBATTICA_MIN_VERSION "0.1.0") +ENDIF(NOT LIBATTICA_MIN_VERSION) + IF (LIBATTICA_INCLUDE_DIR AND LIBATTICA_LIBRARIES) # in cache already SET(libattica_FIND_QUIETLY TRUE) @@ -30,6 +34,24 @@ FIND_PATH(LIBATTICA_INCLUDE_DIR attica/provider.h PATH_SUFFIXES attica ) +SET(LIBATTICA_VERSION_OK TRUE) +IF(LIBATTICA_INCLUDE_DIR) + FILE(READ ${LIBATTICA_INCLUDE_DIR}/attica/version.h LIBATTICA_VERSION_CONTENT) + STRING (REGEX MATCH "LIBATTICA_VERSION_STRING \".*\"\n" LIBATTICA_VERSION_MATCH "${LIBATTICA_VERSION_CONTENT}") + IF(LIBATTICA_VERSION_MATCH) + STRING(REGEX REPLACE "LIBATTICA_VERSION_STRING \"(.*)\"\n" "\\1" LIBATTICA_VERSION ${LIBATTICA_VERSION_MATCH}) + IF(LIBATTICA_VERSION STRLESS "${LIBATTICA_MIN_VERSION}") + SET(LIBATTICA_VERSION_OK FALSE) + IF(LibAttica_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "LibAttica version ${LIBATTICA_VERSION} is too old. Please install ${LIBATTICA_MIN_VERSION} or newer.") + ELSE(LibAttica_FIND_REQUIRED) + MESSAGE(STATUS "LibAttica version ${LIBATTICA_VERSION} is too old. Please install ${LIBATTICA_MIN_VERSION} or newer.") + ENDIF(LibAttica_FIND_REQUIRED) + ENDIF(LIBATTICA_VERSION STRLESS "${LIBATTICA_MIN_VERSION}") + ENDIF(LIBATTICA_VERSION_MATCH) +ENDIF(LIBATTICA_INCLUDE_DIR) + + FIND_LIBRARY(LIBATTICA_LIBRARIES NAMES attica libattica HINTS ${PC_LIBATTICA_LIBDIR} @@ -37,10 +59,9 @@ FIND_LIBRARY(LIBATTICA_LIBRARIES NAMES attica libattica ) INCLUDE(FindPackageHandleStandardArgs) - # handle the QUIETLY and REQUIRED arguments and set ATTICA_FOUND to TRUE if # all listed variables are TRUE -FIND_PACKAGE_HANDLE_STANDARD_ARGS(libattica DEFAULT_MSG LIBATTICA_LIBRARIES LIBATTICA_INCLUDE_DIR) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(libattica DEFAULT_MSG LIBATTICA_LIBRARIES LIBATTICA_INCLUDE_DIR LIBATTICA_VERSION_OK) MARK_AS_ADVANCED(LIBATTICA_INCLUDE_DIR LIBATTICA_LIBRARIES) -- cgit v1.2.1 From 27d6fce08ed2e1fdffedca6d4c3de4230ece329a Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 12 Dec 2009 23:40:04 +0000 Subject: fix find_library to use HINTS rather than PATHS when searching svn path=/trunk/KDE/kdelibs/; revision=1061755 --- modules/FindExiv2.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 693f5465..f6adbdc9 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -60,10 +60,11 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) find_path(EXIV2_INCLUDE_DIR exiv2/exif.hpp ${_EXIV2IncDir} ) - + find_library(EXIV2_LIBRARIES NAMES exiv2 libexiv2 - PATHS + HINTS ${_EXIV2LinkDir} + NO_DEFAULT_PATH ) if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) -- cgit v1.2.1 From cc9c86c96af116e35d0c212b82617126a6a38320 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 13 Dec 2009 14:36:23 +0000 Subject: -make building KDE with Qt4 installed as OSX frameworks work Alex CCMAIL: mike@mikearthur.co.uk CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1062002 --- modules/FindKDE4Internal.cmake | 3 --- modules/FindQt4.cmake | 9 ++++++++- 2 files changed, 8 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 41204bf4..fc757925 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -979,9 +979,6 @@ if (APPLE) # optimization flags are set below for the various build types set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common") set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common") - if (QT_USE_FRAMEWORKS) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -F${QT_LIBRARY_DIR}") - endif (QT_USE_FRAMEWORKS) endif (APPLE) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 2ca486eb..8216a53e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1016,7 +1016,14 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QAXSERVER) _QT4_ADJUST_LIB_VARS(QAXCONTAINER) ENDIF(WIN32) - + + # If Qt is installed as a framework, we need to add QT_QTCORE_LIBRARY here (which + # is the framework directory in that case), since this will make the cmake include_directories() + # command recognize that we need the framework flag with the respective directory (-F) + IF(QT_USE_FRAMEWORKS) + SET(QT_QTCORE_INCLUDE_DIR ${QT_QTCORE_INCLUDE_DIR} ${QT_QTCORE_LIBRARY}) + ENDIF(QT_USE_FRAMEWORKS) + ####################################### # -- cgit v1.2.1 From 177ccd75bcd6c579311b0e8e0bf9f5e4c565f9da Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 13 Dec 2009 14:58:34 +0000 Subject: remove NO_DEFAULT_PATH in the find_library() call use HINTS rather than PATHS in the find_path() call svn path=/trunk/KDE/kdelibs/; revision=1062007 --- modules/FindExiv2.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index f6adbdc9..9306f5b8 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -58,13 +58,13 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) find_path(EXIV2_INCLUDE_DIR exiv2/exif.hpp + HINTS ${_EXIV2IncDir} ) find_library(EXIV2_LIBRARIES NAMES exiv2 libexiv2 HINTS ${_EXIV2LinkDir} - NO_DEFAULT_PATH ) if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) -- cgit v1.2.1 From 7cd7dc2f7e8aacbd6722bba5a525714f9337c9f6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 13 Dec 2009 16:22:20 +0000 Subject: -also use the "NAMES" keyword Alex svn path=/trunk/KDE/kdelibs/; revision=1062039 --- modules/FindExiv2.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index 9306f5b8..bf8220cc 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -57,7 +57,7 @@ else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) if(EXIV2_VERSION_GOOD_FOUND) set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) - find_path(EXIV2_INCLUDE_DIR exiv2/exif.hpp + find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp HINTS ${_EXIV2IncDir} ) -- cgit v1.2.1 From 7b67acd33ea47c03c4d649cde44c9c481f361f59 Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Sun, 13 Dec 2009 16:31:31 +0000 Subject: SVN_SILENT Fix doc. LIBATTICA_INCLUDE_DIRS doesn't exist. svn path=/trunk/KDE/kdelibs/; revision=1062043 --- modules/FindLibAttica.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindLibAttica.cmake b/modules/FindLibAttica.cmake index 151a3bfb..f901075a 100644 --- a/modules/FindLibAttica.cmake +++ b/modules/FindLibAttica.cmake @@ -4,7 +4,7 @@ # LIBATTICA_FOUND Indicates that Attica was found # LIBATTICA_LIBRARIES Libraries needed to use Attica # LIBATTICA_LIBRARY_DIRS Paths needed for linking against Attica -# LIBATTICA_INCLUDE_DIRS Paths needed for finding Attica include files +# LIBATTICA_INCLUDE_DIR Path needed for finding Attica include files # # Copyright (c) 2009 Frederik Gladhorn # -- cgit v1.2.1 From 2ce91a5e3e56bd7cf8c44f966d0b8177900eb29b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 13 Dec 2009 17:41:29 +0000 Subject: -set the KDE4_FOO_LIBRARY/LIBS variables also when building kdelibs itself, as discussed on kde-buildsystem Alex svn path=/trunk/KDE/kdelibs/; revision=1062067 --- modules/FindKDE4Internal.cmake | 117 ++++++++++++++++++++++------------------- 1 file changed, 63 insertions(+), 54 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index fc757925..539877c4 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -403,6 +403,14 @@ else(kdelibs_SOURCE_DIR) set(_kdeBootStrapping FALSE) endif(kdelibs_SOURCE_DIR) + +# helper macro, sets both the KDE4_FOO_LIBRARY and KDE4_FOO_LIBS variables to KDE4__foo +# It is used both in bootstrapping and in normal mode. +macro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) + set(KDE4_${_var}_LIBRARY ${_prefix}${_lib} ) + set(KDE4_${_var}_LIBS ${_prefix}${_lib} ) +endmacro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) + ####################### #now try to find some kde stuff ################################ if (_kdeBootStrapping) @@ -489,60 +497,6 @@ else (_kdeBootStrapping) #message(FATAL_ERROR "KDE_MIN_VERSION=${KDE_MIN_VERSION} found ${KDE_VERSION} exact: -${KDE4_FIND_VERSION_EXACT}- version: -${KDE4_FIND_VERSION}-") macro_ensure_version( ${KDE_MIN_VERSION} ${KDE_VERSION} KDE4_INSTALLED_VERSION_OK ) - # This file contains the exported library target from kdelibs (new with cmake 2.6.x), e.g. - # the library target "kdeui" is exported as "KDE4__kdeui". The "KDE4__" is used as - # "namespace" to separate the imported targets from "normal" targets, it is stored in - # KDE4_TARGET_PREFIX, which is set in KDELibsDependencies.cmake . - # Include it to "import" the libraries from kdelibs into the current projects as targets. - # This makes setting the _LIBRARY and _LIBS variables actually a bit superfluos, since e.g. - # the kdeui library could now also be used just as "KDE4__kdeui" and still have all their - # dependent libraries handled correctly. But to keep compatibility and not to change - # behaviour we set all these variables anyway as seen below. Alex - include(${kde_cmake_module_dir}/KDELibs4LibraryTargets.cmake) - - # helper macro, sets both the KDE4_FOO_LIBRARY and KDE4_FOO_LIBS variables to KDE4__foo - macro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) - set(KDE4_${_var}_LIBRARY ${_prefix}${_lib} ) - set(KDE4_${_var}_LIBS ${_prefix}${_lib} ) - endmacro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) - - # sorted by names - _kde4_set_lib_variables(KDE3SUPPORT kde3support ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KDECORE kdecore ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KDEUI kdeui ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KDEWEBKIT kdewebkit ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KDNSSD kdnssd ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KFILE kfile ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KHTML khtml ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KIO kio ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KJS kjs ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KJSAPI kjsapi ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KNEWSTUFF2 knewstuff2 ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KNEWSTUFF3 knewstuff3 ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KNOTIFYCONFIG knotifyconfig ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KPARTS kparts ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KROSSCORE krosscore ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KROSSUI krossui ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KTEXTEDITOR ktexteditor ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KUNITCONVERSION kunitconversion ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(PLASMA plasma ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(SOLID solid ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(THREADWEAVER threadweaver ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KUTILS kutils ${KDE4_TARGET_PREFIX}) - - if (UNIX) - _kde4_set_lib_variables(KDEFAKES kdefakes ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KDESU kdesu ${KDE4_TARGET_PREFIX}) - _kde4_set_lib_variables(KPTY kpty ${KDE4_TARGET_PREFIX}) - endif (UNIX) - - # these targets do not always exist, since they are built conditionally: - if(TARGET ${KDE4_TARGET_PREFIX}nepomuk) - _kde4_set_lib_variables(NEPOMUK nepomuk ${KDE4_TARGET_PREFIX}) - endif(TARGET ${KDE4_TARGET_PREFIX}nepomuk) - - # and this one for compatibility: - set(KDE4_THREADWEAVER_LIBRARIES ${KDE4_TARGET_PREFIX}threadweaver ) # KDE4_LIB_INSTALL_DIR and KDE4_INCLUDE_INSTALL_DIR are set in KDELibsDependencies.cmake, # use them to set the KDE4_LIB_DIR and KDE4_INCLUDE_DIR "public interface" variables @@ -589,9 +543,64 @@ else (_kdeBootStrapping) endif (EXISTS "${apath}") endforeach(dir) + + # This file contains the exported library target from kdelibs (new with cmake 2.6.x), e.g. + # the library target "kdeui" is exported as "KDE4__kdeui". The "KDE4__" is used as + # "namespace" to separate the imported targets from "normal" targets, it is stored in + # KDE4_TARGET_PREFIX, which is set in KDELibsDependencies.cmake . + # Include it to "import" the libraries from kdelibs into the current projects as targets. + # This makes setting the _LIBRARY and _LIBS variables actually a bit superfluos, since e.g. + # the kdeui library could now also be used just as "KDE4__kdeui" and still have all their + # dependent libraries handled correctly. But to keep compatibility and not to change + # behaviour we set all these variables anyway as seen below. Alex + include(${kde_cmake_module_dir}/KDELibs4LibraryTargets.cmake) + + # This one is for compatibility only: + set(KDE4_THREADWEAVER_LIBRARIES ${KDE4_TARGET_PREFIX}threadweaver ) + endif (_kdeBootStrapping) +# Set the various KDE4_FOO_LIBRARY/LIBS variables. +# In bootstrapping mode KDE4_TARGET_PREFIX is empty, so e.g. KDE4_KDECORE_LIBRARY +# will be simply set to "kdecore". + +# Sorted by names: +_kde4_set_lib_variables(KDE3SUPPORT kde3support "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KDECORE kdecore "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KDEUI kdeui "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KDEWEBKIT kdewebkit "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KDNSSD kdnssd "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KFILE kfile "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KHTML khtml "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KIO kio "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KJS kjs "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KJSAPI kjsapi "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KNEWSTUFF2 knewstuff2 "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KNEWSTUFF3 knewstuff3 "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KNOTIFYCONFIG knotifyconfig "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KPARTS kparts "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KROSSCORE krosscore "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KROSSUI krossui "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KTEXTEDITOR ktexteditor "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KUNITCONVERSION kunitconversion "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KUTILS kutils "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(PLASMA plasma "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(SOLID solid "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(THREADWEAVER threadweaver "${KDE4_TARGET_PREFIX}") + +if (UNIX) + _kde4_set_lib_variables(KDEFAKES kdefakes "${KDE4_TARGET_PREFIX}") + _kde4_set_lib_variables(KDESU kdesu "${KDE4_TARGET_PREFIX}") + _kde4_set_lib_variables(KPTY kpty "${KDE4_TARGET_PREFIX}") +endif (UNIX) + +# The nepomuk target does not always exist, since is is built conditionally. When bootstrapping +# we set it always anyways. +if(_kdeBootStrapping OR TARGET ${KDE4_TARGET_PREFIX}nepomuk) + _kde4_set_lib_variables(NEPOMUK nepomuk "${KDE4_TARGET_PREFIX}") +endif(_kdeBootStrapping OR TARGET ${KDE4_TARGET_PREFIX}nepomuk) + ################### try to find Phonon ############################################ -- cgit v1.2.1 From 3595b335f49353d05df9370acf1462b15ef21df6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 14 Dec 2009 20:17:46 +0000 Subject: -kio should be in the link interface of kfile, since it uses kio symbols in its public interface -remove the now useless old KDE4_foo_LIBS variables set in bootstrap mode (they are now all set properly a few lines below) Alex svn path=/trunk/KDE/kdelibs/; revision=1062450 --- modules/FindKDE4Internal.cmake | 13 ------------- 1 file changed, 13 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 539877c4..c6f5599e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -415,19 +415,6 @@ endmacro(_KDE4_SET_LIB_VARIABLES _var _lib _prefix) if (_kdeBootStrapping) set(KDE4_INCLUDE_DIR ${kdelibs_SOURCE_DIR}) - set(KDE4_KDECORE_LIBS ${QT_QTCORE_LIBRARY} kdecore) - set(KDE4_KDEUI_LIBS ${KDE4_KDECORE_LIBS} kdeui) - set(KDE4_KIO_LIBS ${KDE4_KDEUI_LIBS} kio) - set(KDE4_KPARTS_LIBS ${KDE4_KIO_LIBS} kparts) - if (UNIX) - set(KDE4_KPTY_LIBS ${KDE4_KDECORE_LIBS} kpty) - endif (UNIX) - set(KDE4_KUTILS_LIBS ${KDE4_KIO_LIBS} kutils) - set(KDE4_KDE3SUPPORT_LIBS ${KDE4_KIO_LIBS} kde3support) - set(KDE4_SOLID_LIBS ${KDE4_KDECORE_LIBS} solid) - set(KDE4_KFILE_LIBS ${KDE4_KIO_LIBS} kfile) - set(KDE4_KHTML_LIBS ${KDE4_KPARTS_LIBS} khtml) - set(KDE4_KTEXTEDITOR_LIBS ktexteditor) set(EXECUTABLE_OUTPUT_PATH ${kdelibs_BINARY_DIR}/bin ) -- cgit v1.2.1 From 93bcab3adf37b3f12e69d1b2cfe3216c23e641d3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 14 Dec 2009 21:24:18 +0000 Subject: -add the framework path to QT_INCLUDE_DIR instead of QT_QTCORE_INCLUDE_DIR Both are used always by UseQt4.cmake, and it is somewhat more logical to add it to QT_INCLUDE_DIR, since this is necessary when using Qt/foo.h includes, which is similar to the framework-style includes Alex CCMAIL: Mike, can you please confirm this also work for you on OSX ? svn path=/trunk/KDE/kdelibs/; revision=1062473 --- modules/FindQt4.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 8216a53e..c54b7a99 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1021,7 +1021,8 @@ IF (QT4_QMAKE_FOUND) # is the framework directory in that case), since this will make the cmake include_directories() # command recognize that we need the framework flag with the respective directory (-F) IF(QT_USE_FRAMEWORKS) - SET(QT_QTCORE_INCLUDE_DIR ${QT_QTCORE_INCLUDE_DIR} ${QT_QTCORE_LIBRARY}) + SET(QT_INCLUDES ${QT_INCLUDES} ${QT_QTCORE_LIBRARY} ) + SET(QT_INCLUDE_DIR ${QT_INCLUDE_DIR} ${QT_QTCORE_LIBRARY} ) ENDIF(QT_USE_FRAMEWORKS) -- cgit v1.2.1 From e741edda28738c99531df34980ebb0b00bdc27e8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 19 Dec 2009 14:33:24 +0000 Subject: -keep in sync with Qt4 from cmake Alex svn path=/trunk/KDE/kdelibs/; revision=1063890 --- modules/Qt4ConfigDependentSettings.cmake | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake index 55f7097f..f6062a74 100644 --- a/modules/Qt4ConfigDependentSettings.cmake +++ b/modules/Qt4ConfigDependentSettings.cmake @@ -36,8 +36,7 @@ ENDIF(UNIX) # find dependencies for some Qt modules # when doing builds against a static Qt, they are required -# when doing builds against a shared Qt, they are sometimes not required -# even some Linux distros do not require these dependencies +# when doing builds against a shared Qt, they are not required # if a user needs the dependencies, and they couldn't be found, they can set # the variables themselves. @@ -49,12 +48,31 @@ SET(QT_QTDBUS_LIB_DEPENDENCIES "") SET(QT_QTHELP_LIB_DEPENDENCIES ${QT_QTCLUCENE_LIBRARY}) -# build using shared Qt needs -DQT_DLL -IF(WIN32 AND NOT QT_CONFIG MATCHES "static") - # warning currently only qconfig.pri on Windows potentially contains "static" - # so QT_DLL might not get defined properly on other platforms. +IF(WIN32) + # On Windows, qconfig.pri has "static" for static library builds + IF(QT_CONFIG MATCHES "static") + SET(QT_IS_STATIC 1) + ENDIF(QT_CONFIG MATCHES "static") +ELSE(WIN32) + # On other platforms, check file extension to know if its static + IF(QT_QTCORE_LIBRARY_RELEASE) + GET_FILENAME_COMPONENT(qtcore_lib_ext "${QT_QTCORE_LIBRARY_RELEASE}" EXT) + IF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX}) + SET(QT_IS_STATIC 1) + ENDIF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX}) + ENDIF(QT_QTCORE_LIBRARY_RELEASE) + IF(QT_QTCORE_LIBRARY_DEBUG) + GET_FILENAME_COMPONENT(qtcore_lib_ext "${QT_QTCORE_LIBRARY_DEBUG}" EXT) + IF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX}) + SET(QT_IS_STATIC 1) + ENDIF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX}) + ENDIF(QT_QTCORE_LIBRARY_DEBUG) +ENDIF(WIN32) + +# build using shared Qt needs -DQT_DLL on Windows +IF(WIN32 AND NOT QT_IS_STATIC) SET(QT_DEFINITIONS ${QT_DEFINITIONS} -DQT_DLL) -ENDIF(WIN32 AND NOT QT_CONFIG MATCHES "static") +ENDIF(WIN32 AND NOT QT_IS_STATIC) # QtOpenGL dependencies -- cgit v1.2.1 From 9d849a4ffc3dfd67a835fbe6f650bf736af1a705 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Dec 2009 14:15:19 +0000 Subject: -syncing with cmake: 7 differences less, 35 left to go Alex svn path=/trunk/KDE/kdelibs/; revision=1064278 --- modules/FindQt4.cmake | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index c54b7a99..57c2da59 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -164,28 +164,28 @@ # QT_QTGUI_FOUND True if QtGui was found. # QT_QT3SUPPORT_FOUND True if Qt3Support was found. # QT_QTASSISTANT_FOUND True if QtAssistant was found. +# QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found. # QT_QAXCONTAINER_FOUND True if QAxContainer was found (Windows only). # QT_QAXSERVER_FOUND True if QAxServer was found (Windows only). # QT_QTDBUS_FOUND True if QtDBus was found. # QT_QTDESIGNER_FOUND True if QtDesigner was found. # QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found. +# QT_QTHELP_FOUND True if QtHelp was found. # QT_QTMOTIF_FOUND True if QtMotif was found. -# QT_QTMULTIMEDIA_FOUND True if QtMultimedia was found. +# QT_QTMULTIMEDIA_FOUND True if QtMultimedia was found (since Qt 4.6.0). # QT_QTNETWORK_FOUND True if QtNetwork was found. # QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found. # QT_QTOPENGL_FOUND True if QtOpenGL was found. # QT_QTSQL_FOUND True if QtSql was found. -# QT_QTXML_FOUND True if QtXml was found. # QT_QTSVG_FOUND True if QtSvg was found. # QT_QTSCRIPT_FOUND True if QtScript was found. +# QT_QTSCRIPTTOOLS_FOUND True if QtScriptTools was found. # QT_QTTEST_FOUND True if QtTest was found. # QT_QTUITOOLS_FOUND True if QtUiTools was found. -# QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found. -# QT_QTHELP_FOUND True if QtHelp was found. # QT_QTWEBKIT_FOUND True if QtWebKit was found. +# QT_QTXML_FOUND True if QtXml was found. # QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. # QT_PHONON_FOUND True if phonon was found. -# QT_QTSCRIPTTOOLS_FOUND True if QtScriptTools was found. # # QT_MAC_USE_COCOA For Mac OS X, its whether Cocoa or Carbon is used. # In general, this should not be used, but its useful @@ -242,7 +242,8 @@ # QT_TRANSLATIONS_DIR Path to "translations" of Qt4 # QT_DOC_DIR Path to "doc" of Qt4 # QT_MKSPECS_DIR Path to "mkspecs" of Qt4 -# +# +# # For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library. # # So there are the following variables: @@ -280,6 +281,8 @@ # # The QtScript library: QT_QTSCRIPT_LIBRARY # +# The QtScriptTools library: QT_QTSCRIPTTOOLS_LIBRARY +# # The QtSql library: QT_QTSQL_LIBRARY # # The QtSvg library: QT_QTSVG_LIBRARY @@ -297,8 +300,6 @@ # The qtmain library for Windows QT_QTMAIN_LIBRARY # # The Phonon library: QT_PHONON_LIBRARY -# -# The QtScriptTools library: QT_QTSCRIPTTOOLS_LIBRARY # # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. @@ -1026,6 +1027,7 @@ IF (QT4_QMAKE_FOUND) ENDIF(QT_USE_FRAMEWORKS) + ####################################### # # Check the executables of Qt -- cgit v1.2.1 From a8edd1e3f05ca2dfa2af370bac8f8b71222f4427 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Dec 2009 15:29:10 +0000 Subject: -sync with cmake: move the check for the window system before the include-dir search Alex svn path=/trunk/KDE/kdelibs/; revision=1064296 --- modules/FindQt4.cmake | 90 ++++++++++++++++++++++++--------------------------- 1 file changed, 43 insertions(+), 47 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 57c2da59..278a505f 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -628,6 +628,45 @@ IF (QT4_QMAKE_FOUND) QT_PLUGINS_DIR QT_TRANSLATIONS_DIR) + ############################################# + # + # Find out what window system we're using + # + ############################################# + # Save required includes and required_flags variables + MACRO_PUSH_REQUIRED_VARS() + # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES + SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_HEADERS_DIR}") + # On Mac OS X when Qt has framework support, also add the framework path + IF( QT_USE_FRAMEWORKS ) + SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") + ENDIF( QT_USE_FRAMEWORKS ) + # Check for Window system symbols (note: only one should end up being set) + CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) + CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) + CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) + CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) + IF(Q_WS_MAC) + IF(QT_QMAKE_CHANGED) + SET(QT_MAC_USE_COCOA "" CACHE BOOL "Use Cocoa on Mac" FORCE) + ENDIF(QT_QMAKE_CHANGED) + CHECK_SYMBOL_EXISTS(QT_MAC_USE_COCOA "QtCore/qconfig.h" QT_MAC_USE_COCOA) + ENDIF(Q_WS_MAC) + + IF (QT_QTCOPY_REQUIRED) + CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) + IF (NOT QT_IS_QTCOPY) + MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") + ENDIF (NOT QT_IS_QTCOPY) + ENDIF (QT_QTCOPY_REQUIRED) + + # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables + MACRO_POP_REQUIRED_VARS() + # + ############################################# + + + ######################################## # # Setting the INCLUDE-Variables @@ -637,6 +676,10 @@ IF (QT4_QMAKE_FOUND) SET(QT_MODULES QtCore QtGui Qt3Support QtSvg QtScript QtTest QtUiTools QtHelp QtWebKit QtXmlPatterns QtNetwork QtMultimedia QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools) + + IF(Q_WS_X11) + SET(QT_MODULES ${QT_MODULES} QtMotif) + ENDIF(Q_WS_X11) FOREACH(QT_MODULE ${QT_MODULES}) STRING(TOUPPER ${QT_MODULE} _upper_qt_module) @@ -726,53 +769,6 @@ IF (QT4_QMAKE_FOUND) SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} ) - ############################################# - # - # Find out what window system we're using - # - ############################################# - # Save required includes and required_flags variables - MACRO_PUSH_REQUIRED_VARS() - # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES - SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}") - # On Mac OS X when Qt has framework support, also add the framework path - IF( QT_USE_FRAMEWORKS ) - SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ") - ENDIF( QT_USE_FRAMEWORKS ) - # Check for Window system symbols (note: only one should end up being set) - CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11) - CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN) - CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS) - CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) - IF(Q_WS_MAC) - IF(QT_QMAKE_CHANGED) - SET(QT_MAC_USE_COCOA "" CACHE BOOL "Use Cocoa on Mac" FORCE) - ENDIF(QT_QMAKE_CHANGED) - CHECK_SYMBOL_EXISTS(QT_MAC_USE_COCOA "QtCore/qconfig.h" QT_MAC_USE_COCOA) - ENDIF(Q_WS_MAC) - - IF (QT_QTCOPY_REQUIRED) - CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY) - IF (NOT QT_IS_QTCOPY) - MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found") - ENDIF (NOT QT_IS_QTCOPY) - ENDIF (QT_QTCOPY_REQUIRED) - - # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables - MACRO_POP_REQUIRED_VARS() - # - ############################################# - - # This check is after the check for the window system, since it uses Q_WS_X11: - # Set QT_QTMOTIF_INCLUDE_DIR - IF(Q_WS_X11) - FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif - PATHS - ${QT_INCLUDE_DIR}/QtMotif - NO_DEFAULT_PATH ) - ENDIF(Q_WS_X11) - - ####################################### # # Qt configuration -- cgit v1.2.1 From 1190bf58ba63c99cb39c39ec6991cfd6a2623d9c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Dec 2009 15:41:55 +0000 Subject: -sort the libs alphabetically Alex svn path=/trunk/KDE/kdelibs/; revision=1064299 --- modules/FindQt4.cmake | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 278a505f..0412f75c 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -982,27 +982,27 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTGUI) _QT4_ADJUST_LIB_VARS(QT3SUPPORT) _QT4_ADJUST_LIB_VARS(QTASSISTANT) + _QT4_ADJUST_LIB_VARS(QTASSISTANTCLIENT) + _QT4_ADJUST_LIB_VARS(QTCLUCENE) + _QT4_ADJUST_LIB_VARS(QTDBUS) _QT4_ADJUST_LIB_VARS(QTDESIGNER) _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) + _QT4_ADJUST_LIB_VARS(QTHELP) _QT4_ADJUST_LIB_VARS(QTMULTIMEDIA) _QT4_ADJUST_LIB_VARS(QTNETWORK) _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) _QT4_ADJUST_LIB_VARS(QTOPENGL) + _QT4_ADJUST_LIB_VARS(QTSCRIPT) + _QT4_ADJUST_LIB_VARS(QTSCRIPTTOOLS) _QT4_ADJUST_LIB_VARS(QTSQL) - _QT4_ADJUST_LIB_VARS(QTXML) _QT4_ADJUST_LIB_VARS(QTSVG) - _QT4_ADJUST_LIB_VARS(QTSCRIPT) - _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTTEST) - _QT4_ADJUST_LIB_VARS(QTDBUS) - _QT4_ADJUST_LIB_VARS(QTASSISTANTCLIENT) - _QT4_ADJUST_LIB_VARS(QTHELP) + _QT4_ADJUST_LIB_VARS(QTUITOOLS) _QT4_ADJUST_LIB_VARS(QTWEBKIT) + _QT4_ADJUST_LIB_VARS(QTXML) _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) _QT4_ADJUST_LIB_VARS(PHONON) - _QT4_ADJUST_LIB_VARS(QTCLUCENE) - _QT4_ADJUST_LIB_VARS(QTSCRIPTTOOLS) - + # platform dependent libraries IF(Q_WS_X11) -- cgit v1.2.1 From 7d885a6b7e3b859bafd297db55fee5de63a85240 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 20 Dec 2009 16:21:42 +0000 Subject: -sync the way how the libraries are found with the FindQt4.cmake from current cmake With this commit there are only minor differences to the FindQt4.cmake coming with cmake left. Alex svn path=/trunk/KDE/kdelibs/; revision=1064318 --- modules/FindQt4.cmake | 260 +++++++++++++++++++++----------------------------- 1 file changed, 111 insertions(+), 149 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0412f75c..91712888 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -300,7 +300,7 @@ # The qtmain library for Windows QT_QTMAIN_LIBRARY # # The Phonon library: QT_PHONON_LIBRARY -# +# # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. # QT_UIC_EXECUTABLE Where to find the uic tool. @@ -378,9 +378,9 @@ QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO "Release with QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELEASE "release") QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL "release minsize") +INCLUDE(MacroPushRequiredVars) INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) -INCLUDE(MacroPushRequiredVars) SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake) @@ -681,6 +681,37 @@ IF (QT4_QMAKE_FOUND) SET(QT_MODULES ${QT_MODULES} QtMotif) ENDIF(Q_WS_X11) + IF(QT_QMAKE_CHANGED) + FOREACH(QT_MODULE ${QT_MODULES}) + STRING(TOUPPER ${QT_MODULE} _upper_qt_module) + SET(QT_${_upper_qt_module}_INCLUDE_DIR NOTFOUND) + SET(QT_${_upper_qt_module}_LIBRARY_RELEASE NOTFOUND) + SET(QT_${_upper_qt_module}_LIBRARY_DEBUG NOTFOUND) + ENDFOREACH(QT_MODULE) + SET(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR NOTFOUND) + SET(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NOTFOUND) + SET(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NOTFOUND) + SET(QT_QTASSISTANTCLIENT_INCLUDE_DIR NOTFOUND) + SET(QT_QTASSISTANTCLIENT_LIBRARY_RELEASE NOTFOUND) + SET(QT_QTASSISTANTCLIENT_LIBRARY_DEBUG NOTFOUND) + SET(QT_QTASSISTANT_INCLUDE_DIR NOTFOUND) + SET(QT_QTASSISTANT_LIBRARY_RELEASE NOTFOUND) + SET(QT_QTASSISTANT_LIBRARY_DEBUG NOTFOUND) + SET(QT_QTCLUCENE_LIBRARY_RELEASE NOTFOUND) + SET(QT_QTCLUCENE_LIBRARY_DEBUG NOTFOUND) + SET(QT_QAXCONTAINER_INCLUDE_DIR NOTFOUND) + SET(QT_QAXCONTAINER_LIBRARY_RELEASE NOTFOUND) + SET(QT_QAXCONTAINER_LIBRARY_DEBUG NOTFOUND) + SET(QT_QAXSERVER_INCLUDE_DIR NOTFOUND) + SET(QT_QAXSERVER_LIBRARY_RELEASE NOTFOUND) + SET(QT_QAXSERVER_LIBRARY_DEBUG NOTFOUND) + IF(WIN32) + SET(QT_QTMAIN_LIBRARY_DEBUG NOTFOUND) + SET(QT_QTMAIN_LIBRARY_RELEASE NOTFOUND) + ENDIF(WIN32) + SET(QT_PHONON_INCLUDE_DIR NOTFOUND) + ENDIF(QT_QMAKE_CHANGED) + FOREACH(QT_MODULE ${QT_MODULES}) STRING(TOUPPER ${QT_MODULE} _upper_qt_module) FIND_PATH(QT_${_upper_qt_module}_INCLUDE_DIR ${QT_MODULE} @@ -692,6 +723,7 @@ IF (QT4_QMAKE_FOUND) ENDFOREACH(QT_MODULE) IF(WIN32) + SET(QT_MODULES ${QT_MODULES} QAxContainer QAxServer) # Set QT_AXCONTAINER_INCLUDE_DIR and QT_AXSERVER_INCLUDE_DIR FIND_PATH(QT_QAXCONTAINER_INCLUDE_DIR ActiveQt PATHS @@ -728,7 +760,7 @@ IF (QT4_QMAKE_FOUND) ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers NO_DEFAULT_PATH ) - + # Set QT_QT_INCLUDE_DIR FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h PATHS @@ -745,6 +777,7 @@ IF (QT4_QMAKE_FOUND) ${QT_HEADERS_DIR}/phonon NO_DEFAULT_PATH ) + SET(QT_MODULES ${QT_MODULES} phonon) # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR} IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR) @@ -792,133 +825,57 @@ IF (QT4_QMAKE_FOUND) # ######################################## + # find the libraries + FOREACH(QT_MODULE ${QT_MODULES}) + STRING(TOUPPER ${QT_MODULE} _upper_qt_module) + FIND_LIBRARY(QT_${_upper_qt_module}_LIBRARY_RELEASE + NAMES ${QT_MODULE}${QT_LIBINFIX} ${QT_MODULE}${QT_LIBINFIX}4 + PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH + ) + FIND_LIBRARY(QT_${_upper_qt_module}_LIBRARY_DEBUG + NAMES ${QT_MODULE}${QT_LIBINFIX}_debug ${QT_MODULE}${QT_LIBINFIX}d ${QT_MODULE}${QT_LIBINFIX}d4 + PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH + ) + ENDFOREACH(QT_MODULE) - # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename - FIND_LIBRARY(QT_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 QtCore_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH ) - - # Set QT_QT3SUPPORT_LIBRARY - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support_debug Qt3Support4 Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTGUI_LIBRARY - FIND_LIBRARY(QT_QTGUI_LIBRARY NAMES QtGui QtGui_debug QtGui_debug QtGui4 QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTMOTIF_LIBRARY - IF(Q_WS_X11) - FIND_LIBRARY(QT_QTMOTIF_LIBRARY NAMES QtMotif QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(Q_WS_X11) - - # Set QT_QTMULTIMEDIA_LIBRARY - FIND_LIBRARY(QT_QTMULTIMEDIA_LIBRARY NAMES QtMultimedia QtMultimedia_debug QtMultimedia4 QtMultimediad4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTNETWORK_LIBRARY - FIND_LIBRARY(QT_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork_debug QtNetwork4 QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTNSPLUGIN_LIBRARY - FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTOPENGL_LIBRARY - FIND_LIBRARY(QT_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL_debug QtOpenGL4 QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSQL_LIBRARY - FIND_LIBRARY(QT_QTSQL_LIBRARY NAMES QtSql QtSql_debug QtSql4 QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTXML_LIBRARY - FIND_LIBRARY(QT_QTXML_LIBRARY NAMES QtXml QtXml_debug QtXml4 QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSVG_LIBRARY - FIND_LIBRARY(QT_QTSVG_LIBRARY NAMES QtSvg QtSvg_debug QtSvg4 QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTSCRIPT_LIBRARY - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript_debug QtScript4 QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTUITOOLS_LIBRARY - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools_debug QtUiTools4 QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTTEST_LIBRARY - FIND_LIBRARY(QT_QTTEST_LIBRARY NAMES QtTest QtTest_debug QtTest4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTDBUS_LIBRARY NAMES QtDBus QtDBus_debug QtDBus4 QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY NAMES QtAssistantClient QtAssistantClient_debug QtAssistantClient4 QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - IF(WIN32) - FIND_LIBRARY(QT_QAXSERVER_LIBRARY NAMES QAxServer QAxServer4 QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + # QtUiTools not with other frameworks with binary installation (in /usr/lib) + IF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTUITOOLS_LIBRARY_RELEASE) + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools${QT_LIBINFIX} PATHS ${QT_LIBRARY_DIR}) + ENDIF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTUITOOLS_LIBRARY_RELEASE) - FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY NAMES QAxContainer QAxContainer4 QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(WIN32) + IF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) + + # try dropping a hint if trying to use Visual Studio with Qt built by mingw + IF(QT_LIBRARY_DIR AND MSVC) + IF(EXISTS ${QT_LIBRARY_DIR}/libqtmain.a) + MESSAGE( FATAL_ERROR "It appears you're trying to use Visual Studio with Qt built by mingw") + ENDIF(EXISTS ${QT_LIBRARY_DIR}/libqtmain.a) + ENDIF(QT_LIBRARY_DIR AND MSVC) - FIND_LIBRARY(QT_QTHELP_LIBRARY NAMES QtHelp QtHelp_debug QtHelp4 QtHelpd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTWEBKIT_LIBRARY NAMES QtWebKit QtWebKit_debug QtWebKit4 QtWebKitd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTXMLPATTERNS_LIBRARY NAMES QtXmlPatterns QtXmlPatterns_debug QtXmlPatterns4 QtXmlPatternsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_PHONON_LIBRARY NAMES phonon phonon4 phonon_debug phonond4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY NAMES QtScriptTools QtScriptTools_debug QtScriptTools4 QtScriptToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - IF(MSVC) - FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMULTIMEDIA_LIBRARY_RELEASE NAMES QtMultimedia4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMULTIMEDIA_LIBRARY_DEBUG NAMES QtMultimediad4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_RELEASE NAMES QtScript4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_RELEASE NAMES QtDBus4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXSERVER_LIBRARY_RELEASE NAMES QAxServer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXSERVER_LIBRARY_DEBUG NAMES QAxServerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_RELEASE NAMES QAxContainer PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QAXCONTAINER_LIBRARY_DEBUG NAMES QAxContainerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_RELEASE NAMES QtScriptTools4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - FIND_LIBRARY(QT_QTSCRIPTTOOLS_LIBRARY_DEBUG NAMES QtScriptToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - ENDIF(MSVC) - - IF( NOT QT_QTCORE_LIBRARY ) IF(Qt4_FIND_REQUIRED) MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log for more details.") ENDIF(Qt4_FIND_REQUIRED) - ENDIF( NOT QT_QTCORE_LIBRARY ) - - # Set QT_QTASSISTANT_LIBRARY - FIND_LIBRARY(QT_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) - - # Set QT_QTDESIGNER_LIBRARY - FIND_LIBRARY(QT_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner_debug QtDesigner4 QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + ENDIF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) # Set QT_QTDESIGNERCOMPONENTS_LIBRARY - FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents_debug QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents${QT_LIBINFIX} QtDesignerComponents${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponents${QT_LIBINFIX}_debug QtDesignerComponents${QT_LIBINFIX}d QtDesignerComponents${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTMAIN_LIBRARY IF(WIN32) - FIND_LIBRARY(QT_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain${QT_LIBINFIX} PATHS ${QT_LIBRARY_DIR} + NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmain${QT_LIBINFIX}d PATHS ${QT_LIBRARY_DIR} + NO_DEFAULT_PATH) ENDIF(WIN32) + + # Set QT_QTASSISTANTCLIENT_LIBRARY + FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY_RELEASE NAMES QtAssistantClient${QT_LIBINFIX} QtAssistantClient${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY_DEBUG NAMES QtAssistantClient${QT_LIBINFIX}_debug QtAssistantClient${QT_LIBINFIX}d QtAssistantClient${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + + # Set QT_QTASSISTANT_LIBRARY + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient${QT_LIBINFIX} QtAssistantClient${QT_LIBINFIX}4 QtAssistant${QT_LIBINFIX} QtAssistant${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) + FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClient${QT_LIBINFIX}_debug QtAssistantClient${QT_LIBINFIX}d QtAssistantClient${QT_LIBINFIX}d4 QtAssistant${QT_LIBINFIX}_debug QtAssistant${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) # Set QT_QTHELP_LIBRARY FIND_LIBRARY(QT_QTCLUCENE_LIBRARY_RELEASE NAMES QtCLucene${QT_LIBINFIX} QtCLucene${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH) @@ -935,44 +892,50 @@ IF (QT4_QMAKE_FOUND) ############################################ MACRO (_QT4_ADJUST_LIB_VARS basename) - IF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - - IF(MSVC) - # Both set - IF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - - # Only debug was found - IF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (NOT QT_${basename}_LIBRARY_RELEASE AND QT_${basename}_LIBRARY_DEBUG) - - # Only release was found - IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) - ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - - # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-( - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY} debug ${QT_${basename}_LIBRARY_DEBUG}) - - ENDIF(MSVC) - - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library") + IF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) + + # if only the release version was found, set the debug variable also to the release version + IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_RELEASE}) + ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + + # if only the debug version was found, set the release variable also to the debug version + IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) + SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) + + IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + # if the generator supports configuration types then set + # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value + IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + # if there are no configuration types and CMAKE_BUILD_TYPE has no value + # then just use the release libraries + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE} ) + ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE STRING "The Qt ${basename} library" FORCE) IF (QT_${basename}_LIBRARY) SET(QT_${basename}_FOUND 1) ENDIF (QT_${basename}_LIBRARY) - - ENDIF (QT_${basename}_LIBRARY OR QT_${basename}_LIBRARY_DEBUG) - + + ENDIF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) + IF (QT_${basename}_INCLUDE_DIR) #add the include directory to QT_INCLUDES SET(QT_INCLUDES "${QT_${basename}_INCLUDE_DIR}" ${QT_INCLUDES}) ENDIF (QT_${basename}_INCLUDE_DIR) # Make variables changeble to the advanced user - MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_INCLUDE_DIR) + MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_RELEASE QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR) ENDMACRO (_QT4_ADJUST_LIB_VARS) @@ -1003,7 +966,6 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) _QT4_ADJUST_LIB_VARS(PHONON) - # platform dependent libraries IF(Q_WS_X11) _QT4_ADJUST_LIB_VARS(QTMOTIF) @@ -1153,8 +1115,8 @@ IF (QT4_QMAKE_FOUND) IF( NOT Qt4_FIND_QUIETLY) MESSAGE(STATUS "Found Qt-Version ${QTVERSION} (using ${QT_QMAKE_EXECUTABLE})") ENDIF( NOT Qt4_FIND_QUIETLY) - ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND - QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY) + ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND + QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY) SET( QT4_FOUND "NO") SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE) IF( Qt4_FIND_REQUIRED) -- cgit v1.2.1 From 701ce8260d794ed1f8b86782603f923e9afa1e0a Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Tue, 22 Dec 2009 19:45:00 +0000 Subject: CCMAIL: ossi@kde.org CCMAIL: kde-buildsystem@kde.org Fix FindPolkitQt*.cmake to avoid requiring pkgconfig to check for version. This makes trunk optdepends on the new polkit-qt 0.9.3 and polkit-qt-1 0.95.1, which will be released shortly. Also, the polkit-1 backend has been ported to the stable API of Polkit-qt-1 0.95.1 svn path=/trunk/KDE/kdelibs/; revision=1065226 --- modules/FindPolkitQt-1.cmake | 55 ++++++++++++++++++++++++++++++++------------ modules/FindPolkitQt.cmake | 50 ++++++++++++++++++++++++++++------------ 2 files changed, 75 insertions(+), 30 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake index b9b73cd7..15f6f59b 100644 --- a/modules/FindPolkitQt-1.cmake +++ b/modules/FindPolkitQt-1.cmake @@ -19,7 +19,7 @@ if (POLKITQT-1_INCLUDE_DIR AND POLKITQT-1_LIB) endif (POLKITQT-1_INCLUDE_DIR AND POLKITQT-1_LIB) if (NOT POLKITQT-1_MIN_VERSION) - set(POLKITQT-1_MIN_VERSION "0.95.0") + set(POLKITQT-1_MIN_VERSION "0.95.1") endif (NOT POLKITQT-1_MIN_VERSION) if (NOT WIN32) @@ -31,9 +31,41 @@ if (NOT WIN32) endif (NOT WIN32) find_path( POLKITQT-1_INCLUDE_DIR - NAMES PolkitQt/authority.h + NAMES polkitqt1-authority.h PATH_SUFFIXES polkit-qt-1 ) + +find_path( POLKITQT-1_VERSION_FILE + NAMES polkitqt1-version.h + PATH_SUFFIXES polkit-qt-1 +) + +set(POLKITQT-1_VERSION_OK TRUE) +if(POLKITQT-1_VERSION_FILE) + file(READ ${POLKITQT-1_INCLUDE_DIR}/polkitqt1-version.h POLKITQT-1_VERSION_CONTENT) + string (REGEX MATCH "POLKITQT1_VERSION_STRING \".*\"\n" POLKITQT-1_VERSION_MATCH "${POLKITQT-1_VERSION_CONTENT}") + + if(POLKITQT-1_VERSION_MATCH) + string(REGEX REPLACE "POLKITQT1_VERSION_STRING \"(.*)\"\n" "\\1" POLKITQT-1_VERSION ${POLKITQT-1_VERSION_MATCH}) + if(POLKITQT-1_VERSION STRLESS "${POLKITQT-1_MIN_VERSION}") + set(POLKITQT-1_VERSION_OK FALSE) + if(PolkitQt-1_FIND_REQUIRED) + message(FATAL_ERROR "PolkitQt-1 version ${POLKITQT-1_VERSION} was found, but it is too old. Please install ${POLKITQT-1_MIN_VERSION} or newer.") + else(PolkitQt-1_FIND_REQUIRED) + message(STATUS "PolkitQt-1 version ${POLKITQT-1_VERSION} is too old. Please install ${POLKITQT-1_MIN_VERSION} or newer.") + endif(PolkitQt-1_FIND_REQUIRED) + endif(POLKITQT-1_VERSION STRLESS "${POLKITQT-1_MIN_VERSION}") + endif(POLKITQT-1_VERSION_MATCH) +elseif(POLKITQT-1_INCLUDE_DIR) + # The version is so old that it does not even have the file + set(POLKITQT-1_VERSION_OK FALSE) + if(PolkitQt_FIND_REQUIRED) + message(FATAL_ERROR "It looks like PolkitQt-1 is too old. Please install PolkitQt-1 version ${POLKITQT-1_MIN_VERSION} or newer.") + else(PolkitQt_FIND_REQUIRED) + message(STATUS "It looks like PolkitQt-1 is too old. Please install PolkitQt-1 version ${POLKITQT-1_MIN_VERSION} or newer.") + endif(PolkitQt_FIND_REQUIRED) +endif(POLKITQT-1_VERSION_FILE) + find_library( POLKITQT-1_CORE_LIBRARY NAMES polkit-qt-core-1 HINTS ${PC_POLKITQT-1_LIBDIR} @@ -53,22 +85,15 @@ include(FindPackageHandleStandardArgs) # handle the QUIETLY and REQUIRED arguments and set POLKITQT-1_FOUND to TRUE if # all listed variables are TRUE -find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT-1_LIBRARIES POLKITQT-1_INCLUDE_DIR) +find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT-1_LIBRARIES POLKITQT-1_INCLUDE_DIR POLKITQT-1_VERSION_OK) -mark_as_advanced(POLKITQT-1_INCLUDE_DIR POLKITQT-1_CORE_LIBRARY POLKITQT-1_GUI_LIBRARY POLKITQT-1_LIBRARIES) +mark_as_advanced(POLKITQT-1_INCLUDE_DIR POLKITQT-1_CORE_LIBRARY POLKITQT-1_GUI_LIBRARY POLKITQT-1_LIBRARIES POLKITQT-1_VERSION_OK) if (POLKITQT-1_FOUND) - if (PC_POLKITQT-1_VERSION VERSION_LESS POLKITQT-1_MIN_VERSION) - message(STATUS "Found PolkitQt-1 release < ${POLKITQT-1_MIN_VERSION}") - message(STATUS "You need PolkitQt-1 version ${POLKITQT-1_MIN_VERSION} or newer to compile this component") - set(POLKITQT-1_FOUND FALSE) - return() - else (PC_POLKITQT-1_VERSION VERSION_LESS POLKITQT-1_MIN_VERSION) - if ( NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX ) - message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " - "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT-1_PREFIX} prefix") - endif (NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) - endif (PC_POLKITQT-1_VERSION VERSION_LESS POLKITQT-1_MIN_VERSION) + if (NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) + message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " + "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT-1_PREFIX} prefix") + endif (NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) endif (POLKITQT-1_FOUND) set(POLKITQT-1_POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions) diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index 922968a3..b6f883f9 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -25,7 +25,7 @@ if (POLKITQT_INCLUDE_DIR AND POLKITQT_GUI_LIBRARY AND POLKITQT_CORE_LIBRARY) endif (POLKITQT_INCLUDE_DIR AND POLKITQT_GUI_LIBRARY AND POLKITQT_CORE_LIBRARY) if (NOT POLKITQT_MIN_VERSION) - set(POLKITQT_MIN_VERSION "0.9.0") + set(POLKITQT_MIN_VERSION "0.9.3") endif (NOT POLKITQT_MIN_VERSION) if (NOT WIN32) @@ -40,6 +40,38 @@ find_path( POLKITQT_INCLUDE_DIR NAMES polkit-qt/auth.h PATH_SUFFIXES PolicyKit ) + +find_path( POLKITQT_VERSION_FILE + NAMES polkit-qt/polkitqtversion.h + PATH_SUFFIXES PolicyKit +) + +set(POLKITQT_VERSION_OK TRUE) +if(POLKITQT_VERSION_FILE) + file(READ ${POLKITQT_INCLUDE_DIR}/polkit-qt/polkitqtversion.h POLKITQT_VERSION_CONTENT) + string (REGEX MATCH "POLKITQT_VERSION_STRING \".*\"\n" POLKITQT_VERSION_MATCH "${POLKITQT_VERSION_CONTENT}") + + if(POLKITQT_VERSION_MATCH) + string(REGEX REPLACE "POLKITQT_VERSION_STRING \"(.*)\"\n" "\\1" POLKITQT_VERSION ${POLKITQT_VERSION_MATCH}) + if(POLKITQT_VERSION STRLESS "${POLKITQT_MIN_VERSION}") + set(POLKITQT_VERSION_OK FALSE) + if(PolkitQt_FIND_REQUIRED) + message(FATAL_ERROR "PolkitQt version ${POLKITQT_VERSION} was found, but it is too old. Please install ${POLKITQT_MIN_VERSION} or newer.") + else(PolkitQt_FIND_REQUIRED) + message(STATUS "PolkitQt version ${POLKITQT_VERSION} is too old. Please install ${POLKITQT_MIN_VERSION} or newer.") + endif(PolkitQt_FIND_REQUIRED) + endif(POLKITQT_VERSION STRLESS "${POLKITQT_MIN_VERSION}") + endif(POLKITQT_VERSION_MATCH) +elseif(POLKITQT_INCLUDE_DIR) + # The version is so old that it does not even have the file + set(POLKITQT_VERSION_OK FALSE) + if(PolkitQt_FIND_REQUIRED) + message(FATAL_ERROR "It looks like PolkitQt is too old. Please install PolkitQt version ${POLKITQT_MIN_VERSION} or newer.") + else(PolkitQt_FIND_REQUIRED) + message(STATUS "It looks like PolkitQt is too old. Please install PolkitQt version ${POLKITQT_MIN_VERSION} or newer.") + endif(PolkitQt_FIND_REQUIRED) +endif(POLKITQT_VERSION_FILE) + find_library( POLKITQT_CORE_LIBRARY NAMES polkit-qt-core HINTS ${PC_POLKITQT_LIBDIR} @@ -54,21 +86,9 @@ include(FindPackageHandleStandardArgs) # handle the QUIETLY and REQUIRED arguments and set POLKITQT_FOUND to TRUE if # all listed variables are TRUE -find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_INCLUDE_DIR POLKITQT_GUI_LIBRARY POLKITQT_CORE_LIBRARY) - -mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_CORE_LIBRARY POLKITQT_GUI_LIBRARY POLKITQT_LIBRARIES) - -if (POLKITQT_FOUND) - if (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) - if(PolkitQt_FIND_REQUIRED) - message(FATAL_ERROR "Found Polkit-Qt release ${PC_POLKITQT_VERSION}, but at least ${POLKITQT_MIN_VERSION} is required.") - else(PolkitQt_FIND_REQUIRED) - message(STATUS "Found Polkit-Qt release ${PC_POLKITQT_VERSION}, but at least ${POLKITQT_MIN_VERSION} is required.") - endif(PolkitQt_FIND_REQUIRED) - set(POLKITQT_FOUND FALSE) - endif (PC_POLKITQT_VERSION VERSION_LESS POLKITQT_MIN_VERSION) -endif (POLKITQT_FOUND) +find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_INCLUDE_DIR POLKITQT_GUI_LIBRARY POLKITQT_CORE_LIBRARY POLKITQT_VERSION_OK) +mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_CORE_LIBRARY POLKITQT_GUI_LIBRARY POLKITQT_LIBRARIES POLKITQT_VERSION_OK) if(POLKITQT_FOUND) get_filename_component(_POLKITQT_INSTALL_PREFIX "${POLKITQT_CORE_LIBRARY}" PATH) -- cgit v1.2.1 From cb44bade9b0d2ee0eaf730e782ed67592e464234 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 23 Dec 2009 15:04:04 +0000 Subject: -handle the case that release- as well as debug-version have been found first, because otherwise we always run into this branch (because the release-only and debug-only branches set both variables) Alex svn path=/trunk/KDE/kdelibs/; revision=1065525 --- modules/FindQt4.cmake | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 91712888..864828f8 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -894,6 +894,20 @@ IF (QT4_QMAKE_FOUND) MACRO (_QT4_ADJUST_LIB_VARS basename) IF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) + # if the release- as well as the debug-version of the library have been found: + IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + # if the generator supports configuration types then set + # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value + IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + # if there are no configuration types and CMAKE_BUILD_TYPE has no value + # then just use the release libraries + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE} ) + ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + # if only the release version was found, set the debug variable also to the release version IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE}) @@ -908,19 +922,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) - IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - # if the generator supports configuration types then set - # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value - IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - # if there are no configuration types and CMAKE_BUILD_TYPE has no value - # then just use the release libraries - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE} ) - ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - + # put the value in the cache: SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE STRING "The Qt ${basename} library" FORCE) IF (QT_${basename}_LIBRARY) -- cgit v1.2.1 From cb43713608b19412095db8f883fef4584aa592d4 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Thu, 24 Dec 2009 12:17:27 +0000 Subject: CCMAIL: neundorf@kde.org Strange indeed. I applied your patch, but to make it work I had to change the find_path calls with find_file, which actually makes more sense, also. They both work here (but the previous method worked too), let's see how CDash likes this. Ah, let me remind you of this: http://mail.kde.org/pipermail/kde-buildsystem/2009-December/006459.html it's quite critical and should be solved before 4.4 release. Merry christmas and a happy new year svn path=/trunk/KDE/kdelibs/; revision=1065822 --- modules/FindPolkitQt-1.cmake | 8 ++++---- modules/FindPolkitQt.cmake | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake index 15f6f59b..8ef5b3c9 100644 --- a/modules/FindPolkitQt-1.cmake +++ b/modules/FindPolkitQt-1.cmake @@ -35,14 +35,14 @@ find_path( POLKITQT-1_INCLUDE_DIR PATH_SUFFIXES polkit-qt-1 ) -find_path( POLKITQT-1_VERSION_FILE - NAMES polkitqt1-version.h - PATH_SUFFIXES polkit-qt-1 +find_file( POLKITQT-1_VERSION_FILE + NAMES polkit-qt-1/polkitqt1-version.h + PATHS ${POLKITQT-1_INCLUDE_DIR} ) set(POLKITQT-1_VERSION_OK TRUE) if(POLKITQT-1_VERSION_FILE) - file(READ ${POLKITQT-1_INCLUDE_DIR}/polkitqt1-version.h POLKITQT-1_VERSION_CONTENT) + file(READ ${POLKITQT-1_VERSION_FILE} POLKITQT-1_VERSION_CONTENT) string (REGEX MATCH "POLKITQT1_VERSION_STRING \".*\"\n" POLKITQT-1_VERSION_MATCH "${POLKITQT-1_VERSION_CONTENT}") if(POLKITQT-1_VERSION_MATCH) diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index b6f883f9..8f9f712f 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -41,14 +41,14 @@ find_path( POLKITQT_INCLUDE_DIR PATH_SUFFIXES PolicyKit ) -find_path( POLKITQT_VERSION_FILE - NAMES polkit-qt/polkitqtversion.h - PATH_SUFFIXES PolicyKit +find_file( POLKITQT_VERSION_FILE + polkit-qt/polkitqtversion.h + PATHS ${POLKITQT_INCLUDE_DIR} ) set(POLKITQT_VERSION_OK TRUE) if(POLKITQT_VERSION_FILE) - file(READ ${POLKITQT_INCLUDE_DIR}/polkit-qt/polkitqtversion.h POLKITQT_VERSION_CONTENT) + file(READ ${POLKITQT_VERSION_FILE} POLKITQT_VERSION_CONTENT) string (REGEX MATCH "POLKITQT_VERSION_STRING \".*\"\n" POLKITQT_VERSION_MATCH "${POLKITQT_VERSION_CONTENT}") if(POLKITQT_VERSION_MATCH) -- cgit v1.2.1 From ad92bad30f078347776aabe9378c9069e64424a1 Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Sat, 26 Dec 2009 16:35:22 +0000 Subject: Fix FindSharedDesktopOntologies: Previously, if the required version wasn't found (mismatching _VERSION), this cmake file was looking for *any* version and set SHAREDDESKTOPONTOLOGIES_FOUND to true. This also means kdelibs will now require SDO 0.2. ack'ed by Alex. svn path=/trunk/KDE/kdelibs/; revision=1066282 --- modules/FindSharedDesktopOntologies.cmake | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index c5b78fc9..2bca1df3 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -23,18 +23,9 @@ # First try the SharedDesktopOntologiesConfig.cmake from shared-desktop-ontologies 0.2 and newer find_package(SharedDesktopOntologies ${SharedDesktopOntologies_FIND_VERSION} QUIET NO_MODULE) -if (NOT SHAREDDESKTOPONTOLOGIES_ROOT_DIR) - # Look in the standard dirs - find_path (SHAREDDESKTOPONTOLOGIES_ROOT_DIR - nie/nie.trig - PATHS - ${SHARE_INSTALL_PREFIX} - ENV XDG_DATA_DIRS - PATH_SUFFIXES ontology share/ontology ) - -endif (NOT SHAREDDESKTOPONTOLOGIES_ROOT_DIR) - -mark_as_advanced(SHAREDDESKTOPONTOLOGIES_ROOT_DIR) +if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) + mark_as_advanced(SHAREDDESKTOPONTOLOGIES_ROOT_DIR) +endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(SharedDesktopOntologies DEFAULT_MSG SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -- cgit v1.2.1 From b83d8f9ce2caf2cef06139e698d2490dc9d36519 Mon Sep 17 00:00:00 2001 From: Maciej Mrozowski Date: Mon, 28 Dec 2009 17:49:37 +0000 Subject: Make Soprano dependency check nonfatal and thus Nepomuk libs optional. Also updated Soprano URL in FindNepomuk.cmake. To build Nepomuk libs one still needs Soprano >= 2.3.70 with raptor parser and redland storage as well as SDO >= 0.2. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1067012 --- modules/FindNepomuk.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index c4768002..fc4a610b 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -19,7 +19,7 @@ if (NOT DEFINED Soprano_FOUND) find_package(Soprano) include(MacroLogFeature) - macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "" FALSE "" "Soprano is needed for Nepomuk") + macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "http://soprano.sourceforge.net/" FALSE "" "Soprano is needed for Nepomuk") endif (NOT DEFINED Soprano_FOUND) if (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) @@ -64,9 +64,9 @@ include("${NEPOMUK_ADDONTOLOGYCLASSES_FILE}" OPTIONAL) mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES NEPOMUK_ADDONTOLOGIES_FILE) include(FindPackageHandleStandardArgs) -# List all nepomuk and also all necessary soprano variables here, to make it +# List all nepomuk and also all necessary soprano variables here, to make it # easier for the user to see what was missing: -find_package_handle_standard_args(Nepomuk DEFAULT_MSG +find_package_handle_standard_args(Nepomuk DEFAULT_MSG NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR NEPOMUK_ADDONTOLOGYCLASSES_FILE Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND SHAREDDESKTOPONTOLOGIES_FOUND -- cgit v1.2.1 From c4771577d1f087b0a4751ce3c1ae53fcb7505362 Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Mon, 28 Dec 2009 19:08:22 +0000 Subject: There doesn't exist any sourceformatter library. svn path=/trunk/KDE/kdelibs/; revision=1067028 --- modules/FindKDevPlatform.cmake | 1 - 1 file changed, 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDevPlatform.cmake b/modules/FindKDevPlatform.cmake index 1a771c52..a458a2d2 100644 --- a/modules/FindKDevPlatform.cmake +++ b/modules/FindKDevPlatform.cmake @@ -25,7 +25,6 @@ # classes with custom implementations # KDEVPLATFORM_UTIL_LIBRARIES - util module library # KDEVPLATFORM_VCS_LIBRARIES - vcs module library -# KDEVPLATFORM_SOURCEFORMATTER_LIBRARIES - source formatter library # KDEVPLATFORM_DEBUGGER_LIBRARIES - debugger module library # # The following macros are added (from KDevPlatformMacros.cmake): -- cgit v1.2.1 From 773aa770c5f9d5900b9f71b0b204afd20b1b1ced Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Wed, 30 Dec 2009 09:32:20 +0000 Subject: jom parses the '#' from the class uri as the start of a comment so we must escape it svn path=/trunk/KDE/kdelibs/; revision=1067673 --- modules/NepomukAddOntologyClasses.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/NepomukAddOntologyClasses.cmake b/modules/NepomukAddOntologyClasses.cmake index 687db6ef..7245e51b 100644 --- a/modules/NepomukAddOntologyClasses.cmake +++ b/modules/NepomukAddOntologyClasses.cmake @@ -83,10 +83,20 @@ macro(NEPOMUK_ADD_ONTOLOGY_CLASSES _sources) message(SEND_ERROR "Running ${RCGEN} to generate list of sources failed with error code ${rcgen_result}") endif(NOT ${rcgen_result} EQUAL 0) + # jom parses the '#' from the class uri as the start of a comment so we must escape it + if(MSVC) + foreach(_class IN LISTS _classes) + string(REPLACE "#" "^#" _class ${_class}) + list(REMOVE_AT _classes 0) + list(APPEND _classes ${_class}) + endforeach(_class) + endif(MSVC) + add_custom_command(OUTPUT ${_out_headers} ${_out_sources} COMMAND ${RCGEN} ${_fastmode} --writeall --target ${_targetdir}/ ${_classes} ${_visibility} ${_ontologies} DEPENDS ${_ontologies} COMMENT "Generating ontology source files from ${_ontofilenames}" + VERBATIM ) # make sure the includes are found -- cgit v1.2.1 From 1b03544444fb469a8726b846f23db408c6da6549 Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Wed, 30 Dec 2009 09:55:53 +0000 Subject: hmm, actually that change breaks nmake, so revert it. It's a bug that has to be fixed in jom directly. svn path=/trunk/KDE/kdelibs/; revision=1067674 --- modules/NepomukAddOntologyClasses.cmake | 10 ---------- 1 file changed, 10 deletions(-) (limited to 'modules') diff --git a/modules/NepomukAddOntologyClasses.cmake b/modules/NepomukAddOntologyClasses.cmake index 7245e51b..687db6ef 100644 --- a/modules/NepomukAddOntologyClasses.cmake +++ b/modules/NepomukAddOntologyClasses.cmake @@ -83,20 +83,10 @@ macro(NEPOMUK_ADD_ONTOLOGY_CLASSES _sources) message(SEND_ERROR "Running ${RCGEN} to generate list of sources failed with error code ${rcgen_result}") endif(NOT ${rcgen_result} EQUAL 0) - # jom parses the '#' from the class uri as the start of a comment so we must escape it - if(MSVC) - foreach(_class IN LISTS _classes) - string(REPLACE "#" "^#" _class ${_class}) - list(REMOVE_AT _classes 0) - list(APPEND _classes ${_class}) - endforeach(_class) - endif(MSVC) - add_custom_command(OUTPUT ${_out_headers} ${_out_sources} COMMAND ${RCGEN} ${_fastmode} --writeall --target ${_targetdir}/ ${_classes} ${_visibility} ${_ontologies} DEPENDS ${_ontologies} COMMENT "Generating ontology source files from ${_ontofilenames}" - VERBATIM ) # make sure the includes are found -- cgit v1.2.1 From b0f30d9bad00a75d726395c217b1c8a32528c46b Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Fri, 1 Jan 2010 14:46:45 +0000 Subject: Make it possible to override SIP_DEFAULT_DIR from the commandline. This makes it possible to install the sip files into the same prefix like the rest of kdelibs. Perhaps it would be a got idea to respect PYTHON_LIBS_WITH_KDE (from FindPythonLibrary.cmake) here? But I'm not sure. CCMAIL: kde-buildsystem@kde.org CCMAIL: kde-bindings@kde.org svn path=/trunk/KDE/kdelibs/; revision=1068561 --- modules/FindSIP.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSIP.cmake b/modules/FindSIP.cmake index 01f3bd16..53e28881 100644 --- a/modules/FindSIP.cmake +++ b/modules/FindSIP.cmake @@ -38,7 +38,9 @@ ELSE(SIP_VERSION) STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config}) STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config}) STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_EXECUTABLE ${sip_config}) - STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config}) + IF(NOT SIP_DEFAULT_SIP_DIR) + STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config}) + ENDIF(NOT SIP_DEFAULT_SIP_DIR) STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config}) SET(SIP_FOUND TRUE) ENDIF(sip_config) -- cgit v1.2.1 From 139e74d81f6e0f7a50ba114328d97726b43d3497 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 6 Jan 2010 22:09:54 +0000 Subject: bugfix: this macro did actually in most cases not work as it should, since most find-modules set UPPERCASE_FOUND, while this set only CamelCase_FOUND. Now it sets both. Alex CCMAIL: vkrause@kde.org svn path=/trunk/KDE/kdelibs/; revision=1070843 --- modules/MacroOptionalFindPackage.cmake | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake index f09952f3..d4ed48e3 100644 --- a/modules/MacroOptionalFindPackage.cmake +++ b/modules/MacroOptionalFindPackage.cmake @@ -7,22 +7,42 @@ # The standard _FOUND variables can be used in the same way # as when using the normal FIND_PACKAGE() -# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2006-2010 Alexander Neundorf, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# This is just a helper macro to set a bunch of variables empty. +# We don't know whether the package uses UPPERCASENAME or CamelCaseName, so we try both: +macro(_MOFP_SET_EMPTY_IF_DEFINED _name _var) + if(DEFINED ${_name}_${_var}) + set(${_name}_${_var} "") + endif(DEFINED ${_name}_${_var}) + + string(TOUPPER ${_name} _nameUpper) + if(DEFINED ${_nameUpper}_${_var}) + set(${_nameUpper}_${_var} "") + endif(DEFINED ${_nameUpper}_${_var}) +endmacro(_MOFP_SET_EMPTY_IF_DEFINED _package _var) + macro (MACRO_OPTIONAL_FIND_PACKAGE _name ) option(WITH_${_name} "Search for ${_name} package" ON) if (WITH_${_name}) find_package(${_name} ${ARGN}) else (WITH_${_name}) - set(${_name}_FOUND) - set(${_name}_INCLUDE_DIR) - set(${_name}_INCLUDES) - set(${_name}_LIBRARY) - set(${_name}_LIBRARIES) + string(TOUPPER ${_name} _nameUpper) + set(${_name}_FOUND FALSE) + set(${_nameUpper}_FOUND FALSE) + + _mofp_set_empty_if_defined(${_name} INCLUDE_DIRS) + _mofp_set_empty_if_defined(${_name} INCLUDE_DIR) + _mofp_set_empty_if_defined(${_name} INCLUDES) + _mofp_set_empty_if_defined(${_name} LIBRARY) + _mofp_set_empty_if_defined(${_name} LIBRARIES) + _mofp_set_empty_if_defined(${_name} LIBS) + _mofp_set_empty_if_defined(${_name} FLAGS) + _mofp_set_empty_if_defined(${_name} DEFINITIONS) endif (WITH_${_name}) endmacro (MACRO_OPTIONAL_FIND_PACKAGE) -- cgit v1.2.1 From 028b0d21b6bcdad6ae71bb35748261af900d492c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 6 Jan 2010 22:17:39 +0000 Subject: -setting QUIETLY manually is not necessary, this is handled automatically by find_package_handle_standard_args() -the first argument to find_package_handle_standard_args() should be the exact-case name of the Find-module, i.e. "LibAttica", not "libattica" Frederik: if you really want to see this as "libattica", then the module has to be renamed to "Findlibattica.cmake", which is also ok and we still have the time to do it since this file has not been part of a release yet. Alex CCMAIL: CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=1070847 --- modules/FindLibAttica.cmake | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindLibAttica.cmake b/modules/FindLibAttica.cmake index f901075a..b9b0610a 100644 --- a/modules/FindLibAttica.cmake +++ b/modules/FindLibAttica.cmake @@ -14,11 +14,6 @@ IF (NOT LIBATTICA_MIN_VERSION) SET(LIBATTICA_MIN_VERSION "0.1.0") ENDIF(NOT LIBATTICA_MIN_VERSION) -IF (LIBATTICA_INCLUDE_DIR AND LIBATTICA_LIBRARIES) - # in cache already - SET(libattica_FIND_QUIETLY TRUE) -ENDIF (LIBATTICA_INCLUDE_DIR AND LIBATTICA_LIBRARIES) - IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls @@ -59,10 +54,9 @@ FIND_LIBRARY(LIBATTICA_LIBRARIES NAMES attica libattica ) INCLUDE(FindPackageHandleStandardArgs) -# handle the QUIETLY and REQUIRED arguments and set ATTICA_FOUND to TRUE if +# handle the QUIETLY and REQUIRED arguments and set LIBATTICA_FOUND to TRUE if # all listed variables are TRUE -FIND_PACKAGE_HANDLE_STANDARD_ARGS(libattica DEFAULT_MSG LIBATTICA_LIBRARIES LIBATTICA_INCLUDE_DIR LIBATTICA_VERSION_OK) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibAttica DEFAULT_MSG LIBATTICA_LIBRARIES LIBATTICA_INCLUDE_DIR LIBATTICA_VERSION_OK) MARK_AS_ADVANCED(LIBATTICA_INCLUDE_DIR LIBATTICA_LIBRARIES) - -- cgit v1.2.1 From be71e39f528e26bfc1ff97ef2b615bc515342a05 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 6 Jan 2010 22:22:22 +0000 Subject: -introduce imported targets for the various Qt4 libraries, so we can handle the release- and debug-libraries finally properly. Tested on my machine with Linux with kdelibs, kdeutils and some other module, and also tested under Windows by Saro. If you suddenly get strange linking-related errors with Qt4 libraries, please let me know ASAP. This should also help the installation of KDE under Windows, since with these imported Qt libraries the location of the Qt-libraries is not fixed at kdelibs-buildtime anymore (for the installed dependencies-file), but determined at 3rd-party cmake-time. So different locations of Qt on a Windows-development machine should be no problem anymore. (I'd like to have some feedback on this ) Alex CCMAIL: kde-windows@kde.org CCMAIL: kde-buildsystem@kde.org CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=1070849 --- modules/FindQt4.cmake | 57 ++++++++++++++++++++++++--------------------------- 1 file changed, 27 insertions(+), 30 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 864828f8..941e2e40 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -892,38 +892,35 @@ IF (QT4_QMAKE_FOUND) ############################################ MACRO (_QT4_ADJUST_LIB_VARS basename) +# message(STATUS "Adjusting ${basename}, release: -${QT_${basename}_LIBRARY_RELEASE}- debug: -${QT_${basename}_LIBRARY_DEBUG}-") IF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) + ADD_LIBRARY(Qt4__${basename} SHARED IMPORTED ) - # if the release- as well as the debug-version of the library have been found: - IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - # if the generator supports configuration types then set - # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value - IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - # if there are no configuration types and CMAKE_BUILD_TYPE has no value - # then just use the release libraries - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE} ) - ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) - - # if only the release version was found, set the debug variable also to the release version - IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE}) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) - SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_RELEASE}) - ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) - - # if only the debug version was found, set the release variable also to the debug version - IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) - SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG}) - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) - SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) - ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) - - # put the value in the cache: - SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE STRING "The Qt ${basename} library" FORCE) + IF(WIN32) + SET(_QT4_LIBRARY_PROPERTY_NAME IMPLIB) + ELSE(WIN32) + SET(_QT4_LIBRARY_PROPERTY_NAME LOCATION) + ENDIF(WIN32) + + + IF (QT_${basename}_LIBRARY_RELEASE) + SET_PROPERTY(TARGET Qt4__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + SET_PROPERTY(TARGET Qt4__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_RELEASE "${QT_${basename}_LIBRARY_RELEASE}" ) +# message(STATUS "Setting IMPORTED_LOCATION_RELEASE to -${QT_${basename}_LIBRARY_RELEASE}-") + ENDIF (QT_${basename}_LIBRARY_RELEASE) + + IF (QT_${basename}_LIBRARY_DEBUG) + SET_PROPERTY(TARGET Qt4__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + SET_PROPERTY(TARGET Qt4__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_DEBUG "${QT_${basename}_LIBRARY_DEBUG}" ) + +# message(STATUS "Setting IMPORTED_LOCATION_DEBUG to -${QT_${basename}_LIBRARY_DEBUG}-") + + SET_PROPERTY(TARGET Qt4__${basename} PROPERTY MAP_IMPORTED_CONFIG_PROFILE DEBUG) + SET_PROPERTY(TARGET Qt4__${basename} PROPERTY MAP_IMPORTED_CONFIG_DEBUGFULL DEBUG) + ENDIF (QT_${basename}_LIBRARY_DEBUG) + + SET(QT_${basename}_LIBRARY Qt4__${basename} ) + SET(QT_${basename}_LIBRARIES Qt4__${basename} ) IF (QT_${basename}_LIBRARY) SET(QT_${basename}_FOUND 1) -- cgit v1.2.1 From 9ca55bb491d713c96e83b16845e0599f98c05de0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 7 Jan 2010 15:44:17 +0000 Subject: we need 2.6.3 for the shared-desktop-ontologies detection svn path=/trunk/KDE/kdelibs/; revision=1071123 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c6f5599e..672a6db5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -275,7 +275,7 @@ # this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below -cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR) +cmake_minimum_required(VERSION 2.6.3 FATAL_ERROR) # set the cmake policies to the 2.4.x compatibility settings (may change for KDE 4.3) cmake_policy(VERSION 2.4.5) -- cgit v1.2.1 From b22257ac18459a4dfbd6a42e0ac14472cd8f13ea Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 7 Jan 2010 17:53:58 +0000 Subject: we require CMake 2.6.2 or KDE, nothing else has been announced, discussed or even suggested Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: mueller@kde.org svn path=/trunk/KDE/kdelibs/; revision=1071192 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 672a6db5..c6f5599e 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -275,7 +275,7 @@ # this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below -cmake_minimum_required(VERSION 2.6.3 FATAL_ERROR) +cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR) # set the cmake policies to the 2.4.x compatibility settings (may change for KDE 4.3) cmake_policy(VERSION 2.4.5) -- cgit v1.2.1 From 1c966e86fcb333b72f65588a0ded697889bf378b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 7 Jan 2010 18:39:34 +0000 Subject: -make cmake 2.6.2 find SDO 0.2 This didn't work since SDO 0.2 installs its files into share/cmake/SDO/, which is supported by cmake >= 2.6.3, but not by 2.6.2, which KDE requires. It would be nice if SDO would install it into share/SDO/ or share/SDO/cmake, then it would be found automatically by cmake 2.6.2 and also 2.6.3 and all newer versions. Alex CCMAIL: kde-buildsystem@kde.org CCMAIL: mueller@kde.org CCMAIL: release-team@kde.org CCMAIL: trueg@kde.org CCMAIL: kde-packagers@kde.org svn path=/trunk/KDE/kdelibs/; revision=1071218 --- modules/FindSharedDesktopOntologies.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index 2bca1df3..eecd608a 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -21,7 +21,14 @@ # First try the SharedDesktopOntologiesConfig.cmake from shared-desktop-ontologies 0.2 and newer -find_package(SharedDesktopOntologies ${SharedDesktopOntologies_FIND_VERSION} QUIET NO_MODULE) + +# This is to make it work with cmake 2.6.2, since SDO 0.2 installs its config file into +# the 2.6.3 compatible location only ( share/cmake/SDO/ instead share/SDO/[cmake/] ) +if( "${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_LESS "2.6.3") + find_path(_SDO_CONFIG_DIR SharedDesktopOntologiesConfig.cmake PATH_SUFFIXES share/cmake/SharedDesktopOntologies/ ) +endif( "${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_LESS "2.6.3") + +find_package(SharedDesktopOntologies ${SharedDesktopOntologies_FIND_VERSION} QUIET NO_MODULE HINTS "${_SDO_CONFIG_DIR}" ) if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) mark_as_advanced(SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -- cgit v1.2.1 From d75c51be7b462e488f91c71fb83c49b8ccc5794f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 11 Jan 2010 20:12:40 +0000 Subject: -fix handling of imported targets which don't have the link interface libraries property set, and also fix it on Windows Alex CCMAIL: CCMAIL: christoph@maxiom.de svn path=/trunk/KDE/kdelibs/; revision=1073213 --- .../HandleImportedTargetsInCMakeRequiredLibraries.cmake | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake b/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake index 28564ab6..e28efd44 100644 --- a/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake +++ b/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake @@ -44,15 +44,23 @@ FUNCTION(HANDLE_IMPORTED_TARGETS_IN_CMAKE_REQUIRED_LIBRARIES _RESULT) ENDIF ("${_CCSR_LOOP_COUNTER}" LESS 100) LIST(GET _importedConfigs 0 _firstImportedConfig) - GET_TARGET_PROPERTY(_firstImportedLocation ${_CURRENT_LIB} LOCATION_${_firstImportedConfig}) + IF(NOT WIN32) + GET_TARGET_PROPERTY(_firstImportedLocation ${_CURRENT_LIB} IMPORTED_LOCATION_${_firstImportedConfig}) + ELSE(NOT WIN32) + GET_TARGET_PROPERTY(_firstImportedLocation ${_CURRENT_LIB} IMPORTED_IMPLIB_${_firstImportedConfig}) + ENDIF(NOT WIN32) GET_TARGET_PROPERTY(_linkInterfaceLibs ${_CURRENT_LIB} IMPORTED_LINK_INTERFACE_LIBRARIES_${_firstImportedConfig} ) LIST(APPEND _CCSR_NEW_REQ_LIBS ${_firstImportedLocation}) # MESSAGE(STATUS "Appending lib ${_CURRENT_LIB} as ${_firstImportedLocation}") - FOREACH(_currentLinkInterfaceLib ${_linkInterfaceLibs}) + IF(_linkInterfaceLibs) + FOREACH(_currentLinkInterfaceLib ${_linkInterfaceLibs}) # MESSAGE(STATUS "Appending link interface lib ${_currentLinkInterfaceLib}") - LIST(APPEND _CCSR_NEW_REQ_LIBS ${_currentLinkInterfaceLib} ) - ENDFOREACH(_currentLinkInterfaceLib ${_linkInterfaceLibs}) + IF(_currentLinkInterfaceLib) + LIST(APPEND _CCSR_NEW_REQ_LIBS ${_currentLinkInterfaceLib} ) + ENDIF(_currentLinkInterfaceLib) + ENDFOREACH(_currentLinkInterfaceLib ${_linkInterfaceLibs}) + ENDIF(_linkInterfaceLibs) ELSE(_importedConfigs) # "Normal" libraries are just used as they are. LIST(APPEND _CCSR_NEW_REQ_LIBS ${_CURRENT_LIB} ) -- cgit v1.2.1 From fac974adfa9f3a9f0b44355ac2e6a4301905d4fa Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 13 Jan 2010 18:45:13 +0000 Subject: -break mark_as_advanced into multiple lines to improve readability (also for patches) Alex svn path=/trunk/KDE/kdelibs/; revision=1074258 --- modules/FindPolkitQt-1.cmake | 7 ++++++- modules/FindPolkitQt.cmake | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake index 8ef5b3c9..d610d00f 100644 --- a/modules/FindPolkitQt-1.cmake +++ b/modules/FindPolkitQt-1.cmake @@ -87,7 +87,12 @@ include(FindPackageHandleStandardArgs) # all listed variables are TRUE find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT-1_LIBRARIES POLKITQT-1_INCLUDE_DIR POLKITQT-1_VERSION_OK) -mark_as_advanced(POLKITQT-1_INCLUDE_DIR POLKITQT-1_CORE_LIBRARY POLKITQT-1_GUI_LIBRARY POLKITQT-1_LIBRARIES POLKITQT-1_VERSION_OK) +mark_as_advanced(POLKITQT-1_INCLUDE_DIR + POLKITQT-1_CORE_LIBRARY + POLKITQT-1_GUI_LIBRARY + POLKITQT-1_LIBRARIES + POLKITQT-1_VERSION_OK + ) if (POLKITQT-1_FOUND) if (NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index 8f9f712f..d2431806 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -88,7 +88,12 @@ include(FindPackageHandleStandardArgs) # all listed variables are TRUE find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_INCLUDE_DIR POLKITQT_GUI_LIBRARY POLKITQT_CORE_LIBRARY POLKITQT_VERSION_OK) -mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_CORE_LIBRARY POLKITQT_GUI_LIBRARY POLKITQT_LIBRARIES POLKITQT_VERSION_OK) +mark_as_advanced(POLKITQT_INCLUDE_DIR + POLKITQT_CORE_LIBRARY + POLKITQT_GUI_LIBRARY + POLKITQT_LIBRARIES + POLKITQT_VERSION_OK + ) if(POLKITQT_FOUND) get_filename_component(_POLKITQT_INSTALL_PREFIX "${POLKITQT_CORE_LIBRARY}" PATH) -- cgit v1.2.1 From f04076a5ddcf0a551b8a45e0e11c9e0ee353e82d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 13 Jan 2010 18:50:07 +0000 Subject: -don't try to mark non-cache variables as advanced -mark VERSION_FILE as advanced (part of the patch from Dario) Alex CCMAIL: drf54321@gmail.com svn path=/trunk/KDE/kdelibs/; revision=1074260 --- modules/FindPolkitQt-1.cmake | 8 ++++---- modules/FindPolkitQt.cmake | 3 +-- 2 files changed, 5 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake index d610d00f..159a54cc 100644 --- a/modules/FindPolkitQt-1.cmake +++ b/modules/FindPolkitQt-1.cmake @@ -74,7 +74,7 @@ find_library( POLKITQT-1_GUI_LIBRARY NAMES polkit-qt-gui-1 HINTS ${PC_POLKITQT-1_LIBDIR} ) -find_library( POLKITQT-1_AGENT_LIBRARY +find_library( POLKITQT-1_AGENT_LIBRARY NAMES polkit-qt-agent-1 HINTS ${PC_POLKITQT-1_LIBDIR} ) @@ -85,13 +85,13 @@ include(FindPackageHandleStandardArgs) # handle the QUIETLY and REQUIRED arguments and set POLKITQT-1_FOUND to TRUE if # all listed variables are TRUE -find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT-1_LIBRARIES POLKITQT-1_INCLUDE_DIR POLKITQT-1_VERSION_OK) +find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT-1_LIBRARIES POLKITQT-1_INCLUDE_DIR POLKITQT-1_VERSION_OK) mark_as_advanced(POLKITQT-1_INCLUDE_DIR POLKITQT-1_CORE_LIBRARY POLKITQT-1_GUI_LIBRARY - POLKITQT-1_LIBRARIES - POLKITQT-1_VERSION_OK + POLKITQT-1_AGENT_LIBRARY + POLKITQT-1_VERSION_FILE ) if (POLKITQT-1_FOUND) diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index d2431806..84a2b8b5 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -91,8 +91,7 @@ find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_INCLUDE_DIR PO mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_CORE_LIBRARY POLKITQT_GUI_LIBRARY - POLKITQT_LIBRARIES - POLKITQT_VERSION_OK + POLKITQT_VERSION_FILE ) if(POLKITQT_FOUND) -- cgit v1.2.1 From 52ff67d907433f7d6f36c2c850dd75baabe1204a Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 13 Jan 2010 21:21:19 +0000 Subject: -fix the temporary source incompatiblity introduced in rev 1070849 (when a project first did a find_package(Qt4) with a FindQt4.cmake not from kdelibs, followed by a find_package(KDE4), the imported targets for the Qt library used in the exported targets file of kdelibs and created in kdelibs FindQt4.cmake did not exist, so it did not link) Now when doing a find_package(KDE4) always the FindQt4.cmake in the same directory is executed, and only does nothing if also the imported Qt targets already exist. This should fix rekonq, quassel, amarok, etc. Please let me know if it still does not work. Please also let me know if it works now. Thanks Alex CCMAIL: sputnick@quassel-irc.org CCMAIL: bbeschow@cs.tu-berlin.de svn path=/trunk/KDE/kdelibs/; revision=1074319 --- modules/FindKDE4Internal.cmake | 16 +++++++++++--- modules/FindQt4.cmake | 48 ++++++++++++++++++++++-------------------- 2 files changed, 38 insertions(+), 26 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c6f5599e..569776a6 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -303,6 +303,10 @@ endif(POLICY CMP0011) # Only do something if it hasn't been found yet if(NOT KDE4_FOUND) +# get the directory of the current file, used later on in the file +get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) + + include (MacroEnsureVersion) # We may only search for other packages with "REQUIRED" if we are required ourselves. @@ -317,6 +321,13 @@ else(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) set(_REQ_STRING_KDE4_MESSAGE "STATUS") endif(KDE4_FIND_REQUIRED OR KDE4Internal_FIND_REQUIRED) + +# Store CMAKE_MODULE_PATH and then append the current dir to it, so we are sure +# we get the FindQt4.cmake located next to us and not a different one. +# The original CMAKE_MODULE_PATH is restored later on. +set(_kde_cmake_module_path_back ${CMAKE_MODULE_PATH}) +set(CMAKE_MODULE_PATH ${kde_cmake_module_dir} ${CMAKE_MODULE_PATH} ) + # if the minimum Qt requirement is changed, change all occurrence in the # following lines if( NOT QT_MIN_VERSION ) @@ -351,6 +362,8 @@ if(NOT PERL_FOUND) message(STATUS "Perl not found") endif(NOT PERL_FOUND) +# restore the original CMAKE_MODULE_PATH +set(CMAKE_MODULE_PATH ${_kde_cmake_module_path_back}) # we check for Phonon not here, but further below, i.e. after KDELibsDependencies.cmake # has been loaded, which helps in the case that phonon is installed to the same @@ -390,9 +403,6 @@ include (CheckCXXCompilerFlag) include (CheckCXXSourceCompiles) -# get the directory of the current file, used later on in the file -get_filename_component( kde_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) - # are we trying to compile kdelibs ? kdelibs_SOURCE_DIR comes from "project(kdelibs)" in kdelibs/CMakeLists.txt # then enter bootstrap mode diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 941e2e40..f763633d 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -361,10 +361,10 @@ IF(QT_QT_LIBRARY) ENDIF(QT_QT_LIBRARY) -IF (QT4_QMAKE_FOUND) +IF (QT4_QMAKE_FOUND AND Qt4ImportedTarget__QtCore) # Check already done in this cmake run, nothing more to do RETURN() -ENDIF (QT4_QMAKE_FOUND) +ENDIF (QT4_QMAKE_FOUND AND Qt4ImportedTarget__QtCore) # check that QT_NO_DEBUG is defined for release configurations MACRO(QT_CHECK_FLAG_EXISTS FLAG VAR DOC) @@ -894,38 +894,40 @@ IF (QT4_QMAKE_FOUND) MACRO (_QT4_ADJUST_LIB_VARS basename) # message(STATUS "Adjusting ${basename}, release: -${QT_${basename}_LIBRARY_RELEASE}- debug: -${QT_${basename}_LIBRARY_DEBUG}-") IF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) - ADD_LIBRARY(Qt4__${basename} SHARED IMPORTED ) + IF(NOT TARGET Qt4ImportedTarget__${basename}) + ADD_LIBRARY(Qt4ImportedTarget__${basename} SHARED IMPORTED ) - IF(WIN32) - SET(_QT4_LIBRARY_PROPERTY_NAME IMPLIB) - ELSE(WIN32) - SET(_QT4_LIBRARY_PROPERTY_NAME LOCATION) - ENDIF(WIN32) + IF(WIN32) + SET(_QT4_LIBRARY_PROPERTY_NAME IMPLIB) + ELSE(WIN32) + SET(_QT4_LIBRARY_PROPERTY_NAME LOCATION) + ENDIF(WIN32) - IF (QT_${basename}_LIBRARY_RELEASE) - SET_PROPERTY(TARGET Qt4__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) - SET_PROPERTY(TARGET Qt4__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_RELEASE "${QT_${basename}_LIBRARY_RELEASE}" ) + IF (QT_${basename}_LIBRARY_RELEASE) + SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_RELEASE "${QT_${basename}_LIBRARY_RELEASE}" ) # message(STATUS "Setting IMPORTED_LOCATION_RELEASE to -${QT_${basename}_LIBRARY_RELEASE}-") - ENDIF (QT_${basename}_LIBRARY_RELEASE) + ENDIF (QT_${basename}_LIBRARY_RELEASE) - IF (QT_${basename}_LIBRARY_DEBUG) - SET_PROPERTY(TARGET Qt4__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) - SET_PROPERTY(TARGET Qt4__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_DEBUG "${QT_${basename}_LIBRARY_DEBUG}" ) + IF (QT_${basename}_LIBRARY_DEBUG) + SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_DEBUG "${QT_${basename}_LIBRARY_DEBUG}" ) # message(STATUS "Setting IMPORTED_LOCATION_DEBUG to -${QT_${basename}_LIBRARY_DEBUG}-") - SET_PROPERTY(TARGET Qt4__${basename} PROPERTY MAP_IMPORTED_CONFIG_PROFILE DEBUG) - SET_PROPERTY(TARGET Qt4__${basename} PROPERTY MAP_IMPORTED_CONFIG_DEBUGFULL DEBUG) - ENDIF (QT_${basename}_LIBRARY_DEBUG) + SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY MAP_IMPORTED_CONFIG_PROFILE DEBUG) + SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY MAP_IMPORTED_CONFIG_DEBUGFULL DEBUG) + ENDIF (QT_${basename}_LIBRARY_DEBUG) - SET(QT_${basename}_LIBRARY Qt4__${basename} ) - SET(QT_${basename}_LIBRARIES Qt4__${basename} ) + SET(QT_${basename}_LIBRARY Qt4ImportedTarget__${basename} ) + SET(QT_${basename}_LIBRARIES Qt4ImportedTarget__${basename} ) - IF (QT_${basename}_LIBRARY) - SET(QT_${basename}_FOUND 1) - ENDIF (QT_${basename}_LIBRARY) + IF (QT_${basename}_LIBRARY) + SET(QT_${basename}_FOUND 1) + ENDIF (QT_${basename}_LIBRARY) + ENDIF(NOT TARGET Qt4ImportedTarget__${basename}) ENDIF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) IF (QT_${basename}_INCLUDE_DIR) -- cgit v1.2.1 From d1b7b8459f383c215f1e70d305beab8dfb1a0aa5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 17 Jan 2010 16:25:02 +0000 Subject: -remove commented code -add a comment that the name of the imported targets must not change Alex svn path=/trunk/KDE/kdelibs/; revision=1076155 --- modules/FindQt4.cmake | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index f763633d..c5fc6b06 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -892,7 +892,9 @@ IF (QT4_QMAKE_FOUND) ############################################ MACRO (_QT4_ADJUST_LIB_VARS basename) -# message(STATUS "Adjusting ${basename}, release: -${QT_${basename}_LIBRARY_RELEASE}- debug: -${QT_${basename}_LIBRARY_DEBUG}-") + # The name of the imported targets, i.e. the prefix "Qt4ImportedTarget__" must not change, + # since it is stored in EXPORT-files as name of a required library. If the name would change + # here, this would lead to the imported Qt4-library targets not being resolved by cmake anymore. IF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) IF(NOT TARGET Qt4ImportedTarget__${basename}) ADD_LIBRARY(Qt4ImportedTarget__${basename} SHARED IMPORTED ) @@ -907,16 +909,13 @@ IF (QT4_QMAKE_FOUND) IF (QT_${basename}_LIBRARY_RELEASE) SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_RELEASE "${QT_${basename}_LIBRARY_RELEASE}" ) -# message(STATUS "Setting IMPORTED_LOCATION_RELEASE to -${QT_${basename}_LIBRARY_RELEASE}-") ENDIF (QT_${basename}_LIBRARY_RELEASE) IF (QT_${basename}_LIBRARY_DEBUG) SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_DEBUG "${QT_${basename}_LIBRARY_DEBUG}" ) -# message(STATUS "Setting IMPORTED_LOCATION_DEBUG to -${QT_${basename}_LIBRARY_DEBUG}-") - - SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY MAP_IMPORTED_CONFIG_PROFILE DEBUG) + SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY MAP_IMPORTED_CONFIG_PROFILE DEBUG) SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY MAP_IMPORTED_CONFIG_DEBUGFULL DEBUG) ENDIF (QT_${basename}_LIBRARY_DEBUG) -- cgit v1.2.1 From 4a956a832abbb1971d41375328bf71dad27a03f1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 Jan 2010 22:12:36 +0000 Subject: -fix two remaining compat. issues found by the cmake devs: -- the imported targets did not work with Qt installed as frameworks on OSX -- if a project exported its libraries, and these libraries depend on Qt libs, but the installed FooConfig.cmake files do not load FindQt4.cmake, this would result in unknown targets "Qt4::QtCore" etc. So now there is a switch to enable the imported targets explicitely (what we do for KDE) Alex svn path=/trunk/KDE/kdelibs/; revision=1076819 --- modules/FindKDE4Internal.cmake | 4 + modules/FindQt4.cmake | 166 +++++++++++++++++++++---------- modules/Qt4ConfigDependentSettings.cmake | 4 +- 3 files changed, 117 insertions(+), 57 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 569776a6..1ce3a7cb 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -337,6 +337,10 @@ if( ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) set(QT_MIN_VERSION "4.5.0") endif( ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) +# Tell FindQt4.cmake to point the QT_QTFOO_LIBRARY targets at the imported targets +# for the Qt libraries, so we get full handling of release and debug versions of the +# Qt libs and are flexible regarding the install location of Qt under Windows: +set(QT_USE_IMPORTED_TARGETS TRUE) #this line includes FindQt4.cmake, which searches the Qt library and headers # TODO: we should check here that all necessary modules of Qt have been found, e.g. QtDBus diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index c5fc6b06..0c392676 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -52,6 +52,18 @@ # QT_USE_PHONON # QT_USE_QTSCRIPTTOOLS # +# QT_USE_IMPORTED_TARGETS +# If this variable is set to TRUE, FindQt4.cmake will create imported +# library targets for the various Qt libraries and set the +# library variables like QT_QTCORE_LIBRARY to point at these imported +# targets instead of the library file on disk. This provides much better +# handling of the release and debug versions of the Qt libraries and is +# also always backwards compatible, except for the case that dependencies +# of libraries are exported, these will then also list the names of the +# imported targets as dependency and not the file location on disk. This +# is much more flexible, but requires that FindQt4.cmake is executed before +# such an exported dependency file is processed. +# # There are also some files that need processing by some Qt tools such as moc # and uic. Listed below are macros that may be used to process those files. # @@ -361,10 +373,10 @@ IF(QT_QT_LIBRARY) ENDIF(QT_QT_LIBRARY) -IF (QT4_QMAKE_FOUND AND Qt4ImportedTarget__QtCore) +IF (QT4_QMAKE_FOUND AND Qt4::QtCore) # Check already done in this cmake run, nothing more to do RETURN() -ENDIF (QT4_QMAKE_FOUND AND Qt4ImportedTarget__QtCore) +ENDIF (QT4_QMAKE_FOUND AND Qt4::QtCore) # check that QT_NO_DEBUG is defined for release configurations MACRO(QT_CHECK_FLAG_EXISTS FLAG VAR DOC) @@ -891,42 +903,86 @@ IF (QT4_QMAKE_FOUND) # ############################################ - MACRO (_QT4_ADJUST_LIB_VARS basename) - # The name of the imported targets, i.e. the prefix "Qt4ImportedTarget__" must not change, + # On OSX when Qt is found as framework, never use the imported targets for now, since + # in this case the handling of the framework directory currently does not work correctly. + IF(QT_USE_FRAMEWORKS) + SET(QT_USE_IMPORTED_TARGETS FALSE) + ENDIF(QT_USE_FRAMEWORKS) + + + MACRO (_QT4_ADJUST_LIB_VARS _camelCaseBasename) + + STRING(TOUPPER "${_camelCaseBasename}" basename) + + # The name of the imported targets, i.e. the prefix "Qt4::" must not change, # since it is stored in EXPORT-files as name of a required library. If the name would change # here, this would lead to the imported Qt4-library targets not being resolved by cmake anymore. IF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) - IF(NOT TARGET Qt4ImportedTarget__${basename}) - ADD_LIBRARY(Qt4ImportedTarget__${basename} SHARED IMPORTED ) - - IF(WIN32) - SET(_QT4_LIBRARY_PROPERTY_NAME IMPLIB) - ELSE(WIN32) - SET(_QT4_LIBRARY_PROPERTY_NAME LOCATION) - ENDIF(WIN32) + IF(NOT TARGET Qt4::${_camelCaseBasename}) + ADD_LIBRARY(Qt4::${_camelCaseBasename} UNKNOWN IMPORTED ) IF (QT_${basename}_LIBRARY_RELEASE) - SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) - SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_RELEASE "${QT_${basename}_LIBRARY_RELEASE}" ) + SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} PROPERTY IMPORTED_LOCATION_RELEASE "${QT_${basename}_LIBRARY_RELEASE}" ) ENDIF (QT_${basename}_LIBRARY_RELEASE) IF (QT_${basename}_LIBRARY_DEBUG) - SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) - SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY IMPORTED_${_QT4_LIBRARY_PROPERTY_NAME}_DEBUG "${QT_${basename}_LIBRARY_DEBUG}" ) - - SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY MAP_IMPORTED_CONFIG_PROFILE DEBUG) - SET_PROPERTY(TARGET Qt4ImportedTarget__${basename} PROPERTY MAP_IMPORTED_CONFIG_DEBUGFULL DEBUG) + SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} PROPERTY IMPORTED_LOCATION_DEBUG "${QT_${basename}_LIBRARY_DEBUG}" ) ENDIF (QT_${basename}_LIBRARY_DEBUG) + ENDIF(NOT TARGET Qt4::${_camelCaseBasename}) + + # If QT_USE_IMPORTED_TARGETS is enabled, the QT_QTFOO_LIBRARY variables are set to point at these + # imported targets. This works better in general, and is also in almost all cases fully + # backward compatible. The only issue is when a project A which had this enabled then exports its + # libraries via export or EXPORT_LIBRARY_DEPENDENCIES(). In this case the libraries from project + # A will depend on the imported Qt targets, and the names of these imported targets will be stored + # in the dependency files on disk. This means when a project B then uses project A, these imported + # targets must be created again, otherwise e.g. "Qt4__QtCore" will be interpreted as name of a + # library file on disk, and not as a target, and linking will fail: + IF(QT_USE_IMPORTED_TARGETS) + SET(QT_${basename}_LIBRARY Qt4::${_camelCaseBasename} ) + SET(QT_${basename}_LIBRARIES Qt4::${_camelCaseBasename} ) + ELSE(QT_USE_IMPORTED_TARGETS) + + # if the release- as well as the debug-version of the library have been found: + IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + # if the generator supports configuration types then set + # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value + IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + # if there are no configuration types and CMAKE_BUILD_TYPE has no value + # then just use the release libraries + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE} ) + ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) + SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE) + + # if only the release version was found, set the debug variable also to the release version + IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE}) + SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_RELEASE}) + ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG) + + # if only the debug version was found, set the release variable also to the debug version + IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) + SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG}) + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG}) + SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG}) + ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE) + + # put the value in the cache: + SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE STRING "The Qt ${basename} library" FORCE) + + ENDIF(QT_USE_IMPORTED_TARGETS) + +message(STATUS "QT_${basename}_LIBRARY: ${QT_${basename}_LIBRARY}") + + SET(QT_${basename}_FOUND 1) - SET(QT_${basename}_LIBRARY Qt4ImportedTarget__${basename} ) - SET(QT_${basename}_LIBRARIES Qt4ImportedTarget__${basename} ) - - IF (QT_${basename}_LIBRARY) - SET(QT_${basename}_FOUND 1) - ENDIF (QT_${basename}_LIBRARY) - - ENDIF(NOT TARGET Qt4ImportedTarget__${basename}) ENDIF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG) IF (QT_${basename}_INCLUDE_DIR) @@ -941,39 +997,39 @@ IF (QT4_QMAKE_FOUND) # Set QT_xyz_LIBRARY variable and add # library include path to QT_INCLUDES - _QT4_ADJUST_LIB_VARS(QTCORE) - _QT4_ADJUST_LIB_VARS(QTGUI) - _QT4_ADJUST_LIB_VARS(QT3SUPPORT) - _QT4_ADJUST_LIB_VARS(QTASSISTANT) - _QT4_ADJUST_LIB_VARS(QTASSISTANTCLIENT) - _QT4_ADJUST_LIB_VARS(QTCLUCENE) - _QT4_ADJUST_LIB_VARS(QTDBUS) - _QT4_ADJUST_LIB_VARS(QTDESIGNER) - _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS) - _QT4_ADJUST_LIB_VARS(QTHELP) - _QT4_ADJUST_LIB_VARS(QTMULTIMEDIA) - _QT4_ADJUST_LIB_VARS(QTNETWORK) - _QT4_ADJUST_LIB_VARS(QTNSPLUGIN) - _QT4_ADJUST_LIB_VARS(QTOPENGL) - _QT4_ADJUST_LIB_VARS(QTSCRIPT) - _QT4_ADJUST_LIB_VARS(QTSCRIPTTOOLS) - _QT4_ADJUST_LIB_VARS(QTSQL) - _QT4_ADJUST_LIB_VARS(QTSVG) - _QT4_ADJUST_LIB_VARS(QTTEST) - _QT4_ADJUST_LIB_VARS(QTUITOOLS) - _QT4_ADJUST_LIB_VARS(QTWEBKIT) - _QT4_ADJUST_LIB_VARS(QTXML) - _QT4_ADJUST_LIB_VARS(QTXMLPATTERNS) - _QT4_ADJUST_LIB_VARS(PHONON) + _QT4_ADJUST_LIB_VARS(QtCore) + _QT4_ADJUST_LIB_VARS(QtGui) + _QT4_ADJUST_LIB_VARS(Qt3Support) + _QT4_ADJUST_LIB_VARS(QtAssistant) + _QT4_ADJUST_LIB_VARS(QtAssistantClient) + _QT4_ADJUST_LIB_VARS(QtCLucene) + _QT4_ADJUST_LIB_VARS(QtDBus) + _QT4_ADJUST_LIB_VARS(QtDesigner) + _QT4_ADJUST_LIB_VARS(QtDesignerComponents) + _QT4_ADJUST_LIB_VARS(QtHelp) + _QT4_ADJUST_LIB_VARS(QtMultimedia) + _QT4_ADJUST_LIB_VARS(QtNetwork) + _QT4_ADJUST_LIB_VARS(QtNsPlugin) + _QT4_ADJUST_LIB_VARS(QtOpenGL) + _QT4_ADJUST_LIB_VARS(QtScript) + _QT4_ADJUST_LIB_VARS(QtScriptTools) + _QT4_ADJUST_LIB_VARS(QtSql) + _QT4_ADJUST_LIB_VARS(QtSvg) + _QT4_ADJUST_LIB_VARS(QtTest) + _QT4_ADJUST_LIB_VARS(QtUiTools) + _QT4_ADJUST_LIB_VARS(QtWebKit) + _QT4_ADJUST_LIB_VARS(QtXml) + _QT4_ADJUST_LIB_VARS(QtXmlPatterns) + _QT4_ADJUST_LIB_VARS(phonon) # platform dependent libraries IF(Q_WS_X11) - _QT4_ADJUST_LIB_VARS(QTMOTIF) + _QT4_ADJUST_LIB_VARS(QtMotif) ENDIF(Q_WS_X11) IF(WIN32) - _QT4_ADJUST_LIB_VARS(QTMAIN) - _QT4_ADJUST_LIB_VARS(QAXSERVER) - _QT4_ADJUST_LIB_VARS(QAXCONTAINER) + _QT4_ADJUST_LIB_VARS(qtmain) + _QT4_ADJUST_LIB_VARS(QAxServer) + _QT4_ADJUST_LIB_VARS(QAxContainer) ENDIF(WIN32) # If Qt is installed as a framework, we need to add QT_QTCORE_LIBRARY here (which diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake index f6062a74..d6fc2d44 100644 --- a/modules/Qt4ConfigDependentSettings.cmake +++ b/modules/Qt4ConfigDependentSettings.cmake @@ -57,9 +57,9 @@ ELSE(WIN32) # On other platforms, check file extension to know if its static IF(QT_QTCORE_LIBRARY_RELEASE) GET_FILENAME_COMPONENT(qtcore_lib_ext "${QT_QTCORE_LIBRARY_RELEASE}" EXT) - IF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX}) + IF("${qtcore_lib_ext}" STREQUAL "${CMAKE_STATIC_LIBRARY_SUFFIX}") SET(QT_IS_STATIC 1) - ENDIF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX}) + ENDIF("${qtcore_lib_ext}" STREQUAL "${CMAKE_STATIC_LIBRARY_SUFFIX}") ENDIF(QT_QTCORE_LIBRARY_RELEASE) IF(QT_QTCORE_LIBRARY_DEBUG) GET_FILENAME_COMPONENT(qtcore_lib_ext "${QT_QTCORE_LIBRARY_DEBUG}" EXT) -- cgit v1.2.1 From e80b89422e44436c4e68fee07973d270029e7878 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 18 Jan 2010 22:18:19 +0000 Subject: -comment debug output Alex svn path=/trunk/KDE/kdelibs/; revision=1076822 --- modules/FindQt4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0c392676..081e996e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -979,7 +979,7 @@ IF (QT4_QMAKE_FOUND) ENDIF(QT_USE_IMPORTED_TARGETS) -message(STATUS "QT_${basename}_LIBRARY: ${QT_${basename}_LIBRARY}") +#message(STATUS "QT_${basename}_LIBRARY: ${QT_${basename}_LIBRARY}") SET(QT_${basename}_FOUND 1) -- cgit v1.2.1 From 377a0187d5a3b5b9a104d3f14d790bcbe2c6c254 Mon Sep 17 00:00:00 2001 From: Patrick Spendrin Date: Wed, 20 Jan 2010 16:33:21 +0000 Subject: forward port fix svn path=/trunk/KDE/kdelibs/; revision=1077671 --- modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake b/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake index e28efd44..b775b424 100644 --- a/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake +++ b/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake @@ -44,11 +44,7 @@ FUNCTION(HANDLE_IMPORTED_TARGETS_IN_CMAKE_REQUIRED_LIBRARIES _RESULT) ENDIF ("${_CCSR_LOOP_COUNTER}" LESS 100) LIST(GET _importedConfigs 0 _firstImportedConfig) - IF(NOT WIN32) - GET_TARGET_PROPERTY(_firstImportedLocation ${_CURRENT_LIB} IMPORTED_LOCATION_${_firstImportedConfig}) - ELSE(NOT WIN32) - GET_TARGET_PROPERTY(_firstImportedLocation ${_CURRENT_LIB} IMPORTED_IMPLIB_${_firstImportedConfig}) - ENDIF(NOT WIN32) + GET_TARGET_PROPERTY(_firstImportedLocation ${_CURRENT_LIB} IMPORTED_LOCATION_${_firstImportedConfig}) GET_TARGET_PROPERTY(_linkInterfaceLibs ${_CURRENT_LIB} IMPORTED_LINK_INTERFACE_LIBRARIES_${_firstImportedConfig} ) LIST(APPEND _CCSR_NEW_REQ_LIBS ${_firstImportedLocation}) -- cgit v1.2.1 From ee9bd12e141953230b55ea5cac01567eaa421432 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Sun, 24 Jan 2010 18:10:27 +0000 Subject: CCMAIL: kde-packager@kde.org Fixing some stuff for macros in KAuth to make it behave correctly without Find* files. Also changing KAUTH_BACKEND to KDE4_AUTH_BACKEND_NAME for consistency. Please switch your -DKAUTH_BACKEND=... to -DKDE4_AUTH_BACKEND_NAME=..., if any, soon. I'm backporting this commit now. svn path=/trunk/KDE/kdelibs/; revision=1079648 --- modules/KDE4Macros.cmake | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 5a7b701c..0c31aea7 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1271,9 +1271,9 @@ endfunction(KDE4_INSTALL_AUTH_HELPER_FILES) # the install phase function(KDE4_INSTALL_AUTH_ACTIONS HELPER_ID ACTIONS_FILE) - if(APPLE) + if(KDE4_AUTH_BACKEND_NAME STREQUAL "APPLE") install(CODE "execute_process(COMMAND ${KDE4_KAUTH_POLICY_GEN_EXECUTABLE} ${ACTIONS_FILE} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})") - elseif(UNIX) + elseif(KDE4_AUTH_BACKEND_NAME STREQUAL "POLKITQT" OR KDE4_AUTH_BACKEND_NAME STREQUAL "POLKITQT-1") set(_output ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.policy) get_filename_component(_input ${ACTIONS_FILE} ABSOLUTE) @@ -1285,13 +1285,7 @@ function(KDE4_INSTALL_AUTH_ACTIONS HELPER_ID ACTIONS_FILE) DEPENDS ${_KDE4_KAUTH_POLICY_GEN_EXECUTABLE_DEP}) add_custom_target("actions for ${HELPER_ID}" ALL DEPENDS ${_output}) - if (NOT POLKITQT_FOUND) - macro_optional_find_package(PolkitQt) - endif (NOT POLKITQT_FOUND) - - if (POLKITQT_FOUND) - install(FILES ${_output} DESTINATION ${POLKITQT_POLICY_FILES_INSTALL_DIR}) - endif (POLKITQT_FOUND) + install(FILES ${_output} DESTINATION ${KDE4_AUTH_POLICY_FILES_INSTALL_DIR}) endif() endfunction(KDE4_INSTALL_AUTH_ACTIONS) -- cgit v1.2.1 From 6a003caaa6910f59abc239971bd8dbf95bb9adcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Wed, 3 Feb 2010 10:41:19 +0000 Subject: KDE4_SERIALIZE_TOOL - set to icerun (with icecream 0.9.5+) to serialize meinproc4 runs when doing large parallel builds. svn path=/trunk/KDE/kdelibs/; revision=1084602 --- modules/FindKDE4Internal.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 1ce3a7cb..94bb3775 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -123,6 +123,8 @@ # KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR - only present for CMake >= 2.6.3, defaults to TRUE # If enabled, the package should install its Config.cmake file to # lib/cmake// instead to lib//cmake +# KDE4_SERIALIZE_TOOL - wrapper to serialize potentially resource-intensive commands during +# parallel builds (set to 'icecc' when using icecream) # # It also adds the following macros and functions (from KDE4Macros.cmake) # KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui) @@ -626,6 +628,7 @@ endif(NOT PHONON_FOUND) option(KDE4_ENABLE_FINAL "Enable final all-in-one compilation") option(KDE4_BUILD_TESTS "Build the tests") option(KDE4_ENABLE_HTMLHANDBOOK "Create targets htmlhandbook for creating the html versions of the docbook docs") +set(KDE4_SERIALIZE_TOOL "" CACHE STRING "Tool to serialize resource-intensive commands in parallel builds") # if CMake 2.6.3 or above is used, provide an option which should be used by other KDE packages # whether to install a CMake FooConfig.cmake into lib/foo/cmake/ or /lib/cmake/foo/ @@ -665,6 +668,11 @@ if( KDE4_ENABLE_FINAL) add_definitions(-DKDE_USE_FINAL) endif(KDE4_ENABLE_FINAL) +if(KDE4_SERIALIZE_TOOL) + # parallel build with many meinproc invocations can consume a huge amount of memory + set(KDE4_MEINPROC_EXECUTABLE ${KDE4_SERIALIZE_TOOL} ${KDE4_MEINPROC_EXECUTABLE}) +endif(KDE4_SERIALIZE_TOOL) + # If we are building ! kdelibs, check where kdelibs are installed. # If they are installed in a directory which contains "lib64", we default to "64" for LIB_SUFFIX, # so the current project will by default also go into lib64. -- cgit v1.2.1 From e0686ebcf991fda497f42c9287a4c2d3008d3421 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 15 Feb 2010 19:30:56 +0000 Subject: 4.4 => 4.5 beware! this changes the so versioning svn path=/trunk/KDE/kdelibs/; revision=1090682 --- modules/FindKDE4Internal.cmake | 4 ++-- modules/KDE4Defaults.cmake | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 94bb3775..4b95a8bd 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1233,13 +1233,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.4 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.5 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find the KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.4 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.5 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find the KDE 4 core library") endif(KDE4_LIB_DIR) diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 82fa6044..04c0ae2c 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -25,11 +25,11 @@ set(CMAKE_COLOR_MAKEFILE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes # Use this version number for libraries which are at version n in KDE version n -set(GENERIC_LIB_VERSION "4.4.0") +set(GENERIC_LIB_VERSION "4.5.0") set(GENERIC_LIB_SOVERSION "4") # Use this version number for libraries which are already at version n+1 in KDE version n -set(KDE_NON_GENERIC_LIB_VERSION "5.4.0") +set(KDE_NON_GENERIC_LIB_VERSION "5.5.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar -- cgit v1.2.1 From 6ce823aac7fd4b485e06443470d4d8ceb979181a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20M=C3=A9nard?= Date: Tue, 16 Feb 2010 22:47:13 +0000 Subject: Add the support of QtDeclarative module in Qt 4.7. Green flag in kde-core-devel. svn path=/trunk/KDE/kdelibs/; revision=1091507 --- modules/FindQt4.cmake | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 081e996e..0fef4275 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -51,6 +51,7 @@ # QT_USE_QTXMLPATTERNS # QT_USE_PHONON # QT_USE_QTSCRIPTTOOLS +# QT_USE_QTDECLARATIVE # # QT_USE_IMPORTED_TARGETS # If this variable is set to TRUE, FindQt4.cmake will create imported @@ -198,6 +199,7 @@ # QT_QTXML_FOUND True if QtXml was found. # QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found. # QT_PHONON_FOUND True if phonon was found. +# QT_QTDECLARATIVE_FOUND True if QtDeclarative was found. # # QT_MAC_USE_COCOA For Mac OS X, its whether Cocoa or Carbon is used. # In general, this should not be used, but its useful @@ -247,7 +249,8 @@ # QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns" # QT_PHONON_INCLUDE_DIR Path to "include/phonon" # QT_QTSCRIPTTOOLS_INCLUDE_DIR Path to "include/QtScriptTools" -# +# QT_QTDECLARATIVE_INCLUDE_DIR Path to "include/QtDeclarative" +# # QT_BINARY_DIR Path to "bin" of Qt4 # QT_LIBRARY_DIR Path to "lib" of Qt4 # QT_PLUGINS_DIR Path to "plugins" for Qt4 @@ -313,6 +316,8 @@ # # The Phonon library: QT_PHONON_LIBRARY # +# The QtDeclarative library: QT_QTDECLARATIVE_LIBRARY +# # also defined, but NOT for general use are # QT_MOC_EXECUTABLE Where to find the moc tool. # QT_UIC_EXECUTABLE Where to find the uic tool. @@ -687,7 +692,7 @@ IF (QT4_QMAKE_FOUND) SET(QT_MODULES QtCore QtGui Qt3Support QtSvg QtScript QtTest QtUiTools QtHelp QtWebKit QtXmlPatterns QtNetwork QtMultimedia - QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools) + QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools QtDeclarative) IF(Q_WS_X11) SET(QT_MODULES ${QT_MODULES} QtMotif) @@ -1004,6 +1009,7 @@ IF (QT4_QMAKE_FOUND) _QT4_ADJUST_LIB_VARS(QtAssistantClient) _QT4_ADJUST_LIB_VARS(QtCLucene) _QT4_ADJUST_LIB_VARS(QtDBus) + _QT4_ADJUST_LIB_VARS(QtDeclarative) _QT4_ADJUST_LIB_VARS(QtDesigner) _QT4_ADJUST_LIB_VARS(QtDesignerComponents) _QT4_ADJUST_LIB_VARS(QtHelp) -- cgit v1.2.1 From 904b311924c97104b098329dc42ee2c67b3e3648 Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Wed, 17 Feb 2010 16:18:22 +0000 Subject: Committing the second part of a previous patch to KAuth (the static fake backends one) which I completely forgot. Sorry. svn path=/trunk/KDE/kdelibs/; revision=1091811 --- modules/KDE4Macros.cmake | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 0c31aea7..61757c89 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1244,22 +1244,23 @@ endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) # being automatically activated by the system bus. # *WARNING* You have to install the helper in ${LIBEXEC_INSTALL_DIR} to make sure everything will work. function(KDE4_INSTALL_AUTH_HELPER_FILES HELPER_TARGET HELPER_ID HELPER_USER) - - if (_kdeBootStrapping) - set(_stubFilesDir ${CMAKE_SOURCE_DIR}/kdecore/auth/backends/dbus/ ) - else (_kdeBootStrapping) - set(_stubFilesDir ${KDE4_DATA_INSTALL_DIR}/kauth/ ) - endif (_kdeBootStrapping) - - configure_file(${_stubFilesDir}/dbus_policy.stub - ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf - DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d/) - - configure_file(${_stubFilesDir}/dbus_service.stub - ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service - DESTINATION ${DBUS_SYSTEM_SERVICES_INSTALL_DIR}) + if(KAUTH_HELPER_BACKEND_NAME STREQUAL "DBUS") + if (_kdeBootStrapping) + set(_stubFilesDir ${CMAKE_SOURCE_DIR}/kdecore/auth/backends/dbus/ ) + else (_kdeBootStrapping) + set(_stubFilesDir ${KDE4_DATA_INSTALL_DIR}/kauth/ ) + endif (_kdeBootStrapping) + + configure_file(${_stubFilesDir}/dbus_policy.stub + ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.conf + DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d/) + + configure_file(${_stubFilesDir}/dbus_service.stub + ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service + DESTINATION ${DBUS_SYSTEM_SERVICES_INSTALL_DIR}) + endif(KAUTH_HELPER_BACKEND_NAME STREQUAL "DBUS") endfunction(KDE4_INSTALL_AUTH_HELPER_FILES) # This macro generates an action file, depending on the backend used, for applications using KAuth. @@ -1276,7 +1277,7 @@ function(KDE4_INSTALL_AUTH_ACTIONS HELPER_ID ACTIONS_FILE) elseif(KDE4_AUTH_BACKEND_NAME STREQUAL "POLKITQT" OR KDE4_AUTH_BACKEND_NAME STREQUAL "POLKITQT-1") set(_output ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.policy) get_filename_component(_input ${ACTIONS_FILE} ABSOLUTE) - + add_custom_command(OUTPUT ${_output} COMMAND ${KDE4_KAUTH_POLICY_GEN_EXECUTABLE} ${_input} > ${_output} MAIN_DEPENDENCY ${_input} -- cgit v1.2.1 From 84ccffd809dc71de314f21cb747d590d246be3ed Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Sat, 20 Feb 2010 20:35:30 +0000 Subject: Bring Cross compilation to kdelibs With these changes, I was able to cross-compile kdelibs for Maemo 5 using MADDE. See http://techbase.kde.org/Projects/KDE_on_Maemo/MADDE for more details. CCMAIL: kde-maemo@kde.org svn path=/trunk/KDE/kdelibs/; revision=1093415 --- modules/FindKDE4Internal.cmake | 4 ++-- modules/KDE4Macros.cmake | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4b95a8bd..a31a81d5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1159,7 +1159,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") endif (GCC_IS_NEWER_THAN_4_1) - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32 AND NOT CMAKE_CROSSCOMPILING) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") set (KDE4_C_FLAGS "-fvisibility=hidden") # check that Qt defines Q_DECL_EXPORT as __attribute__ ((visibility("default"))) @@ -1183,7 +1183,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (GCC_IS_NEWER_THAN_4_2) else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32 AND NOT CMAKE_CROSSCOMPILING) endif (CMAKE_COMPILER_IS_GNUCXX) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 61757c89..f58b658e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -106,6 +106,12 @@ macro (KDE4_ADD_KCFG_FILES _sources ) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}) endif(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}") + if (CMAKE_CROSSCOMPILING) + set(IMPORT_KCONFIG_COMPILER_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportKConfigCompilerExecutable.cmake" CACHE FILEPATH "Point it to the export file of kconfig_compiler from a native build") + include(${IMPORT_KCONFIG_COMPILER_EXECUTABLE}) + set(KDE4_KCFGC_EXECUTABLE kconfig_compiler) + endif (CMAKE_CROSSCOMPILING) + # the command for creating the source file from the kcfg file add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} COMMAND ${KDE4_KCFGC_EXECUTABLE} @@ -283,6 +289,13 @@ macro (KDE4_CREATE_HANDBOOK _docbook) endif (_kdeBootStrapping) file(GLOB _docs *.docbook) + + if (CMAKE_CROSSCOMPILING) + set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc4 from a native build") + include(${IMPORT_MEINPROC4_EXECUTABLE}) + set(KDE4_MEINPROC_EXECUTABLE meinproc4) + endif (CMAKE_CROSSCOMPILING) + add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} --cache ${_doc} ${_input} DEPENDS ${_docs} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} @@ -354,6 +367,12 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) set(_bootstrapOption) endif (_kdeBootStrapping) + if (CMAKE_CROSSCOMPILING) + set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc4 from a native build") + include(${IMPORT_MEINPROC4_EXECUTABLE}) + set(KDE4_MEINPROC_EXECUTABLE meinproc4) + endif (CMAKE_CROSSCOMPILING) + add_custom_command(OUTPUT ${_outdoc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} ${_input} DEPENDS ${_input} ${_KDE4_MEINPROC_EXECUTABLE_DEP} ${_ssheet} -- cgit v1.2.1 From f6af1a885240f67641b2f10ef9289d845fb1bbac Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Wed, 3 Mar 2010 19:57:51 +0000 Subject: Change the visibility checking test from try_run to try_compile to make it work when cross-compiling. svn path=/trunk/KDE/kdelibs/; revision=1098490 --- modules/FindKDE4Internal.cmake | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a31a81d5..c54cdc24 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1159,31 +1159,28 @@ if (CMAKE_COMPILER_IS_GNUCXX) string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}") endif (GCC_IS_NEWER_THAN_4_1) - if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32 AND NOT CMAKE_CROSSCOMPILING) + if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") set (KDE4_C_FLAGS "-fvisibility=hidden") # check that Qt defines Q_DECL_EXPORT as __attribute__ ((visibility("default"))) # if it doesn't and KDE compiles with hidden default visibiltiy plugins will break - set(_source "#include \n int main()\n {\n #ifdef QT_VISIBILITY_AVAILABLE \n return 0;\n #else \n return 1; \n #endif \n }\n") + set(_source "#include \n int main()\n {\n #ifndef QT_VISIBILITY_AVAILABLE \n #error QT_VISIBILITY_AVAILABLE is not available\n #endif \n }\n") set(_source_file ${CMAKE_BINARY_DIR}/CMakeTmp/check_qt_visibility.cpp) file(WRITE "${_source_file}" "${_source}") set(_include_dirs "-DINCLUDE_DIRECTORIES:STRING=${QT_INCLUDES}") - try_run(_run_result _compile_result ${CMAKE_BINARY_DIR} ${_source_file} CMAKE_FLAGS "${_include_dirs}" COMPILE_OUTPUT_VARIABLE _compile_output_var) + try_compile(_compile_result ${CMAKE_BINARY_DIR} ${_source_file} CMAKE_FLAGS "${_include_dirs}" COMPILE_OUTPUT_VARIABLE _compile_output_var) - if(NOT _compile_result) - message(FATAL_ERROR "Could not compile simple test program:\n ${_source}\n${_compile_output_var}") - endif(NOT _compile_result) - if(_run_result) + if(NOT _run_result) message(FATAL_ERROR "Qt compiled without support for -fvisibility=hidden. This will break plugins and linking of some applications. Please fix your Qt installation.") - endif(_run_result) + endif(NOT _run_result) if (GCC_IS_NEWER_THAN_4_2) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") endif (GCC_IS_NEWER_THAN_4_2) else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) set (__KDE_HAVE_GCC_VISIBILITY 0) - endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32 AND NOT CMAKE_CROSSCOMPILING) + endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) endif (CMAKE_COMPILER_IS_GNUCXX) -- cgit v1.2.1 From 62cc647662816eda6a59864b72531bb3371528de Mon Sep 17 00:00:00 2001 From: Andreas Hartmetz Date: Wed, 3 Mar 2010 22:32:44 +0000 Subject: Look at the correct variable to determine if a compile test succeeded. After try_compile(_compile_result, ...) do if(NOT _compile_result) instead of if(NOT _run_result). Looks like old code wasn't changed when it should. This fixes the build. CCMAIL: harry@kdevelop.org svn path=/trunk/KDE/kdelibs/; revision=1098559 --- modules/FindKDE4Internal.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c54cdc24..a551fb10 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -175,7 +175,7 @@ # are created. Under Windows this flag is also necessary to separate between applications # with GUI and without. On other UNIX systems this flag has no effect. # The option TEST is for internal use only. -# The option RUN_UNINSTALLED is ignored. It was necessary with KDE 4.0 and 4.1 +# The option RUN_UNINSTALLED is ignored. It was necessary with KDE 4.0 and 4.1 # if the executable had to be run from the build tree. Since KDE 4.2 all # executables can be always run uninstalled (the RPATH of executables which are not # yet installed points since then into the buildtree and is changed @@ -219,7 +219,7 @@ # KDE4_INSTALL_AUTH_ACTIONS( HELPER_ID ACTIONS_FILE ) # This macro generates an action file, depending on the backend used, for applications using KAuth. # It accepts the helper id (the DBUS name) and a file containing the actions (check kdelibs/kdecore/auth/example -# for file format). The macro will take care of generating the file according to the backend specified, +# for file format). The macro will take care of generating the file according to the backend specified, # and to install it in the right location. This (at the moment) means that on Linux (PolicyKit) a .policy # file will be generated and installed into the policykit action directory (usually /usr/share/PolicyKit/policy/), # and on Mac (Authorization Services) will be added to the system action registry using the native MacOS API during @@ -340,7 +340,7 @@ if( ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) endif( ${QT_MIN_VERSION} VERSION_LESS "4.5.0" ) # Tell FindQt4.cmake to point the QT_QTFOO_LIBRARY targets at the imported targets -# for the Qt libraries, so we get full handling of release and debug versions of the +# for the Qt libraries, so we get full handling of release and debug versions of the # Qt libs and are flexible regarding the install location of Qt under Windows: set(QT_USE_IMPORTED_TARGETS TRUE) @@ -907,7 +907,7 @@ if (WIN32) # windows, microsoft compiler if(MSVC) set( _KDE4_PLATFORM_DEFINITIONS -DKDE_FULL_TEMPLATE_EXPORT_INSTANTIATION -DWIN32_LEAN_AND_MEAN ) - + # C4250: 'class1' : inherits 'class2::member' via dominance set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4250" ) # C4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2' @@ -1066,7 +1066,7 @@ if (MSVC) set (KDE4_ENABLE_EXCEPTIONS -EHsc) # Qt disables the native wchar_t type, do it too to avoid linking issues - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Zc:wchar_t-" ) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Zc:wchar_t-" ) # make sure that no header adds libcmt by default using #pragma comment(lib, "libcmt.lib") as done by mfc/afx.h kde_check_flag_exists("/NODEFAULTLIB:libcmt /DEFAULTLIB:msvcrt" CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "Release with Debug Info") @@ -1171,9 +1171,9 @@ if (CMAKE_COMPILER_IS_GNUCXX) try_compile(_compile_result ${CMAKE_BINARY_DIR} ${_source_file} CMAKE_FLAGS "${_include_dirs}" COMPILE_OUTPUT_VARIABLE _compile_output_var) - if(NOT _run_result) + if(NOT _compile_result) message(FATAL_ERROR "Qt compiled without support for -fvisibility=hidden. This will break plugins and linking of some applications. Please fix your Qt installation.") - endif(NOT _run_result) + endif(NOT _compile_result) if (GCC_IS_NEWER_THAN_4_2) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") -- cgit v1.2.1 From f886f4b1d9075fc5098484e63a332be8d45ccbec Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Fri, 5 Mar 2010 01:33:14 +0000 Subject: reduce few columns, so it gives less issues in manpages generation svn path=/trunk/KDE/kdelibs/; revision=1099156 --- modules/FindBlitz.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindBlitz.cmake b/modules/FindBlitz.cmake index a3abd6b0..f4f077de 100644 --- a/modules/FindBlitz.cmake +++ b/modules/FindBlitz.cmake @@ -1,6 +1,6 @@ -################################################################ -########## DEPRECATED, use FindQImageBlitz instead ############# -################################################################ +########################################################### +######### DEPRECATED, use FindQImageBlitz instead ######### +########################################################### # - Try to find blitz lib # Once done this will define # -- cgit v1.2.1 From 52480798b223873f585937940a0083ca463ad47a Mon Sep 17 00:00:00 2001 From: Jonathan Marten Date: Fri, 5 Mar 2010 08:41:10 +0000 Subject: Allow macro_optional_add_subdirectory to work with CMake 2.8 in the case where a directory exists but is empty, by checking that it contains a CMakeLists.txt file before adding it. OK from kde-buildsystem list at http://lists.kde.org/?t=126772053200003&r=1&w=2 svn path=/trunk/KDE/kdelibs/; revision=1099212 --- modules/MacroOptionalAddSubdirectory.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalAddSubdirectory.cmake b/modules/MacroOptionalAddSubdirectory.cmake index 5de49f95..ec0ea30a 100644 --- a/modules/MacroOptionalAddSubdirectory.cmake +++ b/modules/MacroOptionalAddSubdirectory.cmake @@ -24,7 +24,7 @@ MACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY _dir ) GET_FILENAME_COMPONENT(_fullPath ${_dir} ABSOLUTE) - IF(EXISTS ${_fullPath}) + IF(EXISTS ${_fullPath}/CMakeLists.txt) IF(DISABLE_ALL_OPTIONAL_SUBDIRECTORIES) SET(_DEFAULT_OPTION_VALUE FALSE) ELSE(DISABLE_ALL_OPTIONAL_SUBDIRECTORIES) @@ -37,5 +37,5 @@ MACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY _dir ) IF(BUILD_${_dir}) ADD_SUBDIRECTORY(${_dir}) ENDIF(BUILD_${_dir}) - ENDIF(EXISTS ${_fullPath}) + ENDIF(EXISTS ${_fullPath}/CMakeLists.txt) ENDMACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY) -- cgit v1.2.1 From 6ec201b2310c9d1f8dd947d2c90ff782568f0cd7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 7 Mar 2010 22:23:07 +0000 Subject: -fix build on OSX with OpenGL (don't turn "-framework foo" into "-framework;-lfoo" Alex svn path=/trunk/KDE/kdelibs/; revision=1100585 --- modules/Qt4ConfigDependentSettings.cmake | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake index d6fc2d44..b5462e7b 100644 --- a/modules/Qt4ConfigDependentSettings.cmake +++ b/modules/Qt4ConfigDependentSettings.cmake @@ -77,7 +77,18 @@ ENDIF(WIN32 AND NOT QT_IS_STATIC) # QtOpenGL dependencies QT_QUERY_QMAKE(QMAKE_LIBS_OPENGL "QMAKE_LIBS_OPENGL") -SEPARATE_ARGUMENTS(QMAKE_LIBS_OPENGL) +IF(Q_WS_MAC) +# On the Mac OpenGL is probably frameworks and QMAKE_LIBS_OPENGL can be e.g. "-framework OpenGL -framework AGL". +# The separate_arguments() call in the other branch makes "-framework;-OpenGL;-framework;-lAGL" appear in the +# linker command. So we need to protect the "-framework foo" as non-separatable strings. +# We do this by replacing the space after "-framework" with an underscore, then calling separate_arguments(), +# and then we replace the underscores again with spaces. So we get proper linker commands. Alex + STRING(REGEX REPLACE "-framework +" "-framework_" QMAKE_LIBS_OPENGL "${QMAKE_LIBS_OPENGL}") + SEPARATE_ARGUMENTS(QMAKE_LIBS_OPENGL) + STRING(REGEX REPLACE "-framework_" "-framework " QMAKE_LIBS_OPENGL "${QMAKE_LIBS_OPENGL}") +ELSE(Q_WS_MAC) + SEPARATE_ARGUMENTS(QMAKE_LIBS_OPENGL) +ENDIF(Q_WS_MAC) SET (QT_QTOPENGL_LIB_DEPENDENCIES ${QT_QTOPENGL_LIB_DEPENDENCIES} ${QMAKE_LIBS_OPENGL}) -- cgit v1.2.1 From 35342e6c7ad882f14e12bf96ce2f6e39e82e5aa1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Mar 2010 13:56:28 +0000 Subject: -simplify FindPhonon.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=1103155 --- modules/FindPhonon.cmake | 55 ++++++++++-------------------------------------- 1 file changed, 11 insertions(+), 44 deletions(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index daa457ad..e24ffdce 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -22,50 +22,17 @@ macro(_phonon_find_version) message(STATUS "Phonon Version: ${PHONON_VERSION}") endmacro(_phonon_find_version) -if(PHONON_FOUND) - # Already found, nothing more to do except figuring out the version - _phonon_find_version() -else(PHONON_FOUND) - if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) - set(PHONON_FIND_QUIETLY TRUE) - endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) - - # As discussed on kde-buildsystem: first look at CMAKE_PREFIX_PATH, then at the suggested PATHS (kde4 install dir) - find_library(PHONON_LIBRARY NAMES phonon PATHS ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) - # then at the default system locations (CMAKE_SYSTEM_PREFIX_PATH, i.e. /usr etc.) - find_library(PHONON_LIBRARY NAMES phonon) - - find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) - find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h) +# the dirs listed with HINTS are searched before the default sets of dirs +find_library(PHONON_LIBRARY NAMES phonon HINTS ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) +find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h HINTS ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) - if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) - set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) - set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) - set(PHONON_FOUND TRUE) - _phonon_find_version() - else(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) - set(PHONON_FOUND FALSE) - endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) - - if(PHONON_FOUND) - if(NOT PHONON_FIND_QUIETLY) - message(STATUS "Found Phonon: ${PHONON_LIBRARY}") - message(STATUS "Found Phonon Includes: ${PHONON_INCLUDES}") - endif(NOT PHONON_FIND_QUIETLY) - else(PHONON_FOUND) - if(Phonon_FIND_REQUIRED) - if(NOT PHONON_INCLUDE_DIR) - message(STATUS "Phonon includes NOT found!") - endif(NOT PHONON_INCLUDE_DIR) - if(NOT PHONON_LIBRARY) - message(STATUS "Phonon library NOT found!") - endif(NOT PHONON_LIBRARY) - message(FATAL_ERROR "Phonon library or includes NOT found!") - else(Phonon_FIND_REQUIRED) - message(STATUS "Unable to find Phonon") - endif(Phonon_FIND_REQUIRED) - endif(PHONON_FOUND) +if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) + set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) + set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}) + _phonon_find_version() +endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Phonon DEFAULT_MSG PHONON_INCLUDE_DIR PHONON_LIBRARY) - mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY PHONON_INCLUDES) -endif(PHONON_FOUND) +mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY) -- cgit v1.2.1 From 575ac8acb9ae2ea0b6112057487002be02330557 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Mar 2010 15:31:41 +0000 Subject: -add a copy of FindPackageHandleStandardArgs, which adds checking the version numbers, so you get this automatically in all modules which use find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1103184 --- modules/CMakeLists.txt | 3 + modules/FindPackageHandleStandardArgs.cmake | 141 ++++++++++++++++++++++++++++ modules/FindPhonon.cmake | 1 - 3 files changed, 144 insertions(+), 1 deletion(-) create mode 100644 modules/FindPackageHandleStandardArgs.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 587a289f..fad2de0e 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -10,6 +10,9 @@ set(cmakeFilesDontInstall FindPolkitQt.cmake FindPolkitQt-1.cmake) +# remove once we depend on a newer cmake version: +# FindPackageHandleStandardArgs (2.8.2) + # Explicitely list all files which will be installed. # We don't use a GLOB anymore so we can have also cmake files here # which are used inside kdelibs, but which don't have to be installed (and diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake new file mode 100644 index 00000000..9e89d2b0 --- /dev/null +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -0,0 +1,141 @@ +# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME (DEFAULT_MSG|"Custom failure message") VAR1 ... ) +# This macro is intended to be used in FindXXX.cmake modules files. +# It handles the REQUIRED and QUIET argument to FIND_PACKAGE() and +# it also sets the _FOUND variable. +# The package is considered found if all variables listed are TRUE. +# The version-argument of FIND_PACKAGE() is also handled. +# For checking whether the version is ok, this macro compares the +# variable _VERSION with the specified version. +# Example: +# +# FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) +# +# LibXml2 is considered to be found, if both LIBXML2_LIBRARIES and +# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE. +# If it is not found and REQUIRED was used, it fails with FATAL_ERROR, +# independent whether QUIET was used or not. +# If it is found, the location is reported using the VAR1 argument, so +# here a message "Found LibXml2: /usr/lib/libxml2.so" will be printed out. +# If the second argument is DEFAULT_MSG, the message in the failure case will +# be "Could NOT find LibXml2", if you don't like this message you can specify +# your own custom failure message there. + +#============================================================================= +# Copyright 2007-2009 Kitware, Inc. +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distributed this file outside of CMake, substitute the full +# License text for the above reference.) + +INCLUDE(FindPackageMessage) +FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) + + IF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") + SET(_FAIL_MESSAGE "Could NOT find ${_NAME}") + ELSE("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") + SET(_FAIL_MESSAGE "${_FAIL_MSG}") + ENDIF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") + + STRING(TOUPPER ${_NAME} _NAME_UPPER) + + # collect all variables which were not found, so they can be printed, so the + # user knows better what went wrong (#6375) + SET(MISSING_VARS "") + SET(DETAILS "") + SET(${_NAME_UPPER}_FOUND TRUE) + IF(NOT ${_VAR1}) + SET(${_NAME_UPPER}_FOUND FALSE) + SET(MISSING_VARS " ${_VAR1}") + ELSE(NOT ${_VAR1}) + SET(DETAILS "${DETAILS}[${${_VAR1}}]") + ENDIF(NOT ${_VAR1}) + + # check if all passed variables are valid + FOREACH(_CURRENT_VAR ${ARGN}) + IF(NOT ${_CURRENT_VAR}) + SET(${_NAME_UPPER}_FOUND FALSE) + SET(MISSING_VARS "${MISSING_VARS} ${_CURRENT_VAR}") + ELSE(NOT ${_CURRENT_VAR}) + SET(DETAILS "${DETAILS}[${${_CURRENT_VAR}}]") + ENDIF(NOT ${_CURRENT_VAR}) + ENDFOREACH(_CURRENT_VAR) + + # version handling: + SET(VERSION_MSG "") + SET(VERSION_OK TRUE) + IF (${_NAME}_FIND_VERSION) + + # if the package was found, check for the version using _FIND_VERSION + IF (${_NAME_UPPER}_FOUND) + SET(VERSION ${${_NAME_UPPER}_VERSION}) + + IF(${_NAME}_FIND_VERSION_EXACT) # exact version required + IF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") + SET(VERSION_MSG " Found version \"${VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"") + SET(VERSION_OK FALSE) + ELSE (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") + SET(VERSION_MSG " (found exact version \"${VERSION}\")") + ENDIF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") + + ELSE(${_NAME}_FIND_VERSION_EXACT) # minimum version specified: + IF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") + SET(VERSION_MSG " Found version \"${VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"") + SET(VERSION_OK FALSE) + ELSE ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") + SET(VERSION_MSG " (found version \"${VERSION}\", required is \"${${_NAME}_FIND_VERSION}\")") + ENDIF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") + ENDIF(${_NAME}_FIND_VERSION_EXACT) + + # if the package was not found, but some a version was given, add that to the output: + ELSE (${_NAME_UPPER}_FOUND) + IF(${_NAME}_FIND_VERSION_EXACT) + SET(VERSION_MSG " (Required is exact version \"${${_NAME}_FIND_VERSION}\")") + ELSE(${_NAME}_FIND_VERSION_EXACT) + SET(VERSION_MSG " (Required is at least version \"${${_NAME}_FIND_VERSION}\")") + ENDIF(${_NAME}_FIND_VERSION_EXACT) + ENDIF (${_NAME_UPPER}_FOUND) + ENDIF (${_NAME}_FIND_VERSION) + + IF(VERSION_OK) + SET(DETAILS "${DETAILS}[v${${VERSION}}]") + ELSE(VERSION_OK) + SET(${_NAME_UPPER}_FOUND FALSE) + ENDIF(VERSION_OK) + + + # print the result: + IF (${_NAME_UPPER}_FOUND) + FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_VAR1}} ${VERSION_MSG}" "${DETAILS}") + ELSE (${_NAME_UPPER}_FOUND) + IF(NOT VERSION_OK) + + IF (${_NAME}_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "${_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_VAR1}})") + ELSE (${_NAME}_FIND_REQUIRED) + IF (NOT ${_NAME}_FIND_QUIETLY) + MESSAGE(STATUS "${_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_VAR1}})") + ENDIF (NOT ${_NAME}_FIND_QUIETLY) + ENDIF (${_NAME}_FIND_REQUIRED) + + ELSE(NOT VERSION_OK) + + IF (${_NAME}_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "${_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}") + ELSE (${_NAME}_FIND_REQUIRED) + IF (NOT ${_NAME}_FIND_QUIETLY) + MESSAGE(STATUS "${_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}") + ENDIF (NOT ${_NAME}_FIND_QUIETLY) + ENDIF (${_NAME}_FIND_REQUIRED) + ENDIF(NOT VERSION_OK) + + ENDIF (${_NAME_UPPER}_FOUND) + + SET(${_NAME_UPPER}_FOUND ${${_NAME_UPPER}_FOUND} PARENT_SCOPE) + +ENDFUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS) diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index e24ffdce..85953cca 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -19,7 +19,6 @@ macro(_phonon_find_version) file(READ ${_phonon_namespace_header_file} _phonon_header LIMIT 5000 OFFSET 1000) string(REGEX MATCH "define PHONON_VERSION_STR \"(4\\.[0-9]+\\.[0-9a-z]+)\"" _phonon_version_match "${_phonon_header}") set(PHONON_VERSION "${CMAKE_MATCH_1}") - message(STATUS "Phonon Version: ${PHONON_VERSION}") endmacro(_phonon_find_version) # the dirs listed with HINTS are searched before the default sets of dirs -- cgit v1.2.1 From cda3fe9d15e15969114efc7393afb3af7c780f0c Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Mar 2010 15:39:00 +0000 Subject: -install the copy of FindPackageHandleStandardArgs.cmake Alex svn path=/trunk/KDE/kdelibs/; revision=1103191 --- modules/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index fad2de0e..8dad8598 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -99,6 +99,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindPyQt4.cmake Qt4Macros.cmake Qt4ConfigDependentSettings.cmake + FindPackageHandleStandardArgs.cmake FindPythonLibrary.cmake FindQCA2.cmake FindQImageBlitz.cmake -- cgit v1.2.1 From bebe865fcb9da07d5dee4ab55c622ba48df9390f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Mar 2010 17:46:33 +0000 Subject: -unbreak: when using HINTS, NO_DEFAULT_PATHS etc. should not be used anymore... Alex svn path=/trunk/KDE/kdelibs/; revision=1103254 --- modules/FindPhonon.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPhonon.cmake b/modules/FindPhonon.cmake index 85953cca..cd9e5cb4 100644 --- a/modules/FindPhonon.cmake +++ b/modules/FindPhonon.cmake @@ -22,8 +22,8 @@ macro(_phonon_find_version) endmacro(_phonon_find_version) # the dirs listed with HINTS are searched before the default sets of dirs -find_library(PHONON_LIBRARY NAMES phonon HINTS ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) -find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h HINTS ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) +find_library(PHONON_LIBRARY NAMES phonon HINTS ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR}) +find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h HINTS ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} ${QT_LIBRARY_DIR}) if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY) set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY}) -- cgit v1.2.1 From 90f665ade5bd93e524499018c818de52cac46cc1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Mar 2010 22:22:30 +0000 Subject: -fix breakage, ignore those modules which don't set a FOO_VERSION variable for now Alex svn path=/trunk/KDE/kdelibs/; revision=1103360 --- modules/FindPackageHandleStandardArgs.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index 9e89d2b0..c4882386 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -74,6 +74,8 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) # if the package was found, check for the version using _FIND_VERSION IF (${_NAME_UPPER}_FOUND) SET(VERSION ${${_NAME_UPPER}_VERSION}) + + IF(VERSION) #hmm what do we do if the module in question doesn't set FOO_VERSION but something else ?... Ignore it for now IF(${_NAME}_FIND_VERSION_EXACT) # exact version required IF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") @@ -92,6 +94,8 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) ENDIF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") ENDIF(${_NAME}_FIND_VERSION_EXACT) + ENDIF(VERSION) + # if the package was not found, but some a version was given, add that to the output: ELSE (${_NAME_UPPER}_FOUND) IF(${_NAME}_FIND_VERSION_EXACT) -- cgit v1.2.1 From 9fb1aa3bf55fcbc5024538889caef9649aae9520 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 14 Mar 2010 22:44:54 +0000 Subject: -add warning message if the version is unknown but a minimum version was specified Alex svn path=/trunk/KDE/kdelibs/; revision=1103373 --- modules/FindPackageHandleStandardArgs.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index c4882386..8e99e88b 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -94,6 +94,8 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) ENDIF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") ENDIF(${_NAME}_FIND_VERSION_EXACT) + ELSE(VERSION) + SET(VERSION_MSG " (WARNING: Required version is \"${${_NAME}_FIND_VERSION}\", but version of ${_NAME} is unknown)") ENDIF(VERSION) # if the package was not found, but some a version was given, add that to the output: -- cgit v1.2.1 From f6e82e2a458de0aefbde9499f042127e9368e3ec Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Fri, 19 Mar 2010 18:05:31 +0000 Subject: -all lower-case Alex svn path=/trunk/KDE/kdelibs/; revision=1105272 --- modules/MacroOptionalDependPackage.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/MacroOptionalDependPackage.cmake b/modules/MacroOptionalDependPackage.cmake index bc7b671b..2ea79960 100644 --- a/modules/MacroOptionalDependPackage.cmake +++ b/modules/MacroOptionalDependPackage.cmake @@ -9,14 +9,14 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -MACRO (MACRO_OPTIONAL_DEPEND_PACKAGE _name _module_needed) +macro (MACRO_OPTIONAL_DEPEND_PACKAGE _name _module_needed) set(_packagename Find${_name}.cmake) find_file(_PACKAGE_DEPEND_FOUND ${_packagename} PATHS ${CMAKE_MODULE_PATH} ) if(NOT _PACKAGE_DEPEND_FOUND) - MESSAGE(STATUS "optional cmake package ${_packagename} (for ${_module_needed}) was not found.") + message(STATUS "optional cmake package ${_packagename} (for ${_module_needed}) was not found.") set(DEPEND_PACKAGE_${_name} FALSE) else(NOT _PACKAGE_DEPEND_FOUND) set(DEPEND_PACKAGE_${_name} TRUE) endif(NOT _PACKAGE_DEPEND_FOUND) -ENDMACRO (MACRO_OPTIONAL_DEPEND_PACKAGE) +endmacro (MACRO_OPTIONAL_DEPEND_PACKAGE) -- cgit v1.2.1 From 1099e03d880ac74509d55fbe0b3ffa4e948a1081 Mon Sep 17 00:00:00 2001 From: Modestas Vainius Date: Sun, 21 Mar 2010 01:24:54 +0000 Subject: Fix typo in KDE4Macros.cmake::KDE4_INSTALL_AUTH_HELPER_FILES. The name of the variable is KDE4_AUTH_HELPER_BACKEND_NAME rather than KAUTH_HELPER_BACKEND_NAME. CCMAIL: drf54321@gmail.com svn path=/trunk/KDE/kdelibs/; revision=1105719 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index f58b658e..a64d20a9 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1263,7 +1263,7 @@ endmacro (KDE4_HANDLE_RPATH_FOR_LIBRARY) # being automatically activated by the system bus. # *WARNING* You have to install the helper in ${LIBEXEC_INSTALL_DIR} to make sure everything will work. function(KDE4_INSTALL_AUTH_HELPER_FILES HELPER_TARGET HELPER_ID HELPER_USER) - if(KAUTH_HELPER_BACKEND_NAME STREQUAL "DBUS") + if(KDE4_AUTH_HELPER_BACKEND_NAME STREQUAL "DBUS") if (_kdeBootStrapping) set(_stubFilesDir ${CMAKE_SOURCE_DIR}/kdecore/auth/backends/dbus/ ) else (_kdeBootStrapping) @@ -1279,7 +1279,7 @@ function(KDE4_INSTALL_AUTH_HELPER_FILES HELPER_TARGET HELPER_ID HELPER_USER) ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.service DESTINATION ${DBUS_SYSTEM_SERVICES_INSTALL_DIR}) - endif(KAUTH_HELPER_BACKEND_NAME STREQUAL "DBUS") + endif(KDE4_AUTH_HELPER_BACKEND_NAME STREQUAL "DBUS") endfunction(KDE4_INSTALL_AUTH_HELPER_FILES) # This macro generates an action file, depending on the backend used, for applications using KAuth. -- cgit v1.2.1 From 77a069c2008d0637c2c451ac52e80ebe4a13a0a5 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 22 Mar 2010 21:44:44 +0000 Subject: -putting quotes around the input for the string() functions never hurts Alex svn path=/trunk/KDE/kdelibs/; revision=1106449 --- modules/FindAlsa.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAlsa.cmake b/modules/FindAlsa.cmake index 23003b39..1bad8126 100644 --- a/modules/FindAlsa.cmake +++ b/modules/FindAlsa.cmake @@ -38,7 +38,7 @@ macro(ALSA_VERSION_STRING _result) # check for version in alsa/version.h if(ALSA_INCLUDES) file(READ "${ALSA_INCLUDES}/alsa/version.h" _ALSA_VERSION_CONTENT) - string(REGEX REPLACE ".*SND_LIB_VERSION_STR.*\"(.*)\".*" "\\1" ${_result} ${_ALSA_VERSION_CONTENT}) + string(REGEX REPLACE ".*SND_LIB_VERSION_STR.*\"(.*)\".*" "\\1" ${_result} "${_ALSA_VERSION_CONTENT}") else(ALSA_INCLUDES) message(STATUS "ALSA version not known. ALSA output will probably not work correctly.") endif(ALSA_INCLUDES) -- cgit v1.2.1 From 769755b4f2a34e94df38dc2d6fbfcb5e8625e5be Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 25 Mar 2010 23:11:35 +0000 Subject: -some work on the documentation Alex svn path=/trunk/KDE/kdelibs/; revision=1107538 --- modules/FindKDE4Internal.cmake | 20 ++++++++++++++++++-- modules/KDE4Macros.cmake | 13 +------------ 2 files changed, 19 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index a551fb10..16abe769 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -196,6 +196,19 @@ # KDESRCDIR is set to the source directory of the test, this can be used with # KGlobal::dirs()->addResourceDir( "data", KDESRCDIR ) # +# +# KDE4_ADD_APP_ICON (SRCS_VAR pattern) +# adds an application icon to target source list. +# Mac OSX notes : the application icon is added to a Mac OS X bundle so that Finder and friends show the right thing. +# Win32 notes: the application icon(s) are compiled into the application +# There is some workaround in kde4_add_kdeinit_executable to make it possible for those applications as well. +# Parameters: +# SRCS_VAR - specifies the list of source files; this has to end in _SRCS or _KDEINIT_SRCS +# (see the replace stuff below) +# pattern - regular expression for searching application icons +# Example: KDE4_ADD_APP_ICON( myapp_SRCS "pics/cr*-myapp.png") +# Example: KDE4_ADD_APP_ICON( myapp_KDEINIT_SRCS "icons/oxygen/*/apps/myapp.png") +# # KDE4_UPDATE_ICONCACHE() # Notifies the icon cache that new icons have been installed by updating # mtime of ${ICON_INSTALL_DIR}/hicolor directory. @@ -240,9 +253,9 @@ # Debug, Release, RelWithDebInfo, Profile and Debugfull: # # Release -# optimised for speed, qDebug/kDebug turned off, no debug symbols +# optimised for speed, qDebug/kDebug turned off, no debug symbols, no asserts # RelWithDebInfo (Release with debug info) -# optimised for speed, debugging symbols on (-g) +# similar to Release, optimised for speed, but with debugging symbols on (-g) # Debug # optimised but debuggable, debugging on (-g) # (-fno-reorder-blocks -fno-schedule-insns -fno-inline) @@ -251,11 +264,14 @@ # Profile # DebugFull + -ftest-coverage -fprofile-arcs # +# +# The default buildtype is RelWithDebInfo. # It is expected that the "Debug" build type be still debuggable with gdb # without going all over the place, but still produce better performance. # It's also important to note that gcc cannot detect all warning conditions # unless the optimiser is active. # +# # This module allows to depend on a particular minimum version of kdelibs. # To acomplish that one should use the apropriate cmake syntax for # find_package. For example to depend on kdelibs >= 4.1.0 one should use diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a64d20a9..a2cba7c2 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1122,18 +1122,7 @@ macro (KDE4_ADD_WIN32_APP_ICON appsources) endmacro (KDE4_ADD_WIN32_APP_ICON) # adds application icon to target source list - -# this macro adds an application icon to the specified target -# mac osx notes : the application icon is added to a Mac OS X bundle so that Finder and friends show the right thing. -# win32 notes: the application icon(s) are compiled into the application -# there is some workaround in kde4_add_kdeinit_executable to make it possible for those applications as well -# parameters: -# 'appsources' - specifies the list of source files; this has to end in _SRCS or _KDEINIT_SRCS -# (see the replace stuff below) -# 'pattern' - regular expression for searching application icons -# example: KDE4_ADD_APP_ICON( myapp_SRCS "pics/cr*-myapp.png") -# example: KDE4_ADD_APP_ICON( myapp_KDEINIT_SRCS "icons/oxygen/*/apps/myapp.png") - +# for detailled documentation see the top of FindKDE4Internal.cmake macro (KDE4_ADD_APP_ICON appsources pattern) string(REPLACE _KDEINIT_SRCS "" target ${appsources}) if(${appsources} STREQUAL ${target}) -- cgit v1.2.1 From 793fb9dc37054d6278a3882344b7a97c1262e084 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 25 Mar 2010 23:15:07 +0000 Subject: - Phonon 4.3.80 or newer is required Alex svn path=/trunk/KDE/kdelibs/; revision=1107539 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 16abe769..6a5c5b12 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -628,7 +628,7 @@ endif(_kdeBootStrapping OR TARGET ${KDE4_TARGET_PREFIX}nepomuk) # which helps with finding the phonon installed as part of kdesupport: # only make Phonon REQUIRED if KDE4 itself is REQUIRED -find_package(Phonon ${_REQ_STRING_KDE4}) +find_package(Phonon 4.3.80 ${_REQ_STRING_KDE4}) set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) set(KDE4_PHONON_LIBS ${PHONON_LIBS}) set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) -- cgit v1.2.1 From 0880baff9889f1cc0d23ea04202fbace9d1f3587 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6kcen=20Eraslan?= Date: Tue, 6 Apr 2010 11:39:44 +0000 Subject: Define variable above lines which use that variable. svn path=/trunk/KDE/kdelibs/; revision=1111662 --- modules/FindPolkitQt.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index 84a2b8b5..e46f286d 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -94,6 +94,8 @@ mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_VERSION_FILE ) +set(POLKITQT_POLICY_FILES_INSTALL_DIR share/PolicyKit/policy/) + if(POLKITQT_FOUND) get_filename_component(_POLKITQT_INSTALL_PREFIX "${POLKITQT_CORE_LIBRARY}" PATH) get_filename_component(_POLKITQT_INSTALL_PREFIX "${_POLKITQT_INSTALL_PREFIX}" PATH) @@ -103,4 +105,3 @@ if(POLKITQT_FOUND) endif (NOT _POLKITQT_INSTALL_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) endif(POLKITQT_FOUND) -set(POLKITQT_POLICY_FILES_INSTALL_DIR share/PolicyKit/policy/) -- cgit v1.2.1 From 44c4e967802b0f4f5b918fa247c3b62dd9f803eb Mon Sep 17 00:00:00 2001 From: "Friedrich W. H. Kossebau" Date: Fri, 9 Apr 2010 18:32:46 +0000 Subject: fixed: the pkg-config name is libattica svn path=/trunk/KDE/kdelibs/; revision=1113028 --- modules/FindLibAttica.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindLibAttica.cmake b/modules/FindLibAttica.cmake index b9b0610a..f7652fba 100644 --- a/modules/FindLibAttica.cmake +++ b/modules/FindLibAttica.cmake @@ -18,7 +18,7 @@ IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls FIND_PACKAGE(PkgConfig) - PKG_CHECK_MODULES(PC_LIBATTICA QUIET libattica-0.1) + PKG_CHECK_MODULES(PC_LIBATTICA QUIET libattica) SET(LIBATTICA_DEFINITIONS ${PC_ATTICA_CFLAGS_OTHER}) ENDIF (NOT WIN32) -- cgit v1.2.1 From f0f0b3a934fd9c8e79eefeb86e10dfb9001e88bd Mon Sep 17 00:00:00 2001 From: Patrick von Reth Date: Sun, 18 Apr 2010 16:20:42 +0000 Subject: fixed findgif.cmake for new windows version svn path=/trunk/KDE/kdelibs/; revision=1116096 --- modules/FindGIF.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index a46194ab..3dc400cf 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -16,7 +16,7 @@ ENDIF (GIF_INCLUDE_DIR AND GIF_LIBRARIES) FIND_PATH(GIF_INCLUDE_DIR gif_lib.h) -SET(POTENTIAL_GIF_LIBS gif libgif ungif libungif giflib) +SET(POTENTIAL_GIF_LIBS gif libgif ungif libungif giflib giflib4) FIND_LIBRARY(GIF_LIBRARIES NAMES ${POTENTIAL_GIF_LIBS}) IF (GIF_INCLUDE_DIR AND GIF_LIBRARIES) -- cgit v1.2.1 From 702294cdd23e33eb63552227421fdc786d118c64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20G=C3=A2teau?= Date: Sun, 25 Apr 2010 20:23:35 +0000 Subject: Added support for DBusMenu. svn path=/trunk/KDE/kdelibs/; revision=1118756 --- modules/CMakeLists.txt | 1 + modules/FindDBusMenuQt.cmake | 46 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 modules/FindDBusMenuQt.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 8dad8598..e7d8c38a 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -35,6 +35,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindBlueZ.cmake FindBoost.cmake FindCarbon.cmake + FindDBusMenuQt.cmake FindDNSSD.cmake FindENCHANT.cmake FindEigen.cmake diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake new file mode 100644 index 00000000..fb95da1b --- /dev/null +++ b/modules/FindDBusMenuQt.cmake @@ -0,0 +1,46 @@ +# - Try to find dbusmenu-qt +# Once done this will define +# +# DBUSMENUQT_FOUND - system has dbusmenu-qt +# DBUSMENUQT_INCLUDE_DIR - the dbusmenu-qt include directory +# DBUSMENUQT_LIBRARIES - the libraries needed to use dbusmenu-qt +# DBUSMENUQT_DEFINITIONS - Compiler switches required for using dbusmenu-qt +# +# use pkg-config to get the directories and then use these values +# in the FIND_PATH() and FIND_LIBRARY() calls + +# Copyright (c) 2009, Canonical Ltd. +# - Author: Aurélien Gâteau +# +# Based on FindQCA2.cmake +# Copyright (c) 2006, Michael Larouche, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +include(FindPackageHandleStandardArgs) + +if (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) + # in cache already + set(DBUSMENUQT_FOUND TRUE) +else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) + if (NOT WIN32) + find_package(PkgConfig) + pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt) + set(DBUSMENUQT_DEFINITIONS ${PC_DBUSMENUQT_CFLAGS_OTHER}) + endif (NOT WIN32) + + find_library(DBUSMENUQT_LIBRARIES + NAMES dbusmenu-qt + HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} + ) + + find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h + HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} + PATH_SUFFIXES dbusmenu-qt + ) + + find_package_handle_standard_args(dbusmenu-qt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) + + mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) +endif (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) -- cgit v1.2.1 From dd745f81ba4333e0ec457d337e04aaa27f032732 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Mon, 26 Apr 2010 09:26:05 +0000 Subject: windows fix: added debug library name svn path=/trunk/KDE/kdelibs/; revision=1118943 --- modules/FindDBusMenuQt.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index fb95da1b..47198e88 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -31,7 +31,7 @@ else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) endif (NOT WIN32) find_library(DBUSMENUQT_LIBRARIES - NAMES dbusmenu-qt + NAMES dbusmenu-qt dbusmenu-qtd HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} ) -- cgit v1.2.1 From a70b982dc99bea80b4eb8cec1347a16873f9769e Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 26 Apr 2010 14:44:23 +0000 Subject: fix svn path=/trunk/KDE/kdelibs/; revision=1119094 --- modules/FindDBusMenuQt.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index 47198e88..92e32d36 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -40,7 +40,7 @@ else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) PATH_SUFFIXES dbusmenu-qt ) - find_package_handle_standard_args(dbusmenu-qt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) + find_package_handle_standard_args(dbusmenuqt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) endif (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) -- cgit v1.2.1 From 5e7664ba04465f7156c4f564c3cc22ebf523caef Mon Sep 17 00:00:00 2001 From: "Friedrich W. H. Kossebau" Date: Tue, 27 Apr 2010 22:53:42 +0000 Subject: changed: use PkgConfig instead of UsePkgConfig svn path=/trunk/KDE/kdelibs/; revision=1119905 --- modules/FindGLIB2.cmake | 24 +++++++++++++----------- modules/FindPopplerQt4.cmake | 19 +++++++++---------- 2 files changed, 22 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindGLIB2.cmake b/modules/FindGLIB2.cmake index 431f2e5e..09fd98d8 100644 --- a/modules/FindGLIB2.cmake +++ b/modules/FindGLIB2.cmake @@ -16,25 +16,27 @@ if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) set(GLIB2_FIND_QUIETLY TRUE) endif(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES) -if (NOT WIN32) - include(UsePkgConfig) - pkgconfig(glib-2.0 _LibGLIB2IncDir _LibGLIB2LinkDir _LibGLIB2LinkFlags _LibGLIB2Cflags) -endif(NOT WIN32) +find_package(PkgConfig) +pkg_check_modules(PC_LibGLIB2 QUIET glib-2.0) -find_path(GLIB2_MAIN_INCLUDE_DIR glib.h - PATH_SUFFIXES glib-2.0 - PATHS ${_LibGLIB2IncDir} ) +find_path(GLIB2_MAIN_INCLUDE_DIR + NAMES glib.h + HINTS ${PC_LibGLIB2_INCLUDEDIR} + PATH_SUFFIXES glib-2.0) -# search the glibconfig.h include dir under the same root where the library is found -find_library(GLIB2_LIBRARIES +find_library(GLIB2_LIBRARY NAMES glib-2.0 - PATHS ${_LibGLIB2LinkDir} ) + HINTS ${PC_LibGLIB2_LIBDIR} +) + +set(GLIB2_LIBRARIES ${GLIB2_LIBRARY}) +# search the glibconfig.h include dir under the same root where the library is found get_filename_component(glib2LibDir "${GLIB2_LIBRARIES}" PATH) find_path(GLIB2_INTERNAL_INCLUDE_DIR glibconfig.h PATH_SUFFIXES glib-2.0/include - PATHS ${_LibGLIB2IncDir} "${glib2LibDir}" ${CMAKE_SYSTEM_LIBRARY_PATH}) + HINTS ${PC_LibGLIB2_INCLUDEDIR} "${glib2LibDir}" ${CMAKE_SYSTEM_LIBRARY_PATH}) set(GLIB2_INCLUDE_DIR "${GLIB2_MAIN_INCLUDE_DIR}") diff --git a/modules/FindPopplerQt4.cmake b/modules/FindPopplerQt4.cmake index 04911bbd..f2a59b8c 100644 --- a/modules/FindPopplerQt4.cmake +++ b/modules/FindPopplerQt4.cmake @@ -16,25 +16,24 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if(NOT WIN32) - include(UsePkgConfig) +find_package(PkgConfig) +pkg_check_modules(PC_POPPLERQT4 QUIET poppler-qt4) - pkgconfig(poppler-qt4 _PopplerQt4IncDir _PopplerQt4LinkDir _PopplerQt4LinkFlags _PopplerQt4Cflags) +set(POPPLER_QT4_DEFINITIONS ${PC_POPPLERQT4_CFLAGS_OTHER}) - set(POPPLER_QT4_DEFINITIONS ${_PopplerQt4Cflags}) -endif(NOT WIN32) - -find_path(POPPLER_QT4_INCLUDE_DIR +find_path(POPPLER_QT4_INCLUDE_DIR NAMES poppler-qt4.h + HINTS ${PC_POPPLERQT4_INCLUDEDIR} PATH_SUFFIXES poppler/qt4 poppler - HINTS ${_PopplerQt4IncDir} ) -find_library(POPPLER_QT4_LIBRARIES +find_library(POPPLER_QT4_LIBRARY NAMES poppler-qt4 - HINTS ${_PopplerQt4LinkDir} + HINTS ${PC_POPPLERQT4_LIBDIR} ) +set(POPPLER_QT4_LIBRARIES ${POPPLER_QT4_LIBRARY}) + if (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) set(POPPLER_QT4_FOUND TRUE) else (POPPLER_QT4_INCLUDE_DIR AND POPPLER_QT4_LIBRARIES) -- cgit v1.2.1 From 5d63846a9eba3eb9fc9c8f8e6360f7c78633ffe2 Mon Sep 17 00:00:00 2001 From: Patrick von Reth Date: Wed, 28 Apr 2010 06:43:26 +0000 Subject: Fixed DBUSMENUQT_FOUND on windows svn path=/trunk/KDE/kdelibs/; revision=1120007 --- modules/FindDBusMenuQt.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index 92e32d36..d161cdd7 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -40,6 +40,11 @@ else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) PATH_SUFFIXES dbusmenu-qt ) + if( WIN32 DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) + #we don't use pkgconfig on windows so we have to set DBUSMENUQT_FOUND by hand + set(DBUSMENUQT_FOUND TRUE) + endif( WIN32 DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) + find_package_handle_standard_args(dbusmenuqt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) -- cgit v1.2.1 From 8c340cde65c1be92249ee11b50c2583b60d1dd21 Mon Sep 17 00:00:00 2001 From: Patrick von Reth Date: Wed, 28 Apr 2010 06:56:25 +0000 Subject: added AND svn path=/trunk/KDE/kdelibs/; revision=1120012 --- modules/FindDBusMenuQt.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index d161cdd7..fc8df648 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -40,10 +40,10 @@ else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) PATH_SUFFIXES dbusmenu-qt ) - if( WIN32 DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) + if( WIN32 AND DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) #we don't use pkgconfig on windows so we have to set DBUSMENUQT_FOUND by hand set(DBUSMENUQT_FOUND TRUE) - endif( WIN32 DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) + endif( WIN32 AND DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) find_package_handle_standard_args(dbusmenuqt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) -- cgit v1.2.1 From d2473a5cc45b2a110b38dc79d21dd9d5397553b6 Mon Sep 17 00:00:00 2001 From: Ralf Habacker Date: Wed, 28 Apr 2010 07:10:39 +0000 Subject: win32 debug builds uses 'd' suffix svn path=/trunk/KDE/kdelibs/; revision=1120015 --- modules/FindPCRE.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index c8f8326d..0fe3210a 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -32,9 +32,9 @@ find_path(PCRE_INCLUDE_DIR pcre.h HINTS ${PC_PCRE_INCLUDEDIR} ${PC_PCRE_INCLUDE_DIRS} PATH_SUFFIXES pcre) -find_library(PCRE_PCRE_LIBRARY NAMES pcre HINTS ${PC_PCRE_LIBDIR} ${PC_PCRE_LIBRARY_DIRS}) +find_library(PCRE_PCRE_LIBRARY NAMES pcre pcred HINTS ${PC_PCRE_LIBDIR} ${PC_PCRE_LIBRARY_DIRS}) -find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix HINTS ${PC_PCRE_LIBDIR} ${PC_PCRE_LIBRARY_DIRS}) +find_library(PCRE_PCREPOSIX_LIBRARY NAMES pcreposix pcreposixd HINTS ${PC_PCRE_LIBDIR} ${PC_PCRE_LIBRARY_DIRS}) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(PCRE DEFAULT_MSG PCRE_INCLUDE_DIR PCRE_PCRE_LIBRARY PCRE_PCREPOSIX_LIBRARY ) -- cgit v1.2.1 From 233cf130998d985f942c761c47b9d4d1820e4c43 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 28 Apr 2010 19:46:33 +0000 Subject: -the first argument must be the exact-case name of the find-module, otherwise the macro doesn't work (i.e. it doesn't "see" the QUIET and REQUIRED options then) Alex svn path=/trunk/KDE/kdelibs/; revision=1120294 --- modules/FindDBusMenuQt.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index fc8df648..4f8fef56 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -45,7 +45,7 @@ else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) set(DBUSMENUQT_FOUND TRUE) endif( WIN32 AND DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) - find_package_handle_standard_args(dbusmenuqt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) + find_package_handle_standard_args(DBusMenuQt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) endif (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) -- cgit v1.2.1 From 95a78884e50f5dc5ad6a8e5ebcab110ea818f4d7 Mon Sep 17 00:00:00 2001 From: Patrick von Reth Date: Wed, 28 Apr 2010 22:27:11 +0000 Subject: tested it again and manual setting of DBUSMENUQT_FOUND is not required svn path=/trunk/KDE/kdelibs/; revision=1120353 --- modules/FindDBusMenuQt.cmake | 5 ----- 1 file changed, 5 deletions(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index 4f8fef56..d61a0648 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -39,11 +39,6 @@ else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} PATH_SUFFIXES dbusmenu-qt ) - - if( WIN32 AND DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) - #we don't use pkgconfig on windows so we have to set DBUSMENUQT_FOUND by hand - set(DBUSMENUQT_FOUND TRUE) - endif( WIN32 AND DBUSMENUQT_LIBRARIES AND DBUSMENUQT_INCLUDE_DIR ) find_package_handle_standard_args(DBusMenuQt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) -- cgit v1.2.1 From 3718fb1241339f3368a468eb389ff4af5e26f48a Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Thu, 29 Apr 2010 05:44:07 +0000 Subject: Add support for profiles in our platform. The cmake variables are accessible to other projects built on top of kdelibs. svn path=/trunk/KDE/kdelibs/; revision=1120432 --- modules/FindKDE4Internal.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 6a5c5b12..69b0e9f0 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -499,8 +499,9 @@ else (_kdeBootStrapping) get_filename_component(QT_INSTALL_DIR ${_DIR} PATH ) endif (WIN32) - # This file contains information about the installed kdelibs, Alex + # These files contain information about the installed kdelibs, Alex include(${kde_cmake_module_dir}/KDELibsDependencies.cmake) + include(${kde_cmake_module_dir}/KDEPlatformProfile.cmake) # Check the version of KDE. It must be at least KDE_MIN_VERSION as set by the user. # KDE_VERSION is set in KDELibsDependencies.cmake since KDE 4.0.x. Alex -- cgit v1.2.1 From 0f10661bc0c2c9add9c264429648fd33d0a6ece2 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 1 May 2010 09:23:29 +0000 Subject: -require CMake 2.6.4 for trunk Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1121456 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 69b0e9f0..440b4005 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -293,7 +293,7 @@ # this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below -cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR) +cmake_minimum_required(VERSION 2.6.4 FATAL_ERROR) # set the cmake policies to the 2.4.x compatibility settings (may change for KDE 4.3) cmake_policy(VERSION 2.4.5) -- cgit v1.2.1 From e2c35f33049165277d7bf027bea2cf84e3a396c9 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 1 May 2010 13:05:16 +0000 Subject: -simplify the file, remove all unnecessary stuff Alex svn path=/trunk/KDE/kdelibs/; revision=1121499 --- modules/FindDBusMenuQt.cmake | 38 ++++++++++++++------------------------ 1 file changed, 14 insertions(+), 24 deletions(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index d61a0648..ddce6072 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -5,9 +5,6 @@ # DBUSMENUQT_INCLUDE_DIR - the dbusmenu-qt include directory # DBUSMENUQT_LIBRARIES - the libraries needed to use dbusmenu-qt # DBUSMENUQT_DEFINITIONS - Compiler switches required for using dbusmenu-qt -# -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls # Copyright (c) 2009, Canonical Ltd. # - Author: Aurélien Gâteau @@ -20,27 +17,20 @@ include(FindPackageHandleStandardArgs) -if (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) - # in cache already - set(DBUSMENUQT_FOUND TRUE) -else (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) - if (NOT WIN32) - find_package(PkgConfig) - pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt) - set(DBUSMENUQT_DEFINITIONS ${PC_DBUSMENUQT_CFLAGS_OTHER}) - endif (NOT WIN32) +find_package(PkgConfig) +pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt) +set(DBUSMENUQT_DEFINITIONS ${PC_DBUSMENUQT_CFLAGS_OTHER}) + +find_library(DBUSMENUQT_LIBRARIES + NAMES dbusmenu-qt dbusmenu-qtd + HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} + ) - find_library(DBUSMENUQT_LIBRARIES - NAMES dbusmenu-qt dbusmenu-qtd - HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} - ) +find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h + HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} + PATH_SUFFIXES dbusmenu-qt + ) - find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h - HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} - PATH_SUFFIXES dbusmenu-qt - ) - - find_package_handle_standard_args(DBusMenuQt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) +find_package_handle_standard_args(DBusMenuQt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) - mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) -endif (DBUSMENUQT_INCLUDE_DIR AND DBUSMENUQT_LIBRARIES) +mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) -- cgit v1.2.1 From 092a085f749f320e5172d60add8d5153c3de6c68 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 4 May 2010 19:01:15 +0000 Subject: -improve documentation of the provided variables Alex svn path=/trunk/KDE/kdelibs/; revision=1122812 --- modules/FindKDE4Internal.cmake | 90 +++++++++++++++++++++++++++--------------- 1 file changed, 58 insertions(+), 32 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 440b4005..d71418c1 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -10,7 +10,29 @@ # KDE4_INCLUDE_DIR, but also the Qt4 include directories # and other platform specific include directories # KDE4_LIB_DIR - the directory where the KDE libraries are installed, -# intended to be used with LINK_DIRECTORIES() +# intended to be used with LINK_DIRECTORIES(). In general, this is not necessary. +# KDE4_LIBEXEC_INSTALL_DIR - the directory where libexec executables from kdelibs are installed +# KDE4_BIN_INSTALL_DIR - the directory where executables from kdelibs are installed +# KDE4_SBIN_INSTALL_DIR - the directory where system executables from kdelibs are installed +# KDE4_DATA_INSTALL_DIR - the parent directory where kdelibs applications install their data +# KDE4_HTML_INSTALL_DIR - the directory where HTML documentation from kdelibs is installed +# KDE4_CONFIG_INSTALL_DIR - the directory where config files from kdelibs are installed +# KDE4_ICON_INSTALL_DIR - the directory where icons from kdelibs are +# KDE4_KCFG_INSTALL_DIR - the directory where kconfig files from kdelibs are installed +# KDE4_LOCALE_INSTALL_DIR - the directory where translations from kdelibs are installed +# KDE4_MIME_INSTALL_DIR - the directory where mimetype desktop files from kdelibs are installed +# KDE4_SOUND_INSTALL_DIR - the directory where sound files from kdelibs are installed +# KDE4_TEMPLATES_INSTALL_DIR - the directory where templates (Create new file...) from kdelibs are installed +# KDE4_WALLPAPER_INSTALL_DIR - the directory where wallpapers from kdelibs are installed +# KDE4_KCONF_UPDATE_INSTALL_DIR - the directory where kconf_update files from kdelibs are installed +# KDE4_AUTOSTART_INSTALL_DIR - the directory where autostart from kdelibs are installed +# KDE4_XDG_APPS_INSTALL_DIR - the XDG apps dir from kdelibs +# KDE4_XDG_DIRECTORY_INSTALL_DIR - the XDG directory from kdelibs +# KDE4_SYSCONF_INSTALL_DIR - the directory where sysconfig files from kdelibs are installed +# KDE4_MAN_INSTALL_DIR - the directory where man pages from kdelibs are installed +# KDE4_INFO_INSTALL_DIR - the directory where info files from kdelibs are installed +# KDE4_DBUS_INTERFACES_DIR - the directory where dbus interfaces from kdelibs are installed +# KDE4_DBUS_SERVICES_DIR - the directory where dbus service files from kdelibs are installed # # The following variables are defined for the various tools required to # compile KDE software: @@ -80,7 +102,9 @@ # KDE4_KUNITCONVERSION_LIBS - the kunitconversion library and all depending libraries # KDE4_KDEWEBKIT_LIBS - the kdewebkit library and all depending libraries # -# This module defines a bunch of variables used as locations for install directories. +# This module defines also a bunch of variables used as locations for install directories +# for files of the package which is using this module. These variables don't say +# anything about the location of the installed KDE. # They can be relative (to CMAKE_INSTALL_PREFIX) or absolute. # Under Windows they are always relative. # @@ -88,29 +112,31 @@ # BUNDLE_INSTALL_DIR - Mac only: the directory where application bundles will be installed (default is /Applications/KDE4 ) # SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin) # LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib) -# CONFIG_INSTALL_DIR - the config file install dir +# CONFIG_INSTALL_DIR - the directory where config files will be installed # DATA_INSTALL_DIR - the parent directory where applications can install their data -# HTML_INSTALL_DIR - the HTML install dir for documentation -# ICON_INSTALL_DIR - the icon install dir (default prefix/share/icons/) -# INFO_INSTALL_DIR - the kde info install dir (default prefix/info) -# KCFG_INSTALL_DIR - the install dir for kconfig files -# LOCALE_INSTALL_DIR - the install dir for translations -# MAN_INSTALL_DIR - the kde man page install dir (default prefix/man/) -# MIME_INSTALL_DIR - the install dir for the mimetype desktop files +# HTML_INSTALL_DIR - the directory where HTML documentation will be installed +# ICON_INSTALL_DIR - the directory where the icons will be installed (default prefix/share/icons/) +# INFO_INSTALL_DIR - the directory where info files will be installed (default prefix/info) +# KCFG_INSTALL_DIR - the directory where kconfig files will be installed +# LOCALE_INSTALL_DIR - the directory where translations will be installed +# MAN_INSTALL_DIR - the directory where man pages will be installed (default prefix/man/) +# MIME_INSTALL_DIR - the directory where mimetype desktop files will be installed # PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) -# SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files -# SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files -# SOUND_INSTALL_DIR - the install dir for sound files -# TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...) -# WALLPAPER_INSTALL_DIR - the install dir for wallpapers -# DEMO_INSTALL_DIR - the install dir for demos -# KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir +# SERVICES_INSTALL_DIR - the directory where service (desktop, protocol, ...) files will be installed +# SERVICETYPES_INSTALL_DIR - the directory where servicestypes desktop files will be installed +# SOUND_INSTALL_DIR - the directory where sound files will be installed +# TEMPLATES_INSTALL_DIR - the directory where templates (Create new file...) will be installed +# WALLPAPER_INSTALL_DIR - the directory where wallpapers will be installed +# AUTOSTART_INSTALL_DIR - the directory where autostart files will be installed +# DEMO_INSTALL_DIR - the directory where demos will be installed +# KCONF_UPDATE_INSTALL_DIR - the directory where kconf_update files will be installed +# SYSCONF_INSTALL_DIR - the directory where sysconfig files will be installed (default /etc) # XDG_APPS_INSTALL_DIR - the XDG apps dir # XDG_DIRECTORY_INSTALL_DIR- the XDG directory # XDG_MIME_INSTALL_DIR - the XDG mimetypes install dir -# DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces) -# DBUS_SERVICES_INSTALL_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services ) -# DBUS_SYSTEM_SERVICES_INSTALL_DIR - the directory where dbus system services be installed (default is prefix/share/dbus-1/system-services ) +# DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces will be installed (default is prefix/share/dbus-1/interfaces) +# DBUS_SERVICES_INSTALL_DIR - the directory where dbus services will be installed (default is prefix/share/dbus-1/services ) +# DBUS_SYSTEM_SERVICES_INSTALL_DIR - the directory where dbus system services will be installed (default is prefix/share/dbus-1/system-services ) # # The following variable is provided, but seem to be unused: # LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") @@ -744,12 +770,12 @@ if (WIN32) set(XDG_DIRECTORY_INSTALL_DIR "share/desktop-directories" ) # The XDG directory set(XDG_MIME_INSTALL_DIR "share/mime/packages" ) # The install dir for the xdg mimetypes - set(SYSCONF_INSTALL_DIR "etc" ) # The kde sysconfig install dir (default /etc) - set(MAN_INSTALL_DIR "share/man" ) # The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/) - set(INFO_INSTALL_DIR "share/info" ) # The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") - set(DBUS_INTERFACES_INSTALL_DIR "share/dbus-1/interfaces" ) # The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") - set(DBUS_SERVICES_INSTALL_DIR "share/dbus-1/services" ) # The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") - set(DBUS_SYSTEM_SERVICES_INSTALL_DIR "share/dbus-1/system-services" ) # The kde dbus system services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/system-services)") + set(SYSCONF_INSTALL_DIR "etc" ) # The sysconfig install dir (default /etc) + set(MAN_INSTALL_DIR "share/man" ) # The man install dir (default ${SHARE_INSTALL_PREFIX}/man/) + set(INFO_INSTALL_DIR "share/info" ) # The info install dir (default ${SHARE_INSTALL_PREFIX}/info)") + set(DBUS_INTERFACES_INSTALL_DIR "share/dbus-1/interfaces" ) # The dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") + set(DBUS_SERVICES_INSTALL_DIR "share/dbus-1/services" ) # The dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + set(DBUS_SYSTEM_SERVICES_INSTALL_DIR "share/dbus-1/system-services" ) # The dbus system services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/system-services)") else (WIN32) @@ -816,12 +842,12 @@ else (WIN32) _set_fancy(XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory") _set_fancy(XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes") - _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The kde sysconfig install dir (default ${CMAKE_INSTALL_PREFIX}/etc)") - _set_fancy(MAN_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/man" "The kde man install dir (default ${SHARE_INSTALL_PREFIX}/man/)") - _set_fancy(INFO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/info" "The kde info install dir (default ${SHARE_INSTALL_PREFIX}/info)") - _set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The kde dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") - _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The kde dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") - _set_fancy(DBUS_SYSTEM_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/system-services" "The kde dbus system services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/system-services)") + _set_fancy(SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The sysconfig install dir (default ${CMAKE_INSTALL_PREFIX}/etc)") + _set_fancy(MAN_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/man" "The man install dir (default ${SHARE_INSTALL_PREFIX}/man/)") + _set_fancy(INFO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/info" "The info install dir (default ${SHARE_INSTALL_PREFIX}/info)") + _set_fancy(DBUS_INTERFACES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/interfaces" "The dbus interfaces install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/interfaces)") + _set_fancy(DBUS_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/services" "The dbus services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/services)") + _set_fancy(DBUS_SYSTEM_SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/dbus-1/system-services" "The dbus system services install dir (default ${SHARE_INSTALL_PREFIX}/dbus-1/system-services)") endif (WIN32) -- cgit v1.2.1 From 453117bee52af37ad1433a318a69fb6718f1465f Mon Sep 17 00:00:00 2001 From: Maks Orlovich Date: Tue, 4 May 2010 19:49:35 +0000 Subject: Provide the URL here, to save people some trouble. svn path=/trunk/KDE/kdelibs/; revision=1122825 --- modules/FindDBusMenuQt.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index ddce6072..b5ca9495 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -31,6 +31,6 @@ find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h PATH_SUFFIXES dbusmenu-qt ) -find_package_handle_standard_args(DBusMenuQt DEFAULT_MSG DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) +find_package_handle_standard_args(DBusMenuQt "Could not find dbusmenu-qt; available at http://people.canonical.com/~agateau/dbusmenu/" DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) -- cgit v1.2.1 From 121cf2babaa736e4110d30b28e41d6c199841aaf Mon Sep 17 00:00:00 2001 From: Andreas Pakulat Date: Wed, 5 May 2010 18:47:06 +0000 Subject: Fix FindPackageHandleStandardArgs.cmake for cmake's config-mode. When using the Config-Mode with a -version-file then cmake automatically sets the _VERSION variable, but it uses the mixed-case that is used as module name. The logic in this file so far however always expected the version variable to be all upper-case breaking the logic when using it in a simplified FindXxx.cmake module. This happened to kdevplatform/kdevelop. svn path=/trunk/KDE/kdelibs/; revision=1123271 --- modules/FindPackageHandleStandardArgs.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index 8e99e88b..fe4345c7 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -73,7 +73,11 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) # if the package was found, check for the version using _FIND_VERSION IF (${_NAME_UPPER}_FOUND) - SET(VERSION ${${_NAME_UPPER}_VERSION}) + IF(${_NAME_UPPER}_VERSION) + SET(VERSION ${${_NAME_UPPER}_VERSION}) + ELSEIF(${_NAME}_VERSION) + SET(VERSION ${${_NAME}_VERSION}) + ENDIF(${_NAME_UPPER}_VERSION) IF(VERSION) #hmm what do we do if the module in question doesn't set FOO_VERSION but something else ?... Ignore it for now -- cgit v1.2.1 From 33c95d2f924cf22da025cfeac5d54034676776f8 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 8 May 2010 07:06:45 +0000 Subject: -don't set the install RPATH to LIB_INSTALL_DIR if LIB_INSTALL_DIR is one of the standard system link directories, like e.g. /usr/lib (which are listed in CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES, which is set in Modules/Platform/UnixPaths.cmake) Alex svn path=/trunk/KDE/kdelibs/; revision=1124215 --- modules/FindKDE4Internal.cmake | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d71418c1..006cc2d2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -994,8 +994,14 @@ if (UNIX) if (APPLE) set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR}) else (APPLE) - # add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling - set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} ) + # add our LIB_INSTALL_DIR to the RPATH (but only when it is not one of the standard system link + # directories listed in CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES) and use the RPATH figured out by cmake when compiling + + list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${LIB_INSTALL_DIR}" _isSystemLibDir) + if("${_isSystemLibDir}" STREQUAL "-1") + set(CMAKE_INSTALL_RPATH "${LIB_INSTALL_DIR}") + endif("${_isSystemLibDir}" STREQUAL "-1") + set(CMAKE_SKIP_BUILD_RPATH FALSE) set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) -- cgit v1.2.1 From 1377da074cbeec64b7846e9e9a2b89abbe5a897f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sat, 8 May 2010 08:40:10 +0000 Subject: -improve docs -use QUIET also in pkg_search_module() -synced with cmake version Alex svn path=/trunk/KDE/kdelibs/; revision=1124230 --- modules/FindPkgConfig.cmake | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/FindPkgConfig.cmake b/modules/FindPkgConfig.cmake index b2f5ea57..84367633 100644 --- a/modules/FindPkgConfig.cmake +++ b/modules/FindPkgConfig.cmake @@ -4,14 +4,13 @@ # pkg_check_modules( [REQUIRED] [QUIET] []*) # checks for all the given modules # -# pkg_search_module( [REQUIRED] []*) +# pkg_search_module( [REQUIRED] [QUIET] []*) # checks for given modules and uses the first working one # # When the 'REQUIRED' argument was set, macros will fail with an error # when module(s) could not be found # -# When the 'QUIET' argument is set, no error message will be output if -# the package was not found. +# When the 'QUIET' argument is set, no status messages will be printed. # # It sets the following variables: # PKG_CONFIG_FOUND ... true if pkg-config works on the system @@ -306,7 +305,9 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix) _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir ) _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" LIBDIR "" --variable=libdir ) - message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}") + if (NOT ${_is_silent}) + message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}") + endif (NOT ${_is_silent}) endforeach(_pkg_check_modules_pkg) # set variables which are combined for multiple modules @@ -348,7 +349,9 @@ macro(pkg_search_module _prefix _module0) set(_pkg_modules_found 0) _pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required _pkg_is_silent "${_module0}" ${ARGN}) - message(STATUS "checking for one of the modules '${_pkg_modules_alt}'") + if (NOT ${_pkg_is_silent}) + message(STATUS "checking for one of the modules '${_pkg_modules_alt}'") + endif (NOT ${_pkg_is_silent}) # iterate through all modules and stop at the first working one. foreach(_pkg_alt ${_pkg_modules_alt}) -- cgit v1.2.1 From a087c957d6e0e31ca745670d6c22146315e470c8 Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Mon, 10 May 2010 21:21:02 +0000 Subject: New dependencies: DocBook XML, DocBook XSL. Approved on kde-core-devel and kde-buildsystem. This is the first step to remove the embedded (outdated) copies of DocBook XML DTDs and DocBook XSL stylesheet from kdelibs/kdoctools. svn path=/trunk/KDE/kdelibs/; revision=1125172 --- modules/FindDocBookXML.cmake | 47 ++++++++++++++++++++++++++++++++++++++++++++ modules/FindDocBookXSL.cmake | 25 +++++++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100644 modules/FindDocBookXML.cmake create mode 100644 modules/FindDocBookXSL.cmake (limited to 'modules') diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake new file mode 100644 index 00000000..df01115f --- /dev/null +++ b/modules/FindDocBookXML.cmake @@ -0,0 +1,47 @@ +# Try to find DocBook XML DTDs +# Once done, it will define: +# +# DOCBOOKXML_FOUND - system has the required DocBook XML DTDs +# DOCBOOKXML_CURRENTDTD_VERSION - the version of currently used DocBook XML +# DTD +# DOCBOOKXML_CURRENTDTD_DIR - the directory containing the definition of +# the currently used DocBook XML version +# DOCBOOKXML_CURRENTDTD_VERSION - if defined, the version of previously used +# DocBook XML DTD +# DOCBOOKXML_OLDDTD_DIR - if defined and different from +# DOCBOOKXML_CURRENTDTD_DIR, the directory containing the definition of +# previously used DocBook XML version +# +# Copyright (c) 2010, Luigi Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +set (DOCBOOKXML_CURRENTDTD_VERSION "4.2" + CACHE INTERNAL "Required version of XML DTDs") +find_path (DOCBOOKXML_CURRENTDTD_DIR catalog.xml + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + + PATH_SUFFIXES + share/xml/docbook/schema/dtd/${DOCBOOKXML_CURRENTDTD_VERSION} + share/xml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION} + share/sgml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION} + share/xml/docbook/${DOCBOOKXML_CURRENTDTD_VERSION} +) + +#set (DOCBOOKXML_OLDDTD_DIR ${DOCBOOKXML_CURRENTDTD_DIR}) +#set (DOCBOOKXML_OLDDTD_VERSION "4.1.2") +#find_path (DOCBOOKXML_OLDDTD_DIR catalog.xml +# PATHS ${CMAKE_SYSTEM_PREFIX_PATH} +# PATH_SUFFIXES +# share/xml/docbook/schema/dtd/${DOCBOOKXML_OLDDTD_VERSION} +# share/xml/docbook/xml-dtd-${DOCBOOKXML_OLDDTD_VERSION} +# share/sgml/docbook/xml-dtd-${DOCBOOKXML_OLDDTD_VERSION} +# share/xml/docbook/${DOCBOOKXML_OLDDTD_VERSION} +#) + +find_package_handle_standard_args (DocBookXML + "Could NOT find DocBook XML DTDs (v${DOCBOOKXML_CURRENTDTD_VERSION})" + DOCBOOKXML_CURRENTDTD_VERSION DOCBOOKXML_CURRENTDTD_DIR) + +mark_as_advanced (DOCBOOKXML_CURRENTDTD_DIR DOCBOOKXML_CURRENTDTD_VERSION) diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake new file mode 100644 index 00000000..44f69699 --- /dev/null +++ b/modules/FindDocBookXSL.cmake @@ -0,0 +1,25 @@ +# Try to find DocBook XSL stylesheet +# Once done, it will define: +# +# DOCBOOKXSL_FOUND - system has the required DocBook XML DTDs +# DOCBOOKXSL_DIR - the directory containing the stylesheets +# used to process DocBook XML +# +# Copyright (c) 2010, Luigi Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +find_path (DOCBOOKXSL_DIR VERSION + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + PATH_SUFFIXES + share/xml/docbook/stylesheet/docbook-xsl + share/sgml/docbook/xsl-stylesheets + share/xml/docbook/stylesheet/nwalsh/current +) + +find_package_handle_standard_args (DocBookXSL + "Could NOT find DocBook XSL stylesheets" + DOCBOOKXSL_DIR) + +mark_as_advanced (DOCBOOKXSL_DIR) -- cgit v1.2.1 From 7376338204f2c4f9edcfe46b07cb78590528128f Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Tue, 11 May 2010 14:38:39 +0000 Subject: Super-duper-hackarific for supporting Fedora12 and Fedora13. Older Fedoras will need to be added as required. Rex is talking to Fedora about this. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1125486 --- modules/FindDocBookXML.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules') diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake index df01115f..c337e43a 100644 --- a/modules/FindDocBookXML.cmake +++ b/modules/FindDocBookXML.cmake @@ -29,6 +29,16 @@ find_path (DOCBOOKXML_CURRENTDTD_DIR catalog.xml share/xml/docbook/${DOCBOOKXML_CURRENTDTD_VERSION} ) +#hacks for Fedora +if(NOT ${DOCBOOKXML_CURRENTDTD_DIR}) +find_path(DOCBOOKXML_CURRENTDTD_DIR catalog + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + PATH_SUFFIXES + share/sgml/docbook/xml-dtd-4.2-1.0-48.fc12 + share/sgml/docbook/xml-dtd-4.2-1.0-50.fc13 +) +endif(NOT ${DOCBOOKXML_CURRENTDTD_DIR}) + #set (DOCBOOKXML_OLDDTD_DIR ${DOCBOOKXML_CURRENTDTD_DIR}) #set (DOCBOOKXML_OLDDTD_VERSION "4.1.2") #find_path (DOCBOOKXML_OLDDTD_DIR catalog.xml -- cgit v1.2.1 From 5596ae8655380d7b8ec2548427f986f9939329ba Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Wed, 12 May 2010 13:49:19 +0000 Subject: Forgot to commit the new relevant cmake variables from the kutils split. svn path=/trunk/KDE/kdelibs/; revision=1125849 --- modules/FindKDE4Internal.cmake | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 006cc2d2..077e2257 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -50,6 +50,10 @@ # KDE4_KIO_LIBRARY - the kio library # KDE4_KPARTS_LIBRARY - the kparts library # KDE4_KUTILS_LIBRARY - the kutils library +# KDE4_KEMOTICONS_LIBRARY - the kemoticons library +# KDE4_KIDLETIME_LIBRARY - the kidletime library +# KDE4_KCMUTILS_LIBRARY - the kcmutils library +# KDE4_KPRINTUTILS_LIBRARY - the kprintutils library # KDE4_KDE3SUPPORT_LIBRARY - the kde3support library # KDE4_KFILE_LIBRARY - the kfile library # KDE4_KHTML_LIBRARY - the khtml library @@ -80,6 +84,10 @@ # KDE4_KIO_LIBS - the kio library and all depending libraries # KDE4_KPARTS_LIBS - the kparts library and all depending libraries # KDE4_KUTILS_LIBS - the kutils library and all depending libraries +# KDE4_KEMOTICONS_LIBS - the kemoticons library and all depending libraries +# KDE4_KIDLETIME_LIBS - the kidletime library and all depending libraries +# KDE4_KCMUTILS_LIBS - the kcmutils library and all depending libraries +# KDE4_KPRINTUTILS_LIBS - the kprintutils library and all depending libraries # KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries # KDE4_KFILE_LIBS - the kfile library and all depending libraries # KDE4_KHTML_LIBS - the khtml library and all depending libraries @@ -612,13 +620,16 @@ endif (_kdeBootStrapping) # will be simply set to "kdecore". # Sorted by names: +_kde4_set_lib_variables(KCMUTILS kcmutils "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KDE3SUPPORT kde3support "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KDECORE kdecore "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KDEUI kdeui "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KDEWEBKIT kdewebkit "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KDNSSD kdnssd "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KEMOTICONS kemoticons "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KFILE kfile "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KHTML khtml "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KIDLETIME kidletime "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KIO kio "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KJS kjs "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KJSAPI kjsapi "${KDE4_TARGET_PREFIX}") @@ -626,6 +637,7 @@ _kde4_set_lib_variables(KNEWSTUFF2 knewstuff2 "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KNEWSTUFF3 knewstuff3 "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KNOTIFYCONFIG knotifyconfig "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KPARTS kparts "${KDE4_TARGET_PREFIX}") +_kde4_set_lib_variables(KPRINTUTILS kprintutils "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KROSSCORE krosscore "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KROSSUI krossui "${KDE4_TARGET_PREFIX}") _kde4_set_lib_variables(KTEXTEDITOR ktexteditor "${KDE4_TARGET_PREFIX}") -- cgit v1.2.1 From 121693506b0439e408a9b9e9fa3a16abc5ccff65 Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Wed, 12 May 2010 23:56:16 +0000 Subject: Make it working even with splitted catalogs And also, more compact code svn path=/trunk/KDE/kdelibs/; revision=1126024 --- modules/FindDocBookXML.cmake | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake index c337e43a..3ed4a1d8 100644 --- a/modules/FindDocBookXML.cmake +++ b/modules/FindDocBookXML.cmake @@ -17,12 +17,10 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -set (DOCBOOKXML_CURRENTDTD_VERSION "4.2" +set (DOCBOOKXML_CURRENTDTD_VERSION "4.2" CACHE INTERNAL "Required version of XML DTDs") -find_path (DOCBOOKXML_CURRENTDTD_DIR catalog.xml - PATHS ${CMAKE_SYSTEM_PREFIX_PATH} - PATH_SUFFIXES +set (DTD_PATH_LIST share/xml/docbook/schema/dtd/${DOCBOOKXML_CURRENTDTD_VERSION} share/xml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION} share/sgml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION} @@ -30,25 +28,29 @@ find_path (DOCBOOKXML_CURRENTDTD_DIR catalog.xml ) #hacks for Fedora -if(NOT ${DOCBOOKXML_CURRENTDTD_DIR}) -find_path(DOCBOOKXML_CURRENTDTD_DIR catalog - PATHS ${CMAKE_SYSTEM_PREFIX_PATH} - PATH_SUFFIXES +set (DTD_PATH_LIST ${DTD_PATH_LIST} share/sgml/docbook/xml-dtd-4.2-1.0-48.fc12 share/sgml/docbook/xml-dtd-4.2-1.0-50.fc13 ) -endif(NOT ${DOCBOOKXML_CURRENTDTD_DIR}) + +find_path (DOCBOOKXML_CURRENTDTD_DIR docbookx.dtd + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + + PATH_SUFFIXES ${DTD_PATH_LIST} +) #set (DOCBOOKXML_OLDDTD_DIR ${DOCBOOKXML_CURRENTDTD_DIR}) #set (DOCBOOKXML_OLDDTD_VERSION "4.1.2") -#find_path (DOCBOOKXML_OLDDTD_DIR catalog.xml -# PATHS ${CMAKE_SYSTEM_PREFIX_PATH} -# PATH_SUFFIXES +#set (DTD_PATH_LIST) # share/xml/docbook/schema/dtd/${DOCBOOKXML_OLDDTD_VERSION} # share/xml/docbook/xml-dtd-${DOCBOOKXML_OLDDTD_VERSION} # share/sgml/docbook/xml-dtd-${DOCBOOKXML_OLDDTD_VERSION} # share/xml/docbook/${DOCBOOKXML_OLDDTD_VERSION} #) +#find_path (DOCBOOKXML_OLDDTD_DIR docbookx.dtd +# PATHS ${CMAKE_SYSTEM_PREFIX_PATH} +# PATH_SUFFIXES ${DTD_PATH_LIST} +#) find_package_handle_standard_args (DocBookXML "Could NOT find DocBook XML DTDs (v${DOCBOOKXML_CURRENTDTD_VERSION})" -- cgit v1.2.1 From e6741ce784dab86d89fcca4b4ec8184ba6721d25 Mon Sep 17 00:00:00 2001 From: Matthew Woehlke Date: Thu, 13 May 2010 01:49:25 +0000 Subject: Find docbook better when the package version is part of the DTD path. This is (somewhat) less hackish than the previous approach and is reportedly needed for OpenSolaris. It should work on all Fedora versions past and future that use the same convention (and have the required DTD version, of course) and for anything else with similar conventions. svn path=/trunk/KDE/kdelibs/; revision=1126043 --- modules/FindDocBookXML.cmake | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake index 3ed4a1d8..ec3c0d64 100644 --- a/modules/FindDocBookXML.cmake +++ b/modules/FindDocBookXML.cmake @@ -27,15 +27,19 @@ set (DTD_PATH_LIST share/xml/docbook/${DOCBOOKXML_CURRENTDTD_VERSION} ) -#hacks for Fedora -set (DTD_PATH_LIST ${DTD_PATH_LIST} - share/sgml/docbook/xml-dtd-4.2-1.0-48.fc12 - share/sgml/docbook/xml-dtd-4.2-1.0-50.fc13 -) - +# hacks for systems that use the package version in the DTD dirs, +# e.g. Fedora, OpenSolaris +foreach (DTD_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) + file(GLOB DTD_SUFFIX_ITER RELATIVE ${DTD_PREFIX_ITER} + ${DTD_PREFIX_ITER}/share/sgml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION}-* + ) + if (DTD_SUFFIX_ITER) + list (APPEND DTD_PATH_LIST ${DTD_SUFFIX_ITER}) + endif () +endforeach () + find_path (DOCBOOKXML_CURRENTDTD_DIR docbookx.dtd PATHS ${CMAKE_SYSTEM_PREFIX_PATH} - PATH_SUFFIXES ${DTD_PATH_LIST} ) -- cgit v1.2.1 From f5a7eacec19610c37514bc28c5553b215dd81372 Mon Sep 17 00:00:00 2001 From: Dawit Alemayehu Date: Fri, 14 May 2010 04:31:59 +0000 Subject: Fix the location detection of docbook xsl style sheet in platforms that use version number in the path names, e.g. ArchLinux. svn path=/trunk/KDE/kdelibs/; revision=1126482 --- modules/FindDocBookXSL.cmake | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index 44f69699..60ce2e70 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -10,12 +10,24 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +set (STYLESHEET_PATH_LIST + share/xml/docbook/stylesheet/docbook-xsl + share/sgml/docbook/xsl-stylesheets + share/xml/docbook/stylesheet/nwalsh/current +) + +foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) + file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER} + ${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-* + ) + if (STYLESHEET_SUFFIX_ITER) + list (APPEND STYLESHEET_PATH_LIST ${STYLESHEET_SUFFIX_ITER}) + endif () +endforeach () + find_path (DOCBOOKXSL_DIR VERSION PATHS ${CMAKE_SYSTEM_PREFIX_PATH} - PATH_SUFFIXES - share/xml/docbook/stylesheet/docbook-xsl - share/sgml/docbook/xsl-stylesheets - share/xml/docbook/stylesheet/nwalsh/current + PATH_SUFFIXES ${STYLESHEET_PATH_LIST} ) find_package_handle_standard_args (DocBookXSL -- cgit v1.2.1 From 8c14801648860c04fe8ba84cdc8bf2244e4d84da Mon Sep 17 00:00:00 2001 From: Adrian Schroeter Date: Mon, 17 May 2010 04:47:23 +0000 Subject: do not die when using non-gcc compiler, for example clang++ svn path=/trunk/KDE/kdelibs/; revision=1127602 --- modules/FindKDE4Internal.cmake | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 077e2257..8c67c8b2 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1200,12 +1200,17 @@ if (CMAKE_COMPILER_IS_GNUCXX) string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}") # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here: if (NOT _gcc_version) - string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") + string (REGEX MATCH ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${gcc_on_macos}") + if (gcc_on_macos) + string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}") + endif (gcc_on_macos) endif (NOT _gcc_version) - macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) - macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) - macro_ensure_version("4.3.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_3) + if (_gcc_version) + macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1) + macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2) + macro_ensure_version("4.3.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_3) + endif (_gcc_version) # save a little by making local statics not threadsafe # ### do not enable it for older compilers, see -- cgit v1.2.1 From 550897d01e2b6059ff79cea98d9b3ed44f064d83 Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Tue, 18 May 2010 22:28:23 +0000 Subject: Add missing include(FindPackageHandleStandardArgs) svn path=/trunk/KDE/kdelibs/; revision=1128313 --- modules/FindDocBookXML.cmake | 1 + modules/FindDocBookXSL.cmake | 1 + 2 files changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake index ec3c0d64..51001877 100644 --- a/modules/FindDocBookXML.cmake +++ b/modules/FindDocBookXML.cmake @@ -56,6 +56,7 @@ find_path (DOCBOOKXML_CURRENTDTD_DIR docbookx.dtd # PATH_SUFFIXES ${DTD_PATH_LIST} #) +include(FindPackageHandleStandardArgs) find_package_handle_standard_args (DocBookXML "Could NOT find DocBook XML DTDs (v${DOCBOOKXML_CURRENTDTD_VERSION})" DOCBOOKXML_CURRENTDTD_VERSION DOCBOOKXML_CURRENTDTD_DIR) diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index 60ce2e70..c84f2888 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -30,6 +30,7 @@ find_path (DOCBOOKXSL_DIR VERSION PATH_SUFFIXES ${STYLESHEET_PATH_LIST} ) +include(FindPackageHandleStandardArgs) find_package_handle_standard_args (DocBookXSL "Could NOT find DocBook XSL stylesheets" DOCBOOKXSL_DIR) -- cgit v1.2.1 From 95be475812349e24080db442bc908bacf6e8f5df Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Tue, 18 May 2010 23:04:45 +0000 Subject: Look for paths with encoded version only if needed svn path=/trunk/KDE/kdelibs/; revision=1128329 --- modules/FindDocBookXML.cmake | 30 +++++++++++++++++++----------- modules/FindDocBookXSL.cmake | 28 +++++++++++++++++++--------- 2 files changed, 38 insertions(+), 20 deletions(-) (limited to 'modules') diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake index 51001877..b28f5b1a 100644 --- a/modules/FindDocBookXML.cmake +++ b/modules/FindDocBookXML.cmake @@ -27,22 +27,30 @@ set (DTD_PATH_LIST share/xml/docbook/${DOCBOOKXML_CURRENTDTD_VERSION} ) -# hacks for systems that use the package version in the DTD dirs, -# e.g. Fedora, OpenSolaris -foreach (DTD_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) - file(GLOB DTD_SUFFIX_ITER RELATIVE ${DTD_PREFIX_ITER} - ${DTD_PREFIX_ITER}/share/sgml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION}-* - ) - if (DTD_SUFFIX_ITER) - list (APPEND DTD_PATH_LIST ${DTD_SUFFIX_ITER}) - endif () -endforeach () - find_path (DOCBOOKXML_CURRENTDTD_DIR docbookx.dtd PATHS ${CMAKE_SYSTEM_PREFIX_PATH} PATH_SUFFIXES ${DTD_PATH_LIST} ) +if (NOT DOCBOOKXML_CURRENTDTD_DIR) + # hacks for systems that use the package version in the DTD dirs, + # e.g. Fedora, OpenSolaris + set (DTD_PATH_LIST) + foreach (DTD_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) + file(GLOB DTD_SUFFIX_ITER RELATIVE ${DTD_PREFIX_ITER} + ${DTD_PREFIX_ITER}/share/sgml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION}-* + ) + if (DTD_SUFFIX_ITER) + list (APPEND DTD_PATH_LIST ${DTD_SUFFIX_ITER}) + endif () + endforeach () + + find_path (DOCBOOKXML_CURRENTDTD_DIR docbookx.dtd + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + PATH_SUFFIXES ${DTD_PATH_LIST} + ) +endif (NOT DOCBOOKXML_CURRENTDTD_DIR) + #set (DOCBOOKXML_OLDDTD_DIR ${DOCBOOKXML_CURRENTDTD_DIR}) #set (DOCBOOKXML_OLDDTD_VERSION "4.1.2") #set (DTD_PATH_LIST) diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index c84f2888..7c1f3ff3 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -16,20 +16,30 @@ set (STYLESHEET_PATH_LIST share/xml/docbook/stylesheet/nwalsh/current ) -foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) - file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER} - ${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-* - ) - if (STYLESHEET_SUFFIX_ITER) - list (APPEND STYLESHEET_PATH_LIST ${STYLESHEET_SUFFIX_ITER}) - endif () -endforeach () - find_path (DOCBOOKXSL_DIR VERSION PATHS ${CMAKE_SYSTEM_PREFIX_PATH} PATH_SUFFIXES ${STYLESHEET_PATH_LIST} ) +if (NOT DOCBOOKXSL_DIR) + # hacks for systems that put the version in the stylesheet dirs + set (STYLESHEET_PATH_LIST) + foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) + file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER} + ${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-* + ) + if (STYLESHEET_SUFFIX_ITER) + list (APPEND STYLESHEET_PATH_LIST ${STYLESHEET_SUFFIX_ITER}) + endif () + endforeach () + + find_path (DOCBOOKXSL_DIR VERSION + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + PATH_SUFFIXES ${STYLESHEET_PATH_LIST} + ) +endif (NOT DOCBOOKXSL_DIR) + + include(FindPackageHandleStandardArgs) find_package_handle_standard_args (DocBookXSL "Could NOT find DocBook XSL stylesheets" -- cgit v1.2.1 From 9c04b56b227844fdf61609289140aac39b82ab5e Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 25 May 2010 20:11:41 +0000 Subject: -disable the crosscompiling code again, it is not in shape to be released with 4.5. I exchanged emails on this with Harald, but unfortunately he didn't find the time to finish this for 4.5. Guess we'll get it in good shape for 4.6 then (or maybe a 4.5.x) Harald: could you please update the KDE_on_Maemo/MADDE page on techbase accordingly ? Alex CCMAIL: harry@kdevelop.org svn path=/trunk/KDE/kdelibs/; revision=1130617 --- modules/KDE4Macros.cmake | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a2cba7c2..bf130ab8 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -106,11 +106,11 @@ macro (KDE4_ADD_KCFG_FILES _sources ) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}) endif(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}") - if (CMAKE_CROSSCOMPILING) - set(IMPORT_KCONFIG_COMPILER_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportKConfigCompilerExecutable.cmake" CACHE FILEPATH "Point it to the export file of kconfig_compiler from a native build") - include(${IMPORT_KCONFIG_COMPILER_EXECUTABLE}) - set(KDE4_KCFGC_EXECUTABLE kconfig_compiler) - endif (CMAKE_CROSSCOMPILING) +# if (CMAKE_CROSSCOMPILING) +# set(IMPORT_KCONFIG_COMPILER_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportKConfigCompilerExecutable.cmake" CACHE FILEPATH "Point it to the export file of kconfig_compiler from a native build") +# include(${IMPORT_KCONFIG_COMPILER_EXECUTABLE}) +# set(KDE4_KCFGC_EXECUTABLE kconfig_compiler) +# endif (CMAKE_CROSSCOMPILING) # the command for creating the source file from the kcfg file add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} @@ -290,11 +290,11 @@ macro (KDE4_CREATE_HANDBOOK _docbook) file(GLOB _docs *.docbook) - if (CMAKE_CROSSCOMPILING) - set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc4 from a native build") - include(${IMPORT_MEINPROC4_EXECUTABLE}) - set(KDE4_MEINPROC_EXECUTABLE meinproc4) - endif (CMAKE_CROSSCOMPILING) +# if (CMAKE_CROSSCOMPILING) +# set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc4 from a native build") +# include(${IMPORT_MEINPROC4_EXECUTABLE}) +# set(KDE4_MEINPROC_EXECUTABLE meinproc4) +# endif (CMAKE_CROSSCOMPILING) add_custom_command(OUTPUT ${_doc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --check ${_bootstrapOption} --cache ${_doc} ${_input} @@ -367,11 +367,11 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) set(_bootstrapOption) endif (_kdeBootStrapping) - if (CMAKE_CROSSCOMPILING) - set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc4 from a native build") - include(${IMPORT_MEINPROC4_EXECUTABLE}) - set(KDE4_MEINPROC_EXECUTABLE meinproc4) - endif (CMAKE_CROSSCOMPILING) +# if (CMAKE_CROSSCOMPILING) +# set(IMPORT_MEINPROC4_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc4Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc4 from a native build") +# include(${IMPORT_MEINPROC4_EXECUTABLE}) +# set(KDE4_MEINPROC_EXECUTABLE meinproc4) +# endif (CMAKE_CROSSCOMPILING) add_custom_command(OUTPUT ${_outdoc} COMMAND ${KDE4_MEINPROC_EXECUTABLE} --stylesheet ${_ssheet} --check ${_bootstrapOption} ${_input} -- cgit v1.2.1 From 3cc6956201aed4440477ba33bf5dd1b0c77bed11 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 26 May 2010 17:02:16 +0000 Subject: -don't put the copyright notice in the documentation Alex svn path=/trunk/KDE/kdelibs/; revision=1130873 --- modules/FindDocBookXSL.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index 7c1f3ff3..380c8709 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -4,7 +4,7 @@ # DOCBOOKXSL_FOUND - system has the required DocBook XML DTDs # DOCBOOKXSL_DIR - the directory containing the stylesheets # used to process DocBook XML -# + # Copyright (c) 2010, Luigi Toscano, # # Redistribution and use is allowed according to the terms of the BSD license. -- cgit v1.2.1 From 9f0d33ae4e9b10466e689d2bc883eff2dfb317b4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 26 May 2010 17:04:30 +0000 Subject: -remove duplicated documentation for DOCBOOKXML_CURRENTDTD_VERSION -remove docs for not existing DOCBOOKXML_OLDDTD_DIR variable -use DOCBOOKXML_CURRENTDTD_DIR as first variable argument for find_package_handle_standard_args(), so the status message tells us where it has been found Alex CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=1130875 --- modules/FindDocBookXML.cmake | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'modules') diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake index b28f5b1a..26053bfd 100644 --- a/modules/FindDocBookXML.cmake +++ b/modules/FindDocBookXML.cmake @@ -6,12 +6,7 @@ # DTD # DOCBOOKXML_CURRENTDTD_DIR - the directory containing the definition of # the currently used DocBook XML version -# DOCBOOKXML_CURRENTDTD_VERSION - if defined, the version of previously used -# DocBook XML DTD -# DOCBOOKXML_OLDDTD_DIR - if defined and different from -# DOCBOOKXML_CURRENTDTD_DIR, the directory containing the definition of -# previously used DocBook XML version -# + # Copyright (c) 2010, Luigi Toscano, # # Redistribution and use is allowed according to the terms of the BSD license. @@ -67,6 +62,6 @@ endif (NOT DOCBOOKXML_CURRENTDTD_DIR) include(FindPackageHandleStandardArgs) find_package_handle_standard_args (DocBookXML "Could NOT find DocBook XML DTDs (v${DOCBOOKXML_CURRENTDTD_VERSION})" - DOCBOOKXML_CURRENTDTD_VERSION DOCBOOKXML_CURRENTDTD_DIR) + DOCBOOKXML_CURRENTDTD_DIR DOCBOOKXML_CURRENTDTD_VERSION) mark_as_advanced (DOCBOOKXML_CURRENTDTD_DIR DOCBOOKXML_CURRENTDTD_VERSION) -- cgit v1.2.1 From a80bc295f6ba0063a20fd5efc7121d5bed9182be Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Wed, 26 May 2010 22:17:35 +0000 Subject: Use a less ambiguous file name to find xslt directory svn path=/trunk/KDE/kdelibs/; revision=1130971 --- modules/FindDocBookXSL.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index 380c8709..d3968914 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -16,7 +16,7 @@ set (STYLESHEET_PATH_LIST share/xml/docbook/stylesheet/nwalsh/current ) -find_path (DOCBOOKXSL_DIR VERSION +find_path (DOCBOOKXSL_DIR lib/lib.xsl PATHS ${CMAKE_SYSTEM_PREFIX_PATH} PATH_SUFFIXES ${STYLESHEET_PATH_LIST} ) -- cgit v1.2.1 From 658663672b3b6ebbc289fd74914195aedcf696aa Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 30 May 2010 13:58:39 +0000 Subject: -some minor syncing with the Qt4 files from cmake: -use unset() now that we require cmake 2.6.4 -sync doc strings and line breaks Alex svn path=/trunk/KDE/kdelibs/; revision=1132356 --- modules/FindQt4.cmake | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0fef4275..0aba8dc7 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -442,6 +442,7 @@ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 qmake-mac PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin" $ENV{QTDIR}/bin + DOC "The qmake executable for the Qt installation to use" ) IF (QT_QMAKE_EXECUTABLE) @@ -463,6 +464,7 @@ IF (QT_QMAKE_EXECUTABLE) "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" $ENV{QTDIR}/bin + DOC "The qmake executable for the Qt installation to use" ) IF(QT_QMAKE_EXECUTABLE) EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} @@ -665,7 +667,7 @@ IF (QT4_QMAKE_FOUND) CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC) IF(Q_WS_MAC) IF(QT_QMAKE_CHANGED) - SET(QT_MAC_USE_COCOA "" CACHE BOOL "Use Cocoa on Mac" FORCE) + UNSET(QT_MAC_USE_COCOA CACHE) ENDIF(QT_QMAKE_CHANGED) CHECK_SYMBOL_EXISTS(QT_MAC_USE_COCOA "QtCore/qconfig.h" QT_MAC_USE_COCOA) ENDIF(Q_WS_MAC) @@ -692,7 +694,8 @@ IF (QT4_QMAKE_FOUND) SET(QT_MODULES QtCore QtGui Qt3Support QtSvg QtScript QtTest QtUiTools QtHelp QtWebKit QtXmlPatterns QtNetwork QtMultimedia - QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools QtDeclarative) + QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools + QtDeclarative) IF(Q_WS_X11) SET(QT_MODULES ${QT_MODULES} QtMotif) @@ -984,7 +987,7 @@ IF (QT4_QMAKE_FOUND) ENDIF(QT_USE_IMPORTED_TARGETS) -#message(STATUS "QT_${basename}_LIBRARY: ${QT_${basename}_LIBRARY}") +# message(STATUS "QT_${basename}_LIBRARY: ${QT_${basename}_LIBRARY}") SET(QT_${basename}_FOUND 1) -- cgit v1.2.1 From 3ff273540a558ab9d98a0cc760b255323742308b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20W=C3=B6bbeking?= Date: Mon, 31 May 2010 20:55:05 +0000 Subject: Make it also work with Debian Lenny CCMAIL:luigi.toscano@tiscali.it svn path=/trunk/KDE/kdelibs/; revision=1132995 --- modules/FindDocBookXSL.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index d3968914..2a20bbe8 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -14,6 +14,7 @@ set (STYLESHEET_PATH_LIST share/xml/docbook/stylesheet/docbook-xsl share/sgml/docbook/xsl-stylesheets share/xml/docbook/stylesheet/nwalsh/current + share/xml/docbook/stylesheet/nwalsh ) find_path (DOCBOOKXSL_DIR lib/lib.xsl -- cgit v1.2.1 From 81c41f4b3b7b93e461e6ccb94c67d4f60d091e50 Mon Sep 17 00:00:00 2001 From: Raphael Kubo da Costa Date: Wed, 2 Jun 2010 16:07:26 +0000 Subject: Add FreeBSD's path for DocBook XSL stylesheet. CCMAIL: luigi.toscano@tiscali.it svn path=/trunk/KDE/kdelibs/; revision=1133834 --- modules/FindDocBookXSL.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index 2a20bbe8..4d52c41a 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -15,6 +15,7 @@ set (STYLESHEET_PATH_LIST share/sgml/docbook/xsl-stylesheets share/xml/docbook/stylesheet/nwalsh/current share/xml/docbook/stylesheet/nwalsh + share/xsl/docbook ) find_path (DOCBOOKXSL_DIR lib/lib.xsl -- cgit v1.2.1 From 0f23ee767198999f8feac7d4053a78dbaec24409 Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Fri, 4 Jun 2010 21:36:35 +0000 Subject: External DocBook, step 1: remove embedded XML DTDs This commit removes the embedded copy of the currently used XML DTDs (4.2), and uses the external DTD instead. If you compile and update your existing installation, you can safely remove the existing $KDEDIR/share/kde4/apps/ksgmltools2/docbook/xml-dtd-4.2. The code does not use catalog.xml anymore, as our custom DTD (kdex.dtd) includes (or seems to include) all the needed files directly or indirectly. As kdex.dtd is generated dynamically (it depends on the path to system-installed DTD), in order to generate the documentation during the bootstrap phase (kdelibs documentation) the content of customization/ needs to be copied in the builddir and this copy (from the builddir itself) is used for the generation. svn path=/trunk/KDE/kdelibs/; revision=1134669 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index bf130ab8..4a5c955c 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -282,7 +282,7 @@ macro (KDE4_CREATE_HANDBOOK _docbook) #Bootstrap if (_kdeBootStrapping) set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) - set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") + set(_bootstrapOption "--srcdir=${CMAKE_BINARY_DIR}/kdoctools/") else (_kdeBootStrapping) set(_ssheet ${KDE4_DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) set(_bootstrapOption) @@ -361,7 +361,7 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) #Bootstrap if (_kdeBootStrapping) set(_ssheet "${CMAKE_SOURCE_DIR}/kdoctools/docbook/xsl/manpages/docbook.xsl") - set(_bootstrapOption "--srcdir=${CMAKE_SOURCE_DIR}/kdoctools/") + set(_bootstrapOption "--srcdir=${CMAKE_BINARY_DIR}/kdoctools/") else (_kdeBootStrapping) set(_ssheet "${KDE4_DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl") set(_bootstrapOption) -- cgit v1.2.1 From 48eab9f321582523eef6445e6c5baab8c3adb729 Mon Sep 17 00:00:00 2001 From: Raphael Kubo da Costa Date: Mon, 7 Jun 2010 20:37:38 +0000 Subject: Check gcc's include path and add any previously missing entries to CMAKE_{C,CXX}_IMPLICIT_INCLUDE_DIRECTORIES. As discussed on the kde-buildsystem mailing list, this is particularly useful on systems such as FreeBSD, which have most of the libraries and headers installed in /usr/local: CMake would not add -I/usr/include when compiling code, but would do that with other directories such as /usr/local. This, in turn, would sometimes make the system-wide includes be added to the include path before the local ones, which can lead to compilation failures. With this patch, if CPATH is properly set, directories such as /usr/local/* will not be added by CMake when gcc is invoked. For now, this works only with gcc, but can be extended to other compilers if necessary. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1135642 --- modules/FindKDE4Internal.cmake | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 8c67c8b2..28f82b19 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -234,12 +234,12 @@ # KDE4_ADD_APP_ICON (SRCS_VAR pattern) # adds an application icon to target source list. # Mac OSX notes : the application icon is added to a Mac OS X bundle so that Finder and friends show the right thing. -# Win32 notes: the application icon(s) are compiled into the application +# Win32 notes: the application icon(s) are compiled into the application # There is some workaround in kde4_add_kdeinit_executable to make it possible for those applications as well. # Parameters: # SRCS_VAR - specifies the list of source files; this has to end in _SRCS or _KDEINIT_SRCS # (see the replace stuff below) -# pattern - regular expression for searching application icons +# pattern - regular expression for searching application icons # Example: KDE4_ADD_APP_ICON( myapp_SRCS "pics/cr*-myapp.png") # Example: KDE4_ADD_APP_ICON( myapp_KDEINIT_SRCS "icons/oxygen/*/apps/myapp.png") # @@ -1136,8 +1136,36 @@ if (MSVC) kde_check_flag_exists("/NODEFAULTLIB:libcmtd /DEFAULTLIB:msvcrtd" CMAKE_EXE_LINKER_FLAGS_DEBUG "debug") endif(MSVC) +# This macro is for internal use only +# Return the directories present in gcc's include path. +macro(_DETERMINE_GCC_SYSTEM_INCLUDE_DIRS _lang _result) + set(${_result}) + set(_gccOutput) + file(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy" "\n" ) + execute_process(COMMAND ${CMAKE_C_COMPILER} -v -E -x ${_lang} -dD dummy + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/CMakeFiles + ERROR_VARIABLE _gccOutput + OUTPUT_VARIABLE _gccStdout ) + file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy") + + if( "${_gccOutput}" MATCHES "> search starts here[^\n]+\n *(.+) *\n *End of (search) list" ) + SET(${_result} ${CMAKE_MATCH_1}) + STRING(REPLACE "\n" " " ${_result} "${${_result}}") + SEPARATE_ARGUMENTS(${_result}) + ENDIF( "${_gccOutput}" MATCHES "> search starts here[^\n]+\n *(.+) *\n *End of (search) list" ) +ENDMACRO(_DETERMINE_GCC_SYSTEM_INCLUDE_DIRS _lang) + +if (CMAKE_COMPILER_IS_GNUCC) + _DETERMINE_GCC_SYSTEM_INCLUDE_DIRS(c _dirs) + set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES + ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES} ${_dirs}) +endif (CMAKE_COMPILER_IS_GNUCC) if (CMAKE_COMPILER_IS_GNUCXX) + _DETERMINE_GCC_SYSTEM_INCLUDE_DIRS(c++ _dirs) + set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES + ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} ${_dirs}) + set (KDE4_ENABLE_EXCEPTIONS "-fexceptions -UQT_NO_EXCEPTIONS") # Select flags. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG -DQT_NO_DEBUG") -- cgit v1.2.1 From 6c9e8080f8e71be45419a9d6633f2876d047f091 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 14 Jun 2010 18:59:27 +0000 Subject: Simplify the index method and write some more asserts. svn path=/trunk/KDE/kdelibs/; revision=1137949 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 28f82b19..641a8384 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -667,7 +667,7 @@ endif(_kdeBootStrapping OR TARGET ${KDE4_TARGET_PREFIX}nepomuk) # which helps with finding the phonon installed as part of kdesupport: # only make Phonon REQUIRED if KDE4 itself is REQUIRED -find_package(Phonon 4.3.80 ${_REQ_STRING_KDE4}) +find_package(Phonon ${_REQ_STRING_KDE4}) set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) set(KDE4_PHONON_LIBS ${PHONON_LIBS}) set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) -- cgit v1.2.1 From 07923cb7f0869c10d21da121ceb67da1aed37cd3 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 14 Jun 2010 19:22:16 +0000 Subject: Revert part of r1137949 which shouldn't have been committed. svn path=/trunk/KDE/kdelibs/; revision=1137956 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 641a8384..28f82b19 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -667,7 +667,7 @@ endif(_kdeBootStrapping OR TARGET ${KDE4_TARGET_PREFIX}nepomuk) # which helps with finding the phonon installed as part of kdesupport: # only make Phonon REQUIRED if KDE4 itself is REQUIRED -find_package(Phonon ${_REQ_STRING_KDE4}) +find_package(Phonon 4.3.80 ${_REQ_STRING_KDE4}) set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) set(KDE4_PHONON_LIBS ${PHONON_LIBS}) set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) -- cgit v1.2.1 From de6b03703e47f693d76b4976ec8a1d2e0d325b55 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 21 Jun 2010 19:38:30 +0000 Subject: -remove wrong comment Alex svn path=/trunk/KDE/kdelibs/; revision=1140908 --- modules/KDE4Macros.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 4a5c955c..16bc0217 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -782,8 +782,7 @@ macro (KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME ) endmacro (KDE4_ADD_KDEINIT_EXECUTABLE) -# add a unit test, which is executed when running make test -# it will be built with RPATH pointing to the build dir +# Add a unit test, which is executed when running make test . # The targets are always created, but only built for the "all" # target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target # are created but not built by default. You can build them by manually building the target. -- cgit v1.2.1 From 83d876496432dc40324c366f42c436f6e3eefabf Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 21 Jun 2010 20:06:11 +0000 Subject: -add some comments where the export-files come from Alex svn path=/trunk/KDE/kdelibs/; revision=1140916 --- modules/FindKDE4Internal.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 28f82b19..c9e8892f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -561,7 +561,8 @@ else (_kdeBootStrapping) # This setting is currently not recorded in KDELibsDependencies.cmake: find_file(KDE4_PLASMA_OPENGL_FOUND plasma/glapplet.h PATHS ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH) - # now include the file with the imported tools (executable targets) + # Now include the file with the imported tools (executable targets). + # This export-file is generated and installed by the toplevel CMakeLists.txt of kdelibs. # Having the libs and tools in two separate files should help with cross compiling. include(${kde_cmake_module_dir}/KDELibs4ToolsTargets.cmake) @@ -602,6 +603,7 @@ else (_kdeBootStrapping) # the library target "kdeui" is exported as "KDE4__kdeui". The "KDE4__" is used as # "namespace" to separate the imported targets from "normal" targets, it is stored in # KDE4_TARGET_PREFIX, which is set in KDELibsDependencies.cmake . + # This export-file is generated and installed by the toplevel CMakeLists.txt of kdelibs. # Include it to "import" the libraries from kdelibs into the current projects as targets. # This makes setting the _LIBRARY and _LIBS variables actually a bit superfluos, since e.g. # the kdeui library could now also be used just as "KDE4__kdeui" and still have all their -- cgit v1.2.1 From e018549380e071f80dc01171446ff4bf9364292d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 22 Jun 2010 20:03:50 +0000 Subject: -consistenly use lowercasing in this file Alex svn path=/trunk/KDE/kdelibs/; revision=1141452 --- modules/FindPythonLibrary.cmake | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'modules') diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index d98cb621..e96d63e6 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -24,44 +24,44 @@ -INCLUDE(CMakeFindFrameworks) +include(CMakeFindFrameworks) if(EXISTS PYTHON_LIBRARY) # Already in cache, be silent set(PYTHONLIBRARY_FOUND TRUE) else(EXISTS PYTHON_LIBRARY) - FIND_PACKAGE(PythonInterp) + find_package(PythonInterp) if(PYTHONINTERP_FOUND) - FIND_FILE(_find_lib_python_py FindLibPython.py PATHS ${CMAKE_MODULE_PATH}) + find_file(_find_lib_python_py FindLibPython.py PATHS ${CMAKE_MODULE_PATH}) - EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_lib_python_py} OUTPUT_VARIABLE python_config) + execute_process(COMMAND ${PYTHON_EXECUTABLE} ${_find_lib_python_py} OUTPUT_VARIABLE python_config) if(python_config) - STRING(REGEX REPLACE ".*exec_prefix:([^\n]+).*$" "\\1" PYTHON_PREFIX ${python_config}) - STRING(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) - STRING(REGEX REPLACE ".*\nlong_version:([^\n]+).*$" "\\1" PYTHON_LONG_VERSION ${python_config}) - STRING(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" PYTHON_INCLUDE_PATH ${python_config}) + string(REGEX REPLACE ".*exec_prefix:([^\n]+).*$" "\\1" PYTHON_PREFIX ${python_config}) + string(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) + string(REGEX REPLACE ".*\nlong_version:([^\n]+).*$" "\\1" PYTHON_LONG_VERSION ${python_config}) + string(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" PYTHON_INCLUDE_PATH ${python_config}) if(NOT PYTHON_SITE_PACKAGES_DIR) if(NOT PYTHON_LIBS_WITH_KDE_LIBS) - STRING(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) + string(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) else(NOT PYTHON_LIBS_WITH_KDE_LIBS) set(PYTHON_SITE_PACKAGES_DIR ${KDE4_LIB_INSTALL_DIR}/python${PYTHON_SHORT_VERSION}/site-packages) endif(NOT PYTHON_LIBS_WITH_KDE_LIBS) endif(NOT PYTHON_SITE_PACKAGES_DIR) - STRING(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) + string(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) if(WIN32) - STRING(REPLACE "\\" "/" PYTHON_SITE_PACKAGES_DIR ${PYTHON_SITE_PACKAGES_DIR}) + string(REPLACE "\\" "/" PYTHON_SITE_PACKAGES_DIR ${PYTHON_SITE_PACKAGES_DIR}) endif(WIN32) - FIND_LIBRARY(PYTHON_LIBRARY NAMES ${PYTHON_LIBRARY_NAMES} PATHS ${PYTHON_PREFIX}/lib ${PYTHON_PREFIX}/libs NO_DEFAULT_PATH) + find_library(PYTHON_LIBRARY NAMES ${PYTHON_LIBRARY_NAMES} PATHS ${PYTHON_PREFIX}/lib ${PYTHON_PREFIX}/libs NO_DEFAULT_PATH) set(PYTHONLIBRARY_FOUND TRUE) endif(python_config) # adapted from cmake's builtin FindPythonLibs if(APPLE) - CMAKE_FIND_FRAMEWORKS(Python) + cmake_find_frameworks(Python) set(PYTHON_FRAMEWORK_INCLUDES) if(Python_FRAMEWORKS) # If a framework has been selected for the include path, -- cgit v1.2.1 From dce1cd0521e1e308910390d67a2b38856d5b42f4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 22 Jun 2010 20:39:03 +0000 Subject: -call FindLibPy.py directly from the same directory, no need to use find_file() here Alex svn path=/trunk/KDE/kdelibs/; revision=1141467 --- modules/FindPythonLibrary.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index e96d63e6..4fe427d0 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -35,9 +35,13 @@ else(EXISTS PYTHON_LIBRARY) if(PYTHONINTERP_FOUND) - find_file(_find_lib_python_py FindLibPython.py PATHS ${CMAKE_MODULE_PATH}) + # get the directory of the current file, used later on in the file + get_filename_component( _py_cmake_module_dir ${CMAKE_CURRENT_LIST_FILE} PATH) + if(NOT EXISTS "${_py_cmake_module_dir}/FindLibPython.py") + message(FATAL_ERROR "The file FindLibPython.py does not exist in ${_py_cmake_module_dir} (the directory where FindPythonLibrary.cmake is located). Check your installation.") + endif(NOT EXISTS "${_py_cmake_module_dir}/FindLibPython.py") - execute_process(COMMAND ${PYTHON_EXECUTABLE} ${_find_lib_python_py} OUTPUT_VARIABLE python_config) + execute_process(COMMAND ${PYTHON_EXECUTABLE} "${_py_cmake_module_dir}/FindLibPython.py" OUTPUT_VARIABLE python_config) if(python_config) string(REGEX REPLACE ".*exec_prefix:([^\n]+).*$" "\\1" PYTHON_PREFIX ${python_config}) string(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) -- cgit v1.2.1 From ae8fa5c09c8d92d87a32ec910cddd33c46f753fa Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 23 Jun 2010 20:51:06 +0000 Subject: -add cache variable PYTHON_SITE_PACKAGES_INSTALL_DIR, this can be used as install destination for python modules, PYTHON_SITE_PACKAGES_DIR should not be used, since this most probably requires root permissions- The new variable can be adjusted via the cache. Also, this patch removes the PYTHON_LIBS_WITH_KDE_LIBS switch, this was undocumented, and anything with "KDE" in the name shouldn't appear in "FindPythonLibrary.cmake". Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1141934 --- modules/FindPythonLibrary.cmake | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'modules') diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index 4fe427d0..7b4b9538 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -12,6 +12,11 @@ # PYTHON_LONG_VERSION - The version of the Python interpreter found as a human # readable string. # +# PYTHON_SITE_PACKAGES_INSTALL_DIR - this cache variable can be used for installing +# own python modules. You may want to adjust this to be the +# same as ${PYTHON_SITE_PACKAGES_DIR}, but then admin +# privileges may be required for installation. +# # PYTHON_SITE_PACKAGES_DIR - Location of the Python site-packages directory. # # PYTHON_INCLUDE_PATH - Directory holding the python.h include file. @@ -46,14 +51,17 @@ else(EXISTS PYTHON_LIBRARY) string(REGEX REPLACE ".*exec_prefix:([^\n]+).*$" "\\1" PYTHON_PREFIX ${python_config}) string(REGEX REPLACE ".*\nshort_version:([^\n]+).*$" "\\1" PYTHON_SHORT_VERSION ${python_config}) string(REGEX REPLACE ".*\nlong_version:([^\n]+).*$" "\\1" PYTHON_LONG_VERSION ${python_config}) - string(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" PYTHON_INCLUDE_PATH ${python_config}) - if(NOT PYTHON_SITE_PACKAGES_DIR) - if(NOT PYTHON_LIBS_WITH_KDE_LIBS) - string(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" PYTHON_SITE_PACKAGES_DIR ${python_config}) - else(NOT PYTHON_LIBS_WITH_KDE_LIBS) - set(PYTHON_SITE_PACKAGES_DIR ${KDE4_LIB_INSTALL_DIR}/python${PYTHON_SHORT_VERSION}/site-packages) - endif(NOT PYTHON_LIBS_WITH_KDE_LIBS) - endif(NOT PYTHON_SITE_PACKAGES_DIR) + + string(REGEX REPLACE ".*\npy_inc_dir:([^\n]+).*$" "\\1" _TMP_PYTHON_INCLUDE_PATH ${python_config}) + string(REGEX REPLACE ".*\nsite_packages_dir:([^\n]+).*$" "\\1" _TMP_PYTHON_SITE_PACKAGES_DIR ${python_config}) + + # Put these two variables in the cache so they are visible for the user, but read-only: + set(PYTHON_INCLUDE_PATH "${_TMP_PYTHON_INCLUDE_PATH}" CACHE PATH "The python include directory" FORCE) + set(PYTHON_SITE_PACKAGES_DIR "${_TMP_PYTHON_SITE_PACKAGES_DIR}" CACHE PATH "The python site packages dir" FORCE) + + # This one is intended to be used and changed by the user for installing own modules: + set(PYTHON_SITE_PACKAGES_INSTALL_DIR lib/python${PYTHON_SHORT_VERSION}/site-packages CACHE PATH "The directory where python modules will be installed to.") + string(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) if(WIN32) -- cgit v1.2.1 From 65bce8b61f24033d79d14f21b975cc18cbfcb2b7 Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Thu, 24 Jun 2010 20:43:06 +0000 Subject: Make PYTHON_SITE_PACKAGES_INSTALL_DIR honor LIB_SUFFIX. svn path=/trunk/KDE/kdelibs/; revision=1142400 --- modules/FindPythonLibrary.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index 7b4b9538..141037fc 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -60,7 +60,7 @@ else(EXISTS PYTHON_LIBRARY) set(PYTHON_SITE_PACKAGES_DIR "${_TMP_PYTHON_SITE_PACKAGES_DIR}" CACHE PATH "The python site packages dir" FORCE) # This one is intended to be used and changed by the user for installing own modules: - set(PYTHON_SITE_PACKAGES_INSTALL_DIR lib/python${PYTHON_SHORT_VERSION}/site-packages CACHE PATH "The directory where python modules will be installed to.") + set(PYTHON_SITE_PACKAGES_INSTALL_DIR lib${LIB_SUFFIX}/python${PYTHON_SHORT_VERSION}/site-packages CACHE PATH "The directory where python modules will be installed to.") string(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) -- cgit v1.2.1 From 856f2d3758d59e0d022b8e73e84079bfaa79dcc7 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Thu, 24 Jun 2010 21:26:01 +0000 Subject: -remove wrong status message, this was a left over from r882594 Alex svn path=/trunk/KDE/kdelibs/; revision=1142413 --- modules/FindAutomoc4.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindAutomoc4.cmake b/modules/FindAutomoc4.cmake index cbe7ad1e..e08ae802 100644 --- a/modules/FindAutomoc4.cmake +++ b/modules/FindAutomoc4.cmake @@ -53,4 +53,4 @@ else("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") endif("${KDESupport_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}") include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Automoc4 "Did not find automoc4 (part of kdesupport). Searched for Automoc4Config.cmake in ${AUTOMOC4_SEARCH_PATHS} using suffixes automoc4 lib/automoc4 lib64/automoc4." AUTOMOC4_EXECUTABLE) +find_package_handle_standard_args(Automoc4 "Did not find automoc4 (Automoc4Config.cmake, part of kdesupport)." AUTOMOC4_EXECUTABLE) -- cgit v1.2.1 From 03a9bf07f51693c64ff69dd67ebf45010573579a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20G=C3=A2teau?= Date: Tue, 29 Jun 2010 09:55:14 +0000 Subject: Updated libdbusmenu-qt url svn path=/trunk/KDE/kdelibs/; revision=1144002 --- modules/FindDBusMenuQt.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index b5ca9495..82673b7d 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -31,6 +31,6 @@ find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h PATH_SUFFIXES dbusmenu-qt ) -find_package_handle_standard_args(DBusMenuQt "Could not find dbusmenu-qt; available at http://people.canonical.com/~agateau/dbusmenu/" DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) +find_package_handle_standard_args(DBusMenuQt "Could not find dbusmenu-qt; available at https://launchpad.net/libdbusmenu-qt/" DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) -- cgit v1.2.1 From 2dcad1910fd134e5e94255fa8924b469207556cf Mon Sep 17 00:00:00 2001 From: Maciej Mrozowski Date: Wed, 30 Jun 2010 01:35:19 +0000 Subject: No need to force CMake colors anymore, see discussion http://lists.kde.org/?l=kde-buildsystem&m=127784710709842&w=2 svn path=/trunk/KDE/kdelibs/; revision=1144480 --- modules/KDE4Defaults.cmake | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 04c0ae2c..9663f089 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -18,10 +18,6 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) # since cmake 2.4.1 set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) -# Use colored output -# since cmake 2.4.0 -set(CMAKE_COLOR_MAKEFILE ON) - # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes # Use this version number for libraries which are at version n in KDE version n @@ -35,8 +31,8 @@ set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar # all searchable directories has to be defined by the PATH environment var # to reduce the number of required pathes executables are placed into -# the build bin dir +# the build bin dir if (WIN32) set (EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) # set (LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) -endif(WIN32) +endif(WIN32) -- cgit v1.2.1 From 83026babf1c1525a8d8f51f9ec879df2ae63a60a Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Wed, 30 Jun 2010 17:34:51 +0000 Subject: Separate Private class methods from public interface implementation. svn path=/trunk/KDE/kdelibs/; revision=1144740 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c9e8892f..b7e4b618 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -669,7 +669,7 @@ endif(_kdeBootStrapping OR TARGET ${KDE4_TARGET_PREFIX}nepomuk) # which helps with finding the phonon installed as part of kdesupport: # only make Phonon REQUIRED if KDE4 itself is REQUIRED -find_package(Phonon 4.3.80 ${_REQ_STRING_KDE4}) +find_package(Phonon ${_REQ_STRING_KDE4}) set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) set(KDE4_PHONON_LIBS ${PHONON_LIBS}) set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) -- cgit v1.2.1 From 8ee68189221ecd8390de20b3857f33033d2657e3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 30 Jun 2010 17:44:13 +0000 Subject: find docbook xsl also on slackware Alex svn path=/trunk/KDE/kdelibs/; revision=1144744 --- modules/FindDocBookXSL.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index 4d52c41a..cc273d52 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -12,6 +12,7 @@ set (STYLESHEET_PATH_LIST share/xml/docbook/stylesheet/docbook-xsl + share/xml/docbook/xsl-stylesheets share/sgml/docbook/xsl-stylesheets share/xml/docbook/stylesheet/nwalsh/current share/xml/docbook/stylesheet/nwalsh -- cgit v1.2.1 From 9d0754c3b36343d9d5a45e5c313cc5060e9d20e1 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Wed, 30 Jun 2010 18:00:23 +0000 Subject: Restore required phonon version. svn path=/trunk/KDE/kdelibs/; revision=1144749 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b7e4b618..c9e8892f 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -669,7 +669,7 @@ endif(_kdeBootStrapping OR TARGET ${KDE4_TARGET_PREFIX}nepomuk) # which helps with finding the phonon installed as part of kdesupport: # only make Phonon REQUIRED if KDE4 itself is REQUIRED -find_package(Phonon ${_REQ_STRING_KDE4}) +find_package(Phonon 4.3.80 ${_REQ_STRING_KDE4}) set(KDE4_PHONON_LIBRARY ${PHONON_LIBRARY}) set(KDE4_PHONON_LIBS ${PHONON_LIBS}) set(KDE4_PHONON_INCLUDES ${PHONON_INCLUDES}) -- cgit v1.2.1 From 41d23fc4e6ce5eefdae075804fe27c7c0bf2bb0d Mon Sep 17 00:00:00 2001 From: Nick Shaforostoff Date: Mon, 5 Jul 2010 20:49:28 +0000 Subject: KDE on windows: revert the part of 992670 commit that is not explained in the commit message. it broke release mode for visual studio (unconditionally setting kdewind as a library for linking) CCMAIL: Ralf.Habacker@saght.tessag.com svn path=/trunk/KDE/kdelibs/; revision=1146382 --- modules/FindKDEWin.cmake | 3 --- 1 file changed, 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index ee2983c4..9388713c 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -31,9 +31,6 @@ if (WIN32) else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) set (LIBRARY_NAME kdewin) endif (CMAKE_BUILD_TYPE_TOLOWER MATCHES debug) - if (MSVC_IDE ) - set (LIBRARY_NAME "kdewind") - endif (MSVC_IDE) find_library(KDEWIN_LIBRARY NAMES ${LIBRARY_NAME} -- cgit v1.2.1 From 3f5eb85b639506904ae8a3ee2eaa20518ee55578 Mon Sep 17 00:00:00 2001 From: Sjors Gielen Date: Tue, 6 Jul 2010 13:17:04 +0000 Subject: Fix target name assumption in KDE4_ADD_APP_ICON together with Alex Made error messages and variables in that macro be more clear, and fixed the documentation to reflect that svn path=/trunk/KDE/kdelibs/; revision=1146718 --- modules/FindKDE4Internal.cmake | 8 ++++---- modules/KDE4Macros.cmake | 26 +++++++++----------------- 2 files changed, 13 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c9e8892f..25a3e914 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -233,14 +233,14 @@ # # KDE4_ADD_APP_ICON (SRCS_VAR pattern) # adds an application icon to target source list. +# Make sure you have a 128x128 icon, or the icon won't display on Mac OS X. # Mac OSX notes : the application icon is added to a Mac OS X bundle so that Finder and friends show the right thing. # Win32 notes: the application icon(s) are compiled into the application # There is some workaround in kde4_add_kdeinit_executable to make it possible for those applications as well. # Parameters: -# SRCS_VAR - specifies the list of source files; this has to end in _SRCS or _KDEINIT_SRCS -# (see the replace stuff below) -# pattern - regular expression for searching application icons -# Example: KDE4_ADD_APP_ICON( myapp_SRCS "pics/cr*-myapp.png") +# SRCS_VAR - specifies the list of source files +# pattern - regular expression for searching application icons +# Example: KDE4_ADD_APP_ICON( myapp_SOURCES "pics/cr*-myapp.png") # Example: KDE4_ADD_APP_ICON( myapp_KDEINIT_SRCS "icons/oxygen/*/apps/myapp.png") # # KDE4_UPDATE_ICONCACHE() diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 16bc0217..93d18598 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1121,13 +1121,10 @@ macro (KDE4_ADD_WIN32_APP_ICON appsources) endmacro (KDE4_ADD_WIN32_APP_ICON) # adds application icon to target source list -# for detailled documentation see the top of FindKDE4Internal.cmake +# for detailed documentation see the top of FindKDE4Internal.cmake macro (KDE4_ADD_APP_ICON appsources pattern) - string(REPLACE _KDEINIT_SRCS "" target ${appsources}) - if(${appsources} STREQUAL ${target}) - string(REPLACE _SRCS "" target ${appsources}) - endif(${appsources} STREQUAL ${target}) - + set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${appsources}) + if (WIN32) find_program(PNG2ICO_EXECUTABLE NAMES png2ico) find_program(WINDRES_EXECUTABLE NAMES windres) @@ -1156,7 +1153,6 @@ macro (KDE4_ADD_APP_ICON appsources pattern) endif (fn MATCHES ".*128.*") endforeach (it) if (_icons) - set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) add_custom_command(OUTPUT ${_outfilename}.ico ${_outfilename}.rc COMMAND ${PNG2ICO_EXECUTABLE} ARGS --rcfile ${_outfilename}.rc ${_outfilename}.ico ${_icons} DEPENDS ${PNG2ICO_EXECUTABLE} ${_icons} @@ -1173,7 +1169,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) list(APPEND ${appsources} ${_outfilename}.rc) endif(MINGW) else(_icons) - message(STATUS "Unable to find a related icon for target ${target} - application will not have an application icon!") + message(STATUS "Unable to find a related icon that matches pattern ${pattern} for variable ${appsources} - application will not have an application icon!") endif(_icons) else(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE) message(STATUS "Unable to find the png2ico or windres utilities - application will not have an application icon!") @@ -1192,7 +1188,6 @@ macro (KDE4_ADD_APP_ICON appsources pattern) set (_icon ${it}) endif (it MATCHES ".*128.*") endforeach (it) - set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${target}) if (_icon) @@ -1204,27 +1199,24 @@ macro (KDE4_ADD_APP_ICON appsources pattern) ) # This will register the icon into the bundle - set(MACOSX_BUNDLE_ICON_FILE ${target}.icns) + set(MACOSX_BUNDLE_ICON_FILE ${appsources}.icns) # Append the icns file to the sources list so it will be a dependency to the # main target list(APPEND ${appsources} ${_outfilename}.icns) - # this doesn't seem to work for me - Use manual "install" instead - # TODO: test again with cmake 2.6 ? - # SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/${target}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) - - install(FILES ${_outfilename}.icns DESTINATION ${BIN_INSTALL_DIR}/${target}.app/Contents/Resources/) + # Install the icon into the Resources dir in the bundle + set_source_files_properties(${_outfilename}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) else(_icon) # TODO - try to scale a non-128 icon...? Try to convert an SVG on the fly? - message(STATUS "Unable to find an 128x128 icon for target ${target} - application will not have an application icon!") + message(STATUS "Unable to find an 128x128 icon that matches pattern ${pattern} for variable ${appsources} - application will not have an application icon!") endif(_icon) else(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) message(STATUS "Unable to find the sips and tiff2icns utilities - application will not have an application icon!") endif(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE) - endif(Q_WS_MAC) + endif(Q_WS_MAC) endmacro (KDE4_ADD_APP_ICON) -- cgit v1.2.1 From 786680cdb287a4f23429b45780037c86c55aafc1 Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Thu, 8 Jul 2010 19:18:02 +0000 Subject: Make PYTHON_SITE_PACKAGES_INSTALL_DIR an absolute path. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1147584 --- modules/FindPythonLibrary.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPythonLibrary.cmake b/modules/FindPythonLibrary.cmake index 141037fc..60567e29 100644 --- a/modules/FindPythonLibrary.cmake +++ b/modules/FindPythonLibrary.cmake @@ -60,7 +60,7 @@ else(EXISTS PYTHON_LIBRARY) set(PYTHON_SITE_PACKAGES_DIR "${_TMP_PYTHON_SITE_PACKAGES_DIR}" CACHE PATH "The python site packages dir" FORCE) # This one is intended to be used and changed by the user for installing own modules: - set(PYTHON_SITE_PACKAGES_INSTALL_DIR lib${LIB_SUFFIX}/python${PYTHON_SHORT_VERSION}/site-packages CACHE PATH "The directory where python modules will be installed to.") + set(PYTHON_SITE_PACKAGES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/python${PYTHON_SHORT_VERSION}/site-packages CACHE PATH "The directory where python modules will be installed to.") string(REGEX REPLACE "([0-9]+).([0-9]+)" "\\1\\2" PYTHON_SHORT_VERSION_NO_DOT ${PYTHON_SHORT_VERSION}) set(PYTHON_LIBRARY_NAMES python${PYTHON_SHORT_VERSION} python${PYTHON_SHORT_VERSION_NO_DOT}) -- cgit v1.2.1 From bc451d8de618decb1ddd20ca1539ca0b8a08fc87 Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Mon, 12 Jul 2010 13:39:10 +0000 Subject: - made kdelibs compile for wince - disabled some functionality for wince - changed some stuff to unicode functions svn path=/trunk/KDE/kdelibs/; revision=1149056 --- modules/FindKDE4Internal.cmake | 8 ++++- modules/FindKDEWin.cmake | 12 ++++++-- modules/FindQt4.cmake | 14 +++++++++ modules/FindSoprano.cmake | 8 +++++ modules/FindWcecompat.cmake | 66 ++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 105 insertions(+), 3 deletions(-) create mode 100644 modules/FindWcecompat.cmake (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 25a3e914..48395275 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -487,7 +487,13 @@ if (_kdeBootStrapping) if (WIN32) set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} ) # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC - set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + if (NOT WINCE) + set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) + else (NOT WINCE) + set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/meinproc4 ) + endif(NOT WINCE) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 ) set(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kauth-policy-gen ) diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index 9388713c..87076767 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -45,7 +45,11 @@ if (WIN32) if (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) set(KDEWIN_FOUND TRUE) # add needed system libs - set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) + if(NOT WINCE) + set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) + else(NOT WINCE) + set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} ws2 ) + endif(NOT WINCE) if (MINGW) #mingw compiler @@ -54,7 +58,11 @@ if (WIN32) # msvc compiler # add the MS SDK include directory if available file(TO_CMAKE_PATH "$ENV{MSSDK}" MSSDK_DIR) - set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + if (WINCE) + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${WCECOMPAT_INCLUDE_DIR} ${QT_INCLUDES} ${MSSDK_DIR}) + else(WINCE) + set(KDEWIN_INCLUDES ${KDEWIN_INCLUDE_DIR} ${KDEWIN_INCLUDE_DIR}/msvc ${QT_INCLUDES} ${MSSDK_DIR}) + endif(WINCE) endif (MINGW) endif (KDEWIN_LIBRARY AND KDEWIN_INCLUDE_DIR) diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 0aba8dc7..a4908ebb 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -1097,6 +1097,7 @@ IF (QT4_QMAKE_FOUND) NO_DEFAULT_PATH ) +if(NOT WINCE) FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE NAMES qdbuscpp2xml PATHS ${QT_BINARY_DIR} @@ -1108,6 +1109,19 @@ IF (QT4_QMAKE_FOUND) PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH ) +else(NOT WINCE) + FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE + NAMES qdbuscpp2xml + PATHS ${HOST_BINDIR} + NO_DEFAULT_PATH + ) + + FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE + NAMES qdbusxml2cpp + PATHS ${HOST_BINDIR} + NO_DEFAULT_PATH + ) +endif(NOT WINCE) FIND_PROGRAM(QT_LUPDATE_EXECUTABLE NAMES lupdate-qt4 lupdate diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 4cc4334a..e9d8ce36 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -52,12 +52,20 @@ find_program(SOPRANO_SOPRANOCMD_EXECUTABLE ${KDE4_BIN_INSTALL_DIR} ) +if(NOT WINCE) find_program(SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE NAMES onto2vocabularyclass HINTS ${BIN_INSTALL_DIR} ${KDE4_BIN_INSTALL_DIR} ) +else(NOT WINCE) +find_program(SOPRANO_ONTO2VOCABULARYCLASS_EXECUTABLE + NAMES onto2vocabularyclass + PATHS ${HOST_BINDIR} + NO_DEFAULT_PATH + ) +endif(NOT WINCE) find_path(SOPRANO_INCLUDE_DIR diff --git a/modules/FindWcecompat.cmake b/modules/FindWcecompat.cmake new file mode 100644 index 00000000..c9603470 --- /dev/null +++ b/modules/FindWcecompat.cmake @@ -0,0 +1,66 @@ +# Try to find Wcecompat functionality +# Once done this will define +# +# WCECOMPAT_FOUND - system has Wcecompat +# WCECOMPAT_INCLUDE_DIR - Wcecompat include directory +# WCECOMPAT_LIBRARIES - Libraries needed to use Wcecompat +# +# Copyright (c) 2010, Andreas Holzammer, +# +# Redistribution and use is allowed according to the terms of the BSD license. + +if(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) + set(Wcecompat_FIND_QUIETLY TRUE) +endif(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) + +find_path(WCECOMPAT_INCLUDE_DIR errno.h PATH_SUFFIXES wcecompat) + +set(WCECOMPAT_LIB_FOUND FALSE) + +if(WCECOMPAT_INCLUDE_DIR) + find_library(WCECOMPAT_LIBRARIES NAMES wcecompat wcecompatex ) + + if(WCECOMPAT_LIBRARIES) + set(WCECOMPAT_LIB_FOUND TRUE) + endif(WCECOMPAT_LIBRARIES) +endif(WCECOMPAT_INCLUDE_DIR) + +# I have no idea what this is about, but it seems to be used quite often, so I add this here +set(WCECOMPAT_CONST const) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Wcecompat DEFAULT_MSG WCECOMPAT_LIBRARIES WCECOMPAT_LIB_FOUND) + +# Try to find Wcecompat functionality +# Once done this will define +# +# WCECOMPAT_FOUND - system has Wcecompat +# WCECOMPAT_INCLUDE_DIR - Wcecompat include directory +# WCECOMPAT_LIBRARIES - Libraries needed to use Wcecompat +# +# Copyright (c) 2010, Andreas Holzammer, +# +# Redistribution and use is allowed according to the terms of the BSD license. + +if(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) + set(Wcecompat_FIND_QUIETLY TRUE) +endif(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) + +find_path(WCECOMPAT_INCLUDE_DIR errno.h PATH_SUFFIXES wcecompat) + +set(WCECOMPAT_LIB_FOUND FALSE) + +if(WCECOMPAT_INCLUDE_DIR) + find_library(WCECOMPAT_LIBRARIES NAMES wcecompat wcecompatex ) + + if(WCECOMPAT_LIBRARIES) + set(WCECOMPAT_LIB_FOUND TRUE) + endif(WCECOMPAT_LIBRARIES) +endif(WCECOMPAT_INCLUDE_DIR) + +# I have no idea what this is about, but it seems to be used quite often, so I add this here +set(WCECOMPAT_CONST const) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Wcecompat DEFAULT_MSG WCECOMPAT_LIBRARIES WCECOMPAT_LIB_FOUND) + -- cgit v1.2.1 From 8348a3bc70e2502d4c3406a1c39045c3b8a7d6e5 Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Mon, 12 Jul 2010 15:43:38 +0000 Subject: - fixed some find scripts for wince svn path=/trunk/KDE/kdelibs/; revision=1149092 --- modules/FindKDE4Internal.cmake | 8 +++++++- modules/KDE4Macros.cmake | 4 ++-- 2 files changed, 9 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 48395275..d8a011b5 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -505,9 +505,10 @@ if (_kdeBootStrapping) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4${CMAKE_EXECUTABLE_SUFFIX}.shell ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets${CMAKE_EXECUTABLE_SUFFIX}.shell ) endif (WIN32) - + set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) + # when building kdelibs, make the kcfg rules depend on the binaries... set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler) set( _KDE4_KAUTH_POLICY_GEN_EXECUTABLE_DEP kauth-policy-gen) @@ -577,8 +578,13 @@ else (_kdeBootStrapping) get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS ) list(GET _importedConfigurations 0 _firstConfig) + if(NOT WINCE) get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig}) get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${_firstConfig}) + else(NOT WINCE) + set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler ) + set(KDE4_MEINPROC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/meinproc4 ) + endif(NOT WINCE) get_target_property(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${KDE4_TARGET_PREFIX}kauth-policy-gen LOCATION_${_firstConfig}) get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${_firstConfig}) diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 93d18598..c235b34e 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1094,7 +1094,7 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) macro (KDE4_ADD_WIN32_APP_ICON appsources) message(STATUS "KDE4_ADD_WIN32_APP_ICON() is deprecated, use KDE4_ADD_APP_ICON() instead") if (WIN32) - find_program(PNG2ICO_EXECUTABLE NAMES png2ico) + find_program(PNG2ICO_EXECUTABLE NAMES png2ico PATHS ${HOST_BINDIR} NO_DEFAULT_PATH ) find_program(WINDRES_EXECUTABLE NAMES windres) if(MSVC) set(WINDRES_EXECUTABLE TRUE) @@ -1126,7 +1126,7 @@ macro (KDE4_ADD_APP_ICON appsources pattern) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${appsources}) if (WIN32) - find_program(PNG2ICO_EXECUTABLE NAMES png2ico) + find_program(PNG2ICO_EXECUTABLE NAMES png2ico PATHS ${HOST_BINDIR} NO_DEFAULT_PATH ) find_program(WINDRES_EXECUTABLE NAMES windres) if(MSVC) set(WINDRES_EXECUTABLE TRUE) -- cgit v1.2.1 From c2c96d0fa3d2d48e1725506bb054d2a6b1b54978 Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Tue, 13 Jul 2010 07:07:00 +0000 Subject: - disabled nepomuk backends for wince at this time, because we dont have backend at this time - needs to be fixt in the future svn path=/trunk/KDE/kdelibs/; revision=1149282 --- modules/FindNepomuk.cmake | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index fc4a610b..0a24bdb6 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -66,11 +66,20 @@ mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES N include(FindPackageHandleStandardArgs) # List all nepomuk and also all necessary soprano variables here, to make it # easier for the user to see what was missing: +if(NOT WINCE) find_package_handle_standard_args(Nepomuk DEFAULT_MSG NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR NEPOMUK_ADDONTOLOGYCLASSES_FILE Soprano_FOUND SOPRANO_PLUGIN_RAPTORPARSER_FOUND SOPRANO_PLUGIN_REDLANDBACKEND_FOUND SHAREDDESKTOPONTOLOGIES_FOUND ) +else(NOT WINCE) +#FIXME: There are no backends at this time +find_package_handle_standard_args(Nepomuk DEFAULT_MSG + NEPOMUK_LIBRARIES NEPOMUK_INCLUDE_DIR NEPOMUK_ADDONTOLOGYCLASSES_FILE + Soprano_FOUND + SHAREDDESKTOPONTOLOGIES_FOUND + ) +endif(NOT WINCE) #to retain backward compatibility set (Nepomuk_FOUND ${NEPOMUK_FOUND}) -- cgit v1.2.1 From bd1362891b49d7477faf5b06a2b821adb4f90809 Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Tue, 13 Jul 2010 09:57:04 +0000 Subject: - changed findscript for wince to find the host generator svn path=/trunk/KDE/kdelibs/; revision=1149380 --- modules/NepomukAddOntologyClasses.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/NepomukAddOntologyClasses.cmake b/modules/NepomukAddOntologyClasses.cmake index 687db6ef..68a2faee 100644 --- a/modules/NepomukAddOntologyClasses.cmake +++ b/modules/NepomukAddOntologyClasses.cmake @@ -53,8 +53,12 @@ macro(NEPOMUK_ADD_ONTOLOGY_CLASSES _sources) endforeach(_arg) # find our helper program (first in the install dir, then everywhere) + if(NOT WINCE) find_program(RCGEN nepomuk-rcgen PATHS ${KDE4_BIN_INSTALL_DIR} ${BIN_INSTALL_DIR} NO_DEFAULT_PATH) find_program(RCGEN nepomuk-rcgen) + else(NOT WINCE) + find_program(RCGEN nepomuk-rcgen PATHS ${HOST_BINDIR} NO_DEFAULT_PATH) + endif(NOT WINCE) if(NOT RCGEN) message(SEND_ERROR "Failed to find the Nepomuk source generator" ) -- cgit v1.2.1 From 90db91b07d78008629b210b69109e636ed8df209 Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Tue, 13 Jul 2010 15:01:26 +0000 Subject: - added wcecompat as dependency of kdewin so that if kdewin is linked wcecompat is also linked svn path=/trunk/KDE/kdelibs/; revision=1149495 --- modules/FindKDEWin.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDEWin.cmake b/modules/FindKDEWin.cmake index 87076767..f9b7bf00 100644 --- a/modules/FindKDEWin.cmake +++ b/modules/FindKDEWin.cmake @@ -14,7 +14,13 @@ if (WIN32) + + if(WINCE) + FIND_PACKAGE(WCECOMPAT REQUIRED) + endif(WINCE) + if (NOT KDEWIN_LIBRARY) + find_path(KDEWIN_INCLUDE_DIR kdewin_export.h ${KDE4_INCLUDE_DIR} @@ -48,7 +54,7 @@ if (WIN32) if(NOT WINCE) set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} user32 shell32 ws2_32 netapi32 userenv) else(NOT WINCE) - set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} ws2 ) + set(KDEWIN_LIBRARIES ${KDEWIN_LIBRARY} ws2 ${WCECOMPAT_LIBRARIES}) endif(NOT WINCE) if (MINGW) -- cgit v1.2.1 From c4121ccdf7bee285338b7d591e18ce756a5595ad Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Wed, 14 Jul 2010 11:36:01 +0000 Subject: - find for wince the right xsltproc svn path=/trunk/KDE/kdelibs/; revision=1149808 --- modules/FindLibXslt.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index 1c55c4c5..58d2e1d1 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -50,7 +50,11 @@ ELSE (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) SET(LIBXSLT_FOUND FALSE) ENDIF (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES) +if(NOT WINCE) FIND_PROGRAM(LIBXSLT_XSLTPROC_EXECUTABLE xsltproc) +else(NOT WINCE) +FIND_PROGRAM(LIBXSLT_XSLTPROC_EXECUTABLE xsltproc PATHS ${HOST_BINDIR} NO_DEFAULT_PATH) +endif(NOT WINCE) # For compatibility with FindLibXslt.cmake from KDE 4.[01].x SET(XSLTPROC_EXECUTABLE ${LIBXSLT_XSLTPROC_EXECUTABLE}) -- cgit v1.2.1 From 7d4801824eef8a80d71ada8c9dc3141d1cbe1a99 Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Thu, 15 Jul 2010 06:54:49 +0000 Subject: - fixed finding of png2ico for desktop builds svn path=/trunk/KDE/kdelibs/; revision=1150127 --- modules/KDE4Macros.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index c235b34e..9c7f7e59 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -1094,7 +1094,11 @@ endmacro (KDE4_CREATE_HTML_HANDBOOK) macro (KDE4_ADD_WIN32_APP_ICON appsources) message(STATUS "KDE4_ADD_WIN32_APP_ICON() is deprecated, use KDE4_ADD_APP_ICON() instead") if (WIN32) + if(NOT WINCE) + find_program(PNG2ICO_EXECUTABLE NAMES png2ico) + else(NOT WINCE) find_program(PNG2ICO_EXECUTABLE NAMES png2ico PATHS ${HOST_BINDIR} NO_DEFAULT_PATH ) + endif(NOT WINCE) find_program(WINDRES_EXECUTABLE NAMES windres) if(MSVC) set(WINDRES_EXECUTABLE TRUE) @@ -1126,7 +1130,11 @@ macro (KDE4_ADD_APP_ICON appsources pattern) set (_outfilename ${CMAKE_CURRENT_BINARY_DIR}/${appsources}) if (WIN32) + if(NOT WINCE) + find_program(PNG2ICO_EXECUTABLE NAMES png2ico) + else(NOT WINCE) find_program(PNG2ICO_EXECUTABLE NAMES png2ico PATHS ${HOST_BINDIR} NO_DEFAULT_PATH ) + endif(NOT WINCE) find_program(WINDRES_EXECUTABLE NAMES windres) if(MSVC) set(WINDRES_EXECUTABLE TRUE) -- cgit v1.2.1 From 62d58247c72452cfab863aee1b55463978831eea Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 17 Jul 2010 15:51:59 +0000 Subject: add debug area for the new kdepimlibs/kcalcore library svn path=/trunk/KDE/kdelibs/; revision=1151050 --- modules/FindKdepimLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index c9a8148d..68bacfb0 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -14,6 +14,7 @@ # KDEPIMLIBS_KABC_LIBS # KDEPIMLIBS_KBLOG_LIBS # KDEPIMLIBS_KCAL_LIBS +# KDEPIMLIBS_KCALCORE_LIBS # KDEPIMLIBS_KHOLIDAYS_LIBS # KDEPIMLIBS_KIMAP_LIBS # KDEPIMLIBS_KLDAP_LIBS -- cgit v1.2.1 From 6116010a0fe2c4843882849cbb2aad85fd8e6ab5 Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Sun, 18 Jul 2010 14:48:55 +0000 Subject: install FindWcecompat.cmake (needed by FindKDEWin.cmake) svn path=/trunk/KDE/kdelibs/; revision=1151234 --- modules/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index e7d8c38a..637f8cab 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -117,6 +117,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindStrigi.cmake FindTaglib.cmake FindUSB.cmake + FindWcecompat.cmake FindX11.cmake FindXKB.cmake FindXine.cmake -- cgit v1.2.1 From 5d52b7a691af7fc521e62ddce65ed3bc8fb09f51 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 18 Jul 2010 15:05:58 +0000 Subject: add a debug area for kcalutils svn path=/trunk/KDE/kdelibs/; revision=1151236 --- modules/FindKdepimLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindKdepimLibs.cmake b/modules/FindKdepimLibs.cmake index 68bacfb0..11e4f38d 100644 --- a/modules/FindKdepimLibs.cmake +++ b/modules/FindKdepimLibs.cmake @@ -15,6 +15,7 @@ # KDEPIMLIBS_KBLOG_LIBS # KDEPIMLIBS_KCAL_LIBS # KDEPIMLIBS_KCALCORE_LIBS +# KDEPIMLIBS_KCALUTILS_LIBS # KDEPIMLIBS_KHOLIDAYS_LIBS # KDEPIMLIBS_KIMAP_LIBS # KDEPIMLIBS_KLDAP_LIBS -- cgit v1.2.1 From 74be49bb8ab1e89f6179dfdd65598e1cccc89e20 Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Fri, 23 Jul 2010 16:15:52 +0000 Subject: Make ADD_SIP_PYTHON_MODULE( test example.sip ...) work. Notice that there is no directory part before example.sip. This should have no impact on existing code. CCMAIL: kde-bindings@kde-org svn path=/trunk/KDE/kdelibs/; revision=1153601 --- modules/SIPMacros.cmake | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/SIPMacros.cmake b/modules/SIPMacros.cmake index 6096ccb6..f5805a38 100644 --- a/modules/SIPMacros.cmake +++ b/modules/SIPMacros.cmake @@ -50,6 +50,13 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) GET_FILENAME_COMPONENT(_child_module_name ${_x} NAME) GET_FILENAME_COMPONENT(_module_path ${MODULE_SIP} PATH) + + if(_module_path STREQUAL "") + set(CMAKE_CURRENT_SIP_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}") + else(_module_path STREQUAL "") + set(CMAKE_CURRENT_SIP_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/${_module_path}") + endif(_module_path STREQUAL "") + GET_FILENAME_COMPONENT(_abs_module_sip ${MODULE_SIP} ABSOLUTE) # We give this target a long logical target name. @@ -59,7 +66,7 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) STRING(REPLACE "." "_" _logical_name ${MODULE_NAME}) SET(_logical_name "python_module_${_logical_name}") - FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_module_path}) # Output goes in this dir. + FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_SIP_OUTPUT_DIR}) # Output goes in this dir. SET(_sip_includes) FOREACH (_inc ${SIP_INCLUDES}) @@ -81,7 +88,7 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) SET(_sip_output_files) FOREACH(CONCAT_NUM RANGE 0 ${SIP_CONCAT_PARTS} ) IF( ${CONCAT_NUM} LESS ${SIP_CONCAT_PARTS} ) - SET(_sip_output_files ${_sip_output_files} ${CMAKE_CURRENT_BINARY_DIR}/${_module_path}/sip${_child_module_name}part${CONCAT_NUM}.cpp ) + SET(_sip_output_files ${_sip_output_files} ${CMAKE_CURRENT_SIP_OUTPUT_DIR}/sip${_child_module_name}part${CONCAT_NUM}.cpp ) ENDIF( ${CONCAT_NUM} LESS ${SIP_CONCAT_PARTS} ) ENDFOREACH(CONCAT_NUM RANGE 0 ${SIP_CONCAT_PARTS} ) @@ -99,7 +106,7 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) OUTPUT ${_sip_output_files} COMMAND ${CMAKE_COMMAND} -E echo ${message} COMMAND ${TOUCH_COMMAND} ${_sip_output_files} - COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} ${_sip_includes} ${_abs_module_sip} + COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_SIP_OUTPUT_DIR} ${_sip_includes} ${_abs_module_sip} DEPENDS ${_abs_module_sip} ${SIP_EXTRA_FILES_DEPEND} ) # not sure if type MODULE could be uses anywhere, limit to cygwin for now -- cgit v1.2.1 From 91d46ffaa552f2f25ce0976511779f5a72383ade Mon Sep 17 00:00:00 2001 From: Michael Jansen Date: Fri, 23 Jul 2010 16:15:53 +0000 Subject: Use PYTHON_SITE_PACKAGES_INSTALL_DIR for installing python modules. See FindPythonLibrary.cmake for an explanation of the variable. CCMAIL: kde-bindings@kde.org svn path=/trunk/KDE/kdelibs/; revision=1153602 --- modules/SIPMacros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/SIPMacros.cmake b/modules/SIPMacros.cmake index f5805a38..28c1cf4c 100644 --- a/modules/SIPMacros.cmake +++ b/modules/SIPMacros.cmake @@ -119,6 +119,6 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP) TARGET_LINK_LIBRARIES(${_logical_name} ${EXTRA_LINK_LIBRARIES}) SET_TARGET_PROPERTIES(${_logical_name} PROPERTIES PREFIX "" OUTPUT_NAME ${_child_module_name}) - INSTALL(TARGETS ${_logical_name} DESTINATION "${PYTHON_SITE_PACKAGES_DIR}/${_parent_module_path}") + INSTALL(TARGETS ${_logical_name} DESTINATION "${PYTHON_SITE_PACKAGES_INSTALL_DIR}/${_parent_module_path}") ENDMACRO(ADD_SIP_PYTHON_MODULE) -- cgit v1.2.1 From 50ddbcc1bd2226ba38b3f7a8707430f0319a60a1 Mon Sep 17 00:00:00 2001 From: Romain Pokrzywka Date: Mon, 26 Jul 2010 20:08:32 +0000 Subject: remove accidental content duplication and unneeded lines after review CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=1155054 --- modules/FindWcecompat.cmake | 41 ----------------------------------------- 1 file changed, 41 deletions(-) (limited to 'modules') diff --git a/modules/FindWcecompat.cmake b/modules/FindWcecompat.cmake index c9603470..f3c26c31 100644 --- a/modules/FindWcecompat.cmake +++ b/modules/FindWcecompat.cmake @@ -9,10 +9,6 @@ # # Redistribution and use is allowed according to the terms of the BSD license. -if(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) - set(Wcecompat_FIND_QUIETLY TRUE) -endif(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) - find_path(WCECOMPAT_INCLUDE_DIR errno.h PATH_SUFFIXES wcecompat) set(WCECOMPAT_LIB_FOUND FALSE) @@ -25,42 +21,5 @@ if(WCECOMPAT_INCLUDE_DIR) endif(WCECOMPAT_LIBRARIES) endif(WCECOMPAT_INCLUDE_DIR) -# I have no idea what this is about, but it seems to be used quite often, so I add this here -set(WCECOMPAT_CONST const) - include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Wcecompat DEFAULT_MSG WCECOMPAT_LIBRARIES WCECOMPAT_LIB_FOUND) - -# Try to find Wcecompat functionality -# Once done this will define -# -# WCECOMPAT_FOUND - system has Wcecompat -# WCECOMPAT_INCLUDE_DIR - Wcecompat include directory -# WCECOMPAT_LIBRARIES - Libraries needed to use Wcecompat -# -# Copyright (c) 2010, Andreas Holzammer, -# -# Redistribution and use is allowed according to the terms of the BSD license. - -if(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) - set(Wcecompat_FIND_QUIETLY TRUE) -endif(WCECOMPAT_INCLUDE_DIR AND WCECOMPAT_LIB_FOUND) - -find_path(WCECOMPAT_INCLUDE_DIR errno.h PATH_SUFFIXES wcecompat) - -set(WCECOMPAT_LIB_FOUND FALSE) - -if(WCECOMPAT_INCLUDE_DIR) - find_library(WCECOMPAT_LIBRARIES NAMES wcecompat wcecompatex ) - - if(WCECOMPAT_LIBRARIES) - set(WCECOMPAT_LIB_FOUND TRUE) - endif(WCECOMPAT_LIBRARIES) -endif(WCECOMPAT_INCLUDE_DIR) - -# I have no idea what this is about, but it seems to be used quite often, so I add this here -set(WCECOMPAT_CONST const) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Wcecompat DEFAULT_MSG WCECOMPAT_LIBRARIES WCECOMPAT_LIB_FOUND) - -- cgit v1.2.1 From 2fd2df5f9dc882fb455abcdc4ca9674c8ed9e654 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 28 Jul 2010 19:09:22 +0000 Subject: -extend the documentation for KDE4_ADD_LIBRARY() a bit -remove wrong comment about WITH_PREFIX -CMP0011 is now always there since we require cmake 2.6.4 Alex svn path=/trunk/KDE/kdelibs/; revision=1156242 --- modules/FindKDE4Internal.cmake | 11 ++++++----- modules/KDE4Macros.cmake | 1 - 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d8a011b5..35f8e507 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -216,8 +216,11 @@ # to the proper location when installing, so RUN_UNINSTALLED is not necessary anymore). # # KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) -# Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL -# and under Windows it adds a -DMAKE__LIB definition to the compilation. +# Equivalent to ADD_LIBRARY(). Additionally it supports KDE4_ENABLE_FINAL, +# includes automoc-handling and sets LINK_INTERFACE_LIBRARIES target property empty. +# The RPATH is set according to the global RPATH settings as set up by FindKDE4Internal.cmake +# (CMAKE_SKIP_BUILD_RPATH=FALSE, CMAKE_BUILD_WITH_INSTALL_RPATH=FALSE, CMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE) +# Under Windows it adds a -DMAKE__LIB definition to the compilation. # # KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN) # add a unit test, which is executed when running make test @@ -347,9 +350,7 @@ cmake_policy(SET CMP0005 OLD) # where this is done, macros and functions are executed with the policies as they # were when the were defined. Keep the OLD behaviour so we can set the policies here # for all KDE software without the big warning -if(POLICY CMP0011) - cmake_policy(SET CMP0011 OLD) -endif(POLICY CMP0011) +cmake_policy(SET CMP0011 OLD) # Only do something if it hasn't been found yet diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 9c7f7e59..fc66b481 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -971,7 +971,6 @@ endmacro (KDE4_ADD_EXECUTABLE) macro (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) -#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty set(_first_SRC ${_lib_TYPE}) set(_add_lib_param) -- cgit v1.2.1 From 7bd76232103ea7e1a01d35c59e4cd25fddfd0433 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sat, 31 Jul 2010 12:54:45 +0000 Subject: 4.5 -> 4.6 svn path=/trunk/KDE/kdelibs/; revision=1157534 --- modules/FindKDE4Internal.cmake | 4 ++-- modules/KDE4Defaults.cmake | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 35f8e507..437bb850 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1339,13 +1339,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.5 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.6 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find the KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.5 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.6 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find the KDE 4 core library") endif(KDE4_LIB_DIR) diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 9663f089..59fc977d 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -21,11 +21,11 @@ set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes # Use this version number for libraries which are at version n in KDE version n -set(GENERIC_LIB_VERSION "4.5.0") +set(GENERIC_LIB_VERSION "4.6.0") set(GENERIC_LIB_SOVERSION "4") # Use this version number for libraries which are already at version n+1 in KDE version n -set(KDE_NON_GENERIC_LIB_VERSION "5.5.0") +set(KDE_NON_GENERIC_LIB_VERSION "5.6.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar -- cgit v1.2.1 From 8773fa29dcfeddc45d4255768f940d5776e9f5c3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 24 Aug 2010 19:49:35 +0000 Subject: -use consistently all lowercase here Alex svn path=/trunk/KDE/kdelibs/; revision=1167505 --- modules/FindAvahi.cmake | 11 ++--------- modules/FindBerkeleyDB.cmake | 6 +++--- 2 files changed, 5 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindAvahi.cmake b/modules/FindAvahi.cmake index 129e68a6..c6e055f0 100644 --- a/modules/FindAvahi.cmake +++ b/modules/FindAvahi.cmake @@ -6,17 +6,10 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (AVAHI_INCLUDE_DIR) - # Already in cache, be silent - set(Avahi_FIND_QUIETLY TRUE) -endif (AVAHI_INCLUDE_DIR) - - -FIND_PATH(AVAHI_INCLUDE_DIR avahi-common/defs.h) +find_path(AVAHI_INCLUDE_DIR avahi-common/defs.h) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Avahi DEFAULT_MSG AVAHI_INCLUDE_DIR) - -MARK_AS_ADVANCED(AVAHI_INCLUDE_DIR) +mark_as_advanced(AVAHI_INCLUDE_DIR) diff --git a/modules/FindBerkeleyDB.cmake b/modules/FindBerkeleyDB.cmake index 749f1664..021d9428 100644 --- a/modules/FindBerkeleyDB.cmake +++ b/modules/FindBerkeleyDB.cmake @@ -11,15 +11,15 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -FIND_PATH(BERKELEY_DB_INCLUDE_DIR db.h +find_path(BERKELEY_DB_INCLUDE_DIR db.h /usr/include/db4 /usr/local/include/db4 ) -FIND_LIBRARY(BERKELEY_DB_LIBRARIES NAMES db ) +find_library(BERKELEY_DB_LIBRARIES NAMES db ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Berkeley "Could not find Berkeley DB >= 4.1" BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES) # show the BERKELEY_DB_INCLUDE_DIR and BERKELEY_DB_LIBRARIES variables only in the advanced view -MARK_AS_ADVANCED(BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES ) +mark_as_advanced(BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES ) -- cgit v1.2.1 From 0c17e8963e4a6e144561b4c541d85986f029abba Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 24 Aug 2010 19:54:56 +0000 Subject: -fix indentation, all lower-case Alex svn path=/trunk/KDE/kdelibs/; revision=1167511 --- modules/NepomukAddOntologyClasses.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/NepomukAddOntologyClasses.cmake b/modules/NepomukAddOntologyClasses.cmake index 68a2faee..6a49a5a9 100644 --- a/modules/NepomukAddOntologyClasses.cmake +++ b/modules/NepomukAddOntologyClasses.cmake @@ -54,20 +54,20 @@ macro(NEPOMUK_ADD_ONTOLOGY_CLASSES _sources) # find our helper program (first in the install dir, then everywhere) if(NOT WINCE) - find_program(RCGEN nepomuk-rcgen PATHS ${KDE4_BIN_INSTALL_DIR} ${BIN_INSTALL_DIR} NO_DEFAULT_PATH) - find_program(RCGEN nepomuk-rcgen) + find_program(RCGEN nepomuk-rcgen PATHS ${KDE4_BIN_INSTALL_DIR} ${BIN_INSTALL_DIR} NO_DEFAULT_PATH) + find_program(RCGEN nepomuk-rcgen) else(NOT WINCE) - find_program(RCGEN nepomuk-rcgen PATHS ${HOST_BINDIR} NO_DEFAULT_PATH) + find_program(RCGEN nepomuk-rcgen PATHS ${HOST_BINDIR} NO_DEFAULT_PATH) endif(NOT WINCE) if(NOT RCGEN) message(SEND_ERROR "Failed to find the Nepomuk source generator" ) else(NOT RCGEN) - FILE(TO_NATIVE_PATH ${RCGEN} RCGEN) + file(TO_NATIVE_PATH ${RCGEN} RCGEN) # we generate the files in the current binary dir set(_targetdir ${CMAKE_CURRENT_BINARY_DIR}) - + # generate the list of source and header files execute_process( COMMAND ${RCGEN} ${_fastmode} --listheaders --prefix ${_targetdir}/ ${_classes} ${_visibility} ${_ontologies} @@ -86,7 +86,7 @@ macro(NEPOMUK_ADD_ONTOLOGY_CLASSES _sources) if(NOT ${rcgen_result} EQUAL 0) message(SEND_ERROR "Running ${RCGEN} to generate list of sources failed with error code ${rcgen_result}") endif(NOT ${rcgen_result} EQUAL 0) - + add_custom_command(OUTPUT ${_out_headers} ${_out_sources} COMMAND ${RCGEN} ${_fastmode} --writeall --target ${_targetdir}/ ${_classes} ${_visibility} ${_ontologies} DEPENDS ${_ontologies} -- cgit v1.2.1 From 4051cfa096f4fa11e6cea0950970e741140cdd0d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 24 Aug 2010 20:05:51 +0000 Subject: -use consistent casing within each file, remove unnecessary checks Alex svn path=/trunk/KDE/kdelibs/; revision=1167513 --- modules/FindBlueZ.cmake | 10 +++++----- modules/FindEigen.cmake | 9 --------- modules/FindFAM.cmake | 7 +------ modules/FindFontconfig.cmake | 4 ++-- 4 files changed, 8 insertions(+), 22 deletions(-) (limited to 'modules') diff --git a/modules/FindBlueZ.cmake b/modules/FindBlueZ.cmake index 8332797f..b1577d31 100644 --- a/modules/FindBlueZ.cmake +++ b/modules/FindBlueZ.cmake @@ -17,7 +17,7 @@ if ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) # in cache already - SET(BlueZ_FIND_QUIETLY TRUE) + set(BlueZ_FIND_QUIETLY TRUE) endif ( BLUEZ_INCLUDE_DIR AND BLUEZ_LIBRARIES ) # use pkg-config to get the directories and then use these values @@ -30,22 +30,22 @@ if( NOT WIN32 ) set(BLUEZ_DEFINITIONS ${PC_BLUEZ_CFLAGS_OTHER}) endif( NOT WIN32 ) -FIND_PATH(BLUEZ_INCLUDE_DIR NAMES bluetooth/bluetooth.h +find_path(BLUEZ_INCLUDE_DIR NAMES bluetooth/bluetooth.h PATHS ${PC_BLUEZ_INCLUDEDIR} ${PC_BLUEZ_INCLUDE_DIRS} /usr/X11/include ) -FIND_LIBRARY(BLUEZ_LIBRARIES NAMES bluetooth +find_library(BLUEZ_LIBRARIES NAMES bluetooth PATHS ${PC_BLUEZ_LIBDIR} ${PC_BLUEZ_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(BlueZ DEFAULT_MSG BLUEZ_INCLUDE_DIR BLUEZ_LIBRARIES ) +find_package_handle_standard_args(BlueZ DEFAULT_MSG BLUEZ_INCLUDE_DIR BLUEZ_LIBRARIES ) # show the BLUEZ_INCLUDE_DIR and BLUEZ_LIBRARIES variables only in the advanced view -MARK_AS_ADVANCED(BLUEZ_INCLUDE_DIR BLUEZ_LIBRARIES ) +mark_as_advanced(BLUEZ_INCLUDE_DIR BLUEZ_LIBRARIES ) diff --git a/modules/FindEigen.cmake b/modules/FindEigen.cmake index c65cb8dc..805deb2d 100644 --- a/modules/FindEigen.cmake +++ b/modules/FindEigen.cmake @@ -11,13 +11,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (EIGEN_INCLUDE_DIR) - - # in cache already - set(EIGEN_FOUND TRUE) - -else (EIGEN_INCLUDE_DIR) - find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h PATHS ${INCLUDE_INSTALL_DIR} @@ -26,8 +19,6 @@ find_path(EIGEN_INCLUDE_DIR NAMES eigen/matrix.h include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Eigen DEFAULT_MSG EIGEN_INCLUDE_DIR ) - mark_as_advanced(EIGEN_INCLUDE_DIR) -endif(EIGEN_INCLUDE_DIR) diff --git a/modules/FindFAM.cmake b/modules/FindFAM.cmake index 8ebb3ab6..7a598fd0 100644 --- a/modules/FindFAM.cmake +++ b/modules/FindFAM.cmake @@ -11,16 +11,11 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (FAM_INCLUDE_DIR) - # Already in cache, be silent - set(FAM_FIND_QUIETLY TRUE) -endif (FAM_INCLUDE_DIR) - FIND_PATH(FAM_INCLUDE_DIR fam.h) FIND_LIBRARY(FAM_LIBRARIES NAMES fam ) -include(FindPackageHandleStandardArgs) +INCLUDE(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(FAM DEFAULT_MSG FAM_INCLUDE_DIR FAM_LIBRARIES ) MARK_AS_ADVANCED(FAM_INCLUDE_DIR FAM_LIBRARIES) diff --git a/modules/FindFontconfig.cmake b/modules/FindFontconfig.cmake index 5e2f3ead..d95e46b4 100644 --- a/modules/FindFontconfig.cmake +++ b/modules/FindFontconfig.cmake @@ -42,8 +42,8 @@ else (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) ) include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(Fontconfig DEFAULT_MSG FONTCONFIG_LIBRARIES FONTCONFIG_INCLUDE_DIR ) - + find_package_handle_standard_args(Fontconfig DEFAULT_MSG FONTCONFIG_LIBRARIES FONTCONFIG_INCLUDE_DIR ) + mark_as_advanced(FONTCONFIG_LIBRARIES FONTCONFIG_INCLUDE_DIR) endif (FONTCONFIG_LIBRARIES AND FONTCONFIG_INCLUDE_DIR) -- cgit v1.2.1 From 13878c79535651b151b80526f6052904c4189023 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Wed, 25 Aug 2010 20:06:48 +0000 Subject: -sync FindPackageHandleStandardArgs.cmake with the version from cmake master, in order to stay compatible with future cmake releases. Our FindPackageHandleStandardArgs.cmake had automatic check for the version number by guessing the name of the variable which contains the version number. This didn't make it into cmake, but instead an extendible version where you can specify what you want. FindEigen2.cmake is already converted, it looks like this: find_package_handle_standard_args(Eigen2 REQUIRED_VARS EIGEN2_INCLUDE_DIR VERSION_VAR EIGEN2_VERSION) Additionally a FAIL_MESSAGE can be specified. VERSION_VAR is optional. This must be merged in the 4.5. branch if we don't find any issues. Alex CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1167973 --- modules/CMakeLists.txt | 18 ++- modules/CMakeParseArguments.cmake | 138 +++++++++++++++++++ modules/FindEigen2.cmake | 41 ++---- modules/FindPackageHandleStandardArgs.cmake | 197 ++++++++++++++++++---------- 4 files changed, 282 insertions(+), 112 deletions(-) create mode 100644 modules/CMakeParseArguments.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 637f8cab..03e4d15d 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -10,13 +10,10 @@ set(cmakeFilesDontInstall FindPolkitQt.cmake FindPolkitQt-1.cmake) -# remove once we depend on a newer cmake version: -# FindPackageHandleStandardArgs (2.8.2) - # Explicitely list all files which will be installed. # We don't use a GLOB anymore so we can have also cmake files here # which are used inside kdelibs, but which don't have to be installed (and -# so become part of the public interface of kdelibs which has to be kept +# so become part of the public interface of kdelibs which has to be kept # compatible). set(cmakeFiles CheckCXXSourceCompiles.cmake CheckCXXSourceRuns.cmake @@ -101,6 +98,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake Qt4Macros.cmake Qt4ConfigDependentSettings.cmake FindPackageHandleStandardArgs.cmake + CMakeParseArguments.cmake # used by FindPackageHandleStandardArgs.cmake, will be in CMake 2.8.3 FindPythonLibrary.cmake FindQCA2.cmake FindQImageBlitz.cmake @@ -150,11 +148,11 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake create_exe_symlink.cmake kde4_exec_via_sh.cmake kde4uic.cmake - cmake-modules-styleguide.txt - kde4init_dummy.cpp.in - kde4init_win32lib_dummy.cpp.in - kde4_cmake_uninstall.cmake.in - kde4automoc.files.in + cmake-modules-styleguide.txt + kde4init_dummy.cpp.in + kde4init_win32lib_dummy.cpp.in + kde4_cmake_uninstall.cmake.in + kde4automoc.files.in BasicFindPackageVersion.cmake.in FindLibPython.py FindPyKDE4.py @@ -170,7 +168,7 @@ endif (KDE4_ENABLE_UAC_MANIFEST) install(FILES ${cmakeFiles} DESTINATION ${module_install_dir} ) - + # the files listed here will be removed by remove_obsoleted_cmake_files.cmake, Alex #set(FILES_TO_REMOVE #) diff --git a/modules/CMakeParseArguments.cmake b/modules/CMakeParseArguments.cmake new file mode 100644 index 00000000..7ce4c49a --- /dev/null +++ b/modules/CMakeParseArguments.cmake @@ -0,0 +1,138 @@ +# CMAKE_PARSE_ARGUMENTS( args...) +# +# CMAKE_PARSE_ARGUMENTS() is intended to be used in macros or functions for +# parsing the arguments given to that macro or function. +# It processes the arguments and defines a set of variables which hold the +# values of the respective options. +# +# The argument contains all options for the respective macro, +# i.e. keywords which can be used when calling the macro without any value +# following, like e.g. the OPTIONAL keyword of the install() command. +# +# The argument contains all keywords for this macro +# which are followed by one value, like e.g. DESTINATION keyword of the +# install() command. +# +# The argument contains all keywords for this macro +# which can be followed by more than one value, like e.g. the TARGETS or +# FILES keywords of the install() command. +# +# When done, CMAKE_PARSE_ARGUMENTS() will have defined for each of the +# keywords listed in , and +# a variable composed of the given +# followed by "_" and the name of the respective keyword. +# These variables will then hold the respective value from the argument list. +# For the keywords this will be TRUE or FALSE. +# +# All remaining arguments are collected in a variable +# _UNPARSED_ARGUMENTS, this can be checked afterwards to see whether +# your macro was called with unrecognized parameters. +# +# As an example here a my_install() macro, which takes similar arguments as the +# real install() command: +# +# function(MY_INSTALL) +# set(options OPTIONAL FAST) +# set(oneValueArgs DESTINATION RENAME) +# set(multiValueArgs TARGETS CONFIGURATIONS) +# cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} ) +# ... +# +# Assume my_install() has been called like this: +# my_install(TARGETS foo bar DESTINATION bin OPTIONAL blub) +# +# After the cmake_parse_arguments() call the macro will have set the following +# variables: +# MY_INSTALL_OPTIONAL = TRUE +# MY_INSTALL_FAST = FALSE (this option was not used when calling my_install() +# MY_INSTALL_DESTINATION = "bin" +# MY_INSTALL_RENAME = "" (was not used) +# MY_INSTALL_TARGETS = "foo;bar" +# MY_INSTALL_CONFIGURATIONS = "" (was not used) +# MY_INSTALL_UNPARSED_ARGUMENTS = "blub" (no value expected after "OPTIONAL" +# +# You can the continue and process these variables. +# +# Keywords terminate lists of values, e.g. if directly after a one_value_keyword +# another recognized keyword follows, this is interpreted as the beginning of +# the new option. +# E.g. my_install(TARGETS foo DESTINATION OPTIONAL) would result in +# MY_INSTALL_DESTINATION set to "OPTIONAL", but MY_INSTALL_DESTINATION would +# be empty and MY_INSTALL_OPTIONAL would be set to TRUE therefor. + +#============================================================================= +# Copyright 2010 Alexander Neundorf +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) + + +if(__CMAKE_PARSE_ARGUMENTS_INCLUDED) + return() +endif() +set(__CMAKE_PARSE_ARGUMENTS_INCLUDED TRUE) + + +function(CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNames) + # first set all result variables to empty/FALSE + foreach(arg_name ${_singleArgNames} ${_multiArgNames}) + set(${prefix}_${arg_name}) + endforeach(arg_name) + + foreach(option ${_optionNames}) + set(${prefix}_${option} FALSE) + endforeach(option) + + set(${prefix}_UNPARSED_ARGUMENTS) + + set(insideValues FALSE) + set(currentArgName) + + # now iterate over all arguments and fill the result variables + foreach(currentArg ${ARGN}) + list(FIND _optionNames "${currentArg}" optionIndex) # ... then this marks the end of the arguments belonging to this keyword + list(FIND _singleArgNames "${currentArg}" singleArgIndex) # ... then this marks the end of the arguments belonging to this keyword + list(FIND _multiArgNames "${currentArg}" multiArgIndex) # ... then this marks the end of the arguments belonging to this keyword + + if(${optionIndex} EQUAL -1 AND ${singleArgIndex} EQUAL -1 AND ${multiArgIndex} EQUAL -1) + if(insideValues) + if("${insideValues}" STREQUAL "SINGLE") + set(${prefix}_${currentArgName} ${currentArg}) + set(insideValues FALSE) + elseif("${insideValues}" STREQUAL "MULTI") + list(APPEND ${prefix}_${currentArgName} ${currentArg}) + endif() + else(insideValues) + list(APPEND ${prefix}_UNPARSED_ARGUMENTS ${currentArg}) + endif(insideValues) + else() + if(NOT ${optionIndex} EQUAL -1) + set(${prefix}_${currentArg} TRUE) + set(insideValues FALSE) + elseif(NOT ${singleArgIndex} EQUAL -1) + set(currentArgName ${currentArg}) + set(${prefix}_${currentArgName}) + set(insideValues "SINGLE") + elseif(NOT ${multiArgIndex} EQUAL -1) + set(currentArgName ${currentArg}) + set(${prefix}_${currentArgName}) + set(insideValues "MULTI") + endif() + endif() + + endforeach(currentArg) + + # propagate the result variables to the caller: + foreach(arg_name ${_singleArgNames} ${_multiArgNames} ${_optionNames}) + set(${prefix}_${arg_name} ${${prefix}_${arg_name}} PARENT_SCOPE) + endforeach(arg_name) + set(${prefix}_UNPARSED_ARGUMENTS ${${prefix}_UNPARSED_ARGUMENTS} PARENT_SCOPE) + +endfunction(CMAKE_PARSE_ARGUMENTS _options _singleArgs _multiArgs) diff --git a/modules/FindEigen2.cmake b/modules/FindEigen2.cmake index 0e86aaf2..83949e99 100644 --- a/modules/FindEigen2.cmake +++ b/modules/FindEigen2.cmake @@ -15,20 +15,14 @@ # Redistribution and use is allowed according to the terms of the BSD license. if(NOT Eigen2_FIND_VERSION) - if(NOT Eigen2_FIND_VERSION_MAJOR) - set(Eigen2_FIND_VERSION_MAJOR 2) - endif(NOT Eigen2_FIND_VERSION_MAJOR) - if(NOT Eigen2_FIND_VERSION_MINOR) - set(Eigen2_FIND_VERSION_MINOR 0) - endif(NOT Eigen2_FIND_VERSION_MINOR) - if(NOT Eigen2_FIND_VERSION_PATCH) - set(Eigen2_FIND_VERSION_PATCH 0) - endif(NOT Eigen2_FIND_VERSION_PATCH) + set(Eigen2_FIND_VERSION_MAJOR 2) + set(Eigen2_FIND_VERSION_MINOR 0) + set(Eigen2_FIND_VERSION_PATCH 0) set(Eigen2_FIND_VERSION "${Eigen2_FIND_VERSION_MAJOR}.${Eigen2_FIND_VERSION_MINOR}.${Eigen2_FIND_VERSION_PATCH}") endif(NOT Eigen2_FIND_VERSION) -macro(_eigen2_check_version) +macro(_eigen2_get_version) file(READ "${EIGEN2_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen2_version_header LIMIT 5000 OFFSET 1000) string(REGEX MATCH "define *EIGEN_WORLD_VERSION ([0-9]*)" _eigen2_world_version_match "${_eigen2_version_header}") @@ -39,26 +33,7 @@ macro(_eigen2_check_version) set(EIGEN2_MINOR_VERSION "${CMAKE_MATCH_1}") set(EIGEN2_VERSION ${EIGEN2_WORLD_VERSION}.${EIGEN2_MAJOR_VERSION}.${EIGEN2_MINOR_VERSION}) - if(${EIGEN2_VERSION} VERSION_LESS ${Eigen2_FIND_VERSION}) - set(EIGEN2_VERSION_OK FALSE) - else(${EIGEN2_VERSION} VERSION_LESS ${Eigen2_FIND_VERSION}) - set(EIGEN2_VERSION_OK TRUE) - endif(${EIGEN2_VERSION} VERSION_LESS ${Eigen2_FIND_VERSION}) - - if(NOT EIGEN2_VERSION_OK) - - message(STATUS "Eigen2 version ${EIGEN2_VERSION} found in ${EIGEN2_INCLUDE_DIR}, " - "but at least version ${Eigen2_FIND_VERSION} is required") - endif(NOT EIGEN2_VERSION_OK) -endmacro(_eigen2_check_version) - -if (EIGEN2_INCLUDE_DIR) - - # in cache already - _eigen2_check_version() - set(EIGEN2_FOUND ${EIGEN2_VERSION_OK}) - -else (EIGEN2_INCLUDE_DIR) +endmacro(_eigen2_get_version) find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core PATHS @@ -68,13 +43,13 @@ find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core ) if(EIGEN2_INCLUDE_DIR) - _eigen2_check_version() + _eigen2_get_version() endif(EIGEN2_INCLUDE_DIR) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Eigen2 DEFAULT_MSG EIGEN2_INCLUDE_DIR EIGEN2_VERSION_OK) +find_package_handle_standard_args(Eigen2 REQUIRED_VARS EIGEN2_INCLUDE_DIR + VERSION_VAR EIGEN2_VERSION) mark_as_advanced(EIGEN2_INCLUDE_DIR) -endif(EIGEN2_INCLUDE_DIR) diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index fe4345c7..c698480b 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -1,24 +1,58 @@ -# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME (DEFAULT_MSG|"Custom failure message") VAR1 ... ) -# This macro is intended to be used in FindXXX.cmake modules files. -# It handles the REQUIRED and QUIET argument to FIND_PACKAGE() and -# it also sets the _FOUND variable. -# The package is considered found if all variables listed are TRUE. -# The version-argument of FIND_PACKAGE() is also handled. -# For checking whether the version is ok, this macro compares the -# variable _VERSION with the specified version. -# Example: +# FIND_PACKAGE_HANDLE_STANDARD_ARGS( ... ) # -# FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) +# This function is intended to be used in FindXXX.cmake modules files. +# It handles the REQUIRED, QUIET and version-related arguments to FIND_PACKAGE(). +# It also sets the _FOUND variable. +# The package is considered found if all variables ... listed contain +# valid results, e.g. valid filepaths. # -# LibXml2 is considered to be found, if both LIBXML2_LIBRARIES and -# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE. -# If it is not found and REQUIRED was used, it fails with FATAL_ERROR, -# independent whether QUIET was used or not. -# If it is found, the location is reported using the VAR1 argument, so -# here a message "Found LibXml2: /usr/lib/libxml2.so" will be printed out. -# If the second argument is DEFAULT_MSG, the message in the failure case will -# be "Could NOT find LibXml2", if you don't like this message you can specify -# your own custom failure message there. +# There are two modes of this function. The first argument in both modes is +# the name of the Find-module where it is called (in original casing). +# +# The first simple mode looks like this: +# FIND_PACKAGE_HANDLE_STANDARD_ARGS( (DEFAULT_MSG|"Custom failure message") ... ) +# If the variables to are all valid, then _FOUND +# will be set to TRUE. +# If DEFAULT_MSG is given as second argument, then the function will generate +# itself useful success and error messages. You can also supply a custom error message +# for the failure case. This is not recommended. +# +# The second mode is more powerful and also supports version checking: +# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME [REQUIRED_VARS ...] +# [VERSION_VAR +# [FAIL_MESSAGE "Custom failure message"] ) +# +# As above, if through are all valid, _FOUND +# will be set to TRUE. +# Via FAIL_MESSAGE a custom failure message can be specified, if this is not +# used, the default message will be displayed. +# Following VERSION_VAR the name of the variable can be specified which holds +# the version of the package which has been found. If this is done, this version +# will be checked against the (potentially) specified required version used +# in the find_package() call. The EXACT keyword is also handled. The default +# messages include information about the required version and the version +# which has been actually found, both if the version is ok or not. +# +# Example for mode 1: +# +# FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARY LIBXML2_INCLUDE_DIR) +# +# LibXml2 is considered to be found, if both LIBXML2_LIBRARY and +# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE. +# If it is not found and REQUIRED was used, it fails with FATAL_ERROR, +# independent whether QUIET was used or not. +# If it is found, success will be reported, including the content of . +# On repeated Cmake runs, the same message won't be printed again. +# +# Example for mode 2: +# +# FIND_PACKAGE_HANDLE_STANDARD_ARGS(BISON REQUIRED_VARS BISON_EXECUTABLE +# VERSION_VAR BISON_VERSION) +# In this case, BISON is considered to be found if the variable(s) listed +# after REQUIRED_VAR are all valid, i.e. BISON_EXECUTABLE in this case. +# Also the version of BISON will be checked by using the version contained +# in BISON_VERSION. +# Since no FAIL_MESSAGE is given, the default messages will be printed. #============================================================================= # Copyright 2007-2009 Kitware, Inc. @@ -30,17 +64,51 @@ # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # See the License for more information. #============================================================================= -# (To distributed this file outside of CMake, substitute the full +# (To distribute this file outside of CMake, substitute the full # License text for the above reference.) INCLUDE(FindPackageMessage) -FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) +INCLUDE(CMakeParseArguments) + + +FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG _VAR1) + +# set up the arguments for CMAKE_PARSE_ARGUMENTS and check whether we are in +# new extended or in the "old" mode: + SET(options) # none + SET(oneValueArgs FAIL_MESSAGE VERSION_VAR) + SET(multiValueArgs REQUIRED_VARS) + SET(_KEYWORDS_FOR_EXTENDED_MODE ${options} ${oneValueArgs} ${multiValueArgs} ) + LIST(FIND _KEYWORDS_FOR_EXTENDED_MODE "${_FIRST_ARG}" INDEX) + + IF(${INDEX} EQUAL -1) + SET(FPHSA_FAIL_MESSAGE ${_FIRST_ARG}) + SET(FPHSA_REQUIRED_VARS ${_VAR1} ${ARGN}) + SET(FPHSA_VERSION_VAR) + ELSE(${INDEX} EQUAL -1) - IF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") - SET(_FAIL_MESSAGE "Could NOT find ${_NAME}") - ELSE("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") - SET(_FAIL_MESSAGE "${_FAIL_MSG}") - ENDIF("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG") + CMAKE_PARSE_ARGUMENTS(FPHSA "${options}" "${oneValueArgs}" "${multiValueArgs}" ${_FIRST_ARG} ${_VAR1} ${ARGN}) + + IF(FPHSA_UNPARSED_ARGUMENTS) + MESSAGE(FATAL_ERROR "Unknown keywords given to FIND_PACKAGE_HANDLE_STANDARD_ARGS(): \"${FPHSA_UNPARSED_ARGUMENTS}\"") + ENDIF(FPHSA_UNPARSED_ARGUMENTS) + + IF(NOT FPHSA_FAIL_MESSAGE) + SET(FPHSA_FAIL_MESSAGE "DEFAULT_MSG") + ENDIF(NOT FPHSA_FAIL_MESSAGE) + ENDIF(${INDEX} EQUAL -1) + +# now that we collected all arguments, process them + + IF("${FPHSA_FAIL_MESSAGE}" STREQUAL "DEFAULT_MSG") + SET(FPHSA_FAIL_MESSAGE "Could NOT find ${_NAME}") + ENDIF("${FPHSA_FAIL_MESSAGE}" STREQUAL "DEFAULT_MSG") + + IF(NOT FPHSA_REQUIRED_VARS) + MESSAGE(FATAL_ERROR "No REQUIRED_VARS specified for FIND_PACKAGE_HANDLE_STANDARD_ARGS()") + ENDIF(NOT FPHSA_REQUIRED_VARS) + + LIST(GET FPHSA_REQUIRED_VARS 0 _FIRST_REQUIRED_VAR) STRING(TOUPPER ${_NAME} _NAME_UPPER) @@ -49,15 +117,8 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) SET(MISSING_VARS "") SET(DETAILS "") SET(${_NAME_UPPER}_FOUND TRUE) - IF(NOT ${_VAR1}) - SET(${_NAME_UPPER}_FOUND FALSE) - SET(MISSING_VARS " ${_VAR1}") - ELSE(NOT ${_VAR1}) - SET(DETAILS "${DETAILS}[${${_VAR1}}]") - ENDIF(NOT ${_VAR1}) - # check if all passed variables are valid - FOREACH(_CURRENT_VAR ${ARGN}) + FOREACH(_CURRENT_VAR ${FPHSA_REQUIRED_VARS}) IF(NOT ${_CURRENT_VAR}) SET(${_NAME_UPPER}_FOUND FALSE) SET(MISSING_VARS "${MISSING_VARS} ${_CURRENT_VAR}") @@ -66,6 +127,7 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) ENDIF(NOT ${_CURRENT_VAR}) ENDFOREACH(_CURRENT_VAR) + # version handling: SET(VERSION_MSG "") SET(VERSION_OK TRUE) @@ -73,36 +135,33 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) # if the package was found, check for the version using _FIND_VERSION IF (${_NAME_UPPER}_FOUND) - IF(${_NAME_UPPER}_VERSION) - SET(VERSION ${${_NAME_UPPER}_VERSION}) - ELSEIF(${_NAME}_VERSION) - SET(VERSION ${${_NAME}_VERSION}) - ENDIF(${_NAME_UPPER}_VERSION) - - IF(VERSION) #hmm what do we do if the module in question doesn't set FOO_VERSION but something else ?... Ignore it for now - - IF(${_NAME}_FIND_VERSION_EXACT) # exact version required - IF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") - SET(VERSION_MSG " Found version \"${VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"") - SET(VERSION_OK FALSE) - ELSE (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") - SET(VERSION_MSG " (found exact version \"${VERSION}\")") - ENDIF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") - - ELSE(${_NAME}_FIND_VERSION_EXACT) # minimum version specified: - IF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") - SET(VERSION_MSG " Found version \"${VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"") - SET(VERSION_OK FALSE) - ELSE ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") - SET(VERSION_MSG " (found version \"${VERSION}\", required is \"${${_NAME}_FIND_VERSION}\")") - ENDIF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") - ENDIF(${_NAME}_FIND_VERSION_EXACT) - - ELSE(VERSION) - SET(VERSION_MSG " (WARNING: Required version is \"${${_NAME}_FIND_VERSION}\", but version of ${_NAME} is unknown)") + SET(VERSION ${${FPHSA_VERSION_VAR}} ) + + IF(VERSION) + + IF(${_NAME}_FIND_VERSION_EXACT) # exact version required + IF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") + SET(VERSION_MSG " Found version \"${VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"") + SET(VERSION_OK FALSE) + ELSE (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") + SET(VERSION_MSG " (found exact version \"${VERSION}\")") + ENDIF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}") + + ELSE(${_NAME}_FIND_VERSION_EXACT) # minimum version specified: + IF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") + SET(VERSION_MSG " Found version \"${VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"") + SET(VERSION_OK FALSE) + ELSE ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") + SET(VERSION_MSG " (found version \"${VERSION}\", required is \"${${_NAME}_FIND_VERSION}\")") + ENDIF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}") + ENDIF(${_NAME}_FIND_VERSION_EXACT) + +# Uncomment the following two lines to see to which Find-modules the VERSION_VAR keywords still need to be added: +# ELSE(VERSION) +# SET(VERSION_MSG " (WARNING: Required version is \"${${_NAME}_FIND_VERSION}\", but version of ${_NAME} is unknown)") ENDIF(VERSION) - # if the package was not found, but some a version was given, add that to the output: + # if the package was not found, but a version was given, add that to the output: ELSE (${_NAME_UPPER}_FOUND) IF(${_NAME}_FIND_VERSION_EXACT) SET(VERSION_MSG " (Required is exact version \"${${_NAME}_FIND_VERSION}\")") @@ -113,7 +172,7 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) ENDIF (${_NAME}_FIND_VERSION) IF(VERSION_OK) - SET(DETAILS "${DETAILS}[v${${VERSION}}]") + SET(DETAILS "${DETAILS}[v${VERSION}]") ELSE(VERSION_OK) SET(${_NAME_UPPER}_FOUND FALSE) ENDIF(VERSION_OK) @@ -121,25 +180,25 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) # print the result: IF (${_NAME_UPPER}_FOUND) - FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_VAR1}} ${VERSION_MSG}" "${DETAILS}") + FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_FIRST_REQUIRED_VAR}} ${VERSION_MSG}" "${DETAILS}") ELSE (${_NAME_UPPER}_FOUND) IF(NOT VERSION_OK) IF (${_NAME}_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "${_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_VAR1}})") + MESSAGE(FATAL_ERROR "${FPHSA_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_FIRST_REQUIRED_VAR}})") ELSE (${_NAME}_FIND_REQUIRED) IF (NOT ${_NAME}_FIND_QUIETLY) - MESSAGE(STATUS "${_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_VAR1}})") + MESSAGE(STATUS "${FPHSA_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_FIRST_REQUIRED_VAR}})") ENDIF (NOT ${_NAME}_FIND_QUIETLY) ENDIF (${_NAME}_FIND_REQUIRED) ELSE(NOT VERSION_OK) IF (${_NAME}_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "${_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}") + MESSAGE(FATAL_ERROR "${FPHSA_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}") ELSE (${_NAME}_FIND_REQUIRED) IF (NOT ${_NAME}_FIND_QUIETLY) - MESSAGE(STATUS "${_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}") + MESSAGE(STATUS "${FPHSA_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}") ENDIF (NOT ${_NAME}_FIND_QUIETLY) ENDIF (${_NAME}_FIND_REQUIRED) ENDIF(NOT VERSION_OK) @@ -148,4 +207,4 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FAIL_MSG _VAR1 ) SET(${_NAME_UPPER}_FOUND ${${_NAME_UPPER}_FOUND} PARENT_SCOPE) -ENDFUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS) +ENDFUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _FIRST_ARG) -- cgit v1.2.1 From bb5e1ef1d1dad44afa7f2957eeef861a95a66202 Mon Sep 17 00:00:00 2001 From: Paulo Romulo Date: Fri, 27 Aug 2010 07:16:09 +0000 Subject: Building Solid UPnP backend by default now. HUPnP library required. svn path=/trunk/KDE/kdelibs/; revision=1168594 --- modules/CMakeLists.txt | 1 + modules/FindHUpnp.cmake | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 modules/FindHUpnp.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 03e4d15d..8f600c82 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -159,6 +159,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindPyQt.py FindSIP.py PythonCompile.py + FindHUpnp.cmake ) if (KDE4_ENABLE_UAC_MANIFEST) diff --git a/modules/FindHUpnp.cmake b/modules/FindHUpnp.cmake new file mode 100644 index 00000000..cd2b6216 --- /dev/null +++ b/modules/FindHUpnp.cmake @@ -0,0 +1,18 @@ +# - Try to find HUPnP library +# Once done this will define +# +# HUPNP_FOUND - system has HUPnP +# HUPNP_INCLUDE_DIR - the LIBHUpnp include directory +# HUPNP_LIBS - the LIBHUpnp libraries +# +# Copyright (c) 2010, Paulo Romulo Alves Barros + +find_path( HUPNP_INCLUDE_DIR HUpnp ) + +find_library( HUPNP_LIBS HUpnp ) + +include( FindPackageHandleStandardArgs ) + +find_package_handle_standard_args( HUpnp "Could not find HUPnP" HUPNP_INCLUDE_DIR HUPNP_LIBS ) + +mark_as_advanced( HUPNP_INCLUDE_DIR HUPNP_LIBS ) \ No newline at end of file -- cgit v1.2.1 From d251c59ae10a7ff1e59bdfc1afbc070029f32401 Mon Sep 17 00:00:00 2001 From: Paulo Romulo Date: Fri, 27 Aug 2010 07:21:33 +0000 Subject: SVN_SILENT Using DEFAULT_MSG in find_package_handle_standard_args() at FindHUpnp.cmake module. svn path=/trunk/KDE/kdelibs/; revision=1168596 --- modules/FindHUpnp.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindHUpnp.cmake b/modules/FindHUpnp.cmake index cd2b6216..89865ff3 100644 --- a/modules/FindHUpnp.cmake +++ b/modules/FindHUpnp.cmake @@ -13,6 +13,6 @@ find_library( HUPNP_LIBS HUpnp ) include( FindPackageHandleStandardArgs ) -find_package_handle_standard_args( HUpnp "Could not find HUPnP" HUPNP_INCLUDE_DIR HUPNP_LIBS ) +find_package_handle_standard_args( HUpnp DEFAULT_MSG HUPNP_INCLUDE_DIR HUPNP_LIBS ) mark_as_advanced( HUPNP_INCLUDE_DIR HUPNP_LIBS ) \ No newline at end of file -- cgit v1.2.1 From 279b235ebc4e21d6e99338fb5534c38d2520d69b Mon Sep 17 00:00:00 2001 From: Paulo Romulo Date: Fri, 27 Aug 2010 15:32:16 +0000 Subject: Removing FindHUpnp.cmake from the list of cmake modules to be installed. svn path=/trunk/KDE/kdelibs/; revision=1168851 --- modules/CMakeLists.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 8f600c82..e5d0cd7a 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -8,7 +8,9 @@ set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) # are listed explicitely: set(cmakeFilesDontInstall FindPolkitQt.cmake - FindPolkitQt-1.cmake) + FindPolkitQt-1.cmake + FindHUpnp.cmake + ) # Explicitely list all files which will be installed. # We don't use a GLOB anymore so we can have also cmake files here @@ -159,7 +161,6 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindPyQt.py FindSIP.py PythonCompile.py - FindHUpnp.cmake ) if (KDE4_ENABLE_UAC_MANIFEST) -- cgit v1.2.1 From c25fb2e9b0c7af52dfc43a136efc702235096cab Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 2 Sep 2010 15:03:30 +0000 Subject: Add support for showing file and line number in debug output. Based on idea by MaikB on IRC. Export KDE_DEBUG_FILELINE=1 to see it. Documented on http://techbase.kde.org/KDE_System_Administration/Environment_Variables. CCMAIL: kde-core-devel@kde.org svn path=/trunk/KDE/kdelibs/; revision=1171053 --- modules/FindKDE4Internal.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 437bb850..69881d4b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1393,7 +1393,11 @@ set(KDE4_INCLUDES ${_KDE4_PLATFORM_INCLUDE_DIRS} ) -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS ) +# Used by kdebug.h: the "toplevel dir" is one level above CMAKE_SOURCE_DIR +get_filename_component(CMAKE_TOPLEVEL_DIR "${CMAKE_SOURCE_DIR}/.." ABSOLUTE) +string(LENGTH "${CMAKE_TOPLEVEL_DIR}" CMAKE_TOPLEVEL_DIR_LENGTH) + +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS -DCMAKE_TOPLEVEL_DIR_LENGTH=${CMAKE_TOPLEVEL_DIR_LENGTH}) if (NOT _kde4_uninstall_rule_created) set(_kde4_uninstall_rule_created TRUE) -- cgit v1.2.1 From 6c6f30bc7890a13001339312c6565d633d8ffb87 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 2 Sep 2010 21:25:31 +0000 Subject: Prefix with KDE4_ as requested by Alexander. Second full recompile, everyone :) svn path=/trunk/KDE/kdelibs/; revision=1171144 --- modules/FindKDE4Internal.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 69881d4b..d2e8e062 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1394,10 +1394,10 @@ set(KDE4_INCLUDES ) # Used by kdebug.h: the "toplevel dir" is one level above CMAKE_SOURCE_DIR -get_filename_component(CMAKE_TOPLEVEL_DIR "${CMAKE_SOURCE_DIR}/.." ABSOLUTE) -string(LENGTH "${CMAKE_TOPLEVEL_DIR}" CMAKE_TOPLEVEL_DIR_LENGTH) +get_filename_component(_KDE4_CMAKE_TOPLEVEL_DIR "${CMAKE_SOURCE_DIR}/.." ABSOLUTE) +string(LENGTH "${_KDE4_CMAKE_TOPLEVEL_DIR}" _KDE4_CMAKE_TOPLEVEL_DIR_LENGTH) -set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS -DCMAKE_TOPLEVEL_DIR_LENGTH=${CMAKE_TOPLEVEL_DIR_LENGTH}) +set(KDE4_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS} -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS -DKDE4_CMAKE_TOPLEVEL_DIR_LENGTH=${_KDE4_CMAKE_TOPLEVEL_DIR_LENGTH}) if (NOT _kde4_uninstall_rule_created) set(_kde4_uninstall_rule_created TRUE) -- cgit v1.2.1 From 5912d28d7655006223e205ef7b01962216abdcff Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Tue, 21 Sep 2010 20:55:35 +0000 Subject: -when using cmake >= 2.8.3, use FeatureSummary.cmake to automatically create a log file for all find_package() calls. As discussed at Akademy, this can be used by build maintainers to be notified for changing requirements Alex svn path=/trunk/KDE/kdelibs/; revision=1177972 --- modules/MacroLogFeature.cmake | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/MacroLogFeature.cmake b/modules/MacroLogFeature.cmake index 541078c8..45e27b6d 100644 --- a/modules/MacroLogFeature.cmake +++ b/modules/MacroLogFeature.cmake @@ -48,6 +48,9 @@ IF (NOT _macroLogFeatureAlreadyIncluded) ENDIF (EXISTS ${_file}) SET(_macroLogFeatureAlreadyIncluded TRUE) + + INCLUDE(FeatureSummary) + ENDIF (NOT _macroLogFeatureAlreadyIncluded) @@ -56,7 +59,7 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ STRING(TOUPPER "${ARGV4}" _required) SET(_minvers "${ARGV5}") SET(_comments "${ARGV6}") - + IF (${_var}) SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) ELSE (${_var}) @@ -88,11 +91,19 @@ MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _ ENDIF (NOT ${_var}) FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n") - + + IF(COMMAND SET_PACKAGE_INFO) # in FeatureSummary.cmake since CMake 2.8.3 + SET_PACKAGE_INFO("${_package}" "\"${_description}\"" "${_url}" "\"${_comments}\"") + ENDIF(COMMAND SET_PACKAGE_INFO) + ENDMACRO(MACRO_LOG_FEATURE) MACRO(MACRO_DISPLAY_FEATURE_LOG) + IF(COMMAND FEATURE_SUMMARY) # in FeatureSummary.cmake since CMake 2.8.3 + FEATURE_SUMMARY(FILENAME ${CMAKE_CURRENT_BINARY_DIR}/FindPackageLog.txt + WHAT ALL) + ENDIF(COMMAND FEATURE_SUMMARY) SET(_missingFile ${CMAKE_BINARY_DIR}/MissingRequirements.txt) SET(_enabledFile ${CMAKE_BINARY_DIR}/EnabledFeatures.txt) -- cgit v1.2.1 From e66fc6893e745345c0cee1715ce9426d5ba8d739 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 09:32:10 +0000 Subject: -Use the new extended find_package_handle_standard_args() syntax for version checking -support the standard find_package() syntax for specifying the minimum version Alex svn path=/trunk/KDE/kdelibs/; revision=1179848 --- modules/FindSharedMimeInfo.cmake | 45 +++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 21 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 9b076a30..b1e1c3df 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -1,21 +1,34 @@ # - Try to find the shared-mime-info package # -# SHARED_MIME_INFO_MINIMUM_VERSION - Set this to the minimum version you need, default is 0.18 -# # Once done this will define # # SHARED_MIME_INFO_FOUND - system has the shared-mime-info package # UPDATE_MIME_DATABASE_EXECUTABLE - the update-mime-database executable +# +# The minimum required version of SharedMimeInfo can be specified using the +# standard syntax, e.g. find_package(SharedMimeInfo 0.20) +# +# For backward compatibility, there is also the variable SHARED_MIME_INFO_MINIMUM_VERSION, +# which can be set to the minimum version you need, default is 0.18. +# +# When both are used, i.e. the version is set in the find_package() call and +# SHARED_MIME_INFO_MINIMUM_VERSION is set, the version specified in the find_package() +# call takes precedence. # Copyright (c) 2007, Pino Toscano, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# Support SHARED_MIME_INFO_MINIMUM_VERSION for compatibility: +if(NOT SharedMimeInfo_FIND_VERSION) + set(SharedMimeInfo_FIND_VERSION "${SHARED_MIME_INFO_MINIMUM_VERSION}") +endif(NOT SharedMimeInfo_FIND_VERSION) + # the minimum version of shared-mime-database we require -if (NOT SHARED_MIME_INFO_MINIMUM_VERSION) - set(SHARED_MIME_INFO_MINIMUM_VERSION "0.18") -endif (NOT SHARED_MIME_INFO_MINIMUM_VERSION) +if(NOT SharedMimeInfo_FIND_VERSION) + set(SharedMimeInfo_FIND_VERSION "0.18") +endif(NOT SharedMimeInfo_FIND_VERSION) if (UPDATE_MIME_DATABASE_EXECUTABLE) @@ -24,8 +37,6 @@ if (UPDATE_MIME_DATABASE_EXECUTABLE) else (UPDATE_MIME_DATABASE_EXECUTABLE) - include (MacroEnsureVersion) - find_program (UPDATE_MIME_DATABASE_EXECUTABLE NAMES update-mime-database) if (UPDATE_MIME_DATABASE_EXECUTABLE) @@ -37,20 +48,12 @@ else (UPDATE_MIME_DATABASE_EXECUTABLE) set (SHARED_MIME_INFO_FOUND TRUE) endif (UPDATE_MIME_DATABASE_EXECUTABLE) - if (SHARED_MIME_INFO_FOUND) - if (NOT SharedMimeInfo_FIND_QUIETLY) - message(STATUS "Found shared-mime-info version: ${smiVersion}") - macro_ensure_version(${SHARED_MIME_INFO_MINIMUM_VERSION} ${smiVersion} _smiVersion_OK) - if (NOT _smiVersion_OK) - message(FATAL_ERROR "The found version of shared-mime-info (${smiVersion}) is below the minimum required (${SHARED_MIME_INFO_MINIMUM_VERSION})") - endif (NOT _smiVersion_OK) - - endif (NOT SharedMimeInfo_FIND_QUIETLY) - else (SHARED_MIME_INFO_FOUND) - if (SharedMimeInfo_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find shared-mime-info. See http://freedesktop.org/wiki/Software/shared-mime-info.") - endif (SharedMimeInfo_FIND_REQUIRED) - endif (SHARED_MIME_INFO_FOUND) + # Use the new FPHSA() syntax: + include(FindPackageHandleStandardArgs.cmake) + find_package_handle_standard_args(SharedMimeInfo REQUIRED_VARS UPDATE_MIME_DATABASE_EXECUTABLE + VERSION_VAR smiVersion ) +# This should go into MacroLogFeature/FeatureSummary: +# message(FATAL_ERROR "Could NOT find shared-mime-info. See http://freedesktop.org/wiki/Software/shared-mime-info.") endif (UPDATE_MIME_DATABASE_EXECUTABLE) -- cgit v1.2.1 From 7d1332198f6df044a33697e5598b112de6fab2f6 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 09:37:18 +0000 Subject: -compatibility fixes Alex svn path=/trunk/KDE/kdelibs/; revision=1179850 --- modules/FindSharedMimeInfo.cmake | 44 ++++++++++++++++++---------------------- 1 file changed, 20 insertions(+), 24 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index b1e1c3df..f8db49c9 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -2,18 +2,19 @@ # # Once done this will define # -# SHARED_MIME_INFO_FOUND - system has the shared-mime-info package +# SHAREDMIMEINFO_FOUND - system has the shared-mime-info package # UPDATE_MIME_DATABASE_EXECUTABLE - the update-mime-database executable # # The minimum required version of SharedMimeInfo can be specified using the # standard syntax, e.g. find_package(SharedMimeInfo 0.20) # -# For backward compatibility, there is also the variable SHARED_MIME_INFO_MINIMUM_VERSION, -# which can be set to the minimum version you need, default is 0.18. -# -# When both are used, i.e. the version is set in the find_package() call and -# SHARED_MIME_INFO_MINIMUM_VERSION is set, the version specified in the find_package() -# call takes precedence. +# For backward compatiblity, the following two variables are also supported: +# SHARED_MIME_INFO_FOUND - same as SHAREDMIMEINFO_FOUND +# SHARED_MIME_INFO_MINIMUM_VERSION - set to the minimum version you need, default is 0.18. +# When both are used, i.e. the version is set in the find_package() call and +# SHARED_MIME_INFO_MINIMUM_VERSION is set, the version specified in the find_package() +# call takes precedence. + # Copyright (c) 2007, Pino Toscano, # @@ -30,32 +31,27 @@ if(NOT SharedMimeInfo_FIND_VERSION) set(SharedMimeInfo_FIND_VERSION "0.18") endif(NOT SharedMimeInfo_FIND_VERSION) -if (UPDATE_MIME_DATABASE_EXECUTABLE) - - # in cache already - set(SHARED_MIME_INFO_FOUND TRUE) +find_program (UPDATE_MIME_DATABASE_EXECUTABLE NAMES update-mime-database) -else (UPDATE_MIME_DATABASE_EXECUTABLE) +if (UPDATE_MIME_DATABASE_EXECUTABLE) - find_program (UPDATE_MIME_DATABASE_EXECUTABLE NAMES update-mime-database) + exec_program (${UPDATE_MIME_DATABASE_EXECUTABLE} ARGS -v RETURN_VALUE _null OUTPUT_VARIABLE _smiVersionRaw) - if (UPDATE_MIME_DATABASE_EXECUTABLE) + string(REGEX REPLACE "update-mime-database \\([a-zA-Z\\-]+\\) ([0-9]\\.[0-9]+).*" + "\\1" smiVersion "${_smiVersionRaw}") +endif (UPDATE_MIME_DATABASE_EXECUTABLE) - exec_program (${UPDATE_MIME_DATABASE_EXECUTABLE} ARGS -v RETURN_VALUE _null OUTPUT_VARIABLE _smiVersionRaw) +# Use the new FPHSA() syntax: +include(FindPackageHandleStandardArgs.cmake) +find_package_handle_standard_args(SharedMimeInfo REQUIRED_VARS UPDATE_MIME_DATABASE_EXECUTABLE + VERSION_VAR smiVersion ) - string(REGEX REPLACE "update-mime-database \\([a-zA-Z\\-]+\\) ([0-9]\\.[0-9]+).*" - "\\1" smiVersion "${_smiVersionRaw}") - set (SHARED_MIME_INFO_FOUND TRUE) - endif (UPDATE_MIME_DATABASE_EXECUTABLE) +# For backward compatiblity: +set(SHARED_MIME_INFO_FOUND ${SHAREDMIMEINFO_FOUND} ) - # Use the new FPHSA() syntax: - include(FindPackageHandleStandardArgs.cmake) - find_package_handle_standard_args(SharedMimeInfo REQUIRED_VARS UPDATE_MIME_DATABASE_EXECUTABLE - VERSION_VAR smiVersion ) # This should go into MacroLogFeature/FeatureSummary: # message(FATAL_ERROR "Could NOT find shared-mime-info. See http://freedesktop.org/wiki/Software/shared-mime-info.") -endif (UPDATE_MIME_DATABASE_EXECUTABLE) mark_as_advanced(UPDATE_MIME_DATABASE_EXECUTABLE) -- cgit v1.2.1 From 4a57569b4946963501aec7937bd4148d773c39bd Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 09:43:11 +0000 Subject: -store the version number of SharedMimeInfo in the cache, so we don't have to search for it everytime again Alex svn path=/trunk/KDE/kdelibs/; revision=1179854 --- modules/FindSharedMimeInfo.cmake | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index f8db49c9..fda55162 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -33,18 +33,21 @@ endif(NOT SharedMimeInfo_FIND_VERSION) find_program (UPDATE_MIME_DATABASE_EXECUTABLE NAMES update-mime-database) -if (UPDATE_MIME_DATABASE_EXECUTABLE) +# Store the version number in the cache, so we don't have to search the next time again: +if (UPDATE_MIME_DATABASE_EXECUTABLE AND NOT SHAREDMIMEINFO_VERSION) exec_program (${UPDATE_MIME_DATABASE_EXECUTABLE} ARGS -v RETURN_VALUE _null OUTPUT_VARIABLE _smiVersionRaw) string(REGEX REPLACE "update-mime-database \\([a-zA-Z\\-]+\\) ([0-9]\\.[0-9]+).*" "\\1" smiVersion "${_smiVersionRaw}") -endif (UPDATE_MIME_DATABASE_EXECUTABLE) + + set(SHAREDMIMEINFO_VERSION "${smiVersion}" CACHE STRING "Version number of SharedMimeInfo") +endif (UPDATE_MIME_DATABASE_EXECUTABLE AND NOT SHAREDMIMEINFO_VERSION) # Use the new FPHSA() syntax: include(FindPackageHandleStandardArgs.cmake) find_package_handle_standard_args(SharedMimeInfo REQUIRED_VARS UPDATE_MIME_DATABASE_EXECUTABLE - VERSION_VAR smiVersion ) + VERSION_VAR SHAREDMIMEINFO_VERSION ) # For backward compatiblity: set(SHARED_MIME_INFO_FOUND ${SHAREDMIMEINFO_FOUND} ) -- cgit v1.2.1 From d58ab713800cc3824ab5af1372613dd84b4eb6d3 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 09:53:21 +0000 Subject: -FORCE the version number into the cache, so we get updated when necessary Alex svn path=/trunk/KDE/kdelibs/; revision=1179857 --- modules/FindSharedMimeInfo.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index fda55162..2082d9a2 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -41,7 +41,7 @@ if (UPDATE_MIME_DATABASE_EXECUTABLE AND NOT SHAREDMIMEINFO_VERSION) string(REGEX REPLACE "update-mime-database \\([a-zA-Z\\-]+\\) ([0-9]\\.[0-9]+).*" "\\1" smiVersion "${_smiVersionRaw}") - set(SHAREDMIMEINFO_VERSION "${smiVersion}" CACHE STRING "Version number of SharedMimeInfo") + set(SHAREDMIMEINFO_VERSION "${smiVersion}" CACHE STRING "Version number of SharedMimeInfo" FORCE) endif (UPDATE_MIME_DATABASE_EXECUTABLE AND NOT SHAREDMIMEINFO_VERSION) # Use the new FPHSA() syntax: -- cgit v1.2.1 From 1da2a6ee84e65dfb9fd5960968e9b8b91808cf3f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 10:00:19 +0000 Subject: -improve version checking for LibAttica - use the new FPHSA() mode - store the found version in the cache Alex svn path=/trunk/KDE/kdelibs/; revision=1179861 --- modules/FindLibAttica.cmake | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) (limited to 'modules') diff --git a/modules/FindLibAttica.cmake b/modules/FindLibAttica.cmake index f7652fba..bb919da7 100644 --- a/modules/FindLibAttica.cmake +++ b/modules/FindLibAttica.cmake @@ -6,13 +6,23 @@ # LIBATTICA_LIBRARY_DIRS Paths needed for linking against Attica # LIBATTICA_INCLUDE_DIR Path needed for finding Attica include files # +# The minimum required version of LibAttica can be specified using the +# standard syntax, e.g. find_package(LibAttica 0.20) + # Copyright (c) 2009 Frederik Gladhorn # # Redistribution and use is allowed according to the terms of the BSD license. -IF (NOT LIBATTICA_MIN_VERSION) - SET(LIBATTICA_MIN_VERSION "0.1.0") -ENDIF(NOT LIBATTICA_MIN_VERSION) +# Support LIBATTICA_MIN_VERSION for compatibility: +IF(NOT LibAttica_FIND_VERSION) + SET(LibAttica_FIND_VERSION "${LIBATTICA_MIN_VERSION}") +ENDIF(NOT LibAttica_FIND_VERSION) + +# the minimum version of LibAttica we require +IF(NOT LibAttica_FIND_VERSION) + SET(LibAttica_FIND_VERSION "0.1.0") +ENDIF(NOT LibAttica_FIND_VERSION) + IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -29,22 +39,15 @@ FIND_PATH(LIBATTICA_INCLUDE_DIR attica/provider.h PATH_SUFFIXES attica ) -SET(LIBATTICA_VERSION_OK TRUE) -IF(LIBATTICA_INCLUDE_DIR) +# Store the version number in the cache, so we don't have to search everytime: +IF(LIBATTICA_INCLUDE_DIR AND NOT LIBATTICA_VERSION) FILE(READ ${LIBATTICA_INCLUDE_DIR}/attica/version.h LIBATTICA_VERSION_CONTENT) STRING (REGEX MATCH "LIBATTICA_VERSION_STRING \".*\"\n" LIBATTICA_VERSION_MATCH "${LIBATTICA_VERSION_CONTENT}") IF(LIBATTICA_VERSION_MATCH) - STRING(REGEX REPLACE "LIBATTICA_VERSION_STRING \"(.*)\"\n" "\\1" LIBATTICA_VERSION ${LIBATTICA_VERSION_MATCH}) - IF(LIBATTICA_VERSION STRLESS "${LIBATTICA_MIN_VERSION}") - SET(LIBATTICA_VERSION_OK FALSE) - IF(LibAttica_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "LibAttica version ${LIBATTICA_VERSION} is too old. Please install ${LIBATTICA_MIN_VERSION} or newer.") - ELSE(LibAttica_FIND_REQUIRED) - MESSAGE(STATUS "LibAttica version ${LIBATTICA_VERSION} is too old. Please install ${LIBATTICA_MIN_VERSION} or newer.") - ENDIF(LibAttica_FIND_REQUIRED) - ENDIF(LIBATTICA_VERSION STRLESS "${LIBATTICA_MIN_VERSION}") + STRING(REGEX REPLACE "LIBATTICA_VERSION_STRING \"(.*)\"\n" "\\1" _LIBATTICA_VERSION ${LIBATTICA_VERSION_MATCH}) ENDIF(LIBATTICA_VERSION_MATCH) -ENDIF(LIBATTICA_INCLUDE_DIR) + SET(LIBATTICA_VERSION "${_LIBATTICA_VERSION}" CACHE STRING "Version number of LibAttica" FORCE) +ENDIF(LIBATTICA_INCLUDE_DIR AND NOT LIBATTICA_VERSION) FIND_LIBRARY(LIBATTICA_LIBRARIES NAMES attica libattica @@ -54,9 +57,7 @@ FIND_LIBRARY(LIBATTICA_LIBRARIES NAMES attica libattica ) INCLUDE(FindPackageHandleStandardArgs) -# handle the QUIETLY and REQUIRED arguments and set LIBATTICA_FOUND to TRUE if -# all listed variables are TRUE -FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibAttica DEFAULT_MSG LIBATTICA_LIBRARIES LIBATTICA_INCLUDE_DIR LIBATTICA_VERSION_OK) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibAttica REQUIRED_VARS LIBATTICA_LIBRARIES LIBATTICA_INCLUDE_DIR + VERSION_VAR LIBATTICA_VERSION) MARK_AS_ADVANCED(LIBATTICA_INCLUDE_DIR LIBATTICA_LIBRARIES) - -- cgit v1.2.1 From a79b5418e491a83ea758c04992aa4f65a033ee59 Mon Sep 17 00:00:00 2001 From: Christoph Feck Date: Sun, 26 Sep 2010 11:01:59 +0000 Subject: SVN_SILENT build svn path=/trunk/KDE/kdelibs/; revision=1179873 --- modules/FindSharedMimeInfo.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedMimeInfo.cmake b/modules/FindSharedMimeInfo.cmake index 2082d9a2..16e335d1 100644 --- a/modules/FindSharedMimeInfo.cmake +++ b/modules/FindSharedMimeInfo.cmake @@ -45,7 +45,7 @@ if (UPDATE_MIME_DATABASE_EXECUTABLE AND NOT SHAREDMIMEINFO_VERSION) endif (UPDATE_MIME_DATABASE_EXECUTABLE AND NOT SHAREDMIMEINFO_VERSION) # Use the new FPHSA() syntax: -include(FindPackageHandleStandardArgs.cmake) +include(FindPackageHandleStandardArgs) find_package_handle_standard_args(SharedMimeInfo REQUIRED_VARS UPDATE_MIME_DATABASE_EXECUTABLE VERSION_VAR SHAREDMIMEINFO_VERSION ) -- cgit v1.2.1 From 067428213344ff1067839e2e180848c1699c299d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 11:14:51 +0000 Subject: -improved version checking using the new mode of find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1179877 --- modules/FindFlex.cmake | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindFlex.cmake b/modules/FindFlex.cmake index a2db9864..6e54c5c4 100644 --- a/modules/FindFlex.cmake +++ b/modules/FindFlex.cmake @@ -4,6 +4,9 @@ # FLEX_FOUND - system has Flex # FLEX_EXECUTABLE - path of the flex executable # FLEX_VERSION - the version string, like "2.5.31" +# +# The minimum required version of Flex can be specified using the +# standard syntax, e.g. find_package(Flex 2.5) # Copyright (c) 2008, Jakob Petsovits, @@ -12,29 +15,21 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. FIND_PROGRAM(FLEX_EXECUTABLE NAMES flex) +FIND_PATH(FLEX_INCLUDE_DIR FlexLexer.h ) +FIND_LIBRARY(FLEX_LIBRARY fl) -INCLUDE(MacroEnsureVersion) - -IF(FLEX_EXECUTABLE) - SET(FLEX_FOUND TRUE) +IF(FLEX_EXECUTABLE AND NOT FLEX_VERSION) EXECUTE_PROCESS(COMMAND ${FLEX_EXECUTABLE} --version - OUTPUT_VARIABLE _FLEX_VERSION + OUTPUT_VARIABLE _FLEX_VERSION_OUTPUT ) - string (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" FLEX_VERSION "${_FLEX_VERSION}") -ENDIF(FLEX_EXECUTABLE) + STRING (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" _FLEX_VERSION "${_FLEX_VERSION_OUTPUT}") + SET(FLEX_VERSION "${_FLEX_VERSION}" CACHE STRING "Version number of Flex" FORCE) +ENDIF(FLEX_EXECUTABLE AND NOT FLEX_VERSION) -FIND_PATH(FLEX_INCLUDE_DIR FlexLexer.h ) -FIND_LIBRARY(FLEX_LIBRARY fl) -IF(FLEX_FOUND) - IF(NOT Flex_FIND_QUIETLY) - MESSAGE(STATUS "Found Flex: ${FLEX_EXECUTABLE} ${FLEX_VERSION}") - ENDIF(NOT Flex_FIND_QUIETLY) -ELSE(FLEX_FOUND) - IF(Flex_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Flex") - ENDIF(Flex_FIND_REQUIRED) -ENDIF(FLEX_FOUND) +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Flex REQUIRED_VARS FLEX_EXECUTABLE + VERSION_VAR FLEX_VERSION ) MARK_AS_ADVANCED(FLEX_INCLUDE_DIR FLEX_LIBRARY FLEX_EXECUTABLE) -- cgit v1.2.1 From e1eb5b5d4b989b2e07c96cb4ea463a4891b36bf1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 11:27:17 +0000 Subject: -improve version checking for LCMS using the new mode of find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1179880 --- modules/FindLCMS.cmake | 48 +++++++++++++++++------------------------------- 1 file changed, 17 insertions(+), 31 deletions(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 2b1f3cd7..e321e86c 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -1,11 +1,13 @@ # - Find LCMS -# Find the LCMS includes and library +# Find the LCMS (Little Color Management System) library and includes and # This module defines # LCMS_INCLUDE_DIR, where to find lcms.h # LCMS_LIBRARIES, the libraries needed to use LCMS. # LCMS_VERSION, The value of LCMS_VERSION defined in lcms.h # LCMS_FOUND, If false, do not try to use LCMS. - +# +# The minimum required version of LCMS can be specified using the +# standard syntax, e.g. find_package(LCMS 1.1) # Copyright (c) 2008, Adrian Page, # Copyright (c) 2009, Cyrille Berger, @@ -23,50 +25,34 @@ if(NOT WIN32) endif(NOT WIN32) find_path(LCMS_INCLUDE_DIR lcms.h - PATHS + HINTS ${PC_LCMS_INCLUDEDIR} ${PC_LCMS_INCLUDE_DIRS} PATH_SUFFIXES lcms liblcms1 ) find_library(LCMS_LIBRARIES NAMES lcms liblcms lcms-1 liblcms-1 - PATHS + HINTS ${PC_LCMS_LIBDIR} ${PC_LCMS_LIBRARY_DIRS} PATH_SUFFIXES lcms ) -if(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) - set(LCMS_FOUND TRUE) -else(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) - set(LCMS_FOUND FALSE) -endif(LCMS_INCLUDE_DIR AND LCMS_LIBRARIES) - -if(LCMS_FOUND) +# Store the LCMS version number in the cache, so we don't have to search everytime again +if(LCMS_INCLUDE_DIR AND NOT LCMS_VERSION) file(READ ${LCMS_INCLUDE_DIR}/lcms.h LCMS_VERSION_CONTENT) string(REGEX MATCH "#define LCMS_VERSION[ ]*[0-9]*\n" LCMS_VERSION_MATCH ${LCMS_VERSION_CONTENT}) if(LCMS_VERSION_MATCH) - string(REGEX REPLACE "#define LCMS_VERSION[ ]*([0-9]*)\n" "\\1" LCMS_VERSION ${LCMS_VERSION_MATCH}) - if(NOT LCMS_FIND_QUIETLY) - string(SUBSTRING ${LCMS_VERSION} 0 1 LCMS_MAJOR_VERSION) - string(SUBSTRING ${LCMS_VERSION} 1 2 LCMS_MINOR_VERSION) - message(STATUS "Found lcms version ${LCMS_MAJOR_VERSION}.${LCMS_MINOR_VERSION}, ${LCMS_LIBRARIES}") - endif(NOT LCMS_FIND_QUIETLY) - else(LCMS_VERSION_MATCH) - if(NOT LCMS_FIND_QUIETLY) - message(STATUS "Found lcms but failed to find version ${LCMS_LIBRARIES}") - endif(NOT LCMS_FIND_QUIETLY) - set(LCMS_VERSION NOTFOUND) + string(REGEX REPLACE "#define LCMS_VERSION[ ]*([0-9]*)\n" "\\1" _LCMS_VERSION ${LCMS_VERSION_MATCH}) + string(SUBSTRING ${_LCMS_VERSION} 0 1 LCMS_MAJOR_VERSION) + string(SUBSTRING ${_LCMS_VERSION} 1 2 LCMS_MINOR_VERSION) endif(LCMS_VERSION_MATCH) -else(LCMS_FOUND) - if(NOT LCMS_FIND_QUIETLY) - if(LCMS_FIND_REQUIRED) - message(FATAL_ERROR "Required package lcms NOT found") - else(LCMS_FIND_REQUIRED) - message(STATUS "lcms NOT found") - endif(LCMS_FIND_REQUIRED) - endif(NOT LCMS_FIND_QUIETLY) -endif(LCMS_FOUND) + set(LCMS_VERSION "${LCMS_MAJOR_VERSION}.${LCMS_MINOR_VERSION}" CACHE STRING "Version number of lcms" FORCE) +endif(LCMS_INCLUDE_DIR AND NOT LCMS_VERSION) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(LCMS REQUIRED_VARS LCMS_LIBRARIES LCMS_INCLUDE_DIR + VERSION_VAR LCMS_VERSION ) mark_as_advanced(LCMS_INCLUDE_DIR LCMS_LIBRARIES LCMS_VERSION) -- cgit v1.2.1 From 3226dce345ea60b7ef08392f1a5f3b467a299ed1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 11:38:54 +0000 Subject: -use find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1179886 --- modules/FindOggVorbis.cmake | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/FindOggVorbis.cmake b/modules/FindOggVorbis.cmake index e72d849d..28575d39 100644 --- a/modules/FindOggVorbis.cmake +++ b/modules/FindOggVorbis.cmake @@ -31,7 +31,6 @@ mark_as_advanced(VORBIS_INCLUDE_DIR OGG_INCLUDE_DIR if (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_LIBRARY) - set(OGGVORBIS_FOUND TRUE) set(OGGVORBIS_LIBRARIES ${OGG_LIBRARY} ${VORBIS_LIBRARY} ${VORBISFILE_LIBRARY} ${VORBISENC_LIBRARY}) @@ -46,24 +45,12 @@ if (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_L set (OGGVORBIS_VERSION 1) endif (HAVE_LIBVORBISENC2) -else (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_LIBRARY) - set (OGGVORBIS_VERSION) - set(OGGVORBIS_FOUND FALSE) endif (VORBIS_INCLUDE_DIR AND VORBIS_LIBRARY AND VORBISFILE_LIBRARY AND VORBISENC_LIBRARY) -if (OGGVORBIS_FOUND) - if (NOT OggVorbis_FIND_QUIETLY) - message(STATUS "Found OggVorbis: ${OGGVORBIS_LIBRARIES}") - endif (NOT OggVorbis_FIND_QUIETLY) -else (OGGVORBIS_FOUND) - if (OggVorbis_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find OggVorbis libraries") - endif (OggVorbis_FIND_REQUIRED) - if (NOT OggVorbis_FIND_QUITELY) - message(STATUS "Could NOT find OggVorbis libraries") - endif (NOT OggVorbis_FIND_QUITELY) -endif (OGGVORBIS_FOUND) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(OggVorbis REQUIRED_VARS VORBIS_LIBRARY OGG_LIBRARY VORBISFILE_LIBRARY VORBISENC_LIBRARY + VORBIS_INCLUDE_DIR OGG_INCLUDE_DIR) #check_include_files(vorbis/vorbisfile.h HAVE_VORBISFILE_H) #check_library_exists(ogg ogg_page_version "" HAVE_LIBOGG) -- cgit v1.2.1 From 4b3081f583baeff8a8329e20149028a7fc602f27 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 11:50:03 +0000 Subject: -improved version checking using the new mode of Find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1179890 --- modules/FindPolkitQt-1.cmake | 56 +++++++++++++++++++------------------------- 1 file changed, 24 insertions(+), 32 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake index 159a54cc..c2f6a33c 100644 --- a/modules/FindPolkitQt-1.cmake +++ b/modules/FindPolkitQt-1.cmake @@ -8,19 +8,24 @@ # POLKITQT-1_GUI_LIBRARY - Link this to use GUI elements in polkit-qt (polkit-qt-gui) # POLKITQT-1_AGENT_LIBRARY - Link this to use the agent wrapper in polkit-qt # POLKITQT-1_DEFINITIONS - Compiler switches required for using Polkit-qt +# +# The minimum required version of PolkitQt-1 can be specified using the +# standard syntax, e.g. find_package(PolkitQt-1 1.0) # Copyright (c) 2009, Dario Freddi, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (POLKITQT-1_INCLUDE_DIR AND POLKITQT-1_LIB) - set(POLKITQT-1_FIND_QUIETLY TRUE) -endif (POLKITQT-1_INCLUDE_DIR AND POLKITQT-1_LIB) +# Support POLKITQT-1_MIN_VERSION for compatibility: +if(NOT PolkitQt-1_FIND_VERSION) + set(PolkitQt-1_FIND_VERSION "${POLKITQT-1_MIN_VERSION}") +endif(NOT PolkitQt-1_FIND_VERSION) -if (NOT POLKITQT-1_MIN_VERSION) - set(POLKITQT-1_MIN_VERSION "0.95.1") -endif (NOT POLKITQT-1_MIN_VERSION) +# the minimum version of PolkitQt-1 we require +if(NOT PolkitQt-1_FIND_VERSION) + set(PolkitQt-1_FIND_VERSION "0.95.1") +endif(NOT PolkitQt-1_FIND_VERSION) if (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -40,37 +45,22 @@ find_file( POLKITQT-1_VERSION_FILE PATHS ${POLKITQT-1_INCLUDE_DIR} ) -set(POLKITQT-1_VERSION_OK TRUE) -if(POLKITQT-1_VERSION_FILE) +# Search the version and store it in the cache so we don't have to do this everytime +if(POLKITQT-1_VERSION_FILE AND NOT POLKITQT-1_VERSION) file(READ ${POLKITQT-1_VERSION_FILE} POLKITQT-1_VERSION_CONTENT) string (REGEX MATCH "POLKITQT1_VERSION_STRING \".*\"\n" POLKITQT-1_VERSION_MATCH "${POLKITQT-1_VERSION_CONTENT}") - + if(POLKITQT-1_VERSION_MATCH) - string(REGEX REPLACE "POLKITQT1_VERSION_STRING \"(.*)\"\n" "\\1" POLKITQT-1_VERSION ${POLKITQT-1_VERSION_MATCH}) - if(POLKITQT-1_VERSION STRLESS "${POLKITQT-1_MIN_VERSION}") - set(POLKITQT-1_VERSION_OK FALSE) - if(PolkitQt-1_FIND_REQUIRED) - message(FATAL_ERROR "PolkitQt-1 version ${POLKITQT-1_VERSION} was found, but it is too old. Please install ${POLKITQT-1_MIN_VERSION} or newer.") - else(PolkitQt-1_FIND_REQUIRED) - message(STATUS "PolkitQt-1 version ${POLKITQT-1_VERSION} is too old. Please install ${POLKITQT-1_MIN_VERSION} or newer.") - endif(PolkitQt-1_FIND_REQUIRED) - endif(POLKITQT-1_VERSION STRLESS "${POLKITQT-1_MIN_VERSION}") + string(REGEX REPLACE "POLKITQT1_VERSION_STRING \"(.*)\"\n" "\\1" _POLKITQT-1_VERSION ${POLKITQT-1_VERSION_MATCH}) endif(POLKITQT-1_VERSION_MATCH) -elseif(POLKITQT-1_INCLUDE_DIR) - # The version is so old that it does not even have the file - set(POLKITQT-1_VERSION_OK FALSE) - if(PolkitQt_FIND_REQUIRED) - message(FATAL_ERROR "It looks like PolkitQt-1 is too old. Please install PolkitQt-1 version ${POLKITQT-1_MIN_VERSION} or newer.") - else(PolkitQt_FIND_REQUIRED) - message(STATUS "It looks like PolkitQt-1 is too old. Please install PolkitQt-1 version ${POLKITQT-1_MIN_VERSION} or newer.") - endif(PolkitQt_FIND_REQUIRED) -endif(POLKITQT-1_VERSION_FILE) + set(POLKITQT-1_VERSION "${_POLKITQT-1_VERSION}" CACHE STRING "Version number of PolkitQt-1" FORCE) +endif(POLKITQT-1_VERSION_FILE AND NOT POLKITQT-1_VERSION) -find_library( POLKITQT-1_CORE_LIBRARY +find_library( POLKITQT-1_CORE_LIBRARY NAMES polkit-qt-core-1 HINTS ${PC_POLKITQT-1_LIBDIR} ) -find_library( POLKITQT-1_GUI_LIBRARY +find_library( POLKITQT-1_GUI_LIBRARY NAMES polkit-qt-gui-1 HINTS ${PC_POLKITQT-1_LIBDIR} ) @@ -83,11 +73,13 @@ set(POLKITQT-1_LIBRARIES ${POLKITQT-1_GUI_LIBRARY} ${POLKITQT-1_CORE_LIBRARY} ${ include(FindPackageHandleStandardArgs) -# handle the QUIETLY and REQUIRED arguments and set POLKITQT-1_FOUND to TRUE if +# handle the QUIETLY and REQUIRED arguments and set POLKITQT-1_FOUND to TRUE if # all listed variables are TRUE -find_package_handle_standard_args(PolkitQt-1 DEFAULT_MSG POLKITQT-1_LIBRARIES POLKITQT-1_INCLUDE_DIR POLKITQT-1_VERSION_OK) +find_package_handle_standard_args(PolkitQt-1 REQUIRED_VARS POLKITQT-1_GUI_LIBRARY POLKITQT-1_CORE_LIBRARY + POLKITQT-1_AGENT_LIBRARY POLKITQT-1_INCLUDE_DIR + VERSION_VAR POLKITQT-1_VERSION ) -mark_as_advanced(POLKITQT-1_INCLUDE_DIR +mark_as_advanced(POLKITQT-1_INCLUDE_DIR POLKITQT-1_CORE_LIBRARY POLKITQT-1_GUI_LIBRARY POLKITQT-1_AGENT_LIBRARY -- cgit v1.2.1 From 0dce2cd2eb81be663d5f97d4d0bc11b4e4abc42d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 12:00:08 +0000 Subject: -improved version checking using the new syntax of Find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1179891 --- modules/FindPolkitQt.cmake | 65 +++++++++++++++++++--------------------------- 1 file changed, 26 insertions(+), 39 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt.cmake b/modules/FindPolkitQt.cmake index e46f286d..3f9db5a0 100644 --- a/modules/FindPolkitQt.cmake +++ b/modules/FindPolkitQt.cmake @@ -9,8 +9,9 @@ # POLKITQT_DEFINITIONS - Compiler switches required for using Polkit-qt # POLKITQT_POLICY_FILES_INSTALL_DIR - The directory where policy files should be installed to. # -# The minimum required version PolkitQt can be specified by setting the -# POLKITQT_MIN_VERSION variable. +# The minimum required version of PolkitQt can be specified using the +# standard syntax, e.g. find_package(PolkitQt 1.0) +# For compatiblity, this can also be done by setting the POLKITQT_MIN_VERSION variable. # Copyright (c) 2009, Daniel Nicoletti, # Copyright (c) 2009, Dario Freddi, @@ -20,13 +21,16 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (POLKITQT_INCLUDE_DIR AND POLKITQT_GUI_LIBRARY AND POLKITQT_CORE_LIBRARY) - set(PolkitQt_FIND_QUIETLY TRUE) -endif (POLKITQT_INCLUDE_DIR AND POLKITQT_GUI_LIBRARY AND POLKITQT_CORE_LIBRARY) -if (NOT POLKITQT_MIN_VERSION) - set(POLKITQT_MIN_VERSION "0.9.3") -endif (NOT POLKITQT_MIN_VERSION) +# Support POLKITQT_MIN_VERSION for compatibility: +if(NOT PolkitQt_FIND_VERSION) + set(PolkitQt_FIND_VERSION "${POLKITQT_MIN_VERSION}") +endif(NOT PolkitQt_FIND_VERSION) + +# the minimum version of PolkitQt we require +if(NOT PolkitQt_FIND_VERSION) + set(PolkitQt_FIND_VERSION "0.9.3") +endif(NOT PolkitQt_FIND_VERSION) if (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -43,52 +47,35 @@ find_path( POLKITQT_INCLUDE_DIR find_file( POLKITQT_VERSION_FILE polkit-qt/polkitqtversion.h - PATHS ${POLKITQT_INCLUDE_DIR} + HINTS ${POLKITQT_INCLUDE_DIR} ) -set(POLKITQT_VERSION_OK TRUE) -if(POLKITQT_VERSION_FILE) +if(POLKITQT_VERSION_FILE AND NOT POLKITQT_VERSION) file(READ ${POLKITQT_VERSION_FILE} POLKITQT_VERSION_CONTENT) string (REGEX MATCH "POLKITQT_VERSION_STRING \".*\"\n" POLKITQT_VERSION_MATCH "${POLKITQT_VERSION_CONTENT}") - + if(POLKITQT_VERSION_MATCH) - string(REGEX REPLACE "POLKITQT_VERSION_STRING \"(.*)\"\n" "\\1" POLKITQT_VERSION ${POLKITQT_VERSION_MATCH}) - if(POLKITQT_VERSION STRLESS "${POLKITQT_MIN_VERSION}") - set(POLKITQT_VERSION_OK FALSE) - if(PolkitQt_FIND_REQUIRED) - message(FATAL_ERROR "PolkitQt version ${POLKITQT_VERSION} was found, but it is too old. Please install ${POLKITQT_MIN_VERSION} or newer.") - else(PolkitQt_FIND_REQUIRED) - message(STATUS "PolkitQt version ${POLKITQT_VERSION} is too old. Please install ${POLKITQT_MIN_VERSION} or newer.") - endif(PolkitQt_FIND_REQUIRED) - endif(POLKITQT_VERSION STRLESS "${POLKITQT_MIN_VERSION}") + string(REGEX REPLACE "POLKITQT_VERSION_STRING \"(.*)\"\n" "\\1" _POLKITQT_VERSION ${POLKITQT_VERSION_MATCH}) endif(POLKITQT_VERSION_MATCH) -elseif(POLKITQT_INCLUDE_DIR) - # The version is so old that it does not even have the file - set(POLKITQT_VERSION_OK FALSE) - if(PolkitQt_FIND_REQUIRED) - message(FATAL_ERROR "It looks like PolkitQt is too old. Please install PolkitQt version ${POLKITQT_MIN_VERSION} or newer.") - else(PolkitQt_FIND_REQUIRED) - message(STATUS "It looks like PolkitQt is too old. Please install PolkitQt version ${POLKITQT_MIN_VERSION} or newer.") - endif(PolkitQt_FIND_REQUIRED) -endif(POLKITQT_VERSION_FILE) + set(POLKITQT_VERSION "${_POLKITQT_VERSION}" CACHE STRING "Version number of PolkitQt" FORCE) +endif(POLKITQT_VERSION_FILE AND NOT POLKITQT_VERSION) -find_library( POLKITQT_CORE_LIBRARY - NAMES polkit-qt-core +find_library( POLKITQT_CORE_LIBRARY + NAMES polkit-qt-core HINTS ${PC_POLKITQT_LIBDIR} ) -find_library( POLKITQT_GUI_LIBRARY - NAMES polkit-qt-gui +find_library( POLKITQT_GUI_LIBRARY + NAMES polkit-qt-gui HINTS ${PC_POLKITQT_LIBDIR} ) set(POLKITQT_LIBRARIES ${POLKITQT_GUI_LIBRARY} ${POLKITQT_CORE_LIBRARY}) include(FindPackageHandleStandardArgs) +# Use the extended (new) syntax for FPHSA(): +find_package_handle_standard_args(PolkitQt REQUIRED_VARS POLKITQT_GUI_LIBRARY POLKITQT_CORE_LIBRARY POLKITQT_INCLUDE_DIR + VERSION_VAR POLKITQT_VERSION) -# handle the QUIETLY and REQUIRED arguments and set POLKITQT_FOUND to TRUE if -# all listed variables are TRUE -find_package_handle_standard_args(PolkitQt DEFAULT_MSG POLKITQT_INCLUDE_DIR POLKITQT_GUI_LIBRARY POLKITQT_CORE_LIBRARY POLKITQT_VERSION_OK) - -mark_as_advanced(POLKITQT_INCLUDE_DIR +mark_as_advanced(POLKITQT_INCLUDE_DIR POLKITQT_CORE_LIBRARY POLKITQT_GUI_LIBRARY POLKITQT_VERSION_FILE -- cgit v1.2.1 From c69e3eeb9268b98f10ba056db93894607ed4baa4 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 16:18:18 +0000 Subject: -consisten lowercasing Alex svn path=/trunk/KDE/kdelibs/; revision=1179954 --- modules/FindPulseAudio.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index dbb1f6b5..1446a763 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -6,7 +6,7 @@ # PULSEAUDIO_INCLUDE_DIR - the PulseAudio include directory # PULSEAUDIO_LIBRARY - the libraries needed to use PulseAudio # PULSEAUDIO_MAINLOOP_LIBRARY - the libraries needed to use PulsAudio Mailoop -# + # Copyright (c) 2008, Matthias Kretz, # Copyright (c) 2009, Marcus Hufgard, # @@ -28,19 +28,19 @@ if (NOT WIN32) pkg_check_modules(PC_PULSEAUDIO_MAINLOOP QUIET libpulse-mainloop-glib) endif (NOT WIN32) -FIND_PATH(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h +find_path(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h HINTS ${PC_PULSEAUDIO_INCLUDEDIR} ${PC_PULSEAUDIO_INCLUDE_DIRS} ) -FIND_LIBRARY(PULSEAUDIO_LIBRARY NAMES pulse libpulse +find_library(PULSEAUDIO_LIBRARY NAMES pulse libpulse HINTS ${PC_PULSEAUDIO_LIBDIR} ${PC_PULSEAUDIO_LIBRARY_DIRS} ) -FIND_LIBRARY(PULSEAUDIO_MAINLOOP_LIBRARY NAMES pulse-mainloop pulse-mainloop-glib libpulse-mainloop-glib +find_library(PULSEAUDIO_MAINLOOP_LIBRARY NAMES pulse-mainloop pulse-mainloop-glib libpulse-mainloop-glib HINTS ${PC_PULSEAUDIO_LIBDIR} ${PC_PULSEAUDIO_LIBRARY_DIRS} -- cgit v1.2.1 From 1f3daef3b1aa4a8797fca19cdc6a8146c8f3658f Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 16:29:35 +0000 Subject: -improved version checking using the new find_package_handle_standard_args() VERSION_VAR feature Alex svn path=/trunk/KDE/kdelibs/; revision=1179957 --- modules/FindPulseAudio.cmake | 51 ++++++++++++++++++++------------------------ 1 file changed, 23 insertions(+), 28 deletions(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index 1446a763..6a84ba7c 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -5,7 +5,10 @@ # PULSEAUDIO_FOUND - system has the PulseAudio library # PULSEAUDIO_INCLUDE_DIR - the PulseAudio include directory # PULSEAUDIO_LIBRARY - the libraries needed to use PulseAudio -# PULSEAUDIO_MAINLOOP_LIBRARY - the libraries needed to use PulsAudio Mailoop +# PULSEAUDIO_MAINLOOP_LIBRARY - the libraries needed to use PulsAudio Mainloop +# +# The minimum required version of PulseAudio can be specified using the +# standard syntax, e.g. find_package(PulseAudio 1.0) # Copyright (c) 2008, Matthias Kretz, # Copyright (c) 2009, Marcus Hufgard, @@ -13,18 +16,19 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (NOT PULSEAUDIO_MINIMUM_VERSION) - set(PULSEAUDIO_MINIMUM_VERSION "0.9.9") -endif (NOT PULSEAUDIO_MINIMUM_VERSION) +# Support PULSEAUDIO_MINIMUM_VERSION for compatibility: +if(NOT PulseAudio_FIND_VERSION) + set(PulseAudio_FIND_VERSION "${PULSEAUDIO_MINIMUM_VERSION}") +endif(NOT PulseAudio_FIND_VERSION) -if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY AND PULSEAUDIO_MAINLOOP_LIBRARY) - # Already in cache, be silent - set(PULSEAUDIO_FIND_QUIETLY TRUE) -endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY AND PULSEAUDIO_MAINLOOP_LIBRARY) +# the minimum version of PulseAudio we require +if(NOT PulseAudio_FIND_VERSION) + set(PulseAudio_FIND_VERSION "0.9.9") +endif(NOT PulseAudio_FIND_VERSION) if (NOT WIN32) include(FindPkgConfig) - pkg_check_modules(PC_PULSEAUDIO QUIET libpulse>=${PULSEAUDIO_MINIMUM_VERSION}) + pkg_check_modules(PC_PULSEAUDIO QUIET libpulse>=${PulseAudio_FIND_VERSION}) pkg_check_modules(PC_PULSEAUDIO_MAINLOOP QUIET libpulse-mainloop-glib) endif (NOT WIN32) @@ -46,31 +50,22 @@ find_library(PULSEAUDIO_MAINLOOP_LIBRARY NAMES pulse-mainloop pulse-mainloop-gli ${PC_PULSEAUDIO_LIBRARY_DIRS} ) -if (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - include(MacroEnsureVersion) +# Store the version number in the cache, so we don't have to search every time again: +if (PULSEAUDIO_INCLUDE_DIR AND NOT PULSEAUDIO_VERSION) # get PulseAudio's version from its version.h, and compare it with our minimum version file(STRINGS "${PULSEAUDIO_INCLUDE_DIR}/pulse/version.h" pulse_version_h REGEX ".*pa_get_headers_version\\(\\).*" ) string(REGEX REPLACE ".*pa_get_headers_version\\(\\)\ \\(\"([0-9]+\\.[0-9]+\\.[0-9]+)\"\\).*" "\\1" - PULSEAUDIO_VERSION "${pulse_version_h}") - macro_ensure_version("${PULSEAUDIO_MINIMUM_VERSION}" "${PULSEAUDIO_VERSION}" PULSEAUDIO_FOUND) -else (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) - set(PULSEAUDIO_FOUND FALSE) -endif (PULSEAUDIO_INCLUDE_DIR AND PULSEAUDIO_LIBRARY) + _PULSEAUDIO_VERSION "${pulse_version_h}") + + set(PULSEAUDIO_VERSION "${_PULSEAUDIO_VERSION}" CACHE STRING "Version number of PulseAudio" FORCE) +endif (PULSEAUDIO_INCLUDE_DIR AND NOT PULSEAUDIO_VERSION) -if (PULSEAUDIO_FOUND) - if (NOT PULSEAUDIO_FIND_QUIETLY) - message(STATUS "Found PulseAudio: ${PULSEAUDIO_LIBRARY}") - if (PULSEAUDIO_MAINLOOP_LIBRARY) - message(STATUS "Found PulseAudio Mainloop: ${PULSEAUDIO_MAINLOOP_LIBRARY}") - else (PULSAUDIO_MAINLOOP_LIBRARY) - message(STATUS "Could NOT find PulseAudio Mainloop Library") - endif (PULSEAUDIO_MAINLOOP_LIBRARY) - endif (NOT PULSEAUDIO_FIND_QUIETLY) -else (PULSEAUDIO_FOUND) - message(STATUS "Could NOT find PulseAudio") -endif (PULSEAUDIO_FOUND) +# Use the new extended syntax of find_package_handle_standard_args(), which also handles version checking: +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(PulseAudio REQUIRED_VARS PULSEAUDIO_LIBRARY PULSEAUDIO_INCLUDE_DIR + VERSION_VAR PULSEAUDIO_VERSION ) mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY PULSEAUDIO_MAINLOOP_LIBRARY) -- cgit v1.2.1 From eb2dd953289c2cf3151b1badda8afe6e5458024d Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 16:38:25 +0000 Subject: -consistent upper/lowercasing -remove the unnecessary if(already found) set(QUIET TRUE), since this is already handled by find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1179961 --- modules/FindSane.cmake | 13 +++---------- modules/FindSasl2.cmake | 13 ++++--------- modules/FindSqlite.cmake | 8 ++++---- modules/FindUSB.cmake | 34 +++++++++++++--------------------- 4 files changed, 24 insertions(+), 44 deletions(-) (limited to 'modules') diff --git a/modules/FindSane.cmake b/modules/FindSane.cmake index 6c60cf63..64efa87a 100644 --- a/modules/FindSane.cmake +++ b/modules/FindSane.cmake @@ -9,20 +9,13 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (SANE_INCLUDE_DIR AND SANE_LIBRARY) - # Already in cache, be silent - set(Sane_FIND_QUIETLY TRUE) -endif (SANE_INCLUDE_DIR AND SANE_LIBRARY) - FIND_PATH(SANE_INCLUDE_DIR sane/sane.h) FIND_LIBRARY(SANE_LIBRARY NAMES sane libsane - PATHS - /usr/lib/sane - /usr/local/lib/sane + PATH_SUFFIXES sane ) -include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sane DEFAULT_MSG SANE_INCLUDE_DIR SANE_LIBRARY ) +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sane DEFAULT_MSG SANE_LIBRARY SANE_INCLUDE_DIR ) MARK_AS_ADVANCED(SANE_INCLUDE_DIR SANE_LIBRARY) diff --git a/modules/FindSasl2.cmake b/modules/FindSasl2.cmake index 787b578c..9fe12ea2 100644 --- a/modules/FindSasl2.cmake +++ b/modules/FindSasl2.cmake @@ -11,21 +11,16 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (SASL2_INCLUDE_DIR) - # Already in cache, be silent - set(SASL2_FIND_QUIETLY TRUE) -endif (SASL2_INCLUDE_DIR) - -FIND_PATH(SASL2_INCLUDE_DIR sasl/sasl.h +find_path(SASL2_INCLUDE_DIR sasl/sasl.h ) # libsasl2 add for windows, because the windows package of cyrus-sasl2 # contains a libsasl2 also for msvc which is not standard conform -FIND_LIBRARY(SASL2_LIBRARIES NAMES sasl2 libsasl2 +find_library(SASL2_LIBRARIES NAMES sasl2 libsasl2 ) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sasl2 DEFAULT_MSG SASL2_INCLUDE_DIR SASL2_LIBRARIES) +find_package_handle_standard_args(Sasl2 DEFAULT_MSG SASL2_LIBRARIES SASL2_INCLUDE_DIR) -MARK_AS_ADVANCED(SASL2_INCLUDE_DIR SASL2_LIBRARIES) +mark_as_advanced(SASL2_INCLUDE_DIR SASL2_LIBRARIES) diff --git a/modules/FindSqlite.cmake b/modules/FindSqlite.cmake index dc36457b..c4f2e90a 100644 --- a/modules/FindSqlite.cmake +++ b/modules/FindSqlite.cmake @@ -30,21 +30,21 @@ if( NOT WIN32 ) set(SQLITE_DEFINITIONS ${PC_SQLITE_CFLAGS_OTHER}) endif( NOT WIN32 ) -FIND_PATH(SQLITE_INCLUDE_DIR NAMES sqlite3.h +find_path(SQLITE_INCLUDE_DIR NAMES sqlite3.h PATHS ${PC_SQLITE_INCLUDEDIR} ${PC_SQLITE_INCLUDE_DIRS} ) -FIND_LIBRARY(SQLITE_LIBRARIES NAMES sqlite3 +find_library(SQLITE_LIBRARIES NAMES sqlite3 PATHS ${PC_SQLITE_LIBDIR} ${PC_SQLITE_LIBRARY_DIRS} ) include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sqlite DEFAULT_MSG SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) +find_package_handle_standard_args(Sqlite DEFAULT_MSG SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) # show the SQLITE_INCLUDE_DIR and SQLITE_LIBRARIES variables only in the advanced view -MARK_AS_ADVANCED(SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) +mark_as_advanced(SQLITE_INCLUDE_DIR SQLITE_LIBRARIES ) diff --git a/modules/FindUSB.cmake b/modules/FindUSB.cmake index dfcf650c..f0178a3c 100644 --- a/modules/FindUSB.cmake +++ b/modules/FindUSB.cmake @@ -11,28 +11,20 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) +if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + pkg_check_modules(PC_LIBUSB QUIET libusb) +endif(NOT WIN32) - # in cache already - set(LIBUSB_FOUND TRUE) +find_path(LIBUSB_INCLUDE_DIR usb.h + HINTS ${PC_LIBUSB_INCLUDEDIR} ${PC_LIBUSB_INCLUDE_DIRS}) -else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) - IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - pkg_check_modules(PC_LIBUSB QUIET libusb) - ENDIF(NOT WIN32) +find_library(LIBUSB_LIBRARIES NAMES usb + HINTS ${PC_LIBUSB_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS}) - FIND_PATH(LIBUSB_INCLUDE_DIR usb.h - PATHS ${PC_LIBUSB_INCLUDEDIR} ${PC_LIBUSB_INCLUDE_DIRS}) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIR) - FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb - PATHS ${PC_LIBUSB_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS}) - - include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIR) - - MARK_AS_ADVANCED(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) - -endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) +mark_as_advanced(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) -- cgit v1.2.1 From 2d268b33b611d8ad73fbc79716a214bf1083f11b Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 16:44:11 +0000 Subject: -simplify FindFlac.cmake by using find_package_handle_standard_args() Alex svn path=/trunk/KDE/kdelibs/; revision=1179965 --- modules/FindFlac.cmake | 31 +++++-------------------------- 1 file changed, 5 insertions(+), 26 deletions(-) (limited to 'modules') diff --git a/modules/FindFlac.cmake b/modules/FindFlac.cmake index 56b3eef9..208e3fc3 100644 --- a/modules/FindFlac.cmake +++ b/modules/FindFlac.cmake @@ -15,11 +15,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) - # Already in cache, be silent - set(Flac_FIND_QUIETLY TRUE) -endif(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) - FIND_PATH(FLAC_INCLUDE_DIR FLAC/metadata.h) FIND_LIBRARY(FLAC_LIBRARIES NAMES FLAC ) @@ -27,28 +22,12 @@ FIND_LIBRARY(FLAC_LIBRARIES NAMES FLAC ) FIND_LIBRARY(FLAC_OGG_LIBRARY NAMES OggFLAC) +IF(FLAC_LIBRARIES AND FLAC_OGG_LIBRARY) + SET(FLAC_OGGFLAC_LIBRARIES ${FLAC_OGG_LIBRARY} ${FLAC_LIBRARIES}) +ENDIF(FLAC_LIBRARIES AND FLAC_OGG_LIBRARY) -IF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) - SET(FLAC_FOUND TRUE) - IF (FLAC_OGG_LIBRARY) - SET(FLAC_OGGFLAC_LIBRARIES ${FLAC_OGG_LIBRARY} ${FLAC_LIBRARIES}) - ENDIF (FLAC_OGG_LIBRARY) -ELSE(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) - SET(FLAC_FOUND FALSE) -ENDIF(FLAC_INCLUDE_DIR AND FLAC_LIBRARIES) - -IF(FLAC_FOUND) - IF(NOT Flac_FIND_QUIETLY) - MESSAGE(STATUS "Found Flac: ${FLAC_LIBRARIES}") - ENDIF(NOT Flac_FIND_QUIETLY) -ELSE(FLAC_FOUND) - IF(Flac_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find Flac") - ENDIF(Flac_FIND_REQUIRED) - IF(NOT Flac_FIND_QUIETLY) - MESSAGE(STATUS "Could not find Flac") - ENDIF(NOT Flac_FIND_QUIETLY) -ENDIF(FLAC_FOUND) +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Flac REQUIRED_VARS FLAC_LIBRARIES FLAC_INCLUDE_DIR) # show the FLAC_INCLUDE_DIR and FLAC_LIBRARIES variables only in the advanced view MARK_AS_ADVANCED(FLAC_INCLUDE_DIR FLAC_LIBRARIES FLAC_OGG_LIBRARY) -- cgit v1.2.1 From cd286563da32aa4b1123c8ff0c517d0ec07e5006 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 16:48:59 +0000 Subject: -add an include guard at the top, to avoid parsing this file again and again Alex svn path=/trunk/KDE/kdelibs/; revision=1179967 --- modules/FindPackageHandleStandardArgs.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index c698480b..4bede7c8 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -67,6 +67,12 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) +# Include guard, it's not necessary to parse this fail again and again: +IF(_FPHSA_ALREADY_INCLUDED) + RETURN() +ENDIF(_FPHSA_ALREADY_INCLUDED) +SET(_FPHSA_ALREADY_INCLUDED TRUE) + INCLUDE(FindPackageMessage) INCLUDE(CMakeParseArguments) @@ -112,7 +118,7 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG _VAR1) STRING(TOUPPER ${_NAME} _NAME_UPPER) - # collect all variables which were not found, so they can be printed, so the + # collect all variables which were not found, so they can be printed, so the # user knows better what went wrong (#6375) SET(MISSING_VARS "") SET(DETAILS "") -- cgit v1.2.1 From 073b609b621d9fdec9beeaf3c8d42c41ad2050c0 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 17:30:20 +0000 Subject: basically a rewrite of FindExiv2.cmake, now works also without pkg-config, has proper verison checking using the new extended syntax of find_package_handle_standard_args(), and a clearer path through the code Alex svn path=/trunk/KDE/kdelibs/; revision=1179983 --- modules/FindExiv2.cmake | 137 ++++++++++++++++++++++-------------------------- 1 file changed, 62 insertions(+), 75 deletions(-) (limited to 'modules') diff --git a/modules/FindExiv2.cmake b/modules/FindExiv2.cmake index bf8220cc..f929269d 100644 --- a/modules/FindExiv2.cmake +++ b/modules/FindExiv2.cmake @@ -1,8 +1,8 @@ # - Try to find the Exiv2 library # -# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need +# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need # before doing FIND_PACKAGE(Exiv2). The default is 0.12. -# +# # Once done this will define # # EXIV2_FOUND - system has libexiv2 @@ -10,84 +10,71 @@ # EXIV2_LIBRARIES - Link these to use libexiv2 # EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 # +# The minimum required version of Exiv2 can be specified using the +# standard syntax, e.g. find_package(Exiv2 0.17) +# +# For compatiblity, also the variable EXIV2_MIN_VERSION can be set to the minimum version +# you need before doing FIND_PACKAGE(Exiv2). The default is 0.12. +# Copyright (c) 2010, Alexander Neundorf, # Copyright (c) 2008, Gilles Caulier, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# Support EXIV2_MIN_VERSION for compatibility: +if(NOT Exiv2_FIND_VERSION) + set(Exiv2_FIND_VERSION "${EXIV2_MIN_VERSION}") +endif(NOT Exiv2_FIND_VERSION) + +# the minimum version of exiv2 we require +if(NOT Exiv2_FIND_VERSION) + set(Exiv2_FIND_VERSION "0.12") +endif(NOT Exiv2_FIND_VERSION) + + +if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + pkg_check_modules(PC_EXIV2 QUIET exiv2) + set(EXIV2_DEFINITIONS ${PC_EXIV2_CFLAGS_OTHER}) +endif (NOT WIN32) + + +find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp + HINTS + ${PC_EXIV2_INCLUDEDIR} + ${PC_EXIV2_INCLUDE_DIRS} + ) + +find_library(EXIV2_LIBRARY NAMES exiv2 libexiv2 + HINTS + ${PC_EXIV2_LIBDIR} + ${PC_EXIV2_LIBRARY_DIRS} + ) + + +# Get the version number from exiv2/version.hpp and store it in the cache: +if(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION) + file(READ ${EXIV2_INCLUDE_DIR}/exiv2/version.hpp EXIV2_VERSION_CONTENT) + string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") + set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") + set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") + set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}") + + set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}" CACHE STRING "Version number of Exiv2" FORCE) +endif(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION) + +set(EXIV2_LIBRARIES "${EXIV2_LIBRARY}") + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Exiv2 REQUIRED_VARS EXIV2_LIBRARY EXIV2_INCLUDE_DIR + VERSION_VAR EXIV2_VERSION) -if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) - - # in cache already - set(EXIV2_FOUND TRUE) - -else (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) - if (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - include(UsePkgConfig) - - if(NOT EXIV2_MIN_VERSION) - set(EXIV2_MIN_VERSION "0.12") - endif(NOT EXIV2_MIN_VERSION) - - pkgconfig(exiv2 _EXIV2IncDir _EXIV2LinkDir _EXIV2LinkFlags _EXIV2Cflags) - - if(_EXIV2LinkFlags) - # query pkg-config asking for a Exiv2 >= 0.12 - exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=${EXIV2_MIN_VERSION} exiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - if(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release >= ${EXIV2_MIN_VERSION}") - set(EXIV2_VERSION_GOOD_FOUND TRUE) - else(_return_VALUE STREQUAL "0") - message(STATUS "Found Exiv2 release < ${EXIV2_MIN_VERSION}") - endif(_return_VALUE STREQUAL "0") - else(_EXIV2LinkFlags) - set(EXIV2_FOUND FALSE) - set(EXIV2_VERSION_GOOD_FOUND FALSE) - message(STATUS "Cannot find Exiv2 library!") - endif(_EXIV2LinkFlags) - - else(NOT WIN32) - #Better check - set(EXIV2_VERSION_GOOD_FOUND TRUE) - endif (NOT WIN32) - - if(EXIV2_VERSION_GOOD_FOUND) - set(EXIV2_DEFINITIONS ${_EXIV2Cflags}) - - find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp - HINTS - ${_EXIV2IncDir} - ) - - find_library(EXIV2_LIBRARIES NAMES exiv2 libexiv2 - HINTS - ${_EXIV2LinkDir} - ) - - if (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) - set(EXIV2_FOUND TRUE) - # TODO version check is missing - endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) - endif(EXIV2_VERSION_GOOD_FOUND) - if (EXIV2_FOUND) - if (NOT Exiv2_FIND_QUIETLY) - message(STATUS "Found Exiv2: ${EXIV2_LIBRARIES}") - endif (NOT Exiv2_FIND_QUIETLY) - else (EXIV2_FOUND) - if (Exiv2_FIND_REQUIRED) - if (NOT EXIV2_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find Exiv2 header files") - endif (NOT EXIV2_INCLUDE_DIR) - if (NOT EXIV2_LIBRARIES) - message(FATAL_ERROR "Could NOT find Exiv2 library") - endif (NOT EXIV2_LIBRARIES) - endif (Exiv2_FIND_REQUIRED) - endif (EXIV2_FOUND) - - mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARIES) - -endif (EXIV2_INCLUDE_DIR AND EXIV2_LIBRARIES) +mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARY) -- cgit v1.2.1 From d1c733912a28e2fe806e6d75f75b83fe303749da Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 26 Sep 2010 17:38:06 +0000 Subject: -add an include guard also to FindPkgConfig.cmake, should save parsing this 380 lines long file a few times during a kdelibs cmake run Alex svn path=/trunk/KDE/kdelibs/; revision=1179986 --- modules/FindPkgConfig.cmake | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) (limited to 'modules') diff --git a/modules/FindPkgConfig.cmake b/modules/FindPkgConfig.cmake index 84367633..6f2435ca 100644 --- a/modules/FindPkgConfig.cmake +++ b/modules/FindPkgConfig.cmake @@ -74,13 +74,13 @@ # # Redistribution and use, with or without modification, are permitted # provided that the following conditions are met: -# +# # 1. Redistributions must retain the above copyright notice, this # list of conditions and the following disclaimer. # 2. The name of the author may not be used to endorse or promote # products derived from this software without specific prior # written permission. -# +# # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE @@ -100,7 +100,11 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. - +# Include guard, it's not necessary to parse this fail again and again: +IF(_FINDPKGCONFIG_ALREADY_INCLUDED AND PKG_CONFIG_EXECUTABLE) + RETURN() +ENDIF(_FINDPKGCONFIG_ALREADY_INCLUDED AND PKG_CONFIG_EXECUTABLE) +SET(_FINDPKGCONFIG_ALREADY_INCLUDED TRUE) ### Common stuff #### set(PKG_CONFIG_VERSION 1) @@ -162,7 +166,7 @@ endmacro(_pkgconfig_invoke_dyn) macro(_pkgconfig_parse_options _result _is_req _is_silent) set(${_is_req} 0) set(${_is_silent} 0) - + foreach(_pkg ${ARGN}) if (_pkg STREQUAL "REQUIRED") set(${_is_req} 1) @@ -213,7 +217,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix) message(STATUS "checking for modules '${_pkg_check_modules_list}'") endif(_pkg_check_modules_cnt EQUAL 1) endif(NOT ${_is_silent}) - + set(_pkg_check_modules_packages) set(_pkg_check_modules_failed) @@ -240,14 +244,14 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix) if (_pkg_check_modules_pkg_op STREQUAL "=") list(APPEND _pkg_check_modules_exist_query --exact-version) endif(_pkg_check_modules_pkg_op STREQUAL "=") - + if (_pkg_check_modules_pkg_op STREQUAL "<=") list(APPEND _pkg_check_modules_exist_query --max-version) endif(_pkg_check_modules_pkg_op STREQUAL "<=") # create the final query which is of the format: # * --atleast-version - # * --exact-version + # * --exact-version # * --max-version # * --exists if (_pkg_check_modules_pkg_op) @@ -287,7 +291,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix) else(_pkg_check_modules_failed) # when we are here, we checked whether requested modules # exist. Now, go through them and set variables - + _pkgconfig_set(${_prefix}_FOUND 1) list(LENGTH _pkg_check_modules_packages pkg_count) @@ -299,7 +303,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix) else(pkg_count EQUAL 1) set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}") endif(pkg_count EQUAL 1) - + _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion ) _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" PREFIX "" --variable=prefix ) _pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir ) @@ -369,9 +373,9 @@ macro(pkg_search_module _prefix _module0) message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found") endif(${_pkg_is_required}) endif(NOT ${_prefix}_FOUND) - + _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION}) - endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND) + endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND) endmacro(pkg_search_module) ### Local Variables: -- cgit v1.2.1 From 16a089bd4b27c65c4b1545c18950d04ed798adc2 Mon Sep 17 00:00:00 2001 From: "Aaron J. Seigo" Date: Sun, 26 Sep 2010 19:56:34 +0000 Subject: support version # svn path=/trunk/KDE/kdelibs/; revision=1180034 --- modules/FindDBusMenuQt.cmake | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index 82673b7d..337a4aff 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -18,18 +18,25 @@ include(FindPackageHandleStandardArgs) find_package(PkgConfig) -pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt) -set(DBUSMENUQT_DEFINITIONS ${PC_DBUSMENUQT_CFLAGS_OTHER}) - -find_library(DBUSMENUQT_LIBRARIES - NAMES dbusmenu-qt dbusmenu-qtd - HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} - ) - -find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h - HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} - PATH_SUFFIXES dbusmenu-qt - ) +if (DBusMenuQt_FIND_VERSION) + pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt dbusmenu-qt>=${DBusMenuQt_FIND_VERSION}) +else(DBusMenuQt_FIND_VERSION) + pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt) +endif(DBusMenuQt_FIND_VERSION) + +if(PC_DBUSMENUQT_FOUND) + set(DBUSMENUQT_DEFINITIONS ${PC_DBUSMENUQT_CFLAGS_OTHER}) + + find_library(DBUSMENUQT_LIBRARIES + NAMES dbusmenu-qt dbusmenu-qtd + HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} + ) + + find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h + HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} + PATH_SUFFIXES dbusmenu-qt + ) +endif(PC_DBUSMENUQT_FOUND) find_package_handle_standard_args(DBusMenuQt "Could not find dbusmenu-qt; available at https://launchpad.net/libdbusmenu-qt/" DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) -- cgit v1.2.1 From 66dfc3d3355b63125f0fb21b1ca49ef8df2faae1 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 27 Sep 2010 20:08:44 +0000 Subject: -include the required version number in the details string, so the message is printed again also if the required version is changed Alex svn path=/trunk/KDE/kdelibs/; revision=1180380 --- modules/FindPackageHandleStandardArgs.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index 4bede7c8..2a20493f 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -178,7 +178,7 @@ FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG _VAR1) ENDIF (${_NAME}_FIND_VERSION) IF(VERSION_OK) - SET(DETAILS "${DETAILS}[v${VERSION}]") + SET(DETAILS "${DETAILS}[v${VERSION}(${${_NAME}_FIND_VERSION})]") ELSE(VERSION_OK) SET(${_NAME_UPPER}_FOUND FALSE) ENDIF(VERSION_OK) -- cgit v1.2.1 From 30e0f00e3774a76b4f46f321547fc8c8a4ff0736 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Mon, 27 Sep 2010 20:11:20 +0000 Subject: -detect the version of DBusMenuQt also without pkg-config This commit restores the ability to find DBusMenuQt without using pkg-config, this was broken by the previous commit. Additionally it uses the improved version checking provided by the new mode of find_package_handle_standard_args() Alex CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=1180381 --- modules/FindDBusMenuQt.cmake | 67 ++++++++++++++++++++++++++++++++------------ 1 file changed, 49 insertions(+), 18 deletions(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index 337a4aff..33b9e113 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -1,10 +1,17 @@ # - Try to find dbusmenu-qt +# This module helps finding an installation of the DBusMenuQt library (see https://launchpad.net/libdbusmenu-qt/) # Once done this will define # # DBUSMENUQT_FOUND - system has dbusmenu-qt # DBUSMENUQT_INCLUDE_DIR - the dbusmenu-qt include directory # DBUSMENUQT_LIBRARIES - the libraries needed to use dbusmenu-qt # DBUSMENUQT_DEFINITIONS - Compiler switches required for using dbusmenu-qt +# +# The minimum required version of DBusMenuQt can be specified using the +# standard syntax, e.g. find_package(DBusMenuQt 0.6) +# +# WARNING: versions below 0.4.0 cannot be checked for. +# So if you want to have a version check, require at least 0.4.0 of dbusmenuqt. # Copyright (c) 2009, Canonical Ltd. # - Author: Aurélien Gâteau @@ -18,26 +25,50 @@ include(FindPackageHandleStandardArgs) find_package(PkgConfig) -if (DBusMenuQt_FIND_VERSION) - pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt dbusmenu-qt>=${DBusMenuQt_FIND_VERSION}) -else(DBusMenuQt_FIND_VERSION) - pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt) -endif(DBusMenuQt_FIND_VERSION) +pkg_check_modules(PC_DBUSMENUQT QUIET dbusmenu-qt) + + +set(DBUSMENUQT_DEFINITIONS ${PC_DBUSMENUQT_CFLAGS_OTHER}) + +find_library(DBUSMENUQT_LIBRARIES + NAMES dbusmenu-qt dbusmenu-qtd + HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} + ) + +find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h + HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} + PATH_SUFFIXES dbusmenu-qt + ) + + +# dbusmenu_version.h is installed since 0.4.0, fail if a version below this is required: +if ((DBusMenuQt_FIND_VERSION) AND ("${DBusMenuQt_FIND_VERSION}" VERSION_LESS "0.4.0")) + message(FATAL_ERROR "Cannot check reliably for a DBusMenuQt version below 0.4.0 (${DBusMenuQt_FIND_VERSION} was requested)") +endif ((DBusMenuQt_FIND_VERSION) AND ("${DBusMenuQt_FIND_VERSION}" VERSION_LESS "0.4.0")) + + +# find the version number from dbusmenu_version.h and store it in the cache +if(DBUSMENUQT_INCLUDE_DIR AND NOT DBUSMENUQT_VERSION) + # parse the version number out from dbusmenu_version: + if(EXISTS ${DBUSMENUQT_INCLUDE_DIR}/dbusmenu_version.h) + file(READ "${DBUSMENUQT_INCLUDE_DIR}/dbusmenu_version.h" DBUSMENUQT_VERSION_CONTENT) + + string(REGEX MATCH "\\(\\( *([0-9]+) *<<" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_MAJOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "\\|\\( *([0-9]+) *<<" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_MINOR "${CMAKE_MATCH_1}") -if(PC_DBUSMENUQT_FOUND) - set(DBUSMENUQT_DEFINITIONS ${PC_DBUSMENUQT_CFLAGS_OTHER}) + string(REGEX MATCH "\\| *([0-9]+) *\\)" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_PATCH "${CMAKE_MATCH_1}") + endif(EXISTS ${DBUSMENUQT_INCLUDE_DIR}/dbusmenu_version.h) - find_library(DBUSMENUQT_LIBRARIES - NAMES dbusmenu-qt dbusmenu-qtd - HINTS ${PC_DBUSMENUQT_LIBDIR} ${PC_DBUSMENUQT_LIBRARY_DIRS} - ) + set(DBUSMENUQT_VERSION "${DBUSMENUQT_VERSION_MAJOR}.${DBUSMENUQT_VERSION_MINOR}.${DBUSMENUQT_VERSION_PATCH}" CACHE STRING "Version number of DBusMenuQt" FORCE) +endif(DBUSMENUQT_INCLUDE_DIR AND NOT DBUSMENUQT_VERSION) - find_path(DBUSMENUQT_INCLUDE_DIR dbusmenuexporter.h - HINTS ${PC_DBUSMENUQT_INCLUDEDIR} ${PC_DBUSMENUQT_INCLUDE_DIRS} - PATH_SUFFIXES dbusmenu-qt - ) -endif(PC_DBUSMENUQT_FOUND) -find_package_handle_standard_args(DBusMenuQt "Could not find dbusmenu-qt; available at https://launchpad.net/libdbusmenu-qt/" DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) +find_package_handle_standard_args(DBusMenuQt REQUIRED_VARS DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR + VERSION_VAR DBUSMENUQT_VERSION) +#"Could not find dbusmenu-qt; available at https://launchpad.net/libdbusmenu-qt/" DBUSMENUQT_LIBRARIES DBUSMENUQT_INCLUDE_DIR) -mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES) +mark_as_advanced(DBUSMENUQT_INCLUDE_DIR DBUSMENUQT_LIBRARIES DBUSMENUQT_VERSION) -- cgit v1.2.1 From 2640809ba84813a2be964926ee7c6cd15e6be7ad Mon Sep 17 00:00:00 2001 From: Colin Guthrie Date: Thu, 30 Sep 2010 17:48:12 +0000 Subject: Make the PulseAudio version check regexp tolerant to extra fluff at the end of the major.minor.micro svn path=/trunk/KDE/kdelibs/; revision=1181320 --- modules/FindPulseAudio.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPulseAudio.cmake b/modules/FindPulseAudio.cmake index 6a84ba7c..35bcbc2f 100644 --- a/modules/FindPulseAudio.cmake +++ b/modules/FindPulseAudio.cmake @@ -57,7 +57,7 @@ if (PULSEAUDIO_INCLUDE_DIR AND NOT PULSEAUDIO_VERSION) file(STRINGS "${PULSEAUDIO_INCLUDE_DIR}/pulse/version.h" pulse_version_h REGEX ".*pa_get_headers_version\\(\\).*" ) - string(REGEX REPLACE ".*pa_get_headers_version\\(\\)\ \\(\"([0-9]+\\.[0-9]+\\.[0-9]+)\"\\).*" "\\1" + string(REGEX REPLACE ".*pa_get_headers_version\\(\\)\ \\(\"([0-9]+\\.[0-9]+\\.[0-9]+)[^\"]*\"\\).*" "\\1" _PULSEAUDIO_VERSION "${pulse_version_h}") set(PULSEAUDIO_VERSION "${_PULSEAUDIO_VERSION}" CACHE STRING "Version number of PulseAudio" FORCE) -- cgit v1.2.1 From f6d17d9b7b044a3e2853580c9378ee07eb220324 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Fern=C3=A1ndez=20L=C3=B3pez?= Date: Sun, 3 Oct 2010 12:40:46 +0000 Subject: Add UDev finder. Not passed through revision because we needed it for the Solid sprint. Please, if it is wrong just tell me and I will take care of fixing it. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1182131 --- modules/CMakeLists.txt | 1 + modules/FindUDev.cmake | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 modules/FindUDev.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index e5d0cd7a..da23d4a4 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -116,6 +116,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindSqlite.cmake FindStrigi.cmake FindTaglib.cmake + FindUDev.cmake FindUSB.cmake FindWcecompat.cmake FindX11.cmake diff --git a/modules/FindUDev.cmake b/modules/FindUDev.cmake new file mode 100644 index 00000000..dd25d63c --- /dev/null +++ b/modules/FindUDev.cmake @@ -0,0 +1,19 @@ +# - Try to find UDev +# Once done this will define +# +# UDEV_FOUND - system has UDev +# UDEV_LIBS - The libraries needed to use UDev + +# Copyright (c) 2010, Rafael Fernández López, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +find_library(UDEV_LIBS udev) + +if(UDEV_LIBS) + set(UDEV_FOUND TRUE) +endif(UDEV_LIBS) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(UDev DEFAULT_MSG UDEV_LIBRARY UDEV_INCLUDE_DIR) -- cgit v1.2.1 From 70d2d1b0114389590bc46511d8fd2d9085c7c43b Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Sun, 3 Oct 2010 12:58:05 +0000 Subject: Unbreak the Koffice build. LCMS_VERSION didn't have a separator between LCMS_MAJOR_VERSION and LCMS_MINOR_VERSION. CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=1182136 --- modules/FindLCMS.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index e321e86c..36cba1d2 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -47,7 +47,7 @@ if(LCMS_INCLUDE_DIR AND NOT LCMS_VERSION) string(SUBSTRING ${_LCMS_VERSION} 0 1 LCMS_MAJOR_VERSION) string(SUBSTRING ${_LCMS_VERSION} 1 2 LCMS_MINOR_VERSION) endif(LCMS_VERSION_MATCH) - set(LCMS_VERSION "${LCMS_MAJOR_VERSION}.${LCMS_MINOR_VERSION}" CACHE STRING "Version number of lcms" FORCE) + set(LCMS_VERSION "${LCMS_MAJOR_VERSION}${LCMS_MINOR_VERSION}" CACHE STRING "Version number of lcms" FORCE) endif(LCMS_INCLUDE_DIR AND NOT LCMS_VERSION) include(FindPackageHandleStandardArgs) -- cgit v1.2.1 From 7c976ea2005da3b4f1fd3c0cc0e4391a606b7399 Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Sun, 3 Oct 2010 13:10:29 +0000 Subject: Make the module actually works for me. Seems to be the more standard way to deal with this kind of detection. CCMAIL: ereslibre@kde.org CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1182142 --- modules/FindUDev.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindUDev.cmake b/modules/FindUDev.cmake index dd25d63c..4c8390db 100644 --- a/modules/FindUDev.cmake +++ b/modules/FindUDev.cmake @@ -2,18 +2,18 @@ # Once done this will define # # UDEV_FOUND - system has UDev -# UDEV_LIBS - The libraries needed to use UDev +# UDEV_INCLUDE_DIR - the libudev include directory +# UDEV_LIBS - The libudev libraries # Copyright (c) 2010, Rafael Fernández López, # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. +find_path(UDEV_INCLUDE_DIR libudev.h) find_library(UDEV_LIBS udev) -if(UDEV_LIBS) - set(UDEV_FOUND TRUE) -endif(UDEV_LIBS) - include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(UDev DEFAULT_MSG UDEV_LIBRARY UDEV_INCLUDE_DIR) +find_package_handle_standard_args(UDev DEFAULT_MSG UDEV_INCLUDE_DIR UDEV_LIBS) + +mark_as_advanced(UDEV_INCLUDE_DIR UDEV_LIBS) -- cgit v1.2.1 From 6bda72f6e9115c1bf6c58977a4e35075359eccdf Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 3 Oct 2010 20:08:13 +0000 Subject: -also provide the version number with the dots, in LCMS_DOT_VERSION Alex CCMAIL: svn path=/trunk/KDE/kdelibs/; revision=1182213 --- modules/FindLCMS.cmake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/FindLCMS.cmake b/modules/FindLCMS.cmake index 36cba1d2..abc9ece3 100644 --- a/modules/FindLCMS.cmake +++ b/modules/FindLCMS.cmake @@ -3,11 +3,12 @@ # This module defines # LCMS_INCLUDE_DIR, where to find lcms.h # LCMS_LIBRARIES, the libraries needed to use LCMS. -# LCMS_VERSION, The value of LCMS_VERSION defined in lcms.h +# LCMS_DOT_VERSION, The version number of the LCMS library, e.g. "1.19" +# LCMS_VERSION, Similar to LCMS_DOT_VERSION, but without the dots, e.g. "119" # LCMS_FOUND, If false, do not try to use LCMS. # # The minimum required version of LCMS can be specified using the -# standard syntax, e.g. find_package(LCMS 1.1) +# standard syntax, e.g. find_package(LCMS 1.10) # Copyright (c) 2008, Adrian Page, # Copyright (c) 2009, Cyrille Berger, @@ -48,11 +49,12 @@ if(LCMS_INCLUDE_DIR AND NOT LCMS_VERSION) string(SUBSTRING ${_LCMS_VERSION} 1 2 LCMS_MINOR_VERSION) endif(LCMS_VERSION_MATCH) set(LCMS_VERSION "${LCMS_MAJOR_VERSION}${LCMS_MINOR_VERSION}" CACHE STRING "Version number of lcms" FORCE) + set(LCMS_DOT_VERSION "${LCMS_MAJOR_VERSION}.${LCMS_MINOR_VERSION}" CACHE STRING "Version number of lcms split into components" FORCE) endif(LCMS_INCLUDE_DIR AND NOT LCMS_VERSION) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(LCMS REQUIRED_VARS LCMS_LIBRARIES LCMS_INCLUDE_DIR - VERSION_VAR LCMS_VERSION ) + VERSION_VAR LCMS_DOT_VERSION ) mark_as_advanced(LCMS_INCLUDE_DIR LCMS_LIBRARIES LCMS_VERSION) -- cgit v1.2.1 From 953529c592d05348e269422564594c1cce84f9bf Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 3 Oct 2010 20:26:24 +0000 Subject: -add support for detecting the version in dbusmenuqt trunk, it's more robust now than it was before Alex svn path=/trunk/KDE/kdelibs/; revision=1182216 --- modules/FindDBusMenuQt.cmake | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindDBusMenuQt.cmake b/modules/FindDBusMenuQt.cmake index 33b9e113..5af70ef2 100644 --- a/modules/FindDBusMenuQt.cmake +++ b/modules/FindDBusMenuQt.cmake @@ -53,14 +53,34 @@ if(DBUSMENUQT_INCLUDE_DIR AND NOT DBUSMENUQT_VERSION) if(EXISTS ${DBUSMENUQT_INCLUDE_DIR}/dbusmenu_version.h) file(READ "${DBUSMENUQT_INCLUDE_DIR}/dbusmenu_version.h" DBUSMENUQT_VERSION_CONTENT) - string(REGEX MATCH "\\(\\( *([0-9]+) *<<" _dummy "${DBUSMENUQT_VERSION_CONTENT}") - set(DBUSMENUQT_VERSION_MAJOR "${CMAKE_MATCH_1}") + if ("${DBUSMENUQT_VERSION_CONTENT}" MATCHES "DBUSMENUQT_VERSION_MAJOR") # introduced after 0.6.4, makes this code here more robust - string(REGEX MATCH "\\|\\( *([0-9]+) *<<" _dummy "${DBUSMENUQT_VERSION_CONTENT}") - set(DBUSMENUQT_VERSION_MINOR "${CMAKE_MATCH_1}") + string(REGEX MATCH "#define +DBUSMENUQT_VERSION_MAJOR +([0-9]+)" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_MAJOR "${CMAKE_MATCH_1}") - string(REGEX MATCH "\\| *([0-9]+) *\\)" _dummy "${DBUSMENUQT_VERSION_CONTENT}") - set(DBUSMENUQT_VERSION_PATCH "${CMAKE_MATCH_1}") + string(REGEX MATCH "#define +DBUSMENUQT_VERSION_MINOR +([0-9]+)" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_MINOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "#define +DBUSMENUQT_VERSION_PATCH +([0-9]+)" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_PATCH "${CMAKE_MATCH_1}") + + else("${DBUSMENUQT_VERSION_CONTENT}" MATCHES "DBUSMENUQT_VERSION_MAJOR") + # In versions up to 0.6.4, the code for setting the version number in the header looked like + # shopw below. This made version checking quite un-obvious: + # #define DBUSMENUQT_VERSION \ + # ((0 << 16) \ + # |(6 << 8) \ + # |4) + + string(REGEX MATCH "\\(\\( *([0-9]+) *<<" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_MAJOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "\\|\\( *([0-9]+) *<<" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_MINOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "\\| *([0-9]+) *\\)" _dummy "${DBUSMENUQT_VERSION_CONTENT}") + set(DBUSMENUQT_VERSION_PATCH "${CMAKE_MATCH_1}") + endif("${DBUSMENUQT_VERSION_CONTENT}" MATCHES "DBUSMENUQT_VERSION_MAJOR") endif(EXISTS ${DBUSMENUQT_INCLUDE_DIR}/dbusmenu_version.h) set(DBUSMENUQT_VERSION "${DBUSMENUQT_VERSION_MAJOR}.${DBUSMENUQT_VERSION_MINOR}.${DBUSMENUQT_VERSION_PATCH}" CACHE STRING "Version number of DBusMenuQt" FORCE) -- cgit v1.2.1 From 4d052a0b077c8ec8bd29407cb6a35811e79890c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Fern=C3=A1ndez=20L=C3=B3pez?= Date: Mon, 4 Oct 2010 01:27:24 +0000 Subject: Remove FindUDev from the list of finders to install since we are only using it in kdelibs as Alexander suggested. Also do order alphabetically finders that are not going to be installed. CCMAIL: kde-buildsystem@kde.org svn path=/trunk/KDE/kdelibs/; revision=1182270 --- modules/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index da23d4a4..65379db9 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -7,9 +7,10 @@ set(module_install_dir ${DATA_INSTALL_DIR}/cmake/modules ) # to have it around, so there is a place where the modules which are not installed # are listed explicitely: set(cmakeFilesDontInstall + FindHUpnp.cmake FindPolkitQt.cmake FindPolkitQt-1.cmake - FindHUpnp.cmake + FindUDev.cmake ) # Explicitely list all files which will be installed. @@ -116,7 +117,6 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindSqlite.cmake FindStrigi.cmake FindTaglib.cmake - FindUDev.cmake FindUSB.cmake FindWcecompat.cmake FindX11.cmake -- cgit v1.2.1 From e11ae2b0ff86a271bdc74e395bce83c0bee58d24 Mon Sep 17 00:00:00 2001 From: Andreas Holzammer Date: Mon, 4 Oct 2010 11:36:02 +0000 Subject: - add static option to KDE4_ADD_PLUGIN svn path=/trunk/KDE/kdelibs/; revision=1182379 --- modules/KDE4Macros.cmake | 57 ++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 45 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index fc66b481..3b8bb2a5 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -626,30 +626,63 @@ macro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE _target_NAME) endmacro (KDE4_HANDLE_RPATH_FOR_EXECUTABLE) -macro (KDE4_ADD_PLUGIN _target_NAME _with_PREFIX) -#is the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, otherwise set the prefix empty - if (${_with_PREFIX} STREQUAL "WITH_PREFIX") - set(_first_SRC) - else (${_with_PREFIX} STREQUAL "WITH_PREFIX") - set(_first_SRC ${_with_PREFIX}) - endif (${_with_PREFIX} STREQUAL "WITH_PREFIX") +macro (KDE4_ADD_PLUGIN _target_NAME ) +#if the first argument is "WITH_PREFIX" then keep the standard "lib" prefix, +#otherwise set the prefix empty - set(_SRCS ${_first_SRC} ${ARGN}) + set(_args ${ARGN}) + # default to module + set(_add_lib_param "MODULE") + set(_with_pre FALSE) + + foreach(arg ${_args}) + if (arg STREQUAL "WITH_PREFIX") + set(_with_pre TRUE) + endif (arg STREQUAL "WITH_PREFIX") + if (arg STREQUAL "STATIC") + set(_add_lib_param STATIC) + endif (arg STREQUAL "STATIC") + if (arg STREQUAL "SHARED") + set(_add_lib_param SHARED) + endif (arg STREQUAL "SHARED") + if (arg STREQUAL "MODULE") + set(_add_lib_param MODULE) + endif (arg STREQUAL "MODULE") + endforeach(arg) + + if(_with_pre) + list(REMOVE_ITEM _args "WITH_PREFIX") + endif(_with_pre) + if(_add_lib_param STREQUAL "STATIC") + list(REMOVE_ITEM _args "STATIC") + endif(_add_lib_param STREQUAL "STATIC") + if (_add_lib_param STREQUAL "SHARED") + list(REMOVE_ITEM _args "SHARED") + endif (_add_lib_param STREQUAL "SHARED") + if (_add_lib_param STREQUAL "MODULE") + list(REMOVE_ITEM _args "MODULE") + endif (_add_lib_param STREQUAL "MODULE") + + set(_SRCS ${_args}) _automoc4_kde4_pre_target_handling(${_target_NAME} _SRCS) + if("${_add_lib_param}" STREQUAL "STATIC") + add_definitions(-DQT_STATICPLUGIN) + endif("${_add_lib_param}" STREQUAL "STATIC") + if (KDE4_ENABLE_FINAL) kde4_create_final_files(${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp _separate_files ${_SRCS}) - add_library(${_target_NAME} MODULE ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) + add_library(${_target_NAME} ${_add_lib_param} ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_final_cpp.cpp ${_separate_files}) else (KDE4_ENABLE_FINAL) - add_library(${_target_NAME} MODULE ${_SRCS}) + add_library(${_target_NAME} ${_add_lib_param} ${_SRCS}) endif (KDE4_ENABLE_FINAL) _automoc4_kde4_post_target_handling(${_target_NAME}) - if (_first_SRC) + if (NOT _with_pre) set_target_properties(${_target_NAME} PROPERTIES PREFIX "") - endif (_first_SRC) + endif (NOT _with_pre) # for shared libraries/plugins a -DMAKE_target_LIB is required string(TOUPPER ${_target_NAME} _symbol) -- cgit v1.2.1 From 130004ca17fa790edf4b1daa7cc86968f7675488 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Sun, 10 Oct 2010 16:37:06 +0000 Subject: add QT_IMPORTS_DIR (directory where imports are installed, at the moment they are all QML plugins) to FindQt4.cmake this change was done to upstream CMake before. this is a backport of the commit 2dae2f1a0b24c674b651fd6edf79c4b51177b4d6 in git.cmake.org maintaining the difrence with the upstream patch minimal CCMAIL:neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=1184513 --- modules/FindQt4.cmake | 73 +++++++++++++++++++++++++-------------------------- 1 file changed, 36 insertions(+), 37 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index a4908ebb..bbc96040 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -255,6 +255,7 @@ # QT_LIBRARY_DIR Path to "lib" of Qt4 # QT_PLUGINS_DIR Path to "plugins" for Qt4 # QT_TRANSLATIONS_DIR Path to "translations" of Qt4 +# QT_IMPORTS_DIR Path to "imports" of Qt4 # QT_DOC_DIR Path to "doc" of Qt4 # QT_MKSPECS_DIR Path to "mkspecs" of Qt4 # @@ -377,6 +378,14 @@ IF(QT_QT_LIBRARY) ENDIF(Qt4_FIND_REQUIRED) ENDIF(QT_QT_LIBRARY) +function(_QT4_QUERY_QMAKE VAR RESULT) + exec_program(${QT_QMAKE_EXECUTABLE} ARGS "-query ${VAR}" RETURN_VALUE return_code OUTPUT_VARIABLE output ) + if(NOT return_code) + file(TO_CMAKE_PATH "${output}" output) + set(${RESULT} ${output} PARENT_SCOPE) + endif(NOT return_code) +endfunction(_QT4_QUERY_QMAKE) + IF (QT4_QMAKE_FOUND AND Qt4::QtCore) # Check already done in this cmake run, nothing more to do @@ -455,7 +464,7 @@ IF (QT_QMAKE_EXECUTABLE) SET(QT4_QMAKE_FOUND FALSE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + _qt4_query_qmake(QT_VERSION QTVERSION) # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path IF("${QTVERSION}" MATCHES "Unknown") @@ -467,8 +476,7 @@ IF (QT_QMAKE_EXECUTABLE) DOC "The qmake executable for the Qt installation to use" ) IF(QT_QMAKE_EXECUTABLE) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION) + _qt4_query_qmake(QT_VERSION QTVERSION) ENDIF(QT_QMAKE_EXECUTABLE) ENDIF("${QTVERSION}" MATCHES "Unknown") @@ -550,11 +558,7 @@ IF (QT4_QMAKE_FOUND) # ask qmake for the library dir # Set QT_LIBRARY_DIR IF (NOT QT_LIBRARY_DIR OR QT_QMAKE_CHANGED) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_LIBS" - OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP ) - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH "${QT_LIBRARY_DIR_TMP}" QT_LIBRARY_DIR_TMP) + _qt4_query_qmake(QT_INSTALL_LIBS QT_LIBRARY_DIR_TMP) IF(EXISTS "${QT_LIBRARY_DIR_TMP}") SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir" FORCE) ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}") @@ -577,40 +581,26 @@ IF (QT4_QMAKE_FOUND) # ask qmake for the binary dir IF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR OR QT_QMAKE_CHANGED) - EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_BINS" - OUTPUT_VARIABLE qt_bins ) - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH "${qt_bins}" qt_bins) - SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "" FORCE) + _qt4_query_qmake(QT_INSTALL_BINS qt_bins) + SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "" FORCE) ENDIF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR OR QT_QMAKE_CHANGED) # ask qmake for the include dir IF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR OR QT_QMAKE_CHANGED) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_HEADERS" - OUTPUT_VARIABLE qt_headers ) - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH "${qt_headers}" qt_headers) + _qt4_query_qmake(QT_INSTALL_HEADERS qt_headers) SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "" FORCE) ENDIF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR OR QT_QMAKE_CHANGED) # ask qmake for the documentation directory IF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR OR QT_QMAKE_CHANGED) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_DOCS" - OUTPUT_VARIABLE qt_doc_dir ) - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH "${qt_doc_dir}" qt_doc_dir) + _qt4_query_qmake(QT_INSTALL_DOCS qt_doc_dir) SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs" FORCE) ENDIF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR OR QT_QMAKE_CHANGED) # ask qmake for the mkspecs directory IF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR OR QT_QMAKE_CHANGED) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QMAKE_MKSPECS" - OUTPUT_VARIABLE qt_mkspecs_dirs ) + _qt4_query_qmake(QMAKE_MKSPECS qt_mkspecs_dirs) # do not replace : on windows as it might be a drive letter # and windows should already use ; as a separator IF(UNIX) @@ -624,24 +614,33 @@ IF (QT4_QMAKE_FOUND) # ask qmake for the plugins directory IF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR OR QT_QMAKE_CHANGED) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_PLUGINS" - OUTPUT_VARIABLE qt_plugins_dir ) - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH "${qt_plugins_dir}" qt_plugins_dir) + _qt4_query_qmake(QT_INSTALL_PLUGINS qt_plugins_dir) SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins" FORCE) ENDIF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR OR QT_QMAKE_CHANGED) # ask qmake for the translations directory IF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR OR QT_QMAKE_CHANGED) - EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE} - ARGS "-query QT_INSTALL_TRANSLATIONS" - OUTPUT_VARIABLE qt_translations_dir ) - # make sure we have / and not \ as qmake gives on windows - FILE(TO_CMAKE_PATH "${qt_translations_dir}" qt_translations_dir) + _qt4_query_qmake(QT_INSTALL_TRANSLATIONS qt_translations_dir) SET(QT_TRANSLATIONS_DIR ${qt_translations_dir} CACHE PATH "The location of the Qt translations" FORCE) ENDIF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR OR QT_QMAKE_CHANGED) + # ask qmake for the imports directory + IF (QT_LIBRARY_DIR AND NOT QT_IMPORTS_DIR OR QT_QMAKE_CHANGED) + _qt4_query_qmake(QT_INSTALL_IMPORTS qt_imports_dir) + if(qt_imports_dir) + SET(QT_IMPORTS_DIR NOTFOUND) + foreach(qt_cross_path ${CMAKE_FIND_ROOT_PATH}) + set(qt_cross_paths ${qt_cross_paths} "${qt_cross_path}/imports") + endforeach(qt_cross_path) + FIND_PATH(QT_IMPORTS_DIR NAMES Qt + HINTS ${qt_cross_paths} ${qt_imports_dir} + DOC "The location of the Qt imports" + NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH NO_SYSTEM_ENVIRONMENT_PATH + NO_CMAKE_SYSTEM_PATH) + mark_as_advanced(QT_IMPORTS_DIR) + endif(qt_imports_dir) + ENDIF (QT_LIBRARY_DIR AND NOT QT_IMPORTS_DIR OR QT_QMAKE_CHANGED) + # Make variables changeble to the advanced user MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_DOC_DIR QT_MKSPECS_DIR QT_PLUGINS_DIR QT_TRANSLATIONS_DIR) -- cgit v1.2.1 From 3ecda06f1234d34046260c5f79449bba8e0fc243 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 17 Oct 2010 09:10:06 +0000 Subject: -add documentation for INSTALL_TARGETS_DEFAULT_ARGS Alex svn path=/trunk/KDE/kdelibs/; revision=1186709 --- modules/FindKDE4Internal.cmake | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d2e8e062..4cf6d390 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -146,6 +146,21 @@ # DBUS_SERVICES_INSTALL_DIR - the directory where dbus services will be installed (default is prefix/share/dbus-1/services ) # DBUS_SYSTEM_SERVICES_INSTALL_DIR - the directory where dbus system services will be installed (default is prefix/share/dbus-1/system-services ) # +# The variable INSTALL_TARGETS_DEFAULT_ARGS can be used when installing libraries +# or executables into the default locations. +# The INSTALL_TARGETS_DEFAULT_ARGS variable should be used when libraries are installed. +# It should also be used when installing applications, since then +# on OS X application bundles will be installed to BUNDLE_INSTALL_DIR. +# The variable MUST NOT be used for installing plugins. +# It also MUST NOT be used for executables which are intended to go into sbin/ or libexec/. +# +# Usage is like this: +# install(TARGETS kdecore kdeui ${INSTALL_TARGETS_DEFAULT_ARGS} ) +# +# This will install libraries correctly under UNIX, OSX and Windows (i.e. dll's go +# into bin/. +# +# # The following variable is provided, but seem to be unused: # LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?") # @@ -216,7 +231,7 @@ # to the proper location when installing, so RUN_UNINSTALLED is not necessary anymore). # # KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN) -# Equivalent to ADD_LIBRARY(). Additionally it supports KDE4_ENABLE_FINAL, +# Equivalent to ADD_LIBRARY(). Additionally it supports KDE4_ENABLE_FINAL, # includes automoc-handling and sets LINK_INTERFACE_LIBRARIES target property empty. # The RPATH is set according to the global RPATH settings as set up by FindKDE4Internal.cmake # (CMAKE_SKIP_BUILD_RPATH=FALSE, CMAKE_BUILD_WITH_INSTALL_RPATH=FALSE, CMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE) @@ -506,7 +521,7 @@ if (_kdeBootStrapping) set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4${CMAKE_EXECUTABLE_SUFFIX}.shell ) set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets${CMAKE_EXECUTABLE_SUFFIX}.shell ) endif (WIN32) - + set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}) @@ -879,17 +894,7 @@ else (WIN32) endif (WIN32) -# The INSTALL_TARGETS_DEFAULT_ARGS variable should be used when libraries are installed. -# It should also be used when installing applications, since then -# on OS X application bundles will be installed to BUNDLE_INSTALL_DIR. -# The variable MUST NOT be used for installing plugins. -# It also MUST NOT be used for executables which are intended to go into sbin/ or libexec/. -# -# Usage is like this: -# install(TARGETS kdecore kdeui ${INSTALL_TARGETS_DEFAULT_ARGS} ) -# -# This will install libraries correctly under UNIX, OSX and Windows (i.e. dll's go -# into bin/. +# For more documentation see above. # Later on it will be possible to extend this for installing OSX frameworks # The COMPONENT Devel argument has the effect that static libraries belong to the # "Devel" install component. If we use this also for all install() commands @@ -898,7 +903,6 @@ endif (WIN32) # -only the development files: cmake -DCOMPONENT=Devel -P cmake_install.cmake # -everything except the development files: cmake -DCOMPONENT=Unspecified -P cmake_install.cmake # This can then also be used for packaging with cpack. - set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" LIBRARY DESTINATION "${LIB_INSTALL_DIR}" ARCHIVE DESTINATION "${LIB_INSTALL_DIR}" COMPONENT Devel ) -- cgit v1.2.1 From 5c576da85fa28526d4cad8e822e3ed972efa8e16 Mon Sep 17 00:00:00 2001 From: Kurt Hindenburg Date: Sun, 17 Oct 2010 18:45:49 +0000 Subject: Add directory for MacOSX with macports installed. OK per luigi.toscano@tiscali.it svn path=/trunk/KDE/kdelibs/; revision=1186851 --- modules/FindDocBookXSL.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules') diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index cc273d52..ab93c9ec 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -17,6 +17,7 @@ set (STYLESHEET_PATH_LIST share/xml/docbook/stylesheet/nwalsh/current share/xml/docbook/stylesheet/nwalsh share/xsl/docbook + share/xsl/docbook-xsl ) find_path (DOCBOOKXSL_DIR lib/lib.xsl -- cgit v1.2.1 From 2bd8c99876801a61d3ddc5306fa1c2b71e1b8733 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Mon, 18 Oct 2010 18:43:28 +0000 Subject: add a new cmake variable: IMPORTS_INSTALL_DIR alongside KDE4_IMPORTS_INSTALL_DIR this is used to install extra QML imports (that can be either platform independent qml files or binrary libraries) the new place will be ${PLUGIN_INSTALL_DIR}/imports svn path=/trunk/KDE/kdelibs/; revision=1187235 --- modules/FindKDE4Internal.cmake | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 4cf6d390..b64be120 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -18,6 +18,7 @@ # KDE4_HTML_INSTALL_DIR - the directory where HTML documentation from kdelibs is installed # KDE4_CONFIG_INSTALL_DIR - the directory where config files from kdelibs are installed # KDE4_ICON_INSTALL_DIR - the directory where icons from kdelibs are +# KDE4_IMPORTS_INSTALL_DIR - the directory where imports from kdelibs are # KDE4_KCFG_INSTALL_DIR - the directory where kconfig files from kdelibs are installed # KDE4_LOCALE_INSTALL_DIR - the directory where translations from kdelibs are installed # KDE4_MIME_INSTALL_DIR - the directory where mimetype desktop files from kdelibs are installed @@ -130,6 +131,7 @@ # MAN_INSTALL_DIR - the directory where man pages will be installed (default prefix/man/) # MIME_INSTALL_DIR - the directory where mimetype desktop files will be installed # PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4) +# IMPORTS_INSTALL_DIR - the subdirectory relative to the install prefix where imports will be installed # SERVICES_INSTALL_DIR - the directory where service (desktop, protocol, ...) files will be installed # SERVICETYPES_INSTALL_DIR - the directory where servicestypes desktop files will be installed # SOUND_INSTALL_DIR - the directory where sound files will be installed @@ -792,6 +794,7 @@ if (WIN32) set(INCLUDE_INSTALL_DIR "include" ) # The subdirectory to the header prefix set(PLUGIN_INSTALL_DIR "lib${LIB_SUFFIX}/kde4" ) # "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4) + set(IMPORTS_INSTALL_DIR "${PLUGIN_INSTALL_DIR}/imports" ) # "The subdirectory relative to the install prefix where imports will be installed set(CONFIG_INSTALL_DIR "share/config" ) # The config file install dir set(DATA_INSTALL_DIR "share/apps" ) # The parent directory where applications can install their data set(HTML_INSTALL_DIR "share/doc/HTML" ) # The HTML install dir for documentation @@ -864,6 +867,7 @@ else (WIN32) _set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix") _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") + _set_fancy(IMPORTS_INSTALL_DIR "${PLUGIN_INSTALL_DIR}/imports" "The subdirectory relative to the install prefix where imports will be installed") _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir") _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data") _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation") -- cgit v1.2.1 From 06e8e1550e64ba5cb45f17775d7f26b4815820d2 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 21 Oct 2010 23:21:14 +0000 Subject: Make it an error when a method doesn't return anything. All of KDE SVN compiles with this flag, and has done so for a long time, but this way we can catch new code with this issue. svn path=/trunk/KDE/kdelibs/; revision=1188305 --- modules/FindKDE4Internal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b64be120..c2179aca 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1205,7 +1205,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") # As off Qt 4.6.x we need to override the new exception macros if we want compile with -fno-exceptions - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common -Werror=return-type") add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) -- cgit v1.2.1 From 2463e3da06c359cef6d1ab98e0fbc318b6b26fbe Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 22 Oct 2010 00:45:42 +0000 Subject: Clean up: we can assume strigi is > 0.6.0 nowadays svn path=/trunk/KDE/kdelibs/; revision=1188319 --- modules/FindStrigi.cmake | 44 ++------------------------------------------ 1 file changed, 2 insertions(+), 42 deletions(-) (limited to 'modules') diff --git a/modules/FindStrigi.cmake b/modules/FindStrigi.cmake index 57f2199b..239f9c97 100644 --- a/modules/FindStrigi.cmake +++ b/modules/FindStrigi.cmake @@ -106,48 +106,8 @@ else(STRIGI_CONFIG_FOUND_AND_HAS_COMPLETE_INFORMATION) STRIGI_STREAMS_LIBRARY STRIGI_STREAMANALYZER_LIBRARY STRIGI_INCLUDE_DIR) if (STRIGI_FOUND) - # Check for the SIC change between 0.5.9 and 0.6.0... - - macro(MACRO_CHECK_STRIGI_API_SCREWUP _RETTYPE _RESULT) - set (_STRIGI_API_SCREWUP_SOURCE_CODE " -#include -using namespace Strigi; - class ScrewupEndAnalyzer : public StreamEndAnalyzer { -public: - ScrewupEndAnalyzer() {} - bool checkHeader(const char*, int32_t) const { return false; } - ${_RETTYPE} analyze(Strigi::AnalysisResult&, InputStream*) { - return -1; - } - const char* name() const { return \"Write 1000 times: I promise to keep source compat next time\"; } -}; -int main() -{ - ScrewupEndAnalyzer a; - return 0; -} -") - check_cxx_source_compiles("${_STRIGI_API_SCREWUP_SOURCE_CODE}" ${_RESULT}) - endmacro(MACRO_CHECK_STRIGI_API_SCREWUP) - - include(CheckCXXSourceCompiles) - macro_push_required_vars() - set( CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${STRIGI_INCLUDEDIR} ) - set( CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${STRIGI_STREAMS_LIBRARY} ${STRIGI_STREAMANALYZER_LIBRARY} ) - macro_check_strigi_api_screwup( "signed char" STRIGI_NEEDS_SIGNED_CHAR ) - macro_check_strigi_api_screwup( "char" STRIGI_NEEDS_CHAR ) - set( STRIGI_NEEDS_SIGNED_CHAR ${STRIGI_NEEDS_SIGNED_CHAR} CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) - set( STRIGI_NEEDS_CHAR ${STRIGI_NEEDS_CHAR} CACHE BOOL "TRUE if strigi is 0.5.9 or before" ) - if (STRIGI_NEEDS_SIGNED_CHAR) - message(STATUS "Strigi API needs 'signed char'") - else (STRIGI_NEEDS_SIGNED_CHAR) - if (STRIGI_NEEDS_CHAR) - message(STATUS "Strigi API needs 'char'") - else (STRIGI_NEEDS_CHAR) - message(FATAL_ERROR "Strigi was found, but a simple test program does not compile, check CMakeFiles/CMakeError.log") - endif (STRIGI_NEEDS_CHAR) - endif (STRIGI_NEEDS_SIGNED_CHAR) - macro_pop_required_vars() + set( STRIGI_NEEDS_SIGNED_CHAR TRUE CACHE BOOL "TRUE if strigi is 0.6.0 or later" ) + set( STRIGI_NEEDS_CHAR FALSE CACHE BOOL "TRUE if strigi is 0.5.9 or before" ) endif (STRIGI_FOUND) endif (STRIGI_CONFIG_FOUND_AND_HAS_COMPLETE_INFORMATION) -- cgit v1.2.1 From e7cdf5b80ffee65d4bd0412b6c829edb8e165ecb Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Sun, 31 Oct 2010 18:30:25 +0000 Subject: Properly quote the path to kde-chunk.xsl svn path=/trunk/KDE/kdelibs/; revision=1191615 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 3b8bb2a5..a2935bfe 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -281,10 +281,10 @@ macro (KDE4_CREATE_HANDBOOK _docbook) #Bootstrap if (_kdeBootStrapping) - set(_ssheet ${CMAKE_SOURCE_DIR}/kdoctools/customization/kde-chunk.xsl) + set(_ssheet "${CMAKE_BINARY_DIR}/kdoctools/customization/kde-chunk.xsl") set(_bootstrapOption "--srcdir=${CMAKE_BINARY_DIR}/kdoctools/") else (_kdeBootStrapping) - set(_ssheet ${KDE4_DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl) + set(_ssheet "${KDE4_DATA_INSTALL_DIR}/ksgmltools2/customization/kde-chunk.xsl") set(_bootstrapOption) endif (_kdeBootStrapping) -- cgit v1.2.1 From 95ffc4dde3715e66195bce7ec25c08a6b5e8cc73 Mon Sep 17 00:00:00 2001 From: Alexander Neundorf Date: Sun, 7 Nov 2010 18:06:10 +0000 Subject: -remove the include guards again, they might keep us from including our own version, if first our version has been loaded (mark as loaded), then the one from cmake (with potentially different behaviour), and then again our version (not loaded because the first one has already marked the file as included) Alex svn path=/trunk/KDE/kdelibs/; revision=1193960 --- modules/CMakeParseArguments.cmake | 6 ------ modules/FindPackageHandleStandardArgs.cmake | 6 ------ modules/FindPkgConfig.cmake | 6 ------ 3 files changed, 18 deletions(-) (limited to 'modules') diff --git a/modules/CMakeParseArguments.cmake b/modules/CMakeParseArguments.cmake index 7ce4c49a..6c8ca46d 100644 --- a/modules/CMakeParseArguments.cmake +++ b/modules/CMakeParseArguments.cmake @@ -74,12 +74,6 @@ # License text for the above reference.) -if(__CMAKE_PARSE_ARGUMENTS_INCLUDED) - return() -endif() -set(__CMAKE_PARSE_ARGUMENTS_INCLUDED TRUE) - - function(CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNames) # first set all result variables to empty/FALSE foreach(arg_name ${_singleArgNames} ${_multiArgNames}) diff --git a/modules/FindPackageHandleStandardArgs.cmake b/modules/FindPackageHandleStandardArgs.cmake index 2a20493f..1152ce6a 100644 --- a/modules/FindPackageHandleStandardArgs.cmake +++ b/modules/FindPackageHandleStandardArgs.cmake @@ -67,12 +67,6 @@ # (To distribute this file outside of CMake, substitute the full # License text for the above reference.) -# Include guard, it's not necessary to parse this fail again and again: -IF(_FPHSA_ALREADY_INCLUDED) - RETURN() -ENDIF(_FPHSA_ALREADY_INCLUDED) -SET(_FPHSA_ALREADY_INCLUDED TRUE) - INCLUDE(FindPackageMessage) INCLUDE(CMakeParseArguments) diff --git a/modules/FindPkgConfig.cmake b/modules/FindPkgConfig.cmake index 6f2435ca..78c4a13f 100644 --- a/modules/FindPkgConfig.cmake +++ b/modules/FindPkgConfig.cmake @@ -100,12 +100,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -# Include guard, it's not necessary to parse this fail again and again: -IF(_FINDPKGCONFIG_ALREADY_INCLUDED AND PKG_CONFIG_EXECUTABLE) - RETURN() -ENDIF(_FINDPKGCONFIG_ALREADY_INCLUDED AND PKG_CONFIG_EXECUTABLE) -SET(_FINDPKGCONFIG_ALREADY_INCLUDED TRUE) - ### Common stuff #### set(PKG_CONFIG_VERSION 1) set(PKG_CONFIG_FOUND 0) -- cgit v1.2.1 From 8d0b6049589aa183ac6791de7baf5aa14195bc3f Mon Sep 17 00:00:00 2001 From: Funda Wang Date: Fri, 12 Nov 2010 05:28:18 +0000 Subject: find nepomuk_utils also svn path=/trunk/KDE/kdelibs/; revision=1195844 --- modules/FindNepomuk.cmake | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index 0a24bdb6..5a5b20f0 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -4,6 +4,7 @@ # NEPOMUK_INCLUDE_DIR - the Nepomuk include directory # NEPOMUK_LIBRARIES - Link these to use Nepomuk # NEPOMUK_QUERY_LIBRARIES - Link these to use Nepomuk query +# NEPOMUK_UTILS_LIBRARIES - Link these to use Nepomuk utils # NEPOMUK_DEFINITIONS - Compiler switches required for using Nepomuk # # Nepomuk requires Soprano, so this module checks for Soprano too. @@ -54,6 +55,14 @@ find_library(NEPOMUK_QUERY_LIBRARIES ${LIB_INSTALL_DIR} ) +find_library(NEPOMUK_UTILS_LIBRARIES + NAMES + nepomukutils + HINTS + ${KDE4_LIB_DIR} + ${LIB_INSTALL_DIR} +) + find_file(NEPOMUK_ADDONTOLOGYCLASSES_FILE NepomukAddOntologyClasses.cmake HINTS ${KDE4_DATA_INSTALL_DIR}/cmake/modules/ PATH_SUFFIXES share/apps/cmake/modules/ @@ -61,7 +70,7 @@ find_file(NEPOMUK_ADDONTOLOGYCLASSES_FILE NepomukAddOntologyClasses.cmake include("${NEPOMUK_ADDONTOLOGYCLASSES_FILE}" OPTIONAL) -mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES NEPOMUK_ADDONTOLOGIES_FILE) +mark_as_advanced(NEPOMUK_INCLUDE_DIR NEPOMUK_LIBRARIES NEPOMUK_QUERY_LIBRARIES NEPOMUK_UTILS_LIBRARIES NEPOMUK_ADDONTOLOGIES_FILE) include(FindPackageHandleStandardArgs) # List all nepomuk and also all necessary soprano variables here, to make it -- cgit v1.2.1 From 725dfbcaa556afd4e597fb06af57ef0b073fa5fd Mon Sep 17 00:00:00 2001 From: Luigi Toscano Date: Sun, 14 Nov 2010 16:19:54 +0000 Subject: Remove the dependency from the embedded DocBook XSLT, use our translations This commit introduces the last changes needed to get rid of the old embedded copy of DocBook XSLT: - make the common includes (kde-common-*xsl.cmake) dependent on the system-provided DocBook XSLTs (i.e. it generates them on the fly during the compilation). - change the macro used to generate manpages to use kde-include-man.xsl instead of the embedded copy of manpages generator (kde-man.xsl has never been used in KDE Platform 4.x as far as I know). It is worth noting that, on the contrary, kde-include-common.xsl is not used directly (because it is really common to multiple files, here kde-include-man.xsl really replaces the kde-man.xsl). - introduce a small helper program as a dependency for meinproc which will generate, during compile time, two xml files needed in order to make the system working: * all-l10n.xml contains the references to all the system-provided language files for XSLT, plus the ones not included upstream but translated in our repository; it is used in place of the system-provided common/l10n.xml * kde-custom-l10n.xml contains the references to the language files containing customizations for system-provided languages (included into the official docbook-xsl). - do not install anymore the files under docbook/xsl (which will be removed) See also: http://kde.markmail.org/thread/as4ctj7kt3raws4q And now let's hope that the whole thing won't explode... CCMAIL: kde-i18n-doc@kde.org svn path=/trunk/KDE/kdelibs/; revision=1196999 --- modules/KDE4Macros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index a2935bfe..e1ea80ae 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -360,10 +360,10 @@ macro (KDE4_CREATE_MANPAGE _docbook _section) #Bootstrap if (_kdeBootStrapping) - set(_ssheet "${CMAKE_SOURCE_DIR}/kdoctools/docbook/xsl/manpages/docbook.xsl") + set(_ssheet "${CMAKE_BINARY_DIR}/kdoctools/customization/kde-include-man.xsl") set(_bootstrapOption "--srcdir=${CMAKE_BINARY_DIR}/kdoctools/") else (_kdeBootStrapping) - set(_ssheet "${KDE4_DATA_INSTALL_DIR}/ksgmltools2/docbook/xsl/manpages/docbook.xsl") + set(_ssheet "${KDE4_DATA_INSTALL_DIR}/ksgmltools2/customization/kde-include-man.xsl") set(_bootstrapOption) endif (_kdeBootStrapping) -- cgit v1.2.1 From 04c6f67b0ebd9490fec82e330a704a616c28e536 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 15 Nov 2010 22:32:17 +0000 Subject: Forwardport -c1197454: Actually honour the minimum version required for SDO. Thanks to Romain Perier for investigating the similar issue in FindSoprano.cmake: find_package_handle_standard_args() has 2 modes, and only the second mode (REQUIRED_VARS ... VERSION_VAR ...) checks for the version number. svn path=/trunk/KDE/kdelibs/; revision=1197455 --- modules/FindSharedDesktopOntologies.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index eecd608a..a384b1ba 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -35,4 +35,4 @@ if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(SharedDesktopOntologies DEFAULT_MSG SHAREDDESKTOPONTOLOGIES_ROOT_DIR) +find_package_handle_standard_args(SharedDesktopOntologies REQUIRED_VARS SHAREDDESKTOPONTOLOGIES_ROOT_DIR VERSION_VAR SDO_MIN_VERSION) -- cgit v1.2.1 From 9fbdf0074b89a6f0e93b79e7e5ba1648365c97e3 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 15 Nov 2010 22:43:44 +0000 Subject: Apply patch by Romain Perier: make the check for the min soprano version actually work. CCMAIL: kde-buildsystem@kde.org, romain.perier@gmail.com, sebastian@trueg.de svn path=/trunk/KDE/kdelibs/; revision=1197457 --- modules/FindNepomuk.cmake | 2 +- modules/FindSoprano.cmake | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index 5a5b20f0..c09cf37f 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -18,7 +18,7 @@ if (NOT DEFINED Soprano_FOUND) - find_package(Soprano) + find_package(Soprano ${SOPRANO_MIN_VERSION}) include(MacroLogFeature) macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "http://soprano.sourceforge.net/" FALSE "" "Soprano is needed for Nepomuk") endif (NOT DEFINED Soprano_FOUND) diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index e9d8ce36..77ddfe95 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -209,9 +209,10 @@ if(SOPRANO_INCLUDE_DIR) endif(SOPRANO_INCLUDE_DIR) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Soprano DEFAULT_MSG - SOPRANO_INCLUDE_DIR SOPRANO_LIBRARIES - ${_SOPRANO_REQUIRED_COMPONENTS_RESULTS} ) + +find_package_handle_standard_args(Soprano REQUIRED_VARS SOPRANO_INCLUDE_DIR SOPRANO_LIBRARIES + _SOPRANO_REQUIRED_COMPONENTS_RESULTS + VERSION_VAR SOPRANO_VERSION) # for compatibility: set(Soprano_FOUND ${SOPRANO_FOUND}) -- cgit v1.2.1 From d0833e1c26ee7da6b3392f7291c229d65b924977 Mon Sep 17 00:00:00 2001 From: Raphael Kubo da Costa Date: Tue, 16 Nov 2010 02:24:56 +0000 Subject: Expand _SOPRANO_REQUIRED_COMPONENTS_RESULTS, we are interested in the values inside it. Follow-up to r1197457. CCMAIL: faure@kde.org svn path=/trunk/KDE/kdelibs/; revision=1197492 --- modules/FindSoprano.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index 77ddfe95..662f1b71 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -211,7 +211,7 @@ endif(SOPRANO_INCLUDE_DIR) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Soprano REQUIRED_VARS SOPRANO_INCLUDE_DIR SOPRANO_LIBRARIES - _SOPRANO_REQUIRED_COMPONENTS_RESULTS + ${_SOPRANO_REQUIRED_COMPONENTS_RESULTS} VERSION_VAR SOPRANO_VERSION) # for compatibility: -- cgit v1.2.1 From 1a5d78694b048fc1a9f4b9f281dc0e94cf6538bb Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 17 Nov 2010 12:34:39 +0000 Subject: Fix version handling (by setting SharedDesktopOntologies_FIND_VERSION, which is what FindPackageHandleStandardArgs looks at) svn path=/trunk/KDE/kdelibs/; revision=1198106 --- modules/FindSharedDesktopOntologies.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index a384b1ba..e2a62b67 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -28,6 +28,10 @@ if( "${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSI find_path(_SDO_CONFIG_DIR SharedDesktopOntologiesConfig.cmake PATH_SUFFIXES share/cmake/SharedDesktopOntologies/ ) endif( "${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_LESS "2.6.3") +if(NOT SharedDesktopOntologies_FIND_VERSION) + set(SharedDesktopOntologies_FIND_VERSION "${SDO_MIN_VERSION}") +endif(NOT SharedDesktopOntologies_FIND_VERSION) + find_package(SharedDesktopOntologies ${SharedDesktopOntologies_FIND_VERSION} QUIET NO_MODULE HINTS "${_SDO_CONFIG_DIR}" ) if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) @@ -35,4 +39,4 @@ if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(SharedDesktopOntologies REQUIRED_VARS SHAREDDESKTOPONTOLOGIES_ROOT_DIR VERSION_VAR SDO_MIN_VERSION) +find_package_handle_standard_args(SharedDesktopOntologies REQUIRED_VARS SHAREDDESKTOPONTOLOGIES_ROOT_DIR) -- cgit v1.2.1 From 237682ace3ed8488a991d767b72609e4540c47ee Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 17 Nov 2010 12:41:25 +0000 Subject: With this mode of FindPackageHandleStandardArgs, passing the VERSION_VAR is actually necessary for the version check to happen svn path=/trunk/KDE/kdelibs/; revision=1198107 --- modules/FindSharedDesktopOntologies.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindSharedDesktopOntologies.cmake b/modules/FindSharedDesktopOntologies.cmake index e2a62b67..99b70362 100644 --- a/modules/FindSharedDesktopOntologies.cmake +++ b/modules/FindSharedDesktopOntologies.cmake @@ -39,4 +39,4 @@ if (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) endif (SHAREDDESKTOPONTOLOGIES_ROOT_DIR) include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(SharedDesktopOntologies REQUIRED_VARS SHAREDDESKTOPONTOLOGIES_ROOT_DIR) +find_package_handle_standard_args(SharedDesktopOntologies REQUIRED_VARS SHAREDDESKTOPONTOLOGIES_ROOT_DIR VERSION_VAR SharedDesktopOntologies_VERSION) -- cgit v1.2.1 From b6f79667180e8cecdc8ceb1b2e853111dbaf2d43 Mon Sep 17 00:00:00 2001 From: Alex Merry Date: Fri, 19 Nov 2010 00:38:29 +0000 Subject: macro_log_feature's "DESCRIPTION" argument is meant to describe the features the package will provide if found, not describe the package itself (after all, users don't care what some random library _is_, they care what features installing it will provide them with). svn path=/trunk/KDE/kdelibs/; revision=1198576 --- modules/FindNepomuk.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index c09cf37f..b789aec6 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -20,13 +20,13 @@ if (NOT DEFINED Soprano_FOUND) find_package(Soprano ${SOPRANO_MIN_VERSION}) include(MacroLogFeature) - macro_log_feature(Soprano_FOUND "Soprano" "Semantic Desktop Storing" "http://soprano.sourceforge.net/" FALSE "" "Soprano is needed for Nepomuk") + macro_log_feature(Soprano_FOUND "Soprano" "Support for the Nepomuk semantic desktop system" "http://soprano.sourceforge.net" FALSE "" "") endif (NOT DEFINED Soprano_FOUND) if (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) find_package(SharedDesktopOntologies) include(MacroLogFeature) - macro_log_feature(SHAREDDESKTOPONTOLOGIES_FOUND "Shared desktop ontologies" "Desktop ontologies" "http://oscaf.sourceforge.net" FALSE "" "Ontologies necessary for the Nepomuk semantic desktop.") + macro_log_feature(SHAREDDESKTOPONTOLOGIES_FOUND "Shared desktop ontologies" "Support for the Nepomuk semantic desktop system" "http://oscaf.sourceforge.net" FALSE "" "") endif (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) # Check for the following stuff independent from whether soprano has been found -- cgit v1.2.1 From 8f1b33e561944f26465d8fe88b95391b43ba92d8 Mon Sep 17 00:00:00 2001 From: Marijn Kruisselbrink Date: Fri, 19 Nov 2010 20:08:40 +0000 Subject: Search for a different file since nepomuk/global.h is a deprecated header file, and thus not installed when deprecated code is disabled (like in the mobile platform). svn path=/trunk/KDE/kdelibs/; revision=1198801 --- modules/FindNepomuk.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindNepomuk.cmake b/modules/FindNepomuk.cmake index b789aec6..dccc790c 100644 --- a/modules/FindNepomuk.cmake +++ b/modules/FindNepomuk.cmake @@ -33,7 +33,7 @@ endif (NOT DEFINED SHAREDDESKTOPONTOLOGIES_FOUND) # or not. This will give a better error message at the end. find_path(NEPOMUK_INCLUDE_DIR NAMES - nepomuk/global.h + nepomuk/resource.h HINTS ${KDE4_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} -- cgit v1.2.1 From 717822263932e9c4c0629286fb61c27fa6f93cc7 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sat, 20 Nov 2010 12:19:24 +0000 Subject: disable deprecate warnings also on msvc2008 and msvc2010 svn path=/trunk/KDE/kdelibs/; revision=1199036 --- modules/FindKDE4Internal.cmake | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index c2179aca..b03fdd4b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -992,12 +992,14 @@ if (WIN32) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4251" ) # C4396: 'identifier' : 'function' the inline specifier cannot be used when a friend declaration refers to a specialization of a function template set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4396" ) - if(CMAKE_COMPILER_2005) - # to avoid a lot of deprecated warnings - add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS ) - # 'identifier' : no suitable definition provided for explicit template instantiation request - set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) - endif(CMAKE_COMPILER_2005) + # to avoid a lot of deprecated warnings + add_definitions( -D_CRT_SECURE_NO_DEPRECATE + -D_CRT_SECURE_NO_WARNINGS + -D_CRT_NONSTDC_NO_DEPRECATE + -D_SCL_SECURE_NO_WARNINGS + ) + # 'identifier' : no suitable definition provided for explicit template instantiation request + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -wd4661" ) endif(MSVC) -- cgit v1.2.1 From 688ff8be0ef694a064ebf70a9849a784614d6c21 Mon Sep 17 00:00:00 2001 From: Sebastian Trueg Date: Sun, 21 Nov 2010 19:08:58 +0000 Subject: Unset all temp variables to not pollute the global "namespace". svn path=/trunk/KDE/kdelibs/; revision=1199385 --- modules/NepomukAddOntologyClasses.cmake | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'modules') diff --git a/modules/NepomukAddOntologyClasses.cmake b/modules/NepomukAddOntologyClasses.cmake index 6a49a5a9..a2bdd5bb 100644 --- a/modules/NepomukAddOntologyClasses.cmake +++ b/modules/NepomukAddOntologyClasses.cmake @@ -99,4 +99,17 @@ macro(NEPOMUK_ADD_ONTOLOGY_CLASSES _sources) # finally append the source files to the source list list(APPEND ${_sources} ${_out_sources}) endif(NOT RCGEN) + + # reset variable names used + unset(_current_arg_type) + unset(_arg) + unset(_ontologies) + unset(_ontofilenames) + unset(_classes) + unset(_visibility) + unset(_fastmode) + unset(_targetdir) + unset(_out_headers) + unset(_out_sources) + unset(rcgen_result) endmacro(NEPOMUK_ADD_ONTOLOGY_CLASSES) -- cgit v1.2.1 From 32f81cf11322e683a2e25f9a7cc024cc0a8ec9f7 Mon Sep 17 00:00:00 2001 From: Jonathan Riddell Date: Mon, 22 Nov 2010 16:22:11 +0000 Subject: search for hupnp in the directory it gets installed to svn path=/trunk/KDE/kdelibs/; revision=1199754 --- modules/FindHUpnp.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindHUpnp.cmake b/modules/FindHUpnp.cmake index 89865ff3..bbff8335 100644 --- a/modules/FindHUpnp.cmake +++ b/modules/FindHUpnp.cmake @@ -7,7 +7,10 @@ # # Copyright (c) 2010, Paulo Romulo Alves Barros -find_path( HUPNP_INCLUDE_DIR HUpnp ) +find_path( HUPNP_INCLUDE_DIR + NAMES HUpnp + PATH_SUFFIXES HUpnpCore +) find_library( HUPNP_LIBS HUpnp ) @@ -15,4 +18,4 @@ include( FindPackageHandleStandardArgs ) find_package_handle_standard_args( HUpnp DEFAULT_MSG HUPNP_INCLUDE_DIR HUPNP_LIBS ) -mark_as_advanced( HUPNP_INCLUDE_DIR HUPNP_LIBS ) \ No newline at end of file +mark_as_advanced( HUPNP_INCLUDE_DIR HUPNP_LIBS ) -- cgit v1.2.1 From 2de2587a96bcb23f261d0ab6464af021ced26c6c Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Fri, 10 Dec 2010 17:21:14 +0000 Subject: FindQt4.cmake: Merge cfba5ef1 from upstream CMake: http://cmake.org/gitweb?p=cmake.git;a=commit;h=cfba5ef111bf86e8820a4dff556b3a9edc1484cd Fix regression in 2dae2f1 which added find of Qt imports dir. 2dae2f1 was previously merged by mart. This breaks finding qmake-qt4 when there's also a Qt 3 qmake around, the Qt 3 qmake is no longer recognized as bad. The above fix from upstream CMake fixes that. CCMAIL: mart@kde.org CCMAIL: neundorf@kde.org CCMAIL: rdieter@math.unl.edu svn path=/trunk/KDE/kdelibs/; revision=1205274 --- modules/FindQt4.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index bbc96040..f482d3c7 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -467,7 +467,7 @@ IF (QT_QMAKE_EXECUTABLE) _qt4_query_qmake(QT_VERSION QTVERSION) # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path - IF("${QTVERSION}" MATCHES "Unknown") + IF(NOT QTVERSION) SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" @@ -478,7 +478,7 @@ IF (QT_QMAKE_EXECUTABLE) IF(QT_QMAKE_EXECUTABLE) _qt4_query_qmake(QT_VERSION QTVERSION) ENDIF(QT_QMAKE_EXECUTABLE) - ENDIF("${QTVERSION}" MATCHES "Unknown") + ENDIF(NOT QTVERSION) # check that we found the Qt4 qmake, Qt3 qmake output won't match here STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") -- cgit v1.2.1 From 3afcd2ce729b9dafbc18869bf1cf54ada6e0d37a Mon Sep 17 00:00:00 2001 From: Dario Freddi Date: Mon, 13 Dec 2010 23:25:43 +0000 Subject: Use the new polkit-qt-1 checks, and depend on polkit-qt-1 0.99.0 for that. svn path=/trunk/KDE/kdelibs/; revision=1206241 --- modules/FindPolkitQt-1.cmake | 79 ++++++-------------------------------------- 1 file changed, 10 insertions(+), 69 deletions(-) (limited to 'modules') diff --git a/modules/FindPolkitQt-1.cmake b/modules/FindPolkitQt-1.cmake index c2f6a33c..4e905378 100644 --- a/modules/FindPolkitQt-1.cmake +++ b/modules/FindPolkitQt-1.cmake @@ -18,79 +18,20 @@ # For details see the accompanying COPYING-CMAKE-SCRIPTS file. # Support POLKITQT-1_MIN_VERSION for compatibility: -if(NOT PolkitQt-1_FIND_VERSION) - set(PolkitQt-1_FIND_VERSION "${POLKITQT-1_MIN_VERSION}") -endif(NOT PolkitQt-1_FIND_VERSION) +if ( NOT PolkitQt-1_FIND_VERSION AND POLKITQT-1_MIN_VERSION ) + set ( PolkitQt-1_FIND_VERSION ${POLKITQT-1_MIN_VERSION} ) +endif ( NOT PolkitQt-1_FIND_VERSION AND POLKITQT-1_MIN_VERSION ) -# the minimum version of PolkitQt-1 we require -if(NOT PolkitQt-1_FIND_VERSION) - set(PolkitQt-1_FIND_VERSION "0.95.1") -endif(NOT PolkitQt-1_FIND_VERSION) +set( _PolkitQt-1_FIND_QUIETLY ${PolkitQt-1_FIND_QUIETLY} ) +find_package( PolkitQt-1 ${PolkitQt-1_FIND_VERSION} QUIET NO_MODULE PATHS ${LIB_INSTALL_DIR}/PolkitQt-1/cmake ) +set( PolkitQt-1_FIND_QUIETLY ${_PolkitQt-1_FIND_QUIETLY} ) -if (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - pkg_check_modules(PC_POLKITQT-1 QUIET polkit-qt-1) - set(POLKITQT-1_DEFINITIONS ${PC_POLKITQT-1_CFLAGS_OTHER}) -endif (NOT WIN32) - -find_path( POLKITQT-1_INCLUDE_DIR - NAMES polkitqt1-authority.h - PATH_SUFFIXES polkit-qt-1 -) - -find_file( POLKITQT-1_VERSION_FILE - NAMES polkit-qt-1/polkitqt1-version.h - PATHS ${POLKITQT-1_INCLUDE_DIR} -) - -# Search the version and store it in the cache so we don't have to do this everytime -if(POLKITQT-1_VERSION_FILE AND NOT POLKITQT-1_VERSION) - file(READ ${POLKITQT-1_VERSION_FILE} POLKITQT-1_VERSION_CONTENT) - string (REGEX MATCH "POLKITQT1_VERSION_STRING \".*\"\n" POLKITQT-1_VERSION_MATCH "${POLKITQT-1_VERSION_CONTENT}") - - if(POLKITQT-1_VERSION_MATCH) - string(REGEX REPLACE "POLKITQT1_VERSION_STRING \"(.*)\"\n" "\\1" _POLKITQT-1_VERSION ${POLKITQT-1_VERSION_MATCH}) - endif(POLKITQT-1_VERSION_MATCH) - set(POLKITQT-1_VERSION "${_POLKITQT-1_VERSION}" CACHE STRING "Version number of PolkitQt-1" FORCE) -endif(POLKITQT-1_VERSION_FILE AND NOT POLKITQT-1_VERSION) - -find_library( POLKITQT-1_CORE_LIBRARY - NAMES polkit-qt-core-1 - HINTS ${PC_POLKITQT-1_LIBDIR} -) -find_library( POLKITQT-1_GUI_LIBRARY - NAMES polkit-qt-gui-1 - HINTS ${PC_POLKITQT-1_LIBDIR} -) -find_library( POLKITQT-1_AGENT_LIBRARY - NAMES polkit-qt-agent-1 - HINTS ${PC_POLKITQT-1_LIBDIR} -) - -set(POLKITQT-1_LIBRARIES ${POLKITQT-1_GUI_LIBRARY} ${POLKITQT-1_CORE_LIBRARY} ${POLKITQT-1_AGENT_LIBRARY}) - -include(FindPackageHandleStandardArgs) - -# handle the QUIETLY and REQUIRED arguments and set POLKITQT-1_FOUND to TRUE if -# all listed variables are TRUE -find_package_handle_standard_args(PolkitQt-1 REQUIRED_VARS POLKITQT-1_GUI_LIBRARY POLKITQT-1_CORE_LIBRARY - POLKITQT-1_AGENT_LIBRARY POLKITQT-1_INCLUDE_DIR - VERSION_VAR POLKITQT-1_VERSION ) - -mark_as_advanced(POLKITQT-1_INCLUDE_DIR - POLKITQT-1_CORE_LIBRARY - POLKITQT-1_GUI_LIBRARY - POLKITQT-1_AGENT_LIBRARY - POLKITQT-1_VERSION_FILE - ) +include( FindPackageHandleStandardArgs ) +find_package_handle_standard_args( PolkitQt-1 DEFAULT_MSG PolkitQt-1_CONFIG ) if (POLKITQT-1_FOUND) - if (NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) + if (NOT POLKITQT-1_INSTALL_DIR STREQUAL CMAKE_INSTALL_PREFIX) message("WARNING: Installation prefix does not match PolicyKit install prefixes. You probably will need to move files installed " "in POLICY_FILES_INSTALL_DIR and by dbus_add_activation_system_service to the ${PC_POLKITQT-1_PREFIX} prefix") - endif (NOT PC_POLKITQT-1_PREFIX STREQUAL CMAKE_INSTALL_PREFIX) + endif (NOT POLKITQT-1_INSTALL_DIR STREQUAL CMAKE_INSTALL_PREFIX) endif (POLKITQT-1_FOUND) - -set(POLKITQT-1_POLICY_FILES_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions) -- cgit v1.2.1 From f97ddc3acbfd2d355707afbed70b2257c99139e5 Mon Sep 17 00:00:00 2001 From: Gilles Caulier Date: Sun, 26 Dec 2010 09:59:45 +0000 Subject: this file is now installed with libkdcraw as well. svn path=/trunk/KDE/kdelibs/; revision=1209275 --- modules/CMakeLists.txt | 1 - modules/FindKdcraw.cmake | 110 ----------------------------------------------- 2 files changed, 111 deletions(-) delete mode 100644 modules/FindKdcraw.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 65379db9..7cbbcb5a 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -63,7 +63,6 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindKDEWIN32.cmake FindKDEWIN_Packager.cmake FindKDEWin.cmake - FindKdcraw.cmake FindKdeMultimedia.cmake FindKdepim.cmake FindKdepimLibs.cmake diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake deleted file mode 100644 index 2eb0814f..00000000 --- a/modules/FindKdcraw.cmake +++ /dev/null @@ -1,110 +0,0 @@ -# - Try to find the Kdcraw library -# Once done this will define -# -# KDCRAW_FOUND - system has libkdcraw -# KDCRAW_INCLUDE_DIR - the libkdcraw include directory -# KDCRAW_LIBRARIES - Link these to use libkdcraw -# KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw -# - -# Copyright (c) 2008, Gilles Caulier, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - - -if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - - message(STATUS "Found Kdcraw library in cache: ${KDCRAW_LIBRARIES}") - - # in cache already - SET(KDCRAW_FOUND TRUE) - -else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - - message(STATUS "Check Kdcraw library in local sub-folder...") - - # Check if library is not in local sub-folder - - FIND_FILE(KDCRAW_LOCAL_FOUND libkdcraw/kdcraw.h ${CMAKE_SOURCE_DIR}/libkdcraw ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) - - if (KDCRAW_LOCAL_FOUND) - - # Was it found in libkdcraw/ or in libs/libkdcraw? - FIND_FILE(KDCRAW_LOCAL_FOUND_IN_LIBS libkdcraw/kdcraw.h ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) - if (KDCRAW_LOCAL_FOUND_IN_LIBS) - set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkdcraw) - else (KDCRAW_LOCAL_FOUND_IN_LIBS) - set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkdcraw) - endif (KDCRAW_LOCAL_FOUND_IN_LIBS) - set(KDCRAW_DEFINITIONS "-I${KDCRAW_INCLUDE_DIR}") - set(KDCRAW_LIBRARIES kdcraw) - message(STATUS "Found Kdcraw library in local sub-folder: ${KDCRAW_INCLUDE_DIR}") - set(KDCRAW_FOUND TRUE) - MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) - - else(KDCRAW_LOCAL_FOUND) - - message(STATUS "Check Kdcraw library using pkg-config...") - if(NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) - - PKGCONFIG(libkdcraw _KDCRAWIncDir _KDCRAWLinkDir _KDCRAWLinkFlags _KDCRAWCflags) - - if(_KDCRAWLinkFlags) - # query pkg-config asking for a libkdcraw >= 0.2.0 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkdcraw RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - if(_return_VALUE STREQUAL "0") - message(STATUS "Found libkdcraw release >= 0.2.0") - set(KDCRAW_VERSION_GOOD_FOUND TRUE) - else(_return_VALUE STREQUAL "0") - message(STATUS "Found libkdcaw release < 0.2.0, too old") - set(KDCRAW_VERSION_GOOD_FOUND FALSE) - set(KDCRAW_FOUND FALSE) - endif(_return_VALUE STREQUAL "0") - else(_KDCRAWLinkFlags) - set(KDCRAW_VERSION_GOOD_FOUND FALSE) - set(KDCRAW_FOUND FALSE) - endif(_KDCRAWLinkFlags) - ELSE(NOT WIN32) - set(KDCRAW_VERSION_GOOD_FOUND TRUE) - ENDif(NOT WIN32) - - if(KDCRAW_VERSION_GOOD_FOUND) - set(KDCRAW_DEFINITIONS "${_KDCRAWCflags}") - - FIND_PATH(KDCRAW_INCLUDE_DIR libkdcraw/version.h - ${_KDCRAWIncDir} - ) - - FIND_LIBRARY(KDCRAW_LIBRARIES NAMES kdcraw - PATHS - ${_KDCRAWLinkDir} - ) - - if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - set(KDCRAW_FOUND TRUE) - endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) - endif(KDCRAW_VERSION_GOOD_FOUND) - if (KDCRAW_FOUND) - if (NOT Kdcraw_FIND_QUIETLY) - message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") - endif (NOT Kdcraw_FIND_QUIETLY) - else (KDCRAW_FOUND) - if (Kdcraw_FIND_REQUIRED) - if (NOT KDCRAW_INCLUDE_DIR) - message(FATAL_ERROR "Could NOT find libkdcraw header files") - endif (NOT KDCRAW_INCLUDE_DIR) - if (NOT KDCRAW_LIBRARIES) - message(FATAL_ERROR "Could NOT find libkdcraw library") - endif (NOT KDCRAW_LIBRARIES) - endif (Kdcraw_FIND_REQUIRED) - endif (KDCRAW_FOUND) - - MARK_AS_ADVANCED(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES) - - endif(KDCRAW_LOCAL_FOUND) - -endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) -- cgit v1.2.1 From 25efeac03b05b1ec701a8b7f6803f8e79cbbb6b9 Mon Sep 17 00:00:00 2001 From: Gilles Caulier Date: Sun, 26 Dec 2010 10:50:07 +0000 Subject: revert svn path=/trunk/KDE/kdelibs/; revision=1209293 --- modules/CMakeLists.txt | 1 + modules/FindKdcraw.cmake | 124 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 125 insertions(+) create mode 100644 modules/FindKdcraw.cmake (limited to 'modules') diff --git a/modules/CMakeLists.txt b/modules/CMakeLists.txt index 7cbbcb5a..65379db9 100644 --- a/modules/CMakeLists.txt +++ b/modules/CMakeLists.txt @@ -63,6 +63,7 @@ set(cmakeFiles CheckCXXSourceCompiles.cmake FindKDEWIN32.cmake FindKDEWIN_Packager.cmake FindKDEWin.cmake + FindKdcraw.cmake FindKdeMultimedia.cmake FindKdepim.cmake FindKdepimLibs.cmake diff --git a/modules/FindKdcraw.cmake b/modules/FindKdcraw.cmake new file mode 100644 index 00000000..518033d8 --- /dev/null +++ b/modules/FindKdcraw.cmake @@ -0,0 +1,124 @@ +# - Try to find the Kdcraw library +# +# If you have put a local version of libkdcraw into your source tree, +# set KDCRAW_LOCAL_DIR to the relative path to the local directory. +# +# Once done this will define +# +# KDCRAW_FOUND - system has libkdcraw +# KDCRAW_INCLUDE_DIR - the libkdcraw include directory +# KDCRAW_LIBRARIES - Link these to use libkdcraw +# KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw +# + +# Copyright (c) 2008, Gilles Caulier, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES AND KDCRAW_DEFINITIONS) + + message(STATUS "Found Kdcraw library in cache: ${KDCRAW_LIBRARIES}") + + # in cache already + set(KDCRAW_FOUND TRUE) + +else (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES AND KDCRAW_DEFINITIONS) + + message(STATUS "Check Kdcraw library in local sub-folder...") + + # Check if library is not in local sub-folder + + if (KDCRAW_LOCAL_DIR) + set (KDCRAW_LOCAL_FOUND TRUE) + else (KDCRAW_LOCAL_DIR) + find_file(KDCRAW_LOCAL_FOUND libkdcraw/kdcraw.h ${CMAKE_SOURCE_DIR}/libkdcraw ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + + if (KDCRAW_LOCAL_FOUND) + # Was it found in libkdcraw/ or in libs/libkdcraw? + find_file(KDCRAW_LOCAL_FOUND_IN_LIBS libkdcraw/kdcraw.h ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + if (KDCRAW_LOCAL_FOUND_IN_LIBS) + set(KDCRAW_LOCAL_DIR libs/libkdcraw) + else (KDCRAW_LOCAL_FOUND_IN_LIBS) + set(KDCRAW_LOCAL_DIR libkdcraw) + endif (KDCRAW_LOCAL_FOUND_IN_LIBS) + endif (KDCRAW_LOCAL_FOUND) + endif (KDCRAW_LOCAL_DIR) + + if (KDCRAW_LOCAL_FOUND) + + # we need two include directories: because the version.h file is put into the build directory + # TODO KDCRAW_INCLUDE_DIR sounds like it should contain only one directory... + set(KDCRAW_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/${KDCRAW_LOCAL_DIR} ${CMAKE_BINARY_DIR}/${KDCRAW_LOCAL_DIR}) + set(KDCRAW_DEFINITIONS "-I${CMAKE_SOURCE_DIR}/${KDCRAW_LOCAL_DIR}" "-I${CMAKE_BINARY_DIR}/${KDCRAW_LOCAL_DIR}") + set(KDCRAW_LIBRARIES kdcraw) + message(STATUS "Found Kdcraw library in local sub-folder: ${CMAKE_SOURCE_DIR}/${KDCRAW_LOCAL_DIR}") + set(KDCRAW_FOUND TRUE) + mark_as_advanced(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES KDCRAW_DEFINITIONS) + + else(KDCRAW_LOCAL_FOUND) + + message(STATUS "Check Kdcraw library using pkg-config...") + if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + include(UsePkgConfig) + + PKGCONFIG(libkdcraw _KDCRAWIncDir _KDCRAWLinkDir _KDCRAWLinkFlags _KDCRAWCflags) + + if (_KDCRAWLinkFlags) + # query pkg-config asking for a libkdcraw >= 0.2.0 + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkdcraw RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + if (_return_VALUE STREQUAL "0") + message(STATUS "Found libkdcraw release >= 0.2.0") + set(KDCRAW_VERSION_GOOD_FOUND TRUE) + else (_return_VALUE STREQUAL "0") + message(STATUS "Found libkdcaw release < 0.2.0, too old") + set(KDCRAW_VERSION_GOOD_FOUND FALSE) + set(KDCRAW_FOUND FALSE) + endif (_return_VALUE STREQUAL "0") + else (_KDCRAWLinkFlags) + set(KDCRAW_VERSION_GOOD_FOUND FALSE) + set(KDCRAW_FOUND FALSE) + endif (_KDCRAWLinkFlags) + else (NOT WIN32) + set(KDCRAW_VERSION_GOOD_FOUND TRUE) + endif (NOT WIN32) + + if (KDCRAW_VERSION_GOOD_FOUND) + set(KDCRAW_DEFINITIONS "${_KDCRAWCflags}") + + find_path(KDCRAW_INCLUDE_DIR libkdcraw/version.h + ${_KDCRAWIncDir} + ) + + find_library(KDCRAW_LIBRARIES NAMES kdcraw + PATHS + ${_KDCRAWLinkDir} + ) + + if (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + set(KDCRAW_FOUND TRUE) + endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES) + endif (KDCRAW_VERSION_GOOD_FOUND) + if (KDCRAW_FOUND) + if (NOT Kdcraw_FIND_QUIETLY) + message(STATUS "Found libkdcraw: ${KDCRAW_LIBRARIES}") + endif (NOT Kdcraw_FIND_QUIETLY) + else (KDCRAW_FOUND) + if (Kdcraw_FIND_REQUIRED) + if (NOT KDCRAW_INCLUDE_DIR) + message(FATAL_ERROR "Could NOT find libkdcraw header files") + endif (NOT KDCRAW_INCLUDE_DIR) + if (NOT KDCRAW_LIBRARIES) + message(FATAL_ERROR "Could NOT find libkdcraw library") + endif (NOT KDCRAW_LIBRARIES) + endif (Kdcraw_FIND_REQUIRED) + endif (KDCRAW_FOUND) + + mark_as_advanced(KDCRAW_INCLUDE_DIR KDCRAW_LIBRARIES KDCRAW_DEFINITIONS) + + endif(KDCRAW_LOCAL_FOUND) + +endif (KDCRAW_INCLUDE_DIR AND KDCRAW_LIBRARIES AND KDCRAW_DEFINITIONS) -- cgit v1.2.1 From ee5546713bb2999bdf7a992b8052414124fd7286 Mon Sep 17 00:00:00 2001 From: Gilles Caulier Date: Mon, 3 Jan 2011 12:18:33 +0000 Subject: support local dir for digiKam 2.0.0 svn path=/trunk/KDE/kdelibs/; revision=1211248 --- modules/FindKexiv2.cmake | 55 ++++++++++++++++++++++------------- modules/FindKipi.cmake | 76 ++++++++++++++++++++++++++++-------------------- 2 files changed, 80 insertions(+), 51 deletions(-) (limited to 'modules') diff --git a/modules/FindKexiv2.cmake b/modules/FindKexiv2.cmake index dd62e885..4487537c 100644 --- a/modules/FindKexiv2.cmake +++ b/modules/FindKexiv2.cmake @@ -1,4 +1,8 @@ # - Try to find the KExiv2 library +# +# If you have put a local version of libkexiv2 into your source tree, +# set KEXIV2_LOCAL_DIR to the relative path to the local directory. +# # Once done this will define # # KEXIV2_FOUND - system has libkexiv2 @@ -12,34 +16,45 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) +if (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES AND KEXIV2_DEFINITIONS) message(STATUS "Found Kexiv2 library in cache: ${KEXIV2_LIBRARIES}") # in cache already - SET(KEXIV2_FOUND TRUE) + set(KEXIV2_FOUND TRUE) -else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) +else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES AND KEXIV2_DEFINITIONS) message(STATUS "Check Kexiv2 library in local sub-folder...") # Check if library is not in local sub-folder - FIND_FILE(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) + if (KEXIV2_LOCAL_DIR) + set(KEXIV2_LOCAL_FOUND TRUE) + else (KEXIV2_LOCAL_DIR) + find_file(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) - if (KEXIV2_LOCAL_FOUND) + if (KEXIV2_LOCAL_FOUND) + # Was it found in libkexiv2/ or in libs/libkexiv2? + find_file(KEXIV2_LOCAL_FOUND_IN_LIBS libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) + if (KEXIV2_LOCAL_FOUND_IN_LIBS) + set(KEXIV2_LOCAL_DIR libs/libkexiv2) + else (KEXIV2_LOCAL_FOUND_IN_LIBS) + set(KEXIV2_LOCAL_DIR libkexiv2) + endif (KEXIV2_LOCAL_FOUND_IN_LIBS) + endif (KEXIV2_LOCAL_FOUND) - FIND_FILE(KEXIV2_LOCAL_FOUND_IN_LIBS libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) - if (KEXIV2_LOCAL_FOUND_IN_LIBS) - set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkexiv2) - else (KEXIV2_LOCAL_FOUND_IN_LIBS) - set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkexiv2) - endif (KEXIV2_LOCAL_FOUND_IN_LIBS) - set(KEXIV2_DEFINITIONS "-I${KEXIV2_INCLUDE_DIR}") + endif (KEXIV2_LOCAL_DIR) + + if (KEXIV2_LOCAL_FOUND) + # we need two include directories: because the version.h file is put into the build directory + # TODO KEXIV2_INCLUDE_DIR sounds like it should contain only one directory... + set(KEXIV2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/${KEXIV2_LOCAL_DIR} ${CMAKE_BINARY_DIR}/${KEXIV2_LOCAL_DIR}) + set(KEXIV2_DEFINITIONS "-I${CMAKE_SOURCE_DIR}/${KEXIV2_LOCAL_DIR}" "-I${CMAKE_BINARY_DIR}/${KEXIV2_LOCAL_DIR}") set(KEXIV2_LIBRARIES kexiv2) - message(STATUS "Found Kexiv2 library in local sub-folder: ${KEXIV2_INCLUDE_DIR}") + message(STATUS "Found Kexiv2 library in local sub-folder: ${CMAKE_SOURCE_DIR}/${KEXIV2_LOCAL_DIR}") set(KEXIV2_FOUND TRUE) - MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) + mark_as_advanced(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES KEXIV2_DEFINITIONS) else(KEXIV2_LOCAL_FOUND) if(NOT WIN32) @@ -47,13 +62,13 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) PKGCONFIG(libkexiv2 _KEXIV2IncDir _KEXIV2LinkDir _KEXIV2LinkFlags _KEXIV2Cflags) if(_KEXIV2LinkFlags) # query pkg-config asking for a libkexiv2 >= 0.2.0 - EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkexiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) + exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkexiv2 RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) if(_return_VALUE STREQUAL "0") message(STATUS "Found libkexiv2 release >= 0.2.0") set(KEXIV2_VERSION_GOOD_FOUND TRUE) @@ -73,11 +88,11 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) if(KEXIV2_VERSION_GOOD_FOUND) set(KEXIV2_DEFINITIONS "${_KEXIV2Cflags}") - FIND_PATH(KEXIV2_INCLUDE_DIR libkexiv2/version.h + find_path(KEXIV2_INCLUDE_DIR libkexiv2/version.h ${_KEXIV2IncDir} ) - FIND_LIBRARY(KEXIV2_LIBRARIES NAMES kexiv2 + find_library(KEXIV2_LIBRARIES NAMES kexiv2 PATHS ${_KEXIV2LinkDir} ) @@ -101,8 +116,8 @@ else (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) endif (Kexiv2_FIND_REQUIRED) endif (KEXIV2_FOUND) - MARK_AS_ADVANCED(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES) + mark_as_advanced(KEXIV2_INCLUDE_DIR KEXIV2_LIBRARIES KEXIV2_DEFINITIONS) endif(KEXIV2_LOCAL_FOUND) -endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES) +endif (KEXIV2_INCLUDE_DIR AND KEXIV2_LIBRARIES AND KEXIV2_DEFINITIONS) diff --git a/modules/FindKipi.cmake b/modules/FindKipi.cmake index ccb699f1..13521e55 100644 --- a/modules/FindKipi.cmake +++ b/modules/FindKipi.cmake @@ -1,4 +1,8 @@ # - Try to find the Kipi library +# +# If you have put a local version of libkipi into your source tree, +# set KIPI_LOCAL_DIR to the relative path to the local directory. +# # Once done this will define # # KIPI_FOUND - system has libkipi @@ -12,65 +16,75 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) +if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES AND KIPI_DEFINITIONS) message(STATUS "Found Kipi library in cache: ${KIPI_LIBRARIES}") # in cache already - SET(KIPI_FOUND TRUE) + set(KIPI_FOUND TRUE) -else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) +else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES AND KIPI_DEFINITIONS) message(STATUS "Check Kipi library in local sub-folder...") # Check if library is not in local sub-folder - find_file (KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + if (KIPI_LOCAL_DIR) + set (KIPI_LOCAL_FOUND TRUE) + else (KIPI_LOCAL_DIR) + find_file(KIPI_LOCAL_FOUND libkipi/kipi.h ${CMAKE_SOURCE_DIR}/libkipi ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + + if (KIPI_LOCAL_FOUND) + # Was it found in libkdcraw/ or in libs/libkdcraw? + find_file(KIPI_LOCAL_FOUND_IN_LIBS libkipi/kipi.h ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + if (KIPI_LOCAL_FOUND_IN_LIBS) + set(KIPI_LOCAL_DIR libs/libkipi) + else (KIPI_LOCAL_FOUND_IN_LIBS) + set(KIPI_LOCAL_DIR libkipi) + endif (KIPI_LOCAL_FOUND_IN_LIBS) + endif (KIPI_LOCAL_FOUND) + endif (KIPI_LOCAL_DIR) if (KIPI_LOCAL_FOUND) - - find_file (KIPI_LOCAL_FOUND_IN_LIBS libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) - if (KIPI_LOCAL_FOUND_IN_LIBS) - set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libs/libkipi) - else (KIPI_LOCAL_FOUND_IN_LIBS) - set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/libkipi) - endif (KIPI_LOCAL_FOUND_IN_LIBS) - set(KIPI_DEFINITIONS -I${KIPI_INCLUDE_DIR}) + # we need two include directories: because the version.h file is put into the build directory + # TODO KIPI_INCLUDE_DIR sounds like it should contain only one directory... + set(KIPI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/${KIPI_LOCAL_DIR} ${CMAKE_BINARY_DIR}/${KIPI_LOCAL_DIR}) + set(KIPI_DEFINITIONS "-I${CMAKE_SOURCE_DIR}/${KIPI_LOCAL_DIR}" "-I${CMAKE_BINARY_DIR}/${KIPI_LOCAL_DIR}") set(KIPI_LIBRARIES kipi) - message(STATUS "Found Kipi library in local sub-folder: ${KIPI_INCLUDE_DIR}") + message(STATUS "Found Kipi library in local sub-folder: ${CMAKE_SOURCE_DIR}/${KIPI_LOCAL_DIR}") set(KIPI_FOUND TRUE) - mark_as_advanced(KIPI_INCLUDE_DIR KIPI_LIBRARIES) + mark_as_advanced(KIPI_INCLUDE_DIR KIPI_LIBRARIES KIPI_DEFINITIONS) - else(KIPI_LOCAL_FOUND) + else (KIPI_LOCAL_FOUND) - if(NOT WIN32) + if (NOT WIN32) message(STATUS "Check Kipi library using pkg-config...") # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls - INCLUDE(UsePkgConfig) + include(UsePkgConfig) PKGCONFIG(libkipi _KIPIIncDir _KIPILinkDir _KIPILinkFlags _KIPICflags) - if(_KIPILinkFlags) + if (_KIPILinkFlags) # query pkg-config asking for a libkipi >= 0.2.0 exec_program(${PKGCONFIG_EXECUTABLE} ARGS --atleast-version=0.2.0 libkipi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull ) - if(_return_VALUE STREQUAL "0") + if (_return_VALUE STREQUAL "0") message(STATUS "Found libkipi release >= 0.2.0") set(KIPI_VERSION_GOOD_FOUND TRUE) - else(_return_VALUE STREQUAL "0") + else (_return_VALUE STREQUAL "0") message(STATUS "Found libkipi release < 0.2.0, too old") set(KIPI_VERSION_GOOD_FOUND FALSE) set(KIPI_FOUND FALSE) - endif(_return_VALUE STREQUAL "0") - else(_KIPILinkFlags) + endif (_return_VALUE STREQUAL "0") + else (_KIPILinkFlags) set(KIPI_VERSION_GOOD_FOUND FALSE) set(KIPI_FOUND FALSE) - endif(_KIPILinkFlags) - else(NOT WIN32) + endif (_KIPILinkFlags) + else (NOT WIN32) set(KIPI_VERSION_GOOD_FOUND TRUE) - endif(NOT WIN32) - if(KIPI_VERSION_GOOD_FOUND) + endif (NOT WIN32) + if (KIPI_VERSION_GOOD_FOUND) set(KIPI_DEFINITIONS ${_KIPICflags}) find_path(KIPI_INCLUDE_DIR NAMES libkipi/version.h PATHS ${KDE4_INCLUDE_DIR} ${_KIPIIncDir}) @@ -79,7 +93,7 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) if (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) set(KIPI_FOUND TRUE) endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) - endif(KIPI_VERSION_GOOD_FOUND) + endif (KIPI_VERSION_GOOD_FOUND) if (KIPI_FOUND) if (NOT Kipi_FIND_QUIETLY) message(STATUS "Found libkipi: ${KIPI_LIBRARIES}") @@ -94,9 +108,9 @@ else (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) endif (NOT KIPI_LIBRARIES) endif (Kipi_FIND_REQUIRED) endif (KIPI_FOUND) - - MARK_AS_ADVANCED(KIPI_INCLUDE_DIR KIPI_LIBRARIES) - endif(KIPI_LOCAL_FOUND) + mark_as_advanced(KIPI_INCLUDE_DIR KIPI_LIBRARIES KIPI_DEFINITIONS) + + endif (KIPI_LOCAL_FOUND) -endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES) +endif (KIPI_INCLUDE_DIR AND KIPI_LIBRARIES AND KIPI_DEFINITIONS) -- cgit v1.2.1 From e053cccd1b7a14b32c3b27daa580f379cb31155c Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 20 Jan 2011 21:46:06 +0000 Subject: include the policy setting as requested by Alex CCMAIL: neundorf@kde.org svn path=/trunk/KDE/kdelibs/; revision=1216029 --- modules/FindKDE4Internal.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index b03fdd4b..95c11717 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -368,7 +368,10 @@ cmake_policy(SET CMP0005 OLD) # were when the were defined. Keep the OLD behaviour so we can set the policies here # for all KDE software without the big warning cmake_policy(SET CMP0011 OLD) - +# since cmake 2.6.4 +if(POLICY CMP0017) + cmake_policy(SET CMP0017 NEW) +endif(POLICY CMP0017) # Only do something if it hasn't been found yet if(NOT KDE4_FOUND) -- cgit v1.2.1 From 6e130dd0d36dab1994ea88e19718d2f96bf00d24 Mon Sep 17 00:00:00 2001 From: Patrick von Reth Date: Fri, 28 Jan 2011 11:35:14 +0000 Subject: fixed mingw debug build svn path=/trunk/KDE/kdelibs/; revision=1217740 --- modules/FindKDE4Internal.cmake | 6 ------ 1 file changed, 6 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 95c11717..d4e57806 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1223,12 +1223,6 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (MINGW) set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--export-all-symbols -Wl,--disable-auto-import") - - # we always link against the release version of QT with mingw - # (even for debug builds). So we need to define QT_NO_DEBUG - # or else QPluginLoader rejects plugins because it thinks - # they're built against the wrong QT. - add_definitions(-DQT_NO_DEBUG) endif (MINGW) check_cxx_compiler_flag(-fPIE HAVE_FPIE_SUPPORT) -- cgit v1.2.1 From d35f5a88af08aa6658ca5871c58e0332182da30f Mon Sep 17 00:00:00 2001 From: David Faure Date: Fri, 4 Feb 2011 21:14:26 +0100 Subject: Abort compilation immediately when python compiling fails. Rather than aborting at install time when the .pyc file can't be found. --- modules/PythonCompile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/PythonCompile.py b/modules/PythonCompile.py index af859a22..156fea28 100644 --- a/modules/PythonCompile.py +++ b/modules/PythonCompile.py @@ -1,4 +1,4 @@ # By Simon Edwards # This file is in the public domain. -import py_compile -py_compile.main() +import py_compile, sys +sys.exit(py_compile.main()) -- cgit v1.2.1 From 35754c4b9b7395f5c7fb6759801b07007130eeae Mon Sep 17 00:00:00 2001 From: Nikhil Marathe Date: Sat, 5 Mar 2011 23:16:35 +0530 Subject: Added HUpnp version reporting and detection. FindHUpnp.cmake now exposes HUpnp version extracted from HUpnpCore/public/hupnpinfo.h Solid will require HUpnp v0.9.0 --- modules/FindHUpnp.cmake | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindHUpnp.cmake b/modules/FindHUpnp.cmake index bbff8335..85c80306 100644 --- a/modules/FindHUpnp.cmake +++ b/modules/FindHUpnp.cmake @@ -4,16 +4,26 @@ # HUPNP_FOUND - system has HUPnP # HUPNP_INCLUDE_DIR - the LIBHUpnp include directory # HUPNP_LIBS - the LIBHUpnp libraries +# HUPNP_VERSION_STRING - The version of HUpnp +# HUPNP_VERSION_MAJOR - The major version of HUpnp +# HUPNP_VERSION_MINOR - The minor version of HUpnp +# HUPNP_VERSION_PATCH - The patch version of HUpnp # # Copyright (c) 2010, Paulo Romulo Alves Barros -find_path( HUPNP_INCLUDE_DIR - NAMES HUpnp - PATH_SUFFIXES HUpnpCore -) +find_path( HUPNP_INCLUDE_DIR HUpnpCore/HUpnp ) find_library( HUPNP_LIBS HUpnp ) +if( HUPNP_INCLUDE_DIR AND EXISTS "${HUPNP_INCLUDE_DIR}/HUpnpCore/public/hupnpinfo.h" ) + file( STRINGS "${HUPNP_INCLUDE_DIR}/HUpnpCore/public/hupnpinfo.h" HUPNP_INFO_H REGEX "^#define HUPNP_CORE_.*_VERSION .*$" ) + string( REGEX REPLACE ".*HUPNP_CORE_MAJOR_VERSION ([0-9]+).*" "\\1" HUPNP_VERSION_MAJOR "${HUPNP_INFO_H}" ) + string( REGEX REPLACE ".*HUPNP_CORE_MINOR_VERSION ([0-9]+).*" "\\1" HUPNP_VERSION_MINOR "${HUPNP_INFO_H}" ) + string( REGEX REPLACE ".*HUPNP_CORE_PATCH_VERSION ([0-9]+).*" "\\1" HUPNP_VERSION_PATCH "${HUPNP_INFO_H}" ) + + set( HUPNP_VERSION_STRING "${HUPNP_VERSION_MAJOR}.${HUPNP_VERSION_MINOR}.${HUPNP_VERSION_PATCH}" ) +endif() + include( FindPackageHandleStandardArgs ) find_package_handle_standard_args( HUpnp DEFAULT_MSG HUPNP_INCLUDE_DIR HUPNP_LIBS ) -- cgit v1.2.1 From 19d735a32b41320a76199ba7090b366973c8eaf3 Mon Sep 17 00:00:00 2001 From: Wolfgang Rohdewald Date: Thu, 24 Mar 2011 09:52:32 +0100 Subject: Generate cmake standard path names for SIP FindSIP.py returns things like C:\Python27\sip which will be passed to the compiler like C:\Python27\sip/PyKDE4 - the MSVC 10 compiler cannot parse that, thinking /P is an option. So we convert those paths to the cmake standard form C:/Python27/sip --- modules/FindSIP.cmake | 2 ++ 1 file changed, 2 insertions(+) (limited to 'modules') diff --git a/modules/FindSIP.cmake b/modules/FindSIP.cmake index 53e28881..61eaa65f 100644 --- a/modules/FindSIP.cmake +++ b/modules/FindSIP.cmake @@ -42,6 +42,8 @@ ELSE(SIP_VERSION) STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config}) ENDIF(NOT SIP_DEFAULT_SIP_DIR) STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config}) + FILE(TO_CMAKE_PATH ${SIP_DEFAULT_SIP_DIR} SIP_DEFAULT_SIP_DIR) + FILE(TO_CMAKE_PATH ${SIP_INCLUDE_DIR} SIP_INCLUDE_DIR) SET(SIP_FOUND TRUE) ENDIF(sip_config) -- cgit v1.2.1 From 508f7dfafd0c82919bda106ba7930e712319ad22 Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Sun, 27 Mar 2011 12:51:12 -0400 Subject: Master is now at version 4.7 --- modules/FindKDE4Internal.cmake | 4 ++-- modules/KDE4Defaults.cmake | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index d4e57806..cf221a55 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1346,13 +1346,13 @@ macro (KDE4_PRINT_RESULTS) # inside kdelibs the include dir and lib dir are internal, not "found" if (NOT _kdeBootStrapping) if(KDE4_INCLUDE_DIR) - message(STATUS "Found KDE 4.6 include dir: ${KDE4_INCLUDE_DIR}") + message(STATUS "Found KDE 4.7 include dir: ${KDE4_INCLUDE_DIR}") else(KDE4_INCLUDE_DIR) message(STATUS "ERROR: unable to find the KDE 4 headers") endif(KDE4_INCLUDE_DIR) if(KDE4_LIB_DIR) - message(STATUS "Found KDE 4.6 library dir: ${KDE4_LIB_DIR}") + message(STATUS "Found KDE 4.7 library dir: ${KDE4_LIB_DIR}") else(KDE4_LIB_DIR) message(STATUS "ERROR: unable to find the KDE 4 core library") endif(KDE4_LIB_DIR) diff --git a/modules/KDE4Defaults.cmake b/modules/KDE4Defaults.cmake index 59fc977d..d082a813 100644 --- a/modules/KDE4Defaults.cmake +++ b/modules/KDE4Defaults.cmake @@ -21,11 +21,11 @@ set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes # Use this version number for libraries which are at version n in KDE version n -set(GENERIC_LIB_VERSION "4.6.0") +set(GENERIC_LIB_VERSION "4.7.0") set(GENERIC_LIB_SOVERSION "4") # Use this version number for libraries which are already at version n+1 in KDE version n -set(KDE_NON_GENERIC_LIB_VERSION "5.6.0") +set(KDE_NON_GENERIC_LIB_VERSION "5.7.0") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar -- cgit v1.2.1 From 50d0fa5ef424fde9c15404613fc662c2204db4e1 Mon Sep 17 00:00:00 2001 From: Raphael Kubo da Costa Date: Sun, 10 Apr 2011 19:27:44 -0300 Subject: Clean up FindGObject.cmake. * Remove unnecessary WIN32 check. * Use the pkg-config paths as HINTS, not PATHS. * Use FindPackageHandleStandardArgs instead of duplicating its functionality. Reviewed-by: Alexander Neundorf --- modules/FindGObject.cmake | 50 +++++++++++------------------------------------ 1 file changed, 11 insertions(+), 39 deletions(-) (limited to 'modules') diff --git a/modules/FindGObject.cmake b/modules/FindGObject.cmake index d9e8df9c..af0c9f73 100644 --- a/modules/FindGObject.cmake +++ b/modules/FindGObject.cmake @@ -6,75 +6,47 @@ # GOBJECT_LIBRARIES - the libraries needed to use GObject # GOBJECT_DEFINITIONS - Compiler switches required for using GObject +# Copyright (c) 2011, Raphael Kubo da Costa # Copyright (c) 2006, Tim Beaulen # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) - # in cache already - SET(GObject_FIND_QUIETLY TRUE) -ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) - SET(GObject_FIND_QUIETLY FALSE) -ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) - -IF (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - FIND_PACKAGE(PkgConfig) - PKG_CHECK_MODULES(PC_GOBJECT gobject-2.0) - #MESSAGE(STATUS "DEBUG: GObject include directory = ${GOBJECT_INCLUDE_DIRS}") - #MESSAGE(STATUS "DEBUG: GObject link directory = ${GOBJECT_LIBRARY_DIRS}") - #MESSAGE(STATUS "DEBUG: GObject CFlags = ${GOBJECT_CFLAGS}") - SET(GOBJECT_DEFINITIONS ${PC_GOBJECT_CFLAGS_OTHER}) -ENDIF (NOT WIN32) +FIND_PACKAGE(PkgConfig) +PKG_CHECK_MODULES(PC_GOBJECT gobject-2.0) +SET(GOBJECT_DEFINITIONS ${PC_GOBJECT_CFLAGS_OTHER}) FIND_PATH(GOBJECT_INCLUDE_DIR gobject.h - PATHS + HINTS ${PC_GOBJECT_INCLUDEDIR} ${PC_GOBJECT_INCLUDE_DIRS} PATH_SUFFIXES glib-2.0/gobject/ ) FIND_LIBRARY(_GObjectLibs NAMES gobject-2.0 - PATHS + HINTS ${PC_GOBJECT_LIBDIR} ${PC_GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GModuleLibs NAMES gmodule-2.0 - PATHS + HINTS ${PC_GOBJECT_LIBDIR} ${PC_GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GThreadLibs NAMES gthread-2.0 - PATHS + HINTS ${PC_GOBJECT_LIBDIR} ${PC_GOBJECT_LIBRARY_DIRS} ) FIND_LIBRARY(_GLibs NAMES glib-2.0 - PATHS + HINTS ${PC_GOBJECT_LIBDIR} ${PC_GOBJECT_LIBRARY_DIRS} ) SET( GOBJECT_LIBRARIES ${_GObjectLibs} ${_GModuleLibs} ${_GThreadLibs} ${_GLibs} ) -IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) - SET(GOBJECT_FOUND TRUE) -ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) - SET(GOBJECT_FOUND FALSE) -ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) - -IF (GOBJECT_FOUND) - IF (NOT GObject_FIND_QUIETLY) - MESSAGE(STATUS "Found GObject libraries: ${GOBJECT_LIBRARIES}") - MESSAGE(STATUS "Found GObject includes : ${GOBJECT_INCLUDE_DIR}") - ENDIF (NOT GObject_FIND_QUIETLY) -ELSE (GOBJECT_FOUND) - IF (GObject_FIND_REQUIRED) - MESSAGE(STATUS "Could NOT find GObject") - ENDIF(GObject_FIND_REQUIRED) -ENDIF (GOBJECT_FOUND) +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(GOBJECT DEFAULT_MSG GOBJECT_LIBRARIES GOBJECT_INCLUDE_DIR) MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR _GObjectLibs _GModuleLibs _GThreadLibs _GLibs) -- cgit v1.2.1 From aa61ecc62c91611f482e20ce0e58207c116b2858 Mon Sep 17 00:00:00 2001 From: Wolfgang Rohdewald Date: Tue, 12 Apr 2011 04:25:16 +0200 Subject: implement PYKDE4_ADD_EXECUTABLE on windows using a batch file. Windows links would only work if the .py extension is associated with python icons cannot be attached to a batch file - if that is needed, we would need to generate a minimal C program calling python --- modules/FindPyKDE4.cmake | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindPyKDE4.cmake b/modules/FindPyKDE4.cmake index 1db7bf08..98f7c374 100644 --- a/modules/FindPyKDE4.cmake +++ b/modules/FindPyKDE4.cmake @@ -159,6 +159,27 @@ MACRO(PYKDE4_ADD_EXECUTABLE _pyname _exename) if(NOT PROJECT_NAME) MESSAGE(STATUS "Project name is necessary to create symlink against python program!!! It will fail.") endif(NOT PROJECT_NAME) - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname} -DLINK_NAME=${BIN_INSTALL_DIR}/${_exename} -P ${current_module_dir}/create_exe_symlink.cmake)" ) + if(WIN32) + # we generate a batch file instead of a symlink. A windows link would only + # work if the file extension .py is associated with python - but that is + # not guaranteed. + # What if python.exe is not in PATH or points to a wrong python version? + # The python app should check for compatible versions at startup. + # TODO: we cannot attach an icon to a bat file. So we might have to write a + # C program which then calls python + FILE(TO_CMAKE_PATH "${BIN_INSTALL_DIR}/${_exename}.bat" LINK_NAME) + FILE(TO_CMAKE_PATH "${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname}" TARGET) + GET_FILENAME_COMPONENT(abs_link_name $ENV{DESTDIR}/${LINK_NAME} ABSOLUTE) + GET_FILENAME_COMPONENT(link_path $ENV{DESTDIR}/${LINK_NAME} PATH) + GET_FILENAME_COMPONENT(abs_link_path ${link_path} ABSOLUTE) + FILE(MAKE_DIRECTORY ${abs_link_path}) + + FILE(TO_NATIVE_PATH "../${TARGET}" rel_target) + FILE(WRITE ${abs_link_name} "rem this file has been generated by PYKDE4_ADD_EXECUTABLE\n") + FILE(APPEND ${abs_link_name} "python ${rel_target}\n") + INSTALL(PROGRAMS ${LINK_NAME} DESTINATION $ENV{DESTDIR}/${BIN_INSTALL_DIR}) + else(WIN32) + INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname} -DLINK_NAME=${BIN_INSTALL_DIR}/${_exename} -P ${current_module_dir}/create_exe_symlink.cmake)" ) + endif(WIN32) ENDMACRO(PYKDE4_ADD_EXECUTABLE) -- cgit v1.2.1 From 93d1e0b2ca4536e55170a1465a4ef0a63b7b285f Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Tue, 12 Apr 2011 13:41:44 +0200 Subject: Find Hunspell 1.3 --- modules/FindHUNSPELL.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindHUNSPELL.cmake b/modules/FindHUNSPELL.cmake index 30f37730..9ed944ff 100644 --- a/modules/FindHUNSPELL.cmake +++ b/modules/FindHUNSPELL.cmake @@ -14,7 +14,7 @@ ENDIF (HUNSPELL_INCLUDE_DIR AND HUNSPELL_LIBRARIES) FIND_PATH(HUNSPELL_INCLUDE_DIR hunspell/hunspell.hxx ) -FIND_LIBRARY(HUNSPELL_LIBRARIES NAMES hunspell-1.2) +FIND_LIBRARY(HUNSPELL_LIBRARIES NAMES hunspell-1.2 hunspell-1.3) # handle the QUIETLY and REQUIRED arguments and set HUNSPELL_FOUND to TRUE if # all listed variables are TRUE -- cgit v1.2.1 From b55e7edb2781f8ec7bf179431e0bb7df860db024 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sat, 21 May 2011 02:52:14 +0200 Subject: make KDE build with a compiler older than 4.2 again --- modules/FindKDE4Internal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules') diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index cf221a55..7960061b 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -1210,7 +1210,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") # As off Qt 4.6.x we need to override the new exception macros if we want compile with -fno-exceptions - set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common -Werror=return-type") + set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common") add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) @@ -1292,7 +1292,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif(NOT _compile_result) if (GCC_IS_NEWER_THAN_4_2) - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=return-type -fvisibility-inlines-hidden") endif (GCC_IS_NEWER_THAN_4_2) else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32) set (__KDE_HAVE_GCC_VISIBILITY 0) -- cgit v1.2.1 From c06badd8d431583071cad638fea082ca0776a0a3 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 22 Jun 2011 22:23:40 +0200 Subject: =?UTF-8?q?Apply=20patch=20by=20Tom=C3=A1=C5=A1=20Chv=C3=A1tal=20t?= =?UTF-8?q?o=20fix=20hunspell-1.3=20detection?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ...when hunspell-1.2 is installed too. REVIEW: 101484 --- modules/FindHUNSPELL.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules') diff --git a/modules/FindHUNSPELL.cmake b/modules/FindHUNSPELL.cmake index 9ed944ff..26942b56 100644 --- a/modules/FindHUNSPELL.cmake +++ b/modules/FindHUNSPELL.cmake @@ -14,7 +14,7 @@ ENDIF (HUNSPELL_INCLUDE_DIR AND HUNSPELL_LIBRARIES) FIND_PATH(HUNSPELL_INCLUDE_DIR hunspell/hunspell.hxx ) -FIND_LIBRARY(HUNSPELL_LIBRARIES NAMES hunspell-1.2 hunspell-1.3) +FIND_LIBRARY(HUNSPELL_LIBRARIES NAMES hunspell-1.3 hunspell-1.2) # handle the QUIETLY and REQUIRED arguments and set HUNSPELL_FOUND to TRUE if # all listed variables are TRUE -- cgit v1.2.1