[CMake] continuous integration with CMake

Bill Hoffman bill.hoffman at kitware.com
Fri Dec 4 13:07:23 EST 2009


Tyler Roscoe wrote:
> On Fri, Dec 04, 2009 at 12:09:09PM -0500, Bill Hoffman wrote:
>> Right now we just don't do that.  However, we do have continuous builds 
>> running on systems that wait for anything to be checked into the version 
>> control system.   Then they do a build and test.   But, we have no way 
>> to ask for a specific build.   So, as soon as developers check in code 
>> there should be a debug build of it on as many machines as you have 
>> running continuous builds.  So, no need to request the build it just 
>> happens.
> 
> Also, sorry to bug you about this again, but is there some way I can
> take a look at your setup scripts? Maybe you can send them to me
> off-list if you have internal hostnames or whatever that you don't want
> to publish.
The build scripts for CMake can be found on CDash itself, for example:

http://www.cdash.org/CDash/viewNotes.php?buildid=485762

For each dashboard on the CMake dashboard if you click on the notes for 
the build you can see the script that was used to drive the build.

Here is the .bat file that is run for a scheduled task on that machine:


$ cat dash2win64.bat
setlocal
rem Update clapack driver script from clapck
pushd c:\Dashboards\clapack
svn up clapack_build.cmake
rem Run the clapack driver script
"c:\Program Files (x86)\CMake 2.8\bin\ctest.exe" -C Release -S 
clapack_build.cmake -VV -O clapack.log
popd
endlocal

call C:\cygwin\bin\bash.exe --login 
c:/Dashboards/DashboardScripts/dash2win64cygwin.sh

"c:\Program Files (x86)\CMake 2.8\bin\ctest.exe" -C Release -S 
dash2Win64_cmake_vs10.cmake -O cmake_vs10.log
"c:\Program Files (x86)\CMake 2.8\bin\ctest.exe" -C Release -S 
dash2Win64_cmake_vs10_x64.cmake -O cmake_vs10_x64.log

setlocal
call "C:\Program Files (x86)\Microsoft Visual Studio 
10.0\VC\bin\vcvars32.bat"
"c:\Program Files (x86)\CMake 2.8\bin\ctest.exe" -C Release -S 
dash2Win64_cmake_nmake10.cmake -O cmake_nmake10.log
endlocal

setlocal
call "C:\Program Files (x86)\Microsoft Visual Studio 
10.0\VC\bin\amd64\vcvars64.bat"
"c:\Program Files (x86)\CMake 2.8\bin\ctest.exe" -C Release -S 
dash2Win64_cmake_nmake10_x64.cmake -O cmake_nmake10_x64.log
endlocal

"c:\Program Files (x86)\CMake 2.8\bin\ctest.exe" -C Release -S 
dash2win64_libarchive_vs9.cmake -VV > libarchive_vs9.log 2>&1
"c:\Program Files (x86)\CMake 2.9\bin\ctest.exe" -C Release -S 
dash2win64_cmake_icl11_32.cmake -VV > cmake_icl11_32.log 2>&1
"c:\Program Files (x86)\CMake 2.9\bin\ctest.exe" -C Release -S 
dash2win64_cmake_icl11_64.cmake -VV > cmake_icl11_64.log 2>&1


-Bill


More information about the CMake mailing list