Michael Meffie <mmef...@sinenomine.net> writes: > It seems to me, a more proper fix for all this would be to have a target > for bnode.h and a target for boserr.c which are independent (and the > same for all the other placed compile_et is run). I was wondering how > krb5 copes with compile_et, and that is basically what the krb5 build > system does. The downside is compile_et is run twice, but the benefit > is a clean build system that is safe for parallel makes.
> In the krb5 build system, two implicit rules are defined. One makes .h > files from .et files, the other makes .c files from .et files. Each > rule makes some temporary files so they can be run at the some time for > a given .et file. > Unfortunately, the openafs rules would be a bit more complicated, since > some of the error tables have 'prolog' p.h files which have a different > name than the error table file. I started looking at how this might work > by defining some general implicit rules for running compile_et. I'll > push what I've done so for to gerrit for comments. This is the "command that creates two files" make problem, which is a well-known problem with a wide variety of solutions with, if not perfect behavior, at least well-understood properties. info automake faq 'multiple outputs' will explain a bunch of the possible solutions and their tradeoffs if you have the Automake info pages installed. -- Russ Allbery (r...@stanford.edu) <http://www.eyrie.org/~eagle/> _______________________________________________ OpenAFS-devel mailing list OpenAFS-devel@openafs.org https://lists.openafs.org/mailman/listinfo/openafs-devel