Date: Tue, 7 Jan 2025 10:35:39 GMT From: Tijl Coosemans <tijl@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 75621bf97962 - main - x11/pixman: Update to 0.44.2 Message-ID: <202501071035.507AZd70066982@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by tijl: URL: https://cgit.FreeBSD.org/ports/commit/?id=75621bf97962802a985b4bbab3a763ecbc1b18ee commit 75621bf97962802a985b4bbab3a763ecbc1b18ee Author: Tijl Coosemans <tijl@FreeBSD.org> AuthorDate: 2024-12-23 18:57:06 +0000 Commit: Tijl Coosemans <tijl@FreeBSD.org> CommitDate: 2025-01-07 10:34:47 +0000 x11/pixman: Update to 0.44.2 - Remove portscout limit. - Switch to meson. - Always enable SIMD because support is detected at runtime. - Drop binutils dependency because LLVM can build it now. PR: 283530 Reviewed by: diizzy --- x11/pixman/Makefile | 73 +++++++++++++------ x11/pixman/distinfo | 6 +- .../files/patch-pixman_pixman-arm-simd-asm.S | 84 ---------------------- x11/pixman/files/patch-pixman_pixman-ppc.c | 27 ------- x11/pixman/files/patch-test_meson.build | 13 ++++ x11/pixman/pkg-descr | 3 +- x11/pixman/pkg-plist | 3 +- 7 files changed, 71 insertions(+), 138 deletions(-) diff --git a/x11/pixman/Makefile b/x11/pixman/Makefile index 226db1a7a695..25bc5725abc3 100644 --- a/x11/pixman/Makefile +++ b/x11/pixman/Makefile @@ -1,36 +1,67 @@ PORTNAME= pixman -PORTVERSION= 0.42.2 +DISTVERSION= 0.44.2 CATEGORIES= x11 +MASTER_SITES= https://cairographics.org/releases/ MAINTAINER= x11@FreeBSD.org COMMENT= Low-level pixel manipulation library -WWW= http://pixman.org +WWW= https://pixman.org LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING -PORTSCOUT= limitw:1,even +USES= cpe meson pkgconfig tar:xz +MESON_ARGS= -Dloongson-mmi=disabled \ + -Dgtk=disabled \ + -Ddemos=disabled -USES= compiler:c11 cpe perl5 tar:xz xorg-cat:lib -USE_PERL5= build -CONFIGURE_ARGS= --disable-gtk -INSTALL_TARGET= install-strip +OPTIONS_DEFINE= TEST -# Build the library exclusively, thus disabling the demos and the tests (which -# do not get installed anyway). This is to workaround a problem in powerpc64 -# where the build of the tests crashes ld; see PR bin/202284. -MAKE_ARGS= SUBDIRS=pixman +TEST_LIB_DEPENDS= libpng.so:graphics/png +TEST_MESON_ENABLED= libpng tests -.include <bsd.port.pre.mk> +.include <bsd.port.options.mk> -.if ${ARCH} == "armv6" || ${ARCH} == "armv7" -BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils -CONFIGURE_ENV+= CCASFLAGS="${CFLAGS} -B${LOCALBASE}/bin -no-integrated-as" -LLD_UNSAFE= yes -.elif ${ARCH} == "aarch64" -CONFIGURE_ARGS+= --disable-arm-a64-neon -.elif (defined(MACHINE_CPU) && !${MACHINE_CPU:Maltivec}) || (${ARCH} == powerpc && !defined(MACHINE_CPU)) -CONFIGURE_ARGS+= --disable-vmx +.if ${ARCH} == armv6 +MESON_ARGS+= -Darm-simd=enabled \ + -Dopenmp=disabled +.else +MESON_ARGS+= -Darm-simd=disabled +.endif +.if ${ARCH} == armv7 +MESON_ARGS+= -Dneon=enabled \ + -Dopenmp=disabled +.else +MESON_ARGS+= -Dneon=disabled +.endif +.if ${ARCH} == aarch64 +MESON_ARGS+= -Da64-neon=enabled +.else +MESON_ARGS+= -Da64-neon=disabled +.endif +.if ${ARCH} == i386 || ${ARCH} == amd64 +MESON_ARGS+= -Dmmx=enabled \ + -Dsse2=enabled \ + -Dssse3=enabled +.else +MESON_ARGS+= -Dmmx=disabled \ + -Dsse2=disabled \ + -Dssse3=disabled +.endif +.if ${ARCH:Mmips*} +MESON_ARGS+= -Dmips-dspr2=enabled +.else +MESON_ARGS+= -Dmips-dspr2=disabled +.endif +.if ${ARCH:Mpowerpc*} +MESON_ARGS+= -Dvmx=enabled +.else +MESON_ARGS+= -Dvmx=disabled +.endif +.if ${ARCH} == riscv64 +MESON_ARGS+= -Drvv=enabled +.else +MESON_ARGS+= -Drvv=disabled .endif -.include <bsd.port.post.mk> +.include <bsd.port.mk> diff --git a/x11/pixman/distinfo b/x11/pixman/distinfo index fba0281fc19c..4a392d376f5c 100644 --- a/x11/pixman/distinfo +++ b/x11/pixman/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1667505454 -SHA256 (xorg/lib/pixman-0.42.2.tar.xz) = 5747d2ec498ad0f1594878cc897ef5eb6c29e91c53b899f7f71b506785fc1376 -SIZE (xorg/lib/pixman-0.42.2.tar.xz) = 652984 +TIMESTAMP = 1734968983 +SHA256 (pixman-0.44.2.tar.xz) = 50baf820dde0c5ff9714d03d2df4970f606a3d3b1024f5404c0398a9821cc4b0 +SIZE (pixman-0.44.2.tar.xz) = 650012 diff --git a/x11/pixman/files/patch-pixman_pixman-arm-simd-asm.S b/x11/pixman/files/patch-pixman_pixman-arm-simd-asm.S deleted file mode 100644 index be8be516ba3e..000000000000 --- a/x11/pixman/files/patch-pixman_pixman-arm-simd-asm.S +++ /dev/null @@ -1,84 +0,0 @@ ---- pixman/pixman-arm-simd-asm.S.orig 2024-10-18 09:27:57 UTC -+++ pixman/pixman-arm-simd-asm.S -@@ -818,13 +818,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 -@@ -835,21 +835,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 -@@ -1065,9 +1065,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 */ -@@ -1077,13 +1077,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 diff --git a/x11/pixman/files/patch-pixman_pixman-ppc.c b/x11/pixman/files/patch-pixman_pixman-ppc.c deleted file mode 100644 index 573cb71e822d..000000000000 --- a/x11/pixman/files/patch-pixman_pixman-ppc.c +++ /dev/null @@ -1,27 +0,0 @@ ---- pixman/pixman-ppc.c.orig 2020-08-29 23:32:58 UTC -+++ pixman/pixman-ppc.c -@@ -68,6 +68,24 @@ pixman_have_vmx (void) - return have_vmx; - } - -+#elif defined (__FreeBSD__) -+#include <machine/cpu.h> -+#include <sys/auxv.h> -+ -+static pixman_bool_t -+pixman_have_vmx (void) -+{ -+ -+ unsigned long cpufeatures; -+ int have_vmx; -+ -+ if (elf_aux_info(AT_HWCAP, &cpufeatures, sizeof(cpufeatures))) -+ return FALSE; -+ -+ have_vmx = cpufeatures & PPC_FEATURE_HAS_ALTIVEC; -+ return have_vmx; -+} -+ - #elif defined (__linux__) - - #include <sys/types.h> diff --git a/x11/pixman/files/patch-test_meson.build b/x11/pixman/files/patch-test_meson.build new file mode 100644 index 000000000000..b7b3829b3ac7 --- /dev/null +++ b/x11/pixman/files/patch-test_meson.build @@ -0,0 +1,13 @@ +--- test/meson.build.orig 2024-12-03 03:51:09 UTC ++++ test/meson.build +@@ -75,8 +75,8 @@ foreach t : tests + [t + '.c', config_h], + dependencies : [idep_pixman, libtestutils_dep, dep_threads, dep_openmp, dep_png], + ), +- timeout : 120, +- is_parallel : true, ++ timeout : 600, ++ is_parallel : get_option('openmp').disabled(), + ) + endforeach + diff --git a/x11/pixman/pkg-descr b/x11/pixman/pkg-descr index eedad110b605..71157a484e56 100644 --- a/x11/pixman/pkg-descr +++ b/x11/pixman/pkg-descr @@ -1 +1,2 @@ -This package contains the pixman library. +Pixman is a library that provides low-level pixel manipulation +features such as image compositing and trapezoid rasterization. diff --git a/x11/pixman/pkg-plist b/x11/pixman/pkg-plist index 89d6b50037a8..5a7c24902b4b 100644 --- a/x11/pixman/pkg-plist +++ b/x11/pixman/pkg-plist @@ -1,7 +1,6 @@ include/pixman-1/pixman-version.h include/pixman-1/pixman.h -lib/libpixman-1.a lib/libpixman-1.so lib/libpixman-1.so.0 -lib/libpixman-1.so.0.42.2 +lib/libpixman-1.so.0.44.2 libdata/pkgconfig/pixman-1.pc
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202501071035.507AZd70066982>