Commit Graph

37903 Commits

Author SHA1 Message Date
Domen Vrankar
deeba85f81 CMake: enable setting default dir creation permissions
Introduces CMAKE_DEFAULT_DIRECTORY_INSTALL_PERMISSIONS
variable which enables the user to specify the default
permissions for directory creation. This setting is then
used to auto set the permissions on directories which
are implicitly created by install() and file(INSTALL)
commands such as CMAKE_INSTALL_PREFIX directories.
2017-11-08 20:27:03 +01:00
Brad King
30fcf13be6 Merge topic 'imported-promotion'
6a3922be Add new target-property `IMPORTED_GLOBAL`.
854e482a cmTarget: Simplified and fixed a string-comparision.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1254
2017-11-08 09:08:15 -05:00
Brad King
9f30cd13da Merge topic 'update-kwsys'
517cfe0b Merge branch 'upstream-KWSys' into update-kwsys
dc059ae7 KWSys 2017-11-07 (5249a82d)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1458
2017-11-08 09:05:59 -05:00
Brad King
f8f3338582 Merge topic 'flang-windows'
3c368228 Flang: Add support for compiling sources on Windows
72d27964 Flang: Identify as simulating MSVC on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1430
2017-11-08 09:05:13 -05:00
Brad King
3b853ffd16 Merge branch 'release-3.10' 2017-11-08 09:01:38 -05:00
Brad King
0e3518ac05 Merge branch 'release-3.9' 2017-11-08 09:01:33 -05:00
Brad King
77b73ff134 Merge topic 'irsl-win2018'
f6994f43 IRSL: Add support for the 2018 release on Windows.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1451
2017-11-08 08:59:52 -05:00
Brad King
7bd4c1c1bb Merge topic 'FindOpenGL-clarify-libraries'
f44fb2dd FindOpenGL: Clarify logic constructing OPENGL_LIBRARIES

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1459
2017-11-08 08:52:01 -05:00
Brad King
bd68d0c252 Merge topic 'implicit-lib-gcceh'
41aacca7 Restore exclusion of "gcc_eh" from implicit link libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1460
2017-11-08 08:25:16 -05:00
Brad King
ddf485511b Merge branch 'implicit-lib-gcceh' into release-3.10
Merge-request: !1460
2017-11-08 08:12:08 -05:00
Brad King
482f71c491 Merge branch 'implicit-lib-gcceh' into release-3.9
Merge-request: !1460
2017-11-08 08:11:41 -05:00
Christian Pfeiffer
41aacca7fb Restore exclusion of "gcc_eh" from implicit link libraries
Since commit v3.9.0-rc1~148^2 (Do not assume GCC libs are linked by all
compilers, 2017-05-05) we no longer filter out all `gcc*` implicit link
libraries.  This allows mixing of gcc and non-gcc compilers across
languages.  However, this caused a subtle problem with how GCC makes
exception handling symbols available to linked binaries.

GCC (at least on MinGW) provides two different libraries with exception
handling symbols:

* gcc_s: A shared library with -fvisibility=default, used by -shared-libgcc.
* gcc_eh: A static library with -fvisibility=hidden, used by -static-libgcc.

The C compiler (on MinGW) defaults to -static-libgcc and uses gcc_eh.
The C++ compiler defaults to -shared-libgcc and uses gcc_s when linking
shared libraries and executables so that exceptions can propagate across
shared libraries [1].  When linking a mixed-language binary, the C++
compiler should be used along with its choice of gcc_s.  In this case
gcc_eh should not be added even though the C compiler implies it because
gcc_s supersedes it.

Since the above-mentioned change, CMake is adding gcc_eh to C++ link
lines that also contain C code on MinGW.  This causes both gcc_s and
gcc_eh to be used, which is incorrect.  We can fix this simply by
excluding gcc_eh from the C compiler's implicit link libraries.

[1] https://gcc.gnu.org/onlinedocs/gcc-7.2.0/gcc/Link-Options.html#Link-Options

