create virtual appliances based on gentoo linux
Go to file
Albert Hopkins e89d24ccfe I learned a lot about Makefiles :D
So, basically I re-architeched things a bit:

The appliance/Makefile.inc fiels are now appliance/Makefile (again). The
main Makefile will call "make -C appliance preinstall" and "postinstall"
(and in future "clean").  So I got rid of the ugly make variables/include
thing.  Some of the main Makefile's variables are exported to the
sub-makes.  Appliances don't really need $(APPLIANCE) anymore as the
appliance directory is their CWD.

Added some new targets and smarter targets.  I can do more with this, but
it's a big improvment from last time.  Still learning a lot of Makefile
magic (been reading other people's Makefiles).

Verified that "make -j3" works (at least on the base appliance) but will
kill your hard drive :D

Introduced "profiles"  Which are files with variables you want to override.
The file will be "include"ed by the main Makefile.  For example, I have a
file, "local.cfg" that looks like this:

--- 8< -----------------------------
CHROOT = /var/scratch/marduk/vabuild
HEADLESS = YES
PRUNE_CRITICAL = NO
VIRTIO = YES
TIMEZONE = EST5EDT
DISK_SIZE = 60.0G
SWAP_SIZE = 48
PKGDIR = /var/scratch/packages
NBD_DEV = /dev/nbd8

all: qcow
--- 8< ------------------------------

Then, e.g. i can run "make PROFILE=local APPLIANCE=kde".  If you don't
specify a PROFILE variable, then it will default to the empty string, which
means the main Makefile will attempt to include .cfg

So, for example i have:

   $ ln -s local.cfg .cfg
   $ make APPLIANCE=kde

Don't set PROFILE inside your .cfg file (why would you?).  Also, if the
[pro]file does not exist, the include fails silently.

I will put this info in the wiki eventually...
2010-11-13 18:22:18 -05:00
base I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
gnome I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
kde I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
lodgeit I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
teamplayer I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
x I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
xfce I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
.hgignore I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
Makefile I learned a lot about Makefiles :D 2010-11-13 18:22:18 -05:00
etc-update.conf Initial commit 2010-07-08 23:22:37 -04:00
fstab Switch from ext4 to ext2 as an experiment 2010-11-05 08:59:18 -04:00
grub-headless.sed * Add ACCEPT_KEYWORDS Makefile option 2010-09-18 02:43:14 -04:00
grub.conf Initial commit 2010-07-08 23:22:37 -04:00
grub.shell Initial commit 2010-07-08 23:22:37 -04:00
issue Initial commit 2010-07-08 23:22:37 -04:00
kernel.config Add power management to kernel config. Add acpid to VM installation. 2010-07-31 20:16:35 -04:00
locale.gen Initial commit 2010-07-08 23:22:37 -04:00
make.conf make.conf: Added ALSA_PCM_PLUGINS="*" (even though the default kernel 2010-11-10 14:44:05 -05:00
rsync-excludes * Use rsync --exclude-from instead of copying and removing 2010-11-05 01:53:07 -04:00
rsync-excludes-critical * Use rsync --exclude-from instead of copying and removing 2010-11-05 01:53:07 -04:00