[libvirt] [PATCH] Generate libvirt_qemu.def from libvirt_qemu.syms for MinGW builds

Matthias Bolte matthias.bolte at googlemail.com
Thu Aug 12 23:23:31 UTC 2010


---
 configure.ac    |    1 +
 src/.gitignore  |    1 +
 src/Makefile.am |    9 ++++++++-
 3 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/configure.ac b/configure.ac
index cd48c1b..a762bae 100644
--- a/configure.ac
+++ b/configure.ac
@@ -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'
     # mingw's ld has the --version-script parameter, but it requires a .def file
     # instead to work properly, therefore clear --version-script here and use
     # -Wl, to pass the .def file to the linker
diff --git a/src/.gitignore b/src/.gitignore
index 5d114c9..7ea8d89 100644
--- a/src/.gitignore
+++ b/src/.gitignore
@@ -11,6 +11,7 @@ libvirt_parthelper
 libvirt_lxc
 libvirt.def
 libvirt.syms
+libvirt_qemu.def
 *.i
 *.s
 virt-aa-helper
diff --git a/src/Makefile.am b/src/Makefile.am
index a66eb2a..d7858dd 100644
--- a/src/Makefile.am
+++ 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
 
 libvirt.syms: libvirt_public.syms $(USED_SYM_FILES)
 	$(AM_V_GEN)rm -f $@-tmp $@ ; \
@@ -1033,6 +1033,13 @@ libvirt.def: libvirt.syms
 	chmod a-w $@-tmp && \
 	mv $@-tmp libvirt.def
 
+libvirt_qemu.def: libvirt_qemu.syms
+	$(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
+
 # Empty source list - it merely links a bunch of convenience libs together
 libvirt_la_SOURCES =
 libvirt_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_SYMBOL_FILE) \
-- 
1.7.0.4




More information about the libvir-list mailing list