Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 459352 (freetype-multilib)

Summary: [TRACKER] Packages failing with =media-libs/freetype-2.4.11-r1
Product: Gentoo Linux Reporter: Michał Górny <mgorny>
Component: Current packagesAssignee: Gentoo Quality Assurance Team <qa>
Status: RESOLVED OBSOLETE    
Severity: normal CC: aballier, carlphilippreh, fonts, hasufell, nikoli, ninuje, pacho, xangel1
Priority: Normal Keywords: Tracker
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard: Tinderbox running
Package list:
Runtime testing required: ---
Bug Depends on: 459394, 459400, 459404, 459406, 459408, 459410, 459412, 459414, 459416, 459418, 459420, 459426, 459428, 459436, 459438, 459460, 459462, 459464, 459470, 459474, 459482, 459496, 459534, 459564, 459598, 459704, 459774, 459828, 459862, 461230    
Bug Blocks:    

Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-02-26 19:38:03 UTC
The freetype-2.4.11-r1 (multilib) version of freetype needed to change the header install location to $libdir. For that reason, all packages which don't use pkg-config nor freetype-config fail to build ;).

Could you please do a tinderbox run against the dependencies with that version? It's enough to run it the with native ABI.
Comment 1 Diego Elio Pettenò (RETIRED) gentoo-dev 2013-02-26 19:40:07 UTC
Yikes you're the first person to actually ask for it via bug..

But sure, getting ready for it now (expecting catastrophe, to be honest). Should we just re-use this bug as tracker?
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-02-26 19:51:56 UTC
(In reply to comment #1)
> Yikes you're the first person to actually ask for it via bug..
> 
> But sure, getting ready for it now (expecting catastrophe, to be honest).
> Should we just re-use this bug as tracker?

Yes.
Comment 3 Julian Ospald 2013-02-27 02:09:13 UTC
have you filed a bug about this upstream?
Comment 5 Christoph Junghans (RETIRED) gentoo-dev 2013-02-27 17:51:59 UTC
@Michał: I am not sure if $libdir such a good idea, couldn't we automatically merge the include files:
- install to DESTDIR=${ED}_${ABI}
- if headers differ
#if __x86_64__
content of 64bit header
#else
content of 32bit header
#endif
- do that for each header
Comment 6 Diego Elio Pettenò (RETIRED) gentoo-dev 2013-02-27 17:53:21 UTC
As I told Paul who suggested that on my blog.

Please don't. I remember when glibc did that — it was a mess to deal with.

Some packages do NOT like the indirection and fail even more badly than they do right now.
Comment 7 Pacho Ramos gentoo-dev 2013-02-27 19:52:19 UTC
How is this headers problem handled in portage-multilib? I saw a long discussion between mgorny and tommy on IRC but didn't see concrete solutions to this problem :(
Comment 8 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-02-28 22:04:35 UTC
(In reply to comment #7)
> How is this headers problem handled in portage-multilib? I saw a long
> discussion between mgorny and tommy on IRC but didn't see concrete solutions
> to this problem :(

They are doing exactly the header solution -- move the headers and install wrappers. I'm a bit afraid I will have to do that as well for freetype, or just fix the header to use proper types.

The major problem is that CMake is a mess with its weird wannabe logic, and I'm afraid it can't handle things like header dependencies correctly. As in, the default macros do some weird lookup logic for headers and use pkg-config includes as hints only.

For example, libXft (from X11) requires freetype2, and has proper pkg-config file. If you use pkg-config to obtain cflags for xft, you get all includedirs. However, CMake will most likely just be happy with the directory in which libXft headers sit and the build will fail because of missing freetype2 header.

I would like to note, however, that this is just a theory. CMake is a mess, and its X11 module is 500 lines of random header & library lookup magic. I'm afraid that adding pkg-config support there will add at least another 250 to that, and it may not help at all.
Comment 9 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-03-12 21:39:35 UTC
Due to the issue count, we've decided to move the headers back. Therefore, feel free not to fix the Gentoo packages to use pkg-config or freetype-config.

However, it is still preferable to at least file bugs to upstreams which aren't aware of freetype providing both the fore-mentioned interfaces.
Comment 10 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-05-04 07:33:59 UTC
Upstream doesn't care, most of downstream doesn't care, closing this one. Leaving just the Xft one which is against upstream policy.