Commit Graph

34709 Commits

Author SHA1 Message Date
Brad King 50856e948e Merge branch 'FindHDF5-fix-quoting' into release 2017-03-20 16:15:15 -04:00
Brad King aa21a77660 Merge branch 'FindBoost-1.64' into release 2017-03-20 14:45:39 -04:00
Mateusz Łoskot 6bd28fd235 FindBoost: Add support for 1.64
Update the module to enable finding components of Boost 1.64 (beta) from
the upcoming release.  Also update the Boost library name mangling used
for VS 2017 to match a change made to Boost upstream (vc150 => vc1410).
2017-03-20 14:43:24 -04:00
Brad King 50760540f8 Merge branch 'CSharpUtilities-doc' into release 2017-03-20 14:27:30 -04:00
Michael Stürmer 04a11f16ba CSharpUtilities: Fix documentation
Fixes: #16711
2017-03-20 14:25:50 -04:00
Ben Boeckel 8214061d1a FindHDF5: fix quoting 2017-03-15 12:54:19 -04:00
Brad King f2d250adf0 Merge branch 'doc-toolset-host-arch-typo' into release 2017-03-13 10:33:44 -04:00
Brad King 81b2454757 Help: Fix typo in CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE 2017-03-13 10:32:50 -04:00
Brad King 4aca67b0fb Merge branch 'FindGit-avoid-vs-2017-git' into release 2017-03-10 16:13:05 -05:00
Brad King c4d481e5b8 FindGit: Avoid finding VS 2017 non-general Git installation
At a VS 2017 command prompt the `PATH` contains a directory that happens
to have a `Git/cmd/git.exe` inside it.  However, this executable is not
meant for general use.  Revise our use of `Git/` path suffixes to be
more specific to its original purpose of searching in the typical
`c:/Program Files*/Git/` installation directories.  Avoid using the
suffixes on `PATH` entries.

Fixes: #16706
2017-03-10 16:09:31 -05:00
Brad King 905f139b88 Merge branch 'doc-vs15-MSVC_VERSION' into release 2017-03-08 14:31:45 -05:00
Wojciech Mamrak 66542b6636 Help: Update MSVC_VERSION for Visual Studio 2017
The value we documented was left from a preview that still used `v140`
tools.  Update it to match the `v141` tools distributed with the final
release.
2017-03-08 14:30:38 -05:00
Brad King ac66dec5c5 Merge branch 'fix_csharp_custom_targets' into release 2017-03-07 09:30:46 -05:00
Michael Stürmer bd8b5401cf VS: Do not treat custom targets as CSharp targets
Fixes: #16697
2017-03-07 09:30:27 -05:00
Brad King 6856c659ef Merge branch 'revert-CTestTestfile-removal' into release 2017-03-06 13:47:49 -05:00
Brad King 7cb89f6732 Merge branch 'FindVulkan-fix-win-32' into release 2017-03-06 13:47:44 -05:00
Matthäus G. Chajdas 723955cd2b FindVulkan: Fix for SDK versions < 1.0.42 on 32-bit Windows
Before Vulkan 1.0.42, the SDK would add the Bin directory to `PATH`,
which was confusing the 32-bit search on Windows.  Avoid such confusion
by ignoring the `PATH` when looking for the 32-bit version.

Vulkan 1.0.42 fixed the whole problem by moving the libraries into Lib,
Lib32, so this is strictly a compatibility fix for old SDKs.
2017-03-06 13:32:41 -05:00
Brad King c1ba262a97 Merge branch 'FindHDF5-fix-definitions' into release 2017-03-06 12:58:43 -05:00
Kris Thielemans ea2a8dd268 FindHDF5: Restore -D in HDF5_DEFINITIONS
Changes in commit v3.8.0-rc1~7^2~5 (FindHDF5: Fix command-line parsing
argument extraction order, 2017-02-02) accidentally dropped `-D` from
preprocessor definition flags extracted from the HDF5 compiler wrappers.

Fixes: #16693
2017-03-06 12:48:49 -05:00
Brad King 485685fdd9 Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF"
This reverts commit v3.8.0-rc1~305^2 (Remove CTestTestfile.cmake when
BUILD_TESTING is OFF, 2016-11-14).  It breaks projects that never enable
testing but create their own `CTestTestfile.cmake` manually instead.
2017-03-06 11:31:19 -05:00
Brad King e1adec32b8 CMake 3.8.0-rc2 v3.8.0-rc2 2017-03-03 08:29:09 -05:00
Brad King 9f37f94d63 Merge branch 'FindJNI-archlinux-jvm-paths' into release 2017-03-03 08:16:10 -05:00
Kitsu d0ada3e218 FindJNI: Add jvm paths for Arch Linux 2017-03-03 08:14:34 -05:00
Brad King 3e06cdc19b Merge branch 'FindVulkan-update' into release 2017-03-02 10:03:57 -05:00
Brad Davis 8e58f360f5 FindVulkan: Update for LunarG SDK import library location on Windows
As of at least 1.0.42 of the LunarG SDK, the `vulkan-1.lib` import
library on Windows is stored in `${VULKAN_SDK}/Lib` or
`${VULKAN_SDK}/Lib32`.
2017-03-02 10:02:20 -05:00
Brad King 8d1af9cad2 Merge branch 'implicit-dir-symlinks' into release 2017-03-02 08:38:21 -05:00
Brad King fce6233d8b Merge branch 'csproj_add_free_source_tags' into release 2017-03-02 08:38:16 -05:00
Brad King 69528fe65f Tests: Add case for RPATH exclusion of symlinks to implicit directories
Issue: #16682
2017-03-02 08:36:32 -05:00
Brad King f3102ca884 Merge branch 'backport-implicit-dir-symlinks' into implicit-dir-symlinks 2017-03-02 08:36:13 -05:00
Brad King c3fb650c85 cmOrderDirectories: Consider symlinks when checking implicit directories
When checking whether a directory is "implicit" (e.g. implicit link
directory or implicit rpath directory), resolve the real path of both
sides of the comparison.  Otherwise we will not recognize paths like
`/usr/lib32` as implicit when `/usr/lib` is implicit and `lib32` is
actually a symlink to `lib`.  This can lead to addition of unnecessary
entries to the RPATH of a binary, for example.

