Commit Graph

679 Commits

Author SHA1 Message Date
Brad King 0820c78508 Merge topic 'FindMatlab-additional-components'
bf09271b FindMatlab: adding handling of component "MAT"
2016-08-31 09:19:37 -04:00
Brad King 6f8b93983a Merge topic 'import-libuv'
39ac889d cmake: Add trivial usage of libuv
7cf369fe Do not build libuv on HP-UX
075cae51 Do not build libuv on SPARC
9a53af40 Do not build libuv on Cygwin
219f7411 Do not build libuv on Mac OS X 10.4 and lower
8a5beef3 Add option to build CMake against a system libuv
e56aa462 FindLibUV: Add module to find libuv package
551d5aed libuv: Fix unused variable warning in uv_loop_close
f4f8074b libuv: Avoid including macOS CoreServices header globally
a63aaaed libuv: Always include our own header first
9130b53a libuv: Conditionally declare Windows APIs for VS 2008 and below
b52afa46 libuv: Fix anonymous union syntax
05dbc204 libuv: Fix Windows API function typedef syntax
75139374 libuv: Install LICENSE file with CMake documentation
95dcc4e4 libuv: Disable warnings to avoid changing 3rd party code
13b7e758 libuv: Build the library within CMake
...
2016-08-31 09:19:31 -04:00
Brad King e56aa46297 FindLibUV: Add module to find libuv package
Add it to a private source directory that is not installed so that we
can use it for building CMake itself.  This will allow it to mature
before being distributed publicly.
2016-08-31 09:05:14 -04:00
Brad King b82d027b45 Utilities/Release: Drop Linux 32-bit binary
The Linux distro we've been using for this is so old that it limits our
ability to import newer third-party software.  Until a new machine can
be configured to provide this binary we can simply drop it.  Users will
still be able to build from source or use a distro-provided version.
2016-08-30 09:48:39 -04:00
Raffi Enficiaud bf09271b65 FindMatlab: adding handling of component "MAT"
- documentation
- test
- cosmetic changes
2016-08-30 14:50:20 +02:00
Chaoren Lin 9bd0643a77 Tests: Refactor testing of extra generators.
Use a loop instead of repeating the same thing multiple times.
2016-08-23 10:37:38 -04:00
Brad King e240a7c017 Merge topic 'ExternalProject-SOURCE_SUBDIR'
a8345d65 ExternalProject: Add SOURCE_SUBDIR option
2016-08-16 13:26:22 -04:00
Matthew Woehlke a8345d65f3 ExternalProject: Add SOURCE_SUBDIR option
Add a new SOURCE_SUBDIR option to ExternalProject_Add that allows
specifying the location of the CMakeLists.txt to use as the project root
relative to the SOURCE_DIR.

This is helpful for projects that have unusual layouts, or projects that
provide both a superbuild and project-only build depending on which
CMakeLists.txt is used.

Fixes: #15118
2016-08-16 13:18:18 -04:00
Roger Leigh 4a63be15dd FindICU: New module 2016-07-13 09:15:16 -04:00
Brad King 1b021a64f8 Merge topic 'ninja-no-rsp-for-rc'
15b3f6f0 ninja, rc: ignore CMAKE_NINJA_FORCE_RESPONSE_FILE for RC files
2016-06-28 09:06:34 -04:00
Ben Boeckel 15b3f6f0f1 ninja, rc: ignore CMAKE_NINJA_FORCE_RESPONSE_FILE for RC files
In commit v3.6.0-rc1~174^2 (Ninja: Honor CMAKE_NINJA_FORCE_RESPONSE_FILE
for compile rules, 2016-04-06), Ninja learned to look for
`CMAKE_NINJA_FORCE_RESPONSE_FILE` in the current scope or the
environment in order to force response file usage for all compilation
rules.

However, on Windows, the RC compiler goes through cmcldeps which does a
`replace(output, output + ".dep.obj")` on the command line. However,
with a response file (which we name `output + ".rsp"`), the response
file path is replaced instead causing the compiler to (correctly)
complain that the response file `output + ".dep.obj.rsp"` does not
exist.

What needs to happen is for cmcldeps to look through the response file,
replace *its* contents and place it in the `output + ".dep.obj.rsp"`
file.

Also add a test which actually compiles an RC file into a library and
executable for all generators on Windows and additionally test
`CMAKE_NINJA_FORCE_RESPONSE_FILE` for Ninja generators.

