On 09/10/2010 06:43 PM, Eric Blake wrote:
* src/Makefile.am (libvirt.def, libvirt_qemu.def): '\}' and
'\t'
are not required by POSIX. Use '}' and literal tab instead.
(install-data-local): Avoid sed -i.
* tests/read-bufsiz: Likewise.
Reported by Mitchell Hashimoto.
---
This should work for you, but I'd appreciate positive feedback
from an actual build on OS X.
I used cp/rm rather than mv when replacing sed -i, so as to preserve
permissions on the just-installed file (in case creation of the
temporary file via> gets different permissions due to umask).
There was another use of sed -i in libvirt.spec.in, but as that
is specific to rpm building, where we know GNU sed will be in
use, I didn't see the point in changing it.
src/Makefile.am | 12 ++++++++----
tests/read-bufsiz | 6 +++---
2 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
index b321657..9bc4287 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1029,14 +1029,14 @@ libvirt.syms: libvirt_public.syms $(USED_SYM_FILES)
libvirt.def: libvirt.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&& \
+ sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[ ]*\(.*\)\;/ \1/g'
$^>> $@-tmp&& \
chmod a-w $@-tmp&& \
mv $@-tmp libvirt.def
libvirt_qemu.def: $(srcdir)/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&& \
+ sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[ ]*\(.*\)\;/ \1/g'
$^>> $@-tmp&& \
chmod a-w $@-tmp&& \
mv $@-tmp libvirt_qemu.def
@@ -1177,8 +1177,12 @@ if WITH_NETWORK
$(INSTALL_DATA) $(srcdir)/network/default.xml \
$(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml
test -z "$(UUID)" || \
- sed -i -e
"s,</name>,</name>\n<uuid>$(UUID)</uuid>," \
- $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml
+ { sed -e "s,</name>,</name>\n<uuid>$(UUID)</uuid>,"
\
+ $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml> \
+ $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml.t&& \
+ cp $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml.t \
+ $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml&& \
+ rm $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml.t; }
test -e $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml || \
ln -s ../default.xml \
$(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
diff --git a/tests/read-bufsiz b/tests/read-bufsiz
index f0f03b9..2a91bcf 100755
--- a/tests/read-bufsiz
+++ b/tests/read-bufsiz
@@ -1,7 +1,7 @@
#!/bin/sh
# ensure that reading a file larger than BUFSIZ works
-# Copyright (C) 2008 Red Hat, Inc.
+# Copyright (C) 2008, 2010 Red Hat, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -30,10 +30,10 @@ fi
fail=0
# Output a valid definition, to be used as input.
-$abs_top_builddir/tools/virsh -c test:///default dumpxml 1> xml || fail=1
+$abs_top_builddir/tools/virsh -c test:///default dumpxml 1> xml.t || fail=1
# Change the VM name
-sed -i -e "s|<name>test</name>|<name>newtest</name>|g"
xml
+sed -e "s|<name>test</name>|<name>newtest</name>|g"
xml.t> xml
for i in before after; do
# The largest BUFSIZ I've seen is 128K. This is slightly larger.
ACK
Paolo