Commit Graph

2223 Commits

Author SHA1 Message Date
David Cole 8d88de4b4a Fix issue with SDK not matching initial deployment target chosen by setting the MACOSX_DEPLOYMENT_TARGET environment variable. The problem was that we were setting the initial SDK value based on our own internal default value for deplyment target rather than the user's environment variable choice. The solution is to base the default value for the SDK on the deployment target variable after initially caching the deployment target... Every time I'm in this code I think I leave it cleaner, only to be proven otherwise. Let's give this one a whirl. Bleh. 2009-12-23 12:08:25 -05:00
Alexander Neundorf ffbae660cd fix logic of _QT4_ADJUST_LIB_VARS() wrt. release- and debug libraries
Now the case that both the release- and the debug-version of a library is
handled first, because otherwise we always ran into this branch, since the
debug-only and the release-only branch also set both variables.

Alex
2009-12-23 09:58:34 -05:00
Alexander Neundorf c424267cc1 -handle the REQUIRED and QUIET keywords in FindJNI.cmake, also set JNI_FOUND
Alex
2009-12-21 15:56:05 -05:00
Zach Mullen 7af553188e Added support for CTest awareness of the CDash version. This will help forward compatibility for both tools. Note that this changeset effectively makes the default to disable output compression. Now, to enable output compression, the CDASH_CTEST_VERSION must be explicity set to >= 1.6. Automated detection of the CDash version is the next step. 2009-12-21 12:27:04 -05:00
Alexander Neundorf a2c62d402c sync with KDE: sort the libs alphabetically
Alex
2009-12-20 10:34:13 -05:00
Alexander Neundorf 4740bf6b3e -add support for QtMultimedia and some sync with KDE
-the QtMultimedia module is new since Qt 4.6.0
-sort the doc entries alphabetically

Alex
2009-12-20 09:06:42 -05:00
Brad King 4ce7ffbfc5 FindHDF5: Fix Windows compile-line parsing
We modify the signature of _HDF5_parse_compile_line to pass the command
line variable name rather than the command line itself.  Otherwise the
CMake language MACRO implementation tries to parse the command line as
CMake syntax, which does not like backslashes.
2009-12-18 10:13:01 -05:00
Brad King c9b726c314 New CheckTypeSize for OS X Universal Binaries
We re-implement this module to support architecture-dependent type
sizes.  In the mixed-size case we generate C preprocessor code to select
the detected type size for each architecture.
2009-12-17 15:14:47 -05:00
Bill Hoffman 23c28adbf9 Fix for bug 9960, add support for MSVC10 runtime dlls. 2009-12-17 14:57:49 -05:00
Alexander Neundorf eb83c19789 -better support for Qt4 as frameworks
before this patch -F<framework> dir had to be added manually in some way
when using Qt4 installed as framework and when using FindQt4.cmake directly,
i.e. without UseQt4.cmake. With this patch the framework dir is
automatically added to QT_INCLUDE_DIR when Qt is installed as a framework.

Ok by Clinton, tested already in KDE by Mike Arthur.

