Commit Graph

4631 Commits

Author SHA1 Message Date
Brad King 54790e77d7 Merge topic 'sanitizer-options'
e116f2a5 ctest_memcheck: Fix sanitizers when MemoryCheckSanitizerOptions is empty
522e1588 Tests: Use CTEST_MEMORYCHECK_SANITIZER_OPTIONS where appropriate
2017-01-25 08:41:21 -05:00
Brad King 4f37987e3f Merge topic 'lang_lint'
0618ddf6 Add properties to run the cpplint style checker with the compiler
2017-01-25 08:41:18 -05:00
Brad King c59d381065 Merge topic 'cpack-stgz-minimal-test'
624709c8 CPack/STGZ: minimalistic packages test
1c93eb68 CPack/STGZ prefer pax for extraction
2017-01-24 14:45:35 -05:00
Brad King 6122fc54a9 Merge topic '16253-xcode-effective-platform-name'
10c9c73d Xcode: Control emission of EFFECTIVE_PLATFORM_NAME
2017-01-24 14:45:24 -05:00
Jamie Snape 0618ddf6b1 Add properties to run the cpplint style checker with the compiler
Create a `<LANG>_CPPLINT` target property (initialized by a
`CMAKE_<LANG>_CPPLINT` variable) to specify a `cpplint` style checker
command line to be run along with the compiler.
2017-01-23 14:47:13 -05:00
Jamie Snape e116f2a5de ctest_memcheck: Fix sanitizers when MemoryCheckSanitizerOptions is empty 2017-01-23 10:50:38 -05:00
Jamie Snape 522e1588ec Tests: Use CTEST_MEMORYCHECK_SANITIZER_OPTIONS where appropriate
Previously the ThreadSanitizer and MemorySanitizer tests erroneously
used `CTEST_MEMORYCHECK_COMMAND_OPTIONS`.
2017-01-23 09:13:26 -05:00
Domen Vrankar 624709c824 CPack/STGZ: minimalistic packages test 2017-01-22 22:07:16 +01:00
Gregor Jasny 10c9c73d58 Xcode: Control emission of EFFECTIVE_PLATFORM_NAME
When building with multiple SDKs within one project Xcode requires
the usage of ${EFFECTIVE_PLATFORM_NAME} to put temporary and build
outout into separate directories. For example an iOS device and
simulator build use two different SDKs (iphoneos and iphonesimulator).

In the past cmake tries to detect embedded toolchains that could
possibly use simulators and emitted EFFECTIVE_PLATFORM_NAME (EPN)
at the proper locations. In #16253 Mark noticed that if he
uses macosx and iphoneos in combination the necessary EPN is not
emitted. This is because CMake by default assumes macosx SDK which
does not trigger EPN emission.

The fist naive approach - enabling EPN unconditionally revealed that
then the EPN leaks into generator expressions like $<TARGET_FILE:xxx>
which might be a regression and thus is unacceptable.

The next approach was to add an CMake property to enable EPN emission
unconditionally. This solved the reported problem.

But the EPN leakage also happened for the embedded toolchains already
without anyone noticing. So the control property was turned into a
tri-state one:

 * No definition: EPN is activated for embedded toolchains like before
 * ON: EPN is always emitted
 * OFF: EPN is never emitted

That approach gives the user the chance to disable EPN for embedded
toolchains and restores generator expression functionality for those.

Closes: #16253
2017-01-20 13:51:48 -05:00
Brad King 910ef6d0a3 Merge topic '16165-manually-added-dependencies'
d9f836e9 Add a getter for manually added target dependencies
2017-01-20 11:54:31 -05:00
Brad King 22d240184c Merge topic 'cdash_upload_retry'
05ed82b1 ctest_submit: Update documentation for CDash upload retries
0ce7643a ctest_submit: improve handling of QUIET option
5614a5cd ctest_submit: Allow RETRY_COUNT for CDASH_UPLOAD
2017-01-20 11:54:28 -05:00
Zack Galbreath 5614a5cd1f ctest_submit: Allow RETRY_COUNT for CDASH_UPLOAD
Teach the CDASH_UPLOAD signature of ctest_submit() to honor the
RETRY_COUNT and RETRY_DELAY options.

