head	1.19;
access;
symbols
	pkgsrc-2026Q1:1.19.0.2
	pkgsrc-2026Q1-base:1.19
	pkgsrc-2025Q4:1.18.0.4
	pkgsrc-2025Q4-base:1.18
	pkgsrc-2025Q3:1.18.0.2
	pkgsrc-2025Q3-base:1.18
	pkgsrc-2025Q2:1.17.0.4
	pkgsrc-2025Q2-base:1.17
	pkgsrc-2025Q1:1.17.0.2
	pkgsrc-2025Q1-base:1.17
	pkgsrc-2024Q4:1.16.0.8
	pkgsrc-2024Q4-base:1.16
	pkgsrc-2024Q3:1.16.0.6
	pkgsrc-2024Q3-base:1.16
	pkgsrc-2024Q2:1.16.0.4
	pkgsrc-2024Q2-base:1.16
	pkgsrc-2024Q1:1.16.0.2
	pkgsrc-2024Q1-base:1.16
	pkgsrc-2023Q4:1.15.0.8
	pkgsrc-2023Q4-base:1.15
	pkgsrc-2023Q3:1.15.0.6
	pkgsrc-2023Q3-base:1.15
	pkgsrc-2023Q2:1.15.0.4
	pkgsrc-2023Q2-base:1.15
	pkgsrc-2023Q1:1.15.0.2
	pkgsrc-2023Q1-base:1.15
	pkgsrc-2022Q4:1.14.0.20
	pkgsrc-2022Q4-base:1.14
	pkgsrc-2022Q3:1.14.0.18
	pkgsrc-2022Q3-base:1.14
	pkgsrc-2022Q2:1.14.0.16
	pkgsrc-2022Q2-base:1.14
	pkgsrc-2022Q1:1.14.0.14
	pkgsrc-2022Q1-base:1.14
	pkgsrc-2021Q4:1.14.0.12
	pkgsrc-2021Q4-base:1.14
	pkgsrc-2021Q3:1.14.0.10
	pkgsrc-2021Q3-base:1.14
	pkgsrc-2021Q2:1.14.0.8
	pkgsrc-2021Q2-base:1.14
	pkgsrc-2021Q1:1.14.0.6
	pkgsrc-2021Q1-base:1.14
	pkgsrc-2020Q4:1.14.0.4
	pkgsrc-2020Q4-base:1.14
	pkgsrc-2020Q3:1.14.0.2
	pkgsrc-2020Q3-base:1.14
	pkgsrc-2020Q2:1.13.0.2
	pkgsrc-2020Q2-base:1.13
	pkgsrc-2020Q1:1.12.0.10
	pkgsrc-2020Q1-base:1.12
	pkgsrc-2019Q4:1.12.0.12
	pkgsrc-2019Q4-base:1.12
	pkgsrc-2019Q3:1.12.0.8
	pkgsrc-2019Q3-base:1.12
	pkgsrc-2019Q2:1.12.0.6
	pkgsrc-2019Q2-base:1.12
	pkgsrc-2019Q1:1.12.0.4
	pkgsrc-2019Q1-base:1.12
	pkgsrc-2018Q4:1.12.0.2
	pkgsrc-2018Q4-base:1.12
	pkgsrc-2018Q3:1.11.0.30
	pkgsrc-2018Q3-base:1.11
	pkgsrc-2018Q2:1.11.0.28
	pkgsrc-2018Q2-base:1.11
	pkgsrc-2018Q1:1.11.0.26
	pkgsrc-2018Q1-base:1.11
	pkgsrc-2017Q4:1.11.0.24
	pkgsrc-2017Q4-base:1.11
	pkgsrc-2017Q3:1.11.0.22
	pkgsrc-2017Q3-base:1.11
	pkgsrc-2017Q2:1.11.0.18
	pkgsrc-2017Q2-base:1.11
	pkgsrc-2017Q1:1.11.0.16
	pkgsrc-2017Q1-base:1.11
	pkgsrc-2016Q4:1.11.0.14
	pkgsrc-2016Q4-base:1.11
	pkgsrc-2016Q3:1.11.0.12
	pkgsrc-2016Q3-base:1.11
	pkgsrc-2016Q2:1.11.0.10
	pkgsrc-2016Q2-base:1.11
	pkgsrc-2016Q1:1.11.0.8
	pkgsrc-2016Q1-base:1.11
	pkgsrc-2015Q4:1.11.0.6
	pkgsrc-2015Q4-base:1.11
	pkgsrc-2015Q3:1.11.0.4
	pkgsrc-2015Q3-base:1.11
	pkgsrc-2015Q2:1.11.0.2
	pkgsrc-2015Q2-base:1.11
	pkgsrc-2015Q1:1.10.0.2
	pkgsrc-2015Q1-base:1.10
	pkgsrc-2014Q4:1.9.0.2
	pkgsrc-2014Q4-base:1.9
	pkgsrc-2014Q3:1.8.0.6
	pkgsrc-2014Q3-base:1.8
	pkgsrc-2014Q2:1.8.0.4
	pkgsrc-2014Q2-base:1.8
	pkgsrc-2014Q1:1.8.0.2
	pkgsrc-2014Q1-base:1.8
	pkgsrc-2013Q4:1.6.0.2
	pkgsrc-2013Q4-base:1.6
	pkgsrc-2013Q3:1.5.0.2
	pkgsrc-2013Q3-base:1.5
	pkgsrc-2013Q2:1.4.0.4
	pkgsrc-2013Q2-base:1.4
	pkgsrc-2013Q1:1.4.0.2
	pkgsrc-2013Q1-base:1.4
	pkgsrc-2012Q4:1.3.0.2
	pkgsrc-2012Q4-base:1.3;
locks; strict;
comment	@# @;


1.19
date	2026.02.16.08.20.13;	author wiz;	state Exp;
branches;
next	1.18;
commitid	14gOKTjsob0aPzuG;

1.18
date	2025.09.06.09.28.59;	author he;	state Exp;
branches;
next	1.17;
commitid	bs5G0yWDJQnmrD9G;

1.17
date	2025.03.03.20.29.27;	author wiz;	state Exp;
branches;
next	1.16;
commitid	jA9ydR42LZwJ6FLF;

1.16
date	2023.12.30.21.33.13;	author zafer;	state Exp;
branches;
next	1.15;
commitid	VMrHS0VuUu4EfxSE;

1.15
date	2023.02.27.21.58.18;	author wiz;	state Exp;
branches;
next	1.14;
commitid	Muill1EEfl43edfE;

1.14
date	2020.07.01.00.40.48;	author manu;	state Exp;
branches;
next	1.13;
commitid	vHLHxLBLQhHNmjeC;

1.13
date	2020.04.29.19.44.49;	author maya;	state Exp;
branches;
next	1.12;
commitid	6VuAvlWwa7XPIj6C;

1.12
date	2018.12.09.03.04.34;	author sevan;	state Exp;
branches;
next	1.11;
commitid	Ua1noKwOP0qbu43B;

