Hi,

I work on a large project that has 160 Tupfiles for 20k C++ source files that needs to be tested for portability across more than 30 C++ compiler versions, 20 Boost versions, and many other dependencies. My practice is to install each dependency in its own version-specific installation prefix, and thus changing dependencies causes tup to rebuild affected artifacts because the compiler paths and/or switches change. I'm switching between dependencies on a daily basis and have never missed tup's lack of a "clean", although my setup is probably atypical.

--Robb



dirkson writes:

Hi there!

If the version of a compilation tool changes between tup compiles, the output of a compilation step can change in a way that a tup user might care
about, but that tup can't currently account for.

As an example, the commonmark-to-html tool I was using to compile my website recently changed its default behavior from "copy html in commonmark files" to "remove html in commonmark files". I ended up need to emulate a "Tup clean" by manually removing most of the generated files, to force tup
to regenerate everything using the new method.

This could be solved by introducing 'tup clean', or by having tup do some sort of hash on the binaries and/or command lines used for compilation. The second sounds both messy and difficult, and it may result in recompilation when the user doesn't want it - Most GCC version bumps can be safely ignored, for example. This leaves 'tup clean' as the cleanest obvious
solution to this particular problem.

Please feel free to correct me if I've said something dumb, or if you can
think up a solution I missed.

Cheers,
-Dirk

--

--
--
tup-users mailing list
email: [email protected]
unsubscribe: [email protected]
options: http://groups.google.com/group/tup-users?hl=en
--- You received this message because you are subscribed to the Google Groups "tup-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tup-users/875zoij54g.fsf%40llnl.gov.
For more options, visit https://groups.google.com/d/optout.

Reply via email to