Commit Graph

23845 Commits

Author SHA1 Message Date
Brad King 729dda5420 Merge topic 'src-genex-refactoring'
6bffc13e Refactor per-source generator expression evaluation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1550
2017-12-05 08:15:40 -05:00
Brad King 0236e50802 Merge topic 'update-cpplint'
bfcc2034 Update cpplint support to return 0 and mark warnings for CDash.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1544
2017-12-05 08:14:39 -05:00
Brad King 0b7822f49a Merge topic 'win-fallthrough'
21541bb5 Use CM_FALLTHROUGH in Windows-specific code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1555
2017-12-05 08:13:34 -05:00
Brad King b8e7af979d Merge topic 'ctest-chrono'
66419bc0 CTest: convert timeouts to std::chrono::duration
923b8fad IWYU: Add mappings for std::enable_if on chrono durations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1513
2017-12-05 08:12:52 -05:00
Kitware Robot 8616e9ba24 CMake Nightly Date Stamp 2017-12-05 00:01:13 -05:00
Brad King 21541bb5cc Use CM_FALLTHROUGH in Windows-specific code
Some cases were missed by earlier sweeps due to not compiling
Windows-specific code.
2017-12-04 10:58:15 -05:00
Brad King d8290531a9 Merge topic 'cpack-pkg-fix'
f25d87db CPack: Fix macOS PKG component dependency information

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1547
2017-12-04 10:50:33 -05:00
Brad King caa1c4967a Merge topic 'csharp_project_without_sources'
8e654a37 VS: Enable generation of CSharp projects without initial .cs files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1521
2017-12-04 10:48:53 -05:00
Brad King 411397f913 Merge topic 'update-kwsys'
be8ec418 Merge branch 'upstream-KWSys' into update-kwsys
740ccb1f KWSys 2017-12-01 (0f0023b1)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1548
2017-12-04 10:46:36 -05:00
Wouter Klouwen 66419bc046 CTest: convert timeouts to std::chrono::duration
This commit continues the refactoring of CTest to adopt std::chrono.
After the last sets of changes that introduced std::chrono::steady_clock
and std::chrono::system_clock respectively, it makes sense to have all
the timeouts be stored as std::chrono::duration.

No functional change intended.
2017-12-04 10:43:14 -05:00
Brad King 5f87ea1603 Merge topic 'cmake-job-pool'
07185055 Ninja: add CMAKE_JOB_POOLS variable as default for JOBS_POOLS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1514
2017-12-04 10:38:51 -05:00
Marc Chevrier 6bffc13ef1 Refactor per-source generator expression evaluation
Prepare to add generator expression support to more source properties.
Factor out some duplicated code into a helper to avoid further
duplication.
2017-12-04 09:10:09 -05:00
Kitware Robot 7f881d159c CMake Nightly Date Stamp 2017-12-04 00:01:08 -05:00
Kitware Robot 2f8711d958 CMake Nightly Date Stamp 2017-12-03 00:01:17 -05:00
Kitware Robot bfbe4aaeb8 CMake Nightly Date Stamp 2017-12-02 00:03:10 -05:00
Bill Hoffman bfcc20343c Update cpplint support to return 0 and mark warnings for CDash.
This commit makes cpplint act like the other compiler mirroring tools. It
will always return 0 even if it reports warnings and will only return non
zero if there is a problem running the command. In addition, it will now
add some extra text to allow CTest to recognize the warnings and report
them correctly to CDash.
2017-12-01 16:23:45 -05:00
Alexander Wittig f25d87db9e CPack: Fix macOS PKG component dependency information
Refactoring in commit v3.7.0-rc1~523^2 (CPack/PackageMaker: port to
cmXMLWriter, 2016-06-08) accidentally broke `distribution.dist`
generation when there are dependencies between components and the pkg
(or the derived productbuild) generator are used.  The resulting
package cannot be installed and instead the Apple Installer app
shows a "Javascript error" message.

