[Xen-devel] [PATCH] tools/libxl: testenum.c depends on libxl.h

Olaf Hering
2011-07-04T13:18:23Z

testenum.c may fail to compile if libxl.h dependencies are not yet met.

....
make[3]: Entering directory
`/usr/src/packages/BUILD/xen-unstable.hg-4.2.23655/tools/libxl''
python gentypes.py libxl.idl __libxl_types.h __libxl_types.c
rm -f _libxl_paths.h.tmp.tmp; echo "SBINDIR=\"/usr/sbin\""
>> _libxl_paths.h.tmp.tmp; echo "BINDIR=\"/usr/bin\""
>> _libxl_paths.h.tmp.tmp; echo
"LIBEXEC=\"/usr/lib/xen/bin\"" >>
_libxl_paths.h.tmp.tmp; echo "LIBDIR=\"/usr/lib64\""
>> _libxl_paths.h.tmp.tmp; echo
"SHAREDIR=\"/usr/share\"" >> _libxl_paths.h.tmp.tmp;
echo "PRIVATE_BINDIR=\"/usr/lib64/xen/bin\"" >>
_libxl_paths.h.tmp.tmp; echo
"XENFIRMWAREDIR=\"/usr/lib/xen/boot\"" >>
_libxl_paths.h.tmp.tmp; echo "XEN_CONFIG_DIR=\"/etc/xen\""
>> _libxl_paths.h.tmp.tmp; echo
"XEN_SCRIPT_DIR=\"/etc/xen/scripts\"" >>
_libxl_paths.h.tmp.tmp; echo "XEN_LOCK_DIR=\"/var/lock\""
>> _libxl_paths.h.tmp.tmp; echo
"XEN_RUN_DIR=\"/var/run/xen\"" >>
_libxl_paths.h.tmp.tmp; if ! cmp _libxl_paths.h.tmp.tmp _libxl_paths.h.tmp; then
mv -f _libxl_paths.h.tmp.tmp _libxl_paths.h.tmp; fi
python gentest.py libxl.idl testenum.c.new
Parsing libxl.idl
cmp: _libxl_paths.h.tmp: No such file or directory
sed -e "s/\([^=]*\)=\(.*\)/#define \1 \2/g" _libxl_paths.h.tmp
>_libxl_paths.h.2.tmp
if ! cmp -s _libxl_paths.h.2.tmp _libxl_paths.h; then mv -f _libxl_paths.h.2.tmp
_libxl_paths.h; fi
Parsing libxl.idl
mv testenum.c.new testenum.c
gcc  -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2  -funwind-tables
-fasynchronous-unwind-tables -g -O1 -fno-omit-frame-pointer -m64 -g
-fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value
-Wdeclaration-after-statement  -O1 -fno-omit-frame-pointer -m64 -g
-fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value
-Wdeclaration-after-statement  -O1 -fno-omit-frame-pointer -m64 -g
-fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value
-Wdeclaration-after-statement  -D__XEN_TOOLS__ -MMD -MF .subdirs-install.d
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -O1
-fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wall
-Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement
-D__XEN_TOOLS__ -MMD -MF .subdir-install-libxl.d  -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -O1 -fno-omit-frame-pointer
-m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes
-Wno-unused-value -Wdeclaration-after-statement  -D__XEN_TOOLS__ -MMD -MF
.testenum.o.d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-fno-optimize-sibling-calls -Werror -Wno-format-zero-length
-Wmissing-declarations -I. -fPIC
-I/usr/src/packages/BUILD/xen-unstable.hg-4.2.23655/tools/libxl/../../tools/libxc
-I/usr/src/packages/BUILD/xen-unstable.hg-4.2.23655/tools/libxl/../../tools/include
-I/usr/src/packages/BUILD/xen-unstable.hg-4.2.23655/tools/libxl/../../tools/libxl
-I/usr/src/packages/BUILD/xen-unstable.hg-4.2.23655/tools/libxl/../../tools/libxc
-I/usr/src/packages/BUILD/xen-unstable.hg-4.2.23655/tools/libxl/../../tools/include
-I/usr/src/packages/BUILD/xen-unstable.hg-4.2.23655/tools/libxl/../../tools/include
-c -o testenum.o testenum.c
In file included from testenum.c:3:
libxl.h:199:26: error: _libxl_types.h: No such file or directory
In file included from testenum.c:3:
libxl.h:203: error: expected ''='', '','',
'';'', ''asm'' or
''__attribute__'' before ''*'' token
....


Signed-off-by: Olaf Hering <olaf@aepfle.de>

Index: xen-unstable.hg-4.2.23655/tools/libxl/Makefile
==================================================================---
xen-unstable.hg-4.2.23655.orig/tools/libxl/Makefile
+++ xen-unstable.hg-4.2.23655/tools/libxl/Makefile
@@ -52,7 +52,7 @@ $(XL_OBJS): CFLAGS += $(CFLAGS_libxenctr
 $(XL_OBJS): CFLAGS += $(CFLAGS_libxenlight)

 testenum.o: CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenlight)
-testenum.c: libxl.idl gentest.py
+testenum.c: libxl.idl gentest.py libxl.h
 	$(PYTHON) gentest.py libxl.idl testenum.c.new
 	mv testenum.c.new testenum.c