1# 2# This Makefile is designed for use with main.mk in the root directory of 3# this project. After including main.mk, the users makefile should contain: 4# 5# LSMDIR=$(TOP)/ext/lsm1/ 6# include $(LSMDIR)/Makefile 7# 8# The most useful targets are [lsmtest] and [lsm.so]. 9# 10 11LSMOBJ = \ 12 lsm_ckpt.o \ 13 lsm_file.o \ 14 lsm_log.o \ 15 lsm_main.o \ 16 lsm_mem.o \ 17 lsm_mutex.o \ 18 lsm_shared.o \ 19 lsm_sorted.o \ 20 lsm_str.o \ 21 lsm_tree.o \ 22 lsm_unix.o \ 23 lsm_win32.o \ 24 lsm_varint.o \ 25 lsm_vtab.o 26 27LSMHDR = \ 28 $(LSMDIR)/lsm.h \ 29 $(LSMDIR)/lsmInt.h 30 31LSMTESTSRC = $(LSMDIR)/lsm-test/lsmtest1.c $(LSMDIR)/lsm-test/lsmtest2.c \ 32 $(LSMDIR)/lsm-test/lsmtest3.c $(LSMDIR)/lsm-test/lsmtest4.c \ 33 $(LSMDIR)/lsm-test/lsmtest5.c $(LSMDIR)/lsm-test/lsmtest6.c \ 34 $(LSMDIR)/lsm-test/lsmtest7.c $(LSMDIR)/lsm-test/lsmtest8.c \ 35 $(LSMDIR)/lsm-test/lsmtest9.c \ 36 $(LSMDIR)/lsm-test/lsmtest_datasource.c \ 37 $(LSMDIR)/lsm-test/lsmtest_func.c $(LSMDIR)/lsm-test/lsmtest_io.c \ 38 $(LSMDIR)/lsm-test/lsmtest_main.c $(LSMDIR)/lsm-test/lsmtest_mem.c \ 39 $(LSMDIR)/lsm-test/lsmtest_tdb.c $(LSMDIR)/lsm-test/lsmtest_tdb3.c \ 40 $(LSMDIR)/lsm-test/lsmtest_util.c 41 42 43# all: lsm.so 44 45LSMOPTS = -DLSM_MUTEX_PTHREADS=1 -I$(LSMDIR) 46 47lsm.so: $(LSMOBJ) 48 $(TCCX) -shared -o lsm.so $(LSMOBJ) 49 50%.o: $(LSMDIR)/%.c $(LSMHDR) sqlite3.h 51 $(TCCX) $(LSMOPTS) -c $< 52 53lsmtest$(EXE): $(LSMOBJ) $(LSMTESTSRC) $(LSMTESTHDR) sqlite3.o 54 # $(TCPPX) -c $(TOP)/lsm-test/lsmtest_tdb2.cc 55 $(TCCX) $(LSMOPTS) $(LSMTESTSRC) $(LSMOBJ) sqlite3.o -o lsmtest$(EXE) $(THREADLIB) 56 57