X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=Makefile.inc;h=ae62f543d16fc6c1fdc3e22234fedba56b53b692;hp=870bde8e3ed036df06404811d0b51434a171194f;hb=2f873279bc92fac32e6549d6eb72f3197c7048ac;hpb=833dbdb633ba44bfb71b4b965a83096d8e4e827b diff --git a/Makefile.inc b/Makefile.inc index 870bde8..ae62f54 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},) @@ -22,28 +27,45 @@ urcu.h: arch.h arch_atomic.h urcu-qsbr.h: arch.h arch_atomic.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/ + cp -f arch.h arch_atomic.h compiler.h \ + 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