Changeset 7aaed09 in mainline for boot/Makefile.grub


Ignore:
Timestamp:
2011-12-18T14:02:30Z (12 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c868e2d
Parents:
3b71e84d (diff), 1761268 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge mainline changes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • boot/Makefile.grub

    r3b71e84d r7aaed09  
    3131include Makefile.common
    3232
    33 STAGE2 = grub/stage2_eltorito
    34 STAGE2_IN = boot/$(STAGE2)
     33GRUB = grub.$(GRUB_ARCH)
     34BOOT = $(DISTROOT)/boot
     35
     36ELTORITO = boot/grub/$(GRUB_ARCH).img
     37IMAGE = $(DISTROOT)/$(ELTORITO)
     38
     39ifeq ($(GRUB_ARCH),pc)
     40        BOOT_CONFIG = $(BOOT)/grub/i386-pc/grub.cfg
     41        MULTIBOOT_CMD = multiboot
     42        MODULE_CMD = module
     43endif
     44ifeq ($(GRUB_ARCH),efi)
     45        BOOT_CONFIG = $(BOOT)/grub/grub.cfg
     46        MULTIBOOT_CMD = multiboot2
     47        MODULE_CMD = module2
     48endif
    3549
    3650all: $(BOOT_OUTPUT)
    3751
    3852$(BOOT_OUTPUT): build_dist
    39         mkisofs -J -r -b $(STAGE2_IN) -no-emul-boot -boot-load-size 4 -boot-info-table -o $@ $(DISTROOT)/
     53ifeq ($(GRUB_ARCH),pc)
     54        mkisofs -J -r -input-charset utf-8 -V "HelenOS boot ISO" -eltorito-boot $(ELTORITO) -no-emul-boot -boot-load-size 64 -boot-info-table -o $@ $(DISTROOT)/
     55endif
     56ifeq ($(GRUB_ARCH),efi)
     57        mkisofs -J -r -input-charset utf-8 -V "HelenOS boot ISO" -efi-boot $(ELTORITO) -o $@ $(DISTROOT)/
     58endif
    4059
    4160build_dist: clean
    42         mkdir -p $(DISTROOT)/boot/grub
    43         cp $(STAGE2) $(DISTROOT)/boot/grub/
     61        mkdir -p $(BOOT)
     62        cp -r $(GRUB) $(BOOT)/grub
     63ifeq ($(GRUB_ARCH),efi)
     64        gunzip $(IMAGE)
     65endif
     66       
    4467        for module in $(COMPONENTS) ; do \
    45                 cp "$$module" $(DISTROOT)/boot/ ; \
     68                cp "$$module" $(BOOT)/ ; \
    4669        done
    4770       
    48         echo "default 0" > $(DISTROOT)/boot/grub/menu.lst
    49         echo "timeout 10" >> $(DISTROOT)/boot/grub/menu.lst
    50         echo "" >> $(DISTROOT)/boot/grub/menu.lst
    51         echo "title=HelenOS" >> $(DISTROOT)/boot/grub/menu.lst
    52         echo "  root (cd)" >> $(DISTROOT)/boot/grub/menu.lst
     71        echo "set default=0" > $(BOOT_CONFIG)
     72        echo "set timeout=10" >> $(BOOT_CONFIG)
     73        echo "" >> $(BOOT_CONFIG)
     74       
     75ifeq ($(GRUB_ARCH),pc)
     76        echo "insmod vbe" >> $(BOOT_CONFIG)
     77        echo "insmod vga" >> $(BOOT_CONFIG)
     78endif
     79ifeq ($(GRUB_ARCH),efi)
     80        echo "insmod efi_gop" >> $(BOOT_CONFIG)
     81        echo "insmod efi_uga" >> $(BOOT_CONFIG)
     82endif
     83        echo "" >> $(BOOT_CONFIG)
     84       
     85        echo "menuentry 'HelenOS $(RELEASE)' --class helenos --class os {" >> $(BOOT_CONFIG)
    5386        for module in $(MODULES) ; do \
     87                echo "  echo 'Loading $$module'" >> $(BOOT_CONFIG) ; \
    5488                if [ "$$module" = "kernel.bin" ] ; then \
    55                         echo "  kernel /boot/$$module" >> $(DISTROOT)/boot/grub/menu.lst ; \
     89                        echo "  $(MULTIBOOT_CMD) /boot/$$module" >> $(BOOT_CONFIG) ; \
    5690                else \
    57                         echo "  module /boot/$$module" >> $(DISTROOT)/boot/grub/menu.lst ; \
     91                        echo "  $(MODULE_CMD) /boot/$$module /boot/$$module" >> $(BOOT_CONFIG) ; \
    5892                fi \
    5993        done
     94        echo "}" >> $(BOOT_CONFIG)
    6095
    6196clean:
Note: See TracChangeset for help on using the changeset viewer.