summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Modules: Include builtin FindPackageHandleStandardArgs directlyBrad King2011-01-2088-88/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The FindPackageHandleStandardArgs module was originally created outside of CMake. It was added for CMake 2.6.0 by commit e118a627 (add a macro FIND_PACKAGE_HANDLE_STANDARD_ARGS..., 2007-07-18). However, it also proliferated into a number of other projects that at the time required only CMake 2.4 and thus could not depend on CMake to provide the module. CMake's own find modules started using the module in commit b5f656e0 (use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS in some of the FindXXX modules..., 2007-07-18). Then commit d358cf5c (add 2nd, more powerful mode to find_package_handle_standard_args, 2010-07-29) added a new feature to the interface of the module that was fully optional and backward compatible with all existing users of the module. Later commit 5f183caa (FindZLIB: use the FPHSA version mode, 2010-08-04) and others shortly thereafter started using the new interface in CMake's own find modules. This change was also backward compatible because it was only an implementation detail within each module. Unforutnately these changes introduced a problem for projects that still have an old copy of FindPackageHandleStandardArgs in CMAKE_MODULE_PATH. When any such project uses one of CMake's builtin find modules the line include(FindPackageHandleStandardArgs) loads the copy from the project which does not have the new interface! Then the including find module tries to use the new interface with the old module and fails. Whether this breakage can be considered a backward incompatible change in CMake is debatable. The situation is analagous to copying a standard library header from one version of a compiler into a project and then observing problems when the next version of the compiler reports errors in its other headers that depend on its new version of the original header. Nevertheless it is a change to CMake that causes problems for projects that worked with previous versions. This problem was discovered during the 2.8.3 release candidate cycle. It is an instance of a more general problem with projects that provide their own versions of CMake modules when other CMake modules depend on them. At the time we resolved this instance of the problem with commit b0118402 (Use absolute path to FindPackageHandleStandardArgs.cmake everywhere, 2010-09-28) for the 2.8.3 release. In order to address the more general problem we introduced policy CMP0017 in commit db44848f (Prefer files from CMAKE_ROOT when including from CMAKE_ROOT, 2010-11-17). That change was followed by commit ce28737c (Remove usage of CMAKE_CURRENT_LIST_DIR now that we have CMP0017, 2010-12-20) which reverted the original workaround in favor of using the policy. However, existing project releases do not set the policy behavior to NEW and therefore still exhibit the problem. We introduced in commit a364daf1 (Allow users to specify defaults for unset policies, 2011-01-03) an option for users to build existing projects by adding -DCMAKE_POLICY_DEFAULT_CMP0017=NEW to the command line. Unfortunately this solution still does not allow such projects to build out of the box, and there is no good way to suggest the use of the new option. The only remaining solution to keep existing projects that exhibit this problem building is to restore the change originally made in commit b0118402 (Use absolute path to FindPackageHandleStandardArgs.cmake everywhere, 2010-09-28). This also avoids policy CMP0017 warnings for this particular instance of the problem the policy addresses.
* KWSys Nightly Date StampKWSys Robot2011-01-201-1/+1
|
* Merge topic 'depend-scan-backslash-issue-10281'Brad King2011-01-191-0/+1
|\ | | | | | | | | 8dc7501 Normalize slashes in scanned #include lines (#10281)
| * Normalize slashes in scanned #include lines (#10281)Brad King2011-01-171-0/+1
| | | | | | | | | | | | | | | | | | | | On Windows platforms source files may contain '\' in include directives: #include "a\b.h" Normalize these while scanning to use forward slashes. CMake will convert from forward slashes to the direction preferred by the native build tools when writing the path to 'depend.make' files.
* | Merge topic 'vs-Fortran-SCC-issue-10237'Brad King2011-01-192-11/+19
|\ \ | | | | | | | | | | | | 9859c64 Honor VS_SCC_* properties in Fortran targets (#10237)
| * | Honor VS_SCC_* properties in Fortran targets (#10237)Brad King2011-01-172-11/+19
| |/ | | | | | | | | | | Factor out generation of SccProjectName, SccLocalPath, and SccProvider from cmLocalVisualStudio7Generator::WriteProjectStart and call it from cmLocalVisualStudio7Generator::WriteProjectStartFortran too.
* | Merge topic 'try_compile-Makefile-config'Brad King2011-01-194-2/+27
|\ \ | | | | | | | | | | | | | | | 052c2ae Document CMAKE_TRY_COMPILE_CONFIGURATION variable 56efc60 Honor CMAKE_TRY_COMPILE_CONFIGURATION in Makefile generators (#10809)
| * | Document CMAKE_TRY_COMPILE_CONFIGURATION variableBrad King2011-01-173-2/+15
| | | | | | | | | | | | | | | Also reference it from try_compile and try_run since it affects those commands.
| * | Honor CMAKE_TRY_COMPILE_CONFIGURATION in Makefile generators (#10809)Brad King2011-01-171-0/+12
| |/ | | | | | | | | | | | | Previously this was used only in multi-configuration generators to choose the configuration of try_compile and try_run at their build time. Teach CMake to honor the variable in single-configuration generators as the CMAKE_BUILD_TYPE.
* | Merge topic 'fix-find-png-zlib'Brad King2011-01-192-2/+2
|\ \ | | | | | | | | | | | | 30e19b7 Add new names for PNG and ZLIB libraries
| * | Add new names for PNG and ZLIB librariesDavid Cole2011-01-142-2/+2
| | | | | | | | | | | | | | | Thanks to Pau Garcia i Quiles for the patch on the CMake mailing list.
* | | Merge topic 'fix-10031-add-freeglut'Brad King2011-01-191-1/+1
|\ \ \ | | | | | | | | | | | | | | | | efd1d9c Add freeglut as library name (#10031)
| * | | Add freeglut as library name (#10031)David Cole2011-01-171-1/+1
| | | | | | | | | | | | | | | | Thanks to Thomas Sondergaard for the patch in the bug report.
* | | | Merge topic 'qt4-query-exec-process'Brad King2011-01-191-1/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 858fe0e Replace exec_program with execute_process for qmake queries.
| * | | | Replace exec_program with execute_process for qmake queries.Clinton Stimpson2011-01-181-1/+4
| | |/ / | |/| |
* | | | Merge topic 'sco-compiler'Brad King2011-01-196-3/+35
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | e60c8ec Factor SCO compiler info out of platform file (#11700) db05da3 Recognize SCO UnixWare C/C++ compilers (#11700)
| * | | | Factor SCO compiler info out of platform file (#11700)Brad King2011-01-174-3/+29
| | | | | | | | | | | | | | | | | | | | | | | | | Move these flags out of the SCO_SV platform file so that other compilers may be used on that platform without interference.
| * | | | Recognize SCO UnixWare C/C++ compilers (#11700)Brad King2011-01-172-0/+6
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These compilers define __SCO_VERSION__ as VvvYYYYMML: V = major version vv = minor version YYYY = release year MM = release month http://osr600doc.sco.com/en/manCP/cc.CP.html http://osr600doc.sco.com/en/manCP/CC.CP.html
* | | | Merge topic 'xcode-subdir-regen-dependencies'Brad King2011-01-192-4/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 809ef30 Xcode: Make generation depend on all input directories
| * | | | Xcode: Make generation depend on all input directoriesBrad King2011-01-132-4/+13
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the Xcode generator would rerun CMake only if input file dependencies in the top-level directory changed. Teach it to depend on input files from all directories. Other generators already do this. Reported-by: Johan Björk <phb@spotify.com>
* | | | Merge topic 'linux-standard-base'Brad King2011-01-191-2/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | cf5ad18 libarchive: Fix major() check for LSB 4.0 (#11648)
| * | | | libarchive: Fix major() check for LSB 4.0 (#11648)Brad King2011-01-121-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The LSB header files define major() as a macro but if it is ever called the macro references symbols not available at link time. Improve the test for major() to actually call the macro and try to link. This approach is based on upstream libarchive SVN commit 2866 which fixed libarchive issue 125, submitted in response to CMake issue #11648. Inspired-by: Tim Kientzle <kientzle@freebsd.org>
* | | | | Merge topic 'fix-xcode-custom-rules-makefile'Brad King2011-01-191-0/+3
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 66d9cd8 Xcode: Disable implicit make rules in custom rules makefiles.
| * | | | | Xcode: Disable implicit make rules in custom rules makefiles.David Cole2011-01-111-0/+3
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | With apologies to the suggester for not accenting the surname vowel properly. Suggested-By: Johan Bjork
* | | | | Merge topic 'test-SubDirSpaces-workaround-gnu-make-3.82'Brad King2011-01-191-1/+9
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 19cb2ca Disable SubDirSpaces parens with GNU Make 3.82 (#11654)
| * | | | | Disable SubDirSpaces parens with GNU Make 3.82 (#11654)Brad King2011-01-111-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GNU Make 3.82 incorrectly parses make dependencies involving parentheses in path names. See related upstream issue: http://savannah.gnu.org/bugs/?30612 Skip testing the ()-named subdirectory.
* | | | | | Merge topic 'resolve/mingw-cross-compile-resources/honor-explicit-zero-timeout'Brad King2011-01-191-7/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | aeb6cd8 Merge branch 'honor-explicit-zero-timeout' into resolve/mingw-cross-compile-resources/honor-explicit-zero-timeout 20d87c8 Teach Simple_Mingw_Linux2Win test to use windres
| * \ \ \ \ \ Merge branch 'honor-explicit-zero-timeout' into ↵Brad King2011-01-14101-665/+1409
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | resolve/mingw-cross-compile-resources/honor-explicit-zero-timeout Conflicts: Tests/CMakeLists.txt
| * | | | | | | Teach Simple_Mingw_Linux2Win test to use windresBrad King2011-01-141-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test was broken by commit b2f308c8 (Add support for windows resources with mingw/msys, 2010-12-22) because the test does not set a resource compiler which is now required on MinGW for the 'RC' language. Use windres as the resource compiler for the test.
* | | | | | | | Merge topic 'fix-install-req-sys-libs'Brad King2011-01-193-37/+82
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 96cd163 Add CPACK_NSIS_INSTALL_ROOT for CMake's own installer (#9148) fa4a3b0 Add CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS variable fc14492 VS10: Fix problems with InstallRequiredSystemLibraries.
| * | | | | | | | Add CPACK_NSIS_INSTALL_ROOT for CMake's own installer (#9148)David Cole2011-01-132-13/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem with CMake 2.8.4-rc1: when you launch the NSIS exe installer on Windows, the default install path shown to the end user is, at first, "\CMake 2.8". This problem started occurring when configuring CMake itself with an older CMake, after adding CPACK_NSIS_INSTALL_ROOT to fix issue 9148. So... it's a regression from 2.8.3. I forgot (again) that when you add a new CPack variable, you must add it to CMake's CMakeCPack.cmake file or else it is empty when configured with an older CMake. And on Windows, without a bootstrap build available, the releases are always configured with an older version of CMake. This may be the last time this has bitten me, though, because it is now burned into my brain that problems with CMake's installer itself are inevitably associated with adding new CPack variables. In addition to adding a definition for CPACK_NSIS_INSTALL_ROOT, I've gone ahead and made it differ for the 32- and 64-bit builds of CMake to give the end user the expected default value for the Program Files folder for each one. And, since I was adding a new 32/64 differentiator anyhow, I made the "NSIS package name" and "installer registry key base" different for 64-bit builds, too, by appending " (Win64)" to each one. These address the concerns mentioned in 9148's related issue: http://public.kitware.com/Bug/view.php?id=9094 (at least as far as CMake's installer is concerned). 9094 could still use a good general fix for all projects, though, and remains open for now.
| * | | | | | | | Add CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS variableDavid Cole2011-01-132-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parent commit added a warning message whenever a required file does not exist. As it turns out, the "required" files never exist when built with Visual Studio Express editions. Add a variable to suppress these warning messages because only packagers or naive includers of this file will care to see such warning messages. We want to warn about this condition by default so that people who are using InstallRequiredSystemLibraries without understanding it fully will have a chance of understanding why it's not working in the event of missing required files. But we also want to give projects the ability to suppress this warning (by "project's choice default") so that they can encourage users who are restricted to using an Express edition to build their project. Packagers should explicitly use... -DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS=OFF ...when building releases. That way, their release build process will warn them about any missing files, but only if their project CMakeLists files use a construct similar to CMake's: IF(NOT DEFINED CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS) SET(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON) ENDIF()
| * | | | | | | | VS10: Fix problems with InstallRequiredSystemLibraries.David Cole2011-01-131-23/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thanks to "J Decker" on the CMake mailing list for pointing out that one of the MSVC10_CRT_DIR settings was using "VC90" instead of "VC100". After fixing that, I added the code to generate a CMake warning if one of the files we think is "required" does not exist. Then, with VS10, there were several other problems that the warning revealed: - MSVC10_REDIST_DIR needed more PATHS to be found correctly - the 64-bit directory is named "x64" now, not "amd64" as in previous VS versions - manifest files no longer exist as separate files in the redist subdirectories (they must be built-in as resources to the dlls...?)
* | | | | | | | | Merge topic 'python-modules-header'Brad King2011-01-191-0/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 23635ff Bug #11715 - generate header in the build tree.
| * | | | | | | | | Bug #11715 - generate header in the build tree.Marcus D. Hanwell2011-01-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The module header was being placed in the source tree before. Thanks to Marcel Loose for the patch, this ensures the file is written to the build tree.
* | | | | | | | | | Merge topic 'missing-file-dir-issue-11677'Brad King2011-01-193-4/+9
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7af41c3 Test that missing source mentions directory (#11677) 9cefce0 Report directory with missing source file (#11677)
| * | | | | | | | | | Test that missing source mentions directory (#11677)Brad King2011-01-152-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach the MissingSourceFile test to verify that the directory portion of a missing source file is mentioned in the error message.
| * | | | | | | | | | Report directory with missing source file (#11677)Brad King2011-01-151-2/+7
| | |_|_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the error message for code like add_executable(myexe does_not_exist/mysrc.c) mentioned only that "mysrc.c" is not found. Report the directory too.
* | | | | | | | | | Merge topic 'doc-CheckSymbolExists-enum'Brad King2011-01-191-6/+13
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4995b26 Update CheckSymbolExists copyright year 840f9c0 Document CheckSymbolExists more clearly (#11685)
| * | | | | | | | | | Update CheckSymbolExists copyright yearBrad King2011-01-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reflect that commit 840f9c05 (Document CheckSymbolExists more clearly, 2011-01-12) changed the file in 2011.
| * | | | | | | | | | Document CheckSymbolExists more clearly (#11685)Brad King2011-01-121-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The check works for macros, functions, and variables, but not for types or enumeration values. Clearly describe the behavior of the check with respect to each symbol type.
* | | | | | | | | | | Merge topic 'doc-CheckFunctionExists-clarify-issue-10044'Brad King2011-01-191-6/+8
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 114c322 Document CheckFunctionExists more clearly (#10044)
| * | | | | | | | | | | Document CheckFunctionExists more clearly (#10044)Brad King2011-01-171-6/+8
| | |/ / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | State that the function need only be available at link time. Refer to CheckSymbolExists for verifying that a declaration exists.
* | | | | | | | | | | Merge topic 'doc-if-dereferencing-issue-10773'Brad King2011-01-191-52/+37
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7d9b903 Clarify auto-dereference cases in if() command (#11701) e4e14e8 Replace misleading example in the if() documentation (#10773)
| * | | | | | | | | | | Clarify auto-dereference cases in if() command (#11701)Brad King2011-01-171-20/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Show "<variable|string>" explicitly in if() case documentation whenever auto-dereferencing occurs. Reference its presence from the explanation at the bottom.
| * | | | | | | | | | | Replace misleading example in the if() documentation (#10773)Brad King2011-01-141-34/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the example explained by the misleading phrase "CMake will treat it as if you wrote". This was originally added by commit a73071ca (modified the if command to address bug 9123 some, 2009-06-12). Later related information elsewhere in the documentation was corrected and made precise by commit cb185d93 (Fix if() command and CMP0012 OLD/NEW behavior, 2009-10-27) but the misleading example was not corrected. Replace the example with a correct one that more directly covers the case that typically surprises newcomers. Avoid recommending a "correct" way to write code because this behavior is always specific to each case. Also update the main documentation of the behavior to be more explicit.
* | | | | | | | | | | | Merge topic 'doc-old-get_X_property-commands'Brad King2011-01-195-12/+22
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4c980e3 Reference get_property() from old get_*_property() commands 0d7cf49 Fix get_(cmake|test)_property documentation (#11703)
| * | | | | | | | | | | | Reference get_property() from old get_*_property() commandsBrad King2011-01-175-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The former is a much more general and modern command. Refer authors to it from documentation of its predecessors.
| * | | | | | | | | | | | Fix get_(cmake|test)_property documentation (#11703)Brad King2011-01-172-7/+8
| | |_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The signature of get_test_property uses argument order test property VAR not test VAR property Also document the actual behavior when the property is not found.
* | | | | | | | | | | | Merge topic 'doc-try_compile-clarification'Brad King2011-01-193-22/+27
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cabb6cd Document Check(C|CXX)SourceCompiles behavior more clearly (#11688) 4da2a56 Document try_compile behavior more clearly (#11688)