Commit Graph

24792 Commits

Author SHA1 Message Date
Brad King 8472ef243f Merge topic 'cxx11-features'
60c0d2dd Features: Add cxx_defaulted_move_initializers.
c4e67235 Features: Add cxx_long_long_type.
dcaafada Features: Add cxx_func_identifier.
251a1f02 Features: Add cxx_local_type_template_args.
53fe7773 Features: Add cxx_extended_friend_declarations.
16603f7c Features: Add cxx_enum_forward_declarations.
adf22f61 Features: Add cxx_default_function_template_args.
7b3e8a05 Features: Add cxx_right_angle_brackets.
9a49fd21 Features: Add cxx_decltype_incomplete_return_types.
1889045c Features: Add cxx_sizeof_member.
ab455eba Features: Add cxx_thread_local.
300ce248 Features: Add cxx_inline_namespaces.
f9d04a96 Features: Add cxx_variadic_macros.
3d76656f Features: Add cxx_uniform_initialization.
e74b216c Features: Add cxx_generalized_initializers.
ff80c3b4 Features: Add cxx_attributes.
...
2014-04-15 10:32:13 -04:00
Brad King b56a9ae7f1 Merge topic 'target_compile_features'
9eaf3755 Export: Populate INTERFACE_COMPILE_FEATURES property.
8ed59fc2 Add target_compile_features command.
4e6ca504 cmTargetPropCommandBase: Change the interface to return bool.
5412dede cmTarget: Transitively evaluate compiler features.
baff4434 cmTarget: Allow populating COMPILE_FEATURES using generator expressions.
f97bf437 Features: Add cxx_auto_type.
03355d6b cmTarget: Add COMPILE_FEATURES target property.
faeddf64 project: Add infrastructure for recording CXX compiler features
913394af cmTarget: Add CXX_STANDARD and CXX_EXTENSION target properties.
8238a6cd Add some COMPILE_OPTIONS for specifying C++ dialect.
892243fc Tests: Require CMake 3.0 for the SystemInformation test.
59b5fdd3 Don't load Clang-CXX from AppleClang-CXX.
2014-04-15 10:32:11 -04:00
Daniele E. Domenichelli ef9366b0bb FindGTK2: Add /usr/X11R6/ to include paths
Should fix builds on OpenBSD, see
http://open.cdash.org/viewTest.php?onlyfailed&buildid=3286713
2014-04-15 16:26:13 +02:00
Brad King 593b69c9dc Merge topic 'aix-no-sstream'
941a1404 AIX: fix compilation error because of missing <sstream>
2014-04-15 10:22:41 -04:00
Brad King 33358fd571 Merge topic 'CMP0051-typo'
454b4bd2 Help: Fix typo in CMP0051.
2014-04-15 10:22:40 -04:00
Brad King fc65bbdb70 Merge topic 'openbsd-sign-warning'
3022f2a1 cmELF: fix signedness warning on OpenBSD
2014-04-15 10:22:38 -04:00
Brad King 028aee1a07 Merge topic 'mingw-archive-no-replace'
39d0ade0 Windows-GNU: Support duplicate object names in large archives (#14874)
2014-04-15 10:22:36 -04:00
Brad King 18aaed77c0 Merge topic 'matches-cleanup'
f21ac16e Replace MATCHES test on numbers with EQUAL test
7eacbaed Replace MATCHES ".+" tests with NOT STREQUAL ""
3a71d34c Use CMAKE_SYSTEM_NAME instead of CMAKE_SYSTEM where sufficient
b0b4b460 Remove .* expressions from beginning and end of MATCHES regexs
5bd48ac5 Replace string(REGEX REPLACE) with string(REPLACE) where possible
2622bc3f Clean up usage of if(... MATCHES regex) followed string(REGEX REPLACE regex)
2014-04-15 10:22:34 -04:00
Brad King 60d1882a67 Merge topic 'ninja-link-with-compile-flags'
97f2b7f5 Ninja: set correct LANGUAGE_COMPILE_FLAGS when linking
49fcffc6 Ninja: cmake formatting, make code more readable
b735c8cb MinGW: link like on Unix and use compile flags when linking
2014-04-15 10:22:32 -04:00
Brad King e13ff189d1 Merge topic 'libarchive-no-acl'
d9b59179 libarchive: Skip finding libacl.h when ENABLE_ACL is OFF (#14866)
2014-04-15 10:22:30 -04:00
Brad King 4966c62f31 Merge topic 'CMakeDetermineVSServicePack-warn-deprecated'
73721c7c CMakeDetermineVSServicePack: Add deprecation diagnostic
2014-04-15 10:22:28 -04:00
Brad King 1ce673a88b Merge topic 'fix-qthelp-installation'
6578508c Help: Fix installation of the Qt qch file.
2014-04-15 10:22:26 -04:00
Brad King cb101b95f9 Merge topic 'ninja-win-link-path'
504bb62d Ninja: replace \ in LINK_PATH for MinGW
2014-04-15 10:22:24 -04:00
Brad King 851a202d33 Merge topic 'fix-SourceFiles-configure-time'
b8af2011 cmTarget: Fix listing of source files at configure-time.
2014-04-15 10:22:22 -04:00
Brad King 18e480a5e9 Merge topic 'openbsd-warnings'
f9f91fa8 CTestCustom: Suppress warnings about rand() and srand() on OpenBSD
2014-04-15 10:22:20 -04:00
Brad King 27c141131e Merge topic 'hpux-acc-ansi98'
185b4efe CompileFlags: add better selection which aCC version gets -AA +hpxstd98 flags
2014-04-15 10:22:18 -04:00
Brad King eda0dd6ffb Merge topic 'suppress-sha2-cast-align-warnings'
a553dc0a CTestCustom: Suppress -Wcast-align warnings in sha2 code
2014-04-15 10:22:17 -04:00
Brad King 353367091f Merge topic 'FindMPI-lang-implicit-dirs'
856bfe23 FindMPI: Use compiler implicit link dirs for matching language (#14870)
2014-04-15 10:22:15 -04:00
Peter Kümmel 97f2b7f5ab Ninja: set correct LANGUAGE_COMPILE_FLAGS when linking 2014-04-15 10:17:06 -04:00
Peter Kümmel 49fcffc6cc Ninja: cmake formatting, make code more readable 2014-04-15 10:17:06 -04:00
Peter Kümmel b735c8cb43 MinGW: link like on Unix and use compile flags when linking 2014-04-15 10:17:06 -04:00
Peter Kümmel 504bb62d99 Ninja: replace \ in LINK_PATH for MinGW 2014-04-15 10:14:50 -04:00
Rolf Eike Beer f9f91fa8b9 CTestCustom: Suppress warnings about rand() and srand() on OpenBSD
We don't do crypto here, so a "poor" random doesn't matter. In fact we have API
to allow people to get a repeatable sequence by setting a specific seed.
2014-04-15 10:13:43 -04:00
Brad King 6ab7c32648 libarchive: Avoid left-shift overflow of signed integer
In libarchive/archive_write_set_format_zip.c there are two calls to
archive_le32enc whose second argument is of the form

 archive_entry_mode(zip->entry) << 16

However, the return type from archive_entry_mode may be a signed integer
so the shift may overflow.  Since the second argument of archive_le32enc
expects uint32_t anyway, simply cast to that prior to shifting.
2014-04-15 09:08:20 -04:00
Kitware Robot dd3a80b718 CMake Nightly Date Stamp 2014-04-15 00:01:09 -04:00
Rolf Eike Beer 941a14042a AIX: fix compilation error because of missing <sstream>
Replace it by cmStandardIncludes.h which drags in the proper header depending
on what the compiler provides to fix this error:

CMake/Source/cmExtraCodeLiteGenerator.cxx:27: sstream: No such file or directory
2014-04-14 23:07:58 +02:00
Stephen Kelly 454b4bd244 Help: Fix typo in CMP0051.
STRIP_GENEX -> GENEX_STRIP.
2014-04-14 23:00:30 +02:00
Rolf Eike Beer 3022f2a1ef cmELF: fix signedness warning on OpenBSD
OpenBSD defines Elf64_Dyn::d_tag to be of an unsigned type, which differs from
what most other platforms do and what is the case for 32 bit. To have the tag
as unsigned makes sense, but this causes a compilation warning:

/.../CMake/Source/cmELF.cxx: In member function 'const cmELF::StringEntry* cmELFInternalImpl<Types>::GetDynamicSectionString(int) [with Types = cmELFTypes64]':
/.../CMake/Source/cmELF.cxx:945:   instantiated from here
/.../CMake/Source/cmELF.cxx:668: warning: comparison between signed and unsigned integer expressions

Add an explicit typedef to cast the value to for 32 and 64 bit. That type is
unsigned and has the proper length for both platforms so no information is
lost. Explicitely cast both arguments before comparing them to avoid the
warning in all situations.
2014-04-14 20:43:10 +02:00
Brad King 39d0ade07e Windows-GNU: Support duplicate object names in large archives (#14874)
Since commit v2.6.0~388 (Added build rule variables
CMAKE_<LANG>_ARCHIVE_..., 2008-01-29) we use separate "ar cr ..." and
"ar r ..." steps to incrementally add a large list of object files to an
archive.  Since the "r" command replaces existing objects of the same
name in an archive, if multiple objects have the same file name and
appear in separate append steps then one overwrites the other.  Instead,
use "ar cq ..." and "ar q ..." to always append to the archive.

We already remove the archive before creating it so this will not cause
objects to be appended to existing archives on incremental rebuilds.
2014-04-14 14:35:19 -04:00
Rolf Eike Beer f21ac16edd Replace MATCHES test on numbers with EQUAL test
The MATCHES tests were actually wrong, as "a4b" and "42" would also cause a
match when it should not.
2014-04-14 18:17:49 +02:00
Rolf Eike Beer 7eacbaed4d Replace MATCHES ".+" tests with NOT STREQUAL "" 2014-04-14 18:17:23 +02:00
Rolf Eike Beer 3a71d34cf3 Use CMAKE_SYSTEM_NAME instead of CMAKE_SYSTEM where sufficient 2014-04-14 18:17:18 +02:00
Rolf Eike Beer b0b4b4602f Remove .* expressions from beginning and end of MATCHES regexs
All these expressions work the same:
  "foo"
  ".*foo.*"
  "^.*foo.*$"

This assumes that the "Intel*" expressions were meant to be "Intel.*".
2014-04-14 18:17:11 +02:00
Rolf Eike Beer 5bd48ac534 Replace string(REGEX REPLACE) with string(REPLACE) where possible
The simple replacement is much faster.
2014-04-14 18:17:05 +02:00
Rolf Eike Beer 2622bc3f65 Clean up usage of if(... MATCHES regex) followed string(REGEX REPLACE regex)
The matches have already been calculated and can simply be taken from
CMAKE_MATCH_n variables. This avoids multiple compilations of the same or very
similar regular expressions.
2014-04-14 18:16:58 +02:00
Mike Crowe d9b591790e libarchive: Skip finding libacl.h when ENABLE_ACL is OFF (#14866) 2014-04-14 09:34:12 -04:00
Brad King 11a6b3d59a Merge topic 'update-libarchive'
5a58efaa libarchive: Avoid using name 'u_long'
e2b02823 Update libarchive configuration within CMake
80883321 libarchive: Do not require includers to have windows.h
dfb0458e libarchive: Convert literal LL suffix to ARCHIVE_LITERAL_LL
b0a9807f libarchive: Update archive_util.c to use CMake zlib and bzip2 headers
debe4dec libarchive: Drop options not present in reduced version
66b0c4fa libarchive: Do not generate a pkg-config file
8092e759 libarchive: Update README-CMake.txt for new snapshot
2f197863 Merge branch 'libarchive-upstream' into update-libarchive
23e4666c libarchive: Disable more whitespace checks in third-party code
64713ae3 libarchive 3.1.2-218-g00f4bd83 (reduced)
2014-04-14 09:32:44 -04:00
Brad King 73721c7ce0 CMakeDetermineVSServicePack: Add deprecation diagnostic
Warn project developers at runtime that the module should not be used
anymore.  Issue the diagnostic only when the project requires a new
enough CMake to use the alternative.  Honor the
CMAKE_(ERROR|WARN)_DEPRECATED settings.
2014-04-14 09:31:54 -04:00
Stephen Kelly 6578508ca3 Help: Fix installation of the Qt qch file.
The file was changed to have the version in its name in
commit 111bb67c (Help: Use a more-appropriate qthelp namespace and
file name., 2014-04-10).
2014-04-14 13:14:31 +02:00
Kitware Robot b8fd66f31c CMake Nightly Date Stamp 2014-04-14 00:01:05 -04:00
Stephen Kelly b8af201168 cmTarget: Fix listing of source files at configure-time.
Since commit e5da9e51 (cmTarget: Allow any generator expression in
SOURCES property., 2014-03-18), source files are computed by
true evaluation of generator expressions, including TARGET_OBJECTS.
This evaluation requires the presence of cmGeneratorTarget objects
since commit bf98cc25 (Genex: Evaluate TARGET_OBJECTS as a normal
expression., 2014-02-26).

Ensure that we don't attempt to evaluate the TARGET_OBJECTS generator
expression at configure-time, as can happen if CMP0024 or CMP0026
are OLD.  Use old-style parsing of the source item to extract
object target names in that case.

Avoid calling GetProperty("SOURCES") to bypass warnings from CMP0051.
Refactor existing logic in GetLanguages which is similar in intent to
the new GetSourceFiles code.
2014-04-13 10:59:50 +02:00
Kitware Robot 99514c7e9c CMake Nightly Date Stamp 2014-04-13 00:01:07 -04:00
Rolf Eike Beer 185b4efe33 CompileFlags: add better selection which aCC version gets -AA +hpxstd98 flags 2014-04-13 00:48:02 +02:00
Kitware Robot 973b3e7dcd CMake Nightly Date Stamp 2014-04-12 00:01:13 -04:00
Brad King a553dc0a09 CTestCustom: Suppress -Wcast-align warnings in sha2 code
This is third party code and we know that at run time the correct
alignment is achieved.
2014-04-11 10:39:58 -04:00
Melven Roehrig-Zoellner 856bfe238c FindMPI: Use compiler implicit link dirs for matching language (#14870)
Update the logic added by commit 2f9ad7c6 (Fix FindMPI for the intel
compiler on linux, 2012-03-20) to use the implicit link directories for
the current ${lang} instead of hard-coding C or CXX which may not be
enabled.  This is necessary for Fortran-only projects.
2014-04-11 09:59:48 -04:00
Brad King 3927747547 Merge branch 'release' 2014-04-11 09:37:50 -04:00
Brad King a6fee73dac Merge topic 'CMakeDetermineVSServicePack-vs-11-update-4'
f0de3f80 CMakeDetermineVSServicePack: Add VS 11 update 4
105658df CMakeDetermineVSServicePack: Match versions more robustly
101515b9 CMakeDetermineVSServicePack: Format documentation
2014-04-11 09:13:16 -04:00
Brad King 893843ce21 Merge topic 'Fortran-pgi-intel-arch'
eb8cb2c6 Fortran: Detect pointer size on Intel archs with PGI (#14870)
2014-04-11 09:13:14 -04:00
Brad King 7ae139999b Merge topic 'qthelp_names'
111bb67c Help: Use a more-appropriate qthelp namespace and file name.
2014-04-11 09:13:12 -04:00