X-Git-Url: https://git.lttng.org/?p=urcu.git;a=blobdiff_plain;f=Makefile.inc;h=3fc3a6c0def2eb8f3236164a1c8528a031dac487;hp=870bde8e3ed036df06404811d0b51434a171194f;hb=074d8438a30f7da8ae12eb94caff69c37fb576bd;hpb=833dbdb633ba44bfb71b4b965a83096d8e4e827b diff --git a/Makefile.inc b/Makefile.inc index 870bde8..3fc3a6c 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -3,7 +3,12 @@ include Makefile.build.inc DIRS=tests -all: checkarch liburcu.so urcu.o urcu-yield.o urcu-qsbr.o urcu-mb.o subdirs +all: checkarch liburcu.so urcu.o \ + liburcu-qsbr.so urcu-qsbr.o \ + liburcu-mb.so urcu-mb.o \ + liburcu-defer.so urcu-defer.o \ + urcu-yield.o \ + subdirs checkarch: ifeq (${ARCHTYPE},) @@ -11,40 +16,60 @@ ifeq (${ARCHTYPE},) @exit 1 endif -arch.h: arch_${ARCHTYPE}.h - cp -f arch_${ARCHTYPE}.h arch.h +urcu/arch.h: urcu/arch_${ARCHTYPE}.h + cp -f urcu/arch_${ARCHTYPE}.h urcu/arch.h -arch_atomic.h: arch_atomic_${ARCHTYPE}.h - cp -f arch_atomic_${ARCHTYPE}.h arch_atomic.h +urcu/arch_uatomic.h: urcu/arch_uatomic_${ARCHTYPE}.h + cp -f urcu/arch_uatomic_${ARCHTYPE}.h urcu/arch_uatomic.h -urcu.h: arch.h arch_atomic.h +urcu.h: urcu/arch.h urcu/arch_uatomic.h -urcu-qsbr.h: arch.h arch_atomic.h +urcu-qsbr.h: urcu/arch.h urcu/arch_uatomic.h urcu.o: urcu.c urcu.h - $(CC) -fPIC ${CFLAGS} $(LDFLAGS) -c -o $@ $(SRC_DEP) + $(CC) -fPIC ${CFLAGS} -c -o $@ $(SRC_DEP) urcu-mb.o: urcu.c urcu.h - $(CC) -fPIC -DCONFIG_URCU_AVOID_SIGNALS ${CFLAGS} $(LDFLAGS) -c -o $@ $(SRC_DEP) + $(CC) -fPIC -DURCU_MB ${CFLAGS} -c -o $@ $(SRC_DEP) urcu-qsbr.o: urcu-qsbr.c urcu-qsbr.h - $(CC) -fPIC ${CFLAGS} $(LDFLAGS) -c -o $@ $(SRC_DEP) + $(CC) -fPIC ${CFLAGS} -c -o $@ $(SRC_DEP) + +urcu-defer.o: urcu-defer.c urcu-defer.h + $(CC) -fPIC ${CFLAGS} -c -o $@ $(SRC_DEP) liburcu.so: urcu.o - $(CC) -fPIC -shared -o $@ $< + $(CC) ${LDFLAGS} -fPIC -shared -o $@ $< + +liburcu-qsbr.so: urcu-qsbr.o + $(CC) ${LDFLAGS} -fPIC -shared -o $@ $< + +liburcu-mb.so: urcu-mb.o + $(CC) ${LDFLAGS} -fPIC -shared -o $@ $< + +liburcu-defer.so: urcu-defer.o + $(CC) ${LDFLAGS} -fPIC -shared -o $@ $< urcu-yield.o: urcu.c urcu.h - $(CC) -DDEBUG_YIELD ${CFLAGS} $(LDFLAGS) -c -o $@ $(SRC_DEP) + $(CC) -DDEBUG_YIELD ${CFLAGS} -c -o $@ $(SRC_DEP) .PHONY: clean install checkarch tests subdirs: - -for d in ${DIRS}; do cd $${d}; ${MAKE} ${MFLAGS}; done + -for d in ${DIRS}; do cd $${d}; ${MAKE} ${MFLAGS} ${EXTRAMFLAGS}; done install: liburcu.so - cp -f liburcu.so /usr/lib/ - cp -f arch.h arch_atomic.h compiler.h urcu.h urcu-static.h /usr/include/ + cp -f liburcu.so liburcu-mb.so liburcu-qsbr.so liburcu-defer.so \ + /usr/lib/ + mkdir -p /usr/include/urcu + cp -f urcu/arch.h urcu/arch_uatomic.h urcu/compiler.h \ + urcu/list.h urcu/rculist.h urcu/hlist.h \ + /usr/include/urcu/ + cp -f urcu.h urcu-static.h \ + urcu-qsbr.h urcu-qsbr-static.h \ + urcu-defer.h urcu-defer-static.h \ + /usr/include/ clean: - rm -f *.o *.so arch.h arch_atomic.h + rm -f *.o *.so urcu/arch.h urcu/arch_uatomic.h -for d in ${DIRS}; do cd $${d}; ${MAKE} clean; done