Commit Graph

3628 Commits

Author SHA1 Message Date
Mike McQuaid cf4b52980d Add QT_LIBRARIES_PLUGINS variable to UseQt4. 2011-10-03 11:01:39 -06:00
Alex Neundorf 3df49dc7b1 fix #12392: handle CMAKE_CXX_COMPILER_ARG1 for Eclipse projects
CMAKE_CXX/C_COMPILER_ARG1 have to be used for finding the include
dirs and builtin macros, so Eclipse can do code completion

Alex
2011-10-01 19:09:24 +02:00
David Cole c4ef30e3dd Merge topic 'PkgConfigTypoFix'
9cbbea3 Fix typo in UsePkgConfig.cmake
2011-09-30 15:57:24 -04:00
David Cole 449aef3efb Merge topic 'vs11-generator'
3b5256e Teach our tests about special cases for VS 11
3d5632e Add Visual Studio 11 generator for x86 and x64 tools
2011-09-30 15:57:17 -04:00
Rolf Eike Beer 9cbbea31d3 Fix typo in UsePkgConfig.cmake 2011-09-29 19:43:44 +02:00
Brad King 89bdc3e213 Merge topic 'FindBulletLibRenames'
6f935d7 FindBullet: Also search for _Debug postfixed library names
2011-09-26 11:24:46 -04:00
Brad King 3d5632ed59 Add Visual Studio 11 generator for x86 and x64 tools 2011-09-23 10:10:01 -04:00
Philip Lowman 6f935d7f55 FindBullet: Also search for _Debug postfixed library names 2011-09-22 23:31:37 -04:00
Alex Neundorf 59ccf38554 Minor improvements to the UsePkgConfig.cmake docs
Alex
2011-09-22 14:47:18 +02:00
Alex Neundorf ad11118ebf Remove trailing whitespace
Alex
2011-09-22 14:39:19 +02:00
David Cole 26e5b0ea82 Merge topic 'revert-fix-for-11333'
98c49a4 Revert "FindThreads: Try pthreads with no special option first (#11333)"
2011-09-21 17:29:39 -04:00
David Cole ac623ce2fe Merge topic 'CPackRPM-per-component-script'
cc26a06 CPackRPM authorize per-component pre/post-[un]install scripts (#0012063)
2011-09-21 17:29:30 -04:00
David Cole 253e370c9e Merge topic 'generate-export-header'
41e2b1d Make add_compiler_export_flags a function again.
6a10deb Made ADD_COMPILER_EXPORT_FLAGS into a macro.
2d1acfe Don't warn when nothing to do in visibility function.
d679568 Just code style changes.
2011-09-21 17:29:23 -04:00
David Cole 682a989fdb Merge topic 'CPackDeb-fakeroot'
49da3bd CPackDeb fix #10325 automagically use fakeroot for DEB if fakeroot is found
2011-09-21 17:29:16 -04:00
David Cole 98c49a4a25 Revert "FindThreads: Try pthreads with no special option first (#11333)"
This reverts commit fd61be7140.
2011-09-20 18:40:22 -04:00
David Cole d622088b2b Merge topic 'MinorFeatureSummaryFixes'
0ba9853 Don't warn when setting a property multiple times to the same value #12464
b7ac63e Fix typos in FeatureSummary.cmake (#12462)
2011-09-20 14:42:21 -04:00
David Cole f628f12799 Merge topic 'CheckForFlexHeader'
ae331e1 FindFLEX.cmake: also search the include dir
2011-09-20 14:42:16 -04:00
David Cole bef996852e Merge topic 'FortranCInterface-VS'
67fcc83 Simplify IntelVSImplicitPath detection project
a7ce26d Move IntelVSImplicitPath project to better location
539a822 Enable Fortran tests for IDE builds.
555f589 For VS Intel Fortran IDE builds, add a check to find the Fortran library PATH.
71402eb FortranCInterface: Compile separate Fortran lib in VerifyC[XX]
2011-09-20 14:41:56 -04:00
Eric NOULARD cc26a0614a CPackRPM authorize per-component pre/post-[un]install scripts (#0012063)
Merged patch from Chip Christian previously based on the one from winfriedd
with some small pruning editing by commiter
2011-09-20 20:21:01 +02:00
Marcus D. Hanwell 41e2b1d824 Make add_compiler_export_flags a function again.
Making this a macro had unintended issues on (among others) Windows
compilers. Moving it back to being a function using PARENT_SCOPE still
satisfies the use case where we simply want to obtain the extra flags.
2011-09-20 00:16:16 -04:00
Marcus D. Hanwell 6a10deb670 Made ADD_COMPILER_EXPORT_FLAGS into a macro.
It adds to the CMAKE_CXX_FLAGS (as before), or populates the supplied
optional argument with the CXX_FLAGS for symbol import/export.
2011-09-19 16:42:42 -04:00
Marcus D. Hanwell 2d1acfe359 Don't warn when nothing to do in visibility function. 2011-09-19 14:55:19 -04:00
Marcus D. Hanwell d6795685ae Just code style changes. 2011-09-19 14:04:42 -04:00
Alex Neundorf 0ba98533d0 Don't warn when setting a property multiple times to the same value #12464
Patch by Yury Kudryashov

Alex
2011-09-18 12:51:05 +02:00
Alex Neundorf b7ac63e1c1 Fix typos in FeatureSummary.cmake (#12462)
Patch by Yury Kudrashov

Alex
2011-09-18 12:46:29 +02:00
Alex Neundorf ae331e1864 FindFLEX.cmake: also search the include dir
FindFLEX.cmake already searched for the library, but
not for the include dir. Do that too.

Alex
2011-09-17 14:27:24 +02:00
Brad King 67fcc838d9 Simplify IntelVSImplicitPath detection project
Use the ENV{LIB} variable directly instead of parsing the output of the
whole environment from "set".  Store the output in a .cmake script and
include it from CMakeDetermineCompilerABI instead of using file(READ).
2011-09-14 14:06:02 -04:00
Brad King a7ce26d837 Move IntelVSImplicitPath project to better location
This project is not part of the FortranCInterface module.  Make it a
sibling instead of a child directory.
2011-09-14 13:49:40 -04:00
David Cole 21e03c4c44 Merge topic 'CPackDeb-remove-stray-paren'
85fd794 remove stray brace in CPackDeb documentation
2011-09-13 14:33:12 -04:00
Rolf Eike Beer 85fd794a19 remove stray brace in CPackDeb documentation 2011-09-12 11:47:31 -04:00
Bill Hoffman 555f589a5a For VS Intel Fortran IDE builds, add a check to find the Fortran library PATH.
To use VS C and Fotran in the same solution, it is required that VS be
able to find the Fortran run time libraries as they will be implicitly
linked by any Fortran library used by VS C programs.  This adds a check
into CMakeDetermineCompilerABI using a try-compile to find the correct
PATH.
2011-09-08 17:42:49 -04:00
Eric NOULARD 59204e1126 CPack fix #12449 doc mispelled
CPACK_INSTALL_DIRECTORIES-->CPACK_INSTALLED_DIRECTORIESœ
2011-09-08 22:00:34 +02:00
Brad King 71402eb252 FortranCInterface: Compile separate Fortran lib in VerifyC[XX]
The Intel Fortran plugin for Visual Studio requires Fortran source files
to be compiled in a separate target from C and C++ code.  Compile the
VerifyFortran.f source file in a separate library and link the main
VerifyFortanC executable to it.
2011-09-08 14:56:48 -04:00
David Cole c80cbad152 Merge topic 'CPackRPM-includeDir'
f9e5277 CPackRPM fix #12305, include directories in RPM package
2011-09-07 15:38:50 -04:00
David Cole de62fd1b6d Merge topic 'CPackRPM-fix12366'
b0f6a97 CPack  fix #12366 components RPM packages have the same package name
2011-09-07 15:38:27 -04:00
David Cole 54730d7604 Merge topic 'generate_export_header'
dbd776d Don't put what some compilers consider junk at the end of the line.
93d8d19 Add some more unit tests.
2011-09-07 15:38:00 -04:00
David Cole 4558e6eeee Merge topic 'vs-compiler-id'
38aab37 Set CMAKE_<lang>_COMPILER_ID for VS generators
2011-09-07 15:37:37 -04:00
David Cole d9ad72542a Merge topic 'fortran-format'
90efed6 Xcode: Honor Fortran_FORMAT target and source file property
5c0c635 Fortran: Add support for free- and fixed-form flags
47a0c75 VS: Map Fortran free- and fixed-format flags to IDE options
d6e2a06 VS: Map per-source Fortran flags to IDE options
2011-09-07 15:37:27 -04:00
David Cole a239fb6c16 Merge topic 'FindLAPACK_FindBLAS'
0cc8f05 FindBLAS/LAPACK fixes
145de0a FindBLAS/LAPACK fixes
2011-09-07 15:36:52 -04:00
David Cole 56ce5dec8b Merge topic 'asn_java_add_more_java_archives'
e01b98e Modules: Add support for more java archives in add_jar().
2011-09-07 15:36:41 -04:00
David Cole 5686515b6f Merge topic 'FindPythonInterp-Refactoring'
1c2508a Use FIND_PACKAGE_HANDLE_STANDARD_ARGS second mode
d179500 Update documentation of FindPythonInterp.cmake
4fd1e28 Determine python version
20980ef Search for the installed python interpreter first
2011-09-07 15:36:18 -04:00
David Cole accdb855c2 Merge topic 'fix-message-details'
cd81da3 FindPackageMessage: Eliminate new lines using REGEX REPLACE
0ae78b7 FindPackageMessage: Eliminate new lines in cache entries
2011-09-07 15:35:54 -04:00
Eric NOULARD 49da3bdb2d CPackDeb fix #10325 automagically use fakeroot for DEB if fakeroot is found 2011-09-05 22:43:45 +02:00
Eric NOULARD f9e5277941 CPackRPM fix #12305, include directories in RPM package 2011-09-05 22:15:31 +02:00
Stephen Kelly 648c454454 Add features from KDE for arguments to qdbusxml2cpp. 2011-09-05 21:59:13 +02:00
Eric NOULARD b0f6a97587 CPack fix #12366 components RPM packages have the same package name
fix based on the patch provided by winfriedd
2011-09-05 20:22:00 +02:00
Stephen Kelly dbd776dde7 Don't put what some compilers consider junk at the end of the line. 2011-09-04 22:06:02 +02:00
David Cole cd81da30f7 FindPackageMessage: Eliminate new lines using REGEX REPLACE
Re-fix problem exposed by recent commit to FindPythonInterp.
If the find "details" has new lines in it, then replace them
with the empty string so that the string may be saved as a
cache entry that can be re-read next time CMake runs.

Use REGEX REPLACE, and replace with an empty string, eliminating
the problem characters, so that we may easily extend this to
include additional problem characters in the future if necessary.
2011-09-02 14:37:49 -04:00
Brad King 38aab37962 Set CMAKE_<lang>_COMPILER_ID for VS generators
Currently the VS generators do not support Intel C/C++ .icproj files and
the MS tools do not include a Fortran compiler.  Therefore we can always
set the C and CXX compiler IDs to "MSVC" and the Fortran ID to "Intel".

This fixes a regression in support for the Intel Fortran compiler under
the VS plugin introduced by commit cd43636c (Modernize Intel compiler
info on Windows, 2010-12-16).  The commit moved the compiler information
into platform files that only load when the proper compiler id is set.
It worked for the NMake Makefiles generator but not for the VS IDE
generator because it did not set the compiler id.
2011-09-02 08:56:01 -04:00
David Cole f6dce05bef Merge topic 'qt4-find-uitools-mingw-cross'
a67be31 qt4: also find QtUiTools when cross compiling with mingw.
2011-09-01 15:14:30 -04:00
David Cole 1aa42978a5 Merge topic 'bg-link-fixes'
5993891 Fixed link bugs in BlueGeneP build.
2011-09-01 15:14:26 -04:00
David Cole a9c96a725e Merge topic 'xl-CreateExportList-fix'
d169762 Fix XL compilers on non-AIX machines.
2011-09-01 15:14:22 -04:00
David Cole 5c51a7bdf3 Merge topic 'boost-cmake-path-suffixes'
7da796d FindBoost: Call find_package with NO_MODULE first
2011-09-01 15:14:15 -04:00
David Cole 482a235bff Merge topic 'generate_export_header'
6a6393c Don't use a variable name that might be used in other files.
5ca8c56 Fix up verbatim code sections of the dox.
75596e6 Don't start a line with a dash(-)
826374a Remove blank line at the start of the file.
8b9b8e1 Add documentation about the prefix and no_deprecated options.
51bc63a Fix the feature of using a specific prefix for macros.
3449f6b Add quotes in case cmake is installed in a prefix with a space.
36d28f2 Fix Compiler id variable name.
99b2aab Disable the tests for Watcom.
7ac0ab1 Quote paths in case there is a space in one of them.
89108b9 Look for errors reported by PGI too.
e0cc024 Add missing NO_EXPORT macro variant.
1b031d1 More consistency in the macro options.
03d60c7 Try to make the macros do almost nothing for Watcom.
6adeda9 Possibly fix configuration test on AIX.
e253348 Possibly fix test on HPUX.
32eff0c Test for too-old-intel compilers.
42154ec Fix up the regex command for Intel.
a147a06 Add some settings for non-truncation of test output.
bf73e75 Hopefully add version extraction for Intel.
aa4f0b6 Fix the version extraction regex for clang.
a493d1a Test the correct cxx variable.
b6ee2ee Comment the test assertion for now
a9a8b9e Exclude win32 from hidden visibility checks.
afae7a9 Start testing expected values for compiler flags.
1ae3365 Exclude PGI from exports and deprecated.
f426496 Exclude cygwin from the hidden visibility feature.
f84c7db Don't enable deprecated on old GCC
9672b33 Don't enable deprecated on HP.
10d8c44 Disable testing of deprecated macros.
97392a7d Fixup forgotten part of aed84517c9
2aeab4f Borland can't do deprecated.
c41c68b Try to error on deprecated on Intel and SunCC.
aed8451 Test for deprecated attribute before declspec.
c448b09 Perform the -Werror test only once.
fb88c6e Add some messaging output to make remaining issues findable.
01e9e98 Test -Werror instead of enabling it per compiler.
9aab2aa Expect the tests to pass if hidden visibilty is not enabled.
856bdb3 Don't change the expected build result based on the platform.
df4615e Add the COMPILER_HAS_DEPRECATED only if it has a declspec variant
78a6e1c Exclude the XL compiler from the hidden-visibility test.
e1f7ee3 Test for compiler features, instead of for specific platforms.
9554e10 Split the deprecated available check from setting macro values.
1590d5f Don't export methods on already exported classes.
750b67c Don't use hidden visibility on non-mingw windows either.
1f3be45 Make sure the hidden visibility variables never get set on MINGW.
399f415 Only set the deprecated attribute if hidden visibilty is enabled.
1c6b41b Remember to surround the other deprecated test in the Borland check.
3f7e036 Export deprecated free methods too.
7fa5592 Add some debug output to narrow down deprecation test issues
7924c1d Another attempt at fixing Borland.
50460ea Fix off-by-not in test for Borland.
b443459 Use the correct project name compiletest not compilefail
fc3772e Another attempt to fix the tests on Borland.
bab4a22 Disable all export macros on Borland.
cff9493 Only set the COMPILER_HAS_HIDDEN_VISIBILITY if GCC >= 4.2
af443b8 Set the CMAKE_RUNTIME_OUTPUT_DIRECTORY for windows builds.
61726f8 Only run the failure tests with gcc >= 4.2
002ddf2 Fix typo and tests failing as a result.
4443037 Fix tests with clang.
ffaa127 Test expected no-op instead of aborting the build.
6aca0e2 Short-circuit the tests on unsupported compilers.
d123bce Add some debug output.
3574b75 Simplify the compiler feature check
c7a937b Simplify. We already know we have hidden visibility at this point.
3b188c8 Test for features, not specific compilers.
4718233 Remove the fatal_warnings option which is no longer used.
b19911e Add missing licence header.
706ed2b Add a newline at the end of the file.
8963716 Add a newline at the end of the file.
def0a54 Handle the case where the user changes the DEFINE_SYMBOL property.
3088070 Add the GenerateExportMacro with unit tests.
2011-09-01 15:14:01 -04:00
Todd Gamblin 7da796d1fd FindBoost: Call find_package with NO_MODULE first
FindBoost now attempts to find Boost using find_package(Boost NO_MODULE)
before it does a module mode search.

User can now set any of these to Boost's install prefix to detect it in module
or config mode:

- Boost_DIR  for consistency with other CMake modules
- BOOST_ROOT or BOOSTROOT for adherence to boost convention
2011-09-01 15:00:21 -04:00
Alexey Ozeritsky 0cc8f05ce5 FindBLAS/LAPACK fixes
fixed: CMAKE_FIND_LIBRRAY_SUFFIXES misprint
 added: ATLAS vendor to FindLAPACK module
2011-09-01 10:54:48 +04:00
Alexey Ozeritsky 145de0a058 FindBLAS/LAPACK fixes
fixed: saving/changing/restoring CMAKE_FIND_LIBRARY_SUFFIXES variable.
fixed: BLA_VENDORs "Apple" (Accelerate Framework) and
      "NAS" (vecLib Framework) fail as 'cblas_dgemm_' doesn't exist.
fixed: improve "Generic" detection on Ubuntu (and I assume Debian)
      (work with libblas3gf and liblapack3gf packages).
2011-08-31 22:10:13 +04:00
Brad King 5c0c635a09 Fortran: Add support for free- and fixed-form flags
Define a "Fortran_FORMAT" target and source file property.  Initialize
the target property from a "CMAKE_Fortran_FORMAT" variable.  Interpret
values "FIXED" and "FREE" to indicate the source file format.  Append
corresponding flags to the compiler command line.
2011-08-31 10:24:43 -04:00
Clinton Stimpson a67be31784 qt4: also find QtUiTools when cross compiling with mingw. 2011-08-29 08:23:44 -06:00
Andreas Schneider e01b98ee4d Modules: Add support for more java archives in add_jar(). 2011-08-29 08:51:45 +02:00
Todd Gamblin 5993891e8d Fixed link bugs in BlueGeneP build.
- Build wasn't properly using -soname linker args, so installed libraries
  could depend on relative paths from the build directory.
- Consolidated GNU linker args to one place in the BlueGeneP-base platform
  file, since ld is used by both XL and GNU toolchains on BlueGene.
2011-08-28 22:08:11 -07:00
Todd Gamblin d1697625f8 Fix XL compilers on non-AIX machines.
Linking broken on non-AIX machines when using XL compilers due to those
machines not using the CreateExportList tool.  Made use of this tool
conditional on finding it.
2011-08-28 22:04:41 -07:00
David Faure 6a6393c905 Don't use a variable name that might be used in other files.
myDir is also used in the Grantlee config file, so if Grantlee
was found, this call failed.
2011-08-27 09:44:52 +02:00
Stephen Kelly 356cef2198 Make the formatting of feature_summary output a little better. 2011-08-27 09:26:26 +02:00
David Cole 28cba226b3 Merge topic 'UsingCMakeLikePkgConfig2'
59238dc Fix --find-package mode on Cygwin, where enable_language(RC) is called
98472e4 Require the current cmake version in --find-package mode
a6ccf3c Use $(CXXFLAGS) and $(LDFLAGS) in the --find-package test Makefile
4386918 Fix line length
7d69310 Only enable the test when using GNU make
3011149 Make the test harder by always having a space in the include dirs
ab57ff6 Make the --find-package test harder
626fc71 Much improved test, should now be executed on all UNIXes
ec6982d Disable any STATUS output in --find-package mode
e552ae7 Dont check for -isysroot and -mmacosx-version on OSX in --find-package mode
e589589 Rename helper macros print_compile_flags() to set_compile_flags_var()
aecfc1f Fix test on OpenBSD with BSD make
6bb4ca3 The makefile for the test was kindof wrong
fd15b5e Only run the test if we are using a makefile generator under UNIX
9fc87c6 Add a test for the new --find-package mode
d3ae0ff Improve documentation for --find-package mode
bf07375 Add a cmake.m4 for using cmake in autoconf projects instead of pkgconfig
b0e3578 Use the file-utility to test for 64bit if there is no /usr/lib64
53edfb2 Better support for lib64 and Debian multiarch
b8fdaa1 Fix copyright notice in new CMakeFindPackageMode.cmake
7690edf Replace cmake::GetScriptMode() with GetWorkingMode()
e4f603b Implement find-package mode of cmake
a91d662 Add find-package mode, which does nothing yet
b976e70 Make clLocalGenerator::GetTargetFlags() public
2011-08-25 15:40:49 -04:00
David Cole f5115f91d9 Merge topic 'fix-11333-use-correct-thread-flags'
6b3993b CheckSymbolExists: Use IMMEDIATE flag for configure_file (#11333)
fd61be7 FindThreads: Try pthreads with no special option first (#11333)
2011-08-25 15:40:40 -04:00
David Cole 39f0fa725e Merge topic 'AutomocForQt'
920a046 QtAutomoc: Eliminate compiler warning
b00463f QtAutomoc test: Pass QT_QMAKE_EXECUTABLE
e78ce44 Fix automoc with VS builds: apply patch from Bill
71165e9 Silence warning in automoc: use long instead of int
1879bcc Fix build: use std::ios::out|ios::trunc instead of std::ios_base::out
678e124 Only enable the automoc test after checking that Qt4 works
71c29d1 Fix bootstrap test with automoc
afb3edc Fix warnings
add30e9 Fix build: non-void function must return a value
7e6d845 Automoc.cmake is not needed anymore
2963d0b Fix logic which decides when to execute automoc test
77a5c6e Add documentation for AUTOMOC, add initialization via CMAKE_AUTOMOC
bf8ef77 Add a test for automoc
d045fd4 Nicer progress message for the automoc target
50cd6ce Move automoc processing from add_executable/library to cmGlobalGenerator
cbaac2a Remove trailing whitespace
c27607b Refactor SetupAutomocTarget() so it can be run after creating the target
24d9b7d Remove trailing whitespace
58b7fe6 Use cout instead of printf()
72caf4d Add the generated automoc.cpp file to the cleaned files
ddb517d Color output when running moc
9303295 Initialize verbose based onb the env.var.
ace1215 Move code for parsing a cpp-file from the big loop to separate function
735a5bb Fix line lengths
83b730c Add AUTOMOC to the add_library() command
126c6ea Add the cmake module required currently for automoc
de91feb Remove the need to check for .h/.cxx during buildtime
d65689a Add actual automoc code from automoc
d1c0a5f Start implementing skeleton for automoc in cmake
a65011b Start work on automoc: add empty cmQtAutomoc class
2011-08-25 15:40:29 -04:00
David Cole 2c4dbd12e3 Merge topic 'fix_vcexpress_2010'
3ca1df8 Use MSBuild when devenv is not around, since VCExpress seems broken.
2011-08-25 15:39:43 -04:00
David Cole c672c728f2 Merge topic 'FixOptionalEnableAsm'
cd70f00 Fix #12358: make optionally enabling ASM work again
2011-08-25 15:39:33 -04:00
David Cole d2b90e4c68 Merge topic 'FindLAPACK_FindBLAS'
cfad24a fixed: search of ATLAS library for C/C++-only projects
d5e6030 ACML-GPU supportede
af4c58b ACML-GPU supported
91b76e2 gotoblas supported
66a4bd0 fixed: search of acml libraries
2011-08-25 15:39:00 -04:00
Stephen Kelly 5ca8c565bc Fix up verbatim code sections of the dox. 2011-08-25 20:39:01 +02:00
Stephen Kelly 75596e62f9 Don't start a line with a dash(-)
That is a special character in cmake dox.
2011-08-25 20:39:00 +02:00
Stephen Kelly 826374a45a Remove blank line at the start of the file.
A blank line excludes the file from documentation processing.
2011-08-25 20:39:00 +02:00
Stephen Kelly 8b9b8e1676 Add documentation about the prefix and no_deprecated options. 2011-08-25 18:56:13 +02:00
Stephen Kelly 51bc63a7cb Fix the feature of using a specific prefix for macros. 2011-08-25 18:51:37 +02:00
Stephen Kelly 3449f6b88c Add quotes in case cmake is installed in a prefix with a space. 2011-08-25 18:30:26 +02:00
David Cole 0ae78b76d5 FindPackageMessage: Eliminate new lines in cache entries
Fix problem exposed by recent commit to FindPythonInterp.
If the find "details" has new lines in it, then replace them
with literal "\n" two character sequences so that the string
may be saved as a cache entry that can be re-read next time
CMake runs.
2011-08-24 14:06:51 -04:00
Stephen Kelly 89108b99ec Look for errors reported by PGI too. 2011-08-24 19:43:04 +02:00
Stephen Kelly e0cc024dc9 Add missing NO_EXPORT macro variant. 2011-08-23 23:26:43 +02:00
Stephen Kelly 1b031d1a3f More consistency in the macro options. 2011-08-23 23:21:29 +02:00
Stephen Kelly 03d60c7d81 Try to make the macros do almost nothing for Watcom. 2011-08-23 20:07:42 +02:00
Stephen Kelly 6adeda9f55 Possibly fix configuration test on AIX. 2011-08-23 19:58:42 +02:00
Stephen Kelly 32eff0caec Test for too-old-intel compilers. 2011-08-23 19:49:39 +02:00
Björn Ricks 1c2508a569 Use FIND_PACKAGE_HANDLE_STANDARD_ARGS second mode
Using the second mode of FIND_PACKAGE_HANDLE_STANDARD_ARGS allows for
checking the version number. Now a user can require a minimum version of
the python interpreter with find_package(PythonInterp VERSION)
2011-08-23 09:52:35 +02:00
Björn Ricks d179500295 Update documentation of FindPythonInterp.cmake
Document new variables and update also comments in cmake code to explain
the current behaviour of FindPythonInterp.cmake module
2011-08-23 09:52:28 +02:00
Björn Ricks 4fd1e28495 Determine python version
Use PYTHON_EXECUTABLE to determine PYTHON_VERSION_STRING,
PYTHON_VERSION_MINOR, PYTHON_VERSION_MAJOR and PYTHON_VERSION_PATCH
2011-08-23 09:52:02 +02:00
Björn Ricks 20980ef56a Search for the installed python interpreter first
The old approach to determine the python executeable chooses the newest
version from _Python_VERSIONS if no additonal versions are passed.
With python it is possible to install different versions side-by-side.
Therefore a user can install e.g. python 2.5 and 2.7. Python 2.7 maybe
only installed for testing new features and 2.5 for building and running
his software. Thus the default installation for the user would be python
2.5 and then returning PYTHON_EXECUTEABLE python2.7 would be wrong. The
new approuch searches first for the the default python executable e.g.
/usr/bin/python on unix and if it can't be found _Python_VERSIONS is
used.
2011-08-23 09:51:23 +02:00
Alex Neundorf 59238dc2de Fix --find-package mode on Cygwin, where enable_language(RC) is called
In --find-package mode we can't enable a language, since a lot of
stuff has not been set up, e.g. which make tool to use.
So disable enable_language() in this mode.

Alex
2011-08-22 21:53:22 +02:00
David Cole 6b3993b0bf CheckSymbolExists: Use IMMEDIATE flag for configure_file (#11333)
The test "complex" sets the variable CMAKE_BACKWARDS_COMPATIBILITY
to 1.4. When that variable is set, configure_file does not default
to IMMEDIATE mode processing. And so, the output file likely does
not exist yet by the time the next line in the CMakeLists.txt file
is processed. When that next line is "try_compile" on that file,
this is a problem.

Fix the problem by explicitly using IMMEDIATE in the configure_file
call.

This problem was quite mysterious, as it only showed up on the
"complex" test, when the previous commit introduced a CheckSymbolExists
call into the FindThreads module. Which is not even explicitly included
in the "complex" test... FindThreads gets included indirectly only
as a side effect of setting CMAKE_BACKWARDS_COMPATIBILITY to 1.4 and
even then it's included indirectly by auto-inclusion of
CMakeBackwardCompatibilityC.cmake...

Wow. Just wow.
2011-08-22 15:50:03 -04:00
Alex Neundorf 98472e45c8 Require the current cmake version in --find-package mode
This fixes the problem that otherwise Platforms/CYGWIN.cmake doesn't
know whether it should set WIN32 or not.
Now it uses always the current behaviour.

Alex
2011-08-22 21:23:55 +02:00
Rolf Eike Beer fd61be7140 FindThreads: Try pthreads with no special option first (#11333)
QNX has the phtread stuff in the standard library.  The best way would
IMHO be to check if a program that uses pthread_* can be successfully
linked without specifying any linker option before trying out the
different flags.
2011-08-20 14:36:34 -04:00
Bill Hoffman 3ca1df8e59 Use MSBuild when devenv is not around, since VCExpress seems broken.
To support Intel Fortran, CMake started using devenv and VCExpress
for build tools with VS2010.  However, VCExpress does not always work.
This change makes CMake use MSBuild when devenv is not found. This should
be OK, since Intel Fortran can not be used with VCExpress.
2011-08-18 12:18:30 -04:00
Alex Neundorf cd70f00ea4 Fix #12358: make optionally enabling ASM work again
Alex
2011-08-17 01:00:28 +02:00
Alex Neundorf 7e6d84568c Automoc.cmake is not needed anymore
(actually I thought I had already removed it again)

Alex
2011-08-17 00:04:47 +02:00
David Cole f0d46582c3 Merge topic 'FindGetTextImprovements'
bebb2bc Support REQUIRED in FindGettext.cmake (using FPHSA.cmake)
431c8eb Add macros GETTEXT_PROCESS_POT() and GETTEXT_PROCESS_PO_FILES()
2011-08-16 17:03:12 -04:00
David Cole 829ce746ca Merge topic 'fix-12323-more-paths-in-finddcmtk'
0167cea Add more find_path locations for DCMTK header files (#12323)
2011-08-16 17:03:09 -04:00
David Cole bdedae4b95 Merge topic 'fix-clang-flag-check-issue-12394'
ed6be50 Fix CHECK_(C|CXX)_COMPILER_FLAG for Clang (#12394)
2011-08-16 17:03:05 -04:00
David Cole 674be27a7f Merge topic 'WriteConfigVersionFile_2TemplateFiles'
c9761de Improve documentation for WriteBasicConfigVersionFile.cmake
208bb90 Set UNSUITABLE instead of not COMPATIBLE
bb03c2d Really fix copyright notice
d50a61a Fix copyright notice
4ba09bc Add some tests for write_basic_config_version_file()
02b1e4b Add example to documentation
d216a67 Provide macro write_basic_config_version_file()
2011-08-16 17:03:00 -04:00
David Cole b16de67e8f Merge topic 'FindX11ImprovementsFromKDE'
6899e58 Also search for libxkbfile, XSync and SM include dir
fe6bb7a Remove trailing whitespace
2011-08-16 17:02:30 -04:00
David Cole e9a943bab2 Merge topic 'fix-12054-eliminate-findjava-noise'
f462369 remove extra output message from FindJava.cmake
2011-08-16 17:02:11 -04:00
David Cole dfb307fef5 Merge topic 'fix-old-VisualAge-Fortran'
ad542d8 XL: Fix old VisualAge branding of Fortran compiler
2011-08-16 17:01:47 -04:00
David Cole 39743b9060 Merge topic 'hdf5-module-12316-fix'
ad218e4 Added HDF5 high level Fortran bindings to available components.
2011-08-16 17:01:39 -04:00
Stephen Kelly 1ae3365e9f Exclude PGI from exports and deprecated. 2011-08-16 01:21:59 +02:00
Stephen Kelly f426496055 Exclude cygwin from the hidden visibility feature. 2011-08-16 01:19:37 +02:00
Stephen Kelly f84c7db592 Don't enable deprecated on old GCC
Hopefully a fix for
http://www.cdash.org/CDash/testDetails.php?test=109688480&build=1432057
2011-08-16 01:17:26 +02:00
Stephen Kelly 9672b332b1 Don't enable deprecated on HP. 2011-08-16 01:13:10 +02:00
Alex Neundorf e552ae7cfd Dont check for -isysroot and -mmacosx-version on OSX in --find-package mode
Alex
2011-08-16 00:30:51 +02:00
Alex Neundorf e589589ab1 Rename helper macros print_compile_flags() to set_compile_flags_var()
The same for print_link_flags(), it is now set_link_flags_var().
Both macros don't print anything anymore, this was only in the
beginning.

Alex
2011-08-16 00:22:17 +02:00
Alexey Ozeritsky cfad24a36b fixed: search of ATLAS library for C/C++-only projects 2011-08-15 17:54:28 +04:00
Alex Neundorf 126c6ead77 Add the cmake module required currently for automoc
Alex
2011-08-14 15:58:00 +02:00
Stephen Kelly 97392a7dd3 Fixup forgotten part of aed84517c9 2011-08-14 15:37:24 +02:00
Stephen Kelly 2aeab4f973 Borland can't do deprecated. 2011-08-13 23:49:17 +02:00
Stephen Kelly aed84517c9 Test for deprecated attribute before declspec.
The attribute seems more common, and some compilers seem to silently
ignore the declspec.
2011-08-13 22:58:15 +02:00
Alexey Ozeritsky d5e603026b ACML-GPU supportede 2011-08-13 18:50:57 +04:00
Alexey Ozeritsky af4c58b3bd ACML-GPU supported 2011-08-13 17:03:58 +04:00
Stephen Kelly df4615e338 Add the COMPILER_HAS_DEPRECATED only if it has a declspec variant
_check_cxx_compiler_attribute does it in the alternative.
2011-08-12 00:23:00 +02:00
Stephen Kelly 78a6e1c122 Exclude the XL compiler from the hidden-visibility test. 2011-08-12 00:18:43 +02:00
Alex Neundorf d3ae0fff7d Improve documentation for --find-package mode
Alex
2011-08-11 22:43:45 +02:00
Alex Neundorf bf07375264 Add a cmake.m4 for using cmake in autoconf projects instead of pkgconfig
This file has been written today from scratch by Matthias Kretz
and it BSD-licensed.

Alex
2011-08-11 22:43:33 +02:00
Stephen Kelly e1f7ee3de7 Test for compiler features, instead of for specific platforms. 2011-08-11 19:06:23 +02:00
Stephen Kelly 9554e1013e Split the deprecated available check from setting macro values. 2011-08-11 18:17:12 +02:00
Stephen Kelly 750b67c5a1 Don't use hidden visibility on non-mingw windows either. 2011-08-11 10:53:58 +02:00
Stephen Kelly 1f3be45048 Make sure the hidden visibility variables never get set on MINGW. 2011-08-11 10:39:51 +02:00
Stephen Kelly 399f415b15 Only set the deprecated attribute if hidden visibilty is enabled.
This is what is tested in the unit test. If it makes sense, another
option can be added later.
2011-08-11 10:28:50 +02:00
Alexey Ozeritsky 91b76e2ab9 gotoblas supported 2011-08-11 12:23:49 +04:00
Alexey Ozeritsky 66a4bd0cfb fixed: search of acml libraries 2011-08-11 12:18:39 +04:00
Stephen Kelly 7fa559232e Add some debug output to narrow down deprecation test issues
Particularly Borland and VS7.0 seem to still be failing.
2011-08-10 23:57:04 +02:00
Stephen Kelly 7924c1d6a8 Another attempt at fixing Borland.
Apparently it still needs to be exported, but only declspec(deprecated)
does not work.
2011-08-10 22:19:39 +02:00
Stephen Kelly 50460ea9de Fix off-by-not in test for Borland. 2011-08-10 21:53:58 +02:00
Stephen Kelly fc3772edc9 Another attempt to fix the tests on Borland. 2011-08-10 21:43:16 +02:00
Stephen Kelly bab4a22036 Disable all export macros on Borland. 2011-08-10 21:28:42 +02:00
Stephen Kelly cff9493598 Only set the COMPILER_HAS_HIDDEN_VISIBILITY if GCC >= 4.2
Hearsay has it that before that version it didn't work properly.

Hopefully this will fix more dashboard builds.
2011-08-10 21:14:46 +02:00
Stephen Kelly d123bce1eb Add some debug output.
Hopefully this shows up in continuous test output.
2011-08-10 10:36:24 +02:00
Stephen Kelly 3574b75916 Simplify the compiler feature check 2011-08-10 10:36:23 +02:00
Stephen Kelly c7a937b712 Simplify. We already know we have hidden visibility at this point. 2011-08-10 10:28:15 +02:00
Stephen Kelly 3b188c833b Test for features, not specific compilers. 2011-08-10 10:26:16 +02:00
Stephen Kelly 4718233a37 Remove the fatal_warnings option which is no longer used. 2011-08-10 10:24:36 +02:00
Alex Neundorf bebb2bcd23 Support REQUIRED in FindGettext.cmake (using FPHSA.cmake)
Alex
2011-08-10 02:35:58 +02:00
Alex Neundorf 431c8eb44c Add macros GETTEXT_PROCESS_POT() and GETTEXT_PROCESS_PO_FILES()
These macros (functions actually) can be used to process pot and
po files. Patch prepared by Raphael Kubo da Costa.

Alex
2011-08-10 02:28:26 +02:00
David Cole 0167ceaf98 Add more find_path locations for DCMTK header files (#12323) 2011-08-09 15:15:53 -04:00
Stephen Kelly b19911ecab Add missing licence header. 2011-08-09 19:03:45 +02:00
Alex Neundorf b0e357824c Use the file-utility to test for 64bit if there is no /usr/lib64
Alex
2011-08-09 16:32:45 +02:00
Alex Neundorf 53edfb206b Better support for lib64 and Debian multiarch
If CMAKE_SIZEOF_VOID_P is not set from the outside, it checks for the
existance of /usr/lib64, and if it exists, SIZEOF_VOID_P is set to 8.

For multiarch, if this is debian and
CMAKE_${LANGUAGE}_LANGUAGE_ARCHITECTURE has not been set, it globs
for the files in /lib, and uses the first one which matches
CMAKE_LIBRARY_ARCHITECTURE_REGEX.

Alex
2011-08-09 16:32:45 +02:00
Alex Neundorf b8fdaa1d66 Fix copyright notice in new CMakeFindPackageMode.cmake
Alex
2011-08-09 16:32:45 +02:00
Brad King ed6be501de Fix CHECK_(C|CXX)_COMPILER_FLAG for Clang (#12394)
This compiler warns and returns 0 for unrecognized flags.  We fix the
compiler flag check macros by looking for a warning in the output.
2011-08-08 12:53:17 -04:00
Stephen Kelly def0a54e0a Handle the case where the user changes the DEFINE_SYMBOL property.
This eases porting of KDE code.
2011-08-08 02:08:10 +02:00
Stephen Kelly 30880707c0 Add the GenerateExportMacro with unit tests.
Reviewed-by: Marcus D. Hanwell <marcus.hanwell@kitware.com>
2011-08-07 18:33:47 +02:00
Alex Neundorf c9761de7ad Improve documentation for WriteBasicConfigVersionFile.cmake
Alex
2011-08-05 23:01:07 +02:00
Alex Neundorf 208bb9009b Set UNSUITABLE instead of not COMPATIBLE
Alex
2011-08-05 22:42:57 +02:00
Alex Neundorf 6899e58fa0 Also search for libxkbfile, XSync and SM include dir
Alex
2011-08-03 22:33:18 +02:00
Alex Neundorf fe6bb7af2a Remove trailing whitespace
Alex
2011-08-03 22:32:28 +02:00
Rolf Eike Beer f46236949e remove extra output message from FindJava.cmake
FPHSA already prints out the version number. And this line was printed on
every subsequent CMake run.
2011-08-03 09:40:10 -04:00
Brad King ad542d821d XL: Fix old VisualAge branding of Fortran compiler
Commit 6d434ee6 (Split XL compiler information files, 2009-09-30)
added Platform/AIX-(XL|VisualAge)-(C|CXX|Fortran).cmake modules
to support the old and new compiler branding for all languages.
Add the "AIX-VisualAge-Fortran" combination that was left out
accidentally.
2011-08-02 17:26:29 -04:00
David Cole 80ef23d83f Merge topic 'CodeBlocksIncludeDirsAndDefines'
e2e8c0a Also put builtin include dirs into CodeBlocks project file
92c0dc5 Remove useless line of code
a5683f8 Patch by Campbell Barton: puts definitions into C::B project file
2011-08-02 15:11:58 -04:00
David Cole 6a11727154 Merge topic 'FindGIFAndFreetypeCleanupAndEnhancements'
81a70c6 Add basic version check for giflib
2462f65 FindGif: add giflib4 as one more name for the library under Windows
f97620e FindGIF/FindFreetype.cmake: remove standard search paths from find-calls
7c38523 Strip trailing whitespace
2011-08-02 15:11:53 -04:00
David Cole 737be8f6f6 Merge topic 'FindPostgresqlImprovements'
825c457 FindPostgreSQL: fix PATH_SUFFIXES, better output for FPHSA
e159bb5 Mark the results from find() as advanced
da1bdaf Use FPHSA(), remove unnecessary stuff and don't recommend link_directories()
217d068 More PATH_SUFFIXES for finding Postgresql and also search catalog/pg_type.h
2011-08-02 15:11:45 -04:00
David Cole bd54141d5d Merge topic 'fix-11866-add-watcom-sys-libs'
ff59716 Watcom: Use correct args for execute_process call (#11866)
80769cd Add Watcom support to InstallRequiredSystemLibraries (#11866)
2011-08-02 15:11:35 -04:00
David Cole ab24bdeecc Merge topic 'cpack-nsis-multi-installs'
e6d2bcf CPack/NSIS: Fix reinstall and multiple install issues when using components.
2011-08-02 15:10:47 -04:00
David Cole b01167161c Merge topic 'fix-12245-add-wlib--c-flag'
a0974ae Watcom: Add -c flag to wlib calls (#12245)
2011-08-02 15:10:21 -04:00
David Cole 7ef2f53d02 Merge topic 'qt4-use-check-cxx-symbol'
de30173 Remove C compiler requirement from FindQt4.cmake
2011-08-02 15:10:05 -04:00
David Cole 996eb50364 Merge topic 'RemoveDebugOutput'
6b71bf8 Remove debug output from CheckSymbolExists
2011-08-02 15:10:01 -04:00
David Cole be3ac14ac7 Merge topic 'add-flag-detection-regex'
b7f3f7c Add fail regex to detect supported warning flags correctly.
2011-08-02 15:09:49 -04:00
David Cole 2c7b38afa6 Merge topic 'FeatureSummaryImprovements'
b62349c FeatureSummary.cmake: update documentation
f366cf8 FeatureSummary.cmake: cosmetics
f407bb5 FeatureSummary.cmake: only higher TYPEs can override previous TYPEs
02d47ab FeatureSummary.cmake: error out when a REQUIRED package is missing
91a1527 FeatureSummary.cmake: add INCLUDE_QUIET_PACKAGES keyword
0671a02 FeatureSummary.cmake: remove "comment" field
aae13f4 Extend FeatureSummary: add PURPOSE of package and TYPE
2011-08-02 15:09:41 -04:00
Will Dicharry ad218e435d Added HDF5 high level Fortran bindings to available components. 2011-08-02 10:48:14 -06:00
Alex Neundorf e2e8c0a412 Also put builtin include dirs into CodeBlocks project file
Refactor code from CMakeFindEclipseCDT4.cmake so it can be used
alkso for CodeBlocks, and move it into new file
CMakeExtraGeneratorDetermineCompilerMacrosAndIncludeDirs.cmake.

Alex
2011-08-02 01:46:39 +02:00
Alex Neundorf 81a70c6ad2 Add basic version check for giflib
This is used e.g. in KDE, there on Solaris an old version of giflib
was found (version 3), which could be detected by checking for the
UserData member variable:
http://websvn.kde.org/?view=revision&revision=545738

Alex
2011-08-02 00:30:58 +02:00
Alex Neundorf bb03c2dd3a Really fix copyright notice
Alex
2011-08-01 23:57:32 +02:00
Alex Neundorf d50a61a1ae Fix copyright notice
Alex
2011-08-01 23:44:17 +02:00
Alex Neundorf 4ba09bc6a2 Add some tests for write_basic_config_version_file()
Alex
2011-08-01 23:29:27 +02:00
Alex Neundorf 02b1e4b96a Add example to documentation
Alex
2011-08-01 23:03:47 +02:00
Alex Neundorf d216a67e4a Provide macro write_basic_config_version_file()
This macro can be used to generate basic version files which can be
installed along a Config.cmake file to provide versioning support.

This (3rd try) is implemented using a macro, which maps
the COMPATIBILITY mode to a filename and configure_file()s the
resulting file.

Alex
2011-08-01 22:59:18 +02:00
Alex Neundorf 825c45739d FindPostgreSQL: fix PATH_SUFFIXES, better output for FPHSA
Alex
2011-08-01 22:32:21 +02:00
Alex Neundorf e159bb5bf8 Mark the results from find() as advanced
Alex
2011-08-01 22:32:18 +02:00
Alex Neundorf da1bdaf16a Use FPHSA(), remove unnecessary stuff and don't recommend link_directories()
-don't recommend using link_directories()
-don't do the extra if(EXISTS) checks, since the code is already inside a if(PostgreSQL_FOUND)

Alex
2011-08-01 22:30:47 +02:00
Alex Neundorf 217d068b6d More PATH_SUFFIXES for finding Postgresql and also search catalog/pg_type.h
Patch from Jaroslaw Staniek, reviewed by Andrew Maclean

Alex
2011-08-01 22:30:20 +02:00
David Cole ff59716351 Watcom: Use correct args for execute_process call (#11866)
I botched an exec_program to execute_process translation on Friday.
RESULT_VARIABLE is the correct argument to execute_process.
2011-08-01 15:29:13 -04:00
Alex Neundorf 6b71bf8876 Remove debug output from CheckSymbolExists
...which shouldn't have been committed.

Alex
2011-07-29 23:27:28 +02:00
Clinton Stimpson e6d2bcfde2 CPack/NSIS: Fix reinstall and multiple install issues when using components.
Fix NSIS template to more thoroughly use CPACK_PACKAGE_INSTALL_REGISTRY_KEY.
This allows different versions of software to have a separate sections in the
registry to keep track of things (installed components, and uninstall stuff).

Change default of CPACK_PACKAGE_INSTALL_REGISTRY_KEY to follow the value of
CPACK_PACKAGE_INSTALL_DIRECTORY so if an installation overwrites another installation,
the proper registry entries are more likely to be overwritten.

Fix CPack/NSIS generator to not insert code in the NSIS template to skip installation
of already installed components.  This enables a repair like behavior and also enables
installing patch releases on top of an older installation.
2011-07-29 12:23:22 -06:00
David Cole a0974ae2e6 Watcom: Add -c flag to wlib calls (#12245)
Allows wlib to generate proper exports if two routines have
the same spelling, but different case (like Scale and scale).

Thanks to J Decker for the patch.
2011-07-29 13:52:23 -04:00
David Cole 80769cdd1e Add Watcom support to InstallRequiredSystemLibraries (#11866)
Also adds code to determine the version of the Watcom compiler
in use.

Thanks to J Decker for the patch.
2011-07-29 13:28:54 -04:00
Clinton Stimpson de30173d5b Remove C compiler requirement from FindQt4.cmake
Use the new check_cxx_symbol_exists instead of check_symbol_exists.
Also remove a debug message from CheckSymbolExists.cmake.
2011-07-28 12:15:46 -06:00
David Cole b7f3f7cdb6 Add fail regex to detect supported warning flags correctly.
On Apple's gcc, the compiler emits a warning such as "warning: command
line option "-Wno-deprecated" is valid for C++/ObjC++ but not for C"
when it is passed that flag on its command line.

When testing for that flag with a plain C file, we should report that
the flag is unsupported for C files. The new FAIL_REGEX option added
here produces this behavior.
2011-07-27 15:01:50 -04:00
Alex Neundorf 2462f65085 FindGif: add giflib4 as one more name for the library under Windows
Alex
2011-07-27 20:40:39 +02:00
Alex Neundorf f97620e733 FindGIF/FindFreetype.cmake: remove standard search paths from find-calls
In both files find_path() and find_library() are called with multiple
additional search PATHS which are already anyway part of the default
search dirs, so it should be safe to remove them.

Alex
2011-07-27 20:34:09 +02:00
Alex Neundorf 7c38523470 Strip trailing whitespace
Alex
2011-07-27 20:32:59 +02:00
Brad King 5047a52d1c Merge topic 'search-for-aspell'
bb3a438 Search for the ASPELL executable
2011-07-26 14:57:53 -04:00
Brad King df7a95629c Merge topic 'qt4-apple-framework-fix'
702538e Qt4: Fix reference of undefined variable when detecting frameworks on Mac OS X
2011-07-26 14:57:48 -04:00
Brad King c2b2968825 Merge topic 'cross-qt4-find-includes'
0ae8a34 Add qt4/QtCore to help find Qt headers when cross-compiling.
2011-07-26 14:57:44 -04:00
Brad King a234b3a4fc Merge topic 'CheckCXXSymbolExists'
757a6a0 Add CheckCXXSymbolExists.cmake, so this can be used also for C++
2011-07-26 14:57:19 -04:00
Brad King ccd4c8b202 Merge topic 'PushCheckState'
d64ba0b Fix copyright notice test
1325260 Add macros cmake_push/pop_check_state() as discussed on the list.
2011-07-26 14:57:05 -04:00
Brad King 0cfd25681c Merge topic 'qt4-no-build-type'
5a2b208 Add -DQT_NO_DEBUG if no build type is specified so Qt plugins will work.
2011-07-26 14:56:30 -04:00
Brad King e25c0d046a Merge topic 'FindSubversion-non-interactive-issue-12304'
0c6e852 FindSubversion: Invoke svn non-interactively (#12304)
2011-07-26 14:56:00 -04:00
Brad King 7453581c78 Merge topic 'FindMPI-try-regular-compiler'
8756e77 Fix issues with removing try_compile input file.
e00d2c4 Try regular compiler when no MPI compiler.
2011-07-26 14:55:48 -04:00
Brad King 4a18c30a42 Merge topic 'vs-ia64'
aed92cc Add VisualStudio 9 and 10 generators for Itanium platform
d44c68f VS: Factor Find64BitTools out of Win64 generator to parent
2011-07-26 14:54:56 -04:00
Brad King 2b16232d45 Merge topic 'asn_java_support'
1417a55 Java: Fix documentation format and indentation
0b7627d Java: Use set_property/get_property for target variables.
b01a505 Java: Create correct jar archive dependencies.
f99c312 Java: Added some dependency magic to avoid recompilations.
f3233ba Java: Create java_class_filelist only if it does't exist.
a22ed3d Tests: Check for the new Java exeutable variables.
c177c8e Tests: Java tests should test UseJava.cmake
5c2106c Modules: Added CMake Java support.
a4b6275 FindJava: Find missing java development executables.
2011-07-26 14:54:33 -04:00
Clinton Stimpson 702538eaa3 Qt4: Fix reference of undefined variable when detecting frameworks on Mac OS X 2011-07-25 12:30:30 -06:00
Arnaud Gelas bb3a4381bb Search for the ASPELL executable 2011-07-22 17:04:27 -04:00
Clinton Stimpson 0ae8a3405b Add qt4/QtCore to help find Qt headers when cross-compiling. 2011-07-22 13:38:36 -06:00
Alex Neundorf b62349cc60 FeatureSummary.cmake: update documentation
Alex
2011-07-17 21:23:13 +02:00
Alex Neundorf f366cf8a86 FeatureSummary.cmake: cosmetics
-move the compat function to the bottom of the file
-make all except one endif() empty

Alex
2011-07-17 20:47:11 +02:00
Alex Neundorf f407bb5da2 FeatureSummary.cmake: only higher TYPEs can override previous TYPEs
This way e.g. a REQUIRED cannot become OPTIONAL, only the other way round

Alex
2011-07-17 20:41:09 +02:00
Alex Neundorf 02d47abe58 FeatureSummary.cmake: error out when a REQUIRED package is missing
Alex
2011-07-17 20:26:49 +02:00
Alex Neundorf 91a1527735 FeatureSummary.cmake: add INCLUDE_QUIET_PACKAGES keyword
Now found packages are not stored in ENABLED/DISABLED_FEATURES
anymore, but always in PACKAGES_FOUND/NOT_FOUND.
ENABLED/DISABLED_FEATURES is now only used via
ADD_FEATURE_INFO(), e.g. for stuff set via option().

Alex
2011-07-17 17:48:00 +02:00
Alex Neundorf 0671a02920 FeatureSummary.cmake: remove "comment" field
What was given as comment to set_package_info(), now goes into
the PURPOSE field. It was not clear what the comment should contain,
with the PURPOSE this is much clearer now.

Alex
2011-07-17 16:03:38 +02:00
Alex Neundorf aae13f4c8e Extend FeatureSummary: add PURPOSE of package and TYPE
With the PURPOSE a project can state what the package in question
is used for in the project (as opposed to describing what the package
does in general).
TYPE can be one of OPTIONAL (default)
                   RUNTIME - not needed for building, only at runtime
                   RECOMMENDED - as OPTIONAL, but you should really have it
                   REQUIRED - cmake will fail if one of these is not found

This can be set using the new function set_package_properties()

Alex
2011-07-17 15:57:50 +02:00
Alex Neundorf 757a6a091c Add CheckCXXSymbolExists.cmake, so this can be used also for C++
This commit splits check_symbol_exists() so that the actual
implementation can be also used by check_cxx_symbol_exists()

Alex
2011-07-08 21:09:32 +02:00
Alex Neundorf d64ba0b8b4 Fix copyright notice test
Alex
2011-07-07 22:26:07 +02:00
Alex Neundorf 1325260a66 Add macros cmake_push/pop_check_state() as discussed on the list.
This patch adds two macros cmake_push_check_state() and
cmake_pop_check_state(), which can be used to save and restore
the contents of the CMAKE_REQUIRED_xxx variables.

Alex
2011-07-07 22:09:44 +02:00
Alex Neundorf e4f603b698 Implement find-package mode of cmake
In find-package mode, cmake executes Modules/CMakeFindPackage.cmake,
which calls find_package(), and this is then evaluated in cmake.cxx,
which prints an appropriate message to stdout, so it can be used
e.g. in a normal Makefile:

$ /opt/cmake-HEAD/bin/cmake --find-package -DNAME=JPEG
 -DCOMPILER_ID=GNU -DLANGUAGE=C -DMODE=EXIST
JPEG found.
$ /opt/cmake-HEAD/bin/cmake --find-package -DNAME=JPEG
 -DCOMPILER_ID=GNU -DLANGUAGE=C -DMODE=COMPILE

$ /opt/cmake-HEAD/bin/cmake --find-package -DNAME=JPEG
 -DCOMPILER_ID=GNU -DLANGUAGE=C -DMODE=LINK
-rdynamic -ljpeg

Alex
2011-07-02 23:14:28 +02:00
Brad King d2430b2ffd Merge topic 'revert-fixbug_0004147'
fc04531 Revert "Add a new function SWIG_GET_WRAPPER_DEPENDENCIES to UseSWIG.cmake"
2011-06-28 16:27:06 -04:00
Brad King fc045318f8 Revert "Add a new function SWIG_GET_WRAPPER_DEPENDENCIES to UseSWIG.cmake"
This reverts commit 1088b0278e.

Wrapper dependency scanning (fix for #4147) does not work at CMake
configuration time if an input file is provided by a custom command
(regression #12307).  Revert to original behavior until a solution is
found.
2011-06-27 13:36:01 -04:00
Brad King 4ccf44bcb2 Merge topic 'use_devenv_forvs2010'
8555c2b Look for VCExpress as a possible build tool as well as devenv.
ed0075b Use relative paths for custom command inputs.
38368d5 Revert "With very long file names, VS 2010 was unable to compile files."
8cd66dc Use devenv instead of msbuild for vs2010.
2011-06-24 17:32:03 -04:00
Aaron C. Meadows 0c6e8524fe FindSubversion: Invoke svn non-interactively (#12304)
Otherwise Subversion_WC_LOG hangs if credentials are not set.
2011-06-24 15:41:43 -04:00
Clinton Stimpson 5a2b208617 Add -DQT_NO_DEBUG if no build type is specified so Qt plugins will work. 2011-06-23 10:08:28 -06:00
Todd Gamblin 8756e77fb4 Fix issues with removing try_compile input file.
- Don't remove input file
- Put output in ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}
- Remove try_compile variable from the cache after using
2011-06-21 14:02:01 -07:00
Bill Hoffman 8cd66dc0d2 Use devenv instead of msbuild for vs2010. 2011-06-21 15:58:11 -04:00
Todd Gamblin e00d2c4d51 Try regular compiler when no MPI compiler.
If FindMPI can't interrogate any of the available compilers, it attempts to compile simple MPI
programs with CMAKE_${lang}_COMPILER.  If this works, it uses that as MPI_${lang}_COMPILER.

This allows MPI to be discovered on Cray XT/XE systems, where modules are used and cc, CC, and ftn
compilers *are* MPI compilers.
2011-06-21 10:14:01 -07:00
Brad King ddd6e8ed55 Merge topic 'FindJNI-Fedora-issue-12276'
93fc629 FindJNI: Search in Fedora arch-specific JVM location (#12276)
2011-06-20 15:14:07 -04:00
Brad King 26c449d1d9 Merge topic '11279_vs10sp1_and_improvements'
effb6bb Detect VS 2010 SP1, faster and more robust detection
2011-06-20 15:13:57 -04:00
Brad King 2822bd184d Merge topic 'doc-spelling-formatting-issue-12287'
d66459b Documentation: Fix spelling / formatting errors (#12287)
2011-06-20 15:13:37 -04:00
Brad King 25b0b777f6 Merge topic 'FindBoost_bugfixes_060911'
974374a FindBoost: Also search for 1.46.1
f26d1cf FindBoost: Fixes #12188
2011-06-20 15:13:25 -04:00
Brad King 2ae5a43fa7 Merge topic 'FindSWIG-find_program-NAMES-issue-12280'
03809b1 FindSWIG: Use NAMES in find_program directives (#12280)
2011-06-20 15:12:55 -04:00
Andreas Schneider 1417a55754 Java: Fix documentation format and indentation 2011-06-20 10:01:50 -04:00
Andreas Schneider 0b7627df0a Java: Use set_property/get_property for target variables. 2011-06-20 10:00:11 -04:00
Matej Hribernik aed92ccea6 Add VisualStudio 9 and 10 generators for Itanium platform 2011-06-20 08:31:13 -04:00
Modestas Vainius d66459be8b Documentation: Fix spelling / formatting errors (#12287)
The patch fixes the following problems spotted by lintian:

W: cmake-data: manpage-has-errors-from-man usr/share/man/man1/cmakemodules.1.gz 2641: warning [p 39, 1.5i]: can't break line
I: cmake-data: spelling-error-in-manpage usr/share/man/man1/cmakeprops.1.gz explict explicit
I: cmake: spelling-error-in-binary usr/bin/cmake explict explicit
I: cmake: spelling-error-in-binary usr/bin/cpack explict explicit
I: cmake: spelling-error-in-binary usr/bin/ctest explict explicit
W: cmake: manpage-has-errors-from-man usr/share/man/man1/cmake.1.gz 7300: warning [p 120, 3.3i]: can't break line
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz explict explicit
I: cmake-curses-gui: spelling-error-in-binary usr/bin/ccmake explict explicit
I: cmake-qt-gui: spelling-error-in-binary usr/bin/cmake-gui explict explicit
2011-06-19 18:08:05 -04:00
Julien Malik 03809b1442 FindSWIG: Use NAMES in find_program directives (#12280)
Without this, regular swig (not 2.0) executable is not found
automatically.

Commit 55b7c87e (Add support for new swig 2.0 application, 2011-03-28)
added support for finding swig 2.0 at the (accidental) expense of not
finding 1.x.  Fix this regression.
2011-06-16 16:10:16 -04:00
Christoph Höger 93fc629adc FindJNI: Search in Fedora arch-specific JVM location (#12276) 2011-06-15 13:18:14 -04:00
Philip Lowman effb6bbfd7 Detect VS 2010 SP1, faster and more robust detection
Patch from Aaron C. Meadows
Adds support for detecting VS 2010 SP1
Also improves performance using CMAKE_CXX_COMPILER if it is available
and for robustness falls back using try_compile() and try_run()
2011-06-15 08:33:40 -04:00
Brad King cc746a6eb7 Merge topic 'library-multiarch-issue-12037'
1ed19bc multiarch: Set CMAKE_LIBRARY_ARCHITECTURE_REGEX for Linux|Hurd|kFreeBSD
52a6ed2 Test find_package multiarch support (#12037)
b41ad3b Teach find_(library|package) about Linux multiarch (#12037)
2011-06-14 13:23:51 -04:00
Brad King 9c569bea2d Merge topic '10997_PROTOBDUF_GENERATE_CPP_returns_wrong_path'
3982603 10997: PROTOBUF_GENERATE_CPP now supports proto files outside current dir
2011-06-14 13:23:43 -04:00
Brad King 414c35ebb2 Merge topic 'qt4-import-targets-mac'
e7f05d9 Add imported targets support for frameworks on Mac.
2011-06-14 13:23:37 -04:00
Brad King a652af77ce Merge topic 'qt4-useqt-module-deps'
5f983d1 Qt4: complete module dependencies in UseQt4.cmake
2011-06-14 13:23:33 -04:00
Brad King 0373e08f15 Merge topic 'gnu-isystem-flag-issue-12258'
33f5a83 GNU: Fix CMAKE_INCLUDE_SYSTEM_FLAG_<lang> value (#12258)
2011-06-14 13:23:28 -04:00
Philip Lowman 3982603c65 10997: PROTOBUF_GENERATE_CPP now supports proto files outside current dir 2011-06-14 09:25:16 -04:00
Clinton Stimpson 5f983d1706 Qt4: complete module dependencies in UseQt4.cmake 2011-06-13 17:37:26 -06:00
Clinton Stimpson e7f05d9759 Add imported targets support for frameworks on Mac. 2011-06-13 17:21:41 -06:00
Brad King 33f5a83a5d GNU: Fix CMAKE_INCLUDE_SYSTEM_FLAG_<lang> value (#12258)
Fix typo introduced by commit e28c16b4 (Split GNU compiler information
files, 2009-12-02).

Reported-by: Campbell Barton <ideasman42@gmail.com>
Suggested-by: Michael Hertling <mhertling@online.de>
2011-06-13 17:54:36 -04:00
Modestas Vainius 1ed19bcb25 multiarch: Set CMAKE_LIBRARY_ARCHITECTURE_REGEX for Linux|Hurd|kFreeBSD
* Fix linux CMAKE_LIBRARY_ARCHITECTURE_REGEX to support armel-linux-gnueabi.
* Add CMAKE_LIBRARY_ARCHITECTURE_REGEX on kFreeBSD.
* Add CMAKE_LIBRARY_ARCHITECTURE_REGEX on GNU (Hurd).

Also regex is improved to support quadlets.  Even if I have not seen this
in the wild yet, reportedly they are possible.
2011-06-13 11:12:23 -04:00
Eric NOULARD 2af80c76ee Add some more Specs file tag handling. 2011-06-12 12:49:44 +02:00
Eric NOULARD 05720c75c1 CPackRPM: Enhance documentation 2011-06-12 12:12:24 +02:00
Philip Lowman 974374a9cd FindBoost: Also search for 1.46.1 2011-06-09 23:23:41 -04:00
Philip Lowman f26d1cf154 FindBoost: Fixes #12188
Workaround an issue where users wanted to use Boost_LIBRARIES with the
install() command and debug/optimized keywords were interfering.  Now
debug/optimized keywords are removed if the release & debug library
are the same.
2011-06-09 23:20:18 -04:00
Brad King b41ad3b399 Teach find_(library|package) about Linux multiarch (#12037)
Implement support for multiarch as specified here:

  http://wiki.debian.org/Multiarch
  https://wiki.ubuntu.com/MultiarchSpec

Detect the <arch> part of <prefix>/lib/<arch> from the implicit library
search path from each compiler to set CMAKE_<lang>_LIBRARY_ARCHITECTURE.
Define CMAKE_LIBRARY_ARCHITECTURE using one of these values (they should
all be the same).  Teach the find_library and find_package commands to
search <prefix>/lib/<arch> whenever they would search <prefix>/lib.
2011-06-08 10:04:44 -04:00
Brad King 40792a1a15 Merge topic 'fix-12034-fixup-bundle-with-non-dotapp-exe'
51e16c0 BundleUtilities: Avoid test on Watcom dashboards (#12034)
41f962a Revert "BundleUtilities: Run test on Windows if either MSVC or dumpbin was found."
e17135e BundleUtilities: Add rpath to loadable modules in test.
8064044 BundleUtilities: Print reason for not loading module.so
f3de459 BundleUtilities: Run test on Windows if either MSVC or dumpbin was found.
900bf98 BundleUtilities: Disable running test on Windows unless using MSVC.
fa4dc08 BundleUtilities: Fix issues with custom target DEPENDS in test (#12034)
e40b79e BundleUtilities: Fix test when using xcode (#12034)
b68d3dc BundleUtilities: Fix regex to extract dependents from ldd (#12034)
7ac7b43 BundleUtilities: Work w/ non .app exes on Mac (#12034)
2011-06-07 14:06:09 -04:00
Brad King 43d3048582 Merge topic 'fix-BundleUtilities-cryptic-error-message'
8f0667c BundleUtilities: Avoid a cryptic and unhelpful error message
2011-06-07 14:05:57 -04:00
David Cole 8f0667c113 BundleUtilities: Avoid a cryptic and unhelpful error message
When the path to "resolved_embedded_item" was shorter than
the path to the bundle being fixed up, fixup_bundle would
fail with a cmake error like:

  "string end index: 110 is out of range 0 - 85"

Detect when the path of resolved_embedded_item is too short
to be embedded in the bundle, and report the proper error
message, so the poor developer reading it has a snowball's
chance of actually fixing the issue.
2011-06-02 11:55:09 -04:00
Brad King 87b8b3c0a0 Merge topic 'XL-Fortran-moddir-issue-12246'
3bb8566 XL: Place Fortran modules with -qmoddir= flag (#12246)
2011-06-02 11:29:22 -04:00
Brad King e164bb1e76 Merge topic '12128_FindProtobuf_module_behavior_under_Windows_is_annoying'
517837f Fix , to - in Copyright message so it passes CMake.ModuleNotices test
162f3fb Merge branch 'master' of git://public.kitware.com/cmake into 12128_FindProtobuf_module_behavior_under_Windows_is_annoying
ca000a0 FindProtobuf: Better MSVC support, Searching for protobuf lite
2011-06-02 11:28:59 -04:00
Brad King 18c703db66 Merge topic 'hdf5-module-bug-fix'
e38216c Remove unnecessary mark_as_advanced from FindHDF5.
93ba19e FindHDF5 ensures good link lines when libraries are duplicated.
0584701 Fix for bug 11752, mixed debug and release libraries.
4e12284 Use HDF5_FOUND to control autoconf and CMake built FindHDF5.
2ba826e Use CMAKE_CURRENT_LIST_DIR to locate FindPackageHandleStandardArgs.
3978f32 Add logic for CMake built HDF5 install.
063ac87 HDF5 high level library is a find COMPONENT now.
34ea179 Modified the FindHDF5.cmake file to locate the Fortran bindings.
2011-06-02 11:28:50 -04:00
Brad King 3bb8566868 XL: Place Fortran modules with -qmoddir= flag (#12246)
Suggested-by: Luis Kornblueh <luis.kornblueh@zmaw.de>
2011-06-01 12:00:48 -04:00
Clinton Stimpson b68d3dc1b5 BundleUtilities: Fix regex to extract dependents from ldd (#12034)
This regex works with spaces in the path.
2011-05-31 13:12:28 -04:00
Clinton Stimpson 7ac7b437b8 BundleUtilities: Work w/ non .app exes on Mac (#12034)
Also add a test of BundleUtilities including an exe,
some shared libs, a plugin, and a framework-style lib.

This test presently runs (and this functionality works)
on Linux, Mac and Windows.

For now, the framework-style lib is built as a plain old
shared lib because there is another yet-unresolved issue
with local frameworks without rpaths on the Mac.
2011-05-27 16:11:43 -04:00
Philip Lowman 517837fb47 Fix , to - in Copyright message so it passes CMake.ModuleNotices test 2011-05-26 02:21:58 -04:00
Philip Lowman 162f3fb413 Merge branch 'master' of git://public.kitware.com/cmake into 12128_FindProtobuf_module_behavior_under_Windows_is_annoying 2011-05-25 22:10:19 -04:00
Philip Lowman ca000a0948 FindProtobuf: Better MSVC support, Searching for protobuf lite
Add support for finding debug libraries
Add support for searching Google provided MSVC project dir structure for libs
Add support for finding Protobuf "Lite" libraries
2011-05-25 22:01:49 -04:00
Will Dicharry e38216c6e9 Remove unnecessary mark_as_advanced from FindHDF5. 2011-05-25 13:19:26 -06:00
Will Dicharry 93ba19e070 FindHDF5 ensures good link lines when libraries are duplicated.
Duplicates must be removed from the beginning of the link libraries
to ensure unresolved symbols can be found.
2011-05-25 12:53:28 -06:00
Will Dicharry 0584701ae4 Fix for bug 11752, mixed debug and release libraries. 2011-05-25 12:38:54 -06:00
Will Dicharry 4e12284424 Use HDF5_FOUND to control autoconf and CMake built FindHDF5. 2011-05-25 12:34:21 -06:00
Will Dicharry 2ba826e060 Use CMAKE_CURRENT_LIST_DIR to locate FindPackageHandleStandardArgs. 2011-05-24 12:53:49 -06:00
Brad King e51bbc14f6 Merge topic 'output-compile-lines'
cdc2b41 Fix CompileCommandOutput test build on Windows
7039d1f Fix CompileCommandOutput test for Make tools not supporting spaces
4268e3d run_compile_commands: Cast istream::get() result to char
c45c60b run_compile_commands: Avoid extra stl vector conversion
7c5be51 run_compile_commands: Avoid shadow in std::map<>::at workaround
169bb05 Provide std::map<>::at for use in run_compile_commands
4e2185c Make std::map usage more portable in language=>flags/defines maps
a7e7a04 Fix run_compile_commands build on Apple GCC 3.3
c9174c0 Fix signed/unsigned comparison in EscapeJSON
8346a28 Only offer the compile command output feature on unix systems
0e6b05f Adds a test for the compile command line output.
5674844 make compile command output optional
fe07b05 implement cxx command output
65c0c24 cache flags and defines
3f064ef refactor flags and defines
2011-05-24 14:48:14 -04:00
Brad King 14a6bda1a2 Merge topic 'CPackRPM-fixForAIX'
db45b10 CPack  make RPM work on AIX. fix #0012183 merge patch from Pasi Valminen
2011-05-24 14:34:46 -04:00
Brad King 1605784f47 Merge topic 'absoft-fortran-compiler'
8bd3e51 Absoft: Enable FortranCInterface check in Fortran test
d7b376b Absoft: Detect implicit link libraries on Linux and Mac
ac5b999 Add Absoft Fortran compiler id and basic flags
2011-05-24 14:34:40 -04:00
Eric NOULARD db45b10ff7 CPack make RPM work on AIX. fix #0012183 merge patch from Pasi Valminen 2011-05-21 12:34:37 +02:00
Brad King d7b376b3a7 Absoft: Detect implicit link libraries on Linux and Mac
Use the "-X -v" flag to the Absoft front-end to pass "-v" to the gcc it
invokes under the hood.  Teach CMakeParseImplicitLinkInfo to exclude
linker version lines from consideration as link lines.  Fix parsing of
Sun's linker search path option "-Y..." to avoid conflict with the Mac
linker option "-Y<num>".
2011-05-20 08:57:51 -04:00
Brad King ac5b999fff Add Absoft Fortran compiler id and basic flags
Identification at preprocessing time depends on definition of __ABSOFT__
to be added in service pack V11.1.2 of the compiler.
2011-05-20 08:53:36 -04:00
Will Dicharry 3978f3221f Add logic for CMake built HDF5 install.
The find module calls find_package( HDF5 QUIET NO_MODULE ). If that succeeds,
the find module variables are set based on the imported target locations.
2011-05-16 15:41:18 -06:00
Will Dicharry 063ac873ce HDF5 high level library is a find COMPONENT now.
The HDF5 high level library was originally hard coded as a dependency when the C
bindings are desired. The high level API is now requested as a COMPONENT.
2011-05-16 15:36:47 -06:00
Tim Gallagher 34ea179013 Modified the FindHDF5.cmake file to locate the Fortran bindings. 2011-05-16 15:35:57 -06:00
Manuel Klimek 8346a28a0a Only offer the compile command output feature on unix systems 2011-05-16 10:42:10 -04:00
Brad King 0bfabf967f OpenBSD: Use 'arch -s' for host processor (#12143)
On OpenBSD 'uname -p' returns a long descriptive name for the processor.
Use 'arch -s' instead to get a short cpu name.

Suggested-by: Stuart Henderson
2011-05-02 10:33:18 -04:00
Brad King aebf98b4f1 Merge topic 'multilingual-FindMPI'
a55da06 Added backward compatibility for input as well as output vars.
a32a633 FindMPI: Fix documentation formatting
706b73e FindMPI: Handle multiple languages
2011-04-26 14:25:10 -04:00
Manuel Klimek 5674844de4 make compile command output optional 2011-04-25 13:27:58 -04:00
Todd Gamblin a55da06948 Added backward compatibility for input as well as output vars.
Users can now supply MPI_COMPILER, MPI_INCLUDE_PATH, MPI_LIBRARY,
and others as with the old FindMPI.  These are mapped to their
respective equivalents for C and CXX.  Fortran is not touched, as
there was no Fortran support in the old FindMPI.
2011-04-24 18:55:23 +09:00
Brad King 2b44534950 Merge topic 'FindITK-passthru'
aa170c2 FindITK: Use passthru find_package config mode for messages
2011-04-19 14:08:20 -04:00
Brad King 4d2d9d44e6 Merge topic 'add-svn-trust-cert-to-ExternalProject'
12a3699 ExternalProject: Always use --non-interactive with svn
3a5a402 ExternalProject: Add SVN_TRUST_CERT argument
2011-04-19 14:08:18 -04:00
Brad King aa170c20f7 FindITK: Use passthru find_package config mode for messages
The custom error message that mentions PREFIX/lib/InsightToolkit is not
accurate for ITKv4.  Just use the more generic message that find_package
generates by default.  This module is now almost a no-op but exists to
tell find_package to look for the InsightToolkit name as well as ITK.
2011-04-18 14:11:54 -04:00
David Cole 12a3699372 ExternalProject: Always use --non-interactive with svn
The previous commit added --non-interactive as a "side effect"
of turning on SVN_TRUST_CERT. While reviewing that commit, we
decided all ExternalProject svn usage should be non-interactive.

That way, if there's any sort of problem, svn will return an
error right away rather than hang forever waiting for input...
2011-04-18 11:34:00 -04:00
Eric NOULARD d3fd945900 CPackRPM Fix #12096: handle absolute install path with component install 2011-04-17 17:12:38 +02:00
Brad King 051a2200da Merge topic 'fixbug_0011782'
0378396 UseSWIG.cmake did not support multiple modules and parallel builds
2011-04-12 14:44:16 -04:00
Brad King 65a05b8ff0 Merge topic 'fixbug_0011676'
5f76833 Add support for Java on HP
2011-04-12 14:44:13 -04:00
Brad King dff009626d Merge topic 'fixbug_0011215'
c088536 UseSWIG.cmake does not expand $(OutDir)
2011-04-12 14:44:09 -04:00
Brad King bc888800f5 Merge topic 'fixbug_0011183'
a59d198 Add support for java on fedora
2011-04-12 14:43:59 -04:00
Brad King 0a340142aa Merge topic 'fixbug_0010242'
4f35488 Add support for FindJava on HP-UX and alpha
2011-04-12 14:43:57 -04:00
Brad King 6ae7b5bb83 Merge topic 'fixbug_0004147'
1088b02 Add a new function SWIG_GET_WRAPPER_DEPENDENCIES to UseSWIG.cmake
2011-04-12 14:43:51 -04:00
Brad King f464eb203e Merge topic 'fixbug0011843'
55b7c87 Add support for new swig 2.0 application
2011-04-12 14:43:48 -04:00
Brad King 445611e53e Merge topic 'refine-XL-rules'
d468a2c XL: Avoid copying archives into shared libraries that link them
2011-04-12 14:43:39 -04:00
Brad King c53119641f Merge topic 'refine-XL-compiler-information'
2f3eee7 XL: Consolidate compiler flag information
3a40c7f XL: Set C++ and Fortran flags consistently with C
2011-04-12 14:43:34 -04:00
David Cole 3a5a402a53 ExternalProject: Add SVN_TRUST_CERT argument
Which adds --non-interactive and --trust-server-cert to the svn
checkout and update command lines. This allows ExternalProject
clients to pull from an https:// based svn server even though
the server may not have a valid or trusted certificate.

Caveat emptor: I would NOT recommend using this except as a
short-term work-around. Rather, the server should have a valid,
trusted certificate, or the client should be using "http" instead
of "https".
2011-04-11 16:34:58 -04:00
Mathieu Malaterre 4f35488fe9 Add support for FindJava on HP-UX and alpha
This commit fixes BUG: 0010242. It now properly inspect specific directory
on hp-ux and alpha implementation of the JRE
2011-04-08 15:19:28 +02:00
Mathieu Malaterre 0378396e68 UseSWIG.cmake did not support multiple modules and parallel builds
This commit fixes BUG: 0011782. UseSWIG would be using the same variable
to declare module information. The problem would only be noticed in parallel builds
Fix this variable declaration by properly resetting it.
2011-04-08 15:17:33 +02:00
Mathieu Malaterre 55b7c87ef2 Add support for new swig 2.0 application
This commit fixes BUG: 0011843. It now properly discover if swig2.0
is in the PATH
2011-04-08 15:15:58 +02:00
Mathieu Malaterre c088536518 UseSWIG.cmake does not expand $(OutDir)
This commit fixes BUG: 0011215 by properly expanding $(OutDir)
Instead of creating the output directory using file(MAKE_DIRECTORY)
we use cmake -E to create the directory at execution time
2011-04-08 15:13:57 +02:00
Mathieu Malaterre a59d198aa3 Add support for java on fedora
This commit fixes BUG: 0011183 by adding new paths used on fedora,
specifically: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0
2011-04-08 15:12:23 +02:00
Mathieu Malaterre 5f7683317a Add support for Java on HP
This commit fixes Bug: 0011676 by adding support for version
numbering of JRE used on HP: 1.6.0.06-jinteg_20_jan_2010_05_50-b00
2011-04-08 15:10:48 +02:00
Mathieu Malaterre 1088b0278e Add a new function SWIG_GET_WRAPPER_DEPENDENCIES to UseSWIG.cmake
This commit fixes BUG: 0004147 it directly uses swig executable
to compute a list of dependencies directly from the .i files
to make sure to rebuild the swig module any of its direct dep.
is touched
2011-04-08 15:07:40 +02:00
Brad King d468a2c2cb XL: Avoid copying archives into shared libraries that link them
The XL toolchain supports shared object files stored in archives.  Since
CMake lists libraries on link lines by full path it is common for a
shared library link line to contain the path to an archive file.

When linking a shared library the compiler front-end by default runs
CreateExportList to construct the list of symbols to be exported.
Unfortunately it passes all files found on the command line to the tool
so archive and library files get processed along with the object files.
The tool returns a list of all symbols in all objects, archives, and
libraries on the command line.  This causes the linker to copy every
object file out of every archive into the shared library whether they
are dependencies of the original object files or not.

Work around this problem by running CreateExportList ourselves with just
the original object files intended for inclusion in the shared library.
Then pass the list it produces on the link line to prevent the compiler
front-end from constructing its own.  This tells the linker to export
only the symbols provided by the original source files of the shared
library.
2011-04-08 08:41:36 -04:00
Brad King 2f3eee7490 XL: Consolidate compiler flag information
Factor duplicate information out of Compiler/XL-<lang>.cmake modules
into a macro in a new Compiler/XL.cmake module.  Invoke it from the
per-language files to produce the original settings.
2011-04-07 17:09:05 -04:00
Brad King 3a40c7faa4 XL: Set C++ and Fortran flags consistently with C
Since commit e1729238 (Add initial XL C compiler flags for safer builds,
2009-09-30) CMake sets the initial XL C flags to include "-qthreaded"
and "-qhalt=e".  Do the same for C++ and Fortran with this toolchain.
2011-04-07 17:07:23 -04:00
Rolf Eike Beer 0dafc0a8ed FindZLIB: print library instead of include directory
Before:

-- Found ZLIB: /usr/include (found version "1.2.3")

After:

-- Found ZLIB: /usr/lib/libz.so (found version "1.2.3")
2011-04-07 12:38:43 -04:00
Brad King ca10dc4786 Merge topic 'BuiltinIncludeDirFixesForEclipse'
6a38cab Don't skip the last builtin include dir for the Eclipse project file
4371147 Fix parsing include dirs and builtin macros for CXX-only projects
2011-04-05 14:28:49 -04:00
Brad King fc6addccfd Merge topic 'ModularizeCPack-dot-CMake'
4bb7940 Split CPack.cmake in more manageable parts
2011-04-05 14:28:43 -04:00
Brad King c3c19c7cb7 Merge topic 'module-armadillo'
2d56f0a Corrected copyright format in FindArmadillo.cmake
1942f58 Add new module Armadillo
2011-04-05 14:28:33 -04:00
Brad King 3b16aa622e Merge topic 'linux-lib64-handling'
126c993 Fix #11964 Handle lib64 library on Linux
2011-04-05 14:28:23 -04:00
Brad King e252320793 Merge topic 'module-readme'
ede46d9 Modules: Add comment and copyright notice validation to readme.txt
2011-04-05 14:28:17 -04:00
Brad King 485b50c357 Merge topic 'asn_openssl_fixes'
112f1dd FindOpenSSL: Use find_package_handle_standard_args for version check.
a091ba6 FindOpenSSL: Fixed crypto und ssl variable names.
a164649 FindOpenSSL: We should only use hints to find OpenSSL.
0fb5142 FindOpenSSL: Added support for pkg-config.
2011-04-05 14:28:14 -04:00
Brad King a2907bfb84 Merge topic 'fixbug_0010316'
b4c3ff7 This commit fixes bug #0010316
2011-04-05 14:28:09 -04:00
Eric NOULARD 4bb79402e8 Split CPack.cmake in more manageable parts
Put NSIS, Bundle and Component related MACROs in separate files.
This does not implies functional changes, concerning the way
CPack is used.
2011-04-04 20:18:27 +02:00
Oliver Buchtala b01a50567a Java: Create correct jar archive dependencies.
The command generating the jar file depends on java_class_filelist which
is generated by another command.

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2011-04-04 11:50:04 +02:00
Oliver Buchtala f99c3120c9 Java: Added some dependency magic to avoid recompilations.
Compile java sources within a custom_command using automatically checked
file dependencies and create java_class_filelist after java compile.

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2011-04-04 11:50:04 +02:00
Oliver Buchtala f3233ba521 Java: Create java_class_filelist only if it does't exist.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2011-04-04 11:49:58 +02:00
Alex Neundorf 6a38cab2de Don't skip the last builtin include dir for the Eclipse project file
The regex was slightly wrong, it excluded the last line, so e.g.
/usr/include/ didn't end up in the .cproject file.

Thanks to Shash Chatterjee for the patch.

Alex
2011-04-03 18:07:27 +02:00
Alex Neundorf 4371147ef4 Fix parsing include dirs and builtin macros for CXX-only projects
Alex
2011-04-03 18:00:35 +02:00
Clement Creusot 2d56f0adb2 Corrected copyright format in FindArmadillo.cmake 2011-04-01 19:59:35 +01:00
Brad King ede46d9d91 Modules: Add comment and copyright notice validation to readme.txt
Document for module authors how to format the copyright notice and
test it.  Also provide a hint for previewing the module documentation
formatting.
2011-04-01 13:46:36 -04:00
Clement Creusot 1942f583b3 Add new module Armadillo 2011-04-01 16:56:32 +01:00
Eric NOULARD 126c993d03 Fix #11964 Handle lib64 library on Linux
The AMD64 ABI document http://www.x86-64.org/documentation/abi.pdf
does specify that 64bits binary libraries should end up in <prefix>/lib64
and 32bits ones in <prefix>/lib. All but debian based distros do so,
and some like OpenSUSE even enforce the rule when packaging with RPM
and refuse to build the RPM if this is not the case.
After some discussion (see the bug notes) we cannot do that behind
the scene and the current fix supposes that the user shall use
the CMAKE_INSTALL_LIBDIR variables content in its INSTALL rules if
he wants to put the lib in the right place. CMAKE_INSTALL_LIBDIR
shall have the appropriate value depending on the Linux distribution
found and 32/64bitness of the host.
The cross-compiling case (even 32bits compile on a 64bits host)
is not handled.
2011-03-31 14:45:48 -04:00
Brad King cddbe63d79 Merge topic 'fix12006-brokenPackageName'
33391c6 CPackDeb: Fix #12006 broken package names
2011-03-31 13:23:16 -04:00
Brad King 62130ba9c4 Merge topic 'gnu-install-dirs-issue-3976'
c2bf48e GNUInstallDirs: Propagate DATAROOTDIR changes to dependent defaults
11431c6 GNUInstallDirs: Simplify and clarify documentation
a262fe0 Add GNUInstallDirs module to define GNU layout (#3976)
2011-03-31 13:23:07 -04:00
Brad King e54e38fadf Merge topic 'fix-FortranCInterface-for-Cray-7.3.2'
d0203fb FortranCInterface: Fix mangling detection with Cray Fortran >= 7.3.2
2011-03-31 13:22:38 -04:00
Andreas Schneider 112f1dd7e3 FindOpenSSL: Use find_package_handle_standard_args for version check. 2011-03-31 08:43:24 -04:00
Andreas Schneider a091ba61ce FindOpenSSL: Fixed crypto und ssl variable names. 2011-03-31 08:43:24 -04:00
Andreas Schneider a164649f9d FindOpenSSL: We should only use hints to find OpenSSL. 2011-03-31 08:43:16 -04:00
Andreas Schneider 5c2106c71e Modules: Added CMake Java support.
This provides:
    find_jar
    add_jar
    install_jar
    install_jni_symlink
    create_javadoc
2011-03-29 11:54:42 +02:00
Andreas Schneider a4b6275eb7 FindJava: Find missing java development executables. 2011-03-29 11:54:41 +02:00
Andreas Schneider 0fb5142e40 FindOpenSSL: Added support for pkg-config. 2011-03-28 18:31:16 +02:00
Mathieu Malaterre b4c3ff7ce8 This commit fixes bug #0010316 2011-03-28 17:53:46 +02:00
Brad King d0203fb567 FortranCInterface: Fix mangling detection with Cray Fortran >= 7.3.2
The Cray Fortran compiler started using module init symbols in version 7.3.2.
Starting in commit 71287734 (Teach FortranC interface for Intel, PGI, and gcc
4.2, 2009-08-05) we provide C versions of the module init symbols so that the
detection executable can link when the C versions of the module-mangled symbols
are picked up.

If no C module-mangled symbol matches then we cannot let the C module init
symbol appear because it will be duplicated by the Fortran copy that provides
the module-mangled symbol.  This was first handled for the PathScale compiler
in commit 21faaa5d (FortranCInterface: Fix PathScale detection, 2010-01-22) and
commit 46858720 (FortranCInterface: Fix PathScale detection again, 2010-02-16).
Handle it now for the Cray compiler too.
2011-03-24 16:06:58 -04:00
Martin Konrad 33391c697f CPackDeb: Fix #12006 broken package names
Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2011-03-24 09:25:58 +01:00
Brad King c2bf48ef57 GNUInstallDirs: Propagate DATAROOTDIR changes to dependent defaults 2011-03-23 14:39:05 -04:00
Brad King 4344e83fcf Merge topic 'asn_check_proto'
93c56a7 Tests: Added test for check_prototype_definition.
4f252ab Modules: Added CheckPrototypeDefinition module.
2011-03-22 14:45:51 -04:00
Brad King 1c3233a850 Merge topic 'include-flags-response-file'
86cb17b Pass include directories with response files to GNU on Windows
9a0b9bc Optionally pass include directories with response files
6e8a67f Generate target-wide flags before individual build rules
d099546 Factor old-style -D flags out from -I flag generation
2011-03-22 14:45:44 -04:00
Brad King 3ae23330ee Merge topic 'FindBLAS-acml-search-improvement'
ac475c4 ACML search improvement
2011-03-22 14:45:30 -04:00
David Cole e6c2701002 ProcessorCount: Use ERROR_QUIET with execute_process (#11302)
Also, comment out all "debugging" calls to message() that helped
us interpret the output on other platforms when running on the
dashboard clients.

Using ERROR_QUIET avoids unnecessary stderr output while calling
external tools to determine the processor count. If there's an
error parsing the output, we set the count to 0 anyhow.

Also, the test will fail on a CMake dashboard run if the count
comes back equal to 0.

Now that the code is "done"-ish, remove the debugging output.
Expect no output on stdout or stderr when calling the
ProcessorCount function from now on.
2011-03-18 14:28:24 -04:00
Andreas Schneider 4f252abea5 Modules: Added CheckPrototypeDefinition module.
This check if the function exists and the prototype we want to use is
correct. There are still functions which have different prototypes on
different UNIX systems.
2011-03-18 14:03:35 -04:00
Brad King 86cb17b18d Pass include directories with response files to GNU on Windows
The GNU 4.x toolchain on MinGW (and therefore MSYS) allows compiler
options to be passed via response files.  Use this to pass include
directory -I options.  This allows the include file search path to be
very long despite shell and mingw32-make command line length limits.
2011-03-17 17:56:14 -04:00
Brad King a32a633225 FindMPI: Fix documentation formatting
Adjust whitespace to make the output of "--help-module FindMPI" look
good.  Also separate the comment containing the copyright and license
notice so it does not appear in the documentation.
2011-03-16 10:11:33 -04:00
Alexey Ozeritsky ac475c4126 ACML search improvement 2011-03-15 15:07:40 -04:00
Todd Gamblin 706b73e848 FindMPI: Handle multiple languages
Adds support for:

- MPI_<lang>_COMPILER and other useful variables for C, CXX, Fortran
- Better compiler interrogation (handles mvapich)
- Supports specifying an MPI compiler name directly on the command line
  without and absolute path, e.g.: cmake -D MPI_CXX_COMPILER=mpixlC
- Better compiler name searching tries to match MPI compiler to regular
  CMAKE_<lang>_COMPILER_ID, if it's available.

Gets rid of:

- MPI_LIBRARY, MPI_EXTRA_LIBRARY cache variables.  These and other old
  vars are still exported for backward compatibility, but they're not
  cached.
2011-03-15 15:07:34 -04:00
David Cole 6dd74d5a59 ProcessorCount: Add support for remaining platforms (#11302)
Including AIX, cygwin, FreeBSD, HPUX, IRIX, OpenBSD and Sun.
2011-03-15 15:07:31 -04:00
David Cole 3430955d5f Add ProcessorCount support for QNX via pidin. (#11302)
Thanks to Rolf Eike Beer <eike@sf-mail.de> for the code snippet
parsing the pidin output.
2011-03-15 15:07:30 -04:00
David Cole 4d6418f683 If getconf returns empty output, try cpuinfo. (#11302)
Also, add message output (temporarily) for gathering data
on all the dashboard machines. After the test runs on the
overnight dashboards tonight, I'll comment out the message
output and commit/push again.
2011-03-15 15:07:30 -04:00
David Cole 9cc8ad99c9 Add correct module notice header.
Fixes failing ModuleNotices test.
2011-03-15 15:07:30 -04:00
Michael Wild abbaa123aa Add module ProcessorCount.cmake (#11302)
Credit goes to David Cole ( http://www.kitware.com/blog/home/post/63 ).

Also add a script-based test of the new module.

Signed-off-by: Michael Wild <themiwi@users.sourceforge.net>
2011-03-15 15:07:30 -04:00
Brad King 9349de14c7 Merge topic 'CPackRPM-TestWithMoreTraces'
ade04de Remove debbuging typo
a201028 CPack try to please SUSE 64 bits and install lib in lib64 and not lib.
7ebbcf1 CPackRPM  non matching ENDIF
0e07b42 CPackRPM even more trace in debug mode or in case of failure
564b731 CPackRPM  add more trace output in order to help failing diagnostics
2011-03-15 14:47:38 -04:00
Brad King 0e4b5caa81 Merge topic 'CPackDeb-ComponentSupport'
bf7066c CPackDeb  add Component Support to DEB generator fix #0011655
2011-03-15 14:47:35 -04:00
Brad King f8f6c5f899 Merge topic 'qt4-paramfile-speed'
ae587e4 Speed up creation of parameters file for moc custom command.
2011-03-15 14:47:30 -04:00
Brad King b035e638c0 Merge topic 'qt4-cross-compile-no-default'
46f64bd When cross compiling, don't double-root paths when using find_*.
2011-03-15 14:47:25 -04:00
M. Konrad bf7066c6ce CPackDeb add Component Support to DEB generator fix #0011655
Contribution by Martin Konrad
Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2011-03-11 08:47:15 +01:00
Clinton Stimpson ae587e49a6 Speed up creation of parameters file for moc custom command.
Thanks A. Saratow for patch.
2011-03-10 14:45:45 -07:00
Markus Rathgeb 46f64bd9e7 When cross compiling, don't double-root paths when using find_*. 2011-03-10 14:17:13 -07:00
Eric NOULARD 7ebbcf19de CPackRPM non matching ENDIF 2011-03-10 18:32:47 +01:00
Eric NOULARD 0e07b425ca CPackRPM even more trace in debug mode or in case of failure 2011-03-10 18:20:16 +01:00
Eric NOULARD 564b7311f4 CPackRPM add more trace output in order to help failing diagnostics 2011-03-10 09:48:46 +01:00
David Cole 971a735ba2 InstallRequiredSystemLibraries: Read reg values with get_filename_component
64-bit CMake can now find the VC redist folder.

See this thread on the CMake mailing list for the original report:
http://www.cmake.org/pipermail/cmake/2011-March/043342.html

Thanks to J. Decker for the suggested fix.
2011-03-09 18:03:11 -05:00
Brad King 036aab093b Merge topic 'ReworkedAsmSupport'
b3ce420 Do not bother enabling C++ in Assembler test
80f6a34 Teach Assembler test to generate main.s at build time
1dafa74 Fix Assembler test to parse C flags string before using
4139a73 -only enable the asm test for the Intel compiler if we are under UNIX
1f6c6b1 -use CMAKE_C_FLAGS when generating the assembler file
d0f71e2 Add ASM platform information for HP compiler on HP
bd580be Merge branch 'hp-compiler-info' into ReworkedAsmSupport
a0bab7a Add ASM platform information for XL compiler on AIX
c03b610 Merge branch 'aix-xl-platform-info' into ReworkedAsmSupport
c623008 Initialize ASM rpath flags for executables with those for shared libs
17c658f Add support for the Intel compiler used for ASM under Windows
4258b24 Add more regex for gcc, always print the ASM compiler ID
9071b8b Add temporary debug output for compiler ID detection for ASM
48f7199 It's ELSEIF(), not ELSIF()
d103c75 Fix bad comparison in the detect assembler-code
20fe0be Only try assembler support for Makefile-based generators
8614470 Use a regexp instead a lot of ORs for checking the compiler ID
cf88092 The Assembler test now tests ASM for GNU, Intel, HP, XL and SunPro
66614a8 Add assemble- and preprocess commands for HP
78f7c59 Fix the default CMAKE_ASM_COMPILE_OBJECT, make XL-ASM use it
7456461 Change the default rules so they fit better to the new ASM handling
5542d58 Set the HP asm file suffix
f745220 Add support for ASm for the HP compiler.
00735d4 Add suport for ASM for the IBM XL compiler
d3e9e8a Add support for ASM for the SunPro compiler
64e66eb Actually use CMAKE_ASM_COMPILER for asm, instead of CMAKE_C_COMPILER
38f92bf Add ASM support for the Intel compiler
4b40d42 Rework the way assembler is handled, use the C/CXX compiler by default
2011-03-08 14:22:38 -05:00
Brad King 831fef8167 Merge topic 'improve-ExternalProject-file-name-recognition'
7f10b13 ExternalProject: Extract file names from more urls
2011-03-08 14:22:35 -05:00
Brad King 8a8234df05 Merge topic 'aix-xl-platform-info'
d30dcf1 Move RPATH flags to AIX per-compiler information files
89ea7a3 Factor AIX and XL compiler flags into common module
2011-03-08 14:22:13 -05:00
David Cole 7f10b137e1 ExternalProject: Extract file names from more urls
Notably, downloads from sourceforge.net and gitweb snapshots.
2011-03-04 17:09:41 -05:00
Brad King d0f71e2545 Add ASM platform information for HP compiler on HP
Among other flags this sets RPATH flags correctly so that CMake knows
how to treat CMAKE_PLATFORM_REQUIRED_RUNTIME_PATH for the ASM language.
2011-03-02 17:49:17 -05:00
Brad King bd580be526 Merge branch 'hp-compiler-info' into ReworkedAsmSupport 2011-03-02 17:40:55 -05:00
Brad King 5f0a25955f Factor HP compiler flags into per-platform/per-compiler files
Move HP flags out of Platform/HP-UX.cmake into platform-specific
compiler information files "Platform/HP-UX-HP-<lang>.cmake".  Factor
common values into "Platform/HP-UX-HP.cmake" and load it from the
per-language files.
2011-03-02 17:24:36 -05:00
Brad King a0bab7ae69 Add ASM platform information for XL compiler on AIX
Among other flags this sets RPATH flags correctly so that CMake knows
how to treat CMAKE_PLATFORM_REQUIRED_RUNTIME_PATH for the ASM language.
2011-03-02 13:48:04 -05:00
Brad King c03b610c0a Merge branch 'aix-xl-platform-info' into ReworkedAsmSupport 2011-03-02 13:47:11 -05:00
Brad King c623008376 Initialize ASM rpath flags for executables with those for shared libs
Since the flags for executables are almost always the same as those for
shared libraries each language information file just uses the latter for
the former by default.  This reduces duplication in the compiler and
platform flag information files.
2011-03-02 13:44:13 -05:00
Brad King d30dcf18b9 Move RPATH flags to AIX per-compiler information files
Move RPATH flags out of Platform/AIX.cmake into platform-specific
compiler information files Platform/AIX-XL and Platform/AIX-GNU.
The flags need to be set for each compiler of each language.
2011-03-02 11:21:54 -05:00
Brad King 89ea7a3d3c Factor AIX and XL compiler flags into common module
Factor duplicate flag information from Platform/AIX-XL-*.cmake into
Platform/AIX-XL.cmake and load it from the original files.
2011-03-02 11:20:50 -05:00
Alex Neundorf 17c658f819 Add support for the Intel compiler used for ASM under Windows
Alex
2011-03-02 16:46:25 +01:00
Alex Neundorf 4258b24134 Add more regex for gcc, always print the ASM compiler ID
Now gcc is also recognized via "Free Software Foundation"

Alex
2011-03-01 22:58:26 +01:00
Alex Neundorf 9071b8b87f Add temporary debug output for compiler ID detection for ASM
Alex
2011-03-01 21:41:02 +01:00
Alex Neundorf 48f7199df0 It's ELSEIF(), not ELSIF()
Alex
2011-03-01 21:39:19 +01:00
Brad King bb745612bc Merge topic 'doc-typo-fixes'
7c5e412 Documentation: Fix a few typos (#11883)
2011-03-01 15:30:32 -05:00
Brad King 79037a818e Merge topic 'qt4-setversion-regression-43cb9b8'
6b9bc54 Fix regression in 43cb9b8.
2011-03-01 15:30:17 -05:00
Alex Neundorf d103c751fa Fix bad comparison in the detect assembler-code
(there was a if("${CMAKE_C_COMPILER}") instead of if(CMAKE_C_COMPILER) )

Alex
2011-03-01 21:28:54 +01:00
Brad King 11431c67c6 GNUInstallDirs: Simplify and clarify documentation 2011-02-28 15:15:01 -05:00
Nikita Krupen'ko a262fe0917 Add GNUInstallDirs module to define GNU layout (#3976)
Provide CMAKE_INSTALL_* variables to help install files according
to the GNU standard layout:

  http://www.gnu.org/prep/standards/html_node/Directory-Variables.html
2011-02-28 15:15:01 -05:00
Brad King 307bdadadc Merge topic 'mingw-module-definition'
6c4b249 Fix Fortran test .def file symbol mangling
7616216 Pass .def files directly to MinGW tools (#9997)
2011-02-24 08:30:26 -05:00
Clinton Stimpson 6b9bc54566 Fix regression in 43cb9b8.
Put back some code for setting the QT_VERSION_* variables that wasn't supposed to be removed.
2011-02-23 17:13:49 -07:00
Alex Neundorf 66614a868d Add assemble- and preprocess commands for HP
Also restore HP-C.cmake, I had accidentially overwritten it with HP-ASM.cmake

Alex
2011-02-23 21:30:21 +01:00
Alex Neundorf 78f7c592eb Fix the default CMAKE_ASM_COMPILE_OBJECT, make XL-ASM use it
Alex
2011-02-23 21:29:05 +01:00
Alex Neundorf 7456461588 Change the default rules so they fit better to the new ASM handling
CMAKE_ASM_COMPILE_OBJECT is now so that it fits for GNU, Intel, HP and Sun
ASM_ATT had to be adjusted. Also adjusted the default
CMAKE_ASM_LINK_EXECUTABLE

Alex
2011-02-23 21:21:41 +01:00
Alex Neundorf 5542d58014 Set the HP asm file suffix
Alex
2011-02-23 21:18:55 +01:00
Alex Neundorf f745220a32 Add support for ASm for the HP compiler.
Alex
2011-02-23 21:16:44 +01:00
Alex Neundorf 00735d4055 Add suport for ASM for the IBM XL compiler
Alex
2011-02-23 21:16:22 +01:00
Alex Neundorf d3e9e8a078 Add support for ASM for the SunPro compiler
Alex
2011-02-23 21:16:00 +01:00
Alex Neundorf 64e66ebdc8 Actually use CMAKE_ASM_COMPILER for asm, instead of CMAKE_C_COMPILER
Alex
2011-02-23 21:15:41 +01:00
Alex Neundorf 38f92bfbe1 Add ASM support for the Intel compiler
Alex
2011-02-23 21:15:18 +01:00
Brad King 761621645c Pass .def files directly to MinGW tools (#9997)
Commit 6a61a8a5 (Honor module .def files with MinGW tools, 2011-02-21)
set CMAKE_LINK_DEF_FILE_FLAG to "-Wl," to enable passing .def files to
the linker on MinGW.  However, older GNU tools in the MSYS shell do not
know how to translate "-Wl,/c/..." to "c:/..." and complain that the
file does not exist.  Instead set the flag to just "" which tells CMake
it can pass the file through the front-end with no special flag.
2011-02-23 11:04:17 -05:00
Modestas Vainius 7c5e412c4a Documentation: Fix a few typos (#11883)
W: cmake: manpage-has-errors-from-man usr/share/man/man1/cmake.1.gz 10029: warning [p 158, 13.5i]: can't break line
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz informations information
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz dependant dependent
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz prefered preferred
I: cmake: spelling-error-in-binary ./usr/bin/cmake prefered preferred
I: cmake: spelling-error-in-binary ./usr/bin/cpack prefered preferred
I: cmake: spelling-error-in-binary ./usr/bin/ctest prefered preferred
I: cmake-data: spelling-error-in-manpage usr/share/man/man1/cmakepolicies.1.gz prefered preferred
I: cmake-curses-gui: spelling-error-in-binary ./usr/bin/ccmake prefered preferred
I: cmake-qt-gui: spelling-error-in-binary ./usr/bin/cmake-gui prefered preferred
2011-02-22 17:24:51 -05:00
Brad King 62f816adde Merge topic 'qt4-fphsa'
7a1027a When checking find_package() components, special case qtmain.
4c1c358 FindQt4: Include builtin FindPackageHandleStandardArgs directly
43cb9b8 Change to use fphsa to check required variables and version.
2011-02-22 14:36:33 -05:00
Brad King 521d244531 Merge topic 'mingw-module-definition'
6a61a8a Honor module .def files with MinGW tools (#9997)
2011-02-22 14:33:04 -05:00
Brad King 59cfdd5c77 Merge topic 'qt4-macfind'
4167be0 Fix issues with find_path() for QtCore include dir on Mac.  Fixes 11868.
2011-02-22 14:33:00 -05:00
Brad King c5f27110ab Merge topic 'init-LDFLAGS-issue-11840'
3b77516 Fix linker flag initialization from LDFLAGS (#11840)
2011-02-22 14:32:22 -05:00
Brad King 15ff343d23 Merge topic 'fix-4564-make-test-alias'
816c9d1 CTest: Add alias for make test target (#4564)
2011-02-22 14:31:50 -05:00
Brad King 11f55fff8f Merge topic 'fix-10723-non-dev-xcode'
d421a43 Strip trailing space from xcode-select output (#10723)
2011-02-22 14:31:45 -05:00
Brad King 6e450ed7f0 Merge topic 'mpif77-workaround-o-c-order'
93f230e Pass -o after -c for Fortran to avoid mpif77 ordering bug
2011-02-22 14:31:40 -05:00
Brad King e0d0e879cf Merge topic 'fix-10150-mark-timeout-advanced'
b5e3692 CTest: Mark DART_TESTING_TIMEOUT as advanced (#10150)
2011-02-22 14:31:21 -05:00
Brad King 6a61a8a538 Honor module .def files with MinGW tools (#9997)
Since commit 024d05ad (Fix use of module .def files for MS tools,
2009-09-29) module .def files work for any platform that sets
CMAKE_LINK_DEF_FILE_FLAG correctly.  Set it in the Windows-GNU platform
information file to enable support with MinGW tools.  Also enable the
test added by commit 0db2c850 (Test use of module .def files for MS
tools, 2009-09-29) for MinGW and MSYS generators.
2011-02-21 14:34:54 -05:00
Clinton Stimpson 4167be052f Fix issues with find_path() for QtCore include dir on Mac. Fixes 11868. 2011-02-19 15:30:02 -07:00
Brad King 6720f97d3b Merge topic 'copyright-FindPerlLibs'
bff5772 FindPerlLibs: Add notice of copyright
2011-02-14 16:34:39 -05:00
Brad King 3b77516862 Fix linker flag initialization from LDFLAGS (#11840)
When initializing CMAKE_(EXE|SHARED|MODULE)_LINKER_FLAGS from LDFLAGS
and CMAKE_(EXE|SHARED|MODULE)_LINKER_FLAGS_INIT quote the whole string
in case both are set.

Reported-by: Daniel R. Gomez <gomez@teragram.com>
2011-02-11 08:54:38 -05:00
Andreas Schneider bff5772084 FindPerlLibs: Add notice of copyright
I'm the original author of this module. See bug #7898.
2011-02-10 13:46:35 -05:00
Clinton Stimpson 7a1027a1b6 When checking find_package() components, special case qtmain.
Its just a library on Windows only.
Fixes bug #11791.
2011-02-04 09:01:55 -05:00
David Cole 816c9d1aa1 CTest: Add alias for make test target (#4564)
Clients may define CTEST_TEST_TARGET_ALIAS in a project's
initial cache to get a target of another name that executes
the same underlying command as "make test"
2011-02-01 15:39:02 -05:00
David Cole d421a433a8 Strip trailing space from xcode-select output (#10723)
Otherwise, subsequent use of the output does not work
as intended.
2011-02-01 14:16:30 -05:00
Brad King 93f230e408 Pass -o after -c for Fortran to avoid mpif77 ordering bug
When running

  $ mpif77 -c example.f -o example.f.o

mpif77 recognizes -o and produces example.f.o, but when running

  $ mpif77 -o example.f.o -c example.f

the -o option is ignored and the object file is example.o.  Performing
the same experiment on the underlying compiler tool or with the mpicc
and mpiCC wrappers does not exhibit this behavior, so the issue appears
to be specific to mpif77.

Reported-by: Zhen Wang <zwang26@emory.edu>
2011-01-31 16:24:12 -05:00
Alex Neundorf 4b40d4297a Rework the way assembler is handled, use the C/CXX compiler by default
This commit changes the way how the assembler support works in cmake.
The language "ASM" now always uses the C/Cxx compiler instead
of the assembler directly. This fixes #8392, assembler files are
not preprocessed.
If one wants to use the assembler directly, the specific
assembler "dialect" has to be enabled. I.e. to get as/gas,
you have to use now ASM-ATT, the same way for ASM_MASM and ASM_NASM.

Implemented this now for gcc.
SunStudio, IBM, HP and Intel still todo.

Alex
2011-01-30 21:03:37 +01:00
Brad King 7c4e57c821 Merge topic 'FixParsingCompilerNameWithVersionNumber'
5883c51 Fix parsing of compiler name with a version number
bd57bc5 Strip trailing whitespace.
2011-01-28 14:17:21 -05:00
David Cole b5e3692299 CTest: Mark DART_TESTING_TIMEOUT as advanced (#10150)
Also, split a long line into two. And alphabetize the
variables mentioned in the mark_as_advanced call.
2011-01-28 06:32:27 -05:00
Brad King 182eb7c7ef Merge topic 'dev/strict-mode'
dd2f814 Merge branch 'dev/add_test-working-directory' into dev/strict-mode
949d32c Unwatch manual variables upon removal in cmake-gui
3939032 Unwatch manual variables upon removal in ccmake
8354413 Add method to unwatch a manual variable
8ed3c85 Give a better message for unused variables
729db48 Fix ArgumentExpansion test expected results
89c2544 Checking for a definition is a usage
5625dee Don't output to stderr in the GUI
ad25a96 Merge branch 'ImprovedDotSupport2' into dev/strict-mode
c128abe Merge branch 'AddCMAKE_CURRENT_LIST_DIR' into dev/strict-mode
9bcaff0 Merge branch 'cmake-guiRememberAdvancedCheckbox' into dev/strict-mode
544d0c3 Fix expected output for WarnUninitialized test
4e3bea4 Update expected messages to new format
8e8c9e4 Don't check at destruction for usage
668e005 Use cmake::IssueMessage for warnings
88cd4c1 Use 'CMake Warning' versus 'warning' for CDash
3c3b98d Initialize the class before setting warn flags
cf8b15a Ignore files under the CMakeFiles directory
fd50f06 Don't check for unused vars at configure time
447a04c Don't warn during configure when doing everything
b97ee21 Check for unused variables at the end of generate
c18c977 When checking for variables, specify a reason
3f1121f Use a long int since Line is a long as well
2507f93 Change the failure case string to 'Unexpected'
fe390a2 Add 'ArgumentExpansion' test
8dbb209 Wrong boolean value for CLI warnings
d4ee998 Hard-code the --no-warn-unused-cli flag
a267b99 Fix line lengths
82ed104 Flag that the directories have been set
5aa535b Add argument to arg parsing to not set directories
367e5c3 Revert "Revert "When calling CMake, set the args and the cache""
ab5d4e4 Revert "When calling CMake, set the args and the cache"
9b90040 When calling CMake, set the args and the cache
fe56002 Fix long lines for KWStyle
5d30cfc Set a watch on variables added through the gui
33c63b1 Add a method to put a watch for variables
535253f Initialize the warning variables earlier
cbb286c Fix the path detection to work for top-level
62be1f7 Initialize the usage stack earlier
c6e7fab Factor out the checks for unused variables
5e41ba8 When using the API, check for Add vs. Remove
dee1976 Fix typo in VariableUnusedViaUnset test
f231ce5 Remove old false positive avoidance code
a117e02 Revert "Add test for unused warnings at the end of scope"
2c82f2b Exempt CMAKE(CURRENT|PARENT)_LIST_FILE from usage
6d7d449 Ignore CLI warnings for ABI determination
7740a73 Only return local keys that are defined
bef3aee Use the API so that warnings can be tracked
05cb0f4 Check for unused variables in the dtor
91c4c99 Add test for unused warnings at the end of scope
ca90f67 Fix detection of unused variables when setting
f7438ca Add test for unused detection via setting it
995cfb0 Don't warn if the variable wasn't defined
aefc91d Add test for usage checks via unset
a8e97f8 Remove VarRemoved code since it's been superceded
59463ef Rework CheckVariableForUnused usage
f117423 Fix line lengths to be no more than 78
e49a935 Improve unused warning logic
e01e40c Mark ARGC, ARGV*, and ARGN as used
a17aff7 Ignore CMAKE_MATCH_* variables for usage
02a114d Add method to allow variables to be marked as used
a0b0d23 CMAKE_DO_TRY_COMPILE is no longer used
ae3eff3 Fix the path used for ignoring system warnings
056b441 Fix missing case for usage of a variable
980e048 Factor out checks for unused variables
83acb0a Remove now unused variables
3801463 Use built-ins for readability and maintainability
8b52015 Push the initialize and unused states when copying
439877f Be consistent with single and double quotes
4cf1706 Add documentation for check-system-vars
b74777f Fix the spelling of the flag for warn-unused-vars
b948120 Change logic of flag to turn off cli unused checks
f047a17 Add test for uninitialized variables
75bda38 Add tests for unused command line variables
300fc15 Fix detection of system files
d784e6a Run the unused variables check on the final pass
9efc057 VariableWatch is not available when bootstrapping
2e78224 Add a missing comma to the warning message
7499700 Add a flag to warn about system files
fff9f6d Rename flags again and use variablewatch for cli
786e269 Add warn-unused to the Qt interface
636e6c4 Default to marking things as used
4ff0340 Rename find-unused to warn-unused
d7999e9 Rename strict-mode to warn-uninitialized
e141bc9 Detect unused variables
d3e8eb5 Add flags to detect unused variables
f332e14 Complete strict-mode checks for uninitialized vars
52f9637 Add method to get the local scope variables
f794d58 Make --strict-mode option, and integrate with cmake-gui
48b5b85 Add a warning when variables are used uninitialized.
cd626ea For macros make sure the FilePath points to a valid pointer in the args.
2011-01-27 15:34:07 -05:00
Brad King dd2f81491e Merge branch 'dev/add_test-working-directory' into dev/strict-mode
Conflicts:
	Tests/CMakeLists.txt
2011-01-27 14:39:55 -05:00
Brad King 7e6a004659 Merge topic 'relative-CMAKE_USER_MAKE_RULES_OVERRIDE'
a146e03 Fix relative CMAKE_USER_MAKE_RULES_OVERRIDE (#11725)
2011-01-26 15:24:05 -05:00
Alex Neundorf 5883c5191e Fix parsing of compiler name with a version number
This fixes #11679, the toolchain prefix was not correctly detected
for arm-eabi-gcc-4.5.2

Alex
2011-01-26 20:52:34 +01:00
Alex Neundorf bd57bc5312 Strip trailing whitespace.
Alex
2011-01-26 20:51:25 +01:00
Brad King 4c1c358332 FindQt4: Include builtin FindPackageHandleStandardArgs directly
Apply to FindQt4 change from commit b0118402 (Use absolute path to
FindPackageHandleStandardArgs.cmake everywhere, 2010-09-28).
2011-01-20 11:46:32 -05:00
Brad King c4275592a8 Modules: Include builtin FindPackageHandleStandardArgs directly
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.
2011-01-20 10:56:49 -05:00
Brad King a146e03422 Fix relative CMAKE_USER_MAKE_RULES_OVERRIDE (#11725)
In commit 295b5b60 (Honor CMAKE_USER_MAKE_RULES_OVERRIDE in try_compile,
2010-06-29) we started passing the value of this variable when building
a try_compile project.  If the variable contains a relative path it must
be treated with respect to the file where it is first used.  Ensure that
the value is converted to a full path so that it is correctly referenced
in the try_compile projects.
2011-01-19 18:15:36 -05:00
Brad King 863c7dfd88 Merge topic 'fix-find-png-zlib'
30e19b7 Add new names for PNG and ZLIB libraries
2011-01-19 14:28:29 -05:00
Brad King d9fb64088b Merge topic 'fix-10031-add-freeglut'
efd1d9c Add freeglut as library name (#10031)
2011-01-19 14:28:26 -05:00
Brad King b9f9c90eaf Merge topic 'qt4-query-exec-process'
858fe0e Replace exec_program with execute_process for qmake queries.
2011-01-19 14:28:24 -05:00
Brad King ef1f9456aa Merge topic 'sco-compiler'
e60c8ec Factor SCO compiler info out of platform file (#11700)
db05da3 Recognize SCO UnixWare C/C++ compilers (#11700)
2011-01-19 14:28:19 -05:00
Brad King d0b4f13521 Merge topic 'fix-install-req-sys-libs'
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.
2011-01-19 14:03:15 -05:00
Brad King a104712d41 Merge topic 'python-modules-header'
23635ff Bug #11715 - generate header in the build tree.
2011-01-19 14:02:57 -05:00
Brad King ef27b9cd89 Merge topic 'doc-CheckSymbolExists-enum'
4995b26 Update CheckSymbolExists copyright year
840f9c0 Document CheckSymbolExists more clearly (#11685)
2011-01-19 14:02:38 -05:00
Brad King 3b900dbd09 Merge topic 'doc-CheckFunctionExists-clarify-issue-10044'
114c322 Document CheckFunctionExists more clearly (#10044)
2011-01-19 14:02:33 -05:00
Clinton Stimpson 858fe0ed41 Replace exec_program with execute_process for qmake queries. 2011-01-17 19:14:22 -07:00
Marcus D. Hanwell 23635ff1a0 Bug #11715 - generate header in the build tree.
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.
2011-01-17 15:29:01 -05:00
David Cole efd1d9c799 Add freeglut as library name (#10031)
Thanks to Thomas Sondergaard for the patch in the bug report.
2011-01-17 14:19:18 -05:00
Brad King 4995b267b7 Update CheckSymbolExists copyright year
Reflect that commit 840f9c05 (Document CheckSymbolExists more clearly,
2011-01-12) changed the file in 2011.
2011-01-17 14:10:55 -05:00
Brad King 114c3224a4 Document CheckFunctionExists more clearly (#10044)
State that the function need only be available at link time.  Refer to
CheckSymbolExists for verifying that a declaration exists.
2011-01-17 14:02:21 -05:00
Brad King e60c8ec6c7 Factor SCO compiler info out of platform file (#11700)
Move these flags out of the SCO_SV platform file so that other compilers
may be used on that platform without interference.
2011-01-17 09:57:17 -05:00
Brad King db05da35d2 Recognize SCO UnixWare C/C++ compilers (#11700)
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
2011-01-17 09:52:33 -05:00
Clinton Stimpson 43cb9b8276 Change to use fphsa to check required variables and version.
Also, set the required variables based on components, if specified.
Also, don't make finding uic required if not using QtGui.
2011-01-14 21:26:19 -07:00
David Cole 30e19b79dd Add new names for PNG and ZLIB libraries
Thanks to Pau Garcia i Quiles for the patch on the CMake
mailing list.
2011-01-14 12:28:10 -05:00
Brad King cabb6cd00e Document Check(C|CXX)SourceCompiles behavior more clearly (#11688)
Explicitly state up front that the macros try to link an executable and
that the source provided must define 'main'.
2011-01-14 07:36:59 -05:00
David Cole fa4a3b04d0 Add CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS variable
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()
2011-01-13 16:52:51 -05:00
David Cole fc144924a0 VS10: Fix problems with InstallRequiredSystemLibraries.
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...?)
2011-01-13 13:08:59 -05:00
Brad King 840f9c055c Document CheckSymbolExists more clearly (#11685)
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.
2011-01-12 08:58:19 -05:00
Brad King 28a0403c34 Merge topic 'resolve/python-versions/policy-CMP0017'
784d5ce Merge branch 'policy-CMP0017' into resolve/python-versions/policy-CMP0017
2d3594b Python additional version support, bug #10279.
2011-01-11 15:59:34 -05:00
Brad King 784d5ce0f8 Merge branch 'policy-CMP0017' into resolve/python-versions/policy-CMP0017
Conflicts:
	Modules/FindPythonInterp.cmake
2011-01-11 15:56:59 -05:00
Brad King 46ed6c65a8 Merge topic 'improve-findgit'
ed2b314 Add PATH_SUFFIXES for finding git.
2011-01-11 15:53:43 -05:00
Brad King ad543dcf09 Merge topic 'archive-rule-variables'
c2d73c9 Allow platform files to set large archive rules (#11674)
2011-01-11 15:53:06 -05:00
Brad King 9a81f0dd0c Merge topic 'ep-fix-substitutions'
d67a513 ExternalProject: Replace location tags in CMAKE_CACHE_ARGS
d7a87b5 Merge branch 'ep-log-output-under-vs' into ep-fix-substitutions
2011-01-11 15:52:36 -05:00
Brad King c39abc2411 Merge topic 'ep-log-output-under-vs'
44aff73 ExternalProject: Avoid bleed-through output when logging.
2011-01-11 15:52:30 -05:00
Brad King 764015c284 Merge topic 'policy-CMP0017'
ce28737 Remove usage of CMAKE_CURRENT_LIST_DIR now that we have CMP0017
7db8db5 Improve documentation and messages for the new CMP0017
db44848 Prefer files from CMAKE_ROOT when including from CMAKE_ROOT
1e69c6f Merge branch 'user-policy-defaults' into policy-CMP0017
65a0a2a Merge branch 'include-command-whitespace' into policy-CMP0017
2011-01-11 15:52:13 -05:00
Brad King f04bbdf1d4 Merge topic 'fix-install-reqd-sys-libs'
753b429 InstallRequiredSystemLibraries debug-only (#11141)
492cd84 Add variable for InstallRequiredSystemLibraries dir (#11140)
dd5c592 Fix incorrect variable documentation (#11127)
2011-01-11 15:51:35 -05:00
Brad King b8e5d7b49c Merge topic 'qt4-find-plugins'
e6bb8c7 Add support for using static/dynamic Qt plugins.
2011-01-11 15:48:44 -05:00
Brad King b524f864ca Merge topic 'fix-9148-cpack-nsis-installer-root'
5a9e8e7 CPack: Add CPACK_NSIS_INSTALL_ROOT variable (#9148)
2011-01-11 15:48:34 -05:00
David Cole 5a9e8e701e CPack: Add CPACK_NSIS_INSTALL_ROOT variable (#9148)
Control the root directory of the default directory presented to
the end user of an NSIS installer by a CPack variable.

Previously, the value used in the NSIS script was $PROGRAMFILES,
which is equivalent to the "ProgramFiles" environment variable.
That default value is still the same, but now a project may
override the value by setting this new variable.
2011-01-11 15:42:42 -05:00