ROOT=.. EXTRALIBS+= INCLUDE+=-I. -I$(ROOT)/squeue/include -I$(ROOT)/squeue -I$(ROOT)/common/include LIBCOMMON=$(ROOT)/common/libusgcommon.a LIBSQUEUE=$(ROOT)/squeue/libsqueue.a LDLIBS = -lpthread PLATFORM=$(shell $(ROOT)/systype.sh) include $(ROOT)/Make.defines.$(PLATFORM) PROGS = test_queue productor consumer single_productor single_consumer all: $(PROGS) # test1: $(LIBCOMMON) # 如果包A 引用包B, B 要放在 A 后面 # svshm_reader: binary_sems.c $(LIBSQUEUE) $(LIBCOMMON) # svshm_writer: binary_sems.c $(LIBSQUEUE) $(LIBCOMMON) test_queue: test.h $(ROOT)/squeue/include/SArrayLockFreeQueue.h $(ROOT)/squeue/include/SLinkedLockFreeQueue.h $(ROOT)/squeue/include/QFactory.h $(LIBSQUEUE) $(LIBCOMMON) productor: test.h $(ROOT)/squeue/include/SArrayLockFreeQueue.h $(ROOT)/squeue/include/SLinkedLockFreeQueue.h $(ROOT)/squeue/include/QFactory.h $(LIBSQUEUE) $(LIBCOMMON) consumer: test.h $(ROOT)/squeue/include/SArrayLockFreeQueue.h $(ROOT)/squeue/include/SLinkedLockFreeQueue.h $(ROOT)/squeue/include/QFactory.h $(LIBSQUEUE) $(LIBCOMMON) single_productor: test.h $(ROOT)/squeue/include/SArrayLockFreeQueue.h $(ROOT)/squeue/include/SLinkedLockFreeQueue.h $(ROOT)/squeue/include/QFactory.h $(LIBSQUEUE) $(LIBCOMMON) single_consumer: test.h $(ROOT)/squeue/include/SArrayLockFreeQueue.h $(ROOT)/squeue/include/SLinkedLockFreeQueue.h $(ROOT)/squeue/include/QFactory.h $(LIBSQUEUE) $(LIBCOMMON) # test_lostdata: test.h $(LIBSQUEUE) $(LIBCOMMON) # consumer_timeout: $(ROOT)/squeue/include/squeue.h test.h $(LIBSQUEUE) $(LIBCOMMON) # productor_timeout: $(ROOT)/squeue/squeue.h $(LIBSQUEUE) $(LIBCOMMON) # test_atomic: $(ROOT)/squeue/squeue.h $(LIBSQUEUE) $(LIBCOMMON) clean: rm -f $(PROGS) $(TEMPFILES) *.o $(LIBCOMMON): (cd $(ROOT)/common && $(MAKE)) $(LIBSQUEUE): (cd $(ROOT)/squeue && $(MAKE))