Commit Graph

38359 Commits

Author SHA1 Message Date
Brad King
099a4ea50c cmcmd: Fix cmake_symlink_library for inconsistent slashes
With the Ninja generator we may invoke `cmake_symlink_library` with
different slash conventions (`/` versus `\`) for different arguments.
Fix comparison of the paths/names given to tolerate this.

Fixes: #17579
2017-12-20 11:35:09 -05:00
Brad King
4d6c273606 Merge branch 'release-3.10' 2017-12-20 08:18:35 -05:00
Brad King
bad72ccb7f Merge topic 'autogen-nested-lists-fix'
493ad056 Merge branch 'backport-autogen-nested-lists-fix' into autogen-nested-lists-fix
683e9023 Autogen: Fix for problematic nested list separator
3ce7eece Autogen: Fix for problematic nested lists separator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1607
2017-12-20 08:17:37 -05:00
Brad King
c69ce01d44 Merge branch 'backport-autogen-nested-lists-fix' into release-3.10
Merge-request: !1606
2017-12-20 08:16:16 -05:00
Brad King
493ad0565e Merge branch 'backport-autogen-nested-lists-fix' into autogen-nested-lists-fix 2017-12-20 08:15:22 -05:00
Sebastian Holtermann
683e9023a7 Autogen: Fix for problematic nested list separator
In the AutogenInfo.cmake file the separator for nested lists was
`@LSEP@` which led to a speed regression because the `@` character
triggered an (unsuccessful) expression evaluation.

By setting the policy version of the CMake instance in the
`_autogen` target to 3.9, the OLD `@` evaluating behavior
controlled by policy CMP0053 is disabled.

Also the nested lists separator string is changed to `<<<S>>>`,
which solves the problem twofold.

Issue: #17570
2017-12-20 08:14:03 -05:00
Brad King
740e598c8e Merge topic 'update-kwsys'
4966c8d8 Merge branch 'upstream-KWSys' into update-kwsys
86399e49 KWSys 2017-12-15 (8f755ee9)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1597
2017-12-20 07:59:42 -05:00
Brad King
c9cbc32648 Merge topic 'cuda-mixed-cxx-standard'
4b7618d1 CUDA: Fix CUDA_STANDARD selection via cxx_std_11 with CXX_STANDARD
1d2d9c18 cmMakefile: Refactor determining a targets C++ standard level

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1590
2017-12-20 07:59:20 -05:00
Kitware Robot
b5bbf06c26 CMake Nightly Date Stamp 2017-12-20 00:01:15 -05:00
Christian Pfeiffer
7bf2141430 Merge topic 'winarm64'
1f3933d3 Address code review feedback
14ebad53 Use IMAGE_FILE_HEADER and add missing Arm 32bit images support
8950183b Add Arm64 support to COFF symbol export feature

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1603
2017-12-19 12:43:22 -05:00
Kitware Robot
1eac7c6ee5 CMake Nightly Date Stamp 2017-12-19 00:01:12 -05:00
Christian Pfeiffer
0816f7496b Merge topic 'findliblzma-win-name'
de706fe0 FindLibLZMA: Add library name for Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1605
2017-12-18 17:05:22 -05:00
Jacek Blaszczynski
1f3933d382 Address code review feedback 2017-12-18 18:26:55 +01:00
Jacek Blaszczynski
14ebad533d Use IMAGE_FILE_HEADER and add missing Arm 32bit images support 2017-12-18 16:15:58 +01:00
Sebastian Holtermann
3ce7eecedc Autogen: Fix for problematic nested lists separator
In the AutogenInfo.cmake file the separator for nested lists
was `@LSEP@` which led to a speed regression because the `@`
character triggered an (unsuccessful) expression evaluation.

By setting the policy version of the CMake instance in the
`_autogen` target to 3.9, the OLD `@` evaluating behavior
controlled by policy CMP0053 is disabled.

Also the nested lists separator string is changed to `<<<S>>>`,
which solves the problem twofold.

Closes #17570
2017-12-18 14:36:17 +01:00
Kitware Robot
438ed3bfc1 CMake Nightly Date Stamp 2017-12-18 00:01:05 -05:00
Christian Pfeiffer
de706fe0d4 FindLibLZMA: Add library name for Windows
Fixes: #17568
2017-12-18 03:34:49 +01:00
Kitware Robot
08229348a8 CMake Nightly Date Stamp 2017-12-17 00:01:11 -05:00
Jacek Blaszczynski
8950183b38 Add Arm64 support to COFF symbol export feature 2017-12-17 01:41:21 +01:00
Kitware Robot
d4fb3136d5 CMake Nightly Date Stamp 2017-12-16 00:01:10 -05:00
Brad King
4966c8d8da Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-12-15 (8f755ee9)
2017-12-15 10:48:13 -05:00
KWSys Upstream
86399e4939 KWSys 2017-12-15 (8f755ee9)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit 8f755ee93451e580aa7b5ed6cee9e6c5da81e7d0 (master).

Upstream Shortlog
-----------------

Volo Zyko (1):
      9f6cd407 SystemTools: Fix removing of soft links to directories on Windows.
2017-12-15 10:48:13 -05:00
Brad King
f67f76c2b3 Merge topic 'FindFLTK-per-config'
f1299f5d FindFLTK: Find debug and release variants separately
d9154e52 FindFLTK: revise .rst markup
ccc9a6c7 FindFLTK: fix indentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1563
2017-12-15 10:43:07 -05:00
Brad King
76fa3b383e Merge topic 'vs-vcxproj-lowercase-utf-8'
907bc354 VS: Emit "utf-8" encoding as lowercase in .vcxproj headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1594
2017-12-15 10:42:43 -05:00
Brad King
6fb568cef6 Merge topic 'makefile-simplify-fortran'
7ab9a625 Makefiles: Drop 'requires' step and its supporting infrastructure
5f2e2c38 Makefiles: Avoid nested make calls for Fortran module dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1523
2017-12-15 10:42:12 -05:00
Brad King
44111e5cc0 Merge topic 'fix_failing_ResolveDeviceSymbols_test'
81642989 Cuda: ResolveDeviceSymbols now properly execute everywhere.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1593
2017-12-15 10:35:17 -05:00
Robert Maynard
4b7618d170 CUDA: Fix CUDA_STANDARD selection via cxx_std_11 with CXX_STANDARD
When C++ features require a certain C++/CUDA level, verify or update the
standard level target property for each language independently.

While at it, add missing rejection of invalid `CUDA_STANDARD` property
values.

Co-Author: Brad King <brad.king@kitware.com>
Fixes: #17519
2017-12-15 10:29:20 -05:00
Robert Maynard
1d2d9c18bd cmMakefile: Refactor determining a targets C++ standard level
The original code doesn't scale well as we add support for each new
language level.

Co-Author: Brad King <brad.king@kitware.com>
2017-12-15 10:27:07 -05:00
Kitware Robot
4549eed947 CMake Nightly Date Stamp 2017-12-15 00:01:19 -05:00
Brad King
0d1b6c89dc Merge branch 'release-3.10' 2017-12-14 08:39:55 -05:00
Stefano Sinigardi
f1299f5d82 FindFLTK: Find debug and release variants separately 2017-12-14 08:36:23 -05:00
Stefano Sinigardi
d9154e521a FindFLTK: revise .rst markup 2017-12-14 08:36:23 -05:00
Stefano Sinigardi
ccc9a6c706 FindFLTK: fix indentation 2017-12-14 08:36:19 -05:00
Vitaly Stakhovsky
907bc35437 VS: Emit "utf-8" encoding as lowercase in .vcxproj headers
Match the XML preamble generated by VS 2010 and later.
2017-12-14 08:27:48 -05:00
Yurii Batrak
7ab9a62572 Makefiles: Drop 'requires' step and its supporting infrastructure
The 'requires' step was used to provide implicit dependencies between
the generated Fortran module files and a Fortran target that needs these
module files to ensure the correct compilation order.  After recent
refactoring to resolve all dependencies explicitly through `.mod.stamp`
make targets, the separate 'requires' step is not needed anymore.
2017-12-14 08:22:07 -05:00
Brad King
4bc5c08476 Merge topic 'per-source-COMPILE_LANGUAGE-genex-support'
10f58b27 Genex: Per-source $<COMPILE_LANGUAGE:...> support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1575
2017-12-14 08:21:52 -05:00
Brad King
7341930ade Merge topic 'autogen-separate-tests'
540d08f4 Autogen: Tests: Move QtAutoUicInterface test to QtAutogen/UicInterface
b1504f9f Autogen: Tests: Separate RerunRccDepends test
e9fcd154 Autogen: Tests: Separate RerunMocPlugin test
54b4ff2a Autogen: Tests: Separate RerunMocBasic test
4988746e Autogen: Tests: Separate Complex test
6ce6fd42 Autogen: Tests: Separate StaticLibraryCycle test
45b6776a Autogen: Tests: Separate SameName test
d7868687 Autogen: Tests: Separate MacOsFW test
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1578
2017-12-14 08:21:28 -05:00
Brad King
671958d288 Merge topic 'irsl-intel-fortran-only-fix'
7d1ed84c IRSL: Skip libgfxoffload if no Intel C++ is used

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1589
2017-12-14 08:18:53 -05:00
Yurii Batrak
5f2e2c387d Makefiles: Avoid nested make calls for Fortran module dependencies
Makefiles generated by cmake use a series of nested calls to build
`*.provides.build` targets that are used when the 'requires' step is
needed.  That leads to significant degradation of the build time for
incremental builds.  Re-arrange dependencies to eliminate the nested
calls.

Explicit `.mod.stamp` targets introduced by this commit could lead to
situation when a stamp file always older than its dependency.  This
happens during the incremental build when building of an updated Fortran
source produces a module file that has no differences from the stored
stamp file.  In such case `cmake_copy_f90_mod` will be triggered on each
new build to compare a module file with the corresponding stamp file.
This behavior is expected and can not be changed without nested calls
that slow down the build.  The copy-if-different check is much cheaper
than an entire nested make call.
2017-12-14 08:13:42 -05:00
Brad King
1e148aba70 Merge topic 'cmGraphVizWriter_Interface_Dependers'
9b4d31dc cmGraphVizWriter: Updated to create and follow dependers for interface targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1581
2017-12-14 08:08:05 -05:00
Brad King
307214c0ee Merge branch 'cmGraphVizWriter_Interface_Dependers' into release-3.10
Merge-request: !1581
2017-12-14 08:06:56 -05:00
Joel T. Frederico
9b4d31dc77 cmGraphVizWriter: Updated to create and follow dependers for interface targets
Generating graphs of dependencies now uses interface targets, but graphs
of dependers did not include interface targets.
2017-12-14 08:03:02 -05:00
Kitware Robot
1e2911b8cd CMake Nightly Date Stamp 2017-12-14 00:01:11 -05:00
Robert Maynard
8164298935 Cuda: ResolveDeviceSymbols now properly execute everywhere.
The previous version had two bugs that caused the JIT runtime errors.

1. It was building the executable without separable compilation enabled

2. All kernel launches will fail if any kernel is missing a symbol, that
   is why the call to file2_launch_kernel had to be removed
2017-12-13 17:34:48 -05:00
Marc Chevrier
10f58b27ac Genex: Per-source $<COMPILE_LANGUAGE:...> support
Fixes: #17542
2017-12-13 16:35:22 +01:00
Brad King
e80cc856da Merge branch 'release-3.10' 2017-12-13 09:15:08 -05:00
Brad King
166bf4c490 CMake 3.10.1 v3.10.1 2017-12-13 08:34:28 -05:00
Brad King
3fdc4397e1 Merge branch 'release-3.10' 2017-12-13 08:03:05 -05:00
Brad King
a363c9356d Merge topic 'findmpi-builtin-fix'
d1d8719f FindMPI: Fix various legacy problems

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1569
2017-12-13 07:52:54 -05:00
Brad King
f0b3fab179 Merge topic 'irsl-msvc-omp-fix'
4dae55fb IRSL: Fix MSVC variable deferencing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1588
2017-12-13 07:50:52 -05:00