On 2013-09-16 17:24-0000 Williams, Norman K wrote:
OK, yeah, I know about disabling updates. I don't remember who or when I
got the advice NOT to disable updates.
And all of the projects in our Super-Duper-build do get set to specific
SVN/GIT/CVS tags. This is the only way
to get predictable behavior.
And my reasoning was 'if you always request a specific tag, you never need
to have an update command.' But then I was told to leave that be.
The only rationale for always updating is that if you change the tag to
download, it will re-download the source, and rebuild with the new source.
If you disable update then you'll have to delete the files down in
<PRJ>-prefix/src/<PRJ>-stamp to retrigger a download.
Or do what I generally do and delete the source, build, AND prefix
directories.
All of this starts out as 'expert-level CMAKE hacking' and gets
progressively more abstruse as I go along. I keep trying to think of how
to simplify it for people who want to build and use applications using the
SuperBuild. Not sure who they are, or if I really should try and bend over
backwards to make things easy for them.
I suggest you try 2.8.12. The reason I say that is for CMake versions
before 2.8.12, the cmake -E touch command (used a lot within the
ExternalProject module) has only one-second time resolution, i.e., the
time for the file that is touched is rounded down to the nearest
second. Anyhow, I worked around the problem by replacing cmake -E
touch everywhere by the system touch command within a local version of
the ExternalProject module, and a lot of annoying dependency issues
disappeared as a result. (I could use that workaround because Linux
and MSYS are the only platforms where I currently use ExternalProject,
and a system touch command is available for both those cases.)
Apparently this time resolution issue for the cmake -E touch command
has now been fixed for CMake-2.8.12 (for platforms that support
setting file update times to better than one second). I don't know
whether your particular dependency issue will be fixed by that, but it
should certainly be worth trying CMake-2.8.12 as a first step whenever
annoying dependency issues are discovered for the ExternalProject
module for prior CMake versions.
Alan
__________________________
Alan W. Irwin
Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).
Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________
Linux-powered Science
__________________________
--
Powered by www.kitware.com
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Kitware offers various services to support the CMake community. For more
information on each offering, please visit:
CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake