diff --git a/MCONFIG b/MCONFIG index ed7056d..998646f 100644 --- a/MCONFIG +++ b/MCONFIG @@ -54,6 +54,7 @@ GZIPPROG = gzip PNGTOPNM = pngtopnm MCOPY = mcopy MFORMAT = mformat +MKISOFS = mkisofs com32 = $(topdir)/com32 diff --git a/com32/hdt/Makefile b/com32/hdt/Makefile index 945ffd5..03f6a14 100644 --- a/com32/hdt/Makefile +++ b/com32/hdt/Makefile @@ -31,7 +31,9 @@ KERNEL_VERSION ?= $(shell uname -r) MODULES_ALIAS_FILE ?= /lib/modules/$(KERNEL_VERSION)/modules.alias MODULES_PCIMAP_FILE ?= /lib/modules/$(KERNEL_VERSION)/modules.pcimap PCI_IDS_FILE ?= $(PWD)/floppy/pci.ids -ISO_DIR ?= iso/isolinux +ISO_DIR ?= iso +ISOLINUX_DIR ?= isolinux +FLOPPY_DIR ?= floppy all: $(MODULES) $(TESTFILES) @@ -40,31 +42,31 @@ hdt.elf : $(OBJS) $(LIBS) $(C_LIBS) hdt.img: hdt.c32 floppy/hdt.cfg floppy/mtools.conf $(topdir)/mtools/syslinux rm -f hdt.img - MTOOLSRC=$(PWD)/floppy/mtools.conf $(MFORMAT) -v HDT -f 2880 -C a: + MTOOLSRC=$(PWD)/$(FLOPPY_DIR)/mtools.conf $(MFORMAT) -v HDT -f 2880 -C a: $(topdir)/mtools/syslinux hdt.img -[ ! -f $(PCI_IDS_FILE) ] && cp /usr/share/hwdata/pci.ids $(PCI_IDS_FILE) -[ ! -f $(PCI_IDS_FILE) ] && cp /usr/share/pci.ids $(PCI_IDS_FILE) - -[ -f $(MODULES_ALIAS_FILE) ] && MTOOLSRC=$(PWD)/floppy/mtools.conf $(MCOPY) $(MODULES_ALIAS_FILE) a: - -[ -f $(MODULES_PCIMAP_FILE) ] && MTOOLSRC=$(PWD)/floppy/mtools.conf $(MCOPY) $(MODULES_PCIMAP_FILE) a: - MTOOLSRC=$(PWD)/floppy/mtools.conf $(MCOPY) hdt.c32 a: - @ [ -f $(PCI_IDS_FILE) ] && MTOOLSRC=$(PWD)/floppy/mtools.conf $(MCOPY) $(PCI_IDS_FILE) a: || printf "\nThe floppy/pci.ids file is missing and can be downloaded from http://pciids.sourceforge.net and put in\nthe ./com32/hdt/floppy directory of the extracted Syslinux source.\n\n" - MTOOLSRC=$(PWD)/floppy/mtools.conf $(MCOPY) floppy/hdt.cfg a:syslinux.cfg + -[ -f $(MODULES_ALIAS_FILE) ] && MTOOLSRC=$(PWD)/$(FLOPPY_DIR)/mtools.conf $(MCOPY) $(MODULES_ALIAS_FILE) a: + -[ -f $(MODULES_PCIMAP_FILE) ] && MTOOLSRC=$(PWD)/$(FLOPPY_DIR)/mtools.conf $(MCOPY) $(MODULES_PCIMAP_FILE) a: + MTOOLSRC=$(PWD)/$(FLOPPY_DIR)/mtools.conf $(MCOPY) hdt.c32 a: + @ [ -f $(PCI_IDS_FILE) ] && MTOOLSRC=$(PWD)/$(FLOPPY_DIR)/mtools.conf $(MCOPY) $(PCI_IDS_FILE) a: || printf "\nThe $(FLOPPY_DIR)/pci.ids file is missing and can be downloaded from http://pciids.sourceforge.net and put in\nthe ./com32/hdt/$(FLOPPY_DIR) directory of the extracted Syslinux source.\n\n" + MTOOLSRC=$(PWD)/$(FLOPPY_DIR)/mtools.conf $(MCOPY) $(FLOPPY_DIR)/hdt.cfg a:syslinux.cfg hdt.iso: hdt.c32 $(topdir)/core/isolinux.bin floppy/hdt.cfg rm -rf $(ISO_DIR) - rm -rf hdt.iso - mkdir -p $(ISO_DIR) - cp $(topdir)/core/isolinux.bin $(ISO_DIR) - cp floppy/hdt.cfg $(ISO_DIR)/isolinux.cfg - cp hdt.c32 $(ISO_DIR) - -[ ! -f $(PCI_IDS_FILE) ] && cp /usr/share/hwdata/pci.ids $(ISO_DIR) - -[ ! -f $(PCI_IDS_FILE) ] && cp /usr/share/pci.ids $(ISO_DIR) - -[ -f $(MODULES_ALIAS_FILE) ] && cp $(MODULES_ALIAS_FILE) $(ISO_DIR) - -[ -f $(MODULES_PCIMAP_FILE) ] && cp $(MODULES_PCIMAP_FILE) $(ISO_DIR) - -[ ! -f $(ISO_DIR)/pci.ids ] && printf "\nThe floppy/pci.ids file is missing and can be downloaded from http://pciids.sourceforge.net and put in\nthe ./com32/hdt/floppy directory of the extracted Syslinux source.\n\n" - mkisofs -o hdt.iso -b isolinux/isolinux.bin -c isolinux/boot.cat \ + rm -f hdt.iso + mkdir -p $(ISO_DIR)/isolinux + cp $(topdir)/core/isolinux.bin $(ISO_DIR)/$(ISOLINUX_DIR) + cp $(FLOPPY_DIR)/hdt.cfg $(ISO_DIR)/$(ISOLINUX_DIR)/isolinux.cfg + cp hdt.c32 $(ISO_DIR)/$(ISOLINUX_DIR) + -[ ! -f $(PCI_IDS_FILE) ] && cp /usr/share/hwdata/pci.ids $(ISO_DIR)/$(ISOLINUX_DIR) + -[ ! -f $(PCI_IDS_FILE) ] && cp /usr/share/pci.ids $(ISO_DIR)/$(ISOLINUX_DIR) + -[ -f $(MODULES_ALIAS_FILE) ] && cp $(MODULES_ALIAS_FILE) $(ISO_DIR)/$(ISOLINUX_DIR) + -[ -f $(MODULES_PCIMAP_FILE) ] && cp $(MODULES_PCIMAP_FILE) $(ISO_DIR)/$(ISOLINUX_DIR) + -[ ! -f $(ISO_DIR)/$(ISOLINUX_DIR)/pci.ids ] && printf "\nThe floppy/pci.ids file is missing and can be downloaded from http://pciids.sourceforge.net and put in\nthe ./com32/hdt/$(FLOPPY_DIR) directory of the extracted Syslinux source.\n\n" + $(MKISOFS) -o hdt.iso -b $(ISOLINUX_DIR)/isolinux.bin -c $(ISOLINUX_DIR)/boot.cat \ -no-emul-boot -boot-load-size 4 -boot-info-table \ - iso/ + $(ISO_DIR) tidy dist: rm -f *.o *.lo *.a *.lst *.elf .*.d *.tmp @@ -74,6 +76,7 @@ clean: tidy spotless: clean rm -f *.lss *.c32 *.com hdt.img hdt.iso + rm -rf $(ISO_DIR) rm -f *~ \#* install: