X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=README.md;h=58db299018deb07f36fbdd1bad863ed35f82b3e0;hb=546d9a117ef442847203e82f6b1bf6abd2d13b25;hp=a1a6227ef61b270f0b46cfa912b69f4d5a55efbd;hpb=0966bbf44b29d53f6dd32cdc7f357aa052262dbd;p=userspace-rcu.git diff --git a/README.md b/README.md index a1a6227..58db299 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,9 @@ + + Userspace RCU Implementation ============================ @@ -68,14 +74,15 @@ Should also work on: (more testing needed before claiming support for these OS). -Linux ARM depends on running a Linux kernel 2.6.15 or better, GCC 4.4 or -better. -The C compiler used needs to support at least C99. The C++ compiler used -needs to support at least C++11. +Toolchain support +----------------- -The GCC compiler versions 3.3, 3.4, 4.0, 4.1, 4.2, 4.3, 4.4 and 4.5 are -supported, with the following exceptions: +The C compiler used needs to support at least C99. The C++ compiler used needs +to support at least C++11. The oldest GCC version officialy supported and +tested is 4.8. + +Older GCC versions might still work with the following exceptions: - GCC 3.3 and 3.4 have a bug that prevents them from generating volatile accesses to offsets in a TLS structure on 32-bit x86. These versions are @@ -96,6 +103,10 @@ Clang version 3.0 (based on LLVM 3.0) is supported. Glibc >= 2.4 should work but the older version we test against is currently 2.17. + +Build system +------------ + For developers using the Git tree: This source tree is based on the autotools suite from GNU to simplify @@ -209,9 +220,10 @@ results in slower reads. 1. `#include ` 2. Link the application with `-lurcu-signal` -Version of the library that requires a signal, typically `SIGUSR1`. Can -be overridden with `-DSIGRCU` by modifying `Makefile.build.inc`. - +NOTE: The `liburcu-signal` flavor is *deprecated* and will be removed in the +future. It is now identical to `liburcu-mb` at the exception of the symbols and +public header files. It is therefore slower than previous versions. Users are +encouraged to migrate to the `liburcu-memb` flavor. ### Usage of `liburcu-bp` @@ -429,6 +441,10 @@ still being used to iterate on a hash table. This option alters the rculfhash ABI. Make sure to compile both library and application with matching configuration. +### Usage of `--enable-compiler-atomic-builtins` + +Building liburcu with `--enable-compiler-atomic-builtins` implements the uatomic +API with the compiler atomic builtins if supported. Make targets ------------