4aba77615e4774adb1fa82292535a5b84fdc4b01
[urcu.git] / LICENSE
1 Userspace RCU library licensing
2 Mathieu Desnoyers
3 May 10, 2009
4
5
6 * LGPLv2.1
7
8 The library part is distributed under LGPLv2.1 or later. See lgpl-2.1.txt for
9 details. This applies to :
10
11 urcu.h
12 urcu.c
13 urcu-static.h
14 arch_x86.h
15 arch_ppc.h
16
17 LGPL-compatible source code can statically use the library header using :
18
19 #define _LGPL_SOURCE
20 #include <urcu.h>
21
22 Dynamic-only linking with the LGPL library is used if _LGPL_SOURCE is not
23 defined. It permits relinking with newer versions of the library, which is
24 required by the LGPL license.
25
26
27 * MIT-style license :
28
29 xchg() privimitive has been rewritten from scratch starting from atomic_ops 1.2
30 which has a MIT-style license that is intended to allow use in both free and
31 proprietary software:
32 http://www.hpl.hp.com/research/linux/atomic_ops/LICENSING.txt
33 http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
34
35 This license applies to :
36
37 arch_atomic_x86.h
38 arch_atomic_ppc.h
39
40
41 * GPLv2
42
43 Library test code is distributed under the GPLv2 license. See gpl-2.0.txt for
44 details. This applies to :
45
46 urcutorture.h
47 urcutorture.c
48 api_x86.h
49 api_ppc.h
50 test_urcu.c
51 test_urcu_yield.c
52 test_rwlock_timing.c
53 urcu-asm.c
54
55
56 Various details :
57
58 ACCESS_ONCE(), likely(), unlikely() and barrier() are considered trivial enough
59 that copyright does not apply to them. I (Mathieu Desnoyers) re-typed them from
60 scratch in a mail client just to prove it.
This page took 0.032416 seconds and 4 git commands to generate.