summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Help/dev/README.rst8
-rw-r--r--Help/dev/review.rst18
-rw-r--r--Help/dev/testing.rst42
-rw-r--r--Source/CMakeVersion.cmake2
-rw-r--r--Source/cmFileMonitor.h2
-rw-r--r--Tests/CudaOnly/SeparateCompilation/CMakeLists.txt16
6 files changed, 69 insertions, 19 deletions
diff --git a/Help/dev/README.rst b/Help/dev/README.rst
index 6d3d46d..0dc512a 100644
--- a/Help/dev/README.rst
+++ b/Help/dev/README.rst
@@ -19,9 +19,13 @@ Upstream Development
CMake uses `Kitware's GitLab Instance`_ to manage development, review, and
integration of changes. The `CMake Repository`_ holds the integration
-branches and tags. Changes follow the `CMake Review Process`_ for
-integration.
+branches and tags. Upstream development processes are covered by the
+following documents:
+
+* The `CMake Review Process`_ manages integration of changes.
+* The `CMake Testing Process`_ drives integration testing.
.. _`Kitware's GitLab Instance`: https://gitlab.kitware.com
.. _`CMake Repository`: https://gitlab.kitware.com/cmake/cmake
.. _`CMake Review Process`: review.rst
+.. _`CMake Testing Process`: testing.rst
diff --git a/Help/dev/review.rst b/Help/dev/review.rst
index ca64b95..e23c0fb 100644
--- a/Help/dev/review.rst
+++ b/Help/dev/review.rst
@@ -198,14 +198,14 @@ Integration Testing
The above `topic testing`_ tests the MR topic independent of other
merge requests and on only a few key platforms and configurations.
-CMake also has a large number of testing machines provided by Kitware
-and generous volunteers that cover nearly all supported platforms,
-generators, and configurations. In order to avoid overwhelming these
-resources, they do not test every MR individually. Instead, these
-machines follow an *integration branch*, run tests on a nightly basis
-(or continuously during the day), and post to the `CMake CDash Page`_.
-Some follow ``master``. Most follow a special integration branch,
-the *topic stage*.
+The `CMake Testing Process`_ also has a large number of machines
+provided by Kitware and generous volunteers that cover nearly all
+supported platforms, generators, and configurations. In order to
+avoid overwhelming these resources, they do not test every MR
+individually. Instead, these machines follow an *integration branch*,
+run tests on a nightly basis (or continuously during the day), and
+post to the `CMake CDash Page`_. Some follow ``master``. Most follow
+a special integration branch, the *topic stage*.
The topic stage is a special branch maintained by the "Kitware Robot"
(``@kwrobot``). It consists of the head of the MR target integration
@@ -241,6 +241,8 @@ until one of the following occurs:
Once a MR has been removed from the topic stage a new ``Do: stage``
command is needed to stage it again.
+.. _`CMake Testing Process`: testing.rst
+
Resolve
=======
diff --git a/Help/dev/testing.rst b/Help/dev/testing.rst
new file mode 100644
index 0000000..731930c
--- /dev/null
+++ b/Help/dev/testing.rst
@@ -0,0 +1,42 @@
+CMake Testing Process
+*********************
+
+The following documents the process for running integration testing builds.
+See documentation on `CMake Development`_ for more information.
+
+.. _`CMake Development`: README.rst
+
+CMake Dashboard Scripts
+=======================
+
+The *integration testing* step of the `CMake Review Process`_ uses a set of
+testing machines that follow an integration branch on their own schedule to
+drive testing and submit results to the `CMake CDash Page`_. Anyone is
+welcome to provide testing machines in order to help keep support for their
+platforms working.
+
+The `CMake Dashboard Scripts Repository`_ provides CTest scripts to drive
+nightly, continous, and experimental testing of CMake. Use the following
+commands to set up a new integration testing client:
+
+.. code-block:: console
+
+ $ mkdir -p ~/Dashboards
+ $ cd ~/Dashboards
+ $ git clone https://gitlab.kitware.com/cmake/dashboard-scripts.git CMakeScripts
+ $ cd CMakeScripts
+
+The ``cmake_common.cmake`` script contains comments at the top with
+instructions to set up a testing client. As it instructs, create a
+CTest script with local settings and include ``cmake_common.cmake``.
+
+.. _`CMake Review Process`: review.rst
+.. _`CMake CDash Page`: https://open.cdash.org/index.php?project=CMake
+.. _`CMake Dashboard Scripts Repository`: https://gitlab.kitware.com/cmake/dashboard-scripts
+
+Nightly Start Time
+------------------
+
+The ``cmake_common.cmake`` script expects its includer to be run from a
+nightly scheduled task (cron job). Schedule such tasks for sometime after
+``1:00am UTC``, the time at which our nightly testing branches fast-forward.
diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 45d6de3..dcc6ab9 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -1,5 +1,5 @@
# CMake version number components.
set(CMake_VERSION_MAJOR 3)
set(CMake_VERSION_MINOR 8)
-set(CMake_VERSION_PATCH 20170307)
+set(CMake_VERSION_PATCH 20170308)
#set(CMake_VERSION_RC 1)
diff --git a/Source/cmFileMonitor.h b/Source/cmFileMonitor.h
index 48169b8..2957328 100644
--- a/Source/cmFileMonitor.h
+++ b/Source/cmFileMonitor.h
@@ -2,6 +2,8 @@
file Copyright.txt or https://cmake.org/licensing for details. */
#pragma once
+#include <cmConfigure.h> // IWYU pragma: keep
+
#include <functional>
#include <string>
#include <vector>
diff --git a/Tests/CudaOnly/SeparateCompilation/CMakeLists.txt b/Tests/CudaOnly/SeparateCompilation/CMakeLists.txt
index d134b96..420d7a9 100644
--- a/Tests/CudaOnly/SeparateCompilation/CMakeLists.txt
+++ b/Tests/CudaOnly/SeparateCompilation/CMakeLists.txt
@@ -12,22 +12,22 @@ project (CudaOnlySeparateCompilation CUDA)
string(APPEND CMAKE_CUDA_FLAGS " -gencode arch=compute_30,code=compute_30")
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CUDA_STANDARD 11)
-add_library(CUDASerarateLibA STATIC file1.cu file2.cu file3.cu)
+add_library(CUDASeparateLibA STATIC file1.cu file2.cu file3.cu)
#Having file4/file5 in a shared library causes serious problems
#with the nvcc linker and it will generate bad entries that will
#cause a segv when trying to run the executable
#
-add_library(CUDASerarateLibB STATIC file4.cu file5.cu)
-target_link_libraries(CUDASerarateLibB PRIVATE CUDASerarateLibA)
+add_library(CUDASeparateLibB STATIC file4.cu file5.cu)
+target_link_libraries(CUDASeparateLibB PRIVATE CUDASeparateLibA)
add_executable(CudaOnlySeparateCompilation main.cu)
-target_link_libraries(CudaOnlySeparateCompilation PRIVATE CUDASerarateLibB)
+target_link_libraries(CudaOnlySeparateCompilation PRIVATE CUDASeparateLibB)
-set_target_properties( CUDASerarateLibA
- CUDASerarateLibB
+set_target_properties( CUDASeparateLibA
+ CUDASeparateLibB
PROPERTIES CUDA_SEPARABLE_COMPILATION ON)
-set_target_properties( CUDASerarateLibA
- CUDASerarateLibB
+set_target_properties( CUDASeparateLibA
+ CUDASeparateLibB
PROPERTIES POSITION_INDEPENDENT_CODE ON)