X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=Makefile.am;h=2f81bce9b6a4196505225b5e26606ae25e7e8772;hp=e85c924e1ca499a4fafa3e1166249d5e389a88d2;hb=0e1efa0e8c7961fc3eca21d0268c07f44eb572e5;hpb=1b9119f8d4c3f40a61d4ee5403f0e7e5967c33d8 diff --git a/Makefile.am b/Makefile.am index e85c924..2f81bce 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,21 +1,39 @@ +ACLOCAL_AMFLAGS=-I config + INCLUDES = -I$(top_builddir)/urcu -AM_LDFLAGS=-lpthread +#Add the -version-info directly here since we are only building +# library that use the version-info +AM_LDFLAGS=-version-info $(URCU_LIBRARY_VERSION) +if !LIBC_INCLUDES_PTHREAD +AM_LDFLAGS+=-lpthread +endif AM_CFLAGS=-Wall -SUBDIRS = . tests +SUBDIRS = . doc tests -include_HEADERS = urcu.h $(top_srcdir)/urcu-*.h +include_HEADERS = urcu.h urcu-bp.h urcu-call-rcu.h urcu-defer.h \ + urcu-pointer.h urcu-qsbr.h urcu-flavor.h nobase_dist_include_HEADERS = urcu/compiler.h urcu/hlist.h urcu/list.h \ - urcu/rculist.h urcu/rcuhlist.h urcu/system.h urcu/urcu-futex.h \ - urcu/uatomic_generic.h urcu/arch/generic.h urcu/wfstack.h \ + urcu/rculist.h urcu/rcuhlist.h urcu/system.h urcu/futex.h \ + urcu/uatomic/generic.h urcu/arch/generic.h urcu/wfstack.h \ urcu/wfqueue.h urcu/rculfstack.h urcu/rculfqueue.h \ - urcu/urcu_ref.h urcu/map/*.h urcu/static/*.h -nobase_nodist_include_HEADERS = urcu/arch.h urcu/uatomic_arch.h urcu/config.h + urcu/ref.h urcu/cds.h urcu/urcu_ref.h urcu/urcu-futex.h \ + urcu/uatomic_arch.h urcu/rculfhash.h urcu/wfcqueue.h \ + urcu/lfstack.h urcu/syscall-compat.h \ + $(top_srcdir)/urcu/map/*.h \ + $(top_srcdir)/urcu/static/*.h \ + urcu/rand-compat.h \ + urcu/tls-compat.h +nobase_nodist_include_HEADERS = urcu/arch.h urcu/uatomic.h urcu/config.h -EXTRA_DIST = $(top_srcdir)/urcu/arch/*.h $(top_srcdir)/urcu/uatomic_arch_*.h \ +dist_noinst_HEADERS = urcu-die.h urcu-wait.h + +EXTRA_DIST = $(top_srcdir)/urcu/arch/*.h $(top_srcdir)/urcu/uatomic/*.h \ gpl-2.0.txt lgpl-2.1.txt lgpl-relicensing.txt \ - README LICENSE compat_arch_x86.c + LICENSE compat_arch_x86.c \ + urcu-call-rcu-impl.h urcu-defer-impl.h \ + rculfhash-internal.h if COMPAT_ARCH COMPAT=compat_arch_@ARCHTYPE@.c @@ -27,40 +45,51 @@ if COMPAT_FUTEX COMPAT+=compat_futex.c endif -lib_LTLIBRARIES = liburcu-cds.la liburcu.la liburcu-qsbr.la \ - liburcu-mb.la liburcu-signal.la liburcu-bp.la +RCULFHASH = rculfhash.c rculfhash-mm-order.c rculfhash-mm-chunk.c \ + rculfhash-mm-mmap.c + +lib_LTLIBRARIES = liburcu-common.la \ + liburcu.la liburcu-qsbr.la \ + liburcu-mb.la liburcu-signal.la liburcu-bp.la \ + liburcu-cds.la -liburcu_cds_la_SOURCES = wfqueue.c wfstack.c rculfqueue.c rculfstack.c \ - $(COMPAT) -liburcu_cds_la_LDFLAGS = -version-info $(URCU_LIBRARY_VERSION) +# +# liburcu-common contains wait-free queues (needed by call_rcu) as well +# as futex fallbacks. +# +liburcu_common_la_SOURCES = wfqueue.c wfcqueue.c wfstack.c $(COMPAT) liburcu_la_SOURCES = urcu.c urcu-pointer.c $(COMPAT) -liburcu_la_LIBADD = -lurcu-cds -liburcu_la_DEPENDENCIES = liburcu-cds.la -liburcu_la_LDFLAGS = -version-info $(URCU_LIBRARY_VERSION) +liburcu_la_LIBADD = liburcu-common.la liburcu_qsbr_la_SOURCES = urcu-qsbr.c urcu-pointer.c $(COMPAT) -liburcu_qsbr_la_LIBADD = -lurcu-cds -liburcu_qsbr_la_DEPENDENCIES = liburcu-cds.la -liburcu_qsbr_la_LDFLAGS = -version-info $(URCU_LIBRARY_VERSION) +liburcu_qsbr_la_LIBADD = liburcu-common.la liburcu_mb_la_SOURCES = urcu.c urcu-pointer.c $(COMPAT) liburcu_mb_la_CFLAGS = -DRCU_MB -liburcu_mb_la_LIBADD = -lurcu-cds -liburcu_mb_la_DEPENDENCIES = liburcu-cds.la -liburcu_mb_la_LDFLAGS = -version-info $(URCU_LIBRARY_VERSION) +liburcu_mb_la_LIBADD = liburcu-common.la liburcu_signal_la_SOURCES = urcu.c urcu-pointer.c $(COMPAT) liburcu_signal_la_CFLAGS = -DRCU_SIGNAL -liburcu_signal_la_LIBADD = -lurcu-cds -liburcu_signal_la_DEPENDENCIES = liburcu-cds.la -liburcu_signal_la_LDFLAGS = -version-info $(URCU_LIBRARY_VERSION) +liburcu_signal_la_LIBADD = liburcu-common.la liburcu_bp_la_SOURCES = urcu-bp.c urcu-pointer.c $(COMPAT) -liburcu_bp_la_LIBADD = -lurcu-cds -liburcu_bp_la_DEPENDENCIES = liburcu-cds.la -liburcu_bp_la_LDFLAGS = -version-info $(URCU_LIBRARY_VERSION) +liburcu_bp_la_LIBADD = liburcu-common.la + +liburcu_cds_la_SOURCES = rculfqueue.c rculfstack.c lfstack.c \ + $(RCULFHASH) $(COMPAT) +liburcu_cds_la_LIBADD = liburcu-common.la pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = liburcu.pc liburcu-bp.pc liburcu-qsbr.pc \ - liburcu-signal.pc liburcu-mb.pc +pkgconfig_DATA = liburcu-cds.pc liburcu.pc liburcu-bp.pc liburcu-qsbr.pc \ + liburcu-signal.pc liburcu-mb.pc + +dist_doc_DATA = README ChangeLog + +dist_noinst_DATA = CodingStyle + +.PHONY: bench regtest +bench: + cd tests && $(MAKE) $(AM_MAKEFLAGS) bench +regtest: + cd tests && $(MAKE) $(AM_MAKEFLAGS) regtest