ENH: Re-work of fix committed yesterday for the Watcom WMake dashboard. Fix it properly by using the SYMBOLIC source file property to indicate to WMake when the sentinel file is not actually written by the update step.

This commit is contained in:
David Cole 2008-12-24 10:10:40 -05:00
parent 1e5d400100
commit 5d9e78e918
2 changed files with 8 additions and 20 deletions

View File

@ -310,7 +310,6 @@ endfunction(add_external_project_download_command)
function(add_external_project_update_command name)
set(added 0)
get_external_project_directories(base_dir build_dir downloads_dir install_dir
sentinels_dir source_dir tmp_dir)
@ -373,6 +372,9 @@ function(add_external_project_update_command name)
COMMENT "Performing update step (CVS update) for '${name}'"
DEPENDS ${sentinels_dir}/${name}-download
)
# Since the update sentinel is not actually written:
set_property(SOURCE ${sentinels_dir}/${name}-update
PROPERTY SYMBOLIC 1)
return()
endif()
@ -399,6 +401,9 @@ function(add_external_project_update_command name)
COMMENT "Performing update step (SVN update) for '${name}'"
DEPENDS ${sentinels_dir}/${name}-download
)
# Since the update sentinel is not actually written:
set_property(SOURCE ${sentinels_dir}/${name}-update
PROPERTY SYMBOLIC 1)
return()
endif()

View File

@ -59,23 +59,10 @@ if(NOT DEFINED can_use_svn)
set(can_use_svn ${can_use_svn} CACHE STRING "Was try_svn_checkout successful?")
endif()
# WATCOM WMake cannot handle "always out of date" custom commands,
# so force the update_step to be an up-to-date no-op instead of a
# cvs/svn update...
#
set(update_step)
if(WATCOM)
set(update_step
UPDATE_COMMAND ${CMAKE_COMMAND}
UPDATE_ARGS "-E echo no-op update step"
)
endif()
message(STATUS "can_build_kwstyle='${can_build_kwstyle}'")
message(STATUS "can_build_tutorial_step5='${can_build_tutorial_step5}'")
message(STATUS "can_use_cvs='${can_use_cvs}'")
message(STATUS "can_use_svn='${can_use_svn}'")
message(STATUS "update_step='${update_step}'")
# Empty projects that test all the known add_external_project argument key words:
@ -110,6 +97,8 @@ add_external_project(${proj}
TAR_URL ""
TGZ ""
TGZ_URL ""
UPDATE_ARGS ""
UPDATE_COMMAND ""
)
@ -180,7 +169,6 @@ if(can_use_cvs)
CVS_TAG "-D\;2008-12-01 01:00:00 UTC"
CONFIGURE_ARGS "\"-DCMAKE_INSTALL_PREFIX:PATH=${prefix}\" -G \"${CMAKE_GENERATOR}\" \"${source_dir}/${proj}\""
INSTALL_COMMAND ""
${update_step}
)
# CVS by tag:
@ -192,7 +180,6 @@ if(can_use_cvs)
CVS_TAG "-r\;CMake-2-6-2"
CONFIGURE_ARGS "\"-DCMAKE_INSTALL_PREFIX:PATH=${prefix}\" -G \"${CMAKE_GENERATOR}\" \"${source_dir}/${proj}\""
INSTALL_COMMAND ""
${update_step}
)
if(can_build_kwstyle)
@ -210,7 +197,6 @@ if(can_use_cvs)
DEPENDS "TutorialStep1-LocalNoDirTGZ"
DEPENDS "TutorialStep1-20081201"
DEPENDS "kwsys-from-CMake-2-6-2"
${update_step}
)
endif()
endif()
@ -226,7 +212,6 @@ if(can_use_svn)
SVN_REPOSITORY "http://gdcm.svn.sourceforge.net/svnroot/gdcm/trunk/Utilities/gdcmmd5"
SVN_TAG "-r\;{2008-12-04 01:00:00 +0000}"
CONFIGURE_ARGS "\"-DCMAKE_INSTALL_PREFIX:PATH=${prefix}\" -G \"${CMAKE_GENERATOR}\" \"${source_dir}/${proj}\""
${update_step}
)
# SVN by revision number:
@ -237,7 +222,6 @@ if(can_use_svn)
SVN_TAG "-r\;4824"
CONFIGURE_ARGS "\"-DCMAKE_INSTALL_PREFIX:PATH=${prefix}\" -G \"${CMAKE_GENERATOR}\" \"${source_dir}/${proj}\""
INSTALL_COMMAND ""
${update_step}
)
# Live SVN / trunk (no SVN_TAG):
@ -247,7 +231,6 @@ if(can_use_svn)
SVN_REPOSITORY "http://gdcm.svn.sourceforge.net/svnroot/gdcm/trunk/Utilities/gdcmmd5"
CONFIGURE_ARGS "\"-DCMAKE_INSTALL_PREFIX:PATH=${prefix}\" -G \"${CMAKE_GENERATOR}\" \"${source_dir}/${proj}\""
INSTALL_COMMAND ""
${update_step}
)
endif()