Fixes: #16682
2017-03-02 08:35:48 -05:00
Michael Stürmer 506207f928 VS: add test for VS_CSHARP_* source file property 2017-03-01 15:31:05 -05:00
Michael Stürmer a202749c46 VS: add CSharpUtilities module 2017-03-01 15:31:05 -05:00
Michael Stürmer 9588d0a2e2 VS: add VS_CSHARP_<tagname> sourcefile property 2017-03-01 15:31:05 -05:00
Brad King b1a37362b8 cmOrderDirectories: Factor out implicit directory check 2017-03-01 12:39:18 -05:00
Brad King baed38107e Merge branch 'find-libarch-not-symlink' into release 2017-02-28 15:57:54 -05:00
Brad King 6f5aede716 find_library: Skip 'lib => lib<arch>' searches if one symlinks the other
The `FIND_LIBRARY_USE_LIB<arch>_PATHS` global properties ask
`find_library` to look in `lib<arch>` directories automatically before
corresponding `lib` directories.  However, if `lib<arch>` is just a
symlink to `lib` (or vice-versa) then we should skip adding the
`lib<arch>` path.  Such symlinks typically only exist to satisfy
software that expects the `lib<arch>` path to be available.

Fixes: #16687
2017-02-28 14:56:54 -05:00
Brad King e67963ed73 cmFindLibraryCommand: Refactor AddArchitecturePath logic
Use boolean variables to save results and rename variables to more
closely represent their roles.
2017-02-28 14:56:13 -05:00
Brad King 220b799c8a Merge branch 'kwiml-test-gcc-format-security' into release 2017-02-27 13:47:34 -05:00
Orion Poplawski 4ca77bb6db KWIML: Add -Wno-format-security to tolerate -Werror=format-security
When compiling KWIML tests with `-Werror=format-security` we get

    error: -Wformat-security ignored without -Wformat

Therefore we should disable both `format` and `format-security`
together.
2017-02-27 13:47:00 -05:00
Brad King dab2ff3e23 Merge branch 'ExternalProject-checkout-clarify' into release 2017-02-24 13:22:45 -05:00
Brad King a9fa6a2c77 ExternalProject: Run git checkout with -- to clarify arguments
Fix the case when the tag name to be checked out also happens to match a
path name.

Fixes: #16678
2017-02-24 13:22:40 -05:00
Brad King ad3bf56dd2 Merge branch 'object-library-compile-pdb' into release 2017-02-24 11:31:46 -05:00
Brad King feff52d42c Fix COMPILE_PDB_NAME when used on an OBJECT library
When `COMPILE_PDB_NAME` is used without `COMPILE_PDB_OUTPUT_DIRECTORY`
we cannot fall back on the link `PDB_OUTPUT_DIRECTORY` for an object
library because it has no link step.

Fixes: #16674
2017-02-24 11:26:52 -05:00
Brad King 8ea060f960 Merge branch 'ninja-no-full-path' into release 2017-02-24 10:50:21 -05:00
Brad King 666ad1df2d Revert "Ninja: Use full path for all source files"
This reverts commit v3.7.0-rc1~275^2 (Ninja: Use full path for all
source files, 2016-08-05).  Unfortunately using absolute paths can
cause incorrect rebuilds due to ninja limitations.  The ninja
manual [1] explains:

> ... using absolute paths, your depfile may result in a mixture of
> relative and absolute paths. Paths used by other build rules need
> to match exactly.

Passing an absolute path to a source file to the compiler while using a
relative path in the ninja build manifest can cause such mixture and
lead to incorrect rebuilds.  Simply revert the change for now.

Note that there was a follow-up to the original change in commit
v3.7.0-rc2~10^2 (Ninja: Fix RC language depfile generation with
cmcldeps, 2016-10-13).  We don't need to revert that because that
change made the relevant code cleverly adapt to whatever variable
we use to reference the source file.

[1] https://ninja-build.org/manual.html#_deps

Fixes: #16675
Issue: #13894
2017-02-24 10:15:50 -05:00
Brad King 5eb4d9d80b Merge branch 'vcxproj-indentation' into release 2017-02-23 14:01:05 -05:00
Brad King 2cb165e8c0 VS: Fix .vcxproj indentation
In commit v3.8.0-rc1~87^2~1 (VS: added support for C#, 2017-01-09) we
removed what looked like a no-op streaming operation but in fact it
is responsible for applying indentation.  Restore the line.
2017-02-23 13:38:47 -05:00
Brad King 25480ffbf6 Merge branch 'clang-format-attrs' into release 2017-02-22 17:00:58 -05:00
Brad King d5f39a56a4 clang-format.bash: Use Git attributes to mark files for formatting 2017-02-22 16:59:26 -05:00
Brad King f6986ee479 Define a custom Git attribute to mark sources using our C style 2017-02-22 16:53:29 -05:00