Userspace RCU library licensing Mathieu Desnoyers September 3, 2012 * LGPLv2.1 The library part is distributed under LGPLv2.1 or later. See lgpl-2.1.txt for license details. Refer to the individual file headers for details. LGPL-compatible source code can statically use the library header using : #define _LGPL_SOURCE #include <urcu.h> Dynamic-only linking with the LGPL library is used if _LGPL_SOURCE is not defined. It permits relinking with newer versions of the library, which is required by the LGPL license. See lgpl-relicensing.txt for details. * MIT-style license : xchg() primitive has been rewritten from scratch starting from atomic_ops 1.2 which has a MIT-style license that is intended to allow use in both free and proprietary software: http://www.hpl.hp.com/research/linux/atomic_ops/LICENSING.txt http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/ This MIT-style license (BSD like) apply to: uatomic/gcc.h uatomic/unknown.h uatomic/generic.h uatomic/sparc64.h uatomic/arm.h uatomic/ppc.h uatomic/x86.h uatomic.h MIT/X11 (BSD like) license apply to: compiler.h arch/s390.h uatomic/alpha.h uatomic/mips.h uatomic/nios2.h uatomic/s390.h system.h * GPLv2 Library test code is distributed under the GPLv2 license. See gpl-2.0.txt for license details. See headers of individual files under tests/ for details. * GPLv3 (or later) The following build-related macro is under GPLv3 (or later): m4/ax_tls.m4