X-Git-Url: http://the.earth.li/gitweb/?a=blobdiff_plain;f=Makefile.in;h=c3382a4469ebf715e354aa8afc4c6b57b0bde893;hb=99916c3399f78fbfbfb0b2da2ac112b327269d51;hp=cab1f82efc658390b0329244440f9d4d0d1069e9;hpb=535ab6abb5d606afdbd9c50699fd861b301ba600;p=onak.git diff --git a/Makefile.in b/Makefile.in index cab1f82..c3382a4 100644 --- a/Makefile.in +++ b/Makefile.in @@ -3,13 +3,14 @@ # CC = @CC@ -CFLAGS += @CFLAGS@ -Wall -pedantic +CFLAGS += @CFLAGS@ -Wall -pedantic -fPIC # Uncomment to enable profiling. LDFLAGS += @LDFLAGS@ # Can be "pg" for Postgresql, "file" for flat files or "db2" for pksd db2 style. DBTYPE = @DBTYPE@ # LIBS = @LIBS@ +DB4LIBS = @DB4LIBS@ #MAKEDEPEND = makedepend -f- -- MAKEDEPEND = $(CC) -MM prefix ?= @prefix@ @@ -18,11 +19,12 @@ exec_prefix ?= @exec_prefix@ PROGS = add lookup gpgwww onak splitkeys onak-mail.pl stripkey CORE_OBJS = armor.o charfuncs.o decodekey.o getcgi.o hash.o \ keyid.o keyindex.o ll.o mem.o onak-conf.o parsekey.o sha1.o md5.o \ - log.o photoid.o wordlist.o cleanup.o merge.o + log.o photoid.o wordlist.o cleanup.o merge.o sendsync.o keyarray.o SRCS = armor.c parsekey.c merge.c keyid.c md5.c sha1.c main.c getcgi.c mem.c \ keyindex.c stats.c lookup.c add.c keydb_$(DBTYPE).c ll.c hash.c \ gpgwww.c onak-conf.c charfuncs.c sendsync.c log.c photoid.c \ - wordlist.c cleankey.c cleanup.c + wordlist.c cleankey.c cleanup.c keyarray.c \ + $(foreach be,@BACKENDS@,keydb_$(be).c) ifeq (x@KEYD@, xyes) PROGS += keyd @@ -32,13 +34,33 @@ else KEYDB_OBJ = keydb_$(DBTYPE).o endif -OBJS = stats.o sendsync.o cleankey.o $(CORE_OBJS) $(KEYDB_OBJ) +ifeq (x@DBTYPE@, xdynamic) +LIBS += -ldl +BACKENDS = $(foreach be,@BACKENDS@,libkeydb_$(be).so) +PROGS += keyd +SRCS += keyd.c +endif -all: .depend $(PROGS) testparse maxpath sixdegrees splitkeys onak.conf +OBJS = stats.o cleankey.o $(CORE_OBJS) $(KEYDB_OBJ) + +all: .depend $(PROGS) testparse maxpath sixdegrees splitkeys onak.conf \ + $(BACKENDS) keyd: keyd.o $(CORE_OBJS) keydb_$(DBTYPE).o $(CC) $(LDFLAGS) -o keyd keyd.o $(CORE_OBJS) keydb_$(DBTYPE).o $(LIBS) +libkeydb_db4.so: keydb_db4.o + $(CC) -shared $(DB4LIBS) -o libkeydb_db4.so keydb_db4.o $(CORE_OBJS) + +libkeydb_pg.so: keydb_pg.o + $(CC) -shared $(PQLIBS) -o libkeydb_pg.so keydb_pg.o $(CORE_OBJS) + +libkeydb_%.so: keydb_%.o + $(CC) -shared -o $@ $< $(CORE_OBJS) + +keydb_%.o: keydb_%.c + $(CC) -c -fPIC $(LDFLAGS) -o $@ $< + splitkeys: splitkeys.o $(CORE_OBJS) $(KEYDB_OBJ) $(CC) $(LDFLAGS) -o splitkeys splitkeys.o $(CORE_OBJS) $(KEYDB_OBJ) \ $(LIBS) @@ -62,8 +84,8 @@ lookup: lookup.o cleankey.o $(CORE_OBJS) $(KEYDB_OBJ) $(CC) $(LDFLAGS) -o lookup lookup.o cleankey.o $(CORE_OBJS) \ $(KEYDB_OBJ) $(LIBS) -add: add.o cleankey.o sendsync.o $(CORE_OBJS) $(KEYDB_OBJ) - $(CC) $(LDFLAGS) -o add add.o cleankey.o sendsync.o \ +add: add.o cleankey.o $(CORE_OBJS) $(KEYDB_OBJ) + $(CC) $(LDFLAGS) -o add add.o cleankey.o \ $(CORE_OBJS) $(KEYDB_OBJ) $(LIBS) onak: onak.o cleankey.o $(CORE_OBJS) $(KEYDB_OBJ) @@ -79,13 +101,15 @@ onak-mail.pl: onak-mail.pl.in onak.conf: onak.conf.in sed -e 's:@BINDIR@:@bindir@:g' \ + -e 's:@LIBDIR@:@libdir@:g' \ -e 's:@STATEDIR@:@localstatedir@:g' \ < onak.conf.in > onak.conf clean: $(RM) $(PROGS) $(OBJS) Makefile.bak testparse maxpath *.core core \ gpgwww.o add.o lookup.o main.o maxpath.o onak.o sixdegrees \ - sixdegrees.o splitkeys.o stripkey.o onak.conf + sixdegrees.o splitkeys.o stripkey.o onak.conf keyd.o \ + $(foreach be,@BACKENDS@,keydb_$(be).o) *.so ifeq (x@KEYD@, xyes) $(RM) keyd.o keydb_$(DBTYPE).o endif