Example CMake Dashboard file

From KitwarePublic
Revision as of 13:17, 24 April 2018 by Brad.king (talk | contribs)
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

(Maybe these are not necessary? In ITK, the latest source is downloaded automatically if you run a nightly build - can anyone comment if that is also the case with VTK? Is this a function of CTest or is it specific to the project?) <source lang="text"> cvs -d :pserver:anonymous:vtk@public.kitware.com:/cvsroot/VTK co VTK cvs -d :pserver:anonymous:vtk@public.kitware.com:/cvsroot/VTKData co VTKData </source>

The source code is now in /home/username/Dashboards/VTK/VTK and the testing data sets are in /home/username/Dashboards/VTK/VTKData

Create a file called dashboard.cmake, the contents of which should be similar to this example: <source lang="text"> cmake_minimum_required(VERSION 2.6.3)

SET(DASHBOARD Nightly)

set(CTEST_DASHBOARD_ROOT "/home/username/Dashboards/VTK") set(CTEST_SOURCE_DIRECTORY "${CTEST_DASHBOARD_ROOT}/VTK") #expands to /home/username/Dashboards/VTK/VTK

set(CTEST_SITE "your_name.your_organization") # this can be whatever you like set(CTEST_BUILD_NAME "Linux-gcc-4.4.0") # this should be a description of your system - e.g. operating system, compiler version


set(CTEST_BINARY_DIRECTORY "${CTEST_DASHBOARD_ROOT}/bin") #expands to /home/username/Dashboards/VTK/bin set(CTEST_DATA_DIRECTORY "${CTEST_DASHBOARD_ROOT}/VTKData") #expands to /home/username/Dashboards/VTK/VTKData

  1. do not change these

set(CTEST_BUILD_CONFIGURATION Debug) set(CTEST_TEST_TIMEOUT 360) set(CTEST_COVERAGE_COMMAND "/usr/bin/gcov") # REQUIRED with new ctest script style.

  1. this should be changed to match your system

set(CTEST_CMAKE_GENERATOR "Unix Makefiles") #this example is for linux, maybe someone can provide a similar file for windows? set(CTEST_BUILD_COMMAND "make")

find_program(CTEST_CVS_COMMAND NAMES cvs) #tell cmake to use cvs to update set(CTEST_UPDATE_COMMAND "cvs") set(CTEST_UPDATE_OPTIONS "-dAP")

ctest_empty_binary_directory(${CTEST_BINARY_DIRECTORY}) #start fresh each time the dashboard build tests are performed

ctest_start(Experimental) # I think you can change this to "Nightly"?

  1. updates

ctest_update(SOURCE "${CTEST_DATA_DIRECTORY}") #update (using cvs) the data sets before testing ctest_update(SOURCE "$${CTEST_SOURCE_DIRECTORY}") #update (using cvs) the source code before building

  1. setup and build

ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}") ctest_read_custom_files("${CTEST_BINARY_DIRECTORY}") ctest_build(BUILD "${CTEST_BINARY_DIRECTORY}")

  1. run tests

ctest_test(BUILD "${CTEST_BINARY_DIRECTORY}")

  1. not sure what this is?

ctest_coverage(BUILD "${CTEST_BINARY_DIRECTORY}")

  1. submit the results to the dashboard

ctest_submit() </source>



CMake: [Welcome | Site Map]