1.11
date	2015.05.26.14.32.57;	author pettai;	state Exp;
branches;
next	1.10;
commitid	ALwwA1wEAcCRQXmy;

1.10
date	2015.01.04.02.53.44;	author dholland;	state Exp;
branches;
next	1.9;
commitid	cv4vbkWMseLjyE4y;

1.9
date	2014.11.10.20.59.39;	author pettai;	state Exp;
branches;
next	1.8;
commitid	7v2fSDukcefakGXx;

1.8
date	2014.03.09.19.16.37;	author pettai;	state Exp;
branches;
next	1.7;
commitid	dFej3EXWFi3ZE3sx;

1.7
date	2014.01.31.22.01.40;	author pettai;	state Exp;
branches;
next	1.6;
commitid	dwqw8kd3bjNdJjnx;

1.6
date	2013.12.05.13.30.39;	author pettai;	state Exp;
branches;
next	1.5;
commitid	HVG05Yh9P95DLWfx;

1.5
date	2013.09.14.06.47.12;	author pettai;	state Exp;
branches;
next	1.4;
commitid	83PQV3jSYsqPan5x;

1.4
date	2013.03.15.23.49.57;	author pettai;	state Exp;
branches;
next	1.3;

1.3
date	2012.11.13.23.21.33;	author pettai;	state Exp;
branches;
next	1.2;

1.2
date	2012.10.31.11.19.52;	author asau;	state Exp;
branches;
next	1.1;

1.1
date	2012.09.30.22.06.17;	author pettai;	state Exp;
branches;
next	;


desc
@@


1.19
log
@userspace-rcu: follow redirect
@
text
@# $NetBSD: Makefile,v 1.18 2025/09/06 09:28:59 he Exp $

DISTNAME=	userspace-rcu-0.15.3
CATEGORIES=	devel
MASTER_SITES=	https://lttng.org/files/urcu/
EXTRACT_SUFX=	.tar.bz2

MAINTAINER=	pkgsrc-users@@NetBSD.org
HOMEPAGE=	https://liburcu.org/
COMMENT=	Userspace RCU (Read Copy Update)
LICENSE=	gnu-lgpl-v2.1

GNU_CONFIGURE=		yes
USE_LIBTOOL=		yes
USE_TOOLS+=		gmake pkg-config bash:test
USE_LANGUAGES+=		c c++
USE_CXX_FEATURES+=	c++11
TEST_TARGET=		check

# liburcu requires thread local storage support; thus,
# only NetBSD-6 or later is supported.
NOT_FOR_PLATFORM=	NetBSD-[0-5].*-*

PKGCONFIG_OVERRIDE+=	liburcu-bp.pc.in
PKGCONFIG_OVERRIDE+=	liburcu-cds.pc.in
PKGCONFIG_OVERRIDE+=	liburcu-mb.pc.in
PKGCONFIG_OVERRIDE+=	liburcu-qsbr.pc.in
PKGCONFIG_OVERRIDE+=	liburcu-signal.pc.in
PKGCONFIG_OVERRIDE+=	liburcu.pc.in

.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
@


1.18
log
@devel/userspace-rcu: update to version 0.15.3.

This brings us closer to being able to build
BIND-current (BIND 9.21.11), otherwise liburcu-common
cannot be found.

Pkgsrc changes:
 * Add bash:test to USE_TOOLS
 * Use USE_LANGUAGES and USE_CXX_FEATURES for c and c++11 use.
 * Adapt patches
 * Recompute checksums

OK'ed by wiz@@

Upstream changes:

2025-05-14 Userspace RCU 0.15.3
	* Fix: Use bitfield static assert with GCC < 7.1.0
	* Fix: Allow compile-time checks for GCC 5.1

2025-04-14 Userspace RCU 0.15.2
	* fix: __atomic_always_lock_free() not a constant expression
          on g++ < 5.1
	* fix: urcu assert fallback for pre-C11 builds
	* doc: update uatomic-api for static assert
	* Add uatomic size static assert for 's390'
	* Add uatomic size static assert for 'sparc64'
	* Add uatomic size static assert for 'ppc'
	* Add uatomic size static assert for 'x86'
	* Add uatomic size static assert for 'generic'
	* Add uatomic size static assert
	* Use UATOMIC_HAS_ATOMIC_INT/LLONG in generic implementation
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for x86
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for tile
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for sparc64
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for s390
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for riscv
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for ppc
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for nios2
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for mips
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for m68k
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for loongarch
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for ia64
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for hppa
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for 'gcc' arch
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for arm
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for alpha
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for aarch64
	* Add UATOMIC_HAS_ATOMIC_INT/LLONG for atomic builtins
	* Add builtin atomics size static asserts
	* cleanup: use URCU_GCC_VERSION from compiler.h
	* fix: atomic builtins defines for type support
	* Move back CMM_LOAD/STORE_SHARED to volatile access
	* Add cmm_annotate_mem_acquire() to URCU_DEREFERENCE_USE_VOLATILE
          rcu_dereference
	* Use uatomic_load CMM_RELAXED in URCU_DEREFERENCE_USE_VOLATILE
	* Fix: Re-introduce URCU_DEREFERENCE_USE_VOLATILE read barrier
          depends for alpha
	* Tree-wide: Rename to uatomic_load/uatomic_store
	* src: Use __*__ for attribute names
	* API: Use __*__ for attribute names
	* Fix Changelog 0.15.1 date

2025-02-18 Userspace RCU 0.15.1
	* uatomic/generic: Add missing #include <stdlib.h>
	* docs: Clarify that make is required to build the project
	* fix: add missing SPDX headers to urcu/uatomic/api.h
	* compiler.h: Remove caa_unqual_scalar_typeof

