[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] libxl: add missing dependencies of libxl.h



On Thu, 2012-09-06 at 18:14 +0100, Olaf Hering wrote:
> # HG changeset patch
> # User Olaf Hering <olaf@xxxxxxxxx>
> # Date 1346951410 -7200
> # Node ID cc71fe7029b27cb95d268b99e136c445903af927
> # Parent  8a2eef481d3ab3ca5692dd0083c95cf314fe1da3
> libxl: add missing dependencies of libxl.h
> 
> libxl.h includes generated files, but the Makefile lists no dependency on
> these files. As a result compilation may fail like this:
> 
> [  379s] make -C libxl install
> [  379s] make[3]: Entering directory 
> `/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl'
> [  379s] /usr/bin/perl 
> /usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/include/xen-external/bsd-sys-queue-h-seddery
>  
> /usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/include/xen-external/bsd-sys-queue.h
>  --prefix=libxl >_libxl_list.h.new
> ...
> [  380s] gcc  -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing 
> -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement   
> -D__XEN_TOOLS__ -MMD -MF ._libxl.api-for-check.d  -D_LARGEFILE_SOURCE 
> -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -fmessage-length=0 -O2 
> -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables 
> -fasynchronous-unwind-tables -Werror -Wno-format-zero-length 
> -Wmissing-declarations -Wno-declaration-after-statement -Wformat-nonliteral 
> -I. -fPIC -pthread 
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/libxc 
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/include
>   
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/libxl 
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/libxc 
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/include
>  
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/include
>  -include 
> /usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/config.h
>   
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/libxc 
> -I/usr/src/packages/BUILD/xen-4.2.25821/non-dbg/tools/libxl/../../tools/include
>    -c -E libxl.h  \
> [  380s] -DLIBXL_EXTERNAL_CALLERS_ONLY=LIBXL_EXTERNAL_CALLERS_ONLY \
> [  380s] >_libxl.api-for-check.new
> ...
> [  380s] libxl.h:260:25: fatal error: _libxl_list.h: No such file or directory
> [  380s] compilation terminated.
> [  380s] make[3]: *** [_libxl.api-for-check] Error 1
> [  381s] if ! cmp -s _libxl_list.h.new _libxl_list.h; then mv -f 
> _libxl_list.h.new _libxl_list.h; else rm -f _libxl_list.h.new; fi
> 
> 
> Fix this be extending the existing libxl.h dependency with the generated file
> _libxl_list.h, and also with the existing libxl_event.h.
> 
> Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>
> 
> diff -r 8a2eef481d3a -r cc71fe7029b2 tools/libxl/Makefile
> --- a/tools/libxl/Makefile
> +++ b/tools/libxl/Makefile
> @@ -140,7 +140,7 @@ _libxl_save_msgs_helper.h _libxl_save_ms
>       $(PERL) -w $< $@ >$@.new
>       $(call move-if-changed,$@.new,$@)
>  
> -libxl.h: _libxl_types.h
> +libxl.h: _libxl_types.h _libxl_list.h libxl_event.h

You don't need libxl_event.h here (it's not autogenerated).

I'm not sure if $(AUTOINCS) should be used here. Ian J probably has an
opinion.

>  libxl_json.h: _libxl_types_json.h
>  libxl_internal.h: _libxl_types_internal.h _paths.h
>  libxl_internal_json.h: _libxl_types_internal_json.h
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.