On 08/12/2010 05:23 PM, Matthias Bolte wrote:
@@ -1866,6 +1866,7 @@ case "$host" in
# Also set the symbol file to .def, so src/Makefile generates libvirt.def
# from libvirt.syms and passes libvirt.def instead of libvirt.syms to the linker
LIBVIRT_SYMBOL_FILE=libvirt.def
+ LIBVIRT_QEMU_SYMBOL_FILE='$(srcdir)/libvirt_qemu.def'
The libvirt_qemu.syms file lives in $(srcdir) because it is
version-controlled, but this line would make the .def file live there
too even though it is generated. Any reason you can't use just
LIBVIRT_QEMU_SYMBOL_FILE=libvirt_qemu.def, and still have things work in
a VPATH build with it living in $(builddir)?
+++ b/src/Makefile.am
@@ -1010,7 +1010,7 @@ EXTRA_DIST += \
libvirt_daemon.syms \
libvirt_nwfilter.syms
-BUILT_SOURCES += libvirt.syms libvirt.def
+BUILT_SOURCES += libvirt.syms libvirt.def libvirt_qemu.def
Particularly here, since you are treating it as a built source - in
fact, I'm guessing that this won't work in a VPATH build without
tweaking the configure.ac change to drop $(srcdir).
+libvirt_qemu.def: libvirt_qemu.syms
Which also means that for this line, you may have to make the dependency
be on $(srcdir)/libvirt_qemu.syms, since the whole point of my question
is reading input from $(srcdir) but generating output in $(builddir).
+ $(AM_V_GEN)rm -f -- $@-tmp $@ ; \
+ printf 'EXPORTS\n' > $@-tmp && \
+ sed -e '/^$$/d; /#/d; /:/d; /\}/d; /\*/d; /LIBVIRT_/d; s/[ \t]*\(.*\)\;/
\1/g' $^ >> $@-tmp && \
+ chmod a-w $@-tmp && \
+ mv $@-tmp libvirt_qemu.def
+
--
Eric Blake eblake(a)redhat.com +1-801-349-2682
Libvirt virtualization library
http://libvirt.org