summaryrefslogtreecommitdiffstats
path: root/Modules/Platform
Commit message (Collapse)AuthorAgeFilesLines
* Teach intel compiler on windows to place .lib files and .pdb files.Bill Hoffman2009-10-051-2/+2
|
* Teach intel compiler on windows to place .lib files and .pdb files.Bill Hoffman2009-10-051-1/+7
|
* Avoid (Unix|Windows)Paths.cmake multiple includeBrad King2009-10-052-0/+20
| | | | | | | | | | Block multiple inclusion because "Modules/CMakeCInformation.cmake" includes "Platform/${CMAKE_SYSTEM_NAME}" even though the generic module "CMakeSystemSpecificInformation.cmake" already included it. The extra inclusion is a work-around to address issue #4772 without intrusive platform file changes. Once those changes are made the work-around and these include blockers can be removed. See issue #9656.
* Add copyright notice to (Unix|Windows)Paths.cmakeBrad King2009-10-052-0/+28
| | | | | This commit adds our copyright notice to these non-trivial platform modules.
* Find locally installed software firstBrad King2009-10-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | This commit re-orders the search path prefix list from / /usr /usr/local to /usr/local / /usr so that locally-installed software is preferred. This makes the search consistent with the Filesystem Hierarchy Standard: http://www.pathname.com/fhs/ See issue #9657.
* Support GNU/kFreeBSDBrad King2009-10-051-11/+1
| | | | | | | | | | | | | GNU/kFreeBSD = FreeBSD kernel + userspace with glibc. Linux.cmake doesn't contain anything too OS specific, so we can forward to it. Here are outputs of /bin/uname on author's machine: uname -p ==> i386 uname -o ==> GNU/kFreeBSD uname -s ==> GNU/kFreeBSD uname -r ==> 5.4-1-686 Patch from Modestas Vainius. See issue #9659.
* Create INTERPROCEDURAL_OPTIMIZATION build featureBrad King2009-10-023-3/+9
| | | | | | | | This commit creates target and directory properties to enable the Intel interprocedural optimization support on Linux. Enabling it adds the compiler option '-ipo' and uses 'xiar' to create archives. See issue #9615.
* Fix typo in Intel xiar search codeBrad King2009-10-021-3/+3
| | | | This renames the variable '_intel_xair_hints' to '_intel_xiar_hints'.
* Split XL compiler information filesBrad King2009-09-3010-32/+21
| | | | | | This moves platform-independent XL compiler flags into separate "Compiler/XL-<lang>.cmake" modules. Platform-specific flags go in "Platform/<os>-XL-<lang>.cmake" modules.
* Fix default install prefix on HaikuBrad King2009-09-301-0/+5
| | | | | | | | Since Haiku does not have /usr (and therefore /usr/local), this commit changes the default install prefix to the equivalent directory of /boot/common. See issue #9607.
* Fix shared library creation flag for XL on LinuxBrad King2009-09-293-1/+3
| | | | See issue #9617.
* Fix check for -isysroot on OS XBrad King2009-09-194-14/+22
| | | | | | | | | | | Previously we checked for this flag by parsing the version number of GCC out of 'gcc --version', but this is not reliable because the format can vary greatly. Now we run 'gcc -v --help' and look for '-isysroot' in the list of options. We also now store the result on a per-language basis in the per-compiler info file "CMake<LANG>Compiler.cmake". This is necessary to make it accessible from try-compile projects so that they generate correctly.
* Add detection of gcc versions that do not support isysroot option and do not ↵Bill Hoffman2009-09-181-0/+14
| | | | use it for them.
* Fix for bug #9466. Change the implementation of OSX arch lists. If no ↵Bill Hoffman2009-09-171-5/+1
| | | | ARCHs are specified by the user then no flags are set. We no longer use CMAKE_OSX_ARCHITECTURES_DEFAULT.
* Fix XL C++ compiler flags on LinuxBrad King2009-09-162-0/+6
| | | | | | | | In Platform/Linux.cmake we add GNU flags as default for the platform which breaks non-GNU compilers. Later we should refactor these flag files to put compiler-specific flags only in files loaded for each compiler. Until then this commit fixes the XL C++ compiler flags on Linux by erasing the GNU flags. See issue #9469.
* 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
|
* 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-014-0/+36
| | | | | | The commit "Split Intel compiler information files" moved some Linux specific flags into the platform-independent Intel compiler info files. This moves them back.
* Split SunPro compiler information filesBrad King2009-08-215-111/+0
| | | | | | 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-213-45/+0
| | | | | | This moves platform-independent Intel compiler flags into separate "Compiler/Intel-<lang>.cmake" modules. Platform-specific flags are left untouched.
* 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-074-4/+6
| | | | | | | 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-073-3/+0
| | | | | | 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.
* ENH: Install all Modules and TemplatesBrad King2009-07-241-3/+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.
* ENH: remove debug messageBill Hoffman2009-07-151-1/+0
|
* ENH: do not use /INCREMENTAL:YES with VS 10 compilerBill Hoffman2009-07-151-4/+16
|
* BUG: Fix rpath-link flag for SunPro C++ on LinuxBrad King2009-07-131-0/+1
| | | | | | | | | This teaches Modules/Platform/Linux-SunPro-CXX.cmake the -rpath-link flag. The SunPro C++ compiler does not have a '-Wl,' option, so we just pass the flag directly. This problem was exposed by the ExportImport test now that it links an executable through the C++ compiler with the -rpath-link flag.
* BUG: Look in arch-specific HPUX implicit link dirsBrad King2009-06-191-5/+11
| | | | | | | | | | | | | | | On HP-UX machines some system libraries appear in architecture-specific implicit linker search paths. We need to add these paths to our system library search path. However, at the time we construct the search path we do not know the target architecture. A full solution requires re-organizing platform configuration files so that the target architecture can be known when needed. Until that happens we can avoid the problem by searching in both 32-bit and 64-bit implicit link directories. By telling CMake that they are implicit directories the generated link lines will never pass the paths, leaving the linker free to find the library of the proper architecture even if the find_library call finds the wrong one.
* ENH: put the 64 bit paths firstBill Hoffman2009-06-151-1/+2
|
* ENH: add more search paths on HPUXBill Hoffman2009-06-151-0/+5
|
* ENH: use .exe on vmsBill Hoffman2009-06-111-0/+1
|
* ENH: Enable basic OpenVMS platform supportBrad King2009-06-101-0/+7
| | | | | | | | This adds the Modules/Platform/OpenVMS.cmake platform file for OpenVMS. We just use Unix-like rules to work with the GNV compiler front-end. A problem with process execution currently prevents CMake link scripts from working, so we avoid using them.
* BUG: Recognize .so shared libraries on HP-UXBrad King2009-06-031-0/+1
| | | | | | HP-UX uses both .sl and .so as extensions for shared libraries. This teaches CMake to recognize .so shared libraries so they are treated properly during link dependency analysis.
* ENH: Auto-import symbols for cygwin executablesBrad King2009-05-271-0/+1
| | | | | | This enables the --enable-auto-import linker flag on Cygwin when linking executables. It works with the old gcc 3.x compiler and is necessary for the new gcc 4.x compiler. See issue #9071.
* ENH: Re-enable system include dir suppressionBrad King2009-02-251-0/+7
| | | | | | | | | | | | | | | This creates variable CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES to specify implicit include directories on a per-language basis. This replaces the previous platform-wide variable. It is necessary to avoid explicit specification of -I/usr/include on some compilers (such as HP aCC) because: 1.) It may break ordering among system include directories defined internally by the compiler, thus getting wrong system headers. 2.) It tells the compiler to treat the system include directory as a user include directory, enabling warnings in the headers. See issue #8598.
* BUG: Remove implicit include dir suppressionBrad King2009-02-242-2/+0
| | | | | | | We used to suppress generation of -I/usr/include (and on OSX also -I/usr/local/include). This behavior seems to cause more trouble than it's worth, so I'm removing it until someone encounters the original problem it fixed. See issue #8598.
* BUG: Allow third component of Mac OSX sw_vers output to be empty. Mac OSX ↵David Cole2009-02-171-1/+1
| | | | 10.5 was recently reinstalled on dashmacmini3 and pointed out the fact that this expression is faulty when the reported version is simply 10.5 rather than 10.5.x... for example. This fixes it.
* BUG: Remove unnecessary double quotes from SET statements. Hopefully ↵David Cole2009-01-291-8/+8
| | | | resolves the strange and difficult to diagnose (or reproduce) test failures on the dashmacmini2 Continuous dashboard.
* BUG: Fix OS X dylib version flags for more linkersBrad King2009-01-291-2/+2
| | | | | | | Some OS X linkers want a 'dylib_' prefix on the -compatiblity_version and -current_version flags while others do not. This passes the flags through gcc instead since it never wants the prefix and translates the flags for the linker correctly.
* BUG: fix for # 8413 add more haiku searchingBill Hoffman2009-01-291-1/+2
|
* BUG: Fix careless typo that only caused test failures on clean builds...David Cole2009-01-281-1/+1
|
* BUG: Try to fix the universal binary continuous dashboard on dashmacmini2. I ↵David Cole2009-01-271-6/+12
| | | | am deducing that the value of CMAKE_OSX_ARCHITECTURES_DEFAULT is responsible for the failure, although I cannot reproduce it on other builds or even by running the test via ctest interactively *on* the continuous dashboard's build...
* BUG: Only set CMAKE_OSX_DEPLOYMENT_TARGET on Mac OSX 10.4 or later. The gcc ↵David Cole2009-01-271-2/+4
| | | | that runs on 10.3 and earlier does not understand the compiler flag it maps to...
* BUG: Fix issue #6195. Add CMAKE_OSX_DEPLOYMENT_TARGET cache variable to ↵David Cole2009-01-271-33/+102
| | | | specify the target deployment runtime OS version of the built executables on Mac OSX. Thanks to Mike Jackson for the patch.
* BUG: Fix install_name_tool problem on the Mac when a PROJECT(... NONE) is ↵David Cole2008-12-301-1/+1
| | | | followed by multiple calls to ENABLE_LANGUAGE. Use find_program to set the CMAKE_INSTALL_NAME_TOOL variable so it gets saved in the cache as a full path to the install_name_tool executable rather than a simple set which eventually goes out of scope.
* ENH: Use 32-bit and 64-bit Program Files foldersBrad King2008-12-171-8/+49
| | | | | | On 64-bit Windows there may be two Program Files folders, one for 32-bit binaries and one for 64-bit binaries. When we compute CMAKE_SYSTEM_PREFIX_PATH we should put both folders in the path.
* ENH: fix curses on haikuBill Hoffman2008-12-031-0/+6
|
* ENH: fix fortran flags on g77 windowsBill Hoffman2008-11-111-0/+7
|