From 2f38922d033bebc6e4d26bba4b42096b7e9abf7f Mon Sep 17 00:00:00 2001 From: Wang Mingyu Date: Wed, 9 Oct 2024 13:48:56 +0800 Subject: harfbuzz: upgrade 9.0.0 -> 10.0.1 Changelog: ============ - Relax sanitization checks for "morx"subtables to fix broken AAT shaping of macOS 15.0 version of GeezaPro. - Unicode 16.0.0 support. - Various documentation fixes. - Various build fixes. - Add API to allow HarfBuzz client to set what glyph to use when a Unicode Variation Selector is not supported by the font, which would allow the client to customize what happens in this case, by using a different font for example. - Add a callback to for "hb_face_t"for getting the list of table tags. This is now used to make calling "hb_face_get_table_tags()"work on a faces created by "hb_face_create_for_tables()"(e.g. faces returned by "hb_subset_or_fail()"). - CGJ and Mongolian Variation Selectors are now ignored during glyph positioning, previously they would block both glyph substitution and positioning across them. - Support cairo script as an output format for "hb-view"command line tool. - Drop an optimization that would cause HarfBuzz not apply pair positioning lookup subtables under certain circumstances, for compatibility with other implementations that do apply these subtables. - Subsetting will now fail if source font has no glyphs, so feeding the subsetter invalid data will not silently return an empty face. - If after partially instancing a font no variation data is left (the instance is fully static), don't consider this a failure. - Workaround a Firefox bug in displaying SVGs generated be "hb-view"command line tool under certain circumstances. - Fix bug in macroman mapping for "cmap"table. - Fix difference shaping output when HarfBuzz is built with with "HB_NO_OT_RULESETS_FAST_PATH"enabled. - Various subsetting and instancing fixes. - Various fuzzing fixes. - Add "with_libstdcxx"meson build option. - New API: HB_SCRIPT_GARAY HB_SCRIPT_GURUNG_KHEMA HB_SCRIPT_KIRAT_RAI HB_SCRIPT_OL_ONAL HB_SCRIPT_SUNUWAR HB_SCRIPT_TODHRI HB_SCRIPT_TULU_TIGALARI hb_buffer_set_not_found_variation_selector_glyph() hb_buffer_get_not_found_variation_selector_glyph() hb_get_table_tags_func_t hb_face_set_get_table_tags_func() (From OE-Core rev: 832272063fe58577b9d959d7dbd4f92d9c22670e) Signed-off-by: Wang Mingyu Signed-off-by: Richard Purdie --- meta/recipes-graphics/harfbuzz/harfbuzz_10.0.1.bb | 51 +++++++++++++++++++++++ meta/recipes-graphics/harfbuzz/harfbuzz_9.0.0.bb | 51 ----------------------- 2 files changed, 51 insertions(+), 51 deletions(-) create mode 100644 meta/recipes-graphics/harfbuzz/harfbuzz_10.0.1.bb delete mode 100644 meta/recipes-graphics/harfbuzz/harfbuzz_9.0.0.bb diff --git a/meta/recipes-graphics/harfbuzz/harfbuzz_10.0.1.bb b/meta/recipes-graphics/harfbuzz/harfbuzz_10.0.1.bb new file mode 100644 index 0000000000..3b211251af --- /dev/null +++ b/meta/recipes-graphics/harfbuzz/harfbuzz_10.0.1.bb @@ -0,0 +1,51 @@ +SUMMARY = "Text shaping library" +DESCRIPTION = "HarfBuzz is an OpenType text shaping engine." +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/HarfBuzz" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=HarfBuzz" +SECTION = "libs" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b98429b8e8e3c2a67cfef01e99e4893d \ + file://src/hb-ucd.cc;beginline=1;endline=15;md5=29d4dcb6410429195df67efe3382d8bc \ + " + +SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz" +SRC_URI[sha256sum] = "b2cb13bd351904cb9038f907dc0dee0ae07127061242fe3556b2795c4e9748fc" + +DEPENDS += "glib-2.0-native" + +inherit meson pkgconfig lib_package gtk-doc gobject-introspection github-releases + +GIR_MESON_ENABLE_FLAG = 'enabled' +GIR_MESON_DISABLE_FLAG = 'disabled' +GTKDOC_MESON_ENABLE_FLAG = 'enabled' +GTKDOC_MESON_DISABLE_FLAG = 'disabled' + +PACKAGECONFIG ??= "cairo freetype glib icu" +PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo" +PACKAGECONFIG[chafa] = "-Dchafa=enabled,-Dchafa=disabled,chafa" +PACKAGECONFIG[freetype] = "-Dfreetype=enabled,-Dfreetype=disabled,freetype" +PACKAGECONFIG[glib] = "-Dglib=enabled,-Dglib=disabled,glib-2.0" +PACKAGECONFIG[graphite] = "-Dgraphite2=enabled,-Dgraphite2=disabled,graphite2" +PACKAGECONFIG[icu] = "-Dicu=enabled,-Dicu=disabled,icu" + +PACKAGES =+ "${PN}-icu ${PN}-icu-dev ${PN}-subset" + +LEAD_SONAME = "libharfbuzz.so" + +# Remove when https://github.com/harfbuzz/harfbuzz/issues/4671 is resolved +EXTRA_OEMESON += "-Dcpp_std=c++17" + +do_install:append() { + # If no tools are installed due to PACKAGECONFIG then this directory might + # still be installed, so remove it to stop packaging warnings. + [ ! -d ${D}${bindir} ] || rmdir --ignore-fail-on-non-empty ${D}${bindir} +} + +FILES:${PN}-icu = "${libdir}/libharfbuzz-icu.so.*" +FILES:${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \ + ${libdir}/libharfbuzz-icu.so \ + ${libdir}/pkgconfig/harfbuzz-icu.pc \ +" +FILES:${PN}-subset = "${libdir}/libharfbuzz-subset.so.*" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/harfbuzz/harfbuzz_9.0.0.bb b/meta/recipes-graphics/harfbuzz/harfbuzz_9.0.0.bb deleted file mode 100644 index 01ea6ca86d..0000000000 --- a/meta/recipes-graphics/harfbuzz/harfbuzz_9.0.0.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "Text shaping library" -DESCRIPTION = "HarfBuzz is an OpenType text shaping engine." -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/HarfBuzz" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=HarfBuzz" -SECTION = "libs" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=b98429b8e8e3c2a67cfef01e99e4893d \ - file://src/hb-ucd.cc;beginline=1;endline=15;md5=29d4dcb6410429195df67efe3382d8bc \ - " - -SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz" -SRC_URI[sha256sum] = "a41b272ceeb920c57263ec851604542d9ec85ee3030506d94662067c7b6ab89e" - -DEPENDS += "glib-2.0-native" - -inherit meson pkgconfig lib_package gtk-doc gobject-introspection github-releases - -GIR_MESON_ENABLE_FLAG = 'enabled' -GIR_MESON_DISABLE_FLAG = 'disabled' -GTKDOC_MESON_ENABLE_FLAG = 'enabled' -GTKDOC_MESON_DISABLE_FLAG = 'disabled' - -PACKAGECONFIG ??= "cairo freetype glib icu" -PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo" -PACKAGECONFIG[chafa] = "-Dchafa=enabled,-Dchafa=disabled,chafa" -PACKAGECONFIG[freetype] = "-Dfreetype=enabled,-Dfreetype=disabled,freetype" -PACKAGECONFIG[glib] = "-Dglib=enabled,-Dglib=disabled,glib-2.0" -PACKAGECONFIG[graphite] = "-Dgraphite2=enabled,-Dgraphite2=disabled,graphite2" -PACKAGECONFIG[icu] = "-Dicu=enabled,-Dicu=disabled,icu" - -PACKAGES =+ "${PN}-icu ${PN}-icu-dev ${PN}-subset" - -LEAD_SONAME = "libharfbuzz.so" - -# Remove when https://github.com/harfbuzz/harfbuzz/issues/4671 is resolved -EXTRA_OEMESON += "-Dcpp_std=c++17" - -do_install:append() { - # If no tools are installed due to PACKAGECONFIG then this directory might - # still be installed, so remove it to stop packaging warnings. - [ ! -d ${D}${bindir} ] || rmdir --ignore-fail-on-non-empty ${D}${bindir} -} - -FILES:${PN}-icu = "${libdir}/libharfbuzz-icu.so.*" -FILES:${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \ - ${libdir}/libharfbuzz-icu.so \ - ${libdir}/pkgconfig/harfbuzz-icu.pc \ -" -FILES:${PN}-subset = "${libdir}/libharfbuzz-subset.so.*" - -BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3-54-g00ecf