summaryrefslogtreecommitdiff
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-13158-880/+880
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* Merge topic 'watcom-compiler-version'Brad King2012-08-131-37/+24
|\ | | | | | | af42ae4 Watcom: Simplify compiler version detection (#11866)
| * Watcom: Simplify compiler version detection (#11866)Brad King2012-08-131-37/+24
| | | | | | | | | | | | | | | | Since commit c198730b (Detect Watcom compiler version with its id, 2011-12-07) the CMAKE_(C|CXX)_COMPILER_VERSION variables are set for the Watcom compiler. Use these in Windows-wcl386.cmake to set the old WATCOM1* version variables. This avoids using the old EXECUTE_PROCESS command which failed due to extra quotes anyway.
* | Merge topic 'CPackRPM-fixRelocatablePrefix'David Cole2012-08-131-1/+20
|\ \ | | | | | | | | | | | | 822c1ea Do not include directories which are part of the package install prefix.
| * | Do not include directories which are part of the package install prefix.Andy Piper2012-08-071-1/+20
| |/ | | | | | | | | | | This fix bug #0013451. The bug prevents theorerically relocatable RPM package to be installed properly. Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
* | Merge topic 'fix-typo-13456'David Cole2012-08-131-1/+1
|\ \ | | | | | | | | | | | | 67f11cf FindSelfPackers: fix typo (#13456)
| * | FindSelfPackers: fix typo (#13456)Rolf Eike Beer2012-08-041-1/+1
| |/ | | | | | | Correction by Modestas Vainius.
* | Merge topic 'doc_fixes'David Cole2012-08-131-193/+193
|\ \ | | | | | | | | | | | | 76d6c59 Clean up documentation formatting so that it is rendered properly in HTML.
| * | Clean up documentation formatting so that it is rendered properly in HTML.Zack Galbreath2012-08-031-193/+193
| |/
* | Merge topic 'select-compiler'David Cole2012-08-139-93/+147
|\ \ | | | | | | | | | | | | | | | | | | 7e58e5b Prefer generic system compilers by default for C, C++, and Fortran 796e337 Factor common code out of CMakeDetermine(ASM|C|CXX|Fortran)Compiler b708f1a CMakeDetermine(C|CXX)Compiler: Consider Clang compilers
| * | Prefer generic system compilers by default for C, C++, and FortranBrad King2012-08-029-4/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach CMake to prefer the system default compiler automatically when no compiler is specified. By default use "cc" for C, "CC" for C++, and "f95" for Fortran. Load a new Platform/<os>-<lang>.cmake module to allow each platform to specify for each language its system compiler name(s) and/or exclude certain names. Create Platform/(CYGWIN|Darwin|Linux|Windows)-CXX.cmake modules to specify "c++" as the system C++ compiler name for these platforms. On systems that use case-insensitive filesystems exclude C++ compiler names that are distinguished from C compiler names only by case. This will change the default compiler selection for existing build scripts that do not specify a compiler when run on machines with separate system and GNU compilers both installed in the PATH. We do not make this change in default behavior lightly. However: (1) If a given build really needs specific compilers one should specify them explicitly e.g. by setting CC, CXX, and FC in the environment. (2) The motivating case is to prefer the system Clang on newer OS X systems over the older GNU compilers typically also installed. On such systems the names "cc" and "c++" link to Clang. This is the first platform known to CMake on which "c++" is not a GNU compiler. The old behavior selected "gcc" for C and "c++" C++ and therefore chooses GNU for C and Clang for C++ by default. The new behavior selects GNU or Clang consistently for both languages on older or newer OS X systems, respectively. (3) Other than the motivating OS X case the conditions under which the behavior changes do not tend to exist in default OS installations. They typically occur only on non-GNU systems with manually-installed GNU compilers. (4) The consequences of the new behavior are not dire. At worst the project fails to compile with the system compiler when it previously worked with the non-system GNU compiler. Such failure is easy to work around (see #1). In short this change creates a more sensible default behavior everywhere and fixes poor default behavior on a widely-used platform at the cost of a modest change in behavior in less-common conditions.
| * | Factor common code out of CMakeDetermine(ASM|C|CXX|Fortran)CompilerBrad King2012-08-025-86/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The compiler candidate list selection and search code for C, C++, ASM, and Fortran languages was duplicated across four modules. To look for compilers adjacent to already-enabled languages the C and CXX modules each used _CMAKE_USER_(C|CXX)_COMPILER_PATH and the ASM module used _CMAKE_TOOLCHAIN_LOCATION. Since commit 4debb7ac (Bias Fortran compiler search with C/C++ compilers, 2009-09-09) CMake prefers Fortran compilers matching the vendor and directory of an enabled C or C++ compiler. Factor out the common functionality among the four languages into a new CMakeDetermineCompiler module. Generalize the Fortran implementation so that all languages may each use the vendor and directory of the other languages that have already been enabled. For now do not list any vendor-specific names for C, C++, or ASM so that only the directory preference is used for these languages (existing behavior).
| * | CMakeDetermine(C|CXX)Compiler: Consider Clang compilersBrad King2012-07-312-2/+2
| |/ | | | | | | | | | | Look for "clang" or "clang++" compiler executables so Clang will be used when it is the only compiler available. Prefer them last to avoid changing compiler default preferences for existing scripts.
* | Merge topic 'directory-typo'David Cole2012-08-132-2/+2
|\ \ | | | | | | | | | | | | 6c8722f Fix typo direcotry -> directory (and similar) [#13444]
| * | Fix typo direcotry -> directory (and similar) [#13444]Rolf Eike Beer2012-07-302-2/+2
| |/
* | Merge topic 'SelectLibraryConfiguration-multi-lib-per-var2'David Cole2012-08-131-8/+10
|\ \ | | | | | | | | | | | | 5797512 SelectLibraryConfiguration: generate correct output when input vars are lists
| * | SelectLibraryConfiguration: generate correct output when input vars are listsRolf Eike Beer2012-07-291-8/+10
| |/ | | | | | | | | | | | | | | | | | | In case that any of the input variables that hold the library names contains more than just a single library the "debug" or "optimized" keywords were only prepended to the first item, making all other libs appear in all configurations. Just treat both input variables as lists. Thanks to Philipp Berger <newsletters@philippberger.de> for pointing me at this.
* | Merge topic 'FindOpenSSL-improve'David Cole2012-08-131-35/+43
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 3cfb68d FindOpenSSL: remove leftover comment fc798ed FindOpenSSL: cleanup path hints c78a7d1 FindOpenSSL: let CMake handle environment variable HINTS 7464519 FindOpenSSL: use SelectLibraryConfigurations 4b793ad FindOpenSSL: find cross-compiled OpenSSL from MinGW (#13431)
| * | FindOpenSSL: remove leftover commentRolf Eike Beer2012-07-291-1/+0
| | |
| * | FindOpenSSL: cleanup path hintsRolf Eike Beer2012-07-291-19/+28
| | | | | | | | | | | | | | | | | | -only use Windows-specific paths on Windows -recode the contents of $ENV{PROGRAMFILES} to be a valid CMake path before using it
| * | FindOpenSSL: let CMake handle environment variable HINTSRolf Eike Beer2012-07-291-1/+1
| | | | | | | | | | | | This will automatically make sure the paths will get recoded to proper separators on Windows
| * | FindOpenSSL: use SelectLibraryConfigurationsRolf Eike Beer2012-07-291-13/+5
| | |
| * | FindOpenSSL: find cross-compiled OpenSSL from MinGW (#13431)Rolf Eike Beer2012-07-291-2/+10
| |/ | | | | | | Suggested-by: Dominik Schmidt <dev@dominik-schmidt.de>
* | Merge topic 'EclipseAddSupportForJuno'David Cole2012-08-131-1/+7
|\ \ | | | | | | | | | | | | | | | 53cc102 Eclipse: improve (fix ?) version detection on OSX bcccddc Eclipse: add support for the 4.2 Juno release (#13367)
| * | Eclipse: improve (fix ?) version detection on OSXAlex Neundorf2012-07-281-0/+3
| | | | | | | | | | | | | | | | | | | | | This is probably related to a framework installation I guess. This is part of the patch in #13367 from Nicholas Yue. Alex
| * | Eclipse: add support for the 4.2 Juno release (#13367)Alex Neundorf2012-07-281-1/+4
| |/ | | | | | | | | | | Thanks for the path to Nicholas Yue. Alex
* | Merge topic 'mixed-lib-to-lib64'David Cole2012-08-133-6/+4
|\ \ | |/ |/| | | | | | | | | | | | | af80da3 remove lib64 Unix paths if the respective lib path is also given 733726e find_library: Fix mixed lib->lib64 (non-)conversion cases (#13419) 54add62 find_library: Simplify lib->lib<arch> expansion 6ca2f82 find_library: Refactor lib->lib64 conversion 1fe4b82 find_library: Add test covering lib->lib64 cases
| * remove lib64 Unix paths if the respective lib path is also givenRolf Eike Beer2012-07-213-6/+4
| | | | | | | | If FIND_LIBRARY_USE_LIB64_PATHS is set both will be searched anyway.
* | Fixed: FindLAPACK does not find MKL 10.3 when using gcc 4.xAlexey Ozeritsky2012-07-181-4/+2
|/
* Merge topic 'ninja-rspfile-link-libraries'David Cole2012-07-121-1/+3
|\ | | | | | | | | | | | | | | | | | | 4bb94c9 Ninja: sysconf() is declared in unistd.h bb36759 Ninja: enable response file support on Mac (length 262144) 3a2c8e8 Ninja: disable work around when linking with mingw 3856e66 Ninja: error on missing rspfile_content 8c1e35c Ninja: remove some unused default arguments 7f647cf Ninja: also write link libraries to rsp file
| * Ninja: disable work around when linking with mingwPeter Kümmel2012-07-111-1/+3
| | | | | | | | | | | | | | The work around is only needed by older GCCs (only testet 4.4/4.7) Ninja is very new so chances are high that there is also a new mingw. Use slashes in link rsp file, because ar.exe can't handle \.
* | Merge topic 'aix-gnu-asm'David Cole2012-07-121-0/+2
|\ \ | | | | | | | | | | | | 7755283 Add ASM platform information for GNU compiler on AIX (#13390)
| * | Add ASM platform information for GNU compiler on AIX (#13390)Brad King2012-07-101-0/+2
| |/ | | | | | | | | | | | | Among other flags this sets RPATH flags correctly so that CMake knows how to treat CMAKE_PLATFORM_REQUIRED_RUNTIME_PATH for the ASM language. This is the GNU compiler equivalent to commit a0bab7ae (Add ASM platform information for XL compiler on AIX, 2011-03-02), made for XL.
* | Merge topic 'aix-GNU-shared-libs'David Cole2012-07-121-1/+2
|\ \ | | | | | | | | | | | | 767a7ad AIX-GNU: Link shared libs with -brtl,-bnoipath (#13352)
| * | AIX-GNU: Link shared libs with -brtl,-bnoipath (#13352)Brad King2012-07-091-1/+2
| | | | | | | | | | | | We already use these flags with the XL toolchain. Use them for GNU too.
* | | Merge topic 'deploy-qt4-workaround-bug-13258'David Cole2012-07-121-1/+1
|\ \ \ | |_|/ |/| | | | | | | | 374b9b9 DeployQt4: workaround bug 13258 where ARGV1 is leaked into a sub function.
| * | DeployQt4: workaround bug 13258 where ARGV1 is leaked into a sub function.Clinton Stimpson2012-07-091-1/+1
| |/
* | Merge topic 'getprerequisites-pie-executables'David Cole2012-07-091-0/+8
|\ \ | | | | | | | | | | | | ac7a193 GetPrerequisites.cmake: detect executables built with the -pie linker flag.
| * | GetPrerequisites.cmake: detect executables built with the -pie linker flag.Clinton Stimpson2012-07-051-0/+8
| |/
* | Merge topic 'CPack-honorCPACK_XXX-valuesInScriptFile'David Cole2012-07-091-0/+8
|\ \ | | | | | | | | | | | | 05a8630 Do not provide defaul value for CPACK_PACKAGE_DIRECTORY if found in config.
| * | Do not provide defaul value for CPACK_PACKAGE_DIRECTORY if found in config.Eric NOULARD2012-07-041-0/+8
| |/ | | | | | | This fixes bug #0012906.
* | Merge topic 'FindBoostNotFoundBug'David Cole2012-07-091-119/+109
|\ \ | | | | | | | | | | | | | | | ca90709 FindBoost: Future proof to 1.56 accd042 FindBoost: Fix bug where Boost_FOUND could be false when version specified
| * | FindBoost: Future proof to 1.56Philip Lowman2012-06-301-1/+4
| | |
| * | FindBoost: Fix bug where Boost_FOUND could be false when version specifiedPhilip Lowman2012-06-301-118/+105
| |/ | | | | | | | | | | Fixes a problem where when specifying a version number without the REQUIRED parameter, Boost_FOUND would be true on the first configure but false on subsequent configures.
* | Merge topic 'EclipseFixIncludeDirDetectionMinGW'David Cole2012-07-091-18/+7
|\ \ | | | | | | | | | | | | d7bc8dd Eclipse: fix #13313, always set LANG to C, also if unset
| * | Eclipse: fix #13313, always set LANG to C, also if unsetAlex Neundorf2012-06-251-18/+7
| |/ | | | | | | | | | | Otherwise include dir detection does not work with MinGW on french systems. Alex
* | FindJava: improve version matching (#12878)Rolf Eike Beer2012-06-251-3/+3
|/
* Merge topic 'CMakeDetermineCCompiler-clear-init'David Cole2012-06-211-1/+1
|\ | | | | | | | | b9ccaf5 CMakeDetermineCCompiler: Fix typo "_CXX_" -> "_C_" (#13330)
| * CMakeDetermineCCompiler: Fix typo "_CXX_" -> "_C_" (#13330)Brad King2012-06-201-1/+1
| | | | | | | | | | Initialize CMAKE_C_COMPILER_INIT before using it, rather than CMAKE_CXX_COMPILER_INIT.
* | Merge topic 'qt4-macros'David Cole2012-06-212-24/+38
|\ \ | | | | | | | | | | | | | | | | | | 0331a5a Qt4Macros: add some quotes to prevent damage from spaces in the paths f46903b Qt4Macros: improve basename extraction in QT4_ADD_DBUS_INTERFACES aa841ae FindQt4: extend documentation