Fixes: #17436
2017-11-08 08:10:52 -05:00
Kitware Robot
2ae78569b4 CMake Nightly Date Stamp 2017-11-08 00:03:44 -05:00
Brad King
575250b6c4 Merge branch 'FindOpenGL-clarify-libraries' into release-3.10
Merge-request: !1459
2017-11-07 09:35:04 -05:00
Brad King
f44fb2dd4c FindOpenGL: Clarify logic constructing OPENGL_LIBRARIES
Our comment says the logic matches that for OpenGL::GL.  Structure
the logic the same way to make this clearer.

Issue: #17437
2017-11-07 09:33:43 -05:00
Deniz Bahadir
6a3922bebe Add new target-property IMPORTED_GLOBAL.
The purpose of this new `IMPORTED_GLOBAL` target-property is to prolong
the lifetime and scope of `IMPORTED` targets in such a way as if they
had been created with the keyword `GLOBAL` in the first place.

* It can only be set to `TRUE`. That means, a local `IMPORTED` target
  can be promoted to global scope but a global `IMPORTED` target cannot
  be degraded to local scope!
* Setting it to `TRUE` only succeeds if done from within the same
  directory in which the `IMPORTED` target was created in the first
  place.

Fixes #17256.
2017-11-07 15:08:41 +01:00
Brad King
a7347c022e Merge topic 'csharp-version-english'
04937db1 CSharp: Fix compiler version detection in non-English languages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1449
2017-11-07 08:31:09 -05:00
Brad King
fcb39aaa19 Merge topic 'update-CheckFortran'
6e2193a2 Tests: Avoid hanging on check for Fortran
e673e6f0 Tests: Pass generator instance into check for Fortran

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1454
2017-11-07 08:25:41 -05:00
Brad King
9a0d3e2ed6 Merge branch 'csharp-version-english' into release-3.10
Merge-request: !1449
2017-11-07 08:23:36 -05:00
Yoshinori Tahara
04937db103 CSharp: Fix compiler version detection in non-English languages
When we run `csc.exe /help` we look for "Version" in the output.
Explicitly ask for the output in English.

Reported-by: guttally@users.noreply.github.com
2017-11-07 08:23:16 -05:00
Brad King
b5d8610430 Merge topic 'findboost-compiler-version'
d70bdc72 FindBoost: support more than one number in version components
335816ef FindBoost: use CMake's compiler version rather than querying again

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1441
2017-11-07 08:21:23 -05:00
Brad King
1348f97784 Merge topic 'server-test-info'
35a52bd1 server: add "ctestInfo" request to get test info

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1414
2017-11-07 08:18:59 -05:00
Brad King
517cfe0b8c Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-11-07 (5249a82d)
2017-11-07 08:16:14 -05:00
KWSys Upstream
dc059ae70b KWSys 2017-11-07 (5249a82d)
Code extracted from:

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

at commit 5249a82d5e617a29659e5881d0df65acb3220eab (master).

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

Brad King (1):
      bfdbfe9b Avoid requiring CMake 3.4 string(APPEND)

luzpaz (1):
      9a1d5901 Fix trivial typos in text
2017-11-07 08:16:13 -05:00
Kitware Robot
c37c4771cb CMake Nightly Date Stamp 2017-11-07 00:01:14 -05:00
Brad King
6f80b10c83 Merge branch 'irsl-win2018' into release-3.10
Merge-request: !1451
2017-11-06 14:11:39 -05:00
Christian Pfeiffer
f6994f436c IRSL: Add support for the 2018 release on Windows.
Fixes: #17421
2017-11-06 14:10:45 -05:00
Ben Boeckel
d70bdc72ce FindBoost: support more than one number in version components 2017-11-06 13:26:23 -05:00
Brad King
6e2193a26d Tests: Avoid hanging on check for Fortran
Use a timeout when running the check for Fortran in case the tools hang.
2017-11-06 10:21:11 -05:00
Brad King
e673e6f053 Tests: Pass generator instance into check for Fortran
Check for a Fortran compiler using the same VS instance that we are
testing.
2017-11-06 10:21:11 -05:00
Brad King
b104bcfd98 Merge topic 'typos'
777e87ae Fix trivial typos in text

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1442
2017-11-06 09:02:23 -05:00
Brad King
62d736f74a Merge topic 'test-contract-refactor'
4c626b7e Tests: Refactor contract test activation
4bd5af63 Tests: Factor out contract test HOME finding
0ce082b7 Tests: Drop unused contract test environment script
36346de4 Tests: Drop unused contract test
bbc9c966 Tests: Honor already-set CTEST_REAL_HOME in case of repeat run

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1444
2017-11-06 09:01:49 -05:00
Brad King
6a54dbe8ca Merge topic 'test-crash-ubsan'
701a637e Tests: Fix CTestTestCrash test under ubsan

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1443
2017-11-06 09:00:44 -05:00
Brad King
bccd442f71 Merge topic 'bzip2-windows'
f61052ad FindBZip2: Normalize slashes when legacy BZIP2_LIBRARIES is specified

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1439
2017-11-06 08:59:36 -05:00
Brad King
73db89c2c2 Merge topic 'server-refactor'
39c2feaf misc: Added utility method to allow working with stacks
f5d2988e server: Swapped to cm_thread impl
2636d86c utility: Added minimal std::thread drop-in
d46b4ba8 server: Updated server tests to try various communication channels
08dca583 Tests: reworked server tests to allow other operation modes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1230
2017-11-06 08:58:11 -05:00
Brad King
2dabcebf3c Merge topic 'update-kwsys'
30487770 Merge branch 'upstream-KWSys' into update-kwsys
5464e23f KWSys 2017-11-02 (54f0901a)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1440
2017-11-06 08:55:35 -05:00
Kitware Robot
3d6e45af61 CMake Nightly Date Stamp 2017-11-06 00:01:06 -05:00
Kitware Robot
c2e130e8f4 CMake Nightly Date Stamp 2017-11-05 00:01:06 -04:00
Kitware Robot
277994eb43 CMake Nightly Date Stamp 2017-11-04 00:01:12 -04:00
Justin Goshi
35a52bd1b4 server: add "ctestInfo" request to get test info 2017-11-03 09:39:01 -07:00
Deniz Bahadir
854e482a59 cmTarget: Simplified and fixed a string-comparision.
Before this change, `cmTarget::CheckProperty` accepted several strings
as valid properties, including all strings prefixed with
"INTERFACE_LINK_LIBRARIES". Now, that particular string is still
accepted but other strings prefixed with that string are no longer
accepted.
2017-11-03 17:22:12 +01:00
Ben Boeckel
335816efad FindBoost: use CMake's compiler version rather than querying again 2017-11-03 11:43:22 -04:00
Brad King
4c626b7e43 Tests: Refactor contract test activation
Use separate `CMake_TEST_CONTRACT_<project>` variables for each test.
Make the set of possible tests match what is in the source tree.
2017-11-03 11:35:06 -04:00
Brad King
4bd5af6302 Tests: Factor out contract test HOME finding 2017-11-03 11:35:06 -04:00
Brad King
0ce082b7c8 Tests: Drop unused contract test environment script
`Trilinos/EnvScript.cmake` has machine-specific content that has been
moved to the respective machines.
2017-11-03 11:32:06 -04:00
Brad King
36346de480 Tests: Drop unused contract test 2017-11-03 11:30:26 -04:00
Brad King
bbc9c96691 Tests: Honor already-set CTEST_REAL_HOME in case of repeat run 2017-11-03 11:30:21 -04:00
Brad King
701a637e4d Tests: Fix CTestTestCrash test under ubsan
UBsan causes our test crash to abort instead.  Update our regex to
tolerate this.
2017-11-03 11:23:33 -04:00
luzpaz
777e87ae00 Fix trivial typos in text
Some are user facing.

Found using

    codespell -q 3 --skip="./Utilities" -I .cmake-whitelist.txt`

whereby the whitelist contained:

    ans
    dum
    helpfull
    emmited
    emmitted
    buil
    iff
    isnt
    nto
    ot
    pathes
    substract
    te
    todays
    upto
    whitespaces
2017-11-03 10:25:05 -04:00
Brad King
51e0d611f5 Merge branch 'release-3.9' 2017-11-03 08:49:47 -04:00