2022-11-03 08:47:52 +01:00
..
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2022-08-04 22:12:04 +02:00
2021-11-20 13:41:27 +01:00
2021-09-14 00:13:48 +02:00
2022-03-29 21:10:50 +02:00
2018-04-23 21:13:27 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2018-04-23 21:13:27 +02:00
2018-04-23 21:13:27 +02:00
2018-04-23 21:13:27 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2018-04-23 21:13:27 +02:00
2018-04-23 21:13:27 +02:00
2018-04-23 21:13:27 +02:00
2019-11-11 23:01:05 +01:00
2018-04-23 21:13:27 +02:00
2018-04-23 21:13:27 +02:00
2018-10-28 12:09:07 +01:00
2015-08-17 11:37:30 +02:00
2016-07-09 11:21:54 +02:00
2018-10-28 12:09:07 +01:00
2019-11-11 23:01:05 +01:00
2020-02-01 23:06:01 +01:00
2020-08-30 11:54:41 +02:00
2020-08-30 11:54:41 +02:00
2021-09-14 00:13:48 +02:00
2020-08-30 11:54:41 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2022-03-29 21:10:50 +02:00
2021-09-14 00:13:48 +02:00
2022-03-29 21:10:50 +02:00
2021-09-14 00:13:48 +02:00
2022-03-29 21:10:50 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2016-10-30 18:24:19 +01:00
2022-03-29 21:10:50 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2019-11-11 23:01:05 +01:00
2018-04-23 21:13:27 +02:00
2021-09-14 00:13:48 +02:00
2022-11-03 08:47:52 +01:00
2020-08-30 11:54:41 +02:00
2021-09-14 00:13:48 +02:00
2022-09-13 21:35:23 +02:00
2021-09-14 00:13:48 +02:00
2019-11-11 23:01:05 +01:00
2020-08-30 11:54:41 +02:00
2022-07-29 21:54:54 +02:00
2022-08-18 17:26:31 +02:00
2021-09-14 00:13:48 +02:00
2022-08-04 22:12:04 +02:00
2022-03-29 21:10:50 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-12-08 00:18:10 +01:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2022-09-13 21:35:23 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2022-03-29 21:10:50 +02:00
2017-04-14 19:02:05 +02:00
2018-08-09 18:06:22 +02:00
2018-08-09 18:06:22 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2022-11-03 08:47:52 +01:00
2020-08-30 11:54:41 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2022-03-29 21:10:50 +02:00
2021-09-14 00:13:48 +02:00
2022-03-29 21:10:50 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2019-11-11 23:01:05 +01:00
2021-09-14 00:13:48 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2022-03-29 21:10:50 +02:00
2020-08-30 11:54:41 +02:00
2020-08-30 11:54:41 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2018-01-26 17:06:56 +01:00
2022-11-03 08:47:52 +01:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2019-11-11 23:01:05 +01:00
2022-08-04 22:12:04 +02:00
2022-08-04 22:12:04 +02:00
2015-04-27 22:25:09 +02:00
2020-08-30 11:54:41 +02:00
2018-11-29 20:27:00 +01:00
2019-11-11 23:01:05 +01:00
2020-08-30 11:54:41 +02:00
2022-08-04 22:12:04 +02:00
2022-03-29 21:10:50 +02:00
2022-09-13 21:35:23 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2021-09-14 00:13:48 +02:00
2022-11-03 08:47:52 +01:00
2022-03-29 21:10:50 +02:00
2022-03-29 21:10:50 +02:00
2021-11-20 13:41:27 +01:00
2022-09-13 21:35:23 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00
2022-11-03 08:47:52 +01:00
2022-08-18 17:26:31 +02:00
2020-02-01 23:06:01 +01:00
2020-08-30 11:54:41 +02:00
2018-11-29 20:27:00 +01:00
2020-08-30 11:54:41 +02:00
2017-04-14 19:02:05 +02:00
2017-04-14 19:02:05 +02:00
2022-03-29 21:10:50 +02:00
2017-04-14 19:02:05 +02:00
2020-02-01 23:06:01 +01:00
2022-08-04 22:12:04 +02:00
2021-09-14 00:13:48 +02:00

This directory contains tests that run CMake to configure a project
but do not actually build anything.  To add a test:

1. Add a subdirectory named for the test, say ``<Test>/``.

2. In ``./CMakeLists.txt`` call ``add_RunCMake_test`` and pass the
   test directory name ``<Test>``.

3. Create script ``<Test>/RunCMakeTest.cmake`` in the directory containing::

    include(RunCMake)
    run_cmake(SubTest1)
    ...
    run_cmake(SubTestN)

   where ``SubTest1`` through ``SubTestN`` are sub-test names each
   corresponding to an independent CMake run and project configuration.

   One may also add calls of the form::

    run_cmake_command(SubTestI ${CMAKE_COMMAND} ...)

   to fully customize the test case command-line.

   Alternatively, if the test is to cover running ``ctest -S`` then use::

    include(RunCTest)
    run_ctest(SubTest1)
    ...
    run_ctest(SubTestN)

   and create ``test.cmake.in``, ``CTestConfig.cmake.in``, and
   ``CMakeLists.txt.in`` files to be configured for each case.

4. Create file ``<Test>/CMakeLists.txt`` in the directory containing::

    cmake_minimum_required(...)
    project(${RunCMake_TEST} NONE) # or languages needed
    include(${RunCMake_TEST}.cmake)

   where ``${RunCMake_TEST}`` is literal.  A value for ``RunCMake_TEST``
   will be passed to CMake by the ``run_cmake`` macro when running each
   sub-test.

5. Create a ``<Test>/<SubTest>.cmake`` file for each sub-test named
   above containing the actual test code.  Optionally create files
   containing expected test results:

   ``<SubTest>-result.txt``
    Regex matching expected process result, if not ``0``
   ``<SubTest>-stdout.txt``
    Regex matching expected stdout content
   ``<SubTest>-stderr.txt``
    Regex matching expected stderr content, if not ``^$``
   ``<SubTest>-check.cmake``
    Custom result check.

  Note that when a specific platform expects differing stdout or stderr that
  can be done by adding a platform specific output file. These follow the
  naming convention of:
   ``<SubTest>-stdout-<platform_lower_case>.txt``
   ``<SubTest>-stderr-<platform_lower_case>.txt``

   Note that trailing newlines will be stripped from actual and expected
   test output before matching against the stdout and stderr expressions.
   The code in ``<SubTest>-check.cmake`` may use variables

   ``RunCMake_TEST_SOURCE_DIR``
    Top of test source tree
   ``RunCMake_TEST_BINARY_DIR``
    Top of test binary tree

   and an failure must store a message in ``RunCMake_TEST_FAILED``.

To speed up local testing, you can choose to run only a subset of
``run_cmake()`` tests in a ``RunCMakeTest.cmake`` script by using the
``RunCMake_TEST_FILTER`` environment variable. If this variable is set,
it is treated as a regular expression, and any tests whose names don't
match the regular expression are not run. For example::

  $ RunCMake_TEST_FILTER="^example" ctest -R '^RunCMake\.Example$'

This will only run subtests in ``RunCMake.Example`` that start with
``example``.