The problem is that a `std::ostringstream` is constructed with some
content, but the stream pointer still points to the beginning of the
stream, so subsequent writes overwrite the initial content instead of
appending.
2017-12-01 10:52:55 -05:00
Brad King be8ec41896 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-12-01 (0f0023b1)
2017-12-01 08:52:33 -05:00
Brad King 22e67bc6bb Merge topic 'simplify_target_link_libraries'
8112059e target_link_libraries: Simplify implementation and add comments.
b0e2f141 target_link_libraries: Slightly fix some error-messages.
85457b63 target_link_libraries: Return earlier on some error.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1531
2017-12-01 08:24:08 -05:00
Brad King e61c1cf64c Merge topic 'libuv-raii'
3bcaa870 cmUVHandlePtr: Add uv_process_ptr
dd700e9b cmUVHandlePtr: Add uv_timer_ptr
32cfa7b3 cmUVHandlePtr: Move to CMakeLib to make it available everywhere

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1541
2017-12-01 08:22:49 -05:00
Brad King 006a4956a2 Merge topic 'fixCMakeVersionRC'
4a3c19a5 Windows: Fix version embedding in CMake binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1536
2017-12-01 08:11:07 -05:00
Brad King 4d0bcc94c4 Merge topic 'simplify-fallthrough'
b2f612a0 Simplify CM_FALLTHROUGH implementation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1540
2017-12-01 08:04:21 -05:00
Brad King 340fae777a Merge topic 'update-kwsys'
d094b679 Merge branch 'upstream-KWSys' into update-kwsys
5fa41459 KWSys 2017-11-30 (fa1ab7b8)
a3e029ef cmStandardLexer.h: Do not include a C++ header

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1539
2017-12-01 08:03:53 -05:00
Kitware Robot 6287365ab0 CMake Nightly Date Stamp 2017-12-01 00:01:20 -05:00
Brad King 3bcaa87007 cmUVHandlePtr: Add uv_process_ptr 2017-11-30 13:43:43 -05:00
Brad King dd700e9bfb cmUVHandlePtr: Add uv_timer_ptr 2017-11-30 13:26:35 -05:00
Deniz Bahadir 8112059ee7 target_link_libraries: Simplify implementation and add comments.
The implementation of `target_link_libraries` did grow over the years
when new features where added. This commit cleans up the implementation
and adds comments to better document its intention.

The behavior of `target_link_libraries` itself is left untouched.
2017-11-30 17:35:25 +01:00
Brad King 32cfa7b324 cmUVHandlePtr: Move to CMakeLib to make it available everywhere 2017-11-30 11:19:31 -05:00
Brad King 92b212e875 Merge topic 'libuv-raii'
1e9b7d3c server: Switched to a auto model for handles
f43b9219 tests: Added tests to verify UV RAII semantics/constructs
a3abb85c Add RAII handles for libuv handle types
90f8db26 tests: unconditionally enabled server tests
b56b51fc utility: Disabled copy ctors in thread classes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1453
2017-11-30 10:57:52 -05:00
Justin Goshi 4a3c19a583 Windows: Fix version embedding in CMake binaries
In commit 5b9da05b7a (Windows: Embed version information into CMake
binaries, 2017-10-25) we left out `<winres.h>` since MinGW does not have
the header, but it is needed for the `VS_VERSION_INFO` macro.  Provide
the macro ourselves.

Suggested-by: Christian Pfeiffer <cpfeiffer@live.de>
2017-11-30 10:42:26 -05:00
Brad King b2f612a0fa Simplify CM_FALLTHROUGH implementation
Use the macro now provided by KWSys instead of using `try_compile`
checks.  It will no longer consider the `__attribute__((fallthrough))`
variant, but compilers that don't have one of the modern attributes
shouldn't warn about not using one anyway.
2017-11-30 09:50:39 -05:00
Brad King d094b6796a Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-11-30 (fa1ab7b8)
2017-11-30 08:52:45 -05:00
Brad King a3e029effd cmStandardLexer.h: Do not include a C++ header
This header is meant for inclusion in lexer `.c` files.
2017-11-30 08:46:06 -05:00
Brad King 5d43e46ad5 Merge topic 'whitelist-more-interface-properties'
fb3c5bfd cmTargetPropertyComputer: whitelist custom properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1515
2017-11-30 07:57:08 -05:00
Kitware Robot 868fdb439a CMake Nightly Date Stamp 2017-11-30 00:01:14 -05:00
Justin Berger 1e9b7d3ceb server: Switched to a auto model for handles 2017-11-29 16:36:31 -05:00
Justin Berger a3abb85c6f Add RAII handles for libuv handle types
The `uv_*_t` handle types are closed by `uv_close`, but the semantics
are tricky.  Calling `uv_close` may not close immediately.  Instead it
hands ownership to the uv loop to which the handle is currently
attached.  When the loop decides to close it, a callback is used to
allow the `uv_close` caller to free resources.

Provide an abstraction layer as `cm::uv_*_ptr` types corresponding to
the `uv_*_t` handle types.  Each pointer is either empty (`nullptr`)
or has an initialized handle attached to a loop.  Use move semantics
to ensure a single owner of the handle so that clients can predict
when the handle is destroyed.
2017-11-29 16:36:31 -05:00
Justin Berger b56b51fcaf utility: Disabled copy ctors in thread classes 2017-11-29 16:36:31 -05:00
Matt McCormick 07185055d5 Ninja: add CMAKE_JOB_POOLS variable as default for JOBS_POOLS
This enables configuration of build parallelism with the Ninja generator by
passing arguments on the command line to CMake. For example,

  cmake \
    '-DCMAKE_JOB_POOLS:STRING=compile=5;link=2' \
    -DCMAKE_JOB_POOL_COMPILE:STRING=compile \
    -DCMAKE_JOB_POOL_LINK:STRING=link \
      ~/src/MyProject
2017-11-29 15:13:36 -05:00
Craig Scott b311b87518 Merge topic 'check_fixtures_before_exe_existence'
fbe91dba CTest: Check failed fixture dependencies before test command and args

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !1526
2017-11-29 15:09:58 -05:00
Michael Stürmer 8e654a3785 VS: Enable generation of CSharp projects without initial .cs files
fixes #17388
2017-11-29 18:06:08 +01:00
Deniz Bahadir b0e2f1415e target_link_libraries: Slightly fix some error-messages.
Some error-messages are slightly adjusted to better tell what
invocation would be correct instead. Tests are adjusted accordingly.
2017-11-29 17:01:47 +01:00
Deniz Bahadir 85457b63c8 target_link_libraries: Return earlier on some error. 2017-11-29 17:00:56 +01:00
Brad King c07b18d883 Merge topic 'CodeBlocks-custom-compiler-id'
e04f1d1b CodeBlocks: add option for the CB compiler ID

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1512
2017-11-29 08:32:26 -05:00
Brad King 71c28bddba Merge topic 'aix-threads'
4ff89fb6 AIX: Add -pthread flag to enable std::thread with GCC
6e613ff3 bootstrap: Add infrastructure to detect threading flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1535
2017-11-29 08:32:00 -05:00
Brad King 89a628e28f Merge topic 'fortran-compiler-launcher'
f19c70c3 Fortran: Add option to run the compiler through launcher tools

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1517
2017-11-29 08:21:44 -05:00
Kitware Robot a4ddc7357a CMake Nightly Date Stamp 2017-11-29 00:01:04 -05:00
Craig Scott fbe91dba6a CTest: Check failed fixture dependencies before test command and args 2017-11-29 07:27:20 +11:00
Brad King 4ff89fb608 AIX: Add -pthread flag to enable std::thread with GCC 2017-11-28 11:24:26 -05:00
Brad King 923b8fadd5 IWYU: Add mappings for std::enable_if on chrono durations
IWYU incorrectly classifies this internal STL type as not internal, and
suggests including `<type_traits>` for it.  Work around the problem by
mapping the offending names to a file that we always include.

See include-what-you-use issue 434.
2017-11-28 10:50:44 -05:00