2024-12-20 Userspace RCU 0.15.0
	* Fix compilation errors
	* Document cmm_cast_volatile
	* Honor URCU_DEREFERENCE_USE_VOLATILE
	* arm: Use atomic builtins for xchg if supported
	* Introduce _CMM_TOOLCHAIN_SUPPORT_C11_MM
	* Seperate uatomic and uatomic_mo
	* uatomic: Fix header guard comment
	* Fix: missing typename in URCU_FORCE_CAST
	* Allow building with GCC >= 13.3 on RISC-V
	* pointer.h: Fix the rcu_cmpxchg_pointer documentation
	* rculfhash: make cds_lfht_iter_get_node argument const
	* lfstack: make cds_lfs_empty argument const
	* wfcqueue: make cds_wfcq_empty arguments const
	* wfstack: make cds_wfs_empty argument const
	* cds_list: make cds_list_replace @@old argument const
	* cds_list: make cds_list_empty const
	* Adjust shell script to allow Bash in other locations
	* futex.h: Indent preprocessor directives
	* futex.h: Use urcu_posix_assert to validate unused values
	* Use futex on OpenBSD
	* fix: handle EINTR correctly in get_cpu_mask_from_sysfs
	* Relicense src/compat-smp.h to MIT
	* uatomic/x86: Remove redundant memory barriers
	* cleanup: move rand_r compat code to tests
	* ppc: Document cache line size choice
	* Fix: change order of _cds_lfht_new_with_alloc parameters
	* Add support for custom memory allocators for rculfhash
	* ppc.h: use mftb on ppc
	* rcutorture: Check histogram of ages
	* docs: Add links to project resources
	* Fix: allow clang to build liburcu on RISC-V
	* Fix -Walloc-size
	* cleanup: use an enum for the error states of nr_cpus_mask
	* fix: add missing SPDX licensing tags
	* urcu/uatomic/riscv: Mark RISC-V as broken
	* Fix: urcu-bp: misaligned reader accesses
	* rculfhash: Only pass integral types to atomic builtins
	* LoongArch: Document that byte and short atomics are implemented
          with LL/SC
	* Add LoongArch support
	* Tests: Add test for byte/short atomics on addresses which are
          not word-aligned
	* Complete removal of urcu-signal flavor
	* doc/examples: Remove urcu-signal example
	* tests/common: Remove urcu-signal common test files
	* tests/benchmark: Remove urcu-signal benchmark tests
	* tests/regression: Remove urcu-signal regression tests
	* tests/unit: Remove urcu-signal unit tests
	* Fix: Add missing cmm_smp_mb() in deprecated urcu-signal
	* urcu/uatomic.h: Improve verbosity of static assert error messages
	* urcu/compiler: Add urcu_static_assert
	* Phase 1 of deprecating liburcu-signal
	* uatomic/generic: Fix redundant declaration warning
	* tests: Add tests for checking race conditions
	* Add cmm_emit_legacy_smp_mb()
	* urcu/annotate: Add CMM annotation
	* tests/unit/test_build: Quiet unused return value
	* benchmark: Use uatomic for accessing global states
	* tests: Use uatomic for accessing global states
	* urcu-wait: Fix wait state load/store
	* Add CMM memory model
	* urcu/arch/generic: Use atomic builtins if configured
	* urcu/compiler: Use atomic builtins if configured
	* configure: Add --enable-compiler-atomic-builtins option
	* Fix: tests/rcutorture: Put thread offline on busy-wait
	* tests/regression/rcutorture: Use urcu-wait
	* tests/rcutorture: Factor out thread registration
	* tests/regression/rcutorture: Add wait state
	* urcu-wait: Initialize node in URCU_WAIT_NODE_INIT
	* Complete REUSE support
	* extras/abi: license data files under CC-1.0
	* examples: use SPDX identifiers
	* tests: use SPDX identifiers
	* src: use SPDX identifiers
	* Public headers: use SPDX identifiers
	* Build system: use SPDX identifiers
	* Fix: urcu-wait: add missing futex.h include
	* doc: update GCC baseline to 4.8
	* doc: update FreeBSD tested version
	* doc: Remove Solaris from tested platforms
	* Revert "compiler.h: Introduce caa_unqual_scalar_typeof"
	* rculfhash: Use caa_container_of_check_null in cds_lfht_entry
	* compiler.h: Introduce caa_container_of_check_null
	* compiler.h: Introduce caa_unqual_scalar_typeof
	* Avoid calling caa_container_of on NULL pointer in cds_lfht macros
	* Fix: revise urcu_read_lock_update() comment
	* Fix: uatomic powerpc comment about lwsync
	* fix: aarch64: allow RHEL7 gcc 4.8.5-11
	* aarch64: Implement caa_cpu_relax as yield instruction
	* fix: warning 'noreturn' function does return on ppc
	* Fix: use __noreturn__ for C11-compatibility
	* Adjust shell scripts to allow Bash in other locations
	* Add support for OpenBSD
	* Bump version to 0.15.0-pre

2023-02-14 Userspace RCU 0.14.0
	* Fix: urcu-bp: only teardown call-rcu worker in destructor
	* Fix: rculfhash: urcu_die() takes positive error value
	* Fix: call_rcu: teardown default call_rcu worker on application exit
	* Fix: join worker thread in call_rcu_data_free
	* Docs: clarify grace period polling API
	* Document grace period polling in rcu-api.md
	* Implement poll rcu stress test in rcutorture
	* urcu-memb,mb,signal: Implement grace period polling
	* Fix: auto-resize hash table destroy deadlock
	* Fix building on MSYS2
	* rculfhash: Include rculfhash-internal.h from local directory
	* Remove "Darwin" from "should also work on list"
	* Merge branch 'adah1972-improve-md'
	* Add semicolons at the end of function prototypes
	* Wrap a file name in backticks
	* Wrap command-line options in backticks
	* Fix a wrong format
	* Wrap URLs in angle brackets
	* Fix Markdown issues
	* Fix: Always check pthread_create for failures
	* Disable signals in URCU background threads
	* Fix: futex.h: include headers outside extern C
	* Fix: add missing unused attribute to _rcu_dereference
	* Fix: change method used by _rcu_dereference to strip type constness
	* Fix: remove type constness in URCU_FORCE_CAST's C++ version
	* Move extern "C" down in include/urcu/urcu-bp.h
	* fix: ifdef linux specific cpu count compat
	* Add unit tests for possible_cpus_array_len
	* fix: sysconf(_SC_NPROCESSORS_CONF) can be less than max cpu id
	* Fix: revise obsolete command in README.md
	* Fix: workqueue: remove unused variable "ret"
	* Fix: urcu-qsbr: futex wait: handle spurious futex wakeups
	* Fix: urcu: futex wait: handle spurious futex wakeups
	* Fix: urcu-wait: futex wait: handle spurious futex wakeups
	* Fix: defer_rcu: futex wait: handle spurious futex wakeups
	* Fix: call_rcu: futex wait: handle spurious futex wakeups
	* Fix: workqueue: futex wait: handle spurious futex wakeups
	* Fix: Use %lu rather than %ld to print count
	* Update ABI definition files
	* Bump version current and age
	* alpha: allocate membarrier system call number
	* Bump version to 0.14.0-pre
	* Improved test framework
	* rculfhash: introduce cds_lfht_node_init_deleted
	* Fix: changelog: v0.13.0 was released in 2021
	* cleanup: i386 arch detection
	* fix: properly detect 'cmpxchg' on x86-32
	* fix: use urcu-tls compat with c++ compiler
	* Fix typo
	* fix: remove autoconf features default value in help message
	* fix: add missing pkgconfig file for memb flavour lib
	* Cleanup: Tests: Remove useless pre-C99 compatibility code from tap.h
	* Document C99 and C++11 requirement in README.md
	* Always use '__thread' for Thread local storage except on MSVC
	* Fix: powerpc32: transparent unions alter calling convention
	* fix: don't use C++ thread_local on MacOs
	* wfcqueue API: implement overloaded wrappers with templates
	* wfcqueue: combine C++ API cds_wfcq_head_cast with overloading
	* wfstack C++ API: implement overloaded wrappers with templates
	* lfstack C++ API: implement overloaded wrappers with templates
	* wfstack: combine C++ API cds_wfs_stack_cast with overloading
	* lfstack: combine C++ API cds_lfs_stack_cast with overloading
	* fix: test_build tap plan
	* Test C++ build of list head init
	* Fix order of initializers in CDS_LIST_HEAD_INIT
	* unit tests: test wfcqueue, wfstack, lfstack empty check functions
          in C++
	* wfcqueue: implement C++ API based on function overloading
	* wfstack: implement C++ API based on function overloading
	* lfstack: implement C++ API based on function overloading
	* Fix tap.h: remove extra semicolon in pass/fail macros
	* Add C++ build tests
	* Build and run regression and unit tests as C++ programs
	* Add --enable-Werror configure switch
	* Add `urcu_posix_assert()` as `assert()` replacement
	* Rename `urcu_assert()` to `urcu_assert_debug()`
	* cleanup: spelling fixes in comments
	* Make temporary variable in _rcu_dereference non-const
	* (tls-ie2) Fix: x86 and s390: uatomic __hp() macro C++ support
	* Fix: x86 and s390: uatomic __hp() macro clang support
	* Fix: x86 and s390 uatomic: __hp() macro warning with gcc 11

2021-06-03 Userspace RCU 0.13.0
	* Document known ABI issue in README.md
	* Add serialized ABI definition files
	* bump SONAME major to 8
	* Remove all SONAME(6) ABI aliases
	* .gitignore: list ignored Makefiles
	* tests: Add a simple compile test for caa_get_cycles
	* fix: clock_gettime on macOs
	* Fix: rculist header: use parenthesis around macro parameters
	* Fix: rcuhlist header: use parenthesis around macro parameters
	* Fix: hlist header: use parenthesis around macro parameters
	* Fix: list.h: use parenthesis around macro parameters,
          caa_container_of()
	* Fix: hlist iteration relies on undefined behavior
	* Fix: use __atomic_load() rather than atomic load explicit
	* Fix: use atomic load memory_order_consume for rcu_dereference
          on C11/C++11
	* fix: we used weak symbols not weak aliases
	* fix: include 'sys/endian.h' on FreeBSD
	* fix: warnings on non-Linux platforms
	* fix: HAVE_SCHED_SETAFFINITY is not defined
	* configure: enable extended compiler warnings
	* cleanup: explicitly mark unused parameters (-Wunused-parameter)
	* fix: shadowed local variable (-Wshadow)
	* cleanup: all functions have declarations (-Wmissing-prototypes)
	* Import libtap from babeltrace
	* cleanup: add 'noreturn' attribute to '_uatomic_link_error'
	* fix: add missing 'S' to AC_CHECK_PROGS
	* README.md: Document supported Glibc version
	* README: cleanup stale MacOS information
	* Bump version to 0.13.0-pre
	* configure: standardise include path
	* Remove glibc < 2.4 compat code for sched_setaffinity
	* configure: regroup automake conditionals
	* Introduce AE_FEATURE to manage configure features
	* configure: regroup library checks
	* configure: regroup and expand C header and program checks
	* configure: regroup and expand C compiler checks
	* configure: host specific config
	* tests: Move tap-driver.sh out of the autotools aux directory
	* configure: Set autotools baseline
	* configure: centralize version information
	* fix: exclude clang from GCC version blacklists
	* aarch64: blacklist gcc prior to 5.1
	* Fix: configure: support Autoconf 2.70
	* Don't force a target and optimization level on ARMv7
	* Use DMB only on ARMv7
	* Blacklist GCC 4.4.0, 4.4.1 and 4.4.2 on ARM
	* Cleanup: Move ARM specific code to urcu/arch/arm.h
	* fix: bump tests thread limit to 4096
	* fix: reorder x86 arch detection
	* fix: typo in futex syscall define check
	* Compile time futex syscall detection
	* Static arch and uatomic headers
	* Add git-review config
	* cleanup: Improve wording of CONFIG_RCU_DEBUG description
	* fix: explicitly include urcu/config.h in files using CONFIG_RCU_
          defines
	* Fix typo in README.md
	* fix: add -lurcu-common to pkg-config libs for each flavor
	* call_rcu: Fix race between rcu_barrier() and call_rcu_data_free()
	* Cleanup: tls-compat.h: add parentheses around expression
          (coding style)
	* Fix: tls-compat.h exposes compiler-dependent public configuration
	* Fix: tap array subscript has type char warning
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.17 2025/03/03 20:29:27 wiz Exp $
d9 1
a9 1
HOMEPAGE=	http://lttng.org/urcu
@


1.17
log
@*: reset MAINTAINER
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.16 2023/12/30 21:33:13 zafer Exp $
d3 1
a3 1
DISTNAME=	userspace-rcu-0.12.1
d13 6
a18 3
GNU_CONFIGURE=	yes
USE_LIBTOOL=	yes
USE_TOOLS+=	gmake pkg-config
@


1.16
log
@https
@
text
@d1 1
a1 2
# $NetBSD: Makefile,v 1.15 2023/02/27 21:58:18 wiz Exp $
#
d8 1
a8 1
MAINTAINER=	pettai@@NetBSD.org
@


1.15
log
@userspace-rcu: fix pattern

NetBSD 10 is supposed to be supported
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2020/07/01 00:40:48 manu Exp $
d6 1
a6 1
MASTER_SITES=	http://lttng.org/files/urcu/
@


1.14
log
@Updated devel/userspaace-rcu to 0.12.1

Change since previous version in pkgsrc:

2020-04-22 Userspace RCU 0.12.1
	* Fix: tls-compat.h exposes compiler-dependent public configuration
	* Fix: tap array subscript has type char warning

2020-04-09 Userspace RCU 0.12.0
	* tls-compat.h: introduce DEFINE_URCU_TLS_INIT
	* Use _umtx_op for futex on FreeBSD
	* Add FreeBSD, DragonFly to syscall-compat.h
	* urcu-bp: perform thread registration on urcu_bp_register_thread
	* Require automake >= 1.12
	* cds_lfht_is_node_deleted parameter can be marked const
	* Fix: provide errno as argument to urcu_die()
	* Fix: rculfhash worker needs to unblock to SIGRCU
	* Cleanup: test_perthreadlock_timing: handle pthread mutex errors
	* Fix: SONAME bump to 6.1.0
	* Cleanup: remove unused variable from configure.ac check
	* Fix: urcu/futex.h: users of struct timespec should include time.h

2019-05-06 Userspace RCU 0.11.0
	* Bump library version to 6:0:1
	* Cleanup: update code layout to fix old gcc warning
	* Fix: typo CPPLAGS in examples Makefile
	* Harmonize pprint macro across projects
	* Check for TLS support after CC detection
	* Update macros from the autotools archive
	* tap-driver.sh: flush stdout after each test result
	* Update dead link in lgpl-relicensing.txt
	* Add multiflavor compat identifiers
	* Cleanup: missing sign compare fixes
	* Cleanup: enable signed/unsigned compare compiler warning
	* Cleanup: compiler warning on 32-bit architectures
	* config.h.in: rename CONFIG_RCU_MULTIFLAVOR to CONFIG_RCU_HAVE_MULTIFLAVOR
	* rculfhash: implement iterator debugging config option
	* Fix: examples silent rules on Solaris
	* Add missing fall through annotations
	* Fix: symbol aliases with TLS compat
	* Port: no symbols aliases on MacOS
	* Add -Wextra to CFLAGS
	* Add silent mode to examples Makefiles
	* doc: update examples to API changes
	* test multiflavor single compile unit
	* Update README following API changes
	* Use new header locations for includes from urcu code
	* Update call-rcu.h and defer.h comments and include guards
	* rculfqueue.h: do not include urcu-call-rcu.h
	* rculfhash: support use with multiple flavors per compile unit
	* rculfhash: do not include urcu-call-rcu.h from public API
	* Refactor liburcu to support many flavors per compile unit
	* Fix: only wait if work queue is empty in real-time mode
	* Fix: don't wait after completion of a work queue job batch
	* Fix: don't wait after completion of job batch if work queue is empty
	* Fix: workqueue: struct urcu_work vs rcu_head mixup
	* Cleanup: workqueue: update comments referring to call-rcu
	* Fix: mixup between URCU_WORKQUEUE_RT and URCU_CALL_RCU_RT
	* test_rwlock: Add per-thread count to verbose output
	* Add *.exe to gitignore for Cygwin
	* Fix: pthread_rwlock initialization on Cygwin
	* Fix: compat_futex_noasync on Cygwin
	* wfcqueue: allow defining CDS_WFCQ_WAIT_SLEEP to override `poll'
	* Update documentation for call_rcu before/after fork
	* Add support for the RISC-V architecture
	* Tests: Add tap-driver.sh for automake < 1.12
	* Tests: Replace prove by autotools tap runner
	* liburcu-bp: Use membarrier private expedited when available
	* liburcu: Use membarrier private expedited when available
	* rculfhash: improve error handling of mmap backend
	* Fix: don't use overlapping mmap mappings on Cygwin
	* Tests fix: errors in shell scripts
	* Revert "Use initial-exec tls model"
	* Use initial-exec tls model
	* Fix: don't use membarrier SHARED syscall command in liburcu-bp
	* Tests fix: add missing Cygwin thread id
	* Fix: assignment from incompatible pointer type warnings
	* Tests fix: unused variable warnings
	* Fix: add missing m68k headers to dist
	* Bump version to 0.11-pre

2017-06-12 Userspace RCU 0.10.0
	* Bump library soname due to urcu flavor structure change
	* Cleanup: use mutex_lock() wrapper in rculfhash
	* Use workqueue in rculfhash
	* Implement urcu workqueues internal API
	* Add support for m68k architecture
	* Set -Wall globally in AM_CFLAGS
	* Fix: remove double use of PTHREAD_CFLAGS
	* Re-add PTHREAD_CFLAGS to global CFLAGS
	* Fix: Don't override user variables within the build system
	* Add report at the end of configure
	* uatomic-api docs: use the third-person singular
	* Add --enable-rcu-debug to configure
	* ARM32: use dmb ish (inner shareable domain) for smp barriers
	* Cleanup: remove cmm_wmb() from rcu_xchg_pointer and rcu_cmpxchg_pointer
	* Fix: uatomic arm32: add missing release barrier before uatomic_xchg
	* Tests: Add verbose support to test script
	* Fix: add missing CONFIG_RCU_FORCE_SYS_MEMBARRIER to urcu/config.h.in
	* Allow forcing the use of sys membarrier
	* Fix: rcutorture: work-around signal issue on mac os x
	* Fix: rcutorture should register thread using call_rcu
	* Fix: add missing backslash in Makefile.am
	* Fix: Do not use wildcards in include/Makefile.am
	* Bump version to 0.10-pre
	* Fix: check for rand_r() in compat-rand.h
	* Fix: Move rand-compat to private src dir
	* Fix: remove AC_FUNC_MALLOC from configure.ac
	* Cleanup: Re-organise source dir
	* Cleanup: remove leftover manual pthread detection
	* Fix: update ax_pthread macro to handle newer clang
	* Update library current version due to adding destroy API
	* Fix: Use pthread_self to get threadid on OSX
	* Fix: examples: use destroy API for queues/stacks
	* Update library age due to new stack/queue destroy API
	* Fix: tests: invoke destroy APIs for queues/stacks
	* Fix: add missing destroy functions to queues/stack APIs
	* Fix: add missing __cds_wfcq_init for LGPL API
	* Fix: memory leak on hash table destroy
	* Fix: Add failover for platforms without nproc
	* Fix: use clock_get_time for caa_get_cycles fallback on MacOSX
	* Fix: syscall-compat.h MacOSX support
	* Fix: Add solaris-build.md to dist
	* rculfhash: Documentation: clarify need for grace period before "re-using"
	* Port: build shared libraries in Cygwin
	* Port: fix compatibility header for Cygwin
	* Add GNU Hurd support to syscall-compat.h
	* Add support for aarch64_be
	* Fix: urcu-bp: re-initialize list head on library exit
	* bootstrap: Standardize on autoreconf -vi
	* Harmonize bootstrap script across projects
	* Fix: examples make distcheck failure
	* wfcqueue: add C++ compatibility API
	* Fix: CDS_WFCQ_WOULDBLOCK typing for c++
	* Fix: configure.ac: check for possibly required libs for clock_gettime
	* Support for NIOS2 architecture
	* urcu_ref_get_safe: introduce new API
	* Fix: handle reference count overflow
	* Fix: compat_futex should work-around futex signal-restart kernel bug
	* Support for Xeon-Phi with newer MPSS
	* sparc64: allocate membarrier system call number
	* hppa: allocate membarrier system call number
	* Fix build on non-Linux Debian ports
	* Fix: urcu-signal: smp_mb_master() needs registry lock
	* Fix: rculfhash only needs to include urcu-pointers.h
	* Fix: out-of-tree benchmark/regtest
	* Fix: add missing regtest and benchmark files to dist tarball
	* Fix: add missing run.sh to benchmark makefile

2015-10-16 Userspace RCU 0.9.0
	* Bump soname major to 4
	* Cleanup: remove trailing tab
	* Fix: Use proper macro to detect stdbool.h
	* Configure: Add missing checks
	* Port: Add Solaris build instructions
	* Fix: regtest outputs valid TAP protocol
	* Port: Detect nproc bin name in benchmark scripts
	* Port: Add Solaris getcpu support
	* Port: Fixes to build system for portability
	* Port: Add Solaris support to tests/common/thread-id.h
	* Port: Add Solaris support to urcu/syscall-compat.h
	* Port: replace bzero() by memset()
	* Port: make bootstrap script work on most shell
	* tests: rcutorture: use parameters rather than random
	* Fix: only define membarrier system call on Linux
	* Refactor tests
	* Fix: cast caa_cycles_t to unsigned long long
	* caa_get_cycles: caa_ prefix for type, use CLOCK_MONOTONIC
	* Cleanup: remove trailing whitespaces at EOL
	* Cleanup: move generic caa_get_cycles to arch/generic.h
	* tile: allocate membarrier system call number
	* ia64: allocate membarrier system call number
	* aarch64: allocate membarrier system call number
	* powerpc64le: use "ppc" architecture
	* arm: allocate membarrier system call number
	* s390: allocate membarrier system call number
	* ppc: allocate membarrier system call number
	* lfstack: relax constraints on node re-use
	* Fix: format string signedness
	* Cleanup: tests: Branch condition evaluates to a garbage value
	* Fix: test: unchecked return value
	* Fix: test: side-effect in assertion
	* x86: allocate membarrier system call number
	* urcu-bp: use sys_membarrier when available
	* Cleanup: urcu: remove unused membarrier "group" parameter
	* urcu/ref.h: implement urcu_ref_get_unless_zero()
	* Fix: compat_futex: uninitialized ret variable
	* Fix: compat_futex_noasync: don't override return value
	* Fix: dynamic fallback to compat futex on sys_futex ENOSYS
	* Detect RCU read-side overflows
	* Detect RCU read-side underflows
	* Introduce urcu_assert and registration check
	* Fix: volatile in assert()
	* Update following changes to sys_membarrier ABI
	* uatomic: Specify complete types for atomic function calls
	* Cleanup: remove unused return value warning from tests
	* Fix: handle sys_futex() FUTEX_WAIT interrupted by signal
	* Fix: compat_futex.c: *uaddr should be read as volatile
	* Cleanup: cast poll delay return value to void
	* tests: Convert unit tests to TAP
	* Fix: make benchmark test run in oot build
	* Fix: call_rcu_thread() affinity failure
	* Cleanup: cast poll delay return value to void
	* Cleanup: cast poll delay return value to void
	* Cleanup: cast poll delay return value to void
	* Cleanup: cast poll delay return value to void
	* Cleanup: cast poll() return value to void for delays
	* urcu: fix deprecation warning with new glibc
	* urcu: add cds_list_for_each_entry_safe_from macro
	* Fix: deadlock when thread join is issued in read-side C.S.
	* Fix: rename RCU_DEBUG to DEBUG_RCU in urcu-qsbr.h
	* Cleanup some c99 pedantic warnings
	* Mark braced-groups within expressions with __extension__
	* Fix: compat_futex_noasync race condition
	* tests: Use stderr redirection for time output
	* Fix: use space after rpath for OS X ld
	* Fix: move transparent union attribute after union declaration for clang
	* Configure: add check for used type
	* Configure: add missing check of headers
	* Configure: add missing check for funcs: memset, strerror
	* Fix: documentation: urcu-pointer.h: s/rcu_dereference_pointer/rcu_dereference/
	* urcu-bp/urcu-qsbr: remove unneeded DEBUG_YIELD code
	* Fix: call rcu should call internal RCU API
	* Fix: silence gcc -Wextra warning
	* compiler: use __GNUC__ instead of the undefined __GNUC_MAJOR__
	* Fix: lfstack reversed empty/non-empty return value
	* lfstack: fix: add missing __cds_lfs_init
	* wfstack: add missing union parameters
	* Fix: preserve example files' timestamps when copying
	* wfstack: implement mutex-free wfstack with transparent union
	* wfcqueue: Implement mutex-free wfcqueue head with transparent union
	* lfstack: Implement mutex-free stack head with transparent union (v2)
	* rculfhash: remove duplicated code
	* rculfhash: handle pthread_create failures
	* rculfhash: fall back to single-threaded resize on calloc failure
	* x86: drop extra semi-colon in caa_cpu_relax
	* Cleanup: tests: cast console write return value as void
	* Modernize doc using Markdown
	* Fix: update automake following README to README.md change
	* Modernize README using Markdown
	* Fix: incorrect parenthesis in cds_hlist_for_each_entry_safe_2
	* Fix: Use after free in rcu_barrier()
	* Fix: rcu_barrier(): uninitialized futex field
	* call_rcu threads should clear their PAUSED flag when they unpause
	* test_urcu_fork: test many fork, with 3 children deep
	* Update list of supported architectures in README
	* Add support for hppa/PA-RISC architecture
	* Use autoconf AM_MAINTAINER_MODE
	* Use gcc atomics on aarch64/powerpc64le
	* Fix: move wait loop increment before first conditional block
	* Fix: high cpu usage in synchronize_rcu with long RCU read-side C.S.
	* Fix: out of tree build: doc/examples
	* Fix: out of tree build tests/common
	* tests/unit: use lib rather than source
	* automake: Rename INCLUDES to AM_CPPFLAGS (new name)
	* tests regressions: use lib rather than recompile from source
	* tests: use common lib rather than recompile compat sources
	* urcu tests: use lib rather than compile from source
	* urcu mb tests: use lib rather than recompile from source
	* urcu signal tests: use library rather than recompile source
	* tests: move yield debug to common test library
	* tests urcu bp: use lib rather than recompile source
	* test_urcu_defer: link on urcu lib rather than recompile source
	* tests/benchmark: use urcu qsbr lib rather than recompile from source
	* Pass the CC variable to the example Makefiles
	* Fix: urcu-bp interaction with threads vs constructors/destructors
	* x86 barrier for Xeon Phi: use rsp on x86-64
	* Set RCU_HAVE_FENCE to false on Intel Xeon Phi
	* Fix undefined NULL pointer arithmetic in hlist
	* Cleanup: Check for pthread in Libc
	* Cleanup: Android: Do not redefine gettid
	* Fix undefined NULL pointer arithmetic
	* Android: implement rand_r()
	* Android: do not redefine gettid on Android
	* Android: add a compat layer for 'syscall.h'
	* Android: do not link pthread on Android
	* Android: configure.ac Android check
	* Blacklist ARM gcc 4.8.0, 4.8.1, 4.8.2
	* rculfhash: document max_nr_buckets = 0
	* Library major version number (soname) increment to 3
	* Fix: tls-compat multi-lib conflict
	* Use cross compiler for doc examples
	* Add lttng-dev mailing list to readme
	* wfcqueue: remove misleading comment
	* gcc warning fixes: -Wsign-compare and -Wextra
	* Fix: urcu-qsbr: reversed logic on RCU_DEBUG
	* Fix: urcu-bp segfault in glibc pthread_kill()
	* Fix urcu-bp: don't move registry
	* Fix: compat futex duplicated lock and completion
	* Fix: i386 compat code duplicated mutex instances
	* Fix: urcu-bp: Bulletproof RCU arena resize bug
	* Fix: test_mutex.c uninitialized mutex
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2018/12/09 03:04:34 sevan Exp $
d20 1
a20 1
NOT_FOR_PLATFORM=	NetBSD-[0-5]*-*
@


1.13
log
@*: Remove logic for outdated NetBSD versions.
@
text
@d4 1
a4 1
DISTNAME=	userspace-rcu-0.8.7
d18 4
@


1.12
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.11 2015/05/26 14:32:57 pettai Exp $
a17 4
# liburcu requires thread local storage support; thus,
# only NetBSD-6 or later is supported.
NOT_FOR_PLATFORM=	NetBSD-[0-5]*-*

@


1.11
log
@2015-04-28 Userspace RCU 0.8.7
        * Fix: deadlock when thread join is issued in read-side C.S.
        * Fix: rename RCU_DEBUG to DEBUG_RCU in urcu-qsbr.h
        * Mark braced-groups within expressions with __extension__
        * Fix: compat_futex_noasync race condition
        * Fix: documentation: urcu-pointer.h: s/rcu_dereference_pointer/rcu_dereference/
        * Fix: call rcu should call internal RCU API
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2015/01/04 02:53:44 dholland Exp $
d29 1
@


1.10
log
@clarify comment
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2014/11/10 20:59:39 pettai Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.8.6
@


1.9
log
@2014-11-04 Userspace RCU 0.8.6
        * Fix: silence gcc -Wextra warning
        * compiler: use __GNUC__ instead of the undefined __GNUC_MAJOR__
        * Fix: lfstack reversed empty/non-empty return value
        * lfstack: fix: add missing __cds_lfs_init

2014-10-21 Userspace RCU 0.8.5
        * Fix: preserve example files' timestamps when copying
        * rculfhash: remove duplicated code
        * rculfhash: handle pthread_create failures
        * rculfhash: fall back to single-threaded resize on calloc failure
        * x86: drop extra semi-colon in caa_cpu_relax
        * Fix: Use after free in rcu_barrier()
        * Fix: rcu_barrier(): uninitialized futex field
        * call_rcu threads should clear their PAUSED flag when they unpause
        * Fix: bring back dummy rcu_bp_exit symbol
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2014/03/09 19:16:37 pettai Exp $
d18 2
a19 2
# liburcu requires TLS support, thus,
# only NetBSD-6 or later is supported
@


1.8
log
@2014-03-08 Userspace RCU 0.8.4
        * Fix: move wait loop increment before first conditional block

2014-03-01 Userspace RCU 0.8.3
        * Fix: high cpu usage in synchronize_rcu with long RCU read-side C.S.

2014-02-28 Userspace RCU 0.8.2
        * Fix: out of tree build: doc/examples
        * Fix: out of tree build tests/common
        * tests/unit: use lib rather than source
        * automake: Rename INCLUDES to AM_CPPFLAGS (new name)
        * tests regressions: use lib rather than recompile from source
        * tests: use common lib rather than recompile compat sources
        * urcu tests: use lib rather than compile from source
        * urcu mb tests: use lib rather than recompile from source
        * urcu signal tests: use library rather than recompile source
        * tests: move yield debug to common test library
        * tests urcu bp: use lib rather than recompile source
        * test_urcu_defer: link on urcu lib rather than recompile source
        * tests/benchmark: use urcu qsbr lib rather than recompile from source
        * Pass the CC variable to the example Makefiles
        * Fix: urcu-bp interaction with threads vs constructors/destructors
        * Fix undefined NULL pointer arithmetic
        * Blacklist ARM gcc 4.8.0, 4.8.1, 4.8.2
        * rculfhash: document max_nr_buckets = 0
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2014/01/31 22:01:40 pettai Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.8.4
@


1.7
log
@2013-11-12 Userspace RCU 0.8.1
        * tls-compat: fix comment typo
        * Keep ABI compatible with already compiled LGPL applications
        * Fix: tls-compat multi-lib conflict
        * Use cross compiler for doc examples
        * gcc warning fixes: -Wsign-compare and -Wextra
        * Fix: urcu-qsbr: reversed logic on RCU_DEBUG
        * Fix: urcu-bp segfault in glibc pthread_kill()
        * Fix urcu-bp: don't move registry
        * Fix: compat futex duplicated lock and completion
        * Fix: i386 compat code duplicated mutex instances
        * Fix: urcu-bp: Bulletproof RCU arena resize bug
        * Fix: test_mutex.c uninitialized mutex

2013-09-06 Userspace RCU 0.8.0
        * Fix: hash table growth (for small tables) should be limited
        * Introduce URCU_INLINE_SMALL_FUNCTIONS
        * urcu signal: remove assertion on exit
        * hlist/rcuhlist update
        * rcuhlist: make pointer stores atomic
        * hlist, rcuhlist: cleanup coding style
        * rculist: ensure atomic updates of next pointers
        * rculist: implement cds_list_add_tail_rcu
        * rculist.h and list.h style cleanup
        * example makefile: add missing cd ..
        * Fix: examples Makefile on FreeBSD
        * Implement thread-id.h wrapper
        * Fix: don't build examples in static builds
        * Add QSBR minimal example
        * compiler.h: implement CAA_ARRAY_SIZE()
        * rcu barrier: handle OOM die urcu_die
        * Implement rcu_barrier()
        * Add MIPS to README
        * Update README
        * Fix: membarrier fallback symbol conflict
        * Fix: Use a filled signal mask to disable all signals
        * urcu-bp: introduce struct urcu_gp
        * Fix: struct urcu_gp broke multiflavor
        * wfstack: return whether pop is popping the last element
        * wfcqueue: return whether dequeue is dequeuing last element
        * urcu: avoid false sharing for rcu_gp_ctr
        * urcu: make the code of urcu-qsbr as normal urcu
        * rculfhash: detect if resize/destroy are called within RCU read-side C.S.
        * fix: rculfhash don't change qsbr online state
        * Add rcu_read_ongoing() API to each urcu flavor
        * Add "sparc" host cpu to configure.ac
        * futex: include syscall.h instead of sys/syscall.h
        * Add tab to output in order to allow easy nesting of tables.
        * Remove urcu-api-list.sh from dist tarball
        * Add urcu-api-list.sh script
        * list: implement cds_list_for_each_safe()
        * Fix build on architectures with HAVE_SCHED_GETCPU but without HAVE_SYSCONF
        * clang: silence "unused expression result" warning
        * rculfhash: add assertions on node alignment
        * Fix configure checks for Tile
        * uatomic: style fix
        * README: reorganize
        * Add compilation support for the TileGX architecture
        * wfstack: add nonblocking to _LGPL_SOURCE API
        * Discourage use of pthread_atfork() for call_rcu handlers
        * Fix call_rcu fork handling
        * rculfhash: add cds_lfht_replace to the write operations in the comments
        * urcu: fix comments for cds_list_for_each_prev()
        * urcu: remove the wrong comma
        * wfstack: implement nonblocking pop and next
        * wfstack: update comments about cds_wfs_empty/first being wait-free
        * wfstack API: rename cds_wfs_first_blocking to cds_wfs_first
        * urcu-mb/signal/membarrier: batch concurrent synchronize_rcu()
        * urcu-wait: move queue management code into urcu-wait.h
        * urcu-wait: move wait code into separate file
        * urcu-qsbr: batch concurrent synchronize_rcu()
        * urcu-bp: move quiescent threads to separate list
        * urcu-mb/signal/membarrier: move quiescent threads to separate list
        * urcu-qsbr: move offline threads to separate list
        * urcu-bp: improve 2-phase wait scheme
        * urcu-mb/signal/membarrier: improve 2-phase wait scheme
        * urcu-qsbr: improve 2-phase wait scheme
        * wfcqueue: implement mutex-free splice
        * urcu-call-rcu: use wait-free splice return value
        * wfcqueue: enqueue and splice return queue state
        * Fix: wfcqueue nonblocking dequeue
        * wfcqueue: Fix lock and unlock functions
        * urcu-qsbr: skip Q.S. reporting if already reported
        * Cleanup: cast pthread_self() return value to unsigned long
        * Fallback mechanism not working on platform where TLS is unsupported
        * Revert "Fix: cross-build: configure.ac should use --target, not --host"
        * Fix: cross-build: configure.ac should use --target, not --host
        * Fix static linking: add missing static for _defer_rcu
        * Fix static linking: fix symbol name namespaces
        * Fix static linking: add missing static to thr_defer
        * Fix static linking: add missing static
        * deprecation: fix build with gcc < 4.5
        * Comment fix: update associated LGPL header name
        * Update cds-api.txt following API deprecations
        * Deprecate wfqueue
        * Deprecate rculfstack
        * wfcqueue: introduce nonblocking API
        * lfstack: implement lock-free stack
        * rculfhash: add missing extern
        * Cleanup: fix cppcheck errors
        * wfcqueue: remove ancient comment
        * wfcqueue: clarify locking usage
        * Add wfcqueue header to cds.h
        * Fix: urcu-bp, urcu, urcu-qsbr should include wfcqueue
        * call_rcu: remove head field alignement, explain wfcqueue motivation
        * Fix urcu-call-rcu-impl.h: false-sharing
        * call_rcu: use wfcqueue, eliminate false-sharing
        * wfcqueue: implement concurrency-efficient queue
        * Ensure that read-side functions meet 10-line LGPL criterion
        * urcu: add notice to URCU_TLS() for it is not strictly async-signal-safe
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2013/12/05 13:30:39 pettai Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.8.1
@


1.6
log
@2013-11-12 Userspace RCU 0.7.9
 * tls-compat: fix comment typo
 * Keep ABI compatible with already compiled LGPL applications
 * Fix: tls-compat multi-lib conflict
 * gcc warning fixes: -Wsign-compare and -Wextra
 * Fix: urcu-qsbr: reversed logic on RCU_DEBUG
 * Fix: urcu-bp segfault in glibc pthread_kill()
 * Fix urcu-bp: don't move registry
 * Fix: compat futex duplicated lock and completion
 * Fix: i386 compat code duplicated mutex instances
 * Fix: urcu-bp: Bulletproof RCU arena resize bug
 * Fix: test_mutex.c uninitialized mutex
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2013/09/14 06:47:12 pettai Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.7.9
@


1.5
log
@Userspace RCU 0.7.8
        * Fix: hash table growth (for small tables) should be limited
        * Document build work-around on MacOS X
        * Fix tests: use of uninitialized variables
        * tests: add missing unsigned long casts to pthread_self()

Userspace RCU 0.7.7
        * rculfhash: document destroy context limitation
        * Fix: Use a filled signal mask to disable all signals
        * Document: rculfhash destroy and resize side-effect in 0.7
        * Add "sparc" host cpu to configure.ac
        * Fix: tests/api.h use cpuset.h
        * Fix hurd-i386: move cpuset tests outside of sched_setaffinity conditional
        * Fix tests: finer-grained use of CPU_SET, CPU_ZERO and cpu_set_t
        * Test for CPU_SET
        * Fix build on architectures with HAVE_SCHED_GETCPU but without HAVE_SYSCONF
        * README: document that Clang 3.0 (based on LLVM 3.0) is supported
        * clang: silence "unused expression result" warning
        * rculfhash: add assertions on node alignment
        * uatomic: style fix
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2013/03/15 23:49:57 pettai Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.7.8
@


1.4
log
@Userspace RCU 0.7.6
* Discourage use of pthread_atfork() for call_rcu handlers
* Fix call_rcu fork handling
* test: fork handling
* Fix TLS detection: test with linker, add --disable-compiler-tls
* Cleanup: cast pthread_self() return value to unsigned long
* Fallback mechanism not working on platform where TLS is unsupported
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2012/11/13 23:21:33 pettai Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.7.6
@


1.3
log
@Userspace RCU 0.7.5
* 19cf3ae Fix: call_rcu list corruption on teardown
* Ensure that read-side functions meet 10-line LGPL criterion
* tls-compat.h: document sigaltstack(2) limitation
* urcu: add notice to URCU_TLS() for it is not strictly async-signal-safe
* Document sigaltstack(2) limitation
* Documentation: update LICENSE file

Userspace RCU 0.7.4
* rculfhash API documentation: document destroy RCU read-lock constraint
* Fix: rculfhash should be offline while waiting for resize to complete
* Add missing entry to gitignore
* urcu: move busy-wait code and name it ___cds_wfq_node_sync_next()
* urcu: fix compat_futex_noasync()
* urcu: add hint to DEFINE_URCU_TLS() for compound types
* Fix: CAA_BUILD_BUG_ON should refer to CAA_BUILD_BUG_ON_ZERO
* Add MIPS support
* Compatibility: remove bash-ismsm from test scripts
* Fix inappropriate lib behavior: don't call exit()
* Fix: re-enable compatibility with autoconf < 2.64
* Fix c99 compatibility: use __asm__ and __volatile__ in public headers
* Fix c99 compatibility: use __typeof__ instead of typeof in public headers
* warning fix: tests urcutorture for NetBSD 5
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2012/10/31 11:19:52 asau Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.7.5
@


1.2
log
@Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2012/09/30 22:06:17 pettai Exp $
d4 1
a4 1
DISTNAME=	userspace-rcu-0.7.3
@


1.1
log
@liburcu is a userspace RCU (read-copy-update) library. This data
synchronization library provides read-side access which scales linearly
with the number of cores. It does so by allowing multiples copies of a
given data structure to live at the same time, and by monitoring the
data structure accesses to detect grace periods after which memory
reclamation is possible.
@
text
@d1 1
a1 1
# $NetBSD$
a13 2
PKG_DESTDIR_SUPPORT=	user-destdir

@

