summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Add test step to ExternalProject builds. Rename SVN_TAG to SVN_REVISION ↵David Cole2009-09-031-7/+61
| | | | since it is a more accurate name.
* Fixed ctest output where max test index is not the same width as the total ↵Zach Mullen2009-09-022-1/+13
| | | | number of tests. Also some preliminary changes for batching ctest jobs
* Add support for embeded manifests for Intel C/C++/Fortran compilersBill Hoffman2009-09-012-2/+30
|
* Add a module to determine if the intel linker supports manifest creationBill Hoffman2009-09-011-0/+17
|
* use -o flag instead of > for qdbuscpp2xmlClinton Stimpson2009-09-011-1/+1
|
* Move /MANIFEST flag into -E vs_link. This is so it can be used by the intel ↵Bill Hoffman2009-09-011-1/+1
| | | | compilers without having to specifiy it in the intel compiler files
* Use Intel for Linux flags only on LinuxBrad King2009-09-017-28/+25
| | | | | | The commit "Split Intel compiler information files" moved some Linux specific flags into the platform-independent Intel compiler info files. This moves them back.
* Fix FortranCInterface_VERIFY for non-C++ caseBrad King2009-09-011-0/+5
| | | | | | | The verification program entry point (main) is defined in a C source file, so the C compiler should be used to link when only Fortran and C are involved. The C++ compiler should still be used when the CXX option is enabled.
* Make FortranCInterface_VERIFY verbose on failureBrad King2009-09-011-0/+1
| | | | | We enable verbose build output in the try_compile of the simple project. This makes valuable information available in the case of failure.
* Fixed link order dependence in FindHDF5 module for static link.Will Dicharry2009-08-311-2/+2
|
* In FindHDF5, added C library names to CXX search libraries.Will Dicharry2009-08-311-1/+1
|
* Add missing argument to _ep_write_downloadfile_script.David Cole2009-08-261-1/+1
|
* Fixed HDF5 Find module error that caused no list to be passed into remove ↵Will Dicharry2009-08-241-4/+12
| | | | duplicates when HDF5 is not found.
* Add HDF5 find module and select_library_configurations module.Will Dicharry2009-08-242-0/+368
|
* Create FortranCInterface_VERIFY functionBrad King2009-08-247-0/+124
| | | | | | | This function builds a simple test project using a combination of Fortran and C (and optionally C++) to verify that the compilers are compatible. The idea is to help projects report very early to users that the compilers specified cannot mix languages.
* Teach FortranCInterface to load outside resultsBrad King2009-08-242-162/+169
| | | | | | | | We split the main detection logic into a Detect.cmake support module and load it only when detection results are not already available. This allows results computed by the main project to be used in try-compile projects without recomputing them. The call to try_compile() need only to pass FortranCInterface_BINARY_DIR through the CMAKE_FLAGS option.
* Split SunPro compiler information filesBrad King2009-08-218-111/+71
| | | | | | This moves platform-independent SunPro compiler flags into separate "Compiler/SunPro-<lang>.cmake" modules. Platform-specific flags are left untouched.
* Split Intel compiler information filesBrad King2009-08-217-45/+63
| | | | | | This moves platform-independent Intel compiler flags into separate "Compiler/Intel-<lang>.cmake" modules. Platform-specific flags are left untouched.
* Teach FortranCInterface to verify languagesBrad King2009-08-201-0/+9
| | | | | This module requires both C and Fortran to be enabled, so error-out if they are not.
* Add Boost 1.39 & 1.40. Move ${Boost_INCLUDE_DIR}/lib to front of library ↵Philip Lowman2009-08-201-3/+4
| | | | search.
* Remove DownloadFile.cmake and UntarFile.cmake from the Modules directory. ↵David Cole2009-08-193-117/+130
| | | | Put functionality directly into ExternalProject.cmake itself so that these modules do not end up in the upcoming release of CMake.
* Find module for the Bullet physics enginePhilip Lowman2009-08-171-0/+75
|
* A find module for the Google C++ Testing FrameworkPhilip Lowman2009-08-171-0/+69
|
* Checking in the FindFLEX.cmake & FindBISON.cmake attached to Issue #4018 ↵Philip Lowman2009-08-132-0/+321
| | | | | | | | | after some minor improvements * Improved examples * Switched to FindPackageHandleStandardArgs * Cleaned up indentation * Sanitized else()/endif() blocks
* Fixes Issue #8994Philip Lowman2009-08-131-1/+1
|
* Find module for GnuTLS, the GNU Transport Layer Security library (Issue #9228)Philip Lowman2009-08-131-0/+58
|
* Improved error output and documentationPhilip Lowman2009-08-131-15/+32
| | | | | | * Fixed errant output when version number not found * Improved error output when REQUIRED is passed * Improved docs and example
* Quote the target name for Borland tlib toolBrad King2009-08-121-1/+1
| | | | | | | | | | | The Borland librarian tool "tlib" requires that the output target name be quoted if it contains the character '-' (and perhaps a few others). This commit restores the use of the TARGET_QUOTED rule variable replacement for this purpose. Otherwise no static library can have a '-' in its name. This problem was exposed by the 'Testing' test when it builds the pcStatic library with the '-dbg' suffix.
* Teach compiler id about VisualAge -> XL rebrandingBrad King2009-08-0713-11/+34
| | | | | | | IBM rebranded its VisualAge compiler to XL starting at version 8.0. We use the compiler id "XL" for newer versions and "VisualAge" for older versions. We now also recognize the "z/OS" compiler, which is distinct from XL.
* Move flag to Compiler/VisualAge-Fortran moduleBrad King2009-08-074-3/+1
| | | | | | The CMAKE_Fortran_DEFINE_FLAG value applies to the IBM Fortran compilers on all platforms. This moves the setting to the platform-independent compiler information file.
* Use NetBSD to initialize OpenBSD configurationBrad King2009-08-071-2/+1
| | | | | We teach Modules/Platform/OpenBSD.cmake to load NetBSD first since the platforms are so similar. This enables RPATH support on OpenBSD.
* Teach FortranCInterface about g77 manglingBrad King2009-08-061-0/+1
| | | | | The old GNU g77 Fortran compiler uses the suffix '__' for symbols containing an underscore in their name.
* Sort FortranCInterface global mangling symbolsBrad King2009-08-061-2/+2
| | | | | This just cleans up the list ordering so more entries can be added while keeping everything organized.
* Cleanup FortranCInterface for PGI and GCC 4.2Brad King2009-08-053-8/+10
| | | | | This documents the purpose of the extra my_module_.c and mymodule.c source files, and sorts the symbols.
* Teach FortranC interface for Intel, PGI, and gcc 4.2Bill Hoffman2009-08-053-2/+8
|
* Remove AddExternalProject.cmake. ExternalProject.cmake supercedes/replaces it.David Cole2009-08-051-669/+0
|
* Overhaul GetPrerequisites and BundleUtilities: make fixup_bundle do ↵David Cole2009-08-052-132/+264
| | | | | | something useful on Windows and Linux. Formerly, fixup_bundle was useful only on the Mac for making standalone bundle applications that could be drag-n-drop moved to anyplace in the file system. fixup_bundle is not just for the Mac any more. It will now analyze executable files on Windows and Linux, too, and copy necessary non-system dlls to the same folder that the executable is in. This should work with dlls that you build as part of your build and also with 3rd-party dlls as long as you give fixup_bundle the right list of directories to search for those dlls. Many thanks to Clinton Stimpson for his help in ironing out the details involved in making this work.
* Rewrite FortranCInterface moduleBrad King2009-08-0514-223/+471
| | | | | | | | | | | | | | | | | | | | This is a new FortranCInterface.cmake module to replace the previous prototype. All module support files lie in a FortranCInterface directory next to it. This module uses a new approach to detect Fortran symbol mangling. We build a single test project which defines symbols in a Fortran library (one per object-file) and calls them from a Fortran executable. The executable links to a C library which defines symbols encoding all known manglings (one per object-file). The C library falls back to the Fortran library for symbols it cannot provide. Therefore the executable will always link, but prefers the C-implemented symbols when they match. These symbols store string literals of the form INFO:symbol[<name>] so we can parse them out of the executable. This module also provides a simpler interface. It always detects the mangling as soon as it is included. A single macro is provided to generate mangling macros and optionally pre-mangled symbols.
* Pass Fortran90 test result to try-compileBrad King2009-07-302-28/+30
| | | | | | | This stores CMAKE_Fortran_COMPILER_SUPPORTS_F90 in the Fortran compiler information file CMakeFiles/CMakeFortranCompiler.cmake instead of in CMakeCache.txt. This file makes the result available to try-compile projects.
* Do not always propagate linker language preferenceBrad King2009-07-301-0/+1
| | | | | | | | | | | | The commit "Consider link dependencies for link language" taught CMake to propagate linker language preference from languages compiled into libraries linked by a target. It turns out this should only be done for some languages, such as C++, because normally the language of the program entry point (main) should be used. We introduce variable CMAKE_<LANG>_LINKER_PREFERENCE_PROPAGATES to tell CMake whether a language should propagate its linker preference across targets. Currently it is true only for C++.
* Set CMAKE_<LANG>_VERBOSE_FLAG variables for PGIBrad King2009-07-293-0/+3
| | | | | | We set the variables to contain "-v", the verbose front-end output option for PGI compilers. This enables detection of implicit link libraries and directories for these compilers.
* Set CMAKE_<LANG>_VERBOSE_FLAG variables for IntelBrad King2009-07-293-0/+3
| | | | | | We set the variables to contain "-v", the verbose front-end output option for Intel compilers. This enables detection of implicit link libraries and directories for these compilers.
* Recognize linker commands without pathsBrad King2009-07-291-1/+1
| | | | | | | This teaches the implicit link line parsing code to recognize link lines that do not have a full path to the linker executable. At least one version of the Intel compiler on Linux invokes the linker as just "ld" instead of "/usr/bin/ld".
* BUG: Parse implicit link editor -z*extract optionsBrad King2009-07-281-1/+4
| | | | | | | | The Sun Fortran compiler passes -zallextract and -zdefaultextract to the linker so that all objects from one of its archives are included in the link. This teaches the implicit options parser to recognize the flags. We need to pass them explicitly on C++ link lines when Fortran code is linked.
* ENH: Install all Modules and TemplatesBrad King2009-07-242-15/+0
| | | | | | | This removes the file-wise installation rules for Modules and Templates and instead installs the whole directories. This approach is much less error-prone. The old approach was left from before CMake had the install(DIRECTORY) command.
* BUG: Install new fortran compiler id source.Brad King2009-07-241-1/+1
| | | | | The extension of the id source file was changed from .F90 to .F so this fixes the install rule.
* BUG: Skip implicit link information on XcodeBrad King2009-07-231-1/+2
| | | | | | | Xcode adds extra link directories that point at the build tree, so detection of implicit link directories is not reliable. Since Fortran is not supported in Xcode we will not need implicit link information yet anyway.
* ENH: Implicit link info for C, CXX, and FortranBrad King2009-07-2320-0/+108
| | | | | | | | | | | | | This teaches CMake to detect implicit link information for C, C++, and Fortran compilers. We detect the implicit linker search directories and implicit linker options for UNIX-like environments using verbose output from compiler front-ends. We store results in new variables called CMAKE_<LANG>_IMPLICIT_LINK_LIBRARIES CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES The implicit libraries can contain linker flags as well as library names.
* ENH: Load platform-independent per-compiler filesBrad King2009-07-233-0/+16
| | | | | | | This teaches the language configuration modules to load per-compiler information for each language using the compiler id but no system name. They look for modules named "Compiler/<id>-<lang>.cmake". Such modules may specify compiler flags that do not depend on the platform.
* ENH: just converted case to lower for the bookKen Martin2009-07-211-17/+17
|