X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=README;h=00eaae9d05bea6aa4cfc2334c5681703384245cf;hp=ce498b939938868e06334e1e7d0aec87a5b5506f;hb=79efd9b350e07a499b3620ddde4860b8378fcf00;hpb=957be43f8bb6a9343de8f7dd3c3d5dffeadf7eaf diff --git a/README b/README index ce498b9..00eaae9 100644 --- a/README +++ b/README @@ -27,9 +27,11 @@ ARCHITECTURES SUPPORTED ----------------------- Currently, Linux x86 (i386, i486, i586, i686), x86 64-bit, PowerPC 32/64, -S390, S390x, ARM, Alpha, ia64 and Sparcv9 32/64 are supported. Tested on -Linux, FreeBSD 8.2/9.0, and Cygwin. Should also work on: Android, NetBSD 5, -OpenBSD, Darwin (more testing needed before claiming support for these OS). +S390, S390x, ARM 32/64, MIPS, Alpha, ia64, Sparcv9 32/64, Tilera, and +hppa/PA-RISC are supported. +Tested on Linux, FreeBSD 8.2/8.3/9.0/9.1/10.0 i386/amd64, and Cygwin. +Should also work on: Android, NetBSD 5, OpenBSD, Darwin (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. @@ -50,6 +52,13 @@ supported, with the following exceptions: Clang version 3.0 (based on LLVM 3.0) is supported. +Building on MacOS X (Darwin) requires a work-around for processor +detection: + # 32-bit + ./configure --build=i686-apple-darwin11 + # 64-bit + ./configure --build=x86_64-apple-darwin11 + For developers using the git tree: This source tree is based on the autotools suite from GNU to simplify @@ -93,6 +102,19 @@ Usage of all urcu libraries instead of inlines, so your application can link with the library. * Linking with one of the libraries below is always necessary even for LGPL and GPL applications. + * Define URCU_INLINE_SMALL_FUNCTIONS before including Userspace RCU + headers if you want Userspace RCU to inline small functions (10 + lines or less) into the application. It can be used by applications + distributed under any kind of license, and does *not* make the + application a derived work of Userspace RCU. + + Those small inlined functions are guaranteed to match the library + content as long as the library major version is unchanged. + Therefore, the application *must* be compiled with headers matching + the library major version number. Applications using + URCU_INLINE_SMALL_FUNCTIONS may be unable to use debugging + features of Userspace RCU without being recompiled. + Usage of liburcu @@ -296,3 +318,24 @@ SMP support ./configure --disable-smp-support theoretically yielding slightly better performance. + +MAKE TARGETS +------------ + +In addition to the usual "make check" target, Userspace RCU features +"make regtest" and "make bench" targets. + +make check: Short tests, meant to be run when rebuilding or porting + Userspace RCU. + +make regtest: Long (many hours) test, meant to be run when modifying + Userspace RCU or porting it to a new architecture or + operating system. + +make bench: Long (many hours) benchmarks. + +CONTACTS +-------- + +You can contact the maintainers on the following mailing list: +lttng-dev@lists.lttng.org