From 85546e5672376f4dde8b01c17221aa9bc3990175 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 11 Nov 2024 07:09:50 +0000 Subject: [PATCH] x11-libs/pixman: Sync with Gentoo It's from Gentoo commit 3889a4c90a0abb162a720967311764234679960a. --- .../portage-stable/x11-libs/pixman/Manifest | 1 + ...ust-arm-assembly-for-binutils-change.patch | 106 ++++++++++++++++++ .../x11-libs/pixman/pixman-0.43.4.ebuild | 4 + .../x11-libs/pixman/pixman-0.44.0.ebuild | 61 ++++++++++ .../x11-libs/pixman/pixman-9999.ebuild | 13 +-- 5 files changed, 175 insertions(+), 10 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/x11-libs/pixman/files/0.43.4-pixman-Adjust-arm-assembly-for-binutils-change.patch create mode 100644 sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.44.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/Manifest b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/Manifest index df56577906..d39b170199 100644 --- a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/Manifest +++ b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/Manifest @@ -1 +1,2 @@ DIST pixman-0.43.4.tar.xz 636900 BLAKE2B c31e5700bfadcd72f522af50509a4a6cd7bbf90c918c75b108e50246f1c76e858125138902a222040ada192710ec788deb43eb65085416f3eff88e3ed970933e SHA512 b40fb05bd58dc78f4e4e9b19c86991ab0611b708657c9a7fb42bfe82d57820a0fde01a34b00a0848a41da6c3fb90c2213942a70f435a0e9467631695d3bc7e36 +DIST pixman-0.44.0.tar.xz 649200 BLAKE2B ea3f5fc5e6febfd3e6acf89b9bb7ce2d7c82d42ede2b3f7df69ce6d65ec2d75d3402523a1a3227135caac34633556dec3010a435ace23f2c8255ea210c03d5db SHA512 3ea293cd308a4faeb600939df2c98148154cf1faf8e435b9f33df46c33acfeb32572cb0c1e148ee9f6f39f9e8a49fbda627edcac03da2000d89e22941849a04d diff --git a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/files/0.43.4-pixman-Adjust-arm-assembly-for-binutils-change.patch b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/files/0.43.4-pixman-Adjust-arm-assembly-for-binutils-change.patch new file mode 100644 index 0000000000..c59ed7b3e8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/files/0.43.4-pixman-Adjust-arm-assembly-for-binutils-change.patch @@ -0,0 +1,106 @@ +https://bugs.gentoo.org/942441 + +From 865e6ce00bb79a6b925ed4c2c436e1533e4472aa Mon Sep 17 00:00:00 2001 +From: Mike Hommey +Date: Fri, 12 Jul 2024 11:11:17 -0400 +Subject: [PATCH] pixman: Adjust arm assembly for binutils change + +A change in the latest version of binutils broke building pixman for arm. + +The binutils change: +https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=226749d5a6ff0d5c607d6428d6c81e1e7e7a994b + +Closes: https://gitlab.freedesktop.org/pixman/pixman/-/issues/96 +--- + pixman/pixman-arm-simd-asm.S | 44 ++++++++++++++++++------------------ + 1 file changed, 22 insertions(+), 22 deletions(-) + +diff --git a/pixman/pixman-arm-simd-asm.S b/pixman/pixman-arm-simd-asm.S +index 34d38f1..3dfe723 100644 +--- a/pixman/pixman-arm-simd-asm.S ++++ b/pixman/pixman-arm-simd-asm.S +@@ -820,13 +820,13 @@ generate_composite_function \ + .macro over_white_8888_8888_ca_1pixel_tail + mvn TMP0, WK1 + teq WK1, WK1, asr #32 +- bne 01f +- bcc 03f ++ bne 1f ++ bcc 3f + mov WK3, WK1 +- b 02f +-01: over_white_8888_8888_ca_combine WK1, WK3 +-02: pixst , 4, 3, DST +-03: ++ b 2f ++1: over_white_8888_8888_ca_combine WK1, WK3 ++2: pixst , 4, 3, DST ++3: + .endm + + .macro over_white_8888_8888_ca_2pixels_head +@@ -837,21 +837,21 @@ generate_composite_function \ + pixld , 8, 3, DST + mvn TMP0, WK1 + teq WK1, WK1, asr #32 +- bne 01f ++ bne 1f + movcs WK3, WK1 +- bcs 02f ++ bcs 2f + teq WK2, #0 +- beq 05f +- b 02f +-01: over_white_8888_8888_ca_combine WK1, WK3 +-02: mvn TMP0, WK2 ++ beq 5f ++ b 2f ++1: over_white_8888_8888_ca_combine WK1, WK3 ++2: mvn TMP0, WK2 + teq WK2, WK2, asr #32 +- bne 03f ++ bne 3f + movcs WK4, WK2 +- b 04f +-03: over_white_8888_8888_ca_combine WK2, WK4 +-04: pixst , 8, 3, DST +-05: ++ b 4f ++3: over_white_8888_8888_ca_combine WK2, WK4 ++4: pixst , 8, 3, DST ++5: + .endm + + .macro over_white_8888_8888_ca_process_head cond, numbytes, firstreg, unaligned_src, unaligned_mask, preload +@@ -1067,9 +1067,9 @@ generate_composite_function \ + .if \offset != 0 + ldrb ORIG_W, [SRC, #\offset] + .endif +- beq 01f ++ beq 1f + teq STRIDE_M, #0xFF +- beq 02f ++ beq 2f + .endif + uxtb16 SCRATCH, \d /* rb_dest */ + uxtb16 \d, \d, ror #8 /* ag_dest */ +@@ -1079,13 +1079,13 @@ generate_composite_function \ + uxtab16 \d, \d, \d, ror #8 + mov SCRATCH, SCRATCH, ror #8 + sel \d, SCRATCH, \d +- b 02f ++ b 2f + .if \offset == 0 + 48: /* Last mov d,#0 of the set - used as part of shortcut for + * source values all 0 */ + .endif +-01: mov \d, #0 +-02: ++1: mov \d, #0 ++2: + .endm + + .macro in_reverse_8888_8888_tail numbytes, reg1, reg2, reg3, reg4 +-- +2.45.2 + diff --git a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.43.4.ebuild b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.43.4.ebuild index c4dd787574..f81d1c4ed4 100644 --- a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.43.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.43.4.ebuild @@ -23,6 +23,10 @@ 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 test" RESTRICT="!test? ( test )" +PATCHES=( + "${FILESDIR}"/${PV}-pixman-Adjust-arm-assembly-for-binutils-change.patch +) + pkg_pretend() { [[ ${MERGE_TYPE} != binary ]] && use test && tc-check-openmp } diff --git a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.44.0.ebuild b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.44.0.ebuild new file mode 100644 index 0000000000..456ea42b85 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-0.44.0.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +EGIT_REPO_URI="https://gitlab.freedesktop.org/pixman/pixman.git" + +if [[ ${PV} = 9999* ]]; then + GIT_ECLASS="git-r3" +fi + +inherit ${GIT_ECLASS} 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 + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~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_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 emesonargs=( + $(meson_feature cpu_flags_x86_mmxext mmx) + $(meson_feature cpu_flags_x86_sse2 sse2) + $(meson_feature cpu_flags_x86_ssse3 ssse3) + $(meson_feature cpu_flags_ppc_altivec vmx) + $(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 + ) + + 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 +} + +multilib_src_test() { + export OMP_NUM_THREADS=$(makeopts_jobs) + meson_src_test -t 100 +} diff --git a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-9999.ebuild b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-9999.ebuild index 2814652088..456ea42b85 100644 --- a/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/x11-libs/pixman/pixman-9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 EGIT_REPO_URI="https://gitlab.freedesktop.org/pixman/pixman.git" @@ -9,7 +9,7 @@ if [[ ${PV} = 9999* ]]; then GIT_ECLASS="git-r3" fi -inherit ${GIT_ECLASS} flag-o-matic meson-multilib multiprocessing toolchain-funcs +inherit ${GIT_ECLASS} meson-multilib multiprocessing toolchain-funcs DESCRIPTION="Low-level pixel manipulation routines" HOMEPAGE="http://www.pixman.org/ https://gitlab.freedesktop.org/pixman/pixman/" @@ -20,7 +20,7 @@ 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 test" +IUSE="cpu_flags_ppc_altivec 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() { @@ -32,14 +32,7 @@ pkg_setup() { } multilib_src_configure() { - 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) - $(meson_use cpu_flags_arm_iwmmxt2 iwmmxt2) $(meson_feature cpu_flags_x86_mmxext mmx) $(meson_feature cpu_flags_x86_sse2 sse2) $(meson_feature cpu_flags_x86_ssse3 ssse3)