[Libosinfo] [PATCH] build: generate files in the correct order

Eric Blake eblake at redhat.com
Thu Sep 5 22:12:03 UTC 2013


On 09/05/2013 03:58 PM, Fabiano Fidêncio wrote:
> We should generate osinfo_enum_types.h before generate osinfo_enum_types.c, avoid this error:
> GEN      osinfo_enum_types.c
> Can't open ./osinfo_enum_types.h: No such file or directory at /usr/bin/glib-mkenums line 296, <> line 3630.
> ---
>  osinfo/Makefile.am | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/osinfo/Makefile.am b/osinfo/Makefile.am
> index 7935d9c..4b304f5 100644
> --- a/osinfo/Makefile.am
> +++ b/osinfo/Makefile.am
> @@ -3,8 +3,8 @@ EXTRA_DIST = libosinfo.syms \
>  	     osinfo_enum_types.h.template \
>  	     osinfo_enum_types.c.template
>  
> -BUILT_SOURCES = osinfo_enum_types.c \
> -		osinfo_enum_types.h
> +BUILT_SOURCES = osinfo_enum_types.h \
> +		osinfo_enum_types.c

Won't work with a 'make -j2'.  Just because linear make processes them
in order does not guarantee that you have fixed the missing dependency
in a parallel make.  Instead, you'll need to add a make dependency.

My (untested) attempt (and sheesh those are long lines; would it hurt to
add \-newline wrapping?):

diff --git i/osinfo/Makefile.am w/osinfo/Makefile.am
index 7935d9c..fc87123 100644
--- i/osinfo/Makefile.am
+++ w/osinfo/Makefile.am
@@ -144,7 +144,7 @@ libosinfo_1_0_la_SOURCES =		\
 osinfo_enum_types.h: $(OSINFO_HEADER_FILES) osinfo_enum_types.h.template
 	$(AM_V_GEN) ( $(GLIB_MKENUMS) --template
$(srcdir)/osinfo_enum_types.h.template
$(libosinfo_1_0_include_HEADERS:%=$(srcdir)/%) ) >
$(srcdir)/osinfo_enum_types.h

-osinfo_enum_types.c: $(OSINFO_HEADER_FILES) osinfo_enum_types.c.template
+osinfo_enum_types.c: $(OSINFO_HEADER_FILES)
osinfo_enum_types.c.template osinfo_enum_types.h
 	$(AM_V_GEN) ( $(GLIB_MKENUMS) --template
$(srcdir)/osinfo_enum_types.c.template
$(libosinfo_1_0_include_HEADERS:%=$(srcdir)/%) ) >
$(srcdir)/osinfo_enum_types.c

 if WITH_GOBJECT_INTROSPECTION


-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 621 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libosinfo/attachments/20130905/ce18615c/attachment.sig>


More information about the Libosinfo mailing list