From: Matthias Bolte Date: Mon, 3 May 2010 10:21:58 +0000 (+0200) Subject: mingw: Fix symbol export X-Git-Tag: v0.8.2~345 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=38eb50ae763ef5341aab52ab350249f934ef2664;p=thirdparty%2Flibvirt.git mingw: Fix symbol export In commit 98fb83ce25f46e0236706fa6e0943032d921935f I changed the version script handling. But it seems that I didn't test this properly and broke it. The .def file is passed to the compiler directly, but it should get passed to the linker instead. Set VERSION_SCRIPT_FLAGS to -Wl, to pass the .def file correctly to the linker. This fixes the undefined symbol errors while linking virsh. --- diff --git a/configure.ac b/configure.ac index f25e173585..6ee5b90282 100644 --- a/configure.ac +++ b/configure.ac @@ -78,7 +78,6 @@ AM_PROG_LD VERSION_SCRIPT_FLAGS=-Wl,--version-script= `$LD --help 2>&1 | grep -- --version-script >/dev/null` || \ VERSION_SCRIPT_FLAGS="-Wl,-M -Wl," -AC_SUBST(VERSION_SCRIPT_FLAGS) LIBVIRT_COMPILE_WARNINGS([maximum]) @@ -1824,10 +1823,11 @@ case "$host" in # from libvirt.syms and passes libvirt.def instead of libvirt.syms to the linker LIBVIRT_SYMBOL_FILE=libvirt.def # mingw's ld has the --version-script parameter, but it requires a .def file - # instead to work properly, therefore clear --version-script here + # instead to work properly, therefore clear --version-script here and use + # -Wl, to pass the .def file to the linker # cygwin's ld has the --version-script parameter too, but for some reason # it's working there as expected - VERSION_SCRIPT_FLAGS= + VERSION_SCRIPT_FLAGS="-Wl," ;; esac AC_SUBST([CYGWIN_EXTRA_LDFLAGS]) @@ -1836,6 +1836,7 @@ AC_SUBST([CYGWIN_EXTRA_PYTHON_LIBADD]) AC_SUBST([MINGW_EXTRA_LDFLAGS]) AC_SUBST([WIN32_EXTRA_CFLAGS]) AC_SUBST([LIBVIRT_SYMBOL_FILE]) +AC_SUBST([VERSION_SCRIPT_FLAGS]) dnl Look for windres to build a Windows icon resource.