[11u] Backport of 8247872: Upgrade HarfBuzz to the latest 2.7.2
Severin Gehwolf
sgehwolf at redhat.com
Thu Jan 7 17:31:57 UTC 2021
On Thu, 2021-01-07 at 17:16 +0000, Doerr, Martin wrote:
> Hi,
>
> I've created a jdk11u backport of JDK-8247872: Upgrade HarfBuzz to
> the latest 2.7.2
> http://cr.openjdk.java.net/~mdoerr/8247872_harfbuzz_11u/webrev.00/
>
> I had to resolve it a bit manually [1].
> However, the main problem is that it heavily uses C++11, so easiest
> solution is to add HARFBUZZ_CFLAGS := -std=c++11.
> This works for all supported compilers [2] except xlC on AIX and sun
> studio on Solaris.
We are building vanilla JDK 11 builds with gcc 4.4.7 which doesn't
support the -std=c++11 option. We've had issues in that area before.
See JDK-8256557.
Thanks,
Severin
> I could envision different solutions:
>
> 1. Change code to work with older C++ standard. I don't want to do
> this because this seems to be significant effort and is probably
> error prone (I'm not really familiar with the code and TMP code is
> hard to adapt). And we may have to repeat it for future HB upgrades.
> 2. Upgrade compilers: This is possible on AIX. We'd need to
> backport some build changes and use xlclang++. But I guess there's no
> solaris studio available which can compile it. Note that the original
> bug was blocked by JEP 362: Deprecate the Solaris and SPARC Ports.
> 3. Use configure flag --with-harfbuzz=system on the problematic
> platforms. Disadvantage: All machines require new enough version of
> libharfbuzz installed.
> 4. Skip JDK-8247872 backport. Oracle must have had a reason for
> backporting it to 11.0.11-oracle, so some jdk11u users will probably
> want to have it at least on the main platforms.
>
> Any comments or ideas will be appreciated.
>
> Best regards,
> Martin
>
>
> [1] Resolution steps:
> - Manually delete hb-dsalgs.hh.
> - Awt2dLibraries.gmk is at a different location in 11u.
> - Integrate a few hunks manually due to minor adaptations for Solaris
> build: see
> http://cr.openjdk.java.net/~mdoerr/8247872_harfbuzz_11u/8247872_harfbuzz_failing_hunks.txt
> - Add HARFBUZZ_CFLAGS := -std=c++11 to Awt2dLibraries.gmk.
>
> [2] Supported compilers:
> https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms
>
More information about the jdk-updates-dev
mailing list