Summary: | sys-boot/grub:2[themes] with media-libs/freetype-2.9.1 fails to build - configure: error: themes were explicitly requested but requirements are not satisfied (No build-time grub-mkfont) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Maxime Lombard <berillions> |
Component: | Current packages | Assignee: | Mike Gilbert <floppym> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | base-system, hydrapolic |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 655200 | ||
Bug Blocks: | 654792 | ||
Attachments: |
build log with "theme" USE Flag enabled
grub-2.02-freetype_pkgconfig.patch |
Description
Maxime Lombard
2018-05-04 04:29:41 UTC
Do you have media-libs/freetype:2 installed? I have the same issue. And when I have media-libs/freetype-2.9.1 installed, I can't successfully merge grub using gcc-7 or gcc-8. Even with -fonts and -themes. But when I downgrade media-libs/freetype-2.9.1 to media-libs/freetype-2.9 or media-libs/freetype-2.8, grub builds just fine with USE="device-mapper fonts nls sdl themes truetype -debug -doc -efiemu -libzfs -mount -multislot -static {-test}" So I suggest to downgrade and not to use freetype 2.9.1 if there's no other options. (In reply to Ivan from comment #2) > I have the same issue. > > And when I have media-libs/freetype-2.9.1 installed, I can't successfully > merge grub using gcc-7 or gcc-8. Even with -fonts and -themes. > > But when I downgrade media-libs/freetype-2.9.1 to media-libs/freetype-2.9 or > media-libs/freetype-2.8, grub builds just fine with USE="device-mapper fonts > nls sdl themes truetype -debug -doc -efiemu -libzfs -mount -multislot > -static {-test}" > > So I suggest to downgrade and not to use freetype 2.9.1 if there's no other > options. If OP is able to build grub with downgraded freetype, I'd recommend to change title to more relevant. Freetype 2.9.1 removed freetype-config, so that's why it fails to build. And grub should use pkg-config instead. also the same issue with media-libs/freetype-2.9.1-r1. Created attachment 529746 [details, diff]
grub-2.02-freetype_pkgconfig.patch
Ugh... never seen such an over complicated configure.ac file before...
Anyway, the attached patch should fix it. It's not been sent to upstream yet though.
(In reply to Lars Wendler (Polynomial-C) from comment #7) > Created attachment 529746 [details, diff] [details, diff] > grub-2.02-freetype_pkgconfig.patch > > Ugh... never seen such an over complicated configure.ac file before... > > Anyway, the attached patch should fix it. It's not been sent to upstream yet > though. Thanks for the patch. Just tested on 2.0.2-r1, but it fails the same :-/ Comment on attachment 529746 [details, diff]
grub-2.02-freetype_pkgconfig.patch
Thanks for the patch.
I think this will break when cross-compiling. PKG_PROG_PKG_CONFIG would find ${CHOST}-pkg-config, but we want ${CBUILD}-pkg-config for BUILD_FREETYPE2. It would be good to find a solution here before submitting this upstream.
(In reply to Mike Gilbert from comment #9) > Comment on attachment 529746 [details, diff] [details, diff] > grub-2.02-freetype_pkgconfig.patch > I confirm that the patch does not fix this issue. Even if it's applied, i have the same error during "configure". The ebuild needs to be adjusted to call eautoreconf for the patch to have any effect. The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6db5c287b3e0a43f2254376e32ea6ffe8a45dcf commit b6db5c287b3e0a43f2254376e32ea6ffe8a45dcf Author: Mike Gilbert <floppym@gentoo.org> AuthorDate: 2018-05-04 15:46:06 +0000 Commit: Mike Gilbert <floppym@gentoo.org> CommitDate: 2018-05-04 15:50:03 +0000 sys-boot/grub: use pkg-config to find freetype2 Bug: https://bugs.gentoo.org/654788 Package-Manager: Portage-2.3.31_p60, Repoman-2.3.9_p116 sys-boot/grub/files/2.02-freetype-pkg-config.patch | 73 ++++++++++++++++++++++ sys-boot/grub/grub-2.02-r1.ebuild | 14 ++++- sys-boot/grub/grub-9999.ebuild | 12 +++- 3 files changed, 96 insertions(+), 3 deletions(-) (In reply to Larry the Git Cow from comment #12) > sys-boot/grub/grub-9999.ebuild | 12 +++- The patch itself did not get added to the grub-9999.ebuild ... also, the patch fails to apply to grub-9999 It does apply the patch, and compile fine on grub-2.02-r1 grub-9999 will be broken until upstream accepts the patches. In the mean time, you may use /etc/portage/patches if you need it. (In reply to Mike Gilbert from comment #15) > In the mean time, you may use /etc/portage/patches if you need it. What I meant to say is that grub-9999 needs a different patch, but in the mean time I will be using grub-2.02-r1 |