
So, when I merged my changes up yesterday to some of the developments going on, it would seem that one of the changesets I pulled in had a bit of a reduction in configure flexibility. I'm not yet sure what changeset caused it...but I used to be able to specify an external xen tree with the following line in a Makefile... ./autogen.sh --prefix=/usr --with-xen=$(XEN_SRC)/dist/install/usr This now seems to fail to find that xen tree, as I error out with: gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../gnulib/lib -I../gnulib/lib -I../include -I../include -I../qemud -I/usr/include/libxml2 -DBINDIR=\"/usr/libexec\" -DSBINDIR=\"/usr/sbin\" -DSYSCONF_DIR=\"/etc\" -DLOCALEBASEDIR=\"/usr/share/locale\" -DLOCAL_STATE_DIR=\"/var\" -DGETTEXT_PACKAGE=\"libvirt\" -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fasynchronous-unwind-tables -g -O2 -MT stats_linux.lo -MD -MP -MF .deps/stats_linux.Tpo -c stats_linux.c -fPIC -DPIC -o .libs/stats_linux.o stats_linux.c:24:16: error: xs.h: No such file or directory stats_linux.c: In function 'check_bd_connected': stats_linux.c:154: warning: implicit declaration of function 'xs_read' stats_linux.c:154: warning: nested extern declaration of 'xs_read' stats_linux.c:154: warning: assignment makes pointer from integer without a cast I assume this has something to do with Daniel B's changes to configure scripts recently. Could you give me a pointer as to where I should be looking? Ben

I did a git bisect, and as predicted, the culprit seems to be aac3e1ab15645f1ff491b140ddb249b01397bebd is first bad commit commit aac3e1ab15645f1ff491b140ddb249b01397bebd Author: Daniel P. Berrange <berrange@redhat.com> Date: Mon Nov 17 10:43:30 2008 +0000 Build drivers as libtool convenience libs Once again, I am faced with my ignorance of how automake magic works. It looks to me like XEN_CFLAGS is set properly...but clearly they are not being passed on while compiling stats_linux.c Ben Guthro wrote on 11/20/2008 09:48 AM:
So, when I merged my changes up yesterday to some of the developments going on, it would seem that one of the changesets I pulled in had a bit of a reduction in configure flexibility.
I'm not yet sure what changeset caused it...but I used to be able to specify an external xen tree with the following line in a Makefile...
./autogen.sh --prefix=/usr --with-xen=$(XEN_SRC)/dist/install/usr
This now seems to fail to find that xen tree, as I error out with:
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../gnulib/lib -I../gnulib/lib -I../include -I../include -I../qemud -I/usr/include/libxml2 -DBINDIR=\"/usr/libexec\" -DSBINDIR=\"/usr/sbin\" -DSYSCONF_DIR=\"/etc\" -DLOCALEBASEDIR=\"/usr/share/locale\" -DLOCAL_STATE_DIR=\"/var\" -DGETTEXT_PACKAGE=\"libvirt\" -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fasynchronous-unwind-tables -g -O2 -MT stats_linux.lo -MD -MP -MF .deps/stats_linux.Tpo -c stats_linux.c -fPIC -DPIC -o .libs/stats_linux.o stats_linux.c:24:16: error: xs.h: No such file or directory stats_linux.c: In function 'check_bd_connected': stats_linux.c:154: warning: implicit declaration of function 'xs_read' stats_linux.c:154: warning: nested extern declaration of 'xs_read' stats_linux.c:154: warning: assignment makes pointer from integer without a cast
I assume this has something to do with Daniel B's changes to configure scripts recently.
Could you give me a pointer as to where I should be looking?
Ben
-- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list

