I've been meaning to add something like that to our nightly builds just using shell/batch scripting. You should be able to set CMAKE_PREFIX_PATH in the initial cache and then just make install or use the vs command line app to run the INSTALL project after calling ctest -S.
Not sure on how to detect build failure via ctest directly. For us if the build fails we're not going to care about the contents of the install directory. On Feb 17, 2010 4:58 PM, "Tyler Roscoe" <ty...@cryptio.net> wrote: Next question: - CDash and miscellaneous post-build steps Now that I've got Continuous Integration up and running with CDash, I'd like to publish my Continuous builds to a central build archive so developers and testers can use them. I can write post-build rules to copy my _results directory to the build archive (or mess with CMAKE_INSTALL_PREFIX and the INSTALL target), but then the build will be copied as soon as compiling/linking are finished. I would prefer to run the tests first and only copy the build if it passes all the tests. I thought of doing the copy from my continuous integration script itself. I could copy after a successful build by making use of the NUMBER_ERRORS and NUMBER_WARNINGS parameters to ctest_build(). I was hoping I could do the same after ctest_test(), but that command doesn't seem to have anything like NUMBER_ERRORS that would let me evaluate if the tests completed successfully before performing the copy. How do other people handle this? I'd like to do more than just publish the builds (run the setup.exe and make sure it works, compare what is installed by setup.exe against a known-good install manifest, kick off component tests on another machine with this newly-generated build, etc.) but figuring out a method for publishing builds would be a great start. Thanks, tyler On Fri, Dec 04, 2009 at 01:07:23PM -0500, Bill Hoffman wrote: > Tyler Roscoe wrote: > 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 _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake