head 1.2; access; symbols pkgsrc-2023Q4:1.2.0.66 pkgsrc-2023Q4-base:1.2 pkgsrc-2023Q3:1.2.0.64 pkgsrc-2023Q3-base:1.2 pkgsrc-2023Q2:1.2.0.62 pkgsrc-2023Q2-base:1.2 pkgsrc-2023Q1:1.2.0.60 pkgsrc-2023Q1-base:1.2 pkgsrc-2022Q4:1.2.0.58 pkgsrc-2022Q4-base:1.2 pkgsrc-2022Q3:1.2.0.56 pkgsrc-2022Q3-base:1.2 pkgsrc-2022Q2:1.2.0.54 pkgsrc-2022Q2-base:1.2 pkgsrc-2022Q1:1.2.0.52 pkgsrc-2022Q1-base:1.2 pkgsrc-2021Q4:1.2.0.50 pkgsrc-2021Q4-base:1.2 pkgsrc-2021Q3:1.2.0.48 pkgsrc-2021Q3-base:1.2 pkgsrc-2021Q2:1.2.0.46 pkgsrc-2021Q2-base:1.2 pkgsrc-2021Q1:1.2.0.44 pkgsrc-2021Q1-base:1.2 pkgsrc-2020Q4:1.2.0.42 pkgsrc-2020Q4-base:1.2 pkgsrc-2020Q3:1.2.0.40 pkgsrc-2020Q3-base:1.2 pkgsrc-2020Q2:1.2.0.36 pkgsrc-2020Q2-base:1.2 pkgsrc-2020Q1:1.2.0.16 pkgsrc-2020Q1-base:1.2 pkgsrc-2019Q4:1.2.0.38 pkgsrc-2019Q4-base:1.2 pkgsrc-2019Q3:1.2.0.34 pkgsrc-2019Q3-base:1.2 pkgsrc-2019Q2:1.2.0.32 pkgsrc-2019Q2-base:1.2 pkgsrc-2019Q1:1.2.0.30 pkgsrc-2019Q1-base:1.2 pkgsrc-2018Q4:1.2.0.28 pkgsrc-2018Q4-base:1.2 pkgsrc-2018Q3:1.2.0.26 pkgsrc-2018Q3-base:1.2 pkgsrc-2018Q2:1.2.0.24 pkgsrc-2018Q2-base:1.2 pkgsrc-2018Q1:1.2.0.22 pkgsrc-2018Q1-base:1.2 pkgsrc-2017Q4:1.2.0.20 pkgsrc-2017Q4-base:1.2 pkgsrc-2017Q3:1.2.0.18 pkgsrc-2017Q3-base:1.2 pkgsrc-2017Q2:1.2.0.14 pkgsrc-2017Q2-base:1.2 pkgsrc-2017Q1:1.2.0.12 pkgsrc-2017Q1-base:1.2 pkgsrc-2016Q4:1.2.0.10 pkgsrc-2016Q4-base:1.2 pkgsrc-2016Q3:1.2.0.8 pkgsrc-2016Q3-base:1.2 pkgsrc-2016Q2:1.2.0.6 pkgsrc-2016Q2-base:1.2 pkgsrc-2016Q1:1.2.0.4 pkgsrc-2016Q1-base:1.2 pkgsrc-2015Q4:1.2.0.2 pkgsrc-2015Q4-base:1.2 pkgsrc-2015Q3:1.1.0.4 pkgsrc-2015Q3-base:1.1 pkgsrc-2015Q2:1.1.0.2 pkgsrc-2015Q2-base:1.1; locks; strict; comment @# @; 1.2 date 2015.09.24.23.34.16; author tnn; state Exp; branches; next 1.1; commitid zL6TDLlWHFtSVyCy; 1.1 date 2015.04.29.14.31.42; author tnn; state Exp; branches; next ; commitid XIQ1Qtlx2l1AIujy; desc @@ 1.2 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 @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 four underlying implementations: 1) On Linux, the library uses futexes 2) On FreeBSD, the library uses umtx 3) On NetBSD, the library uses POSIX semaphores (for now) 4) On other systems, the library uses posix mutexes and condition variables. @ 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 @d5 1 a5 1 There are three underlying implementations: d11 3 a13 1 3) On other systems, the library uses posix mutexes and condition @