Also teach HttpRequest() to honor the default 120 second timeout
for curl connections.
2017-01-20 11:37:27 -05:00
Brad King 6e4eb083d6 Merge topic 'fixtureUnusedOrdering'
298b5b31 CTest: Ensure setup/cleanup ordering even when fixture not required
2017-01-17 09:04:57 -05:00
Brad King 65124233da Merge topic 'file-GLOB-empty-no-crash'
2bba0bfc file: Fix crash on GLOB with no expressions after LIST_DIRECTORIES
2017-01-17 09:04:53 -05:00
Brad King aa63ab6d3e Merge topic 'expand_custom_commands'
7c8ab7dd add_custom_{command,target}: Add COMMAND_EXPAND_LISTS option
2017-01-17 09:04:50 -05:00
Gregor Jasny d9f836e956 Add a getter for manually added target dependencies
Closes: #16165
2017-01-16 22:38:24 +01:00
Craig Scott 298b5b31ca CTest: Ensure setup/cleanup ordering even when fixture not required
Closes: #16558
2017-01-16 11:29:24 -05:00
Brad King 35ad12f99e Merge topic 'source_group-tree'
b42330be source_group: Add options create groups matching directory tree
2017-01-16 11:01:38 -05:00
Brad King 47d391d71d Merge topic 'csharp_simple'
397b8546 VS: added documentation for C# support
a7dd8e66 VS: added support for C# (for Visual Studio 2010, 2012, 2013, 2015)
6fda6005 VS: renamed target property VS_USER_PROPS_CXX to VS_USER_PROPS
2017-01-16 11:01:29 -05:00
Brad King 743085a579 Merge topic 'cuda_propagate_flags_when_dlink_on_executables'
8d1f9e5b CUDA: Now pass correct FLAGS when device link cuda executables.
dc5051f1 CUDA: Test that CUDA flags are used when device linking executables.
2017-01-16 11:01:17 -05:00
Brad King 0f3bb10dbe Merge topic 'fix_repeat_until_fail_duplicated_output'
a1058637 CTest: Properly reset output to avoid duplication with --repeat-until-fail
2017-01-16 11:01:02 -05:00
Mateusz Janek b42330be21 source_group: Add options create groups matching directory tree
Add `TREE` and `PREFIX` arguments to enable this behavior.
2017-01-16 10:52:48 -05:00
Brad King 2bba0bfc2c file: Fix crash on GLOB with no expressions after LIST_DIRECTORIES
Since commit v3.3.0-rc1~318^2~1 (file: Teach GLOB to list directories
optionally, 2015-03-17) using `LIST_DIRECTORIES` followed by no
expression causes a crash.  Fix the logic to avoid the crash.

Fixes: #16565
2017-01-16 10:47:32 -05:00
Ed Branch 7c8ab7ddc8 add_custom_{command,target}: Add COMMAND_EXPAND_LISTS option
This option allows lists generated by generator expressions to be expanded.

