Commit Graph
28539 Commits
Author SHA1 Message Date
Gregor Jasny 481420ee89 Xcode: Generate ZERO_CHECK generator target only once
In case CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY has been enabled
generate only the root-level ZERO_CHECK target so targets in
subdirectories pick up the root generator target of ZERO_CHECK.

For the case that CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY is not
enabled more investigation and a proper and final fix is still needed.

Issue: 14297
2018-02-22 21:15:48 +01:00
Brad King 36fc89b7d9 Merge branch 'std-thread-link' into release-3.11
Merge-request: !1789
2018-02-22 13:15:58 -05:00
Brad King 94eee5e683 CMakeLib: Link to system thread libraries to support std::thread
Some environments require linking to thread libraries for `std::thread`.
Express this direct dependency of CMakeLib explicitly.  Previously this
was done indirectly through our bundled libuv, but that does not work
when using a system libuv.

Fixes: #17757
2018-02-22 12:59:20 -05:00
Brad King 5c0223886e Merge topic 'setidentifier_move'
46436581 cmGeneratorExpression: Use std::move to avoid vector copies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1779
2018-02-22 11:36:34 -05:00
Brad King b0e2b256c8 Merge topic 'cmake-build-global-gen'
83f8e764 cmake: Fix global generator path style in --build mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1784
2018-02-22 11:34:50 -05:00
Kitware Robot a08ede979b CMake Nightly Date Stamp 2018-02-22 00:01:07 -05:00
Vitaly Stakhovsky b723fe3d7d VS: Convert loops to C++11, other C++ improvements 2018-02-21 21:18:59 -05:00
Frank Winklmeier 46436581c6 cmGeneratorExpression: Use std::move to avoid vector copies
Use move semantics in GeneratorExpressionContent::SetIdentifier and
::SetParameters to avoid vector copies.
2018-02-21 11:11:50 -05:00
Brad King 83f8e76467 cmake: Fix global generator path style in --build mode
Fix the `--build` code path so that `cmSystemTools::SetForceUnixPaths`
is called with the global generator's path style.  This makes forwarding
of `--target subdir/src.c.obj` match the slash style the generator
placed in the build system.

