Committed. On Fri, Jul 04, 2008 at 03:55:01PM +0200, Robert Millan wrote: > > This makes update-grub avoid expensive load of complete font files > and instead rely on ascii.pff when it is available. In qemu, it brings > startup time roughly from 25s to 1s. > > -- > Robert Millan > > <GPLv2> I know my rights; I want my phone call! > <DRM> What good is a phone call… if you are unable to speak? > (as seen on /.)
> 2008-07-04 Robert Millan <[EMAIL PROTECTED]> > > * Makefile.in (UNICODE_ARROWS, UNICODE_LINES): New variables (they > define the codes for arrows and lines used for the menu). > (ascii.pff): Generate fonts for $(UNICODE_ARROWS) and $(UNICODE_LINES) > as well. > > * util/update-grub_lib.in (font_path): Prefer ascii.pff over complete > fonts, because the latter are too slow. > > Index: Makefile.in > =================================================================== > --- Makefile.in (revision 1691) > +++ Makefile.in (working copy) > @@ -142,11 +142,16 @@ > ifeq (, $(UNIFONT_HEX)) > else > pkgdata_DATA += unicode.pff ascii.pff > + > +# Arrows and lines are needed to draw the menu, so we always include them > +UNICODE_ARROWS=0x2190-0x2193 > +UNICODE_LINES=0x2501-0x251B > + > unicode.pff: $(UNIFONT_HEX) > ruby $(srcdir)/util/unifont2pff.rb $(UNIFONT_HEX) > $@ > > ascii.pff: $(UNIFONT_HEX) > - ruby $(srcdir)/util/unifont2pff.rb 0-127 $(UNIFONT_HEX) > $@ > + ruby $(srcdir)/util/unifont2pff.rb 0x0-0x7f $(UNICODE_ARROWS) > $(UNICODE_LINES) $(UNIFONT_HEX) > $@ > endif > > all-local: $(PROGRAMS) $(PKGLIB) $(PKGDATA) $(SCRIPTS) $(MKFILES) > Index: util/update-grub_lib.in > =================================================================== > --- util/update-grub_lib.in (revision 1691) > +++ util/update-grub_lib.in (working copy) > @@ -131,8 +131,9 @@ > font_path () > { > for dir in ${pkgdatadir} /boot/grub /usr/share/grub ; do > - # Prefer complete fonts over incomplete ones. > - for basename in unicode unifont ascii ; do > + # FIXME: We prefer ascii because loading complete fonts is too slow (and > + # we don't yet provide the gettext magic that would make unicode useful). > + for basename in ascii unicode unifont ; do > path="${dir}/${basename}.pff" > if is_path_readable_by_grub ${path} > /dev/null ; then > echo "${path}" > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What good is a phone call… if you are unable to speak? (as seen on /.) _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel