Commit Graph

17568 Commits

Author SHA1 Message Date
Brad King d7c6f410f9 Detect HP compiler version with its id
Decode decimal digits from __HP_cc and __HP_aCC to compute version
number components.  See documentation at:

  http://predef.sourceforge.net/precomp.html
  http://g4u0420c.houston.hp.com/en/14487/preprocess.htm
2012-01-10 13:07:04 -05:00
Brad King 3dd9fa9d6a Detect SunPro compiler version with its id
Decode hex digits from __SUNPRO_C and __SUNPRO_CC to compute the version
number components.  Note that the constant encodes decimal digits as hex
digits (never larger than 9).  We represent them as decimal after
extraction.  See documentation at

  http://predef.sourceforge.net/precomp.html

Although the documented version number format is

  0xVRP where V = Version, R = Revision, P = Patch

it holds only though SunPro C/C++ version 5.9.  Later versions have
a two-digit revision (minor) number so their format is 0xVRRP.
2012-01-10 11:59:14 -05:00
Brad King c198730b45 Detect Watcom compiler version with its id
Decode decimal digits from __WATCOMC__ to compute the version number
components.  See documentation at:

  http://predef.sourceforge.net/precomp.html
2011-12-07 09:39:50 -05:00
Brad King 5899b988d5 Detect Clang compiler version with its id
Decode decimal digits from

  __clang_major__
  __clang_minor__
  __clang_patchlevel__

to compute version number components.  See documentation at:

  http://clang.llvm.org/docs/LanguageExtensions.html#builtinmacros
  http://predef.sourceforge.net/precomp.html
2011-12-07 09:39:49 -05:00
Brad King b8cfa656ce Detect PGI compiler version with its id
Decode decimal digits from

  __PGIC__
  __PGIC_MINOR__
  __PGIC_PATCHLEVEL__

to compute version number components.
2011-12-07 09:39:48 -05:00
Brad King 6dae6660fc Detect IBM XL compiler version with its id
Decode decimal digits from __IBMC__ and __IBMCPP__ to compute version
number components.  See documentation at:

  http://predef.sourceforge.net/precomp.html
  http://publib.boulder.ibm.com/infocenter/comphelp/v111v131/topic/com.ibm.xlc111.aix.doc/compiler_ref/xlmacros.html
  http://publib.boulder.ibm.com/infocenter/comphelp/v111v131/topic/com.ibm.xlcpp111.aix.doc/compiler_ref/xlmacros.html
2011-12-07 09:39:47 -05:00
Brad King 4080d5510e Detect Borland compiler version with its id
Decode hex digits from __BORLANDC__ to compute the version number
components.  Note that the constant encodes decimal digits as hex digits
(never larger than 9).  We represent them as decimal after extraction.
See documentation at

  http://predef.sourceforge.net/precomp.html
  http://docwiki.embarcadero.com/RADStudio/en/Predefined_Macros
2011-12-07 09:39:46 -05:00
Brad King 2cc205a0fb Detect Intel compiler version with its id (#11937)
Decode decimal digits from

  __INTEL_COMPILER
  __INTEL_COMPILER_BUILD_DATE

to compute the version number components.  See documentation at:

  http://predef.sourceforge.net/precomp.html
  http://software.intel.com/sites/products/documentation/hpc/compilerpro/en-us/fortran/lin/compiler_f/bldaps_for/common/bldaps_use_presym.htm
2011-12-07 09:39:45 -05:00
Brad King a6d83ccea9 Detect MSVC compiler version with its id
Decode decimal digits from _MSC_VER, _MSC_FULL_VER, and _MSC_BUILD to
compute the version number components.  See documentation at:

  http://msdn.microsoft.com/en-us/library/b0084kay.aspx
  http://predef.sourceforge.net/precomp.html
2011-12-07 08:59:53 -05:00
Brad King a66285583d Detect GNU compiler version with its id (#6251)
Decode decimal digits from

  __GNUC__
  __GNUC_MINOR__
  __GNUC_PATCHLEVEL__

to compute version components.  See documentation at

  http://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
  http://predef.sourceforge.net/precomp.html
2011-12-07 08:59:52 -05:00
Brad King fa7141f5ad Add framework to detect compiler version with its id (#12408)
Teach CMakePlatformId.h to construct an "INFO:compiler_version[]" string
literal from macros COMPILER_VERSION_(MAJOR|MINOR|PATCH|TWEAK) to be
defined in CMake(C|CXX)CompilerId.(c|cpp) for each compiler.  Provide
conversion macros DEC() and HEX() to decode decimal or hex digits from
integer values.  Parse the version out of the compiler id binary along
with the other INFO values already present.

Store the result in variable CMAKE_<LANG>_COMPILER_VERSION in the format
"major[.minor[.patch[.tweak]]]".  Save the value persistently in
CMake(C|CXX)Compiler.cmake in the build tree.  Document the variable for
internal use since we do not set it everywhere yet.

Report the compiler version on the compiler id result line e.g.

  The C compiler identification is GNU 4.5.2

Report CMAKE_(C|CXX)_COMPILER_(ID|VERSION) in SystemInformation test.
2011-12-07 08:59:51 -05:00
KWSys Robot e0bc42aa4f KWSys Nightly Date Stamp 2011-12-05 00:05:05 -05:00
KWSys Robot e21e5cf289 KWSys Nightly Date Stamp 2011-12-04 00:05:11 -05:00
KWSys Robot 901e6d023f KWSys Nightly Date Stamp 2011-12-03 00:05:06 -05:00
KWSys Robot 8bda047b8e KWSys Nightly Date Stamp 2011-12-02 00:05:04 -05:00
David Cole 9401da8084 Merge topic 'FindZLIB-use-ZLIB_ROOT'
985dee4 FindZLIB: Search under ZLIB_ROOT if it is set
2011-12-01 14:03:36 -05:00
David Cole 97142c7603 Merge topic 'newline-style'
ac2e45d Provide std::ios_base typedef on GCC < 3
28c46ca cmNewLineStyle: Use cmStandardIncludes.h
75e83e9 cmNewLineStyle: Remove trailing comma in enum
be6502c bootstrap: Include cmNewLineStyle in build
a087490 Add NEWLINE_STYLE option to configure_file (#3957)
2011-12-01 14:03:24 -05:00
David Cole 333fd1131c Merge topic 'useqt4-fix-declarative'
3cd08ce Qt4: Fix dependencies of QtDeclartive.
2011-12-01 14:03:03 -05:00
David Cole f1ad054317 Merge topic 'remove-cmLocalGenerator-trailing-whitespace'
6b104e1 Remove trailing whitespace from cmLocalGenerator
2011-12-01 14:02:39 -05:00
David Cole f64d85e711 Merge topic 'vs-managed-projects'
a1f976c VS: Add support for three new project properties (#12586)
2011-12-01 14:02:32 -05:00
David Cole 9c288d6c2b Merge topic 'automoc_qt5'
a828623 moc is now part of the Qt5Core module
b8c8cab Merge remote-tracking branch 'origin/master' into automoc_qt5
2011-12-01 14:02:21 -05:00
David Cole 3f4672b1d7 Merge topic 'cmake-gui_AddCompletionForAddCacheEntry'
b0d01c3 cmake-gui: add completion for the names when adding cache entries
08c59af Remove trailing whitespace
2011-12-01 14:02:05 -05:00
KWSys Robot 0393aa61d1 KWSys Nightly Date Stamp 2011-12-01 00:05:04 -05:00
Brad King 985dee4f54 FindZLIB: Search under ZLIB_ROOT if it is set
Perform multiple separate searches in order.  If ZLIB_ROOT is set search
it exclusively so it takes precedence over CMAKE_PREFIX_PATH.  This
allows a user to provide -DZLIB_ROOT=/path/to/zlib/prefix on the CMake
command line to tell it exactly where to find zlib.  Otherwise fall back
to a normal search.

Inspired-by: Andreas Schneider <asn@cryptomilk.org>
2011-11-30 13:18:07 -05:00
Brad King ac2e45d089 Provide std::ios_base typedef on GCC < 3
The ancient GNU standard library provided std::ios but not
std::ios_base.  Define the latter in terms of the former.
2011-11-30 09:27:18 -05:00
Brad King 28c46ca6cd cmNewLineStyle: Use cmStandardIncludes.h
This ensures that stl types are compiled consistently with
the reset of CMake.  Otherwise one may get errors like

  Undefined symbol: .cmNewLineStyle::ReadFromArguments(
    const std::vector<std::_LFS_ON::basic_string ...)

due to inconsistent large file support definitions.
2011-11-30 09:19:32 -05:00
KWSys Robot 17388037fd KWSys Nightly Date Stamp 2011-11-30 00:05:04 -05:00
Clinton Stimpson 3cd08ce048 Qt4: Fix dependencies of QtDeclartive. 2011-11-29 09:02:40 -07:00
Brad King 6b104e107e Remove trailing whitespace from cmLocalGenerator 2011-11-29 08:58:45 -05:00
Brad King 75e83e98fa cmNewLineStyle: Remove trailing comma in enum 2011-11-29 08:01:07 -05:00
Brad King be6502c502 bootstrap: Include cmNewLineStyle in build
The cmNewLineStyle class is needed by cmMakefile.
2011-11-29 07:56:28 -05:00
KWSys Robot 89f6fbaae3 KWSys Nightly Date Stamp 2011-11-29 00:05:04 -05:00
Peter Kuemmel a087490697 Add NEWLINE_STYLE option to configure_file (#3957) 2011-11-28 13:48:59 -05:00
Aaron Ten Clay a1f976ce0e VS: Add support for three new project properties (#12586)
VS_GLOBAL_PROJECT_TYPES: A string containing UUIDs to embed in the
Visual Studio project file under <ProjectTypes>.

VS_GLOBAL_KEYWORD: Allows specification of a keyword like "ManagedCProj"
instead of the default "Win32Proj", under <Keyword>

VS_DOTNET_REFERENCES: Semicolon-delimited list of .NET references to add
to the project, which creates a new <ItemGroup>.
2011-11-28 11:44:04 -05:00
KWSys Robot 912c02c682 KWSys Nightly Date Stamp 2011-11-28 00:05:05 -05:00
KWSys Robot 10c3113464 KWSys Nightly Date Stamp 2011-11-27 00:05:05 -05:00
Stephen Kelly a8286235a3 moc is now part of the Qt5Core module
There is no separate SrcTools module anymore.
2011-11-26 15:15:33 +01:00
KWSys Robot 66f44dcdf4 KWSys Nightly Date Stamp 2011-11-26 00:05:08 -05:00
KWSys Robot d63af6df7c KWSys Nightly Date Stamp 2011-11-25 00:05:06 -05:00
KWSys Robot 27e6ea9d2a KWSys Nightly Date Stamp 2011-11-24 00:05:05 -05:00
David Cole 7ed2ed9a2e Merge topic 'CheckImportedFileExistenceInConfigDotCMakeFiles'
5c03438 install(EXPORT): Improve target import failure message format
a2be068 install(EXPORT): Enforce existence of imported target files
2011-11-23 08:16:15 -05:00
David Cole 1ec3801a3a Merge topic 'target-link-libraries-interfaces'
b1f12f8 target_link_libraries: Simplify argument processing state tests
5fc95df target_link_libraries: Add missing space in documentation
9143822 target_link_libraries: Add LINK_(PUBLIC|PRIVATE) options
cf64218 target_link_libraries: Trim trailing whitespace
2011-11-23 08:16:10 -05:00
KWSys Robot 57a85237ac KWSys Nightly Date Stamp 2011-11-23 00:05:08 -05:00
Brad King b1f12f8042 target_link_libraries: Simplify argument processing state tests
Remove extra parens in test for not handling LINK_INTERFACE_LIBRARIES.
Remove redundant test for equality with ProcessingPrivateInterface
subsumed by test for inequality with ProcessingPublicInterface.
2011-11-22 17:21:36 -05:00
Brad King 5fc95dff46 target_link_libraries: Add missing space in documentation
Change "thelink" to "the link".
2011-11-22 17:19:04 -05:00
Stephen Kelly 914382224d target_link_libraries: Add LINK_(PUBLIC|PRIVATE) options
Makes it possible to specify the link dependencies and link
interfaces in one command without repetition.
2011-11-22 16:52:35 -05:00
Stephen Kelly cf64218eeb target_link_libraries: Trim trailing whitespace 2011-11-22 16:52:27 -05:00
David Cole d9df0cca66 Merge topic 'crypto-hash'
0599c5f sha2: Zero entire SHA_CTX structure during cleanup
0a6705c sha2: Suppress -Wcast-align warning from Clang
24b1feb sha2: Cast safe conversions to smaller integer types
1ec3fa0 Merge branch 'update-KWIML' into crypto-hash
6495b59 cmCryptoHash: Add virtual destructor
8302608 Fix CMake.File hash test for CRLF checkouts
9fb1a9c sha2: Wrap long lines in third-party declarations
b0853b5 Disable file() and string() hash commands during bootstrap
9da8340 sha2: Suppress Borland warnings in third-party code
23b3df7 sha2: Use KWIML fixed-size integer constant macros
2e9c26c Add string(MD5) and string(SHA*) commands to compute hashes
293a7f4 cmCryptoHash: Provide factory "New" method
46ab056 sha2: Use "static const" instead of "const static" declarations
38771d3 Add file(SHA*) commands to compute cryptographic hashes
73efd4a sha2: Build as part of CMakeLib
c1856a3 sha2: Use KWIML fixed-size integer types and endian-ness
fcc3ce5 Merge branch 'import-sha2' into crypto-hash
042f796 Add file(MD5) command to compute cryptographic hash
ed7cef5 Factor Compute(File|String)MD5 into cmCryptoHash helper
8251b20 Import sha2 implementation 1.1 from Aaron D. Gifford
9912c41 Import sha2 implementation 1.0 from Aaron D. Gifford
2011-11-22 16:24:21 -05:00
David Cole 7db42fc255 Merge topic 'update-KWIML'
ec358d1 Merge branch 'upstream-kwiml' into update-KWIML
b421c24 KWIML: Avoid MSVC linker warning about not using C++ runtime
5796f88 Merge branch 'upstream-kwiml' into update-KWIML
ae7cf91 KWIML: Teach ABI.h about PGI compiler
aaf3765 Merge branch 'upstream-kwiml' into update-KWIML
9ccd639 KWIML: Ignore _LONGLONG on MS compiler
8be93fc KWIML: Test header inclusion after system headers
2011-11-22 16:24:04 -05:00
David Cole 7b1b13c8f0 Merge topic 'EclipseImprovedSourceProject'
982b766 Eclipse: use new variable CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT
1110e45 Eclipse: create links to subprojects also in the source-project (#12579)
2011-11-22 16:23:56 -05:00