Hallo Jörg, all, Joerg Schilling wrote in <20210825152559.ctbfz%sch...@schily.net>: |"Steffen Nurpmeso via austin-group-l at The Open Group" <austin-group-l@\ |opengroup.org> wrote: |> Now it has to be said, GNU make supports an immense number of |> special cases, pattern expansions etc., and this makes me wonder |> whether the standard says anything to this. |> Because, _if_ the standard would allow |> |> FOO = .WAIT |> BAR: a $(FOO) b |> |> then -- i have not yet really looked into that -- it seems GNU |> make uses "double expansion" and the above approach would possibly |> no longer work because. |> Is there wording in the standard that this is allowed? Is this |> desirable? Shall there be words that forbid such usage of .WAIT, |> or any other special target? For example, in GNU make, i see | |We discussed this in the teleconference and since I am using that feature \ |in |the schily makefile system, I expect this to work and I believe that our |current wording requires it. | |The background is that make, while parsing | | BAR: a $(FOO) b | |immediately expands $(FOO) in the reader, before the rest of the parser \ |can |see it.
Well i hope so *indeed*!! Tomorrow i have time and will look into GNU make more thoroughly; if it *that* way, then i think the even better approach would be to just use a hash map -- there is hash stuff available! -- of all dependencies <-> targets which require waiting, and do not fiddle around with structures etc. at all! ..Under the premise that file-wide target names are unique this should work! Thus the solution to implement .WAIT: for GNU make would be very, very simple, just adapt split_prereqs() and set a global hashmap of dependencies which require waiting, and in new_job() look up whether the "file" name is a member of that hashmap! That easy it could be in the end!! (And i am hoping for it ;) (And of course we would need to ensure that inter-dependencies are created, to enable the usual dependency mechanism to spring into existence.) Thanks Jörg. Ciao, --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)