Commit Graph

2580 Commits

Author SHA1 Message Date
Brad King 7c9f39d4ba Merge branch 'fix-issue-10346' 2010-06-15 14:02:11 -04:00
Brad King d9b2da139d Merge branch 'mingw-response-files' 2010-06-15 13:58:58 -04:00
James Bigler 1d5554201f CUDA_VERSION variable passed to REGEX needs quotes to work when not defined. 2010-06-15 10:03:40 -06:00
Mathieu Malaterre b3cb794fec Cleanup FindOpenSSL. Add support for win64 installation. 2010-06-15 10:33:58 +02:00
Mathieu Malaterre b9e227af84 Cleanup FindDCMTK (using foreach). Fix linking on win32 static libs. 2010-06-15 09:51:14 +02:00
Brad King c592df8377 Tru64: Use full-path include directives in Makefiles (#10569)
Tru64's make(1) resolves relative paths in "include" directives with
respect to the includer.  This is inconsistent with all other known make
tools.  Note that this make tool treats the path literally so we cannot
use our standard FULL path code which escapes spaces.  Instead qualify
the paths with $(CMAKE_BINARY_DIR) to avoid the problem.
2010-06-14 13:06:39 -04:00
Clinton Stimpson 1f608718fc Remove macro for querying qmake for qmake variables.
Remove last place for querying qmake values.
Also removed internal macro to support querying qmake.
Depends on findthreads-irix topic.
2010-06-12 13:00:08 -06:00
Clinton Stimpson d09664a4d4 Support pthreads on irix. 2010-06-11 18:10:38 -06:00
David Cole cd3d60b8b5 Fix issue #10346. Error if SOURCE_DIR is empty.
See http://public.kitware.com/Bug/view.php?id=10346.
The proposed patch for the issue could not be applied as is
because the SOURCE_DIR always exists for an ExternalProject_Add
call by the time we get to the place to emit the potential error.

The fix is to emit the error only if the source dir is empty.
By which, I mean devoid of files and subdirectories. If
SOURCE_DIR is used by itself, without any DOWNLOAD_COMMAND
or repository info, then it implies that the SOURCE_DIR is ready
to build as-is without need for a download step. Clearly, if it
is empty, then it is not ready to build as is. So complain if
the SOURCE_DIR is empty.
2010-06-09 18:22:58 -04:00
Brad King 2eae651acc ctest_update: Support custom Git update command
Define CTest configuration variable CTEST_GIT_UPDATE_CUSTOM to set a
custom command line for updating Git-managed source trees.
2010-06-08 16:12:28 -04:00
Brad King 6f9bb934d4 Merge branch 'sunCC-5.11-rpath-link' 2010-06-08 09:23:11 -04:00
Brad King 6cf1ccd632 Merge branch 'per-config-link-flags' 2010-06-07 14:36:28 -04:00
Brad King ec66c9db8c Merge branch 'cygwin-exe-export-all' 2010-06-07 14:30:21 -04:00
Brad King 0d07e4379e Merge branch 'improve-file-download'
Conflicts:
	Modules/ExternalProject.cmake
2010-06-07 14:26:24 -04:00
Brad King a03e85f13c Merge branch 'add-git-to-ExternalProject'
Conflicts:
	Modules/ExternalProject.cmake
2010-06-07 14:23:45 -04:00
Brad King 79f01660c9 Merge branch 'more-formats-in-ExternalProject' 2010-06-07 14:22:26 -04:00
Brad King 33b59ee8dd Merge branch 'use-rename-not-copy-ExternalProject' 2010-06-07 14:22:02 -04:00
Brad King 2bc82e07bd Merge branch 'ExternalProject-fixes' 2010-06-07 14:21:49 -04:00
Brad King ba38f0925c Merge branch 'add-svn-user-to-ExternalProject' 2010-06-07 14:21:43 -04:00
Brad King 693f98c105 Fix rpath-link flag for SunPro C++ 5.11 on Linux
Commit 82c081ba (Fix rpath-link flag for SunPro C++ on Linux,
2009-07-13) taught CMake to pass '-rpath-link' because SunPro C++ 5.9
does not support '-Wl,'.  Now SunPro C++ 5.11 does not recognize the
option without using '-Wl,'.  Detect whether to use '-Wl,' based on the
output of "sunCC -flags".
2010-06-07 10:15:58 -04:00
David Cole 29383b4b85 Add FindGit module.
Use it from ExternalProject and the ExternalProject test's
CMakeLists file rather than having duplicate find_program calls.
Add logic so that we do not try to use *.cmd variants of git
programs when using the MSYS Makefiles generator. Should fix
the last remaining dashboard issue with the new ExternalProject
git support additions.

Also, correct minor problem regarding placement of the local git
repo during test execution. On clean builds, it was being placed
incorrectly because of the ../.. relative reference. Use an absolute
path to place the local git repo in the proper directory, and only
use the relative reference when referring to it.
2010-06-03 17:30:07 -04:00
Zach Mullen 082c87e528 Cross-platform fixes for checksum/retry code 2010-06-03 13:27:26 -04:00
Zach Mullen e525649a4e Checksums on CTest submit files, and retry timed out submissions. 2010-06-03 10:34:34 -04:00
David Cole 670e16af2d Add git support to ExternalProject.
Requires at least version 1.6.5 of a git client for
git submodule update --recursive use.
2010-06-02 16:28:04 -04:00
Brad King 9622fe5e9a Watcom: Use LINK_FLAGS and STATIC_LIBRARY_FLAGS
Add the <LINK_FLAGS> rule variable in Watcom command lines.
2010-06-01 14:40:28 -04:00
David Cole 2deba1b911 Add .zip and .tar.bz2 extraction to ExternalProject.
Add archives of these file types and add to the test
cases covered in the ExternalProject test.

Also add an "Example" directory in the Tests/ExternalProject
directory containing the canonical simplest example of
ExternalProject usage.
2010-05-31 14:30:22 -04:00
Yaakov Selkowitz cd3a4f0025 Cygwin: Export all symbols with ENABLE_EXPORTS
The ENABLE_EXPORTS property exports all symbols from executables on
UNIX-like platforms, typically for use by plugins.  Honor this behavior
on Cygwin.  See issue #10122.
2010-05-27 14:41:38 -04:00
David Cole f67139ae6f Improve FILE(DOWNLOAD) and ExternalProject.
Improve FILE(DOWNLOAD ...):

- Add percent complete progress output to the FILE DOWNLOAD
  command. This progress output is off by default to
  preserve existing behavior. To turn it on, pass
  SHOW_PROGRESS as an argument.

- Add EXPECTED_MD5 argument. Verify that the downloaded
  file has the expected md5 sum after download is complete.

- Add documentation for SHOW_PROGRESS and EXPECTED_MD5.

  When the destination file exists already and has the
  expected md5 sum, then do not bother re-downloading
  the file. ("Short circuit" return.)

  Also, add a test that checks for the status output
  indicating that the short circuit behavior is actually
  occurring. Use a binary file for the test so that the
  md5 sum is guaranteed to be the same on all platforms
  regardless of "shifting text file line ending" issues.

Improve ExternalProject:

- Add argument URL_MD5.

- Add verify step that compares md5 sum of .tar.gz file
  before extracting it.

- Add md5 check to download step, too, to prevent
  unnecessary downloads.

- Emit a warning message when a file is not verified.
  Indicate that the file may be corrupt or that no
  checksum was specified.
2010-05-27 12:21:56 -04:00
David Cole f5e8ce522e Use RENAME, not COPY, to extract .tar.gz files.
Use ABSOLUTE file name for the RENAME operation.
  (Thanks to Marcus for figuring out that it doesn't
   work on Linux without the ABSOLUTE bit.)
2010-05-26 17:42:56 -04:00
David Cole ea6260cb18 Fix issue #10258: re-configure if args change.
Fixes issue http://public.kitware.com/Bug/view.php?id=10258
Also, fix complaint that DOWNLOAD_COMMAND cannot contain arguments
consisting entirely of upper case letters. It validly does when,
for example, you construct a custom cvs command line and the module
name is all upper case, like VTK.
2010-05-26 15:38:41 -04:00
David Cole 672d9ba78c Add svn user name and password to ExternalProject.
Thanks to JCFR for the leg work.
2010-05-26 14:50:19 -04:00
Michael Wild 51cc86167b Improve documentation of GetPrerequisites.cmake
Put the function documentation into the header-comment, improve
formatting and list the user-relevant functions first.

Signed-off-by: Michael Wild <themiwi@users.sourceforge.net>
2010-05-23 14:38:21 +02:00
Michael Wild f811470a96 Improve documentation of BundleUtilities.cmake
Put the function documentation into the header-comment, improve
formatting and list the user-relevant functions first.

Signed-off-by: Michael Wild <themiwi@users.sourceforge.net>
2010-05-23 14:38:20 +02:00
Brad King 571dc74891 Recognize Clang C and C++ compilers (see #10693)
Map to the platform and compiler information for GNU because the
compilers are command-line compatible for common operations.  Later we
can add Clang-specific features as necessary.  We honor the preferred
capitalization is "Clang", not the common mis-spelling "CLang".
2010-05-17 14:11:20 -04:00
Kovarththanan Rajaratnam 44e6467015 FindZLIB: make sure zlib.h exists before reading it 2010-05-13 06:34:33 +02:00
James Bigler 0d30e3fe91 Fixed: CUDA_VERSION_MAJOR/MINOR now computed after first run.
CUDA_VERSION_MAJOR and CUDA_VERSION_MINOR were only computed when CUDA_VERSION was first
computed.  Subsequent runs of FindCUDA would not have CUDA_VERSION_MAJOR/MINOR set.  We
now extract the major and minor versions from the CUDA_VERSION cache variable every run.
2010-05-12 16:38:51 -06:00
Alex Neundorf bca561ee46 -make CMAKE_ASM_FLAGS_INIT and friends work (#10577)
Alex
2010-05-12 22:04:31 +02:00
Alex Neundorf 08b56ae3be -make CMAKE_ASM_FLAGS_INIT and friends work (#10577)
Alex
2010-05-12 22:04:31 +02:00
Mathieu Malaterre a9a2af19d4 BUG: 0009840 Fix case when only Java is available by implementing COMP Runtime 2010-05-11 21:43:32 +02:00
Mathieu Malaterre 0d88e19fef BUG: 0009840 Fix case when only Java is available by implementing COMP Runtime 2010-05-11 21:43:32 +02:00
Bill Hoffman ef6b505caa Add GITCommand key value pair. 2010-05-11 09:29:55 -04:00
Bill Hoffman 83b00e00e2 Add GITCommand key value pair. 2010-05-11 09:29:55 -04:00
Alex Neundorf 50506090c8 -use the HINTS keyword for finding FindKDE4Internal.cmake
Alex
2010-05-11 00:32:27 +02:00
Alex Neundorf a8fd6e7180 -use the HINTS keyword for finding FindKDE4Internal.cmake
Alex
2010-05-11 00:32:27 +02:00
Miguel A. Figueroa-Villanueva 601ee1f735 BUG #10209: Fixed FindwxWidget CXX flags parsing error.
Was not removing definition flags (-D...) from cxx flags,
when the definition flag was last in the list returned from
wx-config.

--HG--
extra : rebase_source : 3452c52b92717f181e902abef38c1e2718ce3b27
2010-05-09 13:27:58 -04:00
Miguel A. Figueroa-Villanueva f90bdaf38e BUG #10209: Fixed FindwxWidget CXX flags parsing error.
Was not removing definition flags (-D...) from cxx flags,
when the definition flag was last in the list returned from
wx-config.

--HG--
extra : rebase_source : 3452c52b92717f181e902abef38c1e2718ce3b27
2010-05-09 13:27:58 -04:00
Alex Neundorf cdc484e4a6 -use find_package_handle_standard_args() in FindOpenAL (#9496)
Alex
2010-05-09 11:07:33 +02:00
Alex Neundorf af3a288e55 -add QUIET keyword to pkgconfig macros
Synced from KDE svn: pkg_check_modules() and pkg_search_module() now
both support a QUIET keyword. When given, no messages will be printed (except the REQUIRED ones)

This also fixes #10469 (confusing output of FindLibXml2.cmake)

Alex
2010-05-08 10:36:42 +02:00
Alex Neundorf edb0fb2207 -add support for QtMultimedia in UseQt4.cmake (#10675)
Alex
2010-05-06 21:12:46 +02:00
Brad King a443308c37 Load compiler information after configuring it
After configuring CMakeFiles/CMake<lang>Compiler.cmake in the build tree
the second time (to store ABI information), include it immediately.
This allows any logic and settings in the compiler information files to
be used without duplicating it in CMakeDetermineCompilerABI.cmake.

The change in commit "Use Fortran ABI detection results conservatively"
(2010-05-05) needs this to use the same logic to set CMAKE_SIZEOF_VOID_P
during first and later runs of CMake.
2010-05-06 11:26:49 -04:00
Brad King 0457d53151 Use Fortran ABI detection results conservatively
We set CMAKE_Fortran_SIZEOF_DATA_PTR in the Fortran compiler information
file after detecting the compiler ABI.  However, since Fortran does not
really have pointers, the preprocessor-based detection is unreliable.
The result is needed to set CMAKE_SIZEOF_VOID_P only for Fortran-only
projects because the value can come from C or C++ compilers otherwise.
Therefore when CMAKE_SIZEOF_VOID_P is available from another language we
should defer to it.
2010-05-05 17:46:29 -04:00
David Cole e0acb6ca5f Fix Windows-cl.cmake so that at most one MSVC** variable is defined.
The expectation of users of the MSVC60, MSVC70, MSVC71, MSVC80, MSVC90
and the new MSVC10 variables is that at most one of them will be set
for any given build tree. This change enforces that expectation for
build trees using Makefile generators. It also fixes the one mismatch
in that expectation to be found in the Visual Studio generator world:
previously, the VS 7.1 generator would set *both* MSVC70 and MSVC71;
now, it only sets MSVC71.

With these changes, user expectations are now met, and the recently
introduced CheckCompilerRelatedVariables test should pass everywhere.
2010-05-05 17:08:06 -04:00
Bill Hoffman 1d64fa884e Fix FindCurses.cmake for new cygwin releases. 2010-05-04 11:54:55 -04:00
Bill Hoffman 5fd87f6d1a Fix for bug #10670, add another location to find MSBuild. 2010-05-04 10:44:09 -04:00
David Cole 2938263636 Fix missing set of MSVC10 and add CheckCompilerRelatedVariables test. 2010-04-30 00:46:24 -04:00
C. Bergström 36d850b87e Detect PathScale Fortran compiler tools
Include names pathf(90|95|2003) in the search for a Fortran compiler.
Also associate the names with PathScale for the vendor-specific search.
2010-04-26 13:31:52 -04:00
Bill Hoffman 0da537d167 Do not error out if the java version is not found, if java is not required. 2010-04-25 16:05:21 -04:00
Alex Neundorf 0dbd6e8e16 -add more names for libpng, so it also support libpng 1.4 on Windows (#10551)
Alex
2010-04-19 18:32:10 +02:00
Kovarththanan Rajaratnam 272308a406 FindDart: use find_package_handle_standard_args() 2010-04-18 09:27:31 +02:00
Kovarththanan Rajaratnam da4388045e FindDart: mark DART_ROOT as advanced 2010-04-18 09:27:30 +02:00
Kovarththanan Rajaratnam 068fbd17a3 FindGLU: add deprecation message 2010-04-18 09:27:30 +02:00
Kovarththanan Rajaratnam 932d08adb8 FindGCCXML: document variables 2010-04-18 09:27:29 +02:00
Kovarththanan Rajaratnam d359a72e79 FindGCCXML: mark executable as advanced 2010-04-18 09:27:28 +02:00
Kovarththanan Rajaratnam 3ca4749558 FindLibXslt: move include statement + misc whitespace cleanup 2010-04-17 11:10:15 +02:00
Kovarththanan Rajaratnam 293d8aee07 FindAVIFile: use find_package_handle_standard_args() 2010-04-17 11:10:09 +02:00
Kovarththanan Rajaratnam 172e93bd96 FindPhysFS: use find_package_handle_standard_args() 2010-04-17 11:09:45 +02:00
Kovarththanan Rajaratnam 9629443616 FindQuickTime: use find_package_handle_standard_args() 2010-04-17 11:07:32 +02:00
Kovarththanan Rajaratnam 5abed16cc2 FindZLIB: only set INCLUDE_DIRECTORIES/LIBRARIES if zlib is found 2010-04-17 09:56:00 +02:00
Kovarththanan Rajaratnam 7c9e72ad23 FindLibXml2: move include statement 2010-04-17 08:31:26 +02:00
Kovarththanan Rajaratnam db3134d2a1 Make VERBOSE_FLAG appear as first statement for consistency 2010-04-17 07:49:21 +02:00
Bill Hoffman 6202d9612c Fix support of VS Express 10, but looking for MSBuild in the right place. 2010-04-16 12:48:23 -04:00
Kovarththanan Rajaratnam bbd9392bc3 FindMPEG: mark variables in cache as advanced 2010-04-16 12:03:02 +02:00
Kovarththanan Rajaratnam d4a9ce31ba FindMPEG: also check if MPEG_vo_LIBRARY is valid 2010-04-16 11:26:25 +02:00
Kovarththanan Rajaratnam d62d1fd73d FindEXPAT: else() not needed 2010-04-16 11:04:23 +02:00
Kovarththanan Rajaratnam d5b85448eb FindJasper: don't put JASPER_LIBRARIES into cache
This means that the user no longer sees this value _but_ this is backwards compatible because setting JASPER_LIBRARIES had no effect previously because we would override it using set()
2010-04-16 11:01:05 +02:00
Kovarththanan Rajaratnam 8981fa35d8 FindJasper: don't set JASPER_LIBRARIES twice 2010-04-16 10:45:32 +02:00
Kovarththanan Rajaratnam 0f57a51f75 FindJasper: no need to set QUIETLY explicitly 2010-04-16 10:38:15 +02:00
Kovarththanan Rajaratnam 1f8a67b2ee FindASPELL: no need to set QUIETLY explicitly 2010-04-16 10:30:33 +02:00
Kovarththanan Rajaratnam 32a3b1fb40 FindHSPELL: capitalize Hspell properly 2010-04-16 10:26:31 +02:00
Kovarththanan Rajaratnam 810d9a30ef FindHSPELL: add version support 2010-04-16 10:25:02 +02:00
Kovarththanan Rajaratnam 99313f4fe9 FindHSPELL: no need to set QUIETLY explicitly 2010-04-16 10:09:07 +02:00
Alex Neundorf d827b9f21d -add basic search directories for the "Generic" platform
As reported on the mailing list, find_path/file/library/program() basically don't work
at all if CMAKE_FIND_ROOT_PATH is set and searching in the host system directories
is disabled. This patch adds /include, /lib and /bin to the search directories, so they
will be appended to CMAKE_FIND_ROOT_PATH so this will work for the "Generic" platform (embedded
systems without OS)

Alex
2010-04-14 22:09:19 +02:00
Kovarththanan Rajaratnam 4d6e0f39c2 FindSubversion: simplify using FindPackageHandleStandardArgs() 2010-04-11 20:40:02 +02:00
Kovarththanan Rajaratnam 44f631e6df FindBZip2: no need to set QUIETLY explicitly 2010-04-11 11:31:48 +02:00
Kovarththanan Rajaratnam c70e0aa3eb FindBZip2: remove BZIP2_DEFINITIONS from doc (it's not referenced) 2010-04-11 11:31:48 +02:00
Kovarththanan Rajaratnam 79442f8045 FindZLIB: add support for version handling (fixes #5588)
This change depends on the fix for #9414 which should land very soon.
2010-04-11 10:55:51 +02:00
Kovarththanan Rajaratnam 001efa5961 FindZLIB: add support for GnuWin32 (fixes #5588) 2010-04-11 10:55:50 +02:00
Kovarththanan Rajaratnam 5ea4992621 FindZLIB: FindPackageHandleStandardArgs already contains the quiet handling 2010-04-11 10:55:50 +02:00
Alex Neundorf 981c7f5a5b -check for the ARM ABI/EABI compiler ABI for the GNU compilers
The names are:
EABI: "ELF ARMEABI"
non-EABI: "ELF ARM"

Alex
2010-04-11 00:15:23 +02:00
Alex Neundorf f99771ce0a -revert the previous unintended commit
Alex
2010-04-10 23:49:09 +02:00
Alex Neundorf 8d907e298b -no change, don't know why git wants to commit something
(I accidentially removed ExternalProject.cmake from git by doing
mv ExternalProject.cmake ExternalProject.cmake.save
git checkout master
which I hoped would basically do a revert as it does with svn and cvs, but it
deleted the file from git)

Alex
2010-04-10 23:49:09 +02:00
Eric NOULARD fcdbe001ea CPackRPM:: Fix bug #10363, specify compression type in RPM spec
This is a feature request
--Eric
2010-04-10 11:23:01 +02:00
Kovarththanan Rajaratnam f233a9b3af Remove spurious tabs 2010-04-09 22:02:16 +02:00
Clinton Stimpson c94303fcac Revert "Include relative path in generated qrc and uic files. Fixes #10413."
This reverts commit 108090fde9.
2010-04-08 16:39:15 -06:00
Chuck Atkins e750761857 OpenBSD: Work-around static/runtime linker inconsistency
Detect the runtime linker's search path and add to the compile time
linker's search path.  This is needed because OpenBSD's static linker
does not search for shared library dependencies in the same places as
the runtime linker.
2010-03-26 09:33:28 -04:00
Alex Neundorf 1cad103db1 it's CMAKE_COMPILER_IS_GNUCC, not CMAKE_COMPILER_IS_GNUGCC
Patch from Brad Hards <bradh AT frogmouth DOT net>

Alex
2010-03-25 23:19:59 +01:00
Bill Hoffman 570ceeb4a4 Teach CMake how to work with G95 on mingw. 2010-03-23 11:32:40 -04:00
Clinton Stimpson 108090fde9 Include relative path in generated qrc and uic files. Fixes #10413. 2010-03-17 16:33:03 -06:00
Clinton Stimpson 61ad5242b7 Change to use FindX11.cmake. Should fix #9929. 2010-03-17 10:48:05 -06:00
Clinton Stimpson 44492fff53 Add support for libXi. 2010-03-17 10:48:05 -06:00
Michael Wild beda5eab39 ENH: Hook in GetPrerequisites to override item type
The hook is called gp_resolved_file_type_override.

Signed-off-by: Michael Wild <themiwi@users.sourceforge.net>
2010-03-17 11:32:14 -04:00
Clinton Stimpson bd0b37ea3d ENH: Clarify a doc string. Fixes #10358. 2010-03-17 07:43:22 -06:00
Clinton Stimpson 5e1a2408fe ENH: Modify how OpenGL is searched for, that is, use FindOpenGL.cmake. 2010-03-16 22:40:44 -06:00
Brad King fd38eda9fe Support multiple arguments in CC,CXX,FC values
Teach compiler identification to support values such as

  export CC='gcc -g -O2'

by separating the arguments on spaces.  We already do this for the
values of CFLAGS, CXXFLAGS, and FFLAGS.
2010-03-15 15:17:18 -04:00
David Partyka 01f022c49c Add a new registry key to check for the location of MPICH2. 2010-03-11 10:42:07 -05:00
Brad King 00477de1c9 Use response file for objects on MinGW and MSYS
Windows command lines are limited to about 32K so we need to use
response files for linking very large lists of object files.

See issue #10401.
2010-03-11 09:46:18 -05:00
Miguel A. Figueroa-Villanueva 8f9f6b3ac1 BUG #9419: Added wxWidgets_EXCLUDE_COMMON_LIBRARIES option.
This allows the user not to link to the common libraries,
which are regularly required. The user must specify all
libraries that he does want to link in the find_package
line (png tiff jpeg zlib regex expat).

--HG--
extra : rebase_source : df29f96c957600629a34a1c5fafb8b3d6f274e22
2010-03-07 05:50:49 -04:00
Bill Hoffman b461a68786 Fix Qt with OpenGL on the Mac. 2010-03-10 13:51:17 -05:00
Bill Hoffman a9ac761938 Add .git .bzr and .hg to the list of default CPack ignore directories. 2010-03-08 10:46:27 -05:00
Zach Mullen 348f6c4d8c If tests failed on the last run, have them run first next time 2010-03-01 11:59:00 -05:00
Zach Mullen 09e748c69a Configurable path to CTest cost data file
Allow the user to set the CMake variable CTEST_COST_DATA_FILE, which will be used to store the cost data from test runs.  If not set, defaults to the original location in the build tree Testing/Temporary dir.
2010-03-01 11:06:28 -05:00
Brad King 4eba05de42 Suppress GNU flag -fPIC on Windows
Commit "Modernize GNU compiler info on Windows" (2009-12-02) reorganized
GNU flags on Windows but let -fPIC slip through for compilation of
objects in shared libraries.  While this flag is valid on most GNU
compiler platforms we need to suppress it in Windows-GNU.cmake just as
we already do in CYGWIN-GNU.cmake.
2010-02-19 08:23:31 -05:00
Clinton Stimpson 70290e1f64 Add support for QtDeclartive module. 2010-02-17 19:12:18 -05:00
Marcus Hanwell 1e43973741 A few small changed from Pat Marion (in VTK CVS too) 2010-02-17 14:36:17 -05:00
Marcus Hanwell f7a3db6403 Applied patch from Pat Marion - modules header macro.
This modifies the behavior of PYTHON_WRITE_MODULES_HEADER, should be backwards
compatible. Also marked a couple of the variables generated by adding Python
modules as advanced.
2010-02-17 11:37:37 -05:00
Marcus Hanwell 8d87d12ce6 Do not force frameworks on Mac OS X - never worked well. 2010-02-17 11:35:17 -05:00
Brad King 4685872078 FortranCInterface: Fix PathScale detection again
PathScale Fortran mangles module symbols as "MY_SUB.in.MY_MODULE" and
also requires "my_module_" when the module is imported.  We cannot
provide the symbol with ".in." mangling so we should not provide
"my_module_" because it would duplicate the one in the Fortran-provided
object file.

Commit "FortranCInterface: Fix PathScale detection" (2010-01-22) already
made the same fix for the non-underscore module case.
2010-02-16 13:24:44 -05:00
David Cole f48660fa85 Make a common function that prints the status during the checks for working compilers. Call it from all of the CMakeTesten_US.UTF-8Compiler.cmake files. In the message, print the full path to the tested compiler only for the Makefile generators. For Xcode and Visual Studio generators, print the generator instead so that users are not misled with the full path to a compiler that the generator may not even use. Xcode and Visual Studio have their own mechanisms for choosing the compiler to use during try_compile and build... 2010-02-12 14:32:20 -05:00
Brad King c4205773a5 Do not warn for unknown CTest UPDATE_TYPE
In the CTest module we previously warned if the source directory did not
contain known version control directories.  The message was:

  "CTest cannot determine repository type. Please set UPDATE_TYPE
   to 'cvs' or 'svn'. CTest update will not work."

This was confusing when building sources from a tarball.  Furthermore,
we now support many more version control tools.  This feature is now
mature enough that the warning causes confusion more than it provides
real help.  We simply remove it.
2010-02-10 10:43:33 -05:00
Brad King e18f3623e3 Detect Git repositories for CTest UPDATE_TYPE
The CTest module configures the command-line CTest dashboard mode.
We teach it to recognize .git directories.
2010-02-10 10:43:28 -05:00
Brad King ff101a565e Simplify CTest.cmake module with ELSEIF
We use ELSEIF to simplify the cascading IF blocks for detecting version
control tools.
2010-02-10 10:43:23 -05:00
Bill Hoffman 0619813e03 Fix for bug #10257, NSIS could remove a PATH if it was too long 2010-02-09 13:57:46 -05:00
Zach Mullen 41fcf6e155 Moved call to cache CDash version information to cmCTest::initialize. Also added a 3 second timeout when requesting the version from the server. Added an option to the CTestConfiguration that will be used to determine whether to query the version information at all. (Behavior for this setting is not yet defined.) Updated CMake's local CDash version setting to 1.6. 2010-02-08 09:47:39 -05:00
Brad King 11dcef910a Recognize the Compaq Fortran compiler
The compiler documents symbols _DF_VERSION_ and _VF_VERSION_ but they do
not seem to be available to the preprocessor.  Instead we add a vendor
query table entry for Compaq.  Running "f90 -what" produces

  Compaq Visual Fortran Optimizing Compiler Version ...

This clearly identifies the compiler.
2010-02-02 07:21:36 -05:00
Brad King 3c2ecbe74e Add alternate per-vendor compiler id detection
At least one Fortran compiler does not provide a preprocessor symbol to
identify itself.  Instead we try running unknown compilers with version
query flags known for each vendor and look for known output.  Future
commits will add vendor-specific flags/output table entries.
2010-02-01 09:03:05 -05:00
David Cole 6ee87b2e5c Fix issue #10155 - default value of CMAKE_OSX_DEPLOYMENT_TARGET should always be the empty string. When the value of CMAKE_OSX_DEPLOYMENT_TARGET is the empty string, the -mmacosx-version-min flag should not show up on the compiler command line. The logic for selecting default value of CMAKE_OSX_SYSROOT is orthogonal to and independent of the value of the deployment target. The default value for CMAKE_OSX_SYSROOT is the SDK that corresponds to the current version of Mac OSX on which cmake is running. 2010-01-29 11:56:35 -05:00
James Bigler aa495ad021 Add -rpath for cuda libraries on Apple. They use @rpath in the library link names. 2010-01-28 13:50:38 -05:00
James Bigler f04f912694 Updated the documentation on what kinds of flags you can use when setting target properties. 2010-01-28 13:08:56 -05:00
James Bigler d2d3672f1c Define __CUDACC__ during dependency scanning, since NVCC doesn't. 2010-01-28 12:58:22 -05:00
Alexander Neundorf eb4fe91e17 -remove unnecessary debug output
Alex
2010-01-27 16:46:00 -05:00
Brad King 21faaa5d7f FortranCInterface: Fix PathScale detection
PathScale Fortran mangles module symbols as "MYSUB.in.MYMODULE" and also
requires "mymodule_" when the module is imported.  We cannot provide the
symbol with ".in." mangling so we should not provide "mymodule_" because
it would duplicate the one in the Fortran-provided object file.
2010-01-22 14:15:47 -05:00
Alexander Neundorf 3551869e92 -also put CMAKE_LINKER in the C and CXX compiler information files
This is already done for assembler and is necessary for e.g. Symbian.

Alex
2010-01-22 12:41:55 -05:00
Brad King 3684f62340 Do not export all symbols from DLLs on Cygwin
In commit "use export all symbols on cygwin" (2003-01-21) we started
passing -Wl,--export-all-symbols when linking shared libraries.  Now
cygwin exports all symbols automatically if no symbols are explicitly
exported.  When symbols are explicitly exported we want to honor that
narrow interface.  Therefore this flag should not be passed.

Change based on patch from issue #10122.
2010-01-21 15:03:32 -05:00
Brad King 41024b006b Fix CMAKE_DL_LIBS on Cygwin
The variable should contain the name of a library needed to link the
symbol equivalent to dlopen.  On Cygwin no special library is needed,
and certainly not "gdi32".

Change based on patch from issue #10122.
2010-01-21 15:03:17 -05:00
Brad King 1804c6bfe2 Add PathScale shared library flags on Linux
We add platform-specific compiler information files

  Platform/Linux-PathScale-<lang>.cmake

to enable -fPIC and -shared flags for shared libraries.
2010-01-21 09:09:27 -05:00
Alexander Neundorf 03769801ff -make the imported targets feature of FindQt4.cmake fully backwards compatible
After discussing with Brad and Clinton:
-the namespace for the imported targets is now "Qt4::", tested with Makefiles, Visual Studio and XCode projects
-the imported targets are always created
-if QT_USE_IMPORTED_TARGETS is set to TRUE (it defaults to FALSE), the QT_QTFOO_LIBRARY variables are set to point to these imported
targets, otherwise the old behaviour is used.
-on OSX if Qt has been found as framework, disable QT_USE_IMPORTED_TARGETS, since cmake doesn't handle the framework directory as location of the library correctly

Alex
2010-01-18 16:23:21 -05:00
Clinton Stimpson 835b07a3a8 Put quotes arounds strings when doing STREQUAL. 2010-01-18 15:49:46 -05:00
Alexander Neundorf 1833961ce5 some tweaks as suggested by Brad (no functional changes)
-set the type of the IMPORTED libraries to UNKNOWN, this way also on Windows
only the "LOCATION" property has to be set
-the if() around the SET(QT_${basename}_FOUND 1) was useless (always true)
-the mapping of the configuration types DEBUG and PROFILE did not belong here

Alex
2010-01-18 13:38:38 -05:00
Alexander Neundorf 6d39313001 -create imported library targets for the Qt4 libs
This commit syncs FindQt4.cmake again with KDEs version.
Now for every Qt library an imported target with the name
Qt4ImportedTarget__<LIBNAME> is created.
This way we can now finally handle the release and debug versions of the Qt
libraries correctly.
Also, if a Qt-using project A installs a file with exported targets, these
targets now depend on the imported Qt targets, e.g.
Qt4ImportedTarget__QtCore. The location of QtCore is then resolved at
buildtime of project B, which uses the exported targets from project A.
 Before this patch the full path to the QtCore on the original build machine
of project A was stored, so this had to match the directory layout on the
build machine for project B.

Alex
2010-01-17 11:37:53 -05:00
Clinton Stimpson 55a3967eda Fix bug #10114. Find phonon on some installations. 2010-01-13 17:34:31 -05:00
Brad King e46e8fb937 Do not find cyg*.dll on Cygwin
While Cygwin supports linking directly to .dll files, the behavior is
now discouraged.  All Cygwin packages now provide import libraries of
the form lib*.dll.a and CMake has built the import libraries for years.

We believe it is now safe to stop explicitly searching for .dll files
because their import libraries will always be available when the
corresponding header files are available.  Users can always set
find_library cache entries to point at a .dll file by hand if they
really must use one.

Change based on patch from issue #10122.
2010-01-13 14:12:29 -05:00
Brad King 3cba2b3a0f Fix KDE3 .la file format on Cygwin
We teach KDE3Macros.cmake to generate .la files on Cygwin that match
those produced by libtool.  See issue #10122.
2010-01-13 13:54:34 -05:00
Brad King 12dcf9e4fb Search prefix /usr before root prefix /
Commit "Find locally installed software first" made /usr/local the first
prefix searched to be consistent with the Filesystem Hierarchy Standard:

  http://www.pathname.com/fhs/

The standard also implies that the root prefix "/" should not have any
package or development files.  The "/bin" and "/lib" directories should
have only minimal contents to boot the system.  No "/include" ever
exists.  This commit re-orders the search path prefix list from

  /usr/local
  /
  /usr

to

  /usr/local
  /usr
  /

to prefer package and development files over low-level system files.
See issue #10136.

On Cygwin /usr/lib == /lib and /usr/bin == /bin.  This change also makes
search results report locations as "/usr/..." instead of "/lib/...".
See issue #10122.
2010-01-13 13:36:03 -05:00
Brad King fdbe16c1f4 Use if(CYGWIN) instead of if(WIN32 AND UNIX)
CMake has defined CYGWIN on Cygwin for years, so we no longer need the
legacy form of the test.  Change based on patch from issue #10122.
2010-01-13 12:57:38 -05:00
Brad King da36cde059 PathScale C/C++/Fortran Compiler Information
We add compiler information files

  Compiler/PathScale-<lang>.cmake

to specify PathScale compiler information for C, C++, and Fortran
languages.  We use a macro in Compiler/PathScale.cmake to consolidate
the information common to all languages.
2010-01-13 12:14:31 -05:00
Brad King 1e9f58e605 Recognize the PathScale C/C++/Fortran compilers 2010-01-13 12:12:39 -05:00
Brad King 9ef3f8e820 Restore -rdynamic in Linux build rules
The commit "Drop -rdynamic from Linux build rules" removed default use
of the flag on Linux.  It was expected to be compatible because any
project using plugins should set ENABLE_EXPORTS on its executables to
export their symbols for use by the plugins in a cross-platform way.
However, it is possible to build without ENABLE_EXPORTS and load plugins
that do not link to any symbols from the executable explicitly.  These
plugins may need to see RTTI and other executable symbols needed by the
language implementation.  Executables using such plugins were broken by
the change.

If we want to remove the -rdynamic flag in the future we should do so in
a compatible way.  At that time we should also remove equivalent flags
on other platforms (like -bexpall on AIX).  We will either need a policy
or an explicit API to disable symbol exports on executables.

The primary purpose of the above-mentioned commit was to avoid passing
the -rdynamic flag to compilers on Linux that do not support it.  In
this commit we restore the flag but only on GNU and Intel compilers
which are known to support it.

See issue #9985.
2010-01-13 08:13:46 -05:00
Brad King 7b106a6fb3 Create Linux GNU compiler flag consolidation macro
This macro will be used for GNU compiler flags that are specific to
Linux but not to any language.
2010-01-13 08:13:19 -05:00
Brad King 6c1e24276f Detect Fortran ABI Information
Implement Fortran 32/64-bit ABI detection on some platforms.  We need to
set CMAKE_SIZEOF_VOID_P correctly in Fortran-only projects so that the
find_library() command knows whether to look for 64-bit binaries.  We
also detect ELF binaries to enable RPATH replacement.  See issue #10119.
2010-01-12 09:38:13 -05:00
James Bigler 6faa4ae15e Changed warning string to use the WARNING flag. 2010-01-08 12:57:43 -05:00
James Bigler 2316e04d13 Reordered the arguments, so that user generated arguments go last and thus get precedence. 2010-01-08 12:14:21 -05:00
James Bigler d3034f9b56 Disable the --host-compilation flag for CUDA >= 3.0 since it is derecated. 2010-01-08 12:12:54 -05:00
Philip Lowman 081b5dfd2e Fix Issue #9792, remove superfluous output when not searching for COMPONENTS, add 1.41 to the search 2010-01-05 00:55:14 -05:00
Philip Lowman eb66705db4 Fix issue #10065, "FindGTest.cmake doesn't handle spaces around arguments to TEST/TEST_F macro".
Also improved the documentation.
2010-01-05 00:14:58 -05:00
Philip Lowman aefd10ad70 Fixes issue #9862 by adding official msvc import library names to FindCURL 2010-01-04 23:25:57 -05:00
Philip Lowman 820e255312 Should get FindGTK2 working with fink on Mac OSX 2010-01-04 23:07:39 -05:00
Alexander Neundorf 241dd18004 make FindRuby work on Windows e.g. with ruby 1.9.1 (version string was constructed wrong)
Alex
2010-01-03 14:21:17 -05:00
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
Clinton Stimpson 5fab48aa1c Fix bug #9918, spaces included in QT_LIBRARIES when using QtOpenGL. 2009-11-18 17:35:20 -05:00
Alexander Neundorf 12daac5714 only add -DQT_DLL on Windows, ok by Clinton
Alex
2009-11-17 15:20:58 -05:00
Clinton Stimpson f756b73ac5 Don't search for QtMotif on all platforms - only on X11. 2009-11-17 14:44:33 -05:00
Brad King 184a3418e6 FortranCInterface: Use CMake 2.8.0 behavior
The FortranCInterface module should execute with CMake 2.8.0 behavior
even if policies are set differently by the including project.  In
particular, it makes use of empty list elements and therefore expects
NEW behavior of CMP0007.
2009-11-17 14:33:28 -05:00
Eric Noulard 147aa6bf80 CPackRPM: tolerate redhat specific clean BUILD ROOT pre-build macro (bug 9872)
Eric
2009-11-15 13:55:42 -05:00
Alexander Neundorf 04d3f576b1 Document X11_X11_LIB and X11_X11_INCLUDE_PATH
Alex
2009-11-15 13:26:59 -05:00
Alexander Neundorf 0f457937f4 Split some logic of FindQt4.cmake into separate files, which are included automatically.
Qt4Macros.cmake: all the "public" macros of FindQt4.cmake
Qt4ConfigDependentSettings.cmake: the code for detecting the
Qt-configuration dependent additional libraries, e.g. when linking statically.

There should be no functional changes in this patch.
The patch reduces the length of FindQt4.cmake from 1700 lines to around 1000
lines, which is still long enough, but this should make the file a easier to
handle (and it is similar to what we do in KDE with FindKDE4Internal.cmake
and KDE4Macros.cmake)

Ok by Clinton.

Alex
2009-11-15 13:02:19 -05:00
Will Dicharry eb7e4498c4 Fixed parallel HDF5 detection when HDF5_INCLUDE_DIRS has multiple items. 2009-11-13 13:25:05 -05:00
Will Dicharry 3b8cab3a46 Changed HDF5_INCLUDE_DIR to HDF5_INCLUDE_DIRS to conform to standards. 2009-11-13 13:09:38 -05:00
Dave Partyka 3154cde792 BUG: rename MPI_PACKAGE_DIR and MPI_PREFIX_PATH vars to be prefixed with _ to prevent conflicts with known variable names in other projects. 2009-11-13 10:57:01 -05:00
Dave Partyka 279e4ec33b BUG: fix MPI_BASE_DIR var to be called _MPI_BASE_DIR to prevent conflicts with known variable names in other projects. 2009-11-13 10:52:28 -05:00
Bill Hoffman 6e8aa6cb52 Fix regression with CPACK_NSIS_PACKAGE_NAME, if the project is setting the CPACK_NSIS_DISPLAY_NAME then use that as the default value and not the CPACK_PACKAGE_INSTALL_DIRECTORY, also make sure it escapes \ correctly. 2009-11-12 17:58:37 -05:00
Alexander Neundorf fb8d583054 also search for "qmake-mac", which is installed by macports (http://lists.kde.org/?l=kde-core-devel&m=125797773120427&w=2)
Alex
2009-11-12 12:55:19 -05:00
Eric Noulard 33358ff4ff CPackRPM:: add support for USER specified post/pre [un]install scripts (fix bug 8988)
Eric
2009-11-11 15:55:44 -05:00
Eric Noulard c0814f4155 CPackRPM:: support user supplied "Provides" in spec file (fix bug 9584)
Eric
2009-11-11 15:27:44 -05:00
Alexander Neundorf 35a209b0db Search for the header QtAssistant for QT_QTASSISTANT_INCLUDE_DIR instead of QtAssistantClient
This should not change the result (since both should be in the same
directory), but seems a bit more logical and is also in sync with what is done in the KDE version.

Alex
2009-11-10 13:57:21 -05:00
Eric Noulard 28f54d0b85 CPackRPM:: Support USER supplied spec files (bug 9679)
Eric
2009-11-09 16:17:22 -05:00
Eric Noulard 2362fdc850 Fix CPack bug #9654
Eric
2009-11-09 14:06:36 -05:00
Alexander Neundorf 4a2f809124 Sort documentation entries better and move mark_as_advanced() a bit back
Alex
2009-11-09 12:55:46 -05:00
Alexander Neundorf 054eed5819 -another tiny sync with KDE4, no functional changes
Alex
2009-11-08 13:21:09 -05:00
Alexander Neundorf e325b1a38a some syncing with FindQt4.cmake from KDE, no functional changes
-the mark_as_advanced() calls for the variables coming from qmake are now in
the corresponding section, and not in the section where the include dirs are
foudn

Alex
2009-11-08 13:01:46 -05:00
Bill Hoffman 2fc9c5fb14 Add jom find module 2009-11-06 14:15:36 -05:00
Brad King 56d4619984 Remove non-language implicit link dependencies
Some compilers use implicit link options of the form

  -lcrt*.o
  -lgcc*
  -lSystem      (on Mac)
  -lSystemStubs (on Mac)

that provide system-wide symbols not specific to any language.
These need not be listed explicitly for mixed-language linking.

We teach CMake to remove the above items from the implicit library list
of each language.  This change makes it possible to mix GNU compiler
versions in some cases.
2009-11-05 12:17:08 -05:00
Mathieu Malaterre fdc6638b1c Add more documentation to module 2009-11-04 09:49:58 -05:00
Mathieu Malaterre b0960683b2 Adding support for java 1.6.0-oem. Make sure to report failure when user ask for version but regex failed to parse version number 2009-11-04 05:17:46 -05:00
James Bigler b1817590c1 Fix -fPIC from being used on executable object files.
BUILD_SHARED_LIBS is now only recognized when calling CUDA_ADD_LIBRARY.  If you want the CMAKE_SHARED_LIBRARY_C/CXX_FLAGS to be used, pass SHARED as an argument.  This prevents -fPIC from being used on objects destined for executables by default.
2009-11-04 01:15:31 -05:00
Mathieu Malaterre b93b6dc677 Replace FATAL_ERROR with status. Remove output when QUIET is ON 2009-11-03 17:22:57 -05:00
Mathieu Malaterre 59ce04d4f8 STYLE: minor documentation + typo 2009-11-02 11:50:33 -05:00
Mathieu Malaterre ccb8accc1b BUG: hardcoded path, are not hints. Split the two lists. Thanks Brad 2009-11-02 11:37:16 -05:00
Mathieu Malaterre ff0ff68967 BUG: To be able to use ENV and at the same time allow /usr/loca/bin to override /usr/bin, apply patch suggested by Hendrik Sattler (thanks) 2009-11-02 09:23:11 -05:00
Mathieu Malaterre 2b071aeb07 ENH: Make those variables advanced. 2009-11-02 09:15:04 -05:00
Mathieu Malaterre 865e0a11b4 BUG: 0009817 cmake does not search in solaris subdirectory for JAVA_INCLUDE_PATH2. Thanks to Gaetan Lehmann for patch 2009-11-02 04:03:06 -05:00
Mathieu Malaterre 0615218bdf STYLE: respect convention (while being backward compat) 2009-10-30 12:17:25 -04:00
Mathieu Malaterre d25952ee9f FIX: BUG: 0009124. Fix documentation 2009-10-30 12:06:53 -04:00
Mathieu Malaterre 74805dbbbd ENH: FIX 0009777. This should sync FindJava and CMakeDetermineJavaCompiler.cmake now 2009-10-30 11:55:57 -04:00
Mathieu Malaterre 17ad96111b FIX: BUG: 0009804. Update FindDCMTK to look in more paths. Start looking for command line tool: dcmdump/dcmdjpeg/dcmdrle 2009-10-30 11:48:44 -04:00
Mathieu Malaterre 54541d4a47 FIX: BUG: 0008971 FindOpenSSL improvement. Teaches cmake to find openssl on win32. openssl comes with the crypto libs which are the important part of the openssl project. 2009-10-30 11:35:15 -04:00
Mathieu Malaterre ae27492091 STYLE: Fix documentation (thanks Brad). 2009-10-30 11:22:41 -04:00
Mathieu Malaterre 3d898c2534 FIX: BUG: 0002199 Adding documentation for swig_generated_file_fullname 2009-10-30 11:13:00 -04:00
Mathieu Malaterre c0ec66b6d7 FIX: BUG: 0007915 Integrate portion of the patch. Also add .pyd support for python module. 2009-10-30 11:07:10 -04:00
Mathieu Malaterre bb123d0b81 ENH: Update code: 1. In version 1.6.0_17, 17 is now the TWEAK version as per cmake convention. 2. Use VERSION_LESS to compare version, which simplify code 3. Enhance testing, see: https://gdcm.svn.sourceforge.net/svnroot/gdcm/Sandbox/CMakeBug/8/CMakeLists.txt 2009-10-30 10:49:12 -04:00
Mathieu Malaterre 5c594b6f3a FIX: BUG: 0009795 FindJava now respect naming convention and handle VERSION/EXACT. 2009-10-30 04:05:59 -04:00
Will Dicharry 518f9c57b7 Fixed bug in FindHDF5 caused by hdf5.h existing without H5pubconf.h. 2009-10-29 17:18:41 -04:00