grub: Add unifont.pf2.
authorStefan Schantl <stefan.schantl@ipfire.org>
Thu, 4 Sep 2014 16:00:02 +0000 (18:00 +0200)
committerStefan Schantl <stefan.schantl@ipfire.org>
Thu, 4 Sep 2014 16:00:02 +0000 (18:00 +0200)
We directly generate a grub2 compatible font file
from the main unifont font file, by using grub-mkfont.

This binary requires fontconfig as build dependency, so I moved it in
the build hirachy before the grub package.

config/rootfiles/common/i586/grub
lfs/grub
make.sh

index 5330144..bdb18eb 100644 (file)
@@ -1,5 +1,6 @@
 #boot/grub
 boot/grub/grub.cfg
+boot/grub/unifont.pf2
 #etc/bash_completion.d
 #etc/bash_completion.d/grub
 etc/default/grub
@@ -16,6 +17,7 @@ usr/bin/grub-editenv
 usr/bin/grub-fstest
 usr/bin/grub-kbdcomp
 usr/bin/grub-menulst2cfg
+usr/bin/grub-mkfont
 usr/bin/grub-mkimage
 usr/bin/grub-mklayout
 usr/bin/grub-mkpasswd-pbkdf2
index 23f6dd3..d04036a 100644 (file)
--- a/lfs/grub
+++ b/lfs/grub
@@ -40,11 +40,14 @@ CXXFLAGS   =
 # Top-level Rules
 ###############################################################################
 
-objects = $(DL_FILE)
+objects = $(DL_FILE) \
+       unifont-7.0.03.pcf.gz
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+unifont-7.0.03.pcf.gz = $(DL_FROM)/unifont-7.0.03.pcf.gz
 
 $(DL_FILE)_MD5 = a1043102fbc7bcedbf53e7ee3d17ab91
+unifont-7.0.03.pcf.gz_MD5 = f6903ac8c1caeeb30c1e9a2975028401
 
 install : $(TARGET)
 
@@ -96,5 +99,12 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        # Disable hardening.
        paxctl -mpes /usr/sbin/grub-bios-setup /usr/sbin/grub-probe
 
+       # We don't need to install unifont just to generate a grub2 compatible
+       # font archive for the graphical boot menu. The following command only
+       # converts Latin-1, Latin Extended A+B, Arrows, Box and Block characters.
+       /usr/bin/grub-mkfont --output /boot/grub/unifont.pf2 \
+               --range=0x0000-0x0241,0x2190-0x21FF,0x2500-0x259f \
+               $(DIR_DL)/unifont-7.0.03.pcf.gz
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
diff --git a/make.sh b/make.sh
index 7b75b87..8a2ecc6 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -401,6 +401,7 @@ buildipfire() {
   ipfiremake dracut
   ipfiremake lvm2
   ipfiremake multipath-tools
+  ipfiremake freetype
   ipfiremake grub
 
   case "${TARGET_ARCH}" in
@@ -488,7 +489,6 @@ buildipfire() {
   ipfiremake libpng
   ipfiremake libtiff
   ipfiremake libart
-  ipfiremake freetype
   ipfiremake gd
   ipfiremake popt
   ipfiremake pcre