diff options
Diffstat (limited to 'x11-libs/pixman/pixman-9999.ebuild')
-rw-r--r-- | x11-libs/pixman/pixman-9999.ebuild | 39 |
1 files changed, 28 insertions, 11 deletions
diff --git a/x11-libs/pixman/pixman-9999.ebuild b/x11-libs/pixman/pixman-9999.ebuild index d79304a2d1a2..64f5bc702b84 100644 --- a/x11-libs/pixman/pixman-9999.ebuild +++ b/x11-libs/pixman/pixman-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -9,24 +9,33 @@ if [[ ${PV} = 9999* ]]; then GIT_ECLASS="git-r3" fi -inherit ${GIT_ECLASS} meson-multilib multiprocessing toolchain-funcs +inherit ${GIT_ECLASS} flag-o-matic meson-multilib multiprocessing toolchain-funcs DESCRIPTION="Low-level pixel manipulation routines" HOMEPAGE="http://www.pixman.org/ https://gitlab.freedesktop.org/pixman/pixman/" -if [[ ${PV} = 9999* ]]; then - SRC_URI="" -else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" +if [[ ${PV} != 9999* ]]; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" SRC_URI="https://www.x.org/releases/individual/lib/${P}.tar.xz" fi LICENSE="MIT" SLOT="0" -IUSE="cpu_flags_ppc_altivec cpu_flags_arm_iwmmxt cpu_flags_arm_iwmmxt2 cpu_flags_arm_neon loongson2f cpu_flags_x86_mmxext cpu_flags_x86_sse2 cpu_flags_x86_ssse3 static-libs" +IUSE="cpu_flags_ppc_altivec cpu_flags_arm_iwmmxt cpu_flags_arm_iwmmxt2 cpu_flags_arm_neon loongson2f cpu_flags_x86_mmxext cpu_flags_x86_sse2 cpu_flags_x86_ssse3 static-libs test" +RESTRICT="!test? ( test )" + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use test && tc-check-openmp +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use test && tc-check-openmp +} multilib_src_configure() { - local openmp=disabled - tc-has-openmp && openmp=enabled + if ( use arm || use arm64 ) && tc-is-clang ; then + # See bug #768138 and https://gitlab.freedesktop.org/pixman/pixman/-/issues/46 + append-cflags $(test-flags-CC -fno-integrated-as) + fi local emesonargs=( $(meson_feature cpu_flags_arm_iwmmxt iwmmxt) @@ -35,13 +44,21 @@ multilib_src_configure() { $(meson_feature cpu_flags_x86_sse2 sse2) $(meson_feature cpu_flags_x86_ssse3 ssse3) $(meson_feature cpu_flags_ppc_altivec vmx) - $(meson_feature cpu_flags_arm_neon neon) $(meson_feature loongson2f loongson-mmi) + $(meson_feature test openmp) # only used in unit tests + $(meson_feature test tests) -Ddefault_library=$(usex static-libs both shared) + -Ddemos=disabled -Dgtk=disabled -Dlibpng=disabled - -Dopenmp=$openmp # only used in unit tests ) + + if [[ ${ABI} == arm64 ]]; then + emesonargs+=($(meson_feature cpu_flags_arm_neon a64-neon)) + elif [[ ${ABI} == arm ]]; then + emesonargs+=($(meson_feature cpu_flags_arm_neon neon)) + fi + meson_src_configure } |