From: Steve Kenton <skenton@ou.edu>
To: buildroot@busybox.net
Subject: [Buildroot] Fwd: Re: Grub2 and Splash
Date: Wed, 18 Feb 2015 12:15:04 -0600 [thread overview]
Message-ID: <54E4D6A8.7020200@ou.edu> (raw)
In-Reply-To: <54E4CF63.20504@ou.edu>
Forgot to copy the list
-------- Forwarded Message --------
Subject: Re: [Buildroot] Grub2 and Splash
Date: Wed, 18 Feb 2015 11:44:03 -0600
From: Steve Kenton <skenton@ou.edu>
To: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
On 02/18/2015 10:38 AM, Thomas Petazzoni wrote:
> Dear Steve Kenton,
>
> On Wed, 18 Feb 2015 10:30:10 -0600, Steve Kenton wrote:
>
>> Looking into adding a splash screen to my grub2 menu.
>> Cobbled together the one below using font from my build host and it works.
>> Trying to build unicode.pf2 with buildroot immediately ran into snag with freetype.
>
> Could you please be more specific than "ran into snag" ? Which error
> messages and issues, when trying what exactly ?
Changed ~/buildroot-2015.02-rc2/boot/grub2/grub2.mk to enable grub-mkfont and added dependency
on freetype after first failure for missing freetype include
GRUB2_CONF_OPTS = \
--target=$(GRUB2_TARGET) \
--with-platform=$(GRUB2_PLATFORM) \
--enable-grub-mkfont \
--enable-efiemu=no \
--enable-liblzma=no \
--enable-device-mapper=no \
--enable-libzfs=no \
--disable-werror
GRUB2_DEPENDENCIES += freetype
Re-ran make grub2-reconfigure
...
./config.status --file=00_header:util/grub.d/00_header.in
util/grub-mkfont.c:42:30: fatal error: freetype/ftsynth.h: No such file or directory
#include <freetype/ftsynth.h>
^
compilation terminated.
>
>>
>> Finally RTFM and realized how special the grub2 build is.
>> Is there a reason that grub2 is not just built as a regular host package?
>
> Because grub2 is kind of special: it needs to build both some things
> for the target, and some things for the host. And there are some
> explanations about it in grub2.mk:
Yes, looked at that and ./configure --help for grub2, saw that it clearly defined
System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
--target=TARGET configure for building compilers for TARGET [HOST]
>
> ===
>
> # Grub2 is kind of special: it considers CC, LD and so on to be the
> # tools to build the native tools (i.e to be executed on the build
> # machine), and uses TARGET_CC, TARGET_CFLAGS, TARGET_CPPFLAGS to
> # build the bootloader itself.
Understand, two tool chains required. Still trying to understand their use in buildroot scripts
>
> GRUB2_CONF_ENV = \
> $(HOST_CONFIGURE_OPTS) \
> CPP="$(HOSTCC) -E" \
> TARGET_CC="$(TARGET_CC)" \
> TARGET_CFLAGS="$(TARGET_CFLAGS)" \
> TARGET_CPPFLAGS="$(TARGET_CPPFLAGS)"
>
> ===
>
> And it is actually more logical for grub2 to be a target package: the
> main purpose of grub2 is to have a bootloader on the target, much like
> U-Boot or Barebox. The fact that in addition Grub2 provides a bunch of
> host utilities is kind of a "detail".
Hmm, not sure I agree about the "detail". As currently built some of the grub scripts
such as grub-mkconfig would try to run other scripts residing in the
build hosts /usr directory not the version in buildroot $HOST_DIR or $TARGET_DIR
I am of the opinion that if we build it it should work :-) Currently the instructions
to install grub2 are more complicated then "install-grub ..."
Steve
parent reply other threads:[~2015-02-18 18:15 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <54E4CF63.20504@ou.edu>]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54E4D6A8.7020200@ou.edu \
--to=skenton@ou.edu \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox