Select a configuration as the first of the following available:
* MAP_IMPORTED_CONFIG_<CONFIG>
* ${CMAKE_BUILD_TYPE}, RELWITHDEBINFO, RELEASE, DEBUG
* First entry in IMPORTED_CONFIGURATIONS
Fixes: #17039
Since commit v3.8.0-rc1~251^2 (UseSWIG: Record generated java files as
custom command outputs, 2016-11-28) the generated `.java` files are
listed as sources in the call to `add_library` by swig_add_library.
They are listed only as the outputs of custom commands and not intended
for compilation as part of the library.
Reported-by: Alan W. Irwin <irwin@beluga.phys.uvic.ca>
Since commit v3.8.0-rc2~28^2~2 (Utilities/Sphinx: Port cmake extension
to Sphinx 1.4, 2017-02-09) we use the `sphinx.version_info` tuple.
However, it was added in Sphinx v1.2 so the check breaks compatibility
with older versions. Revise our check to assume Sphinx pre-1.2 if the
version tuple does not exist.
In commit a1b38865 (FindLibXml2: Switch to standard module variable
names, 2017-07-11) the cache variable used to store the find_library
result was renamed. This breaks projects that set the old variable name
explicitly. Fix compatibility with such projects by using the old
variable as a default if it is set and the new one is not.
Adds an AUTOMOC test that tests if dependencies from add_dependencies()
of an ORIGIN target are forwarded to the ORIGIN_autogen target.
Also fixes the AUTOMOC test that tests if dependencies from
target_link_libraries() of an ORIGIN target are forwarded to the
ORIGIN_autogen target. The test now fails in the ORIGIN_autogen build
if SimpleLib wasn't built before.
Only the dependecies from target_link_libraries() of the origin
target were forwarded to the _autogen target. This patch
adds forwarding of the dependencies from add_dependencies()
to the _autogen target.
Closes#17094
Add a new gtest_discover_tests function to GoogleTest.cmake,
implementing dynamic test discovery (i.e. tests are discovered by
actually running the test executable and asking for the list of
available tests, which is used to dynamically declare the tests) rather
than the source-parsing approach used by gtest_add_tests. Compared to
the source-parsing approach, this has the advantage of being robust
against users declaring tests in unusual ways, and much better support
for advanced features such as parameterized tests.
A unit test, modeled after the TEST_INCLUDE_DIR[S] test, is also
included. Note that the unit test does not actually require that Google
Test is available. The new functionality does not actually depend on
Google Test as such; it only requires that the test executable lists
tests in the expected format when invoked with --gtest_list_tests, which
the unit test can fake readily.