[Insight-developers] [ITK Community] Additional targets in CTest dashboard script for SimpleITK

Bradley Lowekamp blowekamp at mail.nih.gov
Fri Feb 21 09:52:23 EST 2014


JC,

It appears I just need to set "CTEST_PROJECT_NAME" before the ctest_buiild command with the build directory. Like so:

set(CTEST_PROJECT_NAME "SimpleITK")
# build the distribution target to make the packages to upload
ctest_build( BUILD "${CTEST_BINARY_DIRECTORY}/SimpleITK-build" TARGET dist APPEND )

This is needed to tell ctest what the MSVC project file to look for. My expectation is that with the "APPEND" option the results of this command will show up on the dashboard too.

Additionally, I also go your command to work. I had tried driving a very similar command with ctest instead of cmake and that had some odd errors.

Thanks again,
Brad

On Feb 20, 2014, at 7:53 PM, Jean-Christophe Fillion-Robin <jchris.fillionr at kitware.com> wrote:

> Hi Brad, 
> 
> Within Slicer, I created a macro name "ctest_package" that will package a build directory by building only the "package" target. That should be helpful.
> 
> See https://github.com/Slicer/Slicer/blob/4a06a8a1e07fc85935b41d3f4e6172c867ed8971/CMake/SlicerDashboardDriverScript.cmake#L353-356
> 
> To upload the package, you could look at what is done in that same file.
> 
> Hth
> Jc
> 
> 
> On Thu, Feb 20, 2014 at 7:21 PM, Bradley Lowekamp <blowekamp at mail.nih.gov> wrote:
> Hello,
> 
> I am in need of some ctest scripting assistance.
> 
> I need to build the additional "dist" target on SimpleITK's release builds in the dashboard script, with the goal to upload the built packages. My problem is I can't get the  additional "ctest_build" command to work on windows.
> 
> Here is the CMake script which add the dist target which is not part of "all":
> https://github.com/SimpleITK/SimpleITK/blob/master/Wrapping/dist/CMakeLists.txt#L7
> 
> And here is the current simpleitk_common.cmake file based off of ITK where I added a build error variable:
> https://github.com/SimpleITK/SimpleITK/blob/dashboard/simpleitk_common.cmake#L364
> 
> So my basic logic is that after the main build if there are no build errors ( and many not test failures ), build the dist target, and upload the packages. The complication is that the common dashboard script if for the "SuperBuild" level of SimpleITK , while the dist target is the the SimpleITK sub-project. So this is what I have been trying that fails on windows:
> 
> 
> macro ( dashboard_hook_end )
>   message( "build_number_errors: ${build_number_errors}" )
> 
>   # build the distribution target to make the packages to upload
>   ctest_build( BUILD "${CTEST_BINARY_DIRECTORY}/SimpleITK-build" TARGET dist )
> 
>   if ( ${build_number_errors} EQUAL "0" )
>     message ( "dashboard_git_branch: ${dashboard_git_branch}" )
>     file ( GLOB PY_EGG "${CTEST_DASHBOARD_ROOT}/SimpleITK-build/SimpleITK-build/Wrapping/dist/*.egg" )
>     file ( GLOB ZIPS "${CTEST_DASHBOARD_ROOT}/SimpleITK-build/SimpleITK-build/Wrapping/dist/*.zip" )
>      ...
>      # upload some files
>      ...
>     endforeach()
> 
>   else()
>     message( "Build failure, not uploading!" )
>   endif()
> endmacro()
> 
> I have hacked around this for a while trying various things, and haven't gotten any where. I saw an error message at one point indicating that this additional build was trying to use the SuperBuild MSVC project. It's been rather difficult as the output of these hook doesn't make to cdash.
> 
> I have spent too much time on this and hope to get some help, to know the best ways to do this type of thing.
> 
> Thanks,
> Brad
> _______________________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
> 
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.php
> 
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
> _______________________________________________
> Community mailing list
> Community at itk.org
> http://public.kitware.com/cgi-bin/mailman/listinfo/community
> 
> 
> 
> -- 
> +1 919 869 8849

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-developers/attachments/20140221/2aeeb3f8/attachment.html>


More information about the Insight-developers mailing list