CC = gcc W = -W -Wall -Wno-unused-parameter -Wcast-qual -Wbad-function-cast OPT = -O2 -g CFLAGS = -pthread $(OPT) $(W) $(XCFLAGS) LDLIBS = PROGS = mdb_stat mtest mtest2 mtest3 all: libmdb.a libmdb.so $(PROGS) clean: rm -rf $(PROGS) *.[ao] *.so *~ testdb test: all mkdir testdb ./mtest && ./mdb_stat testdb libmdb.a: mdb.o idl.o ar rs $@ mdb.o idl.o libmdb.so: mdb.o idl.o gcc -shared -o $@ mdb.o idl.o mdb_stat: mdb_stat.o libmdb.a mtest: mtest.o libmdb.a mtest2: mtest2.o libmdb.a mtest3: mtest3.o libmdb.a mdb.o: mdb.c mdb.h idl.h $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) -c mdb.c idl.o: idl.c idl.h $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) -c idl.c %: %.o $(CC) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@ %.o: %.c mdb.h $(CC) $(CFLAGS) $(CPPFLAGS) -c $<