Fixes: #17742
2018-02-21 10:13:47 -05:00
Kitware Robot 4e6f94d49c CMake Nightly Date Stamp 2018-02-21 00:01:09 -05:00
Claus Klein 84de8b80ec Ninja: Use as dependency file <objectDir/SourceName>.d if needed. 2018-02-20 21:42:50 +01:00
Brad King 846a4dd118 Merge topic 'string-join'
689eeb67 string: Add JOIN subcommand

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com>
Merge-request: !1762
2018-02-20 11:47:51 -05:00
Brad King 8a99ccc5ed Merge topic 'ninja-cmake-deps'
ed000d7d Ninja: Don't add custom command outputs to phony rule for CMake inputs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1768
2018-02-20 11:46:21 -05:00
Kitware Robot 31419815aa CMake Nightly Date Stamp 2018-02-20 00:01:08 -05:00
Kitware Robot a99ff558af CMake Nightly Date Stamp 2018-02-19 00:01:12 -05:00
Kitware Robot 33ace6eb91 CMake Nightly Date Stamp 2018-02-18 00:01:06 -05:00
Kitware Robot 3b6fe84cb7 CMake Nightly Date Stamp 2018-02-17 00:01:14 -05:00
Alex Turbov 689eeb67cb string: Add JOIN subcommand
This is just like CONCAT but accepts a glue string to put between
each value.  `JOIN ""` is equivalent to `CONCAT`.
2018-02-16 10:04:47 -05:00
Brad King 524696ec10 Merge topic 'file_cmd_touch'
e78e24f6 Replaces execute_process calls to touch files with file(TOUCH) calls
602988e1 Adds file(TOUCH) and file(TOUCH_NOCREATE) sub-commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1705
2018-02-16 09:39:47 -05:00
Brad King d97c9ffb6c Merge topic 'genex-IN_LIST-operator'
5089f560 Genex: Add IN_LIST logical operator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1724
2018-02-16 09:22:56 -05:00
Kitware Robot 269722ae5b CMake Nightly Date Stamp 2018-02-16 00:01:12 -05:00
Shane Parris 602988e1e5 Adds file(TOUCH) and file(TOUCH_NOCREATE) sub-commands 2018-02-15 10:54:18 -05:00
Patrick Stewart ed000d7d30 Ninja: Don't add custom command outputs to phony rule for CMake inputs 2018-02-15 15:03:53 +00:00
Brad King b5d18cbd77 Merge topic 'directory-property-TESTS'
b513a879 Tests management: add TESTS directory property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1748
2018-02-15 08:49:44 -05:00
Brad King 8bd3e13ec3 Merge topic 'export-android-mk'
b6d68766 Android.mk: Fix export of static libraries with PRIVATE dependencies
56e16885 Android.mk: Evaluate generator expressions up front

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1766
2018-02-15 08:42:47 -05:00
Brad King 02edf08be2 Merge branch 'export-android-mk' into release-3.11
Merge-request: !1766
2018-02-15 08:42:07 -05:00
Kitware Robot cbdec57937 CMake Nightly Date Stamp 2018-02-15 00:01:08 -05:00
Brad King b6d68766b1 Android.mk: Fix export of static libraries with PRIVATE dependencies
The `LINK_ONLY` generator expression is used to represent private
dependencies of static libraries in their `INTERFACE_LINK_LIBRARIES`
property value.  Fix evaluation of generator expressions during export
to support the `LINK_ONLY` genex.  Extend the RunCMake.AndroidMK test
with a case for this.
2018-02-14 11:24:05 -05:00
Brad King 56e1688517 Android.mk: Evaluate generator expressions up front
When exporting `INTERFACE_LINK_LIBRARIES`, we must evaluate generator
expressions first, before expanding the `;` list, in case they contain
or generate semicolons.
2018-02-14 11:19:47 -05:00
Brad King ead859f50c Merge topic 'ninja-cmd'
22e8b3af Ninja: Generate scripts for long custom command sequences

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1604
2018-02-14 09:43:38 -05:00
Brad King 7593c9ce8c Merge topic 'const-members'
b721b9a3 cmVisualStudio10TargetGenerator: Make some data members const; simplify

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1750
2018-02-14 09:36:17 -05:00
Kitware Robot d870148537 CMake Nightly Date Stamp 2018-02-14 00:01:12 -05:00
Brad King 58c637643d Merge topic 'more-misc-typos'
193082a3 MAINT: Misc. typos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1758
2018-02-13 11:28:31 -05:00
luz.paz 193082a3c8 MAINT: Misc. typos
Found via `codespell -q 3 -I ../cmake-whitelist.txt`.
2018-02-13 11:24:30 -05:00
Brad King 16c6764f9b Merge topic '17711-reset-xcode-target-var'
4349393d cmGlobalXCodeGenerator: Properly initialize TARGETS variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1757
2018-02-13 11:17:25 -05:00
Brad King 31550ebf31 Merge topic 'autogen-write-on-change-only'
c85ef9c3 Autogen: Overwrite info files when changed only

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1753
2018-02-13 11:12:14 -05:00
Brad King 43cd9467cd Merge branch 'autogen-write-on-change-only' into release-3.11
Merge-request: !1753
2018-02-13 11:05:11 -05:00
Brad King 2a730e24c6 Merge branch '17711-reset-xcode-target-var' into release-3.11
Merge-request: !1757
2018-02-13 11:03:15 -05:00
Gregor Jasny 4349393d1d cmGlobalXCodeGenerator: Properly initialize TARGETS variable
Fixes: #17711
2018-02-13 11:02:24 -05:00
Kitware Robot ab8416776d CMake Nightly Date Stamp 2018-02-13 00:01:07 -05:00
Kitware Robot 0465d3c204 CMake Nightly Date Stamp 2018-02-12 00:01:11 -05:00
Kitware Robot e24cda008e CMake Nightly Date Stamp 2018-02-11 00:01:05 -05:00
Kitware Robot 1f39bfad47 CMake Nightly Date Stamp 2018-02-10 00:01:12 -05:00
Kitware Robot b0c3696205 CMake Nightly Date Stamp 2018-02-09 00:01:06 -05:00
Marc Chevrier b513a879ec Tests management: add TESTS directory property
Implements: #17680
2018-02-08 19:16:28 +01:00
Kitware Robot 1da3f3e916 CMake Nightly Date Stamp 2018-02-08 00:01:12 -05:00
Marc Chevrier 5089f560e7 Genex: Add IN_LIST logical operator
Implements #17679
2018-02-07 10:57:18 +01:00
Kitware Robot 5656ebc87c CMake Nightly Date Stamp 2018-02-07 00:01:05 -05:00
Roger Leigh 22e8b3af04 Ninja: Generate scripts for long custom command sequences
Ninja runs just one command line for every build statement, so the Ninja
generator needs to `&&`-chain multiple commands together into one long
string.  For long custom command sequences this can exceed the maximum
command-line length for the operating system.  In such cases, write the
commands out to a script instead, and then run the script from Ninja's
one command line.

Co-Author: Brad King <brad.king@kitware.com>
Fixes: #15612
2018-02-06 13:24:46 -05:00
Sebastian Holtermann c85ef9c339 Autogen: Overwrite info files when changed only
Check if the content of the AUTOMOC/UIC/RCC info file
will change before overwriting it. This avoids unnecessary
AUTORCC rebuilds when AUTORCC unrelated CMake settings change.
2018-02-06 11:20:08 -05:00