Closes: #15935
2017-01-13 20:02:16 -06:00
Michael Stürmer a7dd8e6692 VS: added support for C# (for Visual Studio 2010, 2012, 2013, 2015) 2017-01-13 09:28:13 +01:00
Michael Stürmer 6fda6005b3 VS: renamed target property VS_USER_PROPS_CXX to VS_USER_PROPS 2017-01-13 09:27:21 +01:00
Robert Maynard dc5051f1c1 CUDA: Test that CUDA flags are used when device linking executables. 2017-01-12 15:13:31 -05:00
Brad King 728820f3ea Merge topic 'cuda-windows'
f9a810f7 CUDA: Enable CudaOnly.SeparateCompilation test runtime calls
5599d858 CUDA: Port test cases to Windows with MSVC host compiler
11551702 CUDA: Populate NVIDIA compiler information on Windows
5365421e CUDA: Detect implicit link information on Windows
522b913f CUDA: Find MSVC binutils on Windows
02582b91 CUDA: Populate compiler PDB placeholder during device linking
d470cb70 CUDA: Use `.obj` object file extension on Windows
a2e80cb0 CUDA: Detect MSVC architecture id
65c1e012 CUDA: Detect use of MSVC host compiler
945dd207 CUDA: Allow platform files to set device linking rules
95420cea CMakeParseImplicitLinkInfo: Add support for MSVC invoked by CUDA nvcc
2017-01-12 10:41:57 -05:00
Brad King f9a810f7b3 CUDA: Enable CudaOnly.SeparateCompilation test runtime calls
Uncomment the calls in `main.cpp` (and fix the signatures).
2017-01-12 10:39:04 -05:00
Brad King 5599d858c7 CUDA: Port test cases to Windows with MSVC host compiler 2017-01-12 10:39:04 -05:00
Brad King 95420cea5e CMakeParseImplicitLinkInfo: Add support for MSVC invoked by CUDA nvcc 2017-01-12 10:39:01 -05:00
Brad King 889fe63b51 Merge topic 'launcher-tests'
4b0c13a8 Tests: Add additional launcher tests
2017-01-12 10:22:08 -05:00
Sylvain Joubert a105863772 CTest: Properly reset output to avoid duplication with --repeat-until-fail 2017-01-12 11:32:58 +01:00
Robert Maynard 1ce39a1e73 CUDA: ConsumeCompileFeatures use cxx_nullptr for wider compiler support
We need to use a C++11 feature that is supported by the widest
range of compilers, so we chose nullptr instead of constexpr.
2017-01-11 10:40:38 -05:00
Brad King 12d5ccd10a Merge topic 'ctest_memcheck-leak_sanitizer'
e537bd91 ctest_memcheck: do not add detect_leaks=1 to ASAN_OPTIONS
0a2e5885 ctest_memcheck: join *SAN_OPTIONS with :
cdacfbd2 MEMORYCHECK_SUPPRESSIONS_FILE: add support for sanitizers
cf590c12 ctest_memcheck: add support for standalone LeakSanitizer
2017-01-11 09:58:55 -05:00
Brad King 039588e335 Merge topic 'cpack-rpm-user-binary-spec-file-test'
af77368e CPack/RPM test for using custom binary spec file
2017-01-11 09:58:43 -05:00
Brad King 2eb5596503 Merge topic 'Autogen_Simplify'
7db05f42 AUTOGEN: Release notes for SKIP_AUTOX
6eabac26 AUTOGEN: Documentation update: cmake-qt, AUTOMOC, AUTOUIC, AUTORCC
cbc07d33 AUTOGEN: Documentation for SKIP_AUTOX source file properties
c17e0a3a AUTOGEN: Tests: AUTORCC SKIP_AUTORCC and SKIP_AUTOGEN test
53787bf8 AUTOGEN: Tests: AUTOUIC SKIP_AUTOUIC and SKIP_AUTOGEN test
8dbdd3e7 AUTOGEN: Tests: AUTOMOC SKIP_AUTOMOC and SKIP_AUTOGEN test
0699760d AUTOGEN: Generators: Do moc/uic skip test during file list generation
a84f0bb7 AUTOGEN: Generators: Message upper/lower case unification
7b766b83 AUTOGEN: Generators: Use single moc/uic skip test method only
2964b8cc AUTOGEN: Generators: Use AUTOMOC/UIC/RCC instead of AUTOGEN in messages
d58b6bf3 AUTOGEN: Generators: Moc/UicSkipTest methods
94c319f9 AUTOGEN: Generators: Use separate header lists for MOC and UIC
966be439 AUTOGEN: Generators: Be verbose about skipping files
de531432 AUTOGEN: Generators: Remove unused variable
d8e45536 AUTOGEN: Initializer: Always remember skipped files
d9313a82 AUTOGEN: Initializer: Enable SKIP_AUTOGEN on all AUTOGEN generated sources
...
2017-01-11 09:58:40 -05:00
Matthew Woehlke 4b0c13a87f Tests: Add additional launcher tests
Modify the launcher test to also try to build two executables, having
respectively build and link errors. This is intended to test that
launchers are used when running compile and link commands, as well as
custom commands. (In particular, this should catch breakage such as that
fixed by ce71bd9505a.)
2017-01-10 13:48:59 -05:00
Domen Vrankar af77368ed3 CPack/RPM test for using custom binary spec file 2017-01-10 18:47:52 +01:00
Brad King c43cf158d7 Merge topic 'cpack-new-tests'
36bc7e4c store old locale to a temporary variable
05c14ea0 RunCMake.CPack_* add COMPONENT to minimal test
5b0a64eb CPack/Archive minimal tests for more formats
2017-01-10 09:34:55 -05:00
Brad King 2c8eb2696a Merge topic 'cpack-deb-md5sums-paths-fix'
6daa2d38 CPack/Deb invalid md5sums file fix
2017-01-10 09:34:52 -05:00
Sebastian Holtermann c17e0a3ad5 AUTOGEN: Tests: AUTORCC SKIP_AUTORCC and SKIP_AUTOGEN test 2017-01-10 12:49:17 +01:00
Sebastian Holtermann 53787bf8de AUTOGEN: Tests: AUTOUIC SKIP_AUTOUIC and SKIP_AUTOGEN test 2017-01-10 12:49:16 +01:00
Sebastian Holtermann 8dbdd3e726 AUTOGEN: Tests: AUTOMOC SKIP_AUTOMOC and SKIP_AUTOGEN test 2017-01-10 12:49:16 +01:00
Domen Vrankar adbf72280d CPack test additional std out/err regex file overloads
Added std out/std err expected regex file name
overloads for packaging type.
2017-01-10 08:40:16 +01:00
Brad King 4ce6cd2bcf Merge topic '15687-revisit-xcode-system-include'
88f07fb4 Xcode: Properly mark SYSTEM includes as such
2017-01-09 16:27:28 -05:00
Gregor Jasny 98f2143305 cmTarget: Enforce TYPE being a read-only property 2017-01-09 16:00:39 -05:00
Jamie Snape 0a2e588585 ctest_memcheck: join *SAN_OPTIONS with : 2017-01-09 13:39:08 -05:00
Jamie Snape cf590c1236 ctest_memcheck: add support for standalone LeakSanitizer 2017-01-09 13:15:42 -05:00
Gregor Jasny 88f07fb417 Xcode: Properly mark SYSTEM includes as such
We now populate the per-language flags in addition to the header
search paths stored in HEADER_SEARCH_PATHS. This preserves include
paths for GNU assembly files (cmake/cmake#16449) and also provides
SYSTEM include semantics.

Closes: cmake/cmake#15687
2016-12-27 22:18:30 +01:00