On 2017 M09 21, Thu 07:18:46 CEST David Cole via CMake wrote:
> By manually deleting (or touching) the stamp file associated with the
> earliest step you need to re-run.
> 
> ExternalProject is not for auto-detecting changes to stuff and
> minimally re-running build steps. It's for static stuff that doesn't
> change much.
> 
> Find the "-build" stamp file that's associated with the project
> containing the source you changed and delete it.
> 
> Then run the build from the top and that one and everything that
> depends on it afterwards should rebuild.

so, if I have an "external project" as sources in my project (i.e. it is not 
updated from some 
other repository or something), and if then that package is upgraded to the 
next version, 
what's the recommended way to enforce a rebuild of it ?

I have only found two clunky work-arounds: if it's a cmake-based project, I 
just add 
--no-warn-unused-cli -DREBUILD_FLAG=123
to CMAKE_ARGS, and increase this "REBUILD_FLAG" whenever a rebuild is necessary.
What also seems to work is to misuse the
URL_MD5, and set it to the date of the last update, e.g.
URL_MD5=20171002

Alex

-- 

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://public.kitware.com/mailman/listinfo/cmake

Reply via email to