Fixes #16167.
2016-06-27 14:34:06 -04:00
Brad King 5aa89a1ae0 Merge topic 'java-export-targets'
0bd91ad4 UseJava: Fix race condition creating java class list
89df91b9 Help: Add notes for topic 'java-export-targets'
95d84369 Tests: Add test for exported JARs
5341c0d8 UseJava: Add infrastructure to export targets
d91ec044 Tests/Java: Clean up style of Java test code
2016-06-09 09:18:17 -04:00
Brad King fb8b8dd106 Merge topic 'add-FindVulkan'
adf4df28 Add FindVulkan.cmake.
2016-06-08 12:56:07 -04:00
Matthäus G. Chajdas adf4df28ca Add FindVulkan.cmake.
This adds FindVulkan with corresponding tests.
2016-06-08 12:44:03 -04:00
Matthew Woehlke 95d84369b8 Tests: Add test for exported JARs
Add a unit test to test the new functions to export JAR targets. The
test builds three sub-projects: two that generate and export a JAR (one
does a build-directory-only export, one an install-only export), and a
third that consumes the first two as imported targets.
2016-06-07 08:50:36 -04:00
Brad King d546456765 Merge topic 'productbuild'
63e5eb5f Help: Add notes for 'productbuild' topic
2e3c67d1 productbuild: Add new productbuild cpack generator.
50a3d340 PackageMaker: factor out common code for creating pkg files.
2016-06-06 11:19:20 -04:00
Clinton Stimpson 2e3c67d1b6 productbuild: Add new productbuild cpack generator.
This cpack generator basically replaces the obsolete PackageMaker generator.
2016-06-03 14:41:57 -06:00
Matthäus G. Chajdas b66d4739b5 FindOpenCL: Add an imported target 2016-06-02 08:46:43 -04:00
Geoff Viola 1703a6d2c4 GHS: Fix handling of duplicate source filenames (#16046)
Green Hills MULTI project files must specify explicitly distinct object
file names for source files with the same name.
2016-04-25 10:46:09 -04:00
Brad King e903a9fc55 Utilities/Release: Create a Windows 64-bit binary
Compile with `-D_WIN32_WINNT=0x502` to use a WinXP-compatible API.
Compile with `-D_USING_V110_SDK71_` to tell the VS standard library
headers that we are building with a WinXP-compatible Windows SDK.  Link
executables with `-subsystem:console,5.02` to make them runnable on
Windows XP 64-bit.  Ideally `cmake-gui` should instead be linked with
`-subsystem:windows,5.02` but with the Ninja and Makefile generators
CMake adds `-subsystem:windows` after our `-subsystem:console,5.02` flag
and the linker seems to interpret this combination as we need.
2016-03-17 09:32:16 -04:00
Brad King dd63007544 Utilities/Release: Rename scripts to match target platform
The machine name we happen to use for the build is less informative than
its platform.
2016-03-17 09:30:30 -04:00
Brad King 1ed74b9d22 Merge topic 'remove-vs6-generator'
b42866a3 Drop Visual Studio 6 generator
cd9ba3ec cmLocalVisualStudio7Generator: Fix name of helper function
2016-03-10 09:16:23 -05:00
Mariusz Pluciński ad6d27ac2a Tests: do not build PrecompiledHeader on Clang/C2 2016-03-10 09:11:42 -05:00
Brad King b42866a34a Drop Visual Studio 6 generator
This generator has been deprecated since CMake 3.3.  Remove it.
Update documentation, modules, and tests to drop content specific
to this generator.
2016-03-09 09:42:18 -05:00
Philippe Proulx a4194debea Add FindLTTngUST module to find LTTng-UST library
Also detect the library version number.  Provide results as variables
and as an imported target, LTTng::UST.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
2016-03-07 11:46:49 -05:00
Brad King cfb4d7736e Merge topic 'update-osx-release'
b682debd Utilities/Release: Switch to OS X 10.7 and Qt 5.5 for Mac binary
2016-03-07 10:02:42 -05:00
Brad King b682debd65 Utilities/Release: Switch to OS X 10.7 and Qt 5.5 for Mac binary
Use a new build machine to produce the OS X binary targeting OS X 10.7
and using Qt 5.5.
2016-02-19 15:47:18 -05:00
Brad King d8cba5368b Tests: Fix XCTest when ENV{SDKROOT} is set
We use the host OS X version as the deployment target for this test.
This breaks if the SDKROOT environment variable specifies an
incompatible SDK version.  Explicitly specify `macosx` as the
SDK so that CMake will automatically select a version matching
the deployment target.
2016-02-19 09:28:27 -05:00
Brad King ddb09ec8f9 Merge topic 'FindPNG-imported-targets'
9b08c623 FindPNG: Create an imported PNG::PNG target (#15911)
2016-01-22 09:25:33 -05:00
Sam Thursfield 9b08c62330 FindPNG: Create an imported PNG::PNG target (#15911)
Imported targets are now the recommended way of dealing with external
library dependencies.  Add one for FindPNG and update documentation
accordingly.  Also add a test case activated by CMake_TEST_FindPNG.
2016-01-21 13:58:15 -05:00
Roger Leigh f9e45ab9d4 FindXalanC: New module to find the Apache Xalan-C++ library 2016-01-20 09:33:38 -05:00
Brad King 083312a8fd Utilities/Release: Switch to .msi builder for Windows binary
Use a new build machine to produce the Windows binary using the CPack
WiX generator to produce a `.msi` installer.
2015-12-21 09:52:28 -05:00
Roger Leigh 99afe23513 Tests: Add tests for FindGTest 2015-12-10 23:09:16 +00:00
Brad King 128d569af0 Merge topic 'FindTIFF-imported-targets'
ebaca629 FindTIFF: Add imported targets and update documentation
2015-12-07 09:22:56 -05:00
Roger Leigh ebaca6290d FindTIFF: Add imported targets and update documentation
- Add TIFF::TIFF imported target
- Document imported target
- Add testcase to test the standard variables and the imported
  target

Also:

- Add TIFF_INCLUDE_DIRS to match common practice
- Update documentation generally, including documenting
  TIFF_INCLUDE_DIRS
2015-12-07 09:20:08 -05:00
Brad King 5875801293 Merge topic 'improve-embarcadero'
7a327727 Embarcadero: Fix erroneous interpretation of __CODEGEARC_VERSION__.
25211d75 Compiler ID: Compiler versions must be a valid, numeric version string.
060442c2 Embarcadero:  Check code using CMAKE_CXX_COMPILER_ID and CMAKE_C_COMPILER_ID.
f3b3219c Embarcadero/Watcom: Properly skip VSResource test for other generators.
ddbda722 Embarcadero: Fix bug where duplicate Ninja job pools would be created.
2015-12-04 09:54:18 -05:00
James Johnston f3b3219c96 Embarcadero/Watcom: Properly skip VSResource test for other generators.
This test should be skipped based on the chosen compiler, not the chosen
generator.
2015-12-03 21:37:06 +00:00
Roger Leigh 9fd9875076 Tests: Add FindBoost testcase for imported targets
Enable by setting CMake_TEST_FindBoost to TRUE.
2015-12-02 09:40:17 -05:00
Brad King f66f6e2490 Merge topic 'FindXercesC-imported-targets'
5dcc833b FindXercesC: Add imported targets and unit test
2015-11-24 09:26:42 -05:00
Roger Leigh 5dcc833b28 FindXercesC: Add imported targets and unit test 2015-11-23 14:28:05 -05:00
Joseph Snyder 32268810d9 CTest: Expand directories for Cobertura search
Change the Cobertura handler to look for an environment variable
called "COBERTURADIR" which contains the directory where the
coverage.xml file is found.  If that variable doesn't exist,
continue to use the default of the binary directory.

Update the test to use an appropriate value in the environment
variables.
2015-11-23 12:41:36 -05:00
Brad King 39e830a98e Merge topic 'cpack-deb-config-file-source-field'
e5b70ed0 CPackDEB: added config file optional Source field
f2d98e2d CPackDEB: minor documentation and debug logging fixes
2015-11-06 14:58:11 -05:00
Raffi Enficiaud e5b70ed013 CPackDEB: added config file optional Source field 2015-11-04 21:46:22 +01:00
Raffi Enficiaud 341cd93489 CPackDeb: ctest tests for compression scheme leak
Test that changing compression of debian package
content does not affect DEBIAN/ files which must
be gzipped
2015-11-03 18:18:35 +01:00
Joseph Snyder 3cd2e0e2d5 Tests: Fix DelphiCoverage test file selection
The HTML file for the Delphi Code coverage was being found by the
Dashboard coverage run of CMake itself.  Switch it to be a configured
file to eliminate this extra reading.
2015-10-20 11:13:25 -04:00
Brad King b520b1ca4e Tests: Add a nightly Linux 64-bit binary 2015-10-06 13:58:45 -04:00
Brad King 26a0b52dfe Tests: Rename Linux nightly release binary test to Linux32
Distinguish the name from a future 64-bit nightly binary.
2015-10-06 13:56:19 -04:00
Brad King 992c43d2ed Tests: Rename OS X nightly release binary test
The "Mac64" build is now the primary and only OS X build, so just name
it "OSX".
2015-10-05 13:09:36 -04:00
Brad King 9cbab63ee1 Tests: Drop nightly OS X ppc/i386 binary
Users with OS X 10.5 or below can build from source or use an older
CMake version.
2015-10-05 13:09:04 -04:00
Gilles Khouzam 1be2f12cf2 VS: Add support for Windows 10 Universal (Store) Applications
Teach the VS 2015 generator to support WindowsStore 10.0 applications.
Add target properties to customize them:

* VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION: Specifies the minimum version
  of the OS that the project can target.

* VS_DESKTOP_EXTENSIONS_VERSION, VS_MOBILE_EXTENSIONS_VERSIONS,
  VS_IOT_EXTENSIONS_VERSION: Add a reference to the version of the SDK
  specified to the target allowing to target the extended functionality in
  a universal project.

* VS_IOT_STARTUP_TASK: Specifies that the target should be
  built as an IOT continuous background task.
2015-10-05 09:48:11 -04:00