- Jul 22, 2015
-
-
Brad King authored
Since commit v3.1.0-rc1~564^2 (OS X: Use -iframework for system framework directories, 2014-05-05) we test the version of Clang to see if it supports -iframework. Fix the version test used for AppleClang since it uses a different version scheme than upstream Clang.
-
- Jul 21, 2015
-
-
Run our check for the '_' prefix using a bzip2 API function as declared with a prototype in the real header file. This is needed in case the function is provided in a DLL import library where the symbol name may not match without proper markup from the header.
-
Brad King authored
VS 2015 RTM completed support for constexpr and attribute features. Update our feature table and test accordingly.
-
- Jul 19, 2015
-
-
Stephen Kelly authored
If someone in KDE wants to port away from OLD policies, they might want to do so one policy at a time. This patch will allow them to use find_package(KDE4 NO_POLICY_SCOPE) in callers to get around the CMP0011 warning, while still getting the policy settings contained within.
-
- Jul 17, 2015
-
-
Brad King authored
The module is not needed anymore for try_compile or try_run. It cannot be used with CMP0022 NEW behavior due to generator expressions in INTERFACE_LINK_LIBRARIES, so document it as deprecated. Whatever problems other than try_compile and try_run anyone tried to solve with this module will have to be addressed another way.
-
- Jul 15, 2015
-
-
Component version of CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA variable.
-
We compute _local_component_name the first time we check for CPACK_DEB_PACKAGE_COMPONENT so we can just re-use it later.
-
- Jul 14, 2015
-
-
Add a basic platform module for EUROS RTOS (euros-embedded.com). Co-Author: Gerhard Gappmeier <gerhard.gappmeier@ascolab.com>
-
Add a TARGET_MESSAGES property to control whether Makefile targets print the "Built target " completion messages. Default to ON to preserve existing behavior.
-
Brad King authored
-
- Jul 13, 2015
-
-
Brad King authored
Teach the Makefile and Ninja generators to substitute for an <INCLUDES> placeholder instead of putting -I in <FLAGS>. Update our values for CMAKE_<LANG>_COMPILE_OBJECT, CMAKE_<LANG>_CREATE_ASSEMBLY_SOURCE, and CMAKE_<LANG>_CREATE_PREPROCESSED_SOURCE to place <INCLUDES> just before <FLAGS>.
-
Brad King authored
Update our values for CMAKE_<LANG>_COMPILE_OBJECT, CMAKE_<LANG>_CREATE_ASSEMBLY_SOURCE, and CMAKE_<LANG>_CREATE_PREPROCESSED_SOURCE to place <DEFINES> before <FLAGS> consistently across supported compilers. We already do this for most compilers, so update the rest for consistency.
-
Roger Leigh authored
This is the previous stable release name used on Windows.
-
- Jul 10, 2015
-
-
Extend the workaround added by commit v3.2.0-rc1~278^2 (FindMPI: Workaround Intel MPI 5.0.1 exit code problem, 2014-12-04) with an additional/alternate keyword to recognize the case with recent GCCs.
-
- Jul 09, 2015
-
-
Brad King authored
The Apple Clang 6.1 compiler that comes with Xcode 6.3 is aware of the modern -std=c++14 and -std=gnu++14 flags, so use them instead of the "1y" flags. Suggested-by:
<darkapostle@rule506.net>
-
Roger Leigh authored
-
Daniel Pfeifer authored
-
- Jul 08, 2015
-
-
Roger Leigh authored
-
Brad King authored
Since commit v3.3.0-rc1~397^2 (Check*CompilerFlag: Refactor method used to pass flags, 2015-02-24) these check modules pass the flags to the compiler front-end during linking as well as during compilation. This breaks checks for flags like '-x c++' that are meant only for the compilation step. Revert the change and add a test covering a compiler-only flag.
-
- Jul 06, 2015
-
-
Brad King authored
Allow the `Swift` language to be enabled with the Xcode generator for Xcode >= 6.1. Reject it on other generators and with older Xcode versions. Since Apple is the only vendor implementing the language right now, the compiler id can be just `Apple`.
-
Added new USES_TERMINAL option to the ExternalProject_Add_Step function. This option passes USES_TERMINAL to the underlying add_custom_command call so that the Ninja console pool is used. Also, corresponding new USES_TERMINAL_<step> options were added to the ExternalProject_Add function. Justification: if using Ninja with a CMake superbuild, it's often desirable to limit the superbuild to ONE sub-Ninja process at a time to avoid oversubscribing the CPU. Using the console pool also makes it easy to monitor the progress of the sub-Ninja process. Independent USES_TERMINAL_<step> arguments are passed to ExternalProject_Add instead of one USES_TERMINAL argument that controls everything. Users may wish to run some steps in parallel but not others (e.g. parallelize configure but not build).
-
Address the test case cmake_minimum_required(VERSION 2.8) set(Python_ADDITIONAL_VERSIONS 3.4 3.5 3.6) find_package(PythonLibs 3 REQUIRED) with a Python 3.4.x .pkg installed from python.org on OSX. Temporarily set CMAKE_FIND_FRAMEWORK to LAST to avoid finding the system Python.h prematurely. Add directories inside the frameworks to the search list for the library as is done for the header.
-
Create target property WINDOWS_EXPORT_ALL_SYMBOLS to automatically generate a module definition file from MS-compatible .obj files and give it to the linker in order to export all symbols from the .dll part of a SHARED library.
-
- Jul 02, 2015
-
-
Brad King authored
This was added without explanation by commit v2.8.2~1138 (Add initial XL C compiler flags for safer builds, 2009-09-30). It is not consistent with our default C++ flags for XL and disables several optimizations, so drop it from our default flags for C. Suggested-by:
Todd Gamblin <tgamblin@llnl.gov>
-
- Jun 30, 2015
-
-
Add a TestLoad setting to CTest that can be set via a new --test-load command-line option, CTEST_TEST_LOAD variable, or TEST_LOAD option to the ctest_test command. Teach cmCTestMultiProcessHandler to measure the CPU load and avoid starting tests that may take more than the spare load currently available. The expression <current_load> + <test_processors> <= <max-load> must be true to start a new test. Co-Author: Zack Galbreath <zack.galbreath@kitware.com>
-
Brad King authored
Move the Ld invocation match expression from CMakeDetermineCompilerId into CMakeDetermine{C,CXX,Fortran}Compiler so that it can be specified on a per-language basis.
-
- Jun 29, 2015
-
-
Replace caret-headers with double-quote-headers and replace dash-headers with caret-headers. This makes the headers match their level of nesting according to our documentation style guide in cmake-developers(7).
-
- Jun 26, 2015
-
-
Brad King authored
If a Windows resource (.rc) source file is included in a STATIC library, the VS "link" tool will process the compiled ".res" file and needs to know the target architecture. Without it, we may get a LNK4068 warning and possibly a LNK1112 error. Add /machine: to the default static library flags to give the link tool the information it needs.
-
- Jun 25, 2015
-
-
Brad King authored
When constructing the "id_src" value for substitution into VS or Xcode compiler id projects, the input "src" variable already contains the file name with no path so we do not need get_filename_component. We know this because CMAKE_DETERMINE_COMPILER_ID_WRITE already references "${src}" with this assumption.
-
Brad King authored
Improve formatting. Link from each module to the other two. Explain the command signatures in more detail.
-
- Jun 23, 2015
-
-
Roger Leigh authored
-
Roger Leigh authored
-
- Jun 18, 2015
-
-
At least some versions (e.g. C++ Builder 5) of the bcc32 linker are known to write temporary files with a constant name to the current directory (e.g. "turboc.$ln"). (This can be verified by using Process Monitor to watch the file writes that bcc32 / ilink32 / implib make). This causes problems with some generators that keep a constant current directory and run concurrent linkers. For example, the Ninja generator, by default, always has the current directory set to the top of the build tree - resulting in conflicts between the linkers that are simultaneously trying to write to "turboc.$ln". Symptoms include direct errors regarding the "turboc.$ln" file, or later build steps failing due to corrupted output from previous links that happened to link "successfully." This is not a problem for the Borland Makefiles generator which does not run jobs in parallel. For the Ninja generator, work around this problem by using a link job pool of size 1.
-
Brad King authored
The Concurrent Fortran compiler (ccur.com) is available on Linux and can be used much like the GNU Fortran compiler. Currently it has no preprocessor symbols to identify it so we need to detect it by matching compiler output. Suggested-by:
Anthony Ette <Anthony.R.Ette@controlsdata.com>
-
Brad King authored
Some compilers can only be distinguished by their compilation output rather than preprocessor symbols or special flags. Add infrastructure to determine the compiler id by matching output.
-
Brad King authored
Callers of CMAKE_DETERMINE_COMPILER_ID initialize the CMAKE_${lang}_COMPILER_ID to unset so we can check it at the end of each loop iteration instead of the beginning. This approach allows us to break out of the loop as soon as we succeed. It will also allow checks to be added in more places within the loop later.
-
Brad King authored
Teach CMAKE_DETERMINE_COMPILER_ID to optionally try detecting the compiler id using some given flags before trying to detect it with no special flags. This will be useful for Fortran detection to distinguish some compilers that use the preprocessors of others but have no macro of their own by getting verbose output.
-
Teach the module to handle SYSCONFDIR and LOCALSTATEDIR properly if CMAKE_INSTALL_PREFIX is set to `/` or `/usr` -- i.e. as expected by GNU Coding Standard (i.e. set SYSCONFDIR to `/etc` and `LOCALSTATEDIR` to `/var`). Also if CMAKE_INSTALL_PREFIX is set to /opt/pkg, `SYSCONFDIR` must be set to `/etc/opt/pkg` and `LOCALSTATEDIR` to `/var/opt/pkg` according to FHS.
-
- Jun 16, 2015