.PHONY:	clean install

STATIC_LVM?=/sbin/lvm.static

finitrd:	init $(STATIC_LVM)
	@dd if=/dev/zero of=finitrd.tmp bs=4M count=1
	@/sbin/mkfs.ext4 -F finitrd.tmp
	@/sbin/tune2fs -c 0 -m 0 finitrd.tmp
	@mkdir 1
	@echo
	@echo Type in your root password
	@su -c "mount -o loop finitrd.tmp 1 && \
		rmdir 1/lost+found && \
		mkdir -p 1/dev 1/proc 1/sys 1/root 1/sbin && \
		cp init 1/sbin/init && \
		cp $(STATIC_LVM) 1/sbin/lvm && \
		mknod -m 0600 1/dev/console c 5 1 && \
		mknod -m 0600 1/dev/sda b 8 0 && \
		mknod -m 0600 1/dev/sda1 b 8 1 && \
		mknod -m 0600 1/dev/sda2 b 8 2 && \
		mknod -m 0600 1/dev/sda3 b 8 3 && \
		mknod -m 0600 1/dev/sda4 b 8 4 && \
		mknod -m 0600 1/dev/sdb b 8 16 && \
		mknod -m 0600 1/dev/sdb1 b 8 17 && \
		mknod -m 0600 1/dev/sdb2 b 8 18 && \
		mknod -m 0600 1/dev/sdb3 b 8 19 && \
		mknod -m 0600 1/dev/sdb4 b 8 20 && \
		mknod -m 0600 1/dev/sdc b 8 32 && \
		mknod -m 0600 1/dev/sdc1 b 8 33 && \
		mknod -m 0600 1/dev/sdc2 b 8 34 && \
		mknod -m 0600 1/dev/sdc3 b 8 35 && \
		mknod -m 0600 1/dev/sdc4 b 8 36 && \
		mknod -m 0600 1/dev/sdd b 8 48 && \
		mknod -m 0600 1/dev/sdd1 b 8 49 && \
		mknod -m 0600 1/dev/sdd2 b 8 50 && \
		mknod -m 0600 1/dev/sdd3 b 8 51 && \
		mknod -m 0600 1/dev/sdd4 b 8 52 && \
		mknod -m 0644 1/dev/urandom c 1 9 && \
		echo && \
		echo Ramdisk contains: && \
		ls -Ra 1 && \
		echo && \
		echo Size of ramdisk: && \
		du -h 1 && \
		df -h 1 && \
		umount 1"
	@rmdir 1
	@mv finitrd.tmp finitrd
	@echo
	@echo Now type 'make install'.

init:	init.c
	gcc -static -W -Wall -O2 -pipe -s -o init init.c

install:	finitrd
	@echo
	@echo Type in your root password
	@su -c "cp -i finitrd /boot/"

clean:	
	rm -rf 1 finitrd finitrd.tmp init
