diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2008-09-03 09:43:33 -0400 |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2008-09-03 09:43:33 -0400 |
commit | 3497345c4141e2cd1a1505e7e09c19a9632c4d30 (patch) | |
tree | 0061ee4fe4484a653a1b44f4c8f4214846dab3ee /Modules | |
parent | 1243389ca49d111453a74f1a817297032b4837b1 (diff) | |
download | cmake-3497345c4141e2cd1a1505e7e09c19a9632c4d30.tar.gz |
ENH: 2.6.2 rc 2 merge from main tree
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/CMakeCCompilerABI.c | 20 | ||||
-rw-r--r-- | Modules/CMakeCCompilerId.c.in | 21 | ||||
-rw-r--r-- | Modules/CMakeCXXCompilerABI.cpp | 16 | ||||
-rw-r--r-- | Modules/CMakeCXXCompilerId.cpp.in | 14 | ||||
-rw-r--r-- | Modules/CheckTypeSizeC.c.in | 13 | ||||
-rw-r--r-- | Modules/FindKDE3.cmake | 12 | ||||
-rw-r--r-- | Modules/FindKDE4.cmake | 12 | ||||
-rw-r--r-- | Modules/FindLibXml2.cmake | 13 | ||||
-rw-r--r-- | Modules/FindLua50.cmake | 2 | ||||
-rw-r--r-- | Modules/FindLua51.cmake | 2 | ||||
-rw-r--r-- | Modules/FindOpenGL.cmake | 8 | ||||
-rw-r--r-- | Modules/FindPHP4.cmake | 2 | ||||
-rw-r--r-- | Modules/FindPNG.cmake | 2 | ||||
-rw-r--r-- | Modules/FindQt3.cmake | 60 | ||||
-rw-r--r-- | Modules/FindQt4.cmake | 69 | ||||
-rw-r--r-- | Modules/FindTIFF.cmake | 6 | ||||
-rw-r--r-- | Modules/FindX11.cmake | 6 | ||||
-rw-r--r-- | Modules/MacOSXFrameworkInfo.plist.in | 26 | ||||
-rw-r--r-- | Modules/NSIS.template.in | 57 | ||||
-rw-r--r-- | Modules/Platform/Darwin.cmake | 2 | ||||
-rw-r--r-- | Modules/Platform/Windows-icl.cmake | 2 | ||||
-rw-r--r-- | Modules/TestEndianess.c.in | 13 | ||||
-rw-r--r-- | Modules/UsePkgConfig.cmake | 16 |
23 files changed, 269 insertions, 125 deletions
diff --git a/Modules/CMakeCCompilerABI.c b/Modules/CMakeCCompilerABI.c index f73e7fcc34..e6a07f4c4c 100644 --- a/Modules/CMakeCCompilerABI.c +++ b/Modules/CMakeCCompilerABI.c @@ -12,17 +12,17 @@ /*--------------------------------------------------------------------------*/ -/* Make sure the information strings are referenced. */ -#define REQUIRE(x) (&x[0] != &require) - -int main() +#ifdef __CLASSIC_C__ +int main(argc, argv) int argc; char *argv[]; +#else +int main(int argc, char *argv[]) +#endif { - const char require = 0; - return - ( - REQUIRE(info_sizeof_dptr) + int require = 0; + require += info_sizeof_dptr[argc]; #if defined(ABI_ID) - && REQUIRE(info_abi) + require += info_abi[argc]; #endif - ); + (void)argv; + return require; } diff --git a/Modules/CMakeCCompilerId.c.in b/Modules/CMakeCCompilerId.c.in index ecbe431b70..35d7df77a8 100644 --- a/Modules/CMakeCCompilerId.c.in +++ b/Modules/CMakeCCompilerId.c.in @@ -2,15 +2,9 @@ # error "A C++ compiler has been selected for C." #endif -/* Provide main() so the program can link. */ #if defined(__18CXX) # define ID_VOID_MAIN #endif -#ifdef ID_VOID_MAIN -void main() {} -#else -int main() { return 0; } -#endif #if defined(__INTEL_COMPILER) || defined(__ICC) # define COMPILER_ID "Intel" @@ -82,3 +76,18 @@ int main() { return 0; } char* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; @CMAKE_C_COMPILER_ID_PLATFORM_CONTENT@ + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + (void)argv; + return require; +} +#endif diff --git a/Modules/CMakeCXXCompilerABI.cpp b/Modules/CMakeCXXCompilerABI.cpp index 7fb3618870..c9b0440b8e 100644 --- a/Modules/CMakeCXXCompilerABI.cpp +++ b/Modules/CMakeCXXCompilerABI.cpp @@ -8,17 +8,13 @@ /*--------------------------------------------------------------------------*/ -/* Make sure the information strings are referenced. */ -#define REQUIRE(x) (&x[0] != &require) - -int main() +int main(int argc, char* argv[]) { - const char require = 0; - return - ( - REQUIRE(info_sizeof_dptr) + int require = 0; + require += info_sizeof_dptr[argc]; #if defined(ABI_ID) - && REQUIRE(info_abi) + require += info_abi[argc]; #endif - ); + (void)argv; + return require; } diff --git a/Modules/CMakeCXXCompilerId.cpp.in b/Modules/CMakeCXXCompilerId.cpp.in index 060c7e9c16..fa2178c0b9 100644 --- a/Modules/CMakeCXXCompilerId.cpp.in +++ b/Modules/CMakeCXXCompilerId.cpp.in @@ -5,9 +5,6 @@ # error "A C compiler has been selected for C++." #endif -/* Provide main() so the program can link. */ -int main() { return 0; } - #if defined(__COMO__) # define COMPILER_ID "Comeau" @@ -70,3 +67,14 @@ int main() { return 0; } char* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; @CMAKE_CXX_COMPILER_ID_PLATFORM_CONTENT@ + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + (void)argv; + return require; +} diff --git a/Modules/CheckTypeSizeC.c.in b/Modules/CheckTypeSizeC.c.in index c25b69dcbc..8bcf1a0cc4 100644 --- a/Modules/CheckTypeSizeC.c.in +++ b/Modules/CheckTypeSizeC.c.in @@ -29,15 +29,16 @@ const char info_sizeof[] = {'I', 'N', 'F', 'O', ':', 's','i','z','e','o','f','[ ('0' + (SIZE % 10)), ']','\0'}; - #ifdef __CLASSIC_C__ -int main(){ - int ac; - char*av[]; +int main(argc, argv) int argc; char *argv[]; #else -int main(int ac, char*av[]){ +int main(int argc, char *argv[]) #endif - return (&info_sizeof[0] != &info_sizeof[0]); +{ + int require = 0; + require += info_sizeof[argc]; + (void)argv; + return require; } #else /* CHECK_TYPE_SIZE_TYPE */ diff --git a/Modules/FindKDE3.cmake b/Modules/FindKDE3.cmake index 3281f66dad..0cf8b2404c 100644 --- a/Modules/FindKDE3.cmake +++ b/Modules/FindKDE3.cmake @@ -67,6 +67,18 @@ IF(NOT UNIX AND KDE3_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Compiling KDE3 applications and libraries under Windows is not supported") ENDIF(NOT UNIX AND KDE3_FIND_REQUIRED) +# If Qt4 has already been found, fail. +IF(QT4_FOUND) + IF(KDE3_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "KDE3/Qt3 and Qt4 cannot be used together in one project.") + ELSE(KDE3_FIND_REQUIRED) + IF(NOT KDE3_FIND_QUIETLY) + MESSAGE( STATUS "KDE3/Qt3 and Qt4 cannot be used together in one project.") + ENDIF(NOT KDE3_FIND_QUIETLY) + RETURN() + ENDIF(KDE3_FIND_REQUIRED) +ENDIF(QT4_FOUND) + SET(QT_MT_REQUIRED TRUE) #SET(QT_MIN_VERSION "3.0.0") diff --git a/Modules/FindKDE4.cmake b/Modules/FindKDE4.cmake index 89924680f8..e6d0488bf3 100644 --- a/Modules/FindKDE4.cmake +++ b/Modules/FindKDE4.cmake @@ -9,6 +9,18 @@ # # Author: Alexander Neundorf <neundorf@kde.org> +# If Qt3 has already been found, fail. +IF(QT_QT_LIBRARY) + IF(KDE4_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "KDE4/Qt4 and Qt3 cannot be used together in one project.") + ELSE(KDE4_FIND_REQUIRED) + IF(NOT KDE4_FIND_QUIETLY) + MESSAGE( STATUS "KDE4/Qt4 and Qt3 cannot be used together in one project.") + ENDIF(NOT KDE_FIND_QUIETLY) + RETURN() + ENDIF(KDE4_FIND_REQUIRED) +ENDIF(QT_QT_LIBRARY) + FILE(TO_CMAKE_PATH "$ENV{KDEDIRS}" _KDEDIRS) # when cross compiling, searching kde4-config in order to run it later on diff --git a/Modules/FindLibXml2.cmake b/Modules/FindLibXml2.cmake index 0de0586ec8..42c554ce3b 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, <neundorf@kde.org> # @@ -36,11 +37,15 @@ FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2 ${_LibXml2LinkDir} ) +FIND_PROGRAM(LIBXML2_XMLLINT_EXECUTABLE xmllint) +# for backwards compat. with KDE 4.0.x: +SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}") + 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) +MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE) diff --git a/Modules/FindLua50.cmake b/Modules/FindLua50.cmake index a5e8c51656..6da7aa1348 100644 --- a/Modules/FindLua50.cmake +++ b/Modules/FindLua50.cmake @@ -1,7 +1,7 @@ # Locate Lua library # This module defines +# LUA50_FOUND, if false, do not try to link to Lua # LUA_LIBRARIES, both lua and lualib -# LUA_FOUND, if false, do not try to link to Lua # LUA_INCLUDE_DIR, where to find lua.h and lualib.h (and probably lauxlib.h) # # Note that the expected include convention is diff --git a/Modules/FindLua51.cmake b/Modules/FindLua51.cmake index 04d7db62d4..5f50ec2ca2 100644 --- a/Modules/FindLua51.cmake +++ b/Modules/FindLua51.cmake @@ -1,7 +1,7 @@ # Locate Lua library # This module defines +# LUA51_FOUND, if false, do not try to link to Lua # LUA_LIBRARIES -# LUA_FOUND, if false, do not try to link to Lua # LUA_INCLUDE_DIR, where to find lua.h # # Note that the expected include convention is diff --git a/Modules/FindOpenGL.cmake b/Modules/FindOpenGL.cmake index edea06af5d..1c2648ab08 100644 --- a/Modules/FindOpenGL.cmake +++ b/Modules/FindOpenGL.cmake @@ -57,20 +57,20 @@ ELSE (WIN32) FIND_PATH(OPENGL_INCLUDE_DIR GL/gl.h /usr/share/doc/NVIDIA_GLX-1.0/include /usr/openwin/share/include - /opt/graphics/OpenGL/include + /opt/graphics/OpenGL/include /usr/X11R6/include ) FIND_PATH(OPENGL_xmesa_INCLUDE_DIR GL/xmesa.h /usr/share/doc/NVIDIA_GLX-1.0/include /usr/openwin/share/include - /opt/graphics/OpenGL/include + /opt/graphics/OpenGL/include /usr/X11R6/include ) FIND_LIBRARY(OPENGL_gl_LIBRARY NAMES GL MesaGL PATHS /opt/graphics/OpenGL/lib /usr/openwin/lib - /usr/shlib + /usr/shlib /usr/X11R6/lib ) # On Unix OpenGL most certainly always requires X11. @@ -94,7 +94,7 @@ ELSE (WIN32) PATHS ${OPENGL_gl_LIBRARY} /opt/graphics/OpenGL/lib /usr/openwin/lib - /usr/shlib + /usr/shlib /usr/X11R6/lib ) ENDIF(APPLE) diff --git a/Modules/FindPHP4.cmake b/Modules/FindPHP4.cmake index d4ccd1f008..185d6287d8 100644 --- a/Modules/FindPHP4.cmake +++ b/Modules/FindPHP4.cmake @@ -68,3 +68,5 @@ IF(APPLE) ENDFOREACH(symbol) ENDIF(APPLE) +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(PHP4 DEFAULT_MSG PHP4_EXECUTABLE PHP4_INCLUDE_PATH) diff --git a/Modules/FindPNG.cmake b/Modules/FindPNG.cmake index fa1bcd3efb..d64b074bb6 100644 --- a/Modules/FindPNG.cmake +++ b/Modules/FindPNG.cmake @@ -16,7 +16,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} ) IF (PNG_LIBRARY AND PNG_PNG_INCLUDE_DIR) diff --git a/Modules/FindQt3.cmake b/Modules/FindQt3.cmake index 2ad6fec9cb..dcfaad30c2 100644 --- a/Modules/FindQt3.cmake +++ b/Modules/FindQt3.cmake @@ -20,6 +20,19 @@ # QT_WRAP_CPP, set true if QT_MOC_EXECUTABLE is found # QT_WRAP_UI set true if QT_UIC_EXECUTABLE is found +# If Qt4 has already been found, fail. +IF(QT4_FOUND) + IF(Qt3_FIND_REQUIRED) + MESSAGE( FATAL_ERROR "Qt3 and Qt4 cannot be used together in one project.") + ELSE(Qt3_FIND_REQUIRED) + IF(NOT Qt3_FIND_QUIETLY) + MESSAGE( STATUS "Qt3 and Qt4 cannot be used together in one project.") + ENDIF(NOT Qt3_FIND_QUIETLY) + RETURN() + ENDIF(Qt3_FIND_REQUIRED) +ENDIF(QT4_FOUND) + + FILE(GLOB GLOB_PATHS_BIN /usr/lib/qt-3*/bin/) FIND_PATH(QT_INCLUDE_DIR qt.h "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\3.2.1;InstallDir]/include/Qt" @@ -34,13 +47,12 @@ FIND_PATH(QT_INCLUDE_DIR qt.h /usr/share/qt3/include C:/Progra~1/qt/include /usr/include/qt3 - /usr/X11R6/include ) # if qglobal.h is not in the qt_include_dir then set # QT_INCLUDE_DIR to NOTFOUND IF(NOT EXISTS ${QT_INCLUDE_DIR}/qglobal.h) - SET(QT_INCLUDE_DIR QT_INCLUDE_DIR-NOTFOUND CACHE PATH "path to qt3 include directory" FORCE) + SET(QT_INCLUDE_DIR QT_INCLUDE_DIR-NOTFOUND CACHE PATH "path to Qt3 include directory" FORCE) ENDIF(NOT EXISTS ${QT_INCLUDE_DIR}/qglobal.h) IF(QT_INCLUDE_DIR) @@ -52,7 +64,6 @@ IF(QT_INCLUDE_DIR) # Under windows the qt library (MSVC) has the format qt-mtXYZ where XYZ is the # version X.Y.Z, so we need to remove the dots from version STRING(REGEX REPLACE "\\." "" qt_version_str_lib "${qt_version_str}") -ELSE(QT_INCLUDE_DIR) ENDIF(QT_INCLUDE_DIR) FILE(GLOB GLOB_PATHS_LIB /usr/lib/qt-3*/lib/) @@ -73,7 +84,6 @@ IF (QT_MT_REQUIRED) /usr/lib/qt3/lib64 /usr/share/qt3/lib C:/Progra~1/qt/lib - /usr/X11R6/lib ) ELSE (QT_MT_REQUIRED) @@ -94,14 +104,9 @@ ELSE (QT_MT_REQUIRED) /usr/lib/qt3/lib64 /usr/share/qt3/lib C:/Progra~1/qt/lib - /usr/X11R6/lib ) ENDIF (QT_MT_REQUIRED) -IF(QT_QT_LIBRARY) -ELSE(QT_QT_LIBRARY) -ENDIF(QT_QT_LIBRARY) - FIND_LIBRARY(QT_QASSISTANTCLIENT_LIBRARY NAMES qassistantclient @@ -116,7 +121,6 @@ FIND_LIBRARY(QT_QASSISTANTCLIENT_LIBRARY /usr/lib/qt3/lib64 /usr/share/qt3/lib C:/Progra~1/qt/lib - /usr/X11R6/lib ) # qt 3 should prefer QTDIR over the PATH @@ -140,7 +144,6 @@ FIND_PROGRAM(QT_MOC_EXECUTABLE IF(QT_MOC_EXECUTABLE) SET ( QT_WRAP_CPP "YES") -ELSE(QT_MOC_EXECUTABLE) ENDIF(QT_MOC_EXECUTABLE) # qt 3 should prefer QTDIR over the PATH @@ -162,7 +165,6 @@ FIND_PROGRAM(QT_UIC_EXECUTABLE uic IF(QT_UIC_EXECUTABLE) SET ( QT_WRAP_UI "YES") -ELSE(QT_UIC_EXECUTABLE) ENDIF(QT_UIC_EXECUTABLE) IF (WIN32) @@ -194,28 +196,28 @@ IF (QT_MIN_VERSION) STRING(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}") # req = "6.5.4", qt = "3.2.1" - macro(error_message msg) + MACRO(error_message msg) IF(QT3_REQUIRED) MESSAGE( FATAL_ERROR ${msg}) ELSE(QT3_REQUIRED) MESSAGE( STATUS ${msg}) ENDIF(QT3_REQUIRED) - endmacro(error_message) + ENDMACRO(error_message) IF (req_qt_major_vers GREATER qt_major_vers) # (6 > 3) ? - error_message( "Qt major version not matched (required: ${QT_MIN_VERSION}, found: ${qt_version_str})") # yes + ERROR_MESSAGE( "Qt major version not matched (required: ${QT_MIN_VERSION}, found: ${qt_version_str})") # yes ELSE (req_qt_major_vers GREATER qt_major_vers) # no IF (req_qt_major_vers LESS qt_major_vers) # (6 < 3) ? SET( QT_VERSION_BIG_ENOUGH "YES" ) # yes ELSE (req_qt_major_vers LESS qt_major_vers) # ( 6==3) ? IF (req_qt_minor_vers GREATER qt_minor_vers) # (5>2) ? - error_message( "Qt minor version not matched (required: ${QT_MIN_VERSION}, found: ${qt_version_str})") # yes + ERROR_MESSAGE( "Qt minor version not matched (required: ${QT_MIN_VERSION}, found: ${qt_version_str})") # yes ELSE (req_qt_minor_vers GREATER qt_minor_vers) # no IF (req_qt_minor_vers LESS qt_minor_vers) # (5<2) ? SET( QT_VERSION_BIG_ENOUGH "YES" ) # yes ELSE (req_qt_minor_vers LESS qt_minor_vers) # (5==2) IF (req_qt_patch_vers GREATER qt_patch_vers) # (4>1) ? - error_message( "Qt patch level not matched (required: ${QT_MIN_VERSION}, found: ${qt_version_str})") # yes + ERROR_MESSAGE( "Qt patch level not matched (required: ${QT_MIN_VERSION}, found: ${qt_version_str})") # yes ELSE (req_qt_patch_vers GREATER qt_patch_vers) # (4>1) ? SET( QT_VERSION_BIG_ENOUGH "YES" ) # yes ENDIF (req_qt_patch_vers GREATER qt_patch_vers) # (4>1) ? @@ -226,11 +228,9 @@ IF (QT_MIN_VERSION) ENDIF (QT_MIN_VERSION) # if the include a library are found then we have it -IF(QT_INCLUDE_DIR) - IF(QT_QT_LIBRARY) - SET( QT_FOUND "YES" ) - ENDIF(QT_QT_LIBRARY) -ENDIF(QT_INCLUDE_DIR) +IF(QT_INCLUDE_DIR AND QT_QT_LIBRARY) + SET( QT_FOUND "YES" ) +ENDIF(QT_INCLUDE_DIR AND QT_QT_LIBRARY) IF(QT_FOUND) SET( QT_LIBRARIES ${QT_LIBRARIES} ${QT_QT_LIBRARY} ) @@ -293,18 +293,14 @@ IF("${QTVERSION_MOC}" MATCHES ".* 3..*") ENDIF("${QTVERSION_MOC}" MATCHES ".* 3..*") SET(QT_WRAP_CPP FALSE) -IF (QT_MOC_EXECUTABLE) - IF(_QT_MOC_VERSION_3) - SET ( QT_WRAP_CPP TRUE) - ENDIF(_QT_MOC_VERSION_3) -ENDIF (QT_MOC_EXECUTABLE) +IF (QT_MOC_EXECUTABLE AND _QT_MOC_VERSION_3) + SET ( QT_WRAP_CPP TRUE) +ENDIF (QT_MOC_EXECUTABLE AND _QT_MOC_VERSION_3) SET(QT_WRAP_UI FALSE) -IF (QT_UIC_EXECUTABLE) - IF(_QT_UIC_VERSION_3) - SET ( QT_WRAP_UI TRUE) - ENDIF(_QT_UIC_VERSION_3) -ENDIF (QT_UIC_EXECUTABLE) +IF (QT_UIC_EXECUTABLE AND _QT_UIC_VERSION_3) + SET ( QT_WRAP_UI TRUE) +ENDIF (QT_UIC_EXECUTABLE AND _QT_UIC_VERSION_3) MARK_AS_ADVANCED( QT_INCLUDE_DIR diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake index da8594ca81..626232ff9e 100644 --- a/Modules/FindQt4.cmake +++ b/Modules/FindQt4.cmake @@ -48,8 +48,9 @@ # # 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" +# 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 ...) # create code from a list of Qt designer ui files. @@ -102,11 +103,11 @@ # interface file is constructed from the basename of the header with # the suffix .xml appended. # -# macro QT4_CREATE_TRANSLATION( qm_files sources ... ts_files ... ) +# macro QT4_CREATE_TRANSLATION( qm_files directories ... sources ... ts_files ... ) # out: qm_files -# in: sources ts_files +# in: directories sources ts_files # generates commands to create .ts (vie lupdate) and .qm -# (via lrelease) - files from sources. The ts files are +# (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 @@ -256,6 +257,19 @@ # (They make no sense in Qt4) # QT_QT_LIBRARY Qt-Library is now split +# 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_QT_LIBRARY) + + INCLUDE(CheckSymbolExists) INCLUDE(MacroAddFileDependencies) @@ -474,9 +488,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) ############################################# @@ -512,10 +526,6 @@ IF (QT4_QMAKE_FOUND) # ############################################# - 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 @@ -771,9 +781,9 @@ IF (QT4_QMAKE_FOUND) ENDIF(EXISTS ${QT_LIBRARY_DIR}/libqtmain.a) ENDIF(QT_LIBRARY_DIR AND MSVC) - 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_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE ) # Set QT_QTASSISTANT_LIBRARY @@ -1028,18 +1038,27 @@ IF (QT4_QMAKE_FOUND) SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext}) ENDMACRO (QT4_MAKE_OUTPUT_FILE ) - MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS) - SET(${_moc_INC_DIRS}) + 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) - ENDMACRO(QT4_GET_MOC_INC_DIRS) + ENDMACRO(QT4_GET_MOC_FLAGS) # helper macro to set up a moc rule - MACRO (QT4_CREATE_MOC_COMMAND infile outfile moc_includes moc_options) + 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 @@ -1053,7 +1072,7 @@ IF (QT4_QMAKE_FOUND) SET(_moc_working_dir WORKING_DIRECTORY ${_moc_outfile_dir}) ENDIF(_moc_outfile_dir) SET (_moc_parameters_file ${outfile}_parameters) - SET (_moc_parameters ${moc_includes} ${moc_options} -o "${outfile}" "${infile}") + 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") @@ -1066,16 +1085,16 @@ IF (QT4_QMAKE_FOUND) ELSE (WIN32) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} - ARGS ${moc_includes} ${moc_options} -o ${outfile} ${infile} + ARGS ${moc_flags} ${moc_options} -o ${outfile} ${infile} DEPENDS ${infile}) ENDIF (WIN32) ENDMACRO (QT4_CREATE_MOC_COMMAND) MACRO (QT4_GENERATE_MOC infile outfile ) - QT4_GET_MOC_INC_DIRS(moc_includes) + QT4_GET_MOC_FLAGS(moc_flags) GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE) - QT4_CREATE_MOC_COMMAND(${abs_infile} ${outfile} "${moc_includes}" "") + QT4_CREATE_MOC_COMMAND(${abs_infile} ${outfile} "${moc_flags}" "") SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file ENDMACRO (QT4_GENERATE_MOC) @@ -1084,13 +1103,13 @@ IF (QT4_QMAKE_FOUND) MACRO (QT4_WRAP_CPP outfiles ) # get include dirs - QT4_GET_MOC_INC_DIRS(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) QT4_MAKE_OUTPUT_FILE(${it} moc_ cxx outfile) - QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_includes}" "${moc_options}") + QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}") SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH(it) @@ -1234,7 +1253,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}) diff --git a/Modules/FindTIFF.cmake b/Modules/FindTIFF.cmake index fbf8044687..2868bb9f34 100644 --- a/Modules/FindTIFF.cmake +++ b/Modules/FindTIFF.cmake @@ -9,14 +9,16 @@ FIND_PATH(TIFF_INCLUDE_DIR tiff.h) -SET(TIFF_NAMES ${TIFF_NAMES} tiff) +SET(TIFF_NAMES ${TIFF_NAMES} tiff libtiff libtiff3) FIND_LIBRARY(TIFF_LIBRARY NAMES ${TIFF_NAMES} ) # handle the QUIETLY and REQUIRED arguments and set TIFF_FOUND to TRUE if # all listed variables are TRUE INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(TIFF DEFAULT_MSG TIFF_LIBRARY TIFF_INCLUDE_DIR) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(TIFF DEFAULT_MSG TIFF_LIBRARY TIFF_INCLUDE_DIR) IF(TIFF_FOUND) SET( TIFF_LIBRARIES ${TIFF_LIBRARY} ) ENDIF(TIFF_FOUND) + +MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY) diff --git a/Modules/FindX11.cmake b/Modules/FindX11.cmake index 0db6abed16..3155aac824 100644 --- a/Modules/FindX11.cmake +++ b/Modules/FindX11.cmake @@ -46,20 +46,18 @@ IF (UNIX) SET(X11_INC_SEARCH_PATH /usr/pkg/xorg/include /usr/X11R6/include - /usr/local/include + /usr/X11R7/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/X11R6/lib - /usr/local/lib + /usr/X11R7/lib /usr/openwin/lib - /usr/lib ) FIND_PATH(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH}) diff --git a/Modules/MacOSXFrameworkInfo.plist.in b/Modules/MacOSXFrameworkInfo.plist.in new file mode 100644 index 0000000000..18eaef2f7d --- /dev/null +++ b/Modules/MacOSXFrameworkInfo.plist.in @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>${MACOSX_FRAMEWORK_NAME}</string> + <key>CFBundleIconFile</key> + <string>${MACOSX_FRAMEWORK_ICON_FILE}</string> + <key>CFBundleIdentifier</key> + <string>${MACOSX_FRAMEWORK_IDENTIFIER}</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>${MACOSX_FRAMEWORK_BUNDLE_VERSION}</string> + <key>CFBundleShortVersionString</key> + <string>${MACOSX_FRAMEWORK_SHORT_VERSION_STRING}</string> + <key>CSResourcesFileMapped</key> + <true/> +</dict> +</plist> diff --git a/Modules/NSIS.template.in b/Modules/NSIS.template.in index 96598d9eac..19017c89b4 100644 --- a/Modules/NSIS.template.in +++ b/Modules/NSIS.template.in @@ -533,11 +533,62 @@ FunctionEnd !insertmacro MUI_UNPAGE_CONFIRM !insertmacro MUI_UNPAGE_INSTFILES - + ;-------------------------------- ;Languages - - !insertmacro MUI_LANGUAGE "English" + + !insertmacro MUI_LANGUAGE "English" ;first language is the default language + !insertmacro MUI_LANGUAGE "Albanian" + !insertmacro MUI_LANGUAGE "Arabic" + !insertmacro MUI_LANGUAGE "Basque" + !insertmacro MUI_LANGUAGE "Belarusian" + !insertmacro MUI_LANGUAGE "Bosnian" + !insertmacro MUI_LANGUAGE "Breton" + !insertmacro MUI_LANGUAGE "Bulgarian" + !insertmacro MUI_LANGUAGE "Croatian" + !insertmacro MUI_LANGUAGE "Czech" + !insertmacro MUI_LANGUAGE "Danish" + !insertmacro MUI_LANGUAGE "Dutch" + !insertmacro MUI_LANGUAGE "Estonian" + !insertmacro MUI_LANGUAGE "Farsi" + !insertmacro MUI_LANGUAGE "Finnish" + !insertmacro MUI_LANGUAGE "French" + !insertmacro MUI_LANGUAGE "German" + !insertmacro MUI_LANGUAGE "Greek" + !insertmacro MUI_LANGUAGE "Hebrew" + !insertmacro MUI_LANGUAGE "Hungarian" + !insertmacro MUI_LANGUAGE "Icelandic" + !insertmacro MUI_LANGUAGE "Indonesian" + !insertmacro MUI_LANGUAGE "Irish" + !insertmacro MUI_LANGUAGE "Italian" + !insertmacro MUI_LANGUAGE "Japanese" + !insertmacro MUI_LANGUAGE "Korean" + !insertmacro MUI_LANGUAGE "Kurdish" + !insertmacro MUI_LANGUAGE "Latvian" + !insertmacro MUI_LANGUAGE "Lithuanian" + !insertmacro MUI_LANGUAGE "Luxembourgish" + !insertmacro MUI_LANGUAGE "Macedonian" + !insertmacro MUI_LANGUAGE "Malay" + !insertmacro MUI_LANGUAGE "Mongolian" + !insertmacro MUI_LANGUAGE "Norwegian" + !insertmacro MUI_LANGUAGE "Polish" + !insertmacro MUI_LANGUAGE "Portuguese" + !insertmacro MUI_LANGUAGE "PortugueseBR" + !insertmacro MUI_LANGUAGE "Romanian" + !insertmacro MUI_LANGUAGE "Russian" + !insertmacro MUI_LANGUAGE "Serbian" + !insertmacro MUI_LANGUAGE "SerbianLatin" + !insertmacro MUI_LANGUAGE "SimpChinese" + !insertmacro MUI_LANGUAGE "Slovak" + !insertmacro MUI_LANGUAGE "Slovenian" + !insertmacro MUI_LANGUAGE "Spanish" + !insertmacro MUI_LANGUAGE "Swedish" + !insertmacro MUI_LANGUAGE "Thai" + !insertmacro MUI_LANGUAGE "TradChinese" + !insertmacro MUI_LANGUAGE "Turkish" + !insertmacro MUI_LANGUAGE "Ukrainian" + !insertmacro MUI_LANGUAGE "Welsh" + ;-------------------------------- ;Reserve Files diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake index edd698cfc4..97472cb961 100644 --- a/Modules/Platform/Darwin.cmake +++ b/Modules/Platform/Darwin.cmake @@ -67,7 +67,7 @@ IF(_CMAKE_OSX_SDKS) IF(NOT "$ENV{CMAKE_OSX_SYSROOT}" STREQUAL "") SET(_CMAKE_OSX_SDKS "$ENV{CMAKE_OSX_SYSROOT}") ENDIF(NOT "$ENV{CMAKE_OSX_SYSROOT}" STREQUAL "") - SET(CMAKE_OSX_SYSROOT ${_CMAKE_OSX_SDKS} CACHE STRING + SET(CMAKE_OSX_SYSROOT ${_CMAKE_OSX_SDKS} CACHE PATH "isysroot used for universal binary support") # set _CMAKE_OSX_MACHINE to umame -m EXEC_PROGRAM(uname ARGS -m OUTPUT_VARIABLE _CMAKE_OSX_MACHINE) diff --git a/Modules/Platform/Windows-icl.cmake b/Modules/Platform/Windows-icl.cmake index d6db61bd71..dc40c87c1f 100644 --- a/Modules/Platform/Windows-icl.cmake +++ b/Modules/Platform/Windows-icl.cmake @@ -8,7 +8,7 @@ ELSE(CMAKE_VERBOSE_MAKEFILE) ENDIF(CMAKE_VERBOSE_MAKEFILE) # create a shared C++ library SET(CMAKE_CXX_CREATE_SHARED_LIBRARY - "link ${CMAKE_CL_NOLOGO} ${CMAKE_START_TEMP_FILE} /out:<TARGET> /dll <LINK_FLAGS> <OBJECTS> <LINK_LIBRARIES> ${CMAKE_END_TEMP_FILE}") + "xilink ${CMAKE_CL_NOLOGO} ${CMAKE_START_TEMP_FILE} /out:<TARGET> /dll <LINK_FLAGS> <OBJECTS> <LINK_LIBRARIES> ${CMAKE_END_TEMP_FILE}") SET(CMAKE_CXX_CREATE_SHARED_MODULE ${CMAKE_CXX_CREATE_SHARED_LIBRARY}) diff --git a/Modules/TestEndianess.c.in b/Modules/TestEndianess.c.in index 68094d4ac6..c924f7858a 100644 --- a/Modules/TestEndianess.c.in +++ b/Modules/TestEndianess.c.in @@ -10,11 +10,14 @@ const cmakeint16 info_little[] = {0x4854, 0x5349, 0x4920, 0x2053, 0x494c, 0x545 const cmakeint16 info_big[] = {0x5448, 0x4953, 0x2049, 0x5320, 0x4249, 0x4720, 0x454e, 0x4449, 0x414e, 0x2e2e, 0x0000}; #ifdef __CLASSIC_C__ -int main(){ - int ac; - char*av[]; +int main(argc, argv) int argc; char *argv[]; #else -int main(int ac, char*av[]){ +int main(int argc, char *argv[]) #endif - return (&info_little[0] != &info_big[0]); +{ + int require = 0; + require += info_little[argc]; + require += info_big[argc]; + (void)argv; + return require; } diff --git a/Modules/UsePkgConfig.cmake b/Modules/UsePkgConfig.cmake index 23519e80e0..5d7d65c083 100644 --- a/Modules/UsePkgConfig.cmake +++ b/Modules/UsePkgConfig.cmake @@ -12,10 +12,10 @@ -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) - message(STATUS + MESSAGE(STATUS "WARNING: you are using the obsolete 'PKGCONFIG' macro use FindPkgConfig") # reset the variables at the beginning SET(${_include_DIR}) @@ -33,20 +33,24 @@ MACRO(PKGCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags) EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=includedir OUTPUT_VARIABLE ${_include_DIR} ) - string(REGEX REPLACE "[\r\n]" " " ${_include_DIR} "${${_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}}") + 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}}") + 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}}") + STRING(REGEX REPLACE "[\r\n]" " " ${_cflags} "${${_cflags}}") + + ELSE( NOT _return_VALUE) + + MESSAGE(STATUS "PKGCONFIG() indicates that ${_package} is not installed (install the package which contains ${_package}.pc if you want to support this feature)") ENDIF(NOT _return_VALUE) |