Alex
2009-12-16 17:16:59 -05:00
David Cole d9f78eca72 Fix issue #10055 - add documentation for the CPack Mac OSX only Bundle generator.
Thanks to Tim Shead for the patch.
2009-12-15 17:36:56 -05:00
Clinton Stimpson 56ee3b43a9 BUG: Fix #10021 don't specify libraries Qt depends on unless Qt is static. 2009-12-15 16:16:45 -05:00
Brad King 0306080e6e FortranCInterface: Support '=' in language flags
The commit "FortranCInterface: Honor language flags in checks" taught
the FortranCInterface module to pass C and Fortran flags into its
detection and verification checks.  We improve on the change to allow
the '=' character in the language flags.  This requires passing the
cache entry type with the -D options.
2009-12-15 14:02:52 -05:00
David Cole 8a87458954 Fix issue #9782 - add documentation for variables used by CPack DragNDrop generators.
Thanks to Michael Wild for the patch.
2009-12-15 13:35:26 -05:00
Will Dicharry 7bc90c3edf Set value of HDF5_INCLUDE_DIR for backwards compatibility.
CMake 2.8 was released with the FindHDF5 module setting HDF5_INCLUDE_DIR rather
than the correct plural HDF5_INCLUDE_DIRS. Since this went into a release, it is
now necessary to set the singular for backwards compatibility.
2009-12-15 13:26:44 -05:00
David Cole ece03cadc4 Fix issue #9011 - eliminate unnecessary uses of CPACK_PACKAGE_INSTALL_DIRECTORY.
Replace them with CPACK_PACKAGE_NAME. The registry keys involved in this commit are used by Windows to track things in the Add/Remove programs portion of the Control Panel. With '\' characters in the keyname, the calls do not do what they are intended to do and the installed program never shows up in the control panel view. (Details noted in the issue itself.) Thanks to 'killerfox' for the patch.
2009-12-15 13:12:05 -05:00
David Cole a830786c44 Fix issues #9959 and #9898 - do not set CMAKE_OSX_DEPLOYMENT_TARGET if CMAKE_OSX_SYSROOT is set.
Default to "" for CMAKE_OSX_DEPLOYMENT_TARGET if CMAKE_OSX_SYSROOT is set. Also, add new error message to detect the case where there is a deployment target, but no SDK has been set. Fix args to STRING REGEX call so that it works even if _sdk_path variable is empty inside sanity check function.
2009-12-15 11:10:15 -05:00
Marcus Hanwell e4ebb49717 Added a second call to find_library to find the static library.
When there is no shared object to link to a second call to find library is
necessary to find the static Python library. Fixes an issue raised on the CMake
mailing list, and it should be included in the next CMake patch release.
2009-12-14 14:15:31 -05:00
Brad King 126c93cdda Provide macro to force Fortran compiler
We add the macro CMAKE_FORCE_Fortran_COMPILER to the cross-compiling
helper module CMakeForceCompiler.cmake so that toolchain files can force
a Fortran compiler as well as C and C++ compilers.  See issue #10032.
2009-12-14 11:40:23 -05:00
David Cole 490009c016 Fix issue #9764 - add TIMEOUT arg to ExternalProject_Add so that callers have explicit control over the amount of time they are willing to wait for a download step. Default to no timeout, which means just run download for however long it takes. 2009-12-11 15:04:55 -05:00
David Cole e28941b6d7 Consider a windows directory named syswow* a 'system' directory for GetPrerequisites.cmake purposes. 2009-12-11 14:42:26 -05:00
Brad King 55275e017d New decision method to enable Fortran tests
CMake does not enable Fortran for its own build, but it needs to find a
Fortran compiler to know if it is possible to enable Fortran tests.
Previously we searched for a hard-coded list of Fortran compilers which
was duplicated from the CMakeDetermineFortranCompiler.cmake module.  We
now run CMake on a small test project that enables the Fortran language
and reports the compiler it found.  This represents a more realistic
check of whether the Fortran tests will be able to find a compiler.
2009-12-10 12:16:38 -05:00
Alexander Neundorf e5efd87b31 Fix parallel HDF5 detection (#9982)
Alex
2009-12-09 15:17:55 -05:00
Mathieu Malaterre f1d4f951d6 Minor typo in comments 2009-12-08 08:59:25 -05:00
Brad King 700da5f266 Document usage of the include(CTest) module
Previously this module gave only very brief documentation.  We extend
the module's documentation to describe CTestConfig.cmake, interaction
with dashboard scripts, and the CTEST_USE_LAUNCHERS option.
2009-12-04 13:44:19 -05:00
David Cole 0b38bb4c53 Fix issue #2336 - honor the -C arg to ctest. Honor it for all stages of running -D dashboards from the command line and running ctest_configure, ctest_build and ctest_test commands in -S scripts. Also, allow a script to change it by setting the CTEST_CONFIGURATION_TYPE variable: allows for multiple configuration build/test cycles within one script. Add a new signature for the cmake command build_command that accepts CONFIGURATION as one argument. The original build_command signature is still there, but now marked as deprecated in the documentation. Of course... also add CTestConfig tests to verify that -C is honored for -D dashboards and -S scripts. 2009-12-04 12:09:01 -05:00
Brad King af14f1f2c3 Remove GNU-specific flags from Linux.cmake
We remove the shared library compile/link flags "-fPIC" and "-shared"
because they are not provided by all compilers on Linux.  This allows us
to drop code from the Linux-XL-*.cmake files that erases the bad flags.
All other supported compilers already provide their correct flags for
Linux in their own platform information files.
2009-12-04 10:22:30 -05:00
Brad King c106cb2e2f Generalize support for Portland Group Compiler
We factor flags from Platform/Linux-PGI-Fortran.cmake into language
independent helper modules

  Compiler/PGI.cmake
  Platform/Linux-PGI.cmake

and invoke the macros from

  Compiler/PGI-<lang>.cmake
  Platform/Linux-PGI-<lang>.cmake

This enables general support for the PGI compilers.
2009-12-04 10:21:57 -05:00
Brad King 2d948e94bf Remove duplicate info from Linux SunPro info files
The CMAKE_DL_LIBS variable is set platform-wide by Linux.cmake so we do
not need to duplicate it in Linux-SunPro-<lang>.cmake files.
2009-12-04 09:20:59 -05:00
Brad King e208397976 Consolidate Linux Intel compiler information
We consolidate duplicate code from Platform/Linux-Intel-<lang>.cmake
files into a macro defined in Platform/Linux-Intel.cmake.
2009-12-04 09:20:24 -05:00
Brad King 77ded39645 Fix GNU C and Fortran flags on SunOS
The commit "Split GNU compiler information files" intended to move GNU
flags from the platform-wide Platform/SunOS.cmake module into

  Platform/SunOS-GNU-<lang>.cmake

using a helper module Platform/SunOS-GNU.cmake to consolidate flags.
However, it accidentally put Fortran flags in the C language module and
left out the Fortran module altogether.  This fixes those mistakes.
2009-12-04 08:51:46 -05:00
Brad King 3e37ca8ecc Move GNU flags from SunOS.cmake to SunOS-GNU.cmake
The GNU-specific link-type flags do not belong in the platform-wide
file.
2009-12-02 16:58:52 -05:00
Brad King 4d72006bd6 Reduce duplication in Platform/<os>.cmake files
Several platform-wide linker flag variables are defined in
Modules/Platform/<os>.cmake files for C and then copied by the
Modules/CMake<lang>Information.cmake file for each language.
We now use this approach for the variables

  CMAKE_EXE_EXPORTS_${lang}_FLAG
  CMAKE_SHARED_LIBRARY_SONAME_${lang}_FLAG
  CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS

to avoid duplication for multiple languages in each platform file.
2009-12-02 15:17:53 -05:00
Brad King 9daa4a6c3f Remove CMAKE_SHARED_MODULE_RUNTIME_${lang}_FLAG
This platform configuration variable is unused.  Modules are built using
the value of CMAKE_SHARED_LIBRARY_RUNTIME_${lang}_FLAG.
2009-12-02 15:17:32 -05:00
Brad King 58d6057a52 Fix OS X dylib and module GNU flags
The commit "Split GNU compiler information files" broke the settings of

  CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS
  CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS

and started using just "-shared" for them.  This worked when tested on newer
Mac machines, but older ones really need "-dynamiclib" and "-bundle" (which are
the documented flags anyway).
2009-12-02 15:09:03 -05:00
Brad King aff3147917 Modernize GNU compiler info on Windows
This moves GNU compiler info on Windows into new-style modules

  Platform/Windows-GNU-<lang>.cmake

using language-independent helper module

  Platform/Windows-GNU.cmake

to define macros consolidating the information.
2009-12-02 11:27:59 -05:00
Brad King e28c16b482 Split GNU compiler information files
This moves GNU compiler flags into new-style modules

  Compiler/GNU-<lang>.cmake
  Platform/<os>-GNU-<lang>.cmake

We use language-independent helper modules

  Compiler/GNU.cmake
  Platform/<os>-GNU.cmake

to define macros consolidating the information.
2009-12-02 09:52:00 -05:00
Brad King 27873a48d7 Use one arch for 1.4-compatible check_type_size
The CMakeBackwardCompatibilityC module provides some try-compile results
that were automatically provided by CMake 1.4.  When performing the
checks for OS X universal binaries we just pick one architecture to get
through the checks without error.  Since CMake 1.4 did not support any
universal binaries, projects that want them should not depend on this
compatibility module anyway.
2009-12-01 17:35:39 -05:00
James Bigler bbfcb198f8 Fix #9970: Use execute_process instead of deprecated exec_program. 2009-12-01 16:28:26 -05:00
Brad King 1f06c33f8e Drop -rdynamic from Linux build rules
This is a GNU-specific option that should not be specified for all
compilers on Linux.  It tells the GNU compiler to pass -export-dynamic
to the linker to export symbols from executables for use by plugins.
Since we provide the ENABLE_EXPORTS target property to do the same thing
in a cross-platform way, there is no need to pass -rdynamic always.

Since the option is not useful for GNU tools and breaks other tools on
Linux we simply remove it from CMAKE_SHARED_LIBRARY_LINK_<lang>_FLAGS.
This also allows us to stop setting the variable in other Linux compiler
files just to erase the bad flag.

See issue #9985.
2009-12-01 14:25:21 -05:00
James Bigler c9235c0159 Don't allow -G -M on CUDA versions less than 3.0. 2009-11-30 17:05:18 -05:00
Brad King 4f43c1f276 Singly-quote target names for Watcom linker
The Watcom tools do their own command-line parsing and do not accept
double-quotes.  Instead we single-quote the target output name when
invoking wlink and other Watcom tools.  This fixes support for spaces in
the target output directory path when it is not under the build tree.
2009-11-30 11:16:24 -05:00
Eric Noulard 5b0bbd6c33 CPackRPM:: Fix bug on Open SuSE 11.2 coming from initial fix of bug8972
Eric
2009-11-28 09:57:59 -05:00
Alexander Neundorf 1d9cb15513 also provide QT_DESIGNER_EXECUTABLE and QT_LINGUIST_EXECUTABLE
Alex
2009-11-23 17:53:50 -05:00
Eric Noulard 03a8e912cb CPackRPM: do not forget to include installed symlinks (bug 9927)
Eric
2009-11-22 12:52:47 -05:00
Alexander Neundorf a10198c54e don't use deprecated UsePkgConfig.cmake file in FindLibXslt.cmake, some cosmetics
-use find_package(PkgConfig) instead of include(UsePkgConfig)
-remove the "if already cached make silent" logic, this is already handled by find_package_handle_standard_args()
-remove the if(WIN32) around pkg-config, it shouldn't be necessary

Alex
2009-11-22 05:51:38 -05:00
Bill Hoffman ceac346af6 Fix the build for non-MS compilers. 2009-11-21 09:39:30 -05:00
Bill Hoffman 4430bccc70 Change the way 32/64 bit compiles are detected with MSVC and intel makefile builds. Use the platform ID preprocessor approach. 2009-11-19 21:58:42 -05:00
Brad King 1699836b06 FortranCInterface: Honor language flags in checks
We pass CMAKE_C_FLAGS, CMAKE_CXX_FLAGS, and CMAKE_Fortran_FLAGS through
try_compile() for the FortranCInterface Detect and Verify projects.
This honors user-specified compiler flags for each language, thus
supporting flags that affect the Fortran mangling.
2009-11-19 17:42:48 -05:00
Mathieu Malaterre 7c9e5ba37f Fix FindOpenSSL on mingw. This has been reported to be working by ctrlaltca libero.it on cmake mailing list. 2009-11-19 04:02:36 -05:00