#41612 closed defect (fixed)
gr-fosphor fails to build with freetype 2.5.1
Reported by: | kgarrels | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.2.1 |
Keywords: | Cc: | michaelld (Michael Dickens) | |
Port: | gr-fosphor |
Description
logfile attached
Attachments (1)
Change History (10)
Changed 11 years ago by kgarrels
comment:2 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | michaelld@… added |
---|---|
Owner: | changed from macports-tickets@… to ryandesign@… |
Port: | gr-fosphor added |
Summary: | gr-fosphor fails to build on OSX 10.9 → gr-fosphor fails to build with freetype 2.5.1 |
comment:3 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Fixed in r114140.
Michael, could you report this fix to the developers? I don't have an account in their issue tracker yet.
comment:4 Changed 11 years ago by michaelld (Michael Dickens)
Thanks for the quick fix. Yes, I'll report it upstream; no problems. They are very responsive.
comment:6 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Thanks; my fix worked for me on Mavericks, and IIRC on the Mountain Lion buildbot but not the Lion or Snow Leopard buildbots, where it failed, finding an older freetype in /usr/X11R6. (Mountain Lion and later do not ship with any X11 in /usr.) I was not able to understand why this happened because the string /usr/X11R6 does not occur within the gr-fosphor source code. cmake is still somewhat baffling to me. Glad you found a fix.
As part of my fix, I had removed the paths /usr/include/freetype2 and /usr/local/include/freetype2; we never want MacPorts to find freetype there, nor do we want MacPorts to find any dependencies in system directories in general. You've reinstated those paths so future incompatible updates to freetype might result in finding freetype in system locations again. Also I had changed the check to look for ft2build.h, because this file exists in all recent versions of freetype. You changed it back to looking for freetype.h, whose location changed in freetype 2.5.1, so your change works for MacPorts but is not suitable for upstream use because it won't work with freetype earlier than 2.5.1.
comment:7 Changed 11 years ago by michaelld (Michael Dickens)
The upstream developer and I are working on fixing this issue properly for freetype >= 2.5 and < 2.5, but, as you say, my change works within MacPorts, and avoids the older freetype in /usr/X11R6 as well as other system directories -- I'm providing the minimal patch required to get the job done efficiently. You will note that I moved the directory found by PKGCONFIG from PATHS to HINTS -- these are searched before typical system paths (which might include /usr/X11R6), while PATHS are searched after typical system paths. cmake can be quirky but powerful; you just have to know how to coerce it :) All of that said, we will likely switch to checking for ft2config.h since that's what he uses as the primary #include already, and hence it makes more sense to do so than to look for freetype.h; I'm sure we'll come to an agreement on how to proceed in short order.
logfile