From: Richard Jones Date: Fri, 30 Oct 2009 17:11:02 +0000 (+0000) Subject: appliance: Don't rebuild the appliance every time configure runs. X-Git-Tag: 1.0.77~11 X-Git-Url: http://git.annexia.org/?a=commitdiff_plain;h=ff704b2291680ca52051452abbce033953f65f3e;p=libguestfs.git appliance: Don't rebuild the appliance every time configure runs. config.status touches make.sh each time it runs, even if the resulting script would not change. This causes the appliance to get rebuilt much more frequently than is necessary. There's no way to stop configure running, but we can move the config.status command into a Makefile rule to stop this undesirable behaviour. --- diff --git a/appliance/Makefile.am b/appliance/Makefile.am index d1338bf..1fb7699 100644 --- a/appliance/Makefile.am +++ b/appliance/Makefile.am @@ -61,6 +61,15 @@ $(top_builddir)/initramfs/fakeroot.log: make.sh kmod.whitelist packagelist mv $(VMLINUZ) $(VMLINUZ).bak 2>/dev/null; : if ! bash make.sh; then rm -f $@; exit 1; fi +# This used to be a configure-generated file (as is update.sh still). +# However config.status always touches the destination file, which +# means the appliance got rebuilt too often. +make.sh: make.sh.in + cd $(top_builddir) && \ + ./config.status --file=appliance/$@-t:appliance/$< + chmod +x $@-t + mv $@-t $@ + $(INITRAMFSIMG): $(top_builddir)/initramfs/fakeroot.log $(top_builddir)/daemon/guestfsd init update.sh rm -f $@ bash update.sh diff --git a/configure.ac b/configure.ac index b31c193..e11de0c 100644 --- a/configure.ac +++ b/configure.ac @@ -699,8 +699,6 @@ AC_CONFIG_SUBDIRS([daemon]) dnl Produce output files. AC_CONFIG_HEADERS([config.h]) dnl http://www.mail-archive.com/automake@gnu.org/msg10204.html -AC_CONFIG_FILES([appliance/make.sh], - [chmod +x appliance/make.sh]) AC_CONFIG_FILES([appliance/update.sh], [chmod +x appliance/update.sh]) AC_CONFIG_FILES([appliance/supermin-split.sh],