[Libguestfs] [PATCH] builder: add index-struct.h as dependency for index-parser-c.c

Pino Toscano ptoscano at redhat.com
Mon Feb 17 10:29:50 UTC 2014


On Sunday 16 February 2014 22:32:52 Richard W.M. Jones wrote:
> BTW, although there is nothing wrong with this patch, it doesn't seem
> to completely resolve the problem.  It looks like there could be
> another missing dependency.
> 
> When I did:
> 
>   make distclean && ./configure && make -j5
> 
> the build failed as below (not always reproducible).  As you can see
> 'index-parse.h' is "updating" some time after it is used.
> [...]
> make[2]: Entering directory `/home/rjones/d/libguestfs/builder'
>   YACC     index-parse.c
>   LEX      index-scan.c
>   CC       virt_index_validate-index-struct.o
>   CC       virt_index_validate-index-validate.o
>   CC       index-struct.o
> ocamlfind ocamlc -g -warn-error CDEFLMPSUVYZX -package str,unix -I
> ../src/.libs -I ../ocaml -I ../mllib -package gettext-stub -c
> pxzcat.mli -o pxzcat.cmi CC       pxzcat-c.o
>   CC       setlocale-c.o
> ocamlfind ocamlc -g -warn-error CDEFLMPSUVYZX -package str,unix -I
> ../src/.libs -I ../ocaml -I ../mllib -package gettext-stub -c
> setlocale.mli -o setlocale.cmi index-validate.c:34:25: fatal error:
> index-parse.h: No such file or directory #include "index-parse.h"
>                          ^
> compilation terminated.
> [...]
> make[2]: *** [virt_index_validate-index-validate.o] Error 1
> make[2]: *** Waiting for unfinished jobs....

I see.
While I don't have a deep knowledge of it, my guess would be the way 
automake 1.14 handles outputs for different targets in the same build 
directory. As you can see, it prefixes them by the target name, so our 
custom rules won't apply basically.

Curiously, I hit that last weekend when rebuilding on my Debian testing 
(which has automake 1.14, unlike my current F19 which has 1.13), but 
didn't have the occasion to debug it yet.

-- 
Pino Toscano




More information about the Libguestfs mailing list