minix/drivers/ramdisk/Makefile
Erik van der Kouwe b43f3b6bfc This patch copies the ext2 server onto the initial ramdisk, the final
patch to allow MINIX to boot from ext2.

To create a setup with MINIX on ext2, follow these steps:

- Assumptions:
  - there exists a primary partition c0dApB with a MINIX installation
    with GRUB support (/boot/image_latest exists on /dev/c0dApB)
  - there exists a free primary partition c0dCpD

- Create an ext2 filesystem on c0dApB (from Linux, until Tthom
  has ported mke2fs)

- Follow these steps (from a MINIX CD with ext2 support, another MINIX
  installation (not c0dApB) or Linux >= 2.6.35):

  mkdir /mnt/mfs /mnt/ext2
  mount /dev/c0dApBs0 /mnt/mfs
  mount /dev/c0dApBs1 /mnt/mfs/home
  mount /dev/c0dApBs2 /mnt/mfs/usr
  mount /dev/c0dCpD /mnt/ext2
  synctree  -f /mnt/mfs /mnt/ext2
  echo root=/dev/c0dCpD > /mnt/ext2/etc/fstab

  (note: no subpartitions used because that would confuse an unmodified
  bootloader)

- Add the new MINIX installation to GRUB according to steps 7&8 in
  http://wiki.minix3.org/en/SummerOfCode2010/MultiBoot/HowTo
2010-08-04 05:18:03 +00:00

124 lines
2.6 KiB
Makefile

# Makefile for ramdisk image
PROGRAMS=at_wini bios_wini cdprobe dev2name floppy loadramdisk mount newroot \
pci sh service sysenv mfs ext2
EXTRA=system.conf passwd rs.single
CPPFLAGS+= -I${MINIXSRCDIR}/servers -I${MINIXSRCDIR}
MAKEDEV=/usr/bin/MAKEDEV
install: all
all: image.c
clean:
rm -rf $(PROGRAMS) $(EXTRA) bintoc image image.c t proto.gen
image.c: bintoc image
./bintoc -o $@ image
# Note for cross compilation: this executable has to be compiled for the
# host system
bintoc: bintoc.c
$(CC) -o $@ bintoc.c
image: proto.gen mtab rc $(PROGRAMS) $(EXTRA)
mkfs image proto.gen || { rm -f image; false; }
at_wini: ../at_wini/at_wini
install -s ../$@/$@ $@
../at_wini/at_wini:
$(MAKE) -C ../at_wini
bios_wini: ../bios_wini/bios_wini
install -s ../$@/$@ $@
../bios_wini/bios_wini:
$(MAKE) -C ../bios_wini
floppy: ../floppy/floppy
install -s ../$@/$@ $@
../floppy/floppy:
$(MAKE) -C ../floppy
pci: ../pci/pci
install -s ../$@/$@ $@
../pci/pci:
$(MAKE) -C ../pci
cdprobe: ../../commands/cdprobe/cdprobe
install -s ../../commands/$@/$@ $@
../../commands/cdprobe:
$(MAKE) -C ../../commands/cdprobe
dev2name: ../../commands/dev2name/dev2name
install -s ../../commands/$@/$@ $@
../../commands/dev2name/dev2name:
$(MAKE) -C ../../commands/dev2name
loadramdisk: ../../commands/loadramdisk/loadramdisk
install -s ../../commands/$@/$@ $@
../../commands/loadramdisk/loadramdisk:
$(MAKE) -C ../../commands/loadramdisk
mount: ../../commands/mount/mount
install -s ../../commands/$@/$@ $@
../../commands/mount/mount:
$(MAKE) -C ../../commands/mount
newroot: ../../commands/newroot/newroot.sh
install -s ../../commands/$@/$@.sh $@
../../commands/newroot/newroot:
$(MAKE) -C ../../commands/newroot
sysenv: ../../commands/sysenv/sysenv
install -s ../../commands/$@/$@ $@
../../commands/sysenv:
$(MAKE) -C ../../commands/sysenv
sh: ../../commands/ash/sh
install -s ../../commands/ash/$@ $@
../../commands/ash/sh:
$(MAKE) -C ../../commands/ash sh
service: ../../commands/service/service
install -s ../../commands/service/$@ $@
../../commands/service:
$(MAKE) -C ../../commands/service
mfs: ../../servers/mfs/mfs
install -s ../../servers/mfs/$@ $@
../../servers/mfs/mfs:
$(MAKE) -C ../../servers/mfs
ext2: ../../servers/ext2/ext2
install -s ../../servers/ext2/$@ $@
../../servers/ext2/ext2:
$(MAKE) -C ../../servers/ext2
system.conf: ../../etc/system.conf
install -s ../../etc/$@ $@
passwd: ../../etc/passwd
install -s ../../etc/$@ $@
rs.single: ../../etc/rs.single
install -s ../../etc/$@ $@
proto.gen: $(MAKEDEV) proto.sh proto
sh -e proto.sh >proto.gen
.include <bsd.prog.mk>