Date: Tue, 29 Oct 2024 15:38:55 +0200
Gabriel Dos Reis <gdr_at_[hidden]> writes:
> [Boris]
> > Sure, though I don't think this is a novel problem: you can already
> > easily achieve such non-determinism with the __DATE__/__TIME__ macros.
>
> Sorry, I don't follow.
>
> The __DATE__ and __TIME__ non-determinism issue is solved not by the
> build systems directly, but by compilers offering options. Are you
> equating the non-determinism of __DATE__/__FILE__ with that of what
> we are discussing here? If so, how does that work?
I am merely pointing out that, at least from the build system POV,
the requirements discussed here (i.e., additional inputs/outputs
during compilation) is nothing fundamentally new. Specifically:
1. If the compiler is not able to communicate these additional
inputs/output to the build system, then it's up to the user
to hack around the fallout (which is what those compiler
options to override __DATE__/__TIME__ are for).
2. If the compiler is able to communicate these additional
inputs/outputs to the build system, then modern build systems
should be able to handle it (including dynamic inputs/outputs)
and legacy build systems will hold up the progress, just like
they do with modules. So nothing new.
> [Boris]
> > Sure, though I don't think this is a novel problem: you can already
> > easily achieve such non-determinism with the __DATE__/__TIME__ macros.
>
> Sorry, I don't follow.
>
> The __DATE__ and __TIME__ non-determinism issue is solved not by the
> build systems directly, but by compilers offering options. Are you
> equating the non-determinism of __DATE__/__FILE__ with that of what
> we are discussing here? If so, how does that work?
I am merely pointing out that, at least from the build system POV,
the requirements discussed here (i.e., additional inputs/outputs
during compilation) is nothing fundamentally new. Specifically:
1. If the compiler is not able to communicate these additional
inputs/output to the build system, then it's up to the user
to hack around the fallout (which is what those compiler
options to override __DATE__/__TIME__ are for).
2. If the compiler is able to communicate these additional
inputs/outputs to the build system, then modern build systems
should be able to handle it (including dynamic inputs/outputs)
and legacy build systems will hold up the progress, just like
they do with modules. So nothing new.
Received on 2024-10-29 13:37:59