head 1.21; access; symbols pkgsrc-2023Q4:1.21.0.4 pkgsrc-2023Q4-base:1.21 pkgsrc-2023Q3:1.21.0.2 pkgsrc-2023Q3-base:1.21 pkgsrc-2023Q2:1.19.0.6 pkgsrc-2023Q2-base:1.19 pkgsrc-2023Q1:1.19.0.4 pkgsrc-2023Q1-base:1.19 pkgsrc-2022Q4:1.19.0.2 pkgsrc-2022Q4-base:1.19 pkgsrc-2022Q3:1.17.0.4 pkgsrc-2022Q3-base:1.17 pkgsrc-2022Q2:1.17.0.2 pkgsrc-2022Q2-base:1.17 pkgsrc-2022Q1:1.16.0.4 pkgsrc-2022Q1-base:1.16 pkgsrc-2021Q4:1.16.0.2 pkgsrc-2021Q4-base:1.16 pkgsrc-2021Q3:1.15.0.2 pkgsrc-2021Q3-base:1.15 pkgsrc-2021Q2:1.14.0.12 pkgsrc-2021Q2-base:1.14 pkgsrc-2021Q1:1.14.0.10 pkgsrc-2021Q1-base:1.14 pkgsrc-2020Q4:1.14.0.8 pkgsrc-2020Q4-base:1.14 pkgsrc-2020Q3:1.14.0.6 pkgsrc-2020Q3-base:1.14 pkgsrc-2020Q2:1.14.0.4 pkgsrc-2020Q2-base:1.14 pkgsrc-2020Q1:1.14.0.2 pkgsrc-2020Q1-base:1.14 pkgsrc-2019Q4:1.12.0.10 pkgsrc-2019Q4-base:1.12 pkgsrc-2019Q3:1.12.0.6 pkgsrc-2019Q3-base:1.12 pkgsrc-2019Q2:1.12.0.4 pkgsrc-2019Q2-base:1.12 pkgsrc-2019Q1:1.12.0.2 pkgsrc-2019Q1-base:1.12 pkgsrc-2018Q4:1.11.0.2 pkgsrc-2018Q4-base:1.11 pkgsrc-2018Q3:1.10.0.6 pkgsrc-2018Q3-base:1.10 pkgsrc-2018Q2:1.10.0.4 pkgsrc-2018Q2-base:1.10 pkgsrc-2018Q1:1.10.0.2 pkgsrc-2018Q1-base:1.10 pkgsrc-2017Q4:1.8.0.14 pkgsrc-2017Q4-base:1.8 pkgsrc-2017Q3:1.8.0.12 pkgsrc-2017Q3-base:1.8 pkgsrc-2017Q2:1.8.0.8 pkgsrc-2017Q2-base:1.8 pkgsrc-2017Q1:1.8.0.6 pkgsrc-2017Q1-base:1.8 pkgsrc-2016Q4:1.8.0.4 pkgsrc-2016Q4-base:1.8 pkgsrc-2016Q3:1.8.0.2 pkgsrc-2016Q3-base:1.8 pkgsrc-2016Q2:1.6.0.2 pkgsrc-2016Q2-base:1.6 pkgsrc-2016Q1:1.4.0.4 pkgsrc-2016Q1-base:1.4 pkgsrc-2015Q4:1.4.0.2 pkgsrc-2015Q4-base:1.4 pkgsrc-2015Q3:1.2.0.2 pkgsrc-2015Q3-base:1.2 pkgsrc-2015Q2:1.1.0.2 pkgsrc-2015Q2-base:1.1; locks; strict; comment @# @; 1.21 date 2023.06.28.01.34.36; author riastradh; state Exp; branches; next 1.20; commitid I9bnCyvTs9L9zEuE; 1.20 date 2023.06.27.10.36.21; author riastradh; state Exp; branches; next 1.19; commitid q7FY9dzU0xB0BzuE; 1.19 date 2022.12.08.23.35.48; author wiz; state Exp; branches; next 1.18; commitid NeCKFOh65LaYmO4E; 1.18 date 2022.10.18.17.47.18; author wiz; state Exp; branches; next 1.17; commitid ligsAqHb2EEZ4eYD; 1.17 date 2022.04.10.08.53.17; author nia; state Exp; branches; next 1.16; commitid kuN2kie7HZHrgDzD; 1.16 date 2021.12.01.13.01.16; author nia; state Exp; branches; next 1.15; commitid PbNootGYuD3tOWiD; 1.15 date 2021.08.21.19.22.12; author mcf; state Exp; branches; next 1.14; commitid dskQbtk9PmFG0S5D; 1.14 date 2020.02.23.22.47.47; author tnn; state Exp; branches; next 1.13; commitid 5y6jVLYLrZxZQQXB; 1.13 date 2020.01.18.23.35.54; author rillig; state Exp; branches; next 1.12; commitid shGUwZfkr7sleeTB; 1.12 date 2019.01.04.12.49.34; author tnn; state Exp; branches; next 1.11; commitid TvDrYbmQ4Xf3Ts6B; 1.11 date 2018.12.07.00.15.46; author sevan; state Exp; branches; next 1.10; commitid DpXjcwHBM4ydCN2B; 1.10 date 2018.03.07.11.57.38; author wiz; state Exp; branches; next 1.9; commitid i1zssNVcYN02lwtA; 1.9 date 2018.02.27.08.16.03; author wiz; state Exp; branches; next 1.8; commitid 7WXDzlE2H860ntsA; 1.8 date 2016.08.24.07.18.54; author tnn; state Exp; branches; next 1.7; commitid KjDzoWNgwP8wNwjz; 1.7 date 2016.08.24.07.16.22; author tnn; state Exp; branches; next 1.6; commitid W8DIHEUvTEc2Mwjz; 1.6 date 2016.05.04.02.54.46; author tnn; state Exp; branches; next 1.5; commitid BULwHxAJA5p0W65z; 1.5 date 2016.05.04.02.43.31; author tnn; state Exp; branches; next 1.4; commitid 5LJ3b7CIiGDXR65z; 1.4 date 2015.09.24.23.57.27; author tnn; state Exp; branches; next 1.3; commitid Mk4BUoH5qgcn5zCy; 1.3 date 2015.09.24.23.34.16; author tnn; state Exp; branches; next 1.2; commitid zL6TDLlWHFtSVyCy; 1.2 date 2015.09.16.18.38.34; author jperkin; state Exp; branches; next 1.1; commitid 6NwjsTcuX1e7AvBy; 1.1 date 2015.04.29.14.31.42; author tnn; state Exp; branches; next ; commitid XIQ1Qtlx2l1AIujy; desc @@ 1.21 log @x11/libxshmfence: Detect max page size correctly. For cross-builds, whatever sysctl answers is wrong -- and even for native builds, it may be wrong, because on some architectures with common binary packages, the page size may vary from machine to machine. So use MAX_PAGE_SIZE if available, or PAGE_SIZE if not, from machine/vmparam.h instead. XXX Should probably also use COHERENCY_UNIT for cache line alignment, not hard-coded 128. @ text @# $NetBSD: Makefile,v 1.20 2023/06/27 10:36:21 riastradh Exp $ DISTNAME= libxshmfence-1.3.2 PKGREVISION= 1 CATEGORIES= x11 MASTER_SITES= ${MASTER_SITE_XORG:=lib/} EXTRACT_SUFX= .tar.xz MAINTAINER= pkgsrc-users@@NetBSD.org HOMEPAGE= https://xorg.freedesktop.org/ COMMENT= Shared memory 'SyncFence' synchronization primitive LICENSE= mit GNU_CONFIGURE= yes TEST_TARGET= check USE_LIBTOOL= yes USE_TOOLS+= pkg-config autoconf automake autoreconf PKGCONFIG_OVERRIDE+= xshmfence.pc.in .include "../../mk/bsd.prefs.mk" .if ${OPSYS} == "NetBSD" CONFIGURE_ARGS+= --disable-futex CONFIGURE_ARGS+= --enable-semaphore .endif post-extract: cp ${FILESDIR}/xshmfence_semaphore.[ch] ${WRKSRC}/src pre-configure: cd ${WRKSRC} && autoreconf -vif TOOL_DEPENDS+= xorg-util-macros>=0:../../devel/xorg-util-macros .include "../../mk/pthread.buildlink3.mk" X11_LIB_NAME?= libxshmfence .include "../../meta-pkgs/modular-xorg/avoid-duplicate.mk" .include "../../x11/xorgproto/buildlink3.mk" .include "../../mk/bsd.pkg.mk" @ 1.20 log @x11/libxshmfence: TOOL_DEPENDS, not buildlink3, on xorg-util-macros. Likely need the same for everything that uses xorg-util-macros -- it's needed for running autoconf, not for linking build products against. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.19 2022/12/08 23:35:48 wiz Exp $ d4 1 a25 2 LIBXSHM_PAGESIZE!= /sbin/sysctl -n hw.pagesize CPPFLAGS+= -DLIBXSHM_PAGESIZE=${LIBXSHM_PAGESIZE} @ 1.19 log @libxshmfence: update to 1.3.2. Matt Turner (2): configure: Use AC_SYS_LARGEFILE to enable large file support libxshmfence 1.3.2 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.18 2022/10/18 17:47:18 wiz Exp $ d35 2 a37 1 .include "../../devel/xorg-util-macros/buildlink3.mk" @ 1.18 log @libxshmfence: update to 1.3.1. Alan Coopersmith (6): Update README for gitlab migration Update configure.ac bug URL for gitlab migration Build xz tarballs instead of bzip2 Fix spelling/wording issues gitlab CI: add a basic build test libxshmfence 1.3.1 Jan Beich (2): alloc: prefer atomic close-on-exec without O_TMPFILE as well alloc: prefer SHM_ANON on FreeBSD a la memfd_create @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.17 2022/04/10 08:53:17 nia Exp $ d3 1 a3 1 DISTNAME= libxshmfence-1.3.1 @ 1.17 log @x11: adapt to new avoid-duplicate.mk usage @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.16 2021/12/01 13:01:16 nia Exp $ d3 1 a3 2 DISTNAME= libxshmfence-1.3 PKGREVISION= 3 d6 1 a6 1 EXTRACT_SUFX= .tar.bz2 @ 1.16 log @x11: Add avoid-duplicate.mk to Xorg library packages @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.15 2021/08/21 19:22:12 mcf Exp $ d38 1 a38 1 X11_BUILTIN_NAME?= libxshmfence @ 1.15 log @libxshmfence: fix futex detection on Linux A copy-paste error in the configure patch adding POSIX named semaphore support caused futex to be disabled when --{enable,disable}-semaphore was not passed (i.e. on all non-NetBSD platforms). This caused libxshmfence to fallback to pthread fences on Linux. The X server and client applications need to use the same fence implementation in order for DRI3 fences to work. If a GL client is linked with a different libxshmfence built with futex support (which is the usual case on Linux) while the server uses libxshmfence with pthread, the client will hang while awaiting a fence when allocating a buffer. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.14 2020/02/23 22:47:47 tnn Exp $ d38 2 @ 1.14 log @libxshmfence: improve performance of semaphore backend. Bump rev. It used more locking that necessary. We only need two semaphores. One to tell waiters to wake up and one to let the last waiter that wakes up notify xshmfence_trigger() it may now return. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.13 2020/01/18 23:35:54 rillig Exp $ d4 1 a4 1 PKGREVISION= 2 @ 1.13 log @all: migrate several HOMEPAGEs to https pkglint --only "https instead of http" -r -F With manual adjustments afterwards since pkglint 19.4.4 fixed a few indentations in unrelated lines. This mainly affects projects hosted at SourceForce, as well as freedesktop.org, CTAN and GNU. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.12 2019/01/04 12:49:34 tnn Exp $ d4 1 a4 1 PKGREVISION= 1 @ 1.12 log @libxshmfence: fix MASTER_SITE @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.11 2018/12/07 00:15:46 sevan Exp $ d10 1 a10 1 HOMEPAGE= http://xorg.freedesktop.org/ @ 1.11 log @Need pthread support, make sure a substitue is present if OS lacks support natively, e.g Minix at present. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.10 2018/03/07 11:57:38 wiz Exp $ d6 1 a6 1 MASTER_SITES= http://xorg.freedesktop.org/archive/individual/lib/ @ 1.10 log @xorgproto: use xorgproto instead of separate *proto packages Remove now obsolete packages. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.9 2018/02/27 08:16:03 wiz Exp $ d36 1 @ 1.9 log @libxshmfence: update to 1.3. Adam Jackson (2): configure: Nerf a thing Revert "configure: Nerf a thing" Emil Velikov (1): autogen.sh: use quoted string variables Matt Turner (1): libxshmfence 1.3 Michał Górny (1): Fix missing include for HAVE_UMTX branch of futex Mihail Konev (1): autogen: add default patch prefix Peter Hutterer (1): autogen.sh: use exec instead of waiting for configure to finish Ross Burton (1): configure.ac: call AC_USE_SYSTEM_EXTENSIONS @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.8 2016/08/24 07:18:54 tnn Exp $ d4 1 d37 1 a37 1 .include "../../x11/xproto/buildlink3.mk" @ 1.8 log @add TEST_TARGET @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.7 2016/08/24 07:16:22 tnn Exp $ d3 1 a3 2 DISTNAME= libxshmfence-1.2 PKGREVISION= 5 @ 1.7 log @Change an sprintf to snprintf in attempt to appease stack protector. No functional change; the buffer is large enough. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.6 2016/05/04 02:54:46 tnn Exp $ d15 1 @ 1.6 log @fix copy/paste mis in previous @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.5 2016/05/04 02:43:31 tnn Exp $ d4 1 a4 1 PKGREVISION= 4 @ 1.5 log @avoid using mktemp since it triggers warnings Bump rev. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.4 2015/09/24 23:57:27 tnn Exp $ d4 1 a4 1 PKGREVISION= 3 @ 1.4 log @add a refcnt and do sem_unlink() when it drops to 0. Bump PKGREVISION. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.3 2015/09/24 23:34:16 tnn Exp $ d4 1 a4 1 PKGREVISION= 2 @ 1.3 log @Add makeshift NetBSD support using POSIX semaphores. Not upstreamed because I think NetBSD should be given the chance to implement some better interprocess synchronization primitives first. See PR lib/49529. In particular what's missing is an interprocess sync primitive that can: 1) be passed safely through MAP_SHARED memory 2) support atomic unlock-and-block (like pthread_cond_wait) 3) wake up all waiters at once @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.2 2015/09/16 18:38:34 jperkin Exp $ d4 1 a4 1 PKGREVISION= 1 @ 1.2 log @Add SunOS to ONLY_FOR_PLATFORM, builds fine. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.1 2015/04/29 14:31:42 tnn Exp $ d4 1 d16 1 a16 1 USE_TOOLS+= pkg-config d20 1 a20 3 # Needs additional pthread functions or alternative synchronization # implementation on NetBSD. See PR lib/49529. # (On FreeBSD, umtx is used.) d22 6 a27 1 ONLY_FOR_PLATFORM+= Linux-*-* FreeBSD-*-* SunOS-*-* d29 7 @ 1.1 log @Import libxshmfence-1.2 from pkgsrc-wip as x11/libxshmfence. (needed to build DRI3 support in MesaLib and modular-xorg-server on Linux) This library offers a CPU-based synchronization primitive compatible with the X SyncFence objects that can be shared between processes using file descriptor passing. There are three underlying implementations: 1) On Linux, the library uses futexes 2) On FreeBSD, the library uses umtx 3) On other systems, the library uses posix mutexes and condition variables. @ text @d1 1 a1 1 # $NetBSD$ d23 1 a23 1 ONLY_FOR_PLATFORM+= Linux-*-* FreeBSD-*-* @