On Thu, Nov 20, 2008 at 10:46:25AM -0500, Ben Guthro wrote:
I did a git bisect, and as predicted, the culprit seems to be
aac3e1ab15645f1ff491b140ddb249b01397bebd is first bad commit commit aac3e1ab15645f1ff491b140ddb249b01397bebd Author: Daniel P. Berrange <berrange@redhat.com> Date: Mon Nov 17 10:43:30 2008 +0000
Build drivers as libtool convenience libs
Once again, I am faced with my ignorance of how automake magic works.
It looks to me like XEN_CFLAGS is set properly...but clearly they are not being passed on while compiling stats_linux.c
Argggh. I didn't notice that stats_linux.c had Xen specific code in it :-( When I did the refactoring, it changed so that XEN_CFLAGS/LDFLAGS is only used for the Xen driver code As a quick workaround, edit the line for libvirt_la_CFLAGS = $(COVERAGE_CFLAGS) -DIN_LIBVIRT to add $(XEN_CFLAGS) Meanwhile I'll figure out why stats_linux.c needs Xen, and move the Xen specific bit into the Xen driver. Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

I tried this...didn't seem to help: diff --git a/src/Makefile.am b/src/Makefile.am index 3520130..6a38200 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -279,7 +279,7 @@ libvirt_la_LDFLAGS = -Wl,--version-script=$(srcdir)/libvirt_sym.version \ $(COVERAGE_CFLAGS:-f%=-Wc,-f%) \ $(LIBXML_LIBS) $(SELINUX_LIBS) \ @CYGWIN_EXTRA_LDFLAGS@ @MINGW_EXTRA_LDFLAGS@ -libvirt_la_CFLAGS = $(COVERAGE_CFLAGS) -DIN_LIBVIRT +libvirt_la_CFLAGS = $(COVERAGE_CFLAGS) $(XEN_CFLAGS) -DIN_LIBVIRT libvirt_la_DEPENDENCIES = $(libvirt_la_LIBADD) $(srcdir)/libvirt_sym.version # Create an automake "convenience library" version of libvirt_la, Daniel P. Berrange wrote on 11/20/2008 10:50 AM:
On Thu, Nov 20, 2008 at 10:46:25AM -0500, Ben Guthro wrote:
I did a git bisect, and as predicted, the culprit seems to be
aac3e1ab15645f1ff491b140ddb249b01397bebd is first bad commit commit aac3e1ab15645f1ff491b140ddb249b01397bebd Author: Daniel P. Berrange <berrange@redhat.com> Date: Mon Nov 17 10:43:30 2008 +0000
Build drivers as libtool convenience libs
Once again, I am faced with my ignorance of how automake magic works.
It looks to me like XEN_CFLAGS is set properly...but clearly they are not being passed on while compiling stats_linux.c
Argggh. I didn't notice that stats_linux.c had Xen specific code in it :-( When I did the refactoring, it changed so that XEN_CFLAGS/LDFLAGS is only used for the Xen driver code
As a quick workaround, edit the line for
libvirt_la_CFLAGS = $(COVERAGE_CFLAGS) -DIN_LIBVIRT
to add $(XEN_CFLAGS)
Meanwhile I'll figure out why stats_linux.c needs Xen, and move the Xen specific bit into the Xen driver.
Daniel

On Thu, Nov 20, 2008 at 01:27:40PM -0500, Ben Guthro wrote:
I tried this...didn't seem to help:
Sorry, not paying close enough attention. In fact this file was built in an earlier module. Find the line which says libvirt_driver_la_SOURCES = \ $(DRIVER_SOURCES) \ $(DOMAIN_CONF_SOURCES) \ $(NETWORK_CONF_SOURCES) \ $(STORAGE_CONF_SOURCES) \ $(NODE_DEVICE_CONF_SOURCES) And add in a line following that libvirt_driver_la_CFLAGS = $(XEN_CFLAGS) Regards, Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

On Thu, Nov 20, 2008 at 06:30:38PM +0000, Daniel P. Berrange wrote:
On Thu, Nov 20, 2008 at 01:27:40PM -0500, Ben Guthro wrote:
I tried this...didn't seem to help:
Sorry, not paying close enough attention. In fact this file was built in an earlier module. Find the line which says
libvirt_driver_la_SOURCES = \ $(DRIVER_SOURCES) \ $(DOMAIN_CONF_SOURCES) \ $(NETWORK_CONF_SOURCES) \ $(STORAGE_CONF_SOURCES) \ $(NODE_DEVICE_CONF_SOURCES)
And add in a line following that
libvirt_driver_la_CFLAGS = $(XEN_CFLAGS)
On the assumption that this fixed it for you, I've committed this change Regards, Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

Oh - sorry for not getting back to you about this. Yes - it does solve it for me. +1 -----Original Message----- From: Daniel P. Berrange [mailto:berrange@redhat.com] Sent: Fri 11/21/2008 5:12 AM To: Ben Guthro Cc: libvir-list Subject: Re: [libvirt] --with-xen=foo On Thu, Nov 20, 2008 at 06:30:38PM +0000, Daniel P. Berrange wrote:
On Thu, Nov 20, 2008 at 01:27:40PM -0500, Ben Guthro wrote:
I tried this...didn't seem to help:
Sorry, not paying close enough attention. In fact this file was built in an earlier module. Find the line which says
libvirt_driver_la_SOURCES = \ $(DRIVER_SOURCES) \ $(DOMAIN_CONF_SOURCES) \ $(NETWORK_CONF_SOURCES) \ $(STORAGE_CONF_SOURCES) \ $(NODE_DEVICE_CONF_SOURCES)
And add in a line following that
libvirt_driver_la_CFLAGS = $(XEN_CFLAGS)
On the assumption that this fixed it for you, I've committed this change Regards, Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

hmm...It looks like this is not the only problem. If I do a clean build with the following options: ./autogen.sh --enable-compile-warnings=error \ --with-xen \ --without-uml \ --with-storage-disk \ --with-storage-iscsi \ --prefix=/usr I get an error when building testutilsxen.c gcc -DHAVE_CONFIG_H -I. -I.. -I../gnulib/lib -I../gnulib/lib -I../include -I../src -I../include -I../src -I/usr/include/libxml2 -DGETTEXT_PACKAGE=\"libvirt\" -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fasynchronous-unwind-tables -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT testutilsxen.o -MD -MP -MF .deps/testutilsxen.Tpo -c -o testutilsxen.o testutilsxen.c make[4]: *** No rule to make target `../src/libvirt_driver_xen.la', needed by `xml2sexprtest'. Stop. ...it would appear that some dependency is incorrect... Ben Guthro wrote on 11/21/2008 06:52 AM:
Oh - sorry for not getting back to you about this. Yes - it does solve it for me.
+1
-----Original Message----- From: Daniel P. Berrange [mailto:berrange@redhat.com] Sent: Fri 11/21/2008 5:12 AM To: Ben Guthro Cc: libvir-list Subject: Re: [libvirt] --with-xen=foo
On Thu, Nov 20, 2008 at 06:30:38PM +0000, Daniel P. Berrange wrote:
On Thu, Nov 20, 2008 at 01:27:40PM -0500, Ben Guthro wrote:
I tried this...didn't seem to help:
Sorry, not paying close enough attention. In fact this file was built in an earlier module. Find the line which says
libvirt_driver_la_SOURCES = \ $(DRIVER_SOURCES) \ $(DOMAIN_CONF_SOURCES) \ $(NETWORK_CONF_SOURCES) \ $(STORAGE_CONF_SOURCES) \ $(NODE_DEVICE_CONF_SOURCES)
And add in a line following that
libvirt_driver_la_CFLAGS = $(XEN_CFLAGS)
On the assumption that this fixed it for you, I've committed this change
Regards, Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
------------------------------------------------------------------------
-- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
participants (2)
-
Ben Guthro
-
Daniel P. Berrange