Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • boot/arch/amd64/Makefile.inc

    rfa9616b4 r04c7003f  
    2727#
    2828
    29 PAGE_SIZE = 4096
     29include Makefile.common
    3030
    31 RD_SRVS_ESSENTIAL += \
    32         $(USPACE_PATH)/srv/hw/char/i8042/i8042
     31RD_SRVS += \
     32        $(USPACEDIR)/srv/dd/dd \
     33        $(USPACEDIR)/srv/bd/ata_bd/ata_bd \
     34        $(USPACEDIR)/srv/hw/char/i8042/i8042 \
     35#       $(USPACEDIR)/srv/hw/bus/pci/pci \
     36        $(USPACEDIR)/srv/hid/char_mouse/char_ms
    3337
    34 RD_SRVS_NON_ESSENTIAL += \
    35         $(USPACE_PATH)/srv/bd/ata_bd/ata_bd \
    36         $(USPACE_PATH)/srv/hw/bus/pci/pci \
    37         $(USPACE_PATH)/srv/hid/char_mouse/char_ms
     38RD_DRVS = \
     39        root \
     40        rootia32 \
     41        pciintel \
     42        isa \
     43        ns8250
    3844
    39 BOOT_OUTPUT = $(ROOT_PATH)/image.iso
    40 PREBUILD = $(INITRD).img
    41 BUILD = Makefile.grub
     45RD_DRV_CONF = \
     46        isa/isa.dev
     47
     48MODULES := $(notdir $(COMPONENTS))
     49
     50build: $(BASE)/image.iso
     51
     52$(BASE)/image.iso: arch/$(BARCH)/grub/stage2_eltorito $(KERNELDIR)/kernel.bin $(INIT_TASKS) $(RD_SRVS) $(RD_APPS)
     53        mkdir -p $(TMP)/boot/grub
     54        cp arch/$(BARCH)/grub/stage2_eltorito $(TMP)/boot/grub/
     55       
     56        echo "default 0" > $(TMP)/boot/grub/menu.lst
     57        echo "timeout 10" >> $(TMP)/boot/grub/menu.lst
     58        echo "" >> $(TMP)/boot/grub/menu.lst
     59        echo "title=HelenOS" >> $(TMP)/boot/grub/menu.lst
     60        echo "  root (cd)" >> $(TMP)/boot/grub/menu.lst
     61        for module in $(MODULES) $(INITRD).img ; do \
     62                if [ $$module = kernel.bin ] ; then \
     63                        echo "  kernel /boot/$$module" >> $(TMP)/boot/grub/menu.lst ; \
     64                else \
     65                        echo "  module /boot/$$module" >> $(TMP)/boot/grub/menu.lst ; \
     66                fi \
     67        done
     68       
     69        cp $(KERNELDIR)/kernel.bin $(TMP)/boot/
     70        for task in $(INIT_TASKS) ; do \
     71                cp $$task $(TMP)/boot/ ; \
     72        done
     73        for file in $(RD_SRVS) ; do \
     74                cp $$file $(USPACEDIR)/dist/srv/ ; \
     75        done
     76        for driver in $(RD_DRVS); do \
     77                mkdir -p $(USPACEDIR)/dist/srv/drivers/$$driver ; \
     78                cp $(USPACEDIR)/srv/drivers/$$driver/$$driver.ma $(USPACEDIR)/dist/srv/drivers/$$driver/ ; \
     79                cp $(USPACEDIR)/srv/drivers/$$driver/$$driver $(USPACEDIR)/dist/srv/drivers/$$driver/ ; \
     80        done
     81        for drv_conf in $(RD_DRV_CONF); do \
     82                cp $(USPACEDIR)/srv/drivers/$$drv_conf $(USPACEDIR)/dist/srv/drivers/$$drv_conf ; \
     83        done
     84        for file in $(RD_APPS) ; do \
     85                cp $$file $(USPACEDIR)/dist/app/ ; \
     86        done
     87       
     88ifeq ($(RDFMT),tmpfs)
     89        $(BASE)/tools/mktmpfs.py $(USPACEDIR)/dist/ $(TMP)/boot/$(INITRD).fs
     90endif
     91ifeq ($(RDFMT),fat)
     92        $(BASE)/tools/mkfat.py $(USPACEDIR)/dist/ $(TMP)/boot/$(INITRD).fs
     93endif
     94        $(BASE)/tools/mkhord.py 4096 $(TMP)/boot/$(INITRD).fs $(TMP)/boot/$(INITRD).img
     95        rm $(TMP)/boot/$(INITRD).fs
     96        mkisofs -J -r -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o $@ $(TMP)/
     97
     98clean:
     99        for file in $(RD_SRVS) ; do \
     100                rm -f $(USPACEDIR)/dist/srv/`basename $$file` ; \
     101        done
     102        for drv_conf in $(RD_DRV_CONF) ; do \
     103                rm -r $(USPACEDIR)/dist/srv/drivers/$$drv_conf ; \
     104        done
     105        for driver in $(RD_DRVS) ; do \
     106                rm -r $(USPACEDIR)/dist/srv/drivers/$$driver ; \
     107        done
     108        for file in $(RD_APPS) ; do \
     109                rm -f $(USPACEDIR)/dist/app/`basename $$file` ; \
     110        done
     111        rm -fr $(TMP)
     112        rm -f $(BASE)/image.iso
Note: See TracChangeset for help on using the changeset viewer.