1 #-----------------------------------------------------------------------------
2 # Copyright (c) 1995 Regents of the University of Michigan.
5 # Redistribution and use in source and binary forms are permitted
6 # provided that this notice is preserved and that due credit is given
7 # to the University of Michigan at Ann Arbor. The name of the University
8 # may not be used to endorse or promote products derived from this
9 # software without specific prior written permission. This software
10 # is provided ``as is'' without express or implied warranty.
12 # Stand alone LDAP server tools makefile
14 #-----------------------------------------------------------------------------
15 BUILD_LDBM = @BUILD_LDBM@
16 BUILD_BDB2 = @BUILD_BDB2@
17 BUILD_QUIPU = @BUILD_QUIPU@
19 LDAP_INCDIR= ../../../include
20 LDAP_LIBDIR= ../../../libraries
23 SLAPD_MODULES = @SLAPD_MODULES_LIST@
24 XDEFS = $(MODULES_CPPFLAGS)
25 XLDFLAGS = $(MODULES_LDFLAGS) $(SLAPD_MODULES)
27 XLIBS = -lavl -lldif -lldbm -lldap_r -llber -llutil
28 XXLIBS = $(LDAPD_LIBS) $(SLAPD_LIBS) \
29 $(PERL_LDFLAGS) $(LDBM_LIBS) $(SECURITY_LIBS) \
30 $(LDIF_LIBS) $(LUTIL_LIBS)
31 XXXLIBS = $(LTHREAD_LIBS) $(MODULES_LIBS)
33 PROGRAMS=ldif slapadd slapcat slapindex
34 LDBMPROGRAMS=centipede sizecount
36 QUIPUPROGRAMS=chlog2replog edb2ldif
38 SRCS = ldif.c mimic.c slapcommon.c
42 LDBMSRCS = centipede.c sizecount.c
46 QUIPUSRCS = edb2ldif.c ldapsyntax.c chlog2replog.c
47 SLAPD_OBJS = ../config.o ../ch_malloc.o ../backend.o ../charray.o \
48 ../module.o ../aclparse.o ../schema.o ../filterentry.o \
49 ../acl.o ../phonetic.o ../attr.o ../value.o ../entry.o \
50 ../dn.o ../filter.o ../str2filter.o ../ava.o ../init.o \
51 ../controls.o ../schemaparse.o
52 SLAPOBJS = $(SLAPD_OBJS) slapcommon.o mimic.o
54 EDB2LDIFSRCS = edb2ldif.c ldapsyntax.c
55 EDB2LDIFOBJS = edb2ldif.o ldapsyntax.o
57 all-local: build-progs build-ldbm build-bdb2 build-quipu
59 build-progs: $(PROGRAMS)
61 build-ldbm: ldbm-tools-$(BUILD_LDBM)
63 @echo "run configure with --enable-ldbm to build LDBM tools"
65 ldbm-tools-yes ldbm-tools-mod: $(LDBMPROGRAMS)
67 build-bdb2: bdb2-tools-$(BUILD_BDB2)
69 @echo "run configure with --enable-bdb2 to build BDB2 tools"
71 bdb2-tools-yes bdb2-tools-mod: $(BDB2PROGRAMS)
73 build-quipu: quipu-tools-$(BUILD_QUIPU)
75 @echo "run configure with --enable-quipu to build QUIPU tools"
77 quipu-tools-yes quipu-tools-mod: $(QUIPUPROGRAMS)
82 slapadd: slapadd.o ../libbackends.a $(SLAPOBJS) $(SLAPD_LIBDEPEND)
83 $(LTLINK) -o $@ slapadd.o $(SLAPOBJS) ../libbackends.a $(LIBS)
85 slapcat: slapcat.o ../libbackends.a $(SLAPOBJS) $(SLAPD_LIBDEPEND)
86 $(LTLINK) -o $@ slapcat.o $(SLAPOBJS) ../libbackends.a $(LIBS)
88 slapindex: slapindex.o ../libbackends.a $(SLAPOBJS) $(SLAPD_LIBDEPEND)
89 $(LTLINK) -o $@ slapindex.o $(SLAPOBJS) ../libbackends.a $(LIBS)
91 ldif: ldif.o $(SLAPD_LIBDEPEND)
92 $(LTLINK) -o $@ ldif.o $(LIBS)
97 centipede: centipede.o $(SLAPD_LIBDEPEND)
98 $(LTLINK) -o $@ centipede.o $(LIBS)
100 sizecount: sizecount.o ../phonetic.o ../ch_malloc.o $(SLAPD_LIBDEPEND)
101 $(LTLINK) -o $@ sizecount.o ../phonetic.o ../ch_malloc.o $(LIBS)
104 # BDBM Specific Tools
108 # QUIPU Specific Tools
110 edb2ldif: edb2-vers.o
111 $(CC) $(LDFLAGS) -o $@ $(EDB2LDIFOBJS) edb2-vers.o $(LIBS)
113 edb2-vers.c: $(EDB2LDIFOBJS)
115 $(MKVERSION) ebd2ldif > $@
117 chlog2replog: chlog2replog.o ../lock.o ../ch_malloc.o $(SLAPD_LIBDEPEND)
118 $(LTLINK) -o $@ chlog2replog.o ../lock.o ../ch_malloc.o $(LIBS)
121 $(RM) $(PROGRAMS) $(LDBMPROGRAMS) $(BDB2PROGRAMS) $(QUIPUPROGRAMS) \
122 $(XPROGRAMS) $(XSRCS) *.o core .libs/*
125 @DEPEND_LDBM= ; DEPEND_BDB2= ; DEPEND_QUIPU= ; \
126 if [ "$(BUILD_LDBM)" != "no" ]; then \
127 DEPEND_LDBM="$(LDBMSRCS)"; \
129 if [ "$(BUILD_BDB2)" != "no" ]; then \
130 DEPEND_BDB2="$(BDBMSRCS)"; \
132 if [ "$(BUILD_QUIPU)" != "no" ]; then \
133 DEPEND_QUIPU="$(QUIPUINCLUDEFLAG) $(QUIPUSRCS)"; \
135 $(MKDEP) $(DEFS) $(DEFINES) $(SRCS) $$DEPEND_QUIPU \
136 $$DEPEND_LDBM $$DEPEND_BDB2
138 install-local: install-ldbm-$(BUILD_LDBM) install-bdb2-$(BUILD_BDB2) \
139 install-quipu-$(BUILD_QUIPU)
141 install-ldbm-no install-bdb2-no install-quipu-no:
143 install-ldbm-yes install-ldbm-mod: FORCE
144 @-$(MKDIR) $(sbindir)
145 $(LTINSTALL) $(INSTALLFLAGS) -m 755 slapcat $(sbindir) ; \
146 $(LTINSTALL) $(INSTALLFLAGS) -m 755 slapentry $(sbindir) ; \
147 $(LTINSTALL) $(INSTALLFLAGS) -m 755 slapindex $(sbindir) ; \
148 $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldif $(sbindir) ; \
149 $(LTINSTALL) $(INSTALLFLAGS) -m 755 centipede $(sbindir)
151 install-bdb2-yes install-bdb2-mod: FORCE
152 @-$(MKDIR) $(sbindir)
154 install-quipu-yes: FORCE
155 @-$(MKDIR) $(sbindir)
156 $(LTINSTALL) $(INSTALLFLAGS) -m 755 edb2ldif $(sbindir); \
157 $(LTINSTALL) $(INSTALLFLAGS) -m 755 chlog2replog $(sbindir)