appliance: Put /init in a separate supermin appliance component.
[libguestfs.git] / appliance / Makefile.am
index 2df8a2b..dec1c15 100644 (file)
@@ -43,17 +43,18 @@ fs_DATA += kmod.whitelist
 superminfs_DATA = \
        supermin.d/base.img \
        supermin.d/daemon.img \
+       supermin.d/init.img \
        supermin.d/hostfiles
 endif
 
 # Don't change these names - they must be the same as in '*.sh' scripts.
-INITRAMFSIMG = initramfs.$(REPO).$(host_cpu).img
-VMLINUZ = vmlinuz.$(REPO).$(host_cpu)
+INITRAMFSIMG = initramfs.$(host_cpu).img
+VMLINUZ = vmlinuz.$(host_cpu)
 
 # This is for building the normal appliance:
 $(INITRAMFSIMG) $(VMLINUZ): $(top_builddir)/initramfs/fakeroot.log
 
-$(top_builddir)/initramfs/fakeroot.log: make.sh kmod.whitelist packagelist $(top_builddir)/daemon/guestfsd
+$(top_builddir)/initramfs/fakeroot.log: make.sh kmod.whitelist packagelist
        mv $(INITRAMFSIMG) $(INITRAMFSIMG).bak 2>/dev/null; :
        mv $(VMLINUZ) $(VMLINUZ).bak 2>/dev/null; :
        if ! bash make.sh; then rm -f $@; exit 1; fi
@@ -101,6 +102,14 @@ supermin.d/daemon.img: $(INITRAMFSIMG)
        (cd $(top_builddir)/initramfs && \
          echo -e "sbin\nsbin/guestfsd" | cpio --quiet -o -H newc ) > $@-t
        mv $@-t $@
+
+supermin.d/init.img: $(INITRAMFSIMG)
+       mkdir -p supermin.d
+       rm -f $@ $@-t
+       (cd $(top_builddir)/initramfs && \
+         echo -e "init\n" | cpio --quiet -o -H newc ) > $@-t
+       mv $@-t $@
+
 endif
 
 # Extra symlinks needed by the Debian appliance.
@@ -119,37 +128,6 @@ stamp-debirf-modules:
        done
        touch $@
 
-#----------------------------------------------------------------------
-# Extra rules for testing the appliance.
-
-# Test-boot the appliance.
-
-test-boot: emptydisk
-       qemu-system-$(host_cpu) \
-         -m 384 \
-         -kernel $(VMLINUZ) -initrd $(INITRAMFSIMG) \
-         -hda emptydisk
-
-emptydisk:
-       rm -f emptydisk
-       dd if=/dev/zero of=emptydisk bs=1024 count=1440
-       echo 0, | sfdisk -q -C 80 -H 2 -S 18 emptydisk > /dev/null
-
-# This is a more realistic test boot command line which better
-# reflects what the library does.
-
-test-boot-realistic: emptydisk
-       qemu-system-$(host_cpu) \
-         -m 384 \
-         -kernel $(VMLINUZ) -initrd $(INITRAMFSIMG) \
-         -hda emptydisk \
-         -append "console=ttyS0 guestfs=10.0.2.4:6666 guestfs_rescue=1" \
-         -nographic \
-         -serial stdio \
-         -net channel,6666:unix:/tmp/sock,server,nowait \
-         -net user,vlan=0 \
-         -net nic,model=virtio,vlan=0
-
 # Make clean.
 
 CLEANFILES = packagelist kmod.whitelist