summaryrefslogtreecommitdiffstats
path: root/appliance
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2009-07-02 21:33:51 +0100
committerRichard W.M. Jones <rjones@redhat.com>2009-07-02 21:33:51 +0100
commit7d3cccb66df63815f8230009b8d2fdf8965fbaa8 (patch)
treef3c576ddb70e7d637942ee3d61abc66ee024d660 /appliance
parent373a9ad0abb09ee079da834d251a744cdbe9ae70 (diff)
downloadlibguestfs-7d3cccb66df63815f8230009b8d2fdf8965fbaa8.tar.gz
libguestfs-7d3cccb66df63815f8230009b8d2fdf8965fbaa8.tar.xz
libguestfs-7d3cccb66df63815f8230009b8d2fdf8965fbaa8.zip
Don't rebuild the whole appliance if just the /init script has been changed.
Diffstat (limited to 'appliance')
-rw-r--r--appliance/Makefile.am4
-rwxr-xr-xappliance/make.sh.in7
-rwxr-xr-xappliance/update.sh.in7
3 files changed, 7 insertions, 11 deletions
diff --git a/appliance/Makefile.am b/appliance/Makefile.am
index 93e11679..03b2a7b4 100644
--- a/appliance/Makefile.am
+++ b/appliance/Makefile.am
@@ -54,12 +54,12 @@ endif
# This is for building the normal appliance:
$(INITRAMFSIMG) $(VMLINUZ): $(top_builddir)/initramfs/fakeroot.log
-$(top_builddir)/initramfs/fakeroot.log: make.sh kmod.whitelist packagelist init
+$(top_builddir)/initramfs/fakeroot.log: make.sh kmod.whitelist packagelist
-mv $(INITRAMFSIMG) $(INITRAMFSIMG).bak
-mv $(VMLINUZ) $(VMLINUZ).bak
if ! bash make.sh; then rm -f $@; exit 1; fi
-$(INITRAMFSIMG): $(top_builddir)/initramfs/fakeroot.log $(top_builddir)/daemon/guestfsd update.sh
+$(INITRAMFSIMG): $(top_builddir)/initramfs/fakeroot.log $(top_builddir)/daemon/guestfsd init update.sh
rm -f $@
bash update.sh
touch $@
diff --git a/appliance/make.sh.in b/appliance/make.sh.in
index e98c3257..cf772e06 100755
--- a/appliance/make.sh.in
+++ b/appliance/make.sh.in
@@ -132,13 +132,6 @@ __EOF__
@FEBOOTSTRAP_INSTALL@ initramfs resolv.conf.new /etc/resolv.conf 0644 root.root
rm resolv.conf.new
- # Create the init script.
- @FEBOOTSTRAP_INSTALL@ initramfs appliance/init /init 0755 root.root
-
- # Just in case the kernel isn't looking for /init, make /sbin/init
- # be our script, not the real init.
- #@FEBOOTSTRAP_RUN@ initramfs -- ln -f /init /sbin/init
-
ls -lh $koutput
# Now directly run the update script to copy/update the daemon in the
diff --git a/appliance/update.sh.in b/appliance/update.sh.in
index 4fbd6517..01e22b60 100755
--- a/appliance/update.sh.in
+++ b/appliance/update.sh.in
@@ -16,8 +16,8 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-# Update the daemon inside an existing initramfs. Avoids the
-# timeconsuming rebuild.
+# Update the init script or daemon inside an existing initramfs.
+# Avoids the timeconsuming rebuild.
unset CDPATH
@@ -27,6 +27,9 @@ if [ "@DIST@" = "REDHAT" ]; then
cd @top_builddir@
output=appliance/initramfs.@REPO@.@host_cpu@.img
+ # Create the init script.
+ @FEBOOTSTRAP_INSTALL@ initramfs appliance/init /init 0755 root.root
+
# Copy the daemon into the filesystem.
@FEBOOTSTRAP_INSTALL@ initramfs daemon/guestfsd /sbin/guestfsd 0755 root.root