On Fedora 13 with sufficient mingw32-* packages installed, running ./autobuild.sh failed to cross-compile to mingw because mingw32-pthreads installed a broken <pthread.h>. With that issue fixed, the build still failed due to use of O_SYNC. Meanwhile, recent .spec.in changes got out of sync, and running ./autobuild.sh generates some leftover files worth ignoring. * bootstrap.conf (gnulib_modules): Add fcntl-h, for O_SYNC. * .gnulib: Update to latest, to work around buggy pthreads-win32 library. * bootstrap: Import latest from gnulib. * mingw32-libvirt.spec.in: Distribute new file. * .gitignore: Ignore files built by ./autobuild.sh. --- Took me the better part of a day to track all of this down, but I got back to the point where ./autobuild.sh works when you have a mingw cross-compiler installed. .gitignore | 4 ++++ .gnulib | 2 +- bootstrap | 14 ++++++++------ bootstrap.conf | 1 + mingw32-libvirt.spec.in | 1 + 5 files changed, 15 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 39ed671..fee8f8e 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,10 @@ /GNUmakefile /libvirt-[0-9]* /maint.mk +/tools/virsh-console.gcda +/tools/virsh-console.gcno +/tools/virsh-virsh.gcda +/tools/virsh-virsh.gcno ABOUT-NLS COPYING ChangeLog diff --git a/.gnulib b/.gnulib index 28e5820..df6774c 160000 --- a/.gnulib +++ b/.gnulib @@ -1 +1 @@ -Subproject commit 28e58203a7ab14264f8fa450884a89e9ae48025c +Subproject commit df6774c09485e6b0f31f4659eb55d50c68c008a8 diff --git a/bootstrap b/bootstrap index 365a3d9..2422549 100755 --- a/bootstrap +++ b/bootstrap @@ -1,6 +1,6 @@ #! /bin/sh # Print a version string. -scriptversion=2010-02-24.17; # UTC +scriptversion=2010-05-17.18; # UTC # Bootstrap this package from checked-out sources. @@ -409,6 +409,7 @@ git_modules_config () { } gnulib_path=`git_modules_config submodule.gnulib.path` +: ${gnulib_path=gnulib} # Get gnulib files. @@ -424,7 +425,8 @@ case ${GNULIB_SRCDIR--} in trap cleanup_gnulib 1 2 13 15 - git clone --help|grep depth > /dev/null && shallow='--depth 2' || shallow= + shallow= + git clone -h 2>&1 | grep -- --depth > /dev/null && shallow='--depth 2' git clone $shallow git://git.sv.gnu.org/gnulib "$gnulib_path" || cleanup_gnulib @@ -437,7 +439,7 @@ case ${GNULIB_SRCDIR--} in if test -d "$GNULIB_SRCDIR"/.git && \ git_modules_config submodule.gnulib.url >/dev/null; then echo "$0: getting gnulib files..." - if git submodule --help|grep reference > /dev/null; then + if git submodule -h|grep -- --reference > /dev/null; then # Prefer the one-liner available in git 1.6.4 or newer. git submodule update --init --reference "$GNULIB_SRCDIR" \ "$gnulib_path" || exit $? @@ -488,7 +490,7 @@ update_po_files() { test -d $ref_po_dir || mkdir $ref_po_dir || return download_po_files $ref_po_dir $domain \ && ls "$ref_po_dir"/*.po 2>/dev/null | - sed 's|.*/||; s|\.po$||' > "$po_dir/LINGUAS" + sed 's|.*/||; s|\.po$||' > "$po_dir/LINGUAS" || return langs=`cd $ref_po_dir && echo *.po|sed 's/\.po//g'` test "$langs" = '*' && langs=x @@ -819,7 +821,7 @@ if test $with_gettext = yes; then a\ '"$XGETTEXT_OPTIONS"' $${end_of_xgettext_options+} } - ' po/Makevars.template >po/Makevars + ' po/Makevars.template >po/Makevars || exit 1 if test -d runtime-po; then # Similarly for runtime-po/Makevars, but not quite the same. @@ -833,7 +835,7 @@ if test $with_gettext = yes; then a\ '"$XGETTEXT_OPTIONS_RUNTIME"' $${end_of_xgettext_options+} } - ' <po/Makevars.template >runtime-po/Makevars + ' po/Makevars.template >runtime-po/Makevars || exit 1 # Copy identical files from po to runtime-po. (cd po && cp -p Makefile.in.in *-quot *.header *.sed *.sin ../runtime-po) diff --git a/bootstrap.conf b/bootstrap.conf index 1e193d9..44d6d0e 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -27,6 +27,7 @@ close connect count-one-bits dirname-lgpl +fcntl-h getaddrinfo gethostname getpass diff --git a/mingw32-libvirt.spec.in b/mingw32-libvirt.spec.in index fc90203..6b2b5c6 100644 --- a/mingw32-libvirt.spec.in +++ b/mingw32-libvirt.spec.in @@ -91,6 +91,7 @@ rm -rf $RPM_BUILD_ROOT %dir %{_mingw32_datadir}/libvirt/ %dir %{_mingw32_datadir}/libvirt/schemas/ %{_mingw32_datadir}/libvirt/schemas/domain.rng +%{_mingw32_datadir}/libvirt/schemas/domainsnapshot.rng %{_mingw32_datadir}/libvirt/schemas/network.rng %{_mingw32_datadir}/libvirt/schemas/storagepool.rng %{_mingw32_datadir}/libvirt/schemas/storagevol.rng -- 1.7.0.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list