# libguestfs test images
-# Copyright (C) 2009 Red Hat Inc.
+# Copyright (C) 2009-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
lib-win32.dll \
lib-win64.dll \
lib-x86_64.so \
- test-grep.txt
+ test-grep.txt \
+ guest-aux/make-debian-img.sh \
+ guest-aux/debian-packages \
+ guest-aux/make-fedora-img.sh \
+ guest-aux/fedora-name.db.txt \
+ guest-aux/fedora-name.db \
+ guest-aux/make-ubuntu-img.sh \
+ guest-aux/make-windows-img.sh \
+ guest-aux/windows-software \
+ guest-aux/windows-software.reg \
+ guest-aux/windows-system \
+ guest-aux/windows-system.reg \
+ guest-aux/minimal-hive
noinst_DATA = test.iso
+# This is 'check_DATA' because we don't need it until 'make check'
+# time and we need the tools we have built in order to make it.
+check_DATA = debian.img fedora.img ubuntu.img windows.img
+
CLEANFILES = \
test.iso test.sqsh \
100kallzeroes 100kallnewlines 100kallspaces 100krandom 10klines \
- initrd
+ initrd $(check_DATA)
images_files_src = \
$(srcdir)/helloworld.tar \
test.iso: $(images_files)
rm -f $@ $@-t
mkdir -p directory
- $(MKISOFS) -J -r -graft-points \
+ $(GENISOIMAGE) -J -r -graft-points \
-o $@-t \
$(images_files) /directory=directory
rmdir directory
rm -f $@ $@-t
gzip --best -c $< > $@-t
mv $@-t $@
+
+# Make a (dummy) Fedora image.
+fedora.img: guest-aux/make-fedora-img.sh guest-aux/fedora-name.db
+ LIBGUESTFS_PATH=../appliance \
+ LD_LIBRARY_PATH=../src/.libs \
+ bash $<
+
+guest-aux/fedora-name.db: guest-aux/fedora-name.db.txt
+ $(DB_LOAD) $@ < $<
+
+# Make a (dummy) Debian image.
+debian.img: guest-aux/make-debian-img.sh
+ LIBGUESTFS_PATH=../appliance \
+ LD_LIBRARY_PATH=../src/.libs \
+ bash $<
+
+# Make a (dummy) Ubuntu image.
+ubuntu.img: guest-aux/make-ubuntu-img.sh
+ LIBGUESTFS_PATH=../appliance \
+ LD_LIBRARY_PATH=../src/.libs \
+ bash $<
+
+# Make a (dummy) Windows image.
+windows.img: guest-aux/make-windows-img.sh \
+ guest-aux/windows-software guest-aux/windows-system
+ LIBGUESTFS_PATH=../appliance \
+ LD_LIBRARY_PATH=../src/.libs \
+ bash $<
+
+# Since users might not have the tools needed to create this, we
+# also distribute these files.
+guest-aux/windows-software: guest-aux/windows-software.reg
+ rm -f $@ $@-t
+ cp guest-aux/minimal-hive $@-t
+ hivexregedit --merge $@-t --prefix 'HKEY_LOCAL_MACHINE\SOFTWARE' $<
+ mv $@-t $@
+
+guest-aux/windows-system: guest-aux/windows-system.reg
+ rm -f $@ $@-t
+ cp guest-aux/minimal-hive $@-t
+ hivexregedit --merge $@-t --prefix 'HKEY_LOCAL_MACHINE\SYSTEM' $<
+ mv $@-t $@