RFR: JDK-8001922, JDK-8001927, JDK-8001921 Improve freetype detection
Erik Joelsson
erik.joelsson at oracle.com
Wed Oct 23 09:00:59 UTC 2013
Magnus,
Looks good to me.
/Erik
On 2013-10-23 09:52, Magnus Ihse Bursie wrote:
> On 2013-10-21 15:38, Magnus Ihse Bursie wrote:
>>
>>> A question on Windows. If we find freetype in $PROGRAMFILES/GnuWin32, will the resulting jdk image find the library there at runtime or should we still bundle it?
>> [...]
>>
>> *) Actually, when I scrutinized the code, I noticed that USING_SYSTEM_FT_LIB was incorrectly set when using builddeps or pkg-config. I'll update the WebRe regarding this and the typo.
>>
>
> This fix has grown a bit. I've published a new webrev. Some comments
> about the changes since the last webrev: The old logic with
> USING_SYSTEM_FT_LIB was very hard to follow, and arguably completely
> wrong in certain situations. Instead of trying harder to adapt the
> configure code to the existing makefile logic, I decided to fix the
> makefile logic, and make our behavior more explicit.
>
> The explicit behaviour is now that we, by default, bundle the freetype
> library on Windows, or (on any platform) when using --with-freetype.
> There is now a new flag, --enable/disable-freetype-bundling, which
> overrides this behavior, and forces/prohibits bundling, regardless of
> circumstances. If we force bundling, but do not specify a freetype
> library path, we might be unable to use a freetype library that was
> provided via builddeps or pkg-config. This is now correctly checked
> for, and this freetype library is skipped, and we continue search for
> one that we can bundle.
>
> I also finally got tired of the mix between using "FREETYPE" and
> "FREETYPE2", and replaced all instances with just FREETYPE (the
> versioning is not relevant, and we don't use it for any other
> library). It's still needed when interfacing external systems such as
> pkg-config, though.
>
> Finally, it turned out that we do indeed require freetype to build on
> macosx, contrary to the apparent look of the code, and contrary to
> general build instructions. :-) We just sneakily detected freetype,
> and if it were not there, we could not build successfully on macosx.
> (This is for the open part only; the closed build does not require
> freetype). I'm not sure if this is a documentation bug, or a build
> system bug. In any case; I've restored the previous behavior, and made
> it more explicit. If this behavior should be changed, it must be
> covered in another bug.
>
> Updated webrev:
> http://cr.openjdk.java.net/~ihse/JDK-8001922-improve-freetype-detection/webrev.03
>
> /Magnus
>
More information about the build-dev
mailing list