diff options
author | 2023-03-04 05:51:48 +0000 | |
---|---|---|
committer | 2023-03-04 05:54:29 +0000 | |
commit | ec65883ba7e22af63ab2b4e02765d06e7c3269de (patch) | |
tree | 5d6b3e1727d68a46ea1260ff08cfa625f625ad96 | |
parent | app-misc/tmux: Stabilize 3.3a-r1 arm, #899272 (diff) | |
download | gentoo-ec65883ba7e22af63ab2b4e02765d06e7c3269de.tar.gz gentoo-ec65883ba7e22af63ab2b4e02765d06e7c3269de.tar.bz2 gentoo-ec65883ba7e22af63ab2b4e02765d06e7c3269de.zip |
media-libs/harfbuzz: add 7.1.0
It's easier to add Cairo as multilib given I'm not really convinced Harfbuzz
is something you can properly split up & I don't think you can easily regulate
what multilib consumers are actually using, given the history of the APIs
Harfbuzz consumers tend to use (i.e. everything, even the experimental stuff).
Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r-- | media-libs/harfbuzz/Manifest | 1 | ||||
-rw-r--r-- | media-libs/harfbuzz/harfbuzz-7.1.0.ebuild | 95 | ||||
-rw-r--r-- | media-libs/harfbuzz/harfbuzz-9999.ebuild | 15 |
3 files changed, 102 insertions, 9 deletions
diff --git a/media-libs/harfbuzz/Manifest b/media-libs/harfbuzz/Manifest index e9c95a33092e..33d8d7e21344 100644 --- a/media-libs/harfbuzz/Manifest +++ b/media-libs/harfbuzz/Manifest @@ -1,2 +1,3 @@ DIST harfbuzz-5.3.1.tar.xz 17874260 BLAKE2B e4d3926daca4f5c95441a9b99e10acd4b95bf365f56934a2bbb8b35955e8457a90a13b0ad3223d8350012373216083e910f517b34c0dffb09fb218a1f8e9ca48 SHA512 6b0aef2b7445f4a71c324b545414114507d8077dc186366f25140dcd3bedeee67868cfc65c0eef59ed950381a4c101a541900be4995f645377c11754b027b501 DIST harfbuzz-6.0.0.tar.xz 18952524 BLAKE2B bb08f90cf9540a076ec2fe5498658a0e5f963537ebd98fce271af9070d0fc7178346bf56c600720d433c9e3a403f67ec3ac898abeb1da12697ad22980ecf5204 SHA512 66f8484586b1b334479d739df1d1107172715ce1d2a3c0105375174fa3e201fd69ceb1543c10d6db49b012912e823befc701f00621f7b5f68036eced80d36f65 +DIST harfbuzz-7.1.0.tar.xz 18655864 BLAKE2B e152ca15db53b6130cff039f039ee7f95134eac297c434941e7aa9b66e8925275de213680769cd8170ab28785985f3d288af23444087ca35f2861f17018a5943 SHA512 2f15bf14f927263c34201dba067ffac84133610121c58843c566d6f271f30f1dce44832a65bceb83828e25e9dd1a1d2a1610c5dbe2bef3ddbcecd7b5bcab8714 diff --git a/media-libs/harfbuzz/harfbuzz-7.1.0.ebuild b/media-libs/harfbuzz/harfbuzz-7.1.0.ebuild new file mode 100644 index 000000000000..9019f3ca2e97 --- /dev/null +++ b/media-libs/harfbuzz/harfbuzz-7.1.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..11} ) + +inherit flag-o-matic meson-multilib python-any-r1 xdg-utils + +DESCRIPTION="An OpenType text shaping engine" +HOMEPAGE="https://www.freedesktop.org/wiki/Software/HarfBuzz" + +if [[ ${PV} = 9999 ]] ; then + EGIT_REPO_URI="https://github.com/harfbuzz/harfbuzz.git" + inherit git-r3 +else + SRC_URI="https://github.com/harfbuzz/harfbuzz/releases/download/${PV}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +LICENSE="Old-MIT ISC icu" +# 0.9.18 introduced the harfbuzz-icu split; bug #472416 +# 3.0.0 dropped some unstable APIs; bug #813705 +# 6.0.0 changed libharfbuzz-subset.so ABI +SLOT="0/6.0.0" + +IUSE="+cairo debug doc experimental +glib +graphite icu +introspection test +truetype" +RESTRICT="!test? ( test )" +REQUIRED_USE="introspection? ( glib )" + +RDEPEND=" + cairo? ( x11-libs/cairo:=[${MULTILIB_USEDEP}] ) + glib? ( >=dev-libs/glib-2.38:2[${MULTILIB_USEDEP}] ) + graphite? ( >=media-gfx/graphite2-1.2.1:=[${MULTILIB_USEDEP}] ) + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + introspection? ( >=dev-libs/gobject-introspection-1.34:= ) + truetype? ( >=media-libs/freetype-2.5.0.1:2=[${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND} + >=dev-libs/gobject-introspection-common-1.34 +" +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig + doc? ( dev-util/gtk-doc ) + introspection? ( dev-util/glib-utils ) +" + +src_prepare() { + default + + xdg_environment_reset + + # bug #726120 + sed -i \ + -e '/tests\/macos\.tests/d' \ + test/shape/data/in-house/Makefile.sources \ + || die + + # bug #790359 + filter-flags -fexceptions -fthreadsafe-statics + + if ! use debug ; then + append-cppflags -DHB_NDEBUG + fi + + # bug #762415 + local pyscript + for pyscript in $(find -type f -name "*.py") ; do + python_fix_shebang -q "${pyscript}" + done +} + +multilib_src_configure() { + # harfbuzz-gobject only used for introspection, bug #535852 + local emesonargs=( + -Dcoretext="disabled" + -Dchafa="disabled" + + $(meson_feature cairo) + $(meson_feature glib) + $(meson_feature graphite graphite2) + $(meson_feature icu) + $(meson_feature introspection gobject) + $(meson_feature test tests) + $(meson_feature truetype freetype) + + $(meson_native_use_feature doc docs) + $(meson_native_use_feature introspection) + + $(meson_use experimental experimental_api) + ) + + meson_src_configure +} diff --git a/media-libs/harfbuzz/harfbuzz-9999.ebuild b/media-libs/harfbuzz/harfbuzz-9999.ebuild index bf572ed0f6ee..9019f3ca2e97 100644 --- a/media-libs/harfbuzz/harfbuzz-9999.ebuild +++ b/media-libs/harfbuzz/harfbuzz-9999.ebuild @@ -29,7 +29,7 @@ RESTRICT="!test? ( test )" REQUIRED_USE="introspection? ( glib )" RDEPEND=" - cairo? ( x11-libs/cairo:= ) + cairo? ( x11-libs/cairo:=[${MULTILIB_USEDEP}] ) glib? ( >=dev-libs/glib-2.38:2[${MULTILIB_USEDEP}] ) graphite? ( >=media-gfx/graphite2-1.2.1:=[${MULTILIB_USEDEP}] ) icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) @@ -46,13 +46,6 @@ BDEPEND=" introspection? ( dev-util/glib-utils ) " -pkg_setup() { - python-any-r1_pkg_setup - if ! use debug ; then - append-cppflags -DHB_NDEBUG - fi -} - src_prepare() { default @@ -67,6 +60,10 @@ src_prepare() { # bug #790359 filter-flags -fexceptions -fthreadsafe-statics + if ! use debug ; then + append-cppflags -DHB_NDEBUG + fi + # bug #762415 local pyscript for pyscript in $(find -type f -name "*.py") ; do @@ -80,6 +77,7 @@ multilib_src_configure() { -Dcoretext="disabled" -Dchafa="disabled" + $(meson_feature cairo) $(meson_feature glib) $(meson_feature graphite graphite2) $(meson_feature icu) @@ -87,7 +85,6 @@ multilib_src_configure() { $(meson_feature test tests) $(meson_feature truetype freetype) - $(meson_native_use_feature cairo) $(meson_native_use_feature doc docs) $(meson_native_use_feature introspection) |