cos2000v2/final/makefile

49 lines
1.5 KiB
Makefile

all: harddisk.img.final floppy.img.final harddiskuefi.img.final
harddiskuefi.img.before:
(xz -d -k harddiskuefi.img.xz)
(dd if=harddiskuefi.img of=harddiskuefi.img.part1 skip=13672 bs=512)
(dd if=harddiskuefi.img of=harddiskuefi.img.before count=13672 bs=512;sync)
(mkdir ./mnt -p)
harddiskuefi.img.final: harddiskuefi.img.before
(mount.fuse-ext2 -o rw+ harddiskuefi.img.part1 ./mnt)
(cp ../system/system.sys ./mnt/boot/;sync)
(fusermount ./mnt -u)
(cat harddiskuefi.img.before > harddiskuefi.img.final)
(cat harddiskuefi.img.part1 >> harddiskuefi.img.final;sync)
harddisk.img.before:
(xz -d -k harddisk.img.xz)
(dd if=harddisk.img of=harddisk.img.part1 skip=63 bs=512)
(dd if=harddisk.img of=harddisk.img.before count=63 bs=512;sync)
(mkdir ./mnt -p)
harddisk.img.final: harddisk.img.before
(mount.fuse-ext2 -o rw+ harddisk.img.part1 ./mnt)
(cp ../system/system.sys ./mnt/boot/;sync)
(fusermount ./mnt -u)
(cat harddisk.img.before > harddisk.img.final)
(cat harddisk.img.part1 >> harddisk.img.final;sync)
floppy.img.final:
(dd if=/dev/zero of=floppy.img.final count=2880 bs=512)
(mkfs.msdos -F 12 -n "COS2000" floppy.img.final)
(mkdir ./mnt -p)
(fusefat floppy.img.final ./mnt -o rw+)
(cp ../boot/loader.sys ./mnt/)
(cp ../system/system.sys ./mnt/;sync)
(fusermount ./mnt -u)
(dd if=../boot/boot12.bin of=floppy.img.final seek=0 count=1 conv=notrunc;sync)
littleclean:
rm -f *.final
togit: clean
clean:
rm -f *.before
rm -f *.part1
rm -f *.img
rm -f *.final