summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* CMakeDetermineVSServicePack: Add VS 11 update 1 and 2 (#14239)Brad King2013-06-211-1/+5
|
* CMakeDetermineVSServicePack: Improve documentationBrad King2013-06-211-24/+17
| | | | | | Refer users to the newer CMAKE_<LANG>_COMPILER_VERSION variables. Use a more concise summary. Format the documentation to look better in the "cmake --help-module" output.
* Merge topic 'FixAsmSupport'Brad King2013-06-143-4/+4
|\ | | | | | | | | bc460ea asm support: adapt to changes in CMakeDetectCompiler in 2.8.10
| * asm support: adapt to changes in CMakeDetectCompiler in 2.8.10Alex Neundorf2013-06-143-4/+4
| | | | | | | | | | | | | | | | This fixes #14210. In 2.8.10 CMakeDetermineCompiler.cmake was modified (or added), and now the _INIT variable must not be set to a list anymore, before it worked. Alex
* | Merge topic 'VISIBILITY_PRESET-property'Brad King2013-06-056-0/+24
|\ \ | | | | | | | | | | | | | | | cd1fa53 Add a COMPILE_OPTION for a VISIBILITY_INLINES_HIDDEN target property. 0e9f4bc Introduce target property <LANG>_VISIBILITY_PRESET
| * | Add a COMPILE_OPTION for a VISIBILITY_INLINES_HIDDEN target property.Stephen Kelly2013-06-022-0/+12
| | | | | | | | | | | | | | | | | | | | | This corresponds to the g++ and clang++ option -fvisibility-inlines-hidden on linux. On Windows with MinGW, this corresponds to -fno-keep-inline-dllexport. That option is not supported by clang currently.
| * | Introduce target property <LANG>_VISIBILITY_PRESETStephen Kelly2013-06-024-0/+12
| | | | | | | | | | | | | | | | | | This is initialized by CMAKE_<LANG>_VISIBILITY_PRESET. The target property is used as the operand to the -fvisibility= compile option with GNU compilers and clang.
* | | Merge topic 'qt4-macros-TARGET-arg'Brad King2013-06-041-38/+62
|\ \ \ | | | | | | | | | | | | | | | | 9ce60ff Qt4Macros: Allow specifying a TARGET in invokations of macros.
| * | | Qt4Macros: Allow specifying a TARGET in invokations of macros.Stephen Kelly2013-06-031-38/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | That will allow things like this: find_package(Qt4) qt4_generate_moc(myfile.h moc_myfile.cpp TARGET foo) # Note, foo target doesn't # exist until below. add_library(foo ...) The qt4_generate_moc call would use the INCLUDE_DIRECTORIES from the foo target using generator expressions. Currently it reads the INCLUDE_DIRECTORIES directory property, meaning that include_directories() is required. Support for the TARGET is also added to qt4_wrap_cpp, but not qt4_automoc, as that is deprecated in favor of the AUTOMOC target property. The moc tool reports failure if the Q_INTERFACES macro is used with an argument which has not appeared with Q_DECLARE_INTERFACE, so that is the basis of the unit test. The command line arguments are now always written to a file, which is passed to moc as the @atfile. This was already the case on Windows, but now it is used everywhere. The reason for that is that it is not currently possible to expand the list of includes from a target directly in a add_custom_command invokation (though that may become possible in the future). There is not a big disadvantage to using the file anyway on unix, so having one code path instead of two is also a motivation.
* | | | Merge topic 'useless-MATCHES'Brad King2013-06-035-7/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | cd4451d replace string(... MATCHES "^const$) with string(... STREQUAL "const")
| * | | | replace string(... MATCHES "^const$) with string(... STREQUAL "const")Rolf Eike Beer2013-06-025-7/+7
| |/ / /
* | | | Merge topic 'FindImageMagick-v6-includes'Brad King2013-06-031-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 3de9bb4 FindImageMagick: Find v6 include dir (#14174)
| * | | | FindImageMagick: Find v6 include dir (#14174)Funda Wang2013-05-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The header files of ImageMagick are now located at <prefix>/include/ImageMagick-6 instead of <prefix>/include/ImageMagick.
* | | | | Merge topic 'SelectLibraryConfigurations-cached-library'Brad King2013-06-031-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | a2099a8 SelectLibraryConfigurations: Fix for cached <base>_LIBRARY
| * | | | | SelectLibraryConfigurations: Fix for cached <base>_LIBRARYBjoern Thiel2013-05-281-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The line set( ${basename}_LIBRARY ) removes the normal variable, but if the corresponding cached variable is present then line list( APPEND ${basename}_LIBRARY optimized "${_libname}" ) uses that and fails. Replace the original line with set( ${basename}_LIBRARY "" ) to set the normal variable to empty instead of unsetting it.
* | | | | Merge topic 'qt4-qt5-CMAKE_AUTOMOC'Brad King2013-06-031-3/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fa55751 QtAutomoc: Get the Qt version through the target link interface f776316 Use the qt5::moc imported target instead of a variable.
| * | | | | QtAutomoc: Get the Qt version through the target link interfaceStephen Kelly2013-05-271-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Qt 5.1, Qt5::Core has a INTERFACE_QT_MAJOR_VERSION property of '5', and since CMake 2.8.11, Qt4::QtCore has an INTERFACE_QT_MAJOR_VERSION of '4'. This was introduced in commit 4aa10cd6 (FindQt4: Set the INTERFACE_QT_MAJOR_VERSION for Qt4::QtCore, 2013-03-16), to produce an error if Qt 4 and Qt 5 are erroneously used by the same target. This can also be used however to determine the Qt major version, and therefore the particular moc executable to use during automoc steps. This means that targets in a single buildsystem can use a selection of Qt 4 and Qt 5, and still take advantage of the CMAKE_AUTOMOC feature without conflicting.
| * | | | | Use the qt5::moc imported target instead of a variable.Stephen Kelly2013-05-271-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | The variable is provided in the Qt5 config files only for compatibility with this automoc feature, so use the more-future-proof method instead.
* | | | | Merge topic 'rpath-on-mac'Brad King2013-06-031-0/+5
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dc1d025 OS X: Add test for rpaths on Mac. 8576b3f OS X: Add support for @rpath in export files. 00d71bd Xcode: Add rpath support in Xcode generator. 94e7fef OS X: Add RPATH support for Mac.
| * | | | | OS X: Add RPATH support for Mac.Clinton Stimpson2013-06-031-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RPATH support is activated on targets that have the MACOSX_RPATH property turned on. For install time, it is also useful to set INSTALL_RPATH to help find dependent libraries with an @rpath in their install name. Also adding detection of rpath conflicts when using frameworks.
* | | | | | Merge topic 'xcode-shlib-versioning'Brad King2013-06-031-6/+2
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | cbe3f20 Xcode: Add support for shared library versioning
| * | | | | Xcode: Add support for shared library versioningClinton Stimpson2013-05-291-6/+2
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | Add a post-build command to shared library targets to create the versioning symbolic links.
* | | | | Merge topic 'fix-qt4_use_modules-QtAx'Brad King2013-06-031-8/+16
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | ce0c480 Qt4Macros: Handle Qt ActiveX libraries in qt4_use_modules.
| * | | | | Qt4Macros: Handle Qt ActiveX libraries in qt4_use_modules.Stephen Kelly2013-06-031-8/+16
| |/ / / / | | | | | | | | | | | | | | | These libraries have non-conventional variable names.
* | | | | Merge topic 'find-Qt4-granular-modules'Brad King2013-06-031-20/+34
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | b8af46c FindQt4: Don't fail if certain Qt modules are unavailable.
| * | | | FindQt4: Don't fail if certain Qt modules are unavailable.Stephen Kelly2013-06-031-20/+34
| |/ / /
* | | | Merge topic 'FindBoost-normalize-slashes'Brad King2013-05-311-2/+10
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 363825c FindBoost: Fix handling of \ in input paths (#14179)
| * | | | FindBoost: Fix handling of \ in input paths (#14179)Brad King2013-05-301-2/+10
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 5b9149e0 (FindBoost: Overhaul caching and search repeat behavior, 2012-09-24) we refactored the internal library search to use a _Boost_FIND_LIBRARY macro to wrap around find_library calls. However, CMake macros re-process escape sequences when evaluating calls inside the macro after substituting placeholders (a historical bug). In order to avoid escape sequences, convert backslashes to forward slashes before passing arguments to the _Boost_FIND_LIBRARY macro.
* | | | Merge topic 'ExternalData-no-re-stage'Brad King2013-05-281-1/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | c35961b ExternalData: Do not re-stage staged object files
| * | | | ExternalData: Do not re-stage staged object filesBrad King2013-05-241-1/+4
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ExternalData_LINK_CONTENT option tells ExternalData to convert real data files it finds into content links and to "stage" the original content in a ".ExternalData_<algo>_<hash>" file. However, after a data object has been staged it is possible that a user-provided pattern in the "REGEX:" option will later match the staged object file. We must not process staged object files even when a user pattern matches them. Fix the implementation to not match a staged object file as a normal data file for conversion. Extend the RunCMake.ExternalData test to cover this case.
* | | | Merge topic 'fix-protobuf-threads'Brad King2013-05-281-0/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 8961c4b FindProtobuf: also find pthread
| * | | | FindProtobuf: also find pthreadMatthew Woehlke2013-05-241-0/+13
| |/ / / | | | | | | | | | | | | | | | | | | | | Modify FindProtobuf.cmake to find the pthread library on UNIX platforms, and to add the same to PROTOBUF_LIBRARIES, as this is a link dependency of libraries using the protobuf headers.
* | | | Merge topic 'use-java-use-parse-arguments'Brad King2013-05-281-35/+58
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | 81b5fb5 UseJava.cmake: fully use cmake_parse_arguments in add_jar
| * | | UseJava.cmake: fully use cmake_parse_arguments in add_jarMatthew Woehlke2013-03-281-35/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Modify add_jar to fully use named arguments, rather than cmake variables, for specifying output names/directories, etc. For backward compatibility, the old variables are still honored if set, although named arguments will override them.
* | | | Merge topic 'geh-cleanup-identifiers'Brad King2013-05-241-0/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 7e24997 GenerateExportHeader: Generate only C identifiers as defines
| * | | | GenerateExportHeader: Generate only C identifiers as definesStephen Kelly2013-05-241-0/+6
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The variables in this module are used to configure a header file with defines whose name depends on the name of the target. As valid names of targets may be invalid for use as defines, convert the names of the defines used to C identifiers first. This is already done in C++ code for the DEFINE_SYMBOL property. This is not as simple as ensuring that the BASE_NAME is a C identifier, because most of the define names are configurable, and because use of a BASE_NAME which is not a C identifier, such as 4square can become a C identifier by specifying a prefix in the generate_export_header macro.
* | | | GenerateExportHeader: Allow use of of this macro with MODULEs.Stephen Kelly2013-05-231-5/+3
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The significant issue with MODULEs is that on Windows, the exported symbols must be dllexported and they are not imported. In other export macro implementations this is done by defining an export macro outside of any ifdef which depends on definitions set on the command line. However, with cmake we already expect the DEFINE_SYMBOL to be defined, so the regular EXPORT macro can be used by such plugins.
* | | Merge topic 'implicit-link-sanitize-regex'Brad King2013-05-211-0/+1
|\ \ \ | | | | | | | | | | | | | | | | ffda082 Sanitize linker name to parse implicit link line (#14154)
| * | | Sanitize linker name to parse implicit link line (#14154)Brad King2013-05-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach CMakeParseImplicitLinkInfo to convert the CMAKE_LINKER file name to a regular expression that matches only the original name. Escape special characters like '+' so they are not treated as regex syntax. Extend the ImplicitLinkInfoTest to test handling of a CMAKE_LINKER value with many special characters.
* | | | Merge topic 'fix-build-without-qt4-with-qt5'Brad King2013-05-211-0/+3
|\ \ \ \ | |/ / / |/| | | | | | | | | | | 444e752 FindQt4: Fix QUIET failure with Qt 5 but not Qt 4
| * | | FindQt4: Fix QUIET failure with Qt 5 but not Qt 4Stephen Kelly2013-05-211-0/+3
| | |/ | |/| | | | | | | | | | | | | | | | | | | The call find_package(Qt4 QUIET) should be non-FATAL in that case. This fixes #14142.
* | | Merge topic 'cpack-reg-key-doc'Brad King2013-05-161-2/+2
|\ \ \ | | | | | | | | | | | | | | | | 3fde03c Improve documentation for CPACK_PACKAGE_INSTALL_REGISTRY_KEY.
| * | | Improve documentation for CPACK_PACKAGE_INSTALL_REGISTRY_KEY.Clinton Stimpson2013-05-141-2/+2
| |/ / | | | | | | | | | Fixes issue 13787.
* | | Merge topic 'vs-configurations'Brad King2013-05-162-5/+0
|\ \ \ | | | | | | | | | | | | | | | | 42bb42d VS: Always initialize CMAKE_CONFIGURATION_TYPES in IDE generators
| * | | VS: Always initialize CMAKE_CONFIGURATION_TYPES in IDE generatorsBrad King2013-05-132-5/+0
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initialize the CMAKE_CONFIGURATION_TYPES cache entry early during EnableLanguage like the Xcode generator does. Avoid depending on the MSVC compiler information module to do it. Otherwise code like project(MyProj NONE) sets CMAKE_CONFIGURATION_TYPES late (in GenerateConfigurations), and to only "Debug" and "Release" instead of the standard set of 4. Reported-by: Paul Smith <paul@mad-scientist.net>
* | | Merge topic 'UseJava-cross-compile'Brad King2013-05-161-1/+1
|\ \ \ | | | | | | | | | | | | | | | | 778aacc Allow using Java in a cross-compilation toolchain
| * | | Allow using Java in a cross-compilation toolchainGregoire Lejeune2013-05-081-1/+1
| |/ / | | | | | | | | | | | | | | | Since Java is a portable language, if you want to use Java when cross-compiling, UseJava uses the JVM installed on the host. So in this case, we must use set CMAKE_JAVA_INCLUDE_FLAG_SEP for the current host.
* | | Merge topic 'vs-compiler-id-arm'Brad King2013-05-161-0/+2
|\ \ \ | | | | | | | | | | | | | | | | e4c0465 VS: Detect MSVC compiler id on ARM toolchain
| * | | VS: Detect MSVC compiler id on ARM toolchainAlexander Mohr2013-05-081-0/+2
| |/ / | | | | | | | | | | | | This enables detection with the VS2012 CTP for windows Blue (8.1). To build native ARM you need to have the WOA SDK (Windows on ARM).
* | | Merge topic 'doc-improvements'Brad King2013-05-1617-31/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7cc2805 Docs: Clarify wording "flag used" => "flag (to|will) be used" 2378a69 Docs: Clarify that CMAKE_*_(PREFIX|SUFFIX) affect filenames 56ca34d Docs: Update description of CMAKE_(BUILD_TYPE|CONFIGURATION_TYPES) 2bab472 VS10: add detailed comment about MIDL processing e619111 Explain distribution of Win9x binary on all Windows versions. 5ca4336 FindwxWidgets: add DOC strings with usual style f57800d Fix spelling and typos (product names) bf019d7 Fix spelling and typos (non-binary) ddac8d3 Fix spelling and typos (affecting binary data / module messages) 86832ce Fix spelling and typos (affecting users)