- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97-disk_geometry-1.patch
- ### WHICH ONE OF THESE PATCHES DO WE REALLY NEED? CAN WE DELETE ANY?
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/grub-0.97-path-patch
- cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/grub-0.97/use_ferror.diff
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/grub-R
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/bad-assert-sideeffect
- cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/grub-0.97/grub-gfxmenu-v8.diff
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/grub-0.97-devicemap.diff
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/grub-linux-setup-fix
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/fix-uninitialized
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/force-LBA-off.diff
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/grub-0.97-initrdaddr.diff
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/grub-0.97-protexec.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-0.97/grub-path-cfg.diff
-
- cd $(DIR_APP) && perl -pi -e 's,/usr/lib/grub/i386-pc,/usr/share/grub/i386-pc,' docs/grub.texi
-
- cd $(DIR_APP) && autoreconf --install --force
- cd $(DIR_APP) && CFLAGS="-0s -fno-stack-protector" \
- STAGE2_CFLAGS="-0s -fno-stack-protector" \
- ./configure --prefix=/usr
- cd $(DIR_APP) && make $(MAKETUNING)
- cd $(DIR_APP) && make install
-
- # grub files
- mkdir -vp /boot/grub
- cp -v /usr/lib/grub/i386-pc/stage{1,2} /boot/grub
- for i in $(DIR_SRC)/config/grub/*; do \
- [ -f $$i ] && cp -f $$i /boot/grub; \
- done
-
- install -m 0755 $(DIR_SRC)/src/install+setup/install/grubbatch /boot/grub
- /usr/sbin/grub-set-default 0
-
- @rm -rf $(DIR_APP)
+ @rm -rf $(DIR_APP) $(DIR_APP_EFI) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-2.02_disable_vga_fallback.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-2.02-xfs-accept-filesystem-with-sparse-inodes.patch
+
+ # Install unifont
+ cp -v $(DIR_DL)/unifont-7.0.03.pcf.gz $(DIR_APP)/unifont.pcf.gz
+
+ifeq "$(BUILD_EFI)" "1"
+ cp -r $(DIR_APP) $(DIR_APP_EFI)
+ cd $(DIR_APP_EFI) && ./configure $(CONFIGURE_ARGS) \
+ --with-platform=efi CFLAGS= LDFLAGS=
+ cd $(DIR_APP_EFI) && make $(MAKETUNING)
+ cd $(DIR_APP_EFI) && make install
+endif
+
+ifeq "$(BUILD_PC)" "1"
+ cp -r $(DIR_APP) $(DIR_APP_PC)
+ cd $(DIR_APP_PC) && ./configure $(CONFIGURE_ARGS) \
+ --with-platform=pc CFLAGS= LDFLAGS=
+ cd $(DIR_APP_PC) && make $(MAKETUNING)
+ cd $(DIR_APP_PC) && make install
+
+ # Install empty configuration file
+ -mkdir -pv /boot/grub
+ touch /boot/grub/grub.cfg
+endif
+
+ # Install background image
+ -mkdir -pv /boot/grub
+ install -m 644 $(DIR_SRC)/config/grub2/splash.png /boot/grub/splash.png
+
+ # Install default configuration
+ -mkdir -pv /etc/default
+ install -m 644 $(DIR_SRC)/config/grub2/default /etc/default/grub
+
+ @rm -rf $(DIR_APP) $(DIR_APP_PC) $(DIR_APP_EFI)