summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* GNUInstallDirs: Unify path logic into helper macrosRoger Leigh2016-12-121-66/+51
| | | | | | | | - Unify path handling: Rather than repeat the same logic for each individual path create two macros which can be used throughout the module. - Capitalise helpstrings to match the conventions used by the standard CMake properties
* Merge topic 'FindOpenGL-imported-targets'Brad King2016-12-061-0/+59
|\ | | | | | | | | 027ce359 FindOpenGL: Provide imported targets for GL and GLU
| * FindOpenGL: Provide imported targets for GL and GLUBrad King2016-12-021-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create OpenGL::GL and OpenGL::GLU imported targets using the locations found. This feature was originally added by commit v3.1.0-rc1~420^2~2 (FindOpenGL: Provide imported targets for GL and GLU, 2014-05-31) but had to be reverted by commit v3.1.0-rc3~10^2 (FindOpenGL: Revert support for imported targets, 2014-12-01) due to issue #15267. Since then we added support for `IMPORTED_LIBNAME` to interface libraries, so use it to handle the case where we have only the library name without an absolute path. Inspired-by: Philipp Möller <bootsarehax@googlemail.com> Closes: #15267
* | Merge topic 'features-c++17'Brad King2016-12-0514-18/+62
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 97c1e569 Help: Add release note for C++ 17 support 85c8e652 Features: Activate C++ 17 support for AppleClang 6.1+ 8084f7a6 Features: Activate C++ 17 support for Clang 3.5+ 24e29d41 Features: Activate C++ 17 support for GNU 5.1+ ae1a6815 Features: Add infrastructure for C++ 17 language standard 684e4d20 Features: Make feature recording conditions more consistent
| * | Features: Activate C++ 17 support for AppleClang 6.1+Brad King2016-12-021-0/+8
| | |
| * | Features: Activate C++ 17 support for Clang 3.5+Brad King2016-12-021-0/+8
| | |
| * | Features: Activate C++ 17 support for GNU 5.1+Brad King2016-12-021-0/+8
| | |
| * | Features: Add infrastructure for C++ 17 language standardBrad King2016-12-025-2/+14
| | | | | | | | | | | | Issue: #16468
| * | Features: Make feature recording conditions more consistentBrad King2016-12-029-16/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | Condition all calls to `_record_compiler_features_{c,cxx}` on `_result EQUAL 0` so that adding new language standards later does not need to update them. Avoid some duplicate compiler version checks by conditioning C11 and CXX14 feature recording on the existence of `CMAKE_{C11,CXX14}_STANDARD_COMPILE_OPTION` (whose setting already used the version check).
* | | Merge topic 'cpack-rpm-user-file-list-with-multiple-directives'Brad King2016-12-051-5/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | 4e4b786e CPack/RPM CPACK_RPM_USER_FILELIST change release note a5a6f61b CPackRPM now supports multiple directives in CPACK_RPM_USER_FILELIST
| * | | CPackRPM now supports multiple directives in CPACK_RPM_USER_FILELISTHarry Mallon2016-12-031-5/+8
| | |/ | |/| | | | | | | | | | | | | | | | | | | * In older version "%dir %attr(-, root, root) foo" would put "%dir foo" in the final spec file. * Also added comment to describe this and advise not not to add trailing slashes to directories in USER_FILELIST. * Includes test in RunCMake CPack which now passes.
* | | CMakeDetermineASMCompiler: arg-split ASM* env var like CCMichał Górny2016-12-021-1/+7
|/ / | | | | | | | | | | | | Split the arguments off of the `ASM${ASM_DIALECT}` environment variable as is done for `CC` and other compiler variables. This fixes using CMake when `ASM*` is used to pass additional target flags, e.g. when one uses `ASM=${CC}`.
* | Merge topic 'pgi-macos-flags'Brad King2016-12-014-0/+20
|\ \ | |/ |/| | | | | 571721c5 PGI: Pass macOS-specific link flags directly to linker
| * PGI: Pass macOS-specific link flags directly to linkerBrad King2016-11-304-0/+20
| | | | | | | | | | | | | | The PGI compiler on macOS does not support some macOS-specific flags so pass them through `-Wl,` to the linker directly. Issue: #16457
* | Merge topic 'CMakeGraphVizOptions-docs'Brad King2016-11-301-3/+10
|\ \ | | | | | | | | | | | | f7c2a803 CMakeGraphVizOptions: Minor improvements to docs.
| * | CMakeGraphVizOptions: Minor improvements to docs.Harry Mallon2016-11-291-3/+10
| |/ | | | | | | | | * Add `GRAPHVIZ_GRAPH_TYPE` options. * Correct inaccurate usage info.
* | Merge topic 'FindPythonLibs-tolerate-relative-exe'Brad King2016-11-301-4/+4
|\ \ | | | | | | | | | | | | 9db0dfd7 FindPythonLibs: Tolerate a non-absolute PYTHON_EXECUTABLE
| * | FindPythonLibs: Tolerate a non-absolute PYTHON_EXECUTABLEBrad King2016-11-281-4/+4
| |/ | | | | | | | | | | | | | | The `PYTHON_EXECUTABLE` variable normally contains an absolute path, but tolerate cases when it does not without calling `get_filename_component` with an incorrect number of arguments. Closes: #16452
* | Merge topic 'cpack-ifw-options'Brad King2016-11-301-6/+68
|\ \ | | | | | | | | | | | | 88ecfd8b CPackIFW: Add some options
| * | CPackIFW: Add some optionsKonstantin Podsvirov2016-11-241-6/+68
| |/ | | | | | | | | | | | | | | New options is: DEFAULT, VIRTUAL, FORCED_INSTALLATION, DISPLAY_NAME, DESCRIPTION and RELEASE_DATE. Options added for both cpack_ifw_configure_component and cpack_ifw_configure_component_group command.
* | Merge topic 'UseSWIG-java-outputs'Brad King2016-11-301-3/+4
|\ \ | | | | | | | | | | | | 62c4cb4b UseSWIG: Record generated java files as custom command outputs
| * | UseSWIG: Record generated java files as custom command outputscaryoscelus2016-11-291-3/+4
| |/ | | | | | | | | | | When another target depends on the generated files CMake must know which custom command generates them in order to hook up the dependency properly. We already do this for Python. Add the Java files too.
* | Merge topic 'find-module-cleanup-sweep'Brad King2016-11-2948-111/+2
|\ \ | | | | | | | | | | | | | | | | | | 745b56f5 Find*.cmake: drop the comments before including FPHSA 0ab9cb46 FindLibArchive: do not set LibArchive_FOUND explicitly 703d1943 FindLibArchive: use CMAKE_CURRENT_LIST_DIR to find FPHSA
| * | Find*.cmake: drop the comments before including FPHSARolf Eike Beer2016-11-2848-106/+1
| | | | | | | | | | | | | | | No need to explain this over and over again. While at it, do some other minor cleanups to whitespace and comments (i.e. delete them).
| * | FindLibArchive: do not set LibArchive_FOUND explicitlyRolf Eike Beer2016-11-281-1/+0
| | | | | | | | | | | | FPHSA already does this.
| * | FindLibArchive: use CMAKE_CURRENT_LIST_DIR to find FPHSARolf Eike Beer2016-11-281-4/+1
| |/ | | | | | | | | The version of CMake required to build CMake is now new enough to have that variable.
* | Merge topic 'FindDevIL-updates'Brad King2016-11-291-2/+2
|\ \ | | | | | | | | | | | | | | | 7abb12c8 FindDevIL: Make the ILUT library optional d3f9f512 FindDevIL: fail properly when library is not found.
| * | FindDevIL: Make the ILUT library optionalVladimír Vondruš2016-11-281-1/+1
| | | | | | | | | | | | | | | | | | | | | Some distributions (such as ArchLinux) have only the IL and ILU libraries and since these are mainly used, the module should succeed even though ILUT was not found. Removed it from the FPHSA() macro call, making it effectively optional.
| * | FindDevIL: fail properly when library is not found.Vladimír Vondruš2016-11-281-1/+1
| |/ | | | | | | | | | | Due to a mismatch between module name and name passed to FPHSA() the macro printed an error message but the error was not caught up by CMake. Fix the typo.
* | Merge topic 'FindPkgConfig-fix-print-errors'Brad King2016-11-291-1/+2
|\ \ | | | | | | | | | | | | cbccebba FindPkgConfig: Fix missing error text when library version is specified
| * | FindPkgConfig: Fix missing error text when library version is specifiedGautier Pelloux-Prayer2016-11-281-1/+2
| |/ | | | | | | | | | | Calls like `pkg_check_modules(somelibrary>=3.22)` that specify a version requirement should still display an informative error when the package is not found. Fix our logic accordingly.
* | Merge topic 'initial_cuda_language_support'Brad King2016-11-2910-1/+495
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4cc601f2 Help: Add release note for CUDA support 7b9131da CUDA: Add tests to verify CUDA compiler works properly. 9cf5b98d CUDA: Prefer environment variables CUDACXX and CUDAHOSTCXX. a5e806b3 CUDA: Add support for CMAKE_CUDA_COMPILE_OPTIONS_VISIBILITY d038559e CUDA: Add separable compilation support to the makefile generator. 43ce4414 CUDA: Add separable compilation support to the ninja generator. 4b316097 CUDA: Add support for the CUDA_SEPARABLE_COMPILATION target property ae05fcc6 CUDA: Add LinkLineComputer that computes cuda dlink lines. 115269a8 CUDA: Refactor cmLinkLineComputer to allow for better derived children. 5dec4031 CUDA: Refactor CMakeCUDAInformation to prepare for separable compilation. 5b20d0ab CUDA: C++ compile features now enable cuda c++11 support. 489c52ce CUDA: Use the host compiler for linking CUDA executables and shared libs. bbaf2434 CUDA: add support for specifying an explicit host compiler. a92f8d96 CUDA: Enable header dependency scanning. ec6ce623 CUDA: State that cuda has preprocessor output and can generate assembly. 4f5155f6 CUDA: We now properly perform CUDA compiler identification. ...
| * CUDA: Prefer environment variables CUDACXX and CUDAHOSTCXX.Robert Maynard2016-11-142-1/+19
| |
| * CUDA: Refactor CMakeCUDAInformation to prepare for separable compilation.Robert Maynard2016-11-142-9/+71
| |
| * CUDA: Use the host compiler for linking CUDA executables and shared libs.Robert Maynard2016-11-145-11/+67
| |
| * CUDA: add support for specifying an explicit host compiler.Robert Maynard2016-11-142-5/+22
| |
| * CUDA: Enable header dependency scanning.Robert Maynard2016-11-141-1/+14
| |
| * CUDA: We now properly perform CUDA compiler identification.Robert Maynard2016-11-147-8/+49
| |
| * CUDA: CompilerId now errors out properly when passed a non CUDA compiler.Robert Maynard2016-11-141-3/+2
| | | | | | | | Previously we only reported an error if the compiler was a C compiler.
| * CUDA: Explicitly state all source files are cuda sources.Robert Maynard2016-11-141-1/+1
| | | | | | | | | | This way you can mark a .C/.CPP files as a cuda source file and have nvcc build it as a cuda file.
| * CUDA: Add support language levels (98/11)Robert Maynard2016-11-142-6/+8
| |
| * CUDA: Add basic CUDA language support for *NIX systems.Robert Maynard2016-11-147-0/+286
| |
* | Merge topic 'ExternalProject-cmd-poisoning'Brad King2016-11-181-68/+65
|\ \ | | | | | | | | | | | | 02445138 ExternalProject: Do not trip over pre-existing 'cmd' variable
| * | ExternalProject: Do not trip over pre-existing 'cmd' variableKarsten Sperling2016-11-171-68/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | Callers of `_ep_get_build_command` do not initialize the output variable they pass and expect the function to unconditionally set it. Revise the function to not check its own output variable. Otherwise if a `cmd` variable happens to be set when `ExternalProject_Add` is called then it will be erroneously used as the default `BUILD`, `TEST`, and `INSTALL` command.
* | | Merge topic 'android-info-variables'Brad King2016-11-173-2/+29
|\ \ \ | |/ / |/| | | | | | | | | | | | | | f7c5e970 Android: Add CMAKE_<LANG>_ANDROID_TOOLCHAIN_MACHINE d95e6dff Android: Add CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG variable 3d42a72b Android: Always set CMAKE_ANDROID_NDK_TOOLCHAIN_VERSION
| * | Android: Add CMAKE_<LANG>_ANDROID_TOOLCHAIN_MACHINEBrad King2016-11-143-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | Expose the binutils' machine name (typically used as a prefix on the tool names) publicly. This is expected to match the `gcc -dumpmachine` value. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
| * | Android: Add CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG variableBrad King2016-11-143-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The NDK provides prebuilt toolchain files in directories named for the host architecture. The NDK build system calls this `HOST_TAG`. Expose the value publicly for use by clients that need to pass it to external tools. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
| * | Android: Always set CMAKE_ANDROID_NDK_TOOLCHAIN_VERSIONBrad King2016-11-143-2/+14
| |/ | | | | | | | | | | | | | | | | When this variable is not set by the user or toolchain file, set it to the default selected. This will be useful for client code that needs to pass the value to an external tool that needs to find the same toolchain in the NDK. Leave it empty for a standalone toolchain. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
* | Merge topic 'msvc-no-explicit-_DEBUG'Brad King2016-11-161-2/+2
|\ \ | | | | | | | | | | | | 6d0b5ff6 MSVC: Do not define _DEBUG explicitly when using /MDd
| * | MSVC: Do not define _DEBUG explicitly when using /MDdBrad King2016-11-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | With the latter flag the compiler automatically defines `_DEBUG`: https://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx Closes: #16430