RFR: 8210782: Upgrade HarfBuzz to the latest 2.3.1

Philip Race philip.race at oracle.com
Fri Mar 1 01:55:38 UTC 2019


Oh yes we should :-). Good catch.
The license isn't changed so its a small matter of changing what version 
we list in the file.
http://cr.openjdk.java.net/~prr/8210782.1

-phil.

On 2/28/19, 4:58 PM, Sergey Bylokhov wrote:
> Hi, Phil.
> Should we update the "harfbuzz.md" file as well?
>
> On 28/02/2019 16:12, Philip Race wrote:
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8210782
>> Webrev: http://cr.openjdk.java.net/~prr/8210782/
>>
>> This change upgrades JDK 13 from using harfbuzz v 1.8.1 to v 2.3.1 
>> which is currently the latest release of harfbuzz
>>
>> harfbuzz is the 3rd party (external) C++ library used by OpenJDK for 
>> OpenType text layout.
>>
>> In this large upgrade
>> - Many files were renamed following the pattern of 
>> "hb-foo-private.cc" becoming "hb-foo.cc"
>> - Many new files were added
>> - A couple of files were deleted.
>>
>> There are two additional changes on top of this
>> I needed to import a published but un-released fix to enable building 
>> with Oracle Studio 12.6 on Solaris
>> See 
>> https://github.com/harfbuzz/harfbuzz/commit/1e06282105a2d579aab32094cc7abc10ed231978
>> I needed to reapply a fix made in JDK as JDK-8218965 that mirrors 
>> upstream to support building with the latest AIX compilers
>> See 
>> https://github.com/harfbuzz/harfbuzz/commit/5c2bb1de8de31fecf0dae2ef905b896e42d39f1d
>> This doesn't show up as a "diff" in the JDK webrev which demonstrates 
>> that it is correctly re-applied as previously.
>>
>> There are two JDK files changed :
>> (1)
>> - The makefile has been updated to disable several new warnings.
>> - To prevent harfbuzz from enabling warnings that were disabled - and 
>> avoid unknown pragma warnings we now define
>>
>> -DHB_NO_PRAGMA_GCC_DIAGNOSTIC
>>
>>
>> See hb.hh for what harfbuzz is doing there, but without this -D 
>> option we cannot
>> disable warnings from the build since they are enabled in the code 
>> itself.
>>
>> (2)
>> - A couple of harfbuzz APIs were deprecated so I needed to make code 
>> changes in hb-jdk-font.cc to use
>> the new API.
>>
>> I have tested that this builds cleanly with all the current devkits 
>> (via the build servers) and that it also builds
>> with the in progress work to provide a gcc 8.2 devkit for Linux
>> I have also run all the related automated tests and performed some 
>> manual testing too.
>>
>> -phil.
>
>



More information about the build-dev mailing list