summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add policy CMP0040 to disallow custom commands on missing targetsNils Gladitz2013-11-2124-23/+148
|
* Merge topic 'constify'Brad King2013-11-2012-74/+83
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 15eeace cmTarget: Trivially make more API const. be9dfb6 cmTarget: Make GetExportMacro const. 0794c13 cmTarget: Make NameResolvesToFramework const. 1c27521 cmGlobalGenerator: Make NameResolvesToFramework const. 37554ac cmMakefile: Make FindTarget const. 8841d73 cmMakefile: Make IsAlias const. 36e31cd cmTarget: Make GetInterfaceLinkLibraries const. 04d398d cmTarget: Make GetTargetSourceFileFlags const. 50d1520 cmTarget: Make custom command accessors API const. 0f87643 cmGeneratorTarget: Make GetIncludeDirectories const.
| * cmTarget: Trivially make more API const.Stephen Kelly2013-11-192-25/+26
| |
| * cmTarget: Make GetExportMacro const.Stephen Kelly2013-11-192-3/+3
| | | | | | | | The std::string member is only used for memory management.
| * cmTarget: Make NameResolvesToFramework const.Stephen Kelly2013-11-192-3/+3
| |
| * cmGlobalGenerator: Make NameResolvesToFramework const.Stephen Kelly2013-11-192-9/+11
| |
| * cmMakefile: Make FindTarget const.Stephen Kelly2013-11-192-8/+6
| |
| * cmMakefile: Make IsAlias const.Stephen Kelly2013-11-192-2/+2
| |
| * cmTarget: Make GetInterfaceLinkLibraries const.Stephen Kelly2013-11-192-2/+2
| |
| * cmTarget: Make GetTargetSourceFileFlags const.Stephen Kelly2013-11-192-6/+7
| |
| * cmTarget: Make custom command accessors API const.Stephen Kelly2013-11-197-13/+20
| | | | | | | | Add specific mutators instead of providing non-const refs.
| * cmGeneratorTarget: Make GetIncludeDirectories const.Stephen Kelly2013-11-192-3/+3
| |
* | Merge topic 'add-missing-parent-group'Brad King2013-11-201-1/+1
|\ \ | | | | | | | | | | | | 2751b93 CPackComponent: handle the documented PARENT_GROUP parameter
| * | CPackComponent: handle the documented PARENT_GROUP parameterNils Gladitz2013-11-191-1/+1
| |/
* | Merge topic 'dev/better-eclipse-language-support'Brad King2013-11-207-6/+69
|\ \ | | | | | | | | | | | | | | | | | | a990722 eclipse: Support custom natures via a global property 51726cc eclipse: Add natures for Eclipse based on enabled languages 4a352d4 Notify extra generators about languages
| * | eclipse: Support custom natures via a global propertyBen Boeckel2013-11-193-0/+21
| | | | | | | | | | | | | | | This is useful for enabling natures not recognized by the Eclipse generator directly in a project.
| * | eclipse: Add natures for Eclipse based on enabled languagesBen Boeckel2013-11-192-6/+35
| | | | | | | | | | | | Also adds support for the Java nature if Java is being used.
| * | Notify extra generators about languagesBen Boeckel2013-11-193-0/+13
| |/ | | | | | | | | | | Some generators can use the any enabled languages to add extra support in the relevant build tool. One such is Eclipse since there are many plugins available for various languages.
* | Merge topic 'remove-LOCATION-property-use'Brad King2013-11-208-29/+14
|\ \ | | | | | | | | | | | | | | | a247911 Tests: Don't read the LOCATION property from build targets. cffcdd8 KDevelop: Use GetLocation(0) instead of LOCATION property.
| * | Tests: Don't read the LOCATION property from build targets.Stephen Kelly2013-11-197-28/+13
| | |
| * | KDevelop: Use GetLocation(0) instead of LOCATION property.Stephen Kelly2013-11-191-1/+1
| |/ | | | | | | This can be migrated to use cmGeneratorTarget later.
* | Merge topic 'fix-help-format-warning-exit'Brad King2013-11-202-13/+16
|\ \ | | | | | | | | | | | | e7434d4 cmDocumentation: Fix exit after help output format warnings
| * | cmDocumentation: Fix exit after help output format warningsBrad King2013-11-192-13/+16
| |/ | | | | | | | | | | | | | | After warning that a help output format is no longer supported, fix the return value from cmDocumentation::CheckOptions to indicate that it was still a help option that was parsed. Otherwise CMake moves on to treat the help output file name as a source tree and complains that it does not exist.
* | Merge topic 'vs9-map-Fd'Brad King2013-11-201-0/+2
|\ \ | | | | | | | | | | | | bf1db49 VS: Map /Fd to ProgramDataBaseFileName for VS 7,8,9 (#14577)
| * | VS: Map /Fd to ProgramDataBaseFileName for VS 7,8,9 (#14577)Brad King2013-11-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Since commit 42ba1b08 (VS: Separate compiler and linker PDB files, 2013-04-05) the VS generators no longer add ProgramDataBaseFileName. Therefore we should allow projects to do so by mapping the /Fd option. For VS >= 10 our flag tables map /Fd to ProgramDataBaseFileName already. Add the mapping for VS 7, 8, and 9.
* | | Merge topic 'FindLATEX-ps2pdf'Brad King2013-11-201-1/+2
|\ \ \ | | | | | | | | | | | | | | | | 0767474 FindLATEX: Find ps2pdf with MikTeX.
| * | | FindLATEX: Find ps2pdf with MikTeX.Matt McCormick2013-10-241-1/+2
| | | |
* | | | CMake Nightly Date StampKitware Robot2013-11-201-1/+1
| | | |
* | | | Merge topic 'macro-args-docs'Brad King2013-11-194-14/+51
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | f0db2e3 Help: Document macro argument caveats in more detail
| * | | | Help: Document macro argument caveats in more detailDaniele E. Domenichelli2013-11-194-14/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add notes about macro arguments in the foreach, if, and list commands. Add a section to the macro command documentation explaining in detail how macro arguments are not variables.
* | | | | Merge topic 'cross-compiling-toolchain-variables'Brad King2013-11-1916-11/+187
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7cd65c9 Add CMAKE_SYSROOT variable to set --sysroot when cross compiling. 5096967 Allow toolchain files to specify an external toolchain. 76552d5 Add compiler target compile options. f41ecd1 CMakeDetermineCompilerId: Look for internal file only on host
| * | | | Add CMAKE_SYSROOT variable to set --sysroot when cross compiling.Stephen Kelly2013-11-198-9/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As CMAKE_ROOT_FIND_PATH can be a list, a new CMAKE_SYSROOT is introduced, which is never a list. The contents of this variable is passed to supporting compilers as --sysroot. It is also accounted for when processing implicit link directories reported by the compiler, and when generating RPATH information.
| * | | | Allow toolchain files to specify an external toolchain.Stephen Kelly2013-11-196-1/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang can compile code, but uses the gcc tools for other tasks such as linking. The -gcc-toolchain option can be used for that, but generalize so that other compilers can be treated the same. If such a location is specified, use it as a hint for finding the binutils executables.
| * | | | Add compiler target compile options.Stephen Kelly2013-11-198-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For clang, this allows passing -target <triple> to the compiler, and for qcc, -V<arch> using toolchain files containing something like set(triple arm-linux-gnueabihf) set(CMAKE_C_COMPILER "/usr/bin/clang") set(CMAKE_C_COMPILER_TARGET ${triple}) set(CMAKE_CXX_COMPILER "/usr/bin/clang++") set(CMAKE_CXX_COMPILER_TARGET ${triple}) or set(arch gcc_ntoarmv7le) set(CMAKE_C_COMPILER /opt/qnx650/host/linux/x86/usr/bin/qcc) set(CMAKE_C_COMPILER_TARGET ${arch}) set(CMAKE_CXX_COMPILER /opt/qnx650/host/linux/x86/usr/bin/QCC) set(CMAKE_CXX_COMPILER_TARGET ${arch}) Both clang and qcc are inherently cross compiler( driver)s. When cross-compiling with clang, use the CMAKE_${lang}_COMPILER_TARGET as the _CMAKE_TOOLCHAIN_PREFIX to find the appropriate binutils. When cross-compiling with QNX qcc, use the CMAKE_${lang}_COMPILER_TARGET to set the appropriate _CMAKE_TOOLCHAIN_PREFIX.
| * | | | CMakeDetermineCompilerId: Look for internal file only on hostStephen Kelly2013-11-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The find_file this module uses to locate the compiler id source file must always look on the host and never in CMAKE_FIND_ROOT_PATH, even when a toolchain file has set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) Add NO_CMAKE_FIND_ROOT_PATH to the find_file call to avoid rerooting.
* | | | | Merge topic 'cleanup-build-commands'Brad King2013-11-1965-1041/+892
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4cce44b Help: Document the CMAKE_MAKE_PROGRAM variable in more detail 558c74d VS: Switch to internal CMAKE_MAKE_PROGRAM lookup by generators 5229f2d Tests: Do not use an explicit make program for VS generators 72dd738 Tests: Fix MFC test heuristic for empty CMAKE_TEST_MAKEPROGRAM fd6076d Tests: Pass CMAKE_MAKE_PROGRAM instead of --build-makeprogram 68031ab Tests: Configure SubProject-Stage2 test more robustly 003d10c Tests: Simplify VSExcludeFromDefaultBuild configuration e47d934 Tests: Simplify VSProjectInSubdir configuration e965cb1 Tests: Simplify CTest.BuildCommand.ProjectInSubdir configuration 72bf255 Tests: Pass --build-options to every test 4d1d772 ctest: Teach --build-options to allow zero options 96966b5 ctest: Make the --build-makeprogram optional for --build-and-test 91a0211 Simplify some calls to cmGlobalGenerator::Build 123a060 Teach GenerateBuildCommand to find its own make program 5f5c92b VS: Add internal APIs to find MSBuild, devenv/VCExpress, and msdev 4ac75fd Prefer CMAKE_MAKE_PROGRAM over CMAKE_BUILD_TOOL (#14548) ...
| * | | | | Help: Document the CMAKE_MAKE_PROGRAM variable in more detailBrad King2013-11-181-6/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explain how it is set for each group of generators. Also explain the build-time selection behavior used by Visual Studio generators.
| * | | | | VS: Switch to internal CMAKE_MAKE_PROGRAM lookup by generatorsBrad King2013-11-1822-292/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop the "Modules/CMakeVS*FindMake.cmake" files. Override the cmGlobalGenerator::FindMakeProgram method for VS generators to use their internal APIs to locate the build tool. Set the CMAKE_MAKE_PROGRAM as a normal variable for use by project code, but do not cache it. This will allow CMake and CTest to select the proper tool at build time.
| * | | | | Tests: Do not use an explicit make program for VS generatorsBrad King2013-11-181-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not pass the CMAKE_MAKE_PROGRAM cache entry to tests when using the VS generators. Allow them to pick the correct build tool automatically.
| * | | | | Tests: Fix MFC test heuristic for empty CMAKE_TEST_MAKEPROGRAMBrad King2013-11-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Also disable the MFC test if CMAKE_MAKE_PROGRAM is vcexpress.
| * | | | | Tests: Pass CMAKE_MAKE_PROGRAM instead of --build-makeprogramBrad King2013-11-186-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pass the CMAKE_TEST_MAKEPROGRAM, if any, to each test at CMake time in the CMAKE_MAKE_PROGRAM cache entry. Pass the CMAKE_TEST_MAKEPROGRAM into the ExportImport, Fortran, and MacRuntimePath tests so that they may do the same for the nested project configurations. Now "ctest --build-and-test" can get the make program from the test build tree cache, so drop the explicit --build-makeprogram.
| * | | | | Tests: Configure SubProject-Stage2 test more robustlyBrad King2013-11-181-13/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the condition that adds the test to check CMAKE_TEST_GENERATOR rather than the tools used to build CMake. Drop the test on Ninja because the generator does not support subproject generation anyway. Stop using the general build_generator_args and pass the --build-generator options explicitly. Also pass --build-makeprogram explicitly when CMAKE_TEST_MAKEPROGRAM is available because there is no CMakeCache.txt in the test project subdirectory from which to pick up the make program.
| * | | | | Tests: Simplify VSExcludeFromDefaultBuild configurationBrad King2013-11-181-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a CTEST_TEST_DEVENV variable that is set to the CMAKE_MAKE_PROGRAM used for Visual Studio 7, 8, and 9. It will always be either "devenv" or "VCExpress", and not "MSBuild". Add the VSExcludeFromDefaultBuild test only when this variable is set, and use its value as the --build-makeprogram value. More work will be needed later to restore the test on VS 10 and above when devenv is available, but this is the simplest approach for now.
| * | | | | Tests: Simplify VSProjectInSubdir configurationBrad King2013-11-181-25/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test is only enabled on VS 10 and above, where the generators now select for "ctest --build-and-test" the MSBuild tool by default. Simplify the test configuration by dropping the --build-makeprogram option and all the logic needed to compute its value. The test will automatically use MSBuild.
| * | | | | Tests: Simplify CTest.BuildCommand.ProjectInSubdir configurationBrad King2013-11-182-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Collect all ctest_configure options in a list to configure it into the test script. Drop the unused -DCMAKE_MAKE_PROGRAM argument to ctest.
| * | | | | Tests: Pass --build-options to every testBrad King2013-11-181-27/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a "build_options" variable whose value is passed to every "ctest --build-and-test" call through the --build-options argument.
| * | | | | ctest: Teach --build-options to allow zero optionsBrad King2013-11-181-14/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The --build-options option consumes all following arguments until either --build-target or --test-command. Fix the logic to allow this to be zero options.
| * | | | | ctest: Make the --build-makeprogram optional for --build-and-testBrad King2013-11-182-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GenerateBuildCommand now knows how to lookup CMAKE_MAKE_PROGRAM or choose a generator-provided default build tool. Therefore the --build-makeprogram can now be optional and simply override the default selection when provided. Note that with --build-nocmake we now need to load the cache in order to make the CMAKE_MAKE_PROGRAM entry available to GenerateBuildCommand.
| * | | | | Simplify some calls to cmGlobalGenerator::BuildBrad King2013-11-182-18/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code paths that look up CMAKE_MAKE_PROGRAM from the cache only to pass it to Build, which only passes it to GenerateBuildCommand, no longer need to do so. GenerateBuildCommand now knows how to look up CMAKE_MAKE_PROGRAM in the cache when no explicit value is given, so simply pass 0 now.
| * | | | | Teach GenerateBuildCommand to find its own make programBrad King2013-11-188-59/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a cmGlobalGenerator::SelectMakeProgram method to select a caller-provided make program, the CMAKE_MAKE_PROGRAM cache entry, or a generator-provided default. Call it from all implementations of the GenerateBuildCommand method with the corresponding generator's default, if any.