Help improve the quality of CMake by running a
nightly dashboard build on your machine. If you would like to contribute
to the CMake project by building a
nightly dashboard build, you can follow these instructions.
- Obtain a copy of the Dart (http://public.kitware.com/Dart) client from cvs.
cvs -d :pserver:anonymous@public.kitware.com:/Dart/cvsroot login
(password is dart)
cvs -d :pserver:anonymous@public.kitware.com:/Dart/cvsroot co Dart
- Install tcl.
- Configure your CMake build to find Tcl and Dart.
- Test your setup by typing make Experimental, then check the CMake dashboard in the next hour to see if your results are available.
Once you are able to submit experimental builds, the next step is setting up a nightly build. The nightly build works in almost the same way, but
needs to be run each night by crontab or some other scheduling program. Getting environment variables correct can be difficult. Several examples are included here.
Examples
- Windows Visual C++ 6.0 Nightly build
cmakeNightlyVC.sh - A cygwin shell script to build a cmake dashboard.
cd //c/hoffman/Dart
cvs update -dAP
cd //c/hoffman/CMake
cvs update -dAP
cd //c/hoffman
rm -rf CMake-vc-dashboard
mkdir CMake-vc-dashboard
cd CMake-vc-dashboard
echo -e DART_ROOT:PATH=c:/Hoffman/Dart\\nMAKEPROGRAM:FILEPATH=msdev > CMakeCache.txt
/cygdrive/c/hoffman/CMake/Source/cmake ../CMake
msdev CMake.dsw /MAKE "Nightly - Win32 Debug" /BUILD
cmakeNightlyVC.bat - A windows batch file that can run cmakeNightlyVC.sh and be used from the microsoft program scheduler.
bash --login //c/Hoffman/cmakeNightlyVC.sh
- Solaris CC crontab scripts
dashboardCMake.csh -- a csh script to build cmake for a sun
#!/bin/csh
cd ${HOME}/Dart
cvs update -dAP
cd ${HOME}/CMake
cvs update -dAP
cd ${HOME}
# clean the entire build directory
rm -rf CMake-CC-dashboard
mkdir CMake-CC-dashboard
cd CMake-CC-dashboard
# preload the Dart path into the cache
echo DART_ROOT:PATH=/disk2/home/hoffman/Dart > CMakeCache.txt
setenv CXX CC
setenv CC cc
setenv CXXFLAGS ""
../CMake/configure
gmake Nightly
dashboardCronEntry.csh -- a csh script that can be run from cron
#!/bin/csh
/bin/rm -f nightlyBuild.out
csh ${HOME}/dashboardCMake.csh > nightlyBuild.out
contab entry for above
# do a nightly cmake
0 4 * * * /disk2/home/hoffman/dashboardCronEntry.csh