14802 Commits

Author SHA1 Message Date
Robert Maynard
6fac24d750 Ninja: Avoid re-running CMake on next build after regeneration
In commit 4a6397a7 (Ninja: Track configured files so we can regenerate
them, 2013-06-17) we accidentally started listing files generated by
CMake as inputs to the configuration process instead of outputs from it.
Move the list of files generated by CMake to the regeneration rule
outputs section and tell Ninja to restat after running it.
2014-01-13 10:09:48 -05:00
Brad King
c515dc5748 Merge topic 'fix-install-include-dirs-processing'
6f98f4a Genex: Fix processing multiple include directories for relative paths
2013-10-07 08:26:46 -04:00
Stephen Kelly
6f98f4ac92 Genex: Fix processing multiple include directories for relative paths
Re-insert the semicolon which was removed during splitting.

Commit d777b8e7 (Genex: Allow relative paths in INSTALL_INTERFACE.,
2013-07-25) introduced the prefixItems method to allow relative paths
in the argument of the INSTALL_INTERFACE expression. That method was
buggy in that it did not re-introduce the semicolon separator in
the result.

This bug also affects paths which are already absolute in user code.
2013-10-07 08:17:12 -04:00
Kitware Robot
d85b06602a CMake Nightly Date Stamp 2013-10-07 00:01:10 -04:00
Kitware Robot
5b98d09e80 CMake Nightly Date Stamp 2013-10-06 00:01:10 -04:00
Kitware Robot
dc92741d03 CMake Nightly Date Stamp 2013-10-05 00:01:06 -04:00
Kitware Robot
e20edcdb3d CMake Nightly Date Stamp 2013-10-04 00:01:07 -04:00
Brad King
e27523a834 Merge topic 'xcode-5'
a3194ff Xcode: Fix OBJECT library support for Xcode 5 (#14254)
dff8d11 Xcode: Drop XCODE_DEPEND_HELPER for Xcode >= 5
1180322 Xcode: Teach Tests/BuildDepends to allow LINK_DEPENDS_NO_SHARED failure
765b46d Xcode: Fix test architecture selection for Xcode >= 5
2013-10-03 08:17:43 -04:00
Kitware Robot
a9a48ff9f4 CMake Nightly Date Stamp 2013-10-03 00:01:05 -04:00
Brad King
a3194ff4a7 Xcode: Fix OBJECT library support for Xcode 5 (#14254)
Xcode 2.1 through 4 supported $(CURRENT_ARCH) in a PBXFileReference
'path' value used in the "Link Binary with Libraries" build phase.
CMake uses this to reference object file locations on link lines to
bring in OBJECT library content.  However, Xcode 5 now evaluates the
$(CURRENT_ARCH) reference in this context as "undefined_arch" so the
wrong path is given to the linker.  There seems to be no alternative way
to produce an architecture-specific value in a PBXFileReference.

Fortunately Xcode 5 now also handles link dependencies for paths linked
through OTHER_LDFLAGS.  For Xcode >= 5, move the OBJECT library object
file references from the link build phase to OTHER_LDFLAGS.  We can
still show the object files in the source group listing in either case.
2013-10-02 13:03:21 -04:00
Brad King
dff8d113b4 Xcode: Drop XCODE_DEPEND_HELPER for Xcode >= 5
Xcode 5.0 now computes dependencies from files linked through
OTHER_LDFLAGS, so we no longer need the XCODE_DEPEND_HELPER hack to
re-link dependents when targets change.
2013-10-02 12:49:09 -04:00
Kitware Robot
c0133a58e8 CMake Nightly Date Stamp 2013-10-02 00:01:07 -04:00
Brad King
e02e56c4a6 Merge topic 'fix-duplicate-custom-commands'
dccd494 Use first custom command for the same output (#14446)
2013-10-01 08:05:17 -04:00
Kitware Robot
fa97f43c81 CMake Nightly Date Stamp 2013-10-01 00:01:06 -04:00
Brad King
dccd4949c0 Use first custom command for the same output (#14446)
In buggy code like

 add_custom_command(
   OUTPUT  ${CMAKE_CURRENT_BINARY_DIR}/out.h
   MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/out.h.in
   ...)
 add_custom_command(
   OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/out.h
   ...)

that has more than one rule to generate the same output CMake has always
used the first rule.  However, since commit 2268c41a (Optimize custom
command full-path dependency lookup, 2013-08-06) we update the map from
output to cmSourceFile for every rule generating an output, effectively
keeping the last command instead of the first.

Fix this regression by checking for each map update if the output
already has an entry.  If so, keep only the original entry.  The VS 8
generator triggers this with a special case for generate.stamp rules
that differ between ZERO_CHECK and normal targets, so do not warn for
now.  Leave a TODO comment for warning in the future.
2013-09-30 15:03:00 -04:00
Kitware Robot
6a3958b374 CMake Nightly Date Stamp 2013-09-30 00:01:04 -04:00
Kitware Robot
6f74212360 CMake Nightly Date Stamp 2013-09-29 00:01:07 -04:00
Kitware Robot
1bf010ae98 CMake Nightly Date Stamp 2013-09-28 00:01:10 -04:00
Kitware Robot
6ed8504ea5 CMake Nightly Date Stamp 2013-09-27 00:01:08 -04:00
Kitware Robot
b89cedd112 CMake Nightly Date Stamp 2013-09-26 00:01:16 -04:00
Kitware Robot
5f8eefa301 CMake Nightly Date Stamp 2013-09-25 00:01:11 -04:00
Kitware Robot
e5538f323e CMake Nightly Date Stamp 2013-09-24 00:01:07 -04:00
Kitware Robot
475635ec0f CMake Nightly Date Stamp 2013-09-23 00:01:05 -04:00
Kitware Robot
fe5e193020 CMake Nightly Date Stamp 2013-09-22 00:01:06 -04:00
Kitware Robot
ee6b7a8a18 CMake Nightly Date Stamp 2013-09-21 00:01:05 -04:00
Kitware Robot
45b182180c CMake Nightly Date Stamp 2013-09-20 00:01:10 -04:00
Kitware Robot
5e2b499485 CMake Nightly Date Stamp 2013-09-19 00:01:05 -04:00
Kitware Robot
9bcf6adc38 CMake Nightly Date Stamp 2013-09-18 00:01:06 -04:00
Kitware Robot
abfd574d05 CMake Nightly Date Stamp 2013-09-17 00:01:06 -04:00
Brad King
237aaafe80 Merge topic 'fix-genex-preprocessing-incomplete'
70089d0 genex: Fix preprocessing with incomplete content (#14410).
2013-09-16 08:55:21 -04:00
Kitware Robot
c1122e1ecb CMake Nightly Date Stamp 2013-09-16 00:01:06 -04:00
Kitware Robot
3cc8a78403 CMake Nightly Date Stamp 2013-09-15 00:01:05 -04:00
Kitware Robot
396dfafa59 CMake Nightly Date Stamp 2013-09-14 00:01:07 -04:00
Stephen Kelly
70089d0769 genex: Fix preprocessing with incomplete content (#14410).
Similar incomplete generator expressions are already tested
in the GeneratorExpression unit test, but those are executed
with add_custom_target. The generator expressions in the include
directories are run through the preprocessor, whereas the ones
run through add_custom_target are not.
2013-09-13 18:21:37 +02:00
Brad King
b434b0510a Merge topic 'print-CMP0022-content-conflict'
271bf10 Fix CMP0022 warning when no old-style property is set
2013-09-13 11:37:53 -04:00
Stephen Kelly
271bf10263 Fix CMP0022 warning when no old-style property is set
The string could be null at this point.
2013-09-13 11:34:08 -04:00
Kitware Robot
1fef29e4c6 CMake Nightly Date Stamp 2013-09-13 00:01:06 -04:00
Brad King
4c4bafdeab Merge topic 'print-CMP0022-content-conflict'
81d2793 Add differing target property content to policy CMP0022 warning
2013-09-12 08:46:44 -04:00
Brad King
00e44b6f0d Merge topic 'vs-intel-version'
cd90a0e VS: Future-proof Intel project format selection
2013-09-12 08:46:30 -04:00
Kitware Robot
85e35a3aed CMake Nightly Date Stamp 2013-09-12 00:01:09 -04:00
Stephen Kelly
81d2793e92 Add differing target property content to policy CMP0022 warning
List the contents of the INTERFACE_LINK_LIBRARIES and the old-style
property.
2013-09-11 22:28:32 +02:00
Kitware Robot
7c7cdf7073 CMake Nightly Date Stamp 2013-09-11 00:01:05 -04:00
Brad King
cd90a0eadd VS: Future-proof Intel project format selection
The version of Intel Fortran that actually uses 9.10 as a project format
is very old.  Default to the latest format version (11.0) and use the
older format only when known to be necessary.

Suggested-by: Dick Munroe <munroe@csworks.com>
2013-09-10 13:44:10 -04:00
Kitware Robot
b2ce2f5e48 CMake Nightly Date Stamp 2013-09-10 00:01:10 -04:00
Brad King
1e11708a56 Merge topic 'no_track_configured_files'
38571f2 cmMakefile: Do not track CMake temporary files.
2013-09-09 11:01:56 -04:00
Robert Maynard
38571f2c94 cmMakefile: Do not track CMake temporary files.
Since commit ad502502 (cmMakefile: Track configured files so we can
regenerate them, 2013-06-18) cmMakefile::ConfigureFile records the
configured file as an output file generated by CMake.  The intention is
that for make and ninja we can re-run CMake when one of the files it
generates goes missing.  However, files configured temporarily in
CMakeTmp directories by Check* modules do not live past the CMake
invocation.

We have to also track input files to the configure command.  In theory
the input to a configure command could it self be a file that is going
to be deleted later (output from a custom command or configure_file).
2013-09-09 10:58:21 -04:00
Kitware Robot
92cc653979 CMake Nightly Date Stamp 2013-09-09 00:01:03 -04:00
Kitware Robot
bbfa1b2bc5 CMake Nightly Date Stamp 2013-09-08 00:01:04 -04:00
Kitware Robot
7d2adde2af CMake Nightly Date Stamp 2013-09-07 00:01:11 -04:00
Kitware Robot
8ff2b5548c CMake Nightly Date Stamp 2013-09-06 00:01:05 -04:00