+# $OpenLDAP$
+## Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
+## COPYING RESTRICTIONS APPLY, see COPYRIGHT file
#-----------------------------------------------------------------------------
-# Copyright (c) 1995 Regents of the University of Michigan.
+# Portions Copyright (c) 1995 Regents of the University of Michigan.
# All rights reserved.
#
# Redistribution and use in source and binary forms are permitted
# Stand alone LDAP server tools makefile
#
#-----------------------------------------------------------------------------
-HAVE_ISODE = @HAVE_ISODE@
-BUILD_LDBM = @BUILD_LDBM@
LDAP_INCDIR= ../../../include
LDAP_LIBDIR= ../../../libraries
-XLIBS = -lavl -lldif -lldap -llber -lldbm -llthread -llutil
-XXLIBS = $(LDAPD_LIBS) $(SLAPD_LIBS) \
- $(LDBM_LIBS) $(KRB_LIBS) $(LUTIL_LIBS)
-XXXLIBS = $(LTHREAD_LIBS)
+SLAP_DIR=../
+XDEFS = $(MODULES_CPPFLAGS)
+XLDFLAGS = $(MODULES_LDFLAGS)
-PROGRAMS=ldif2index ldif2ldbm ldbmcat ldif2id2entry \
- ldif2id2children centipede ldbmtest ldif
+XLIBS = $(SLAPD_L) $(LDBM_LIBS)
+XXLIBS = $(SLAPD_LIBS) \
+ $(LDBM_LIBS) $(SECURITY_LIBS) \
+ $(LDIF_LIBS) $(LUTIL_LIBS)
+XXXLIBS = $(MODULES_LIBS) $(LTHREAD_LIBS) \
+ $(SLAPI_LIBS) @LIBSLAPITOOLS@
-SRCS = centipede.c ldbmcat.c ldbmtest.c sizecount.c \
- ldif.c ldif2id2children.c ldif2id2entry.c ldif2index.c ldif2ldbm.c
+STATIC_DEPENDS=@SLAPD_NO_STATIC@ ../libbackends.a
-XSRCS = edb2-vers.c
+PROGRAMS=slapadd slapcat slapindex slappasswd
-EDB2LDIFSRCS = edb2ldif.c ldapsyntax.c
-EDB2LDIFOBJS = edb2ldif.o ldapsyntax.o
+SRCS = mimic.c slapcommon.c \
+ slapadd.c slapcat.c slapindex.c slappasswd.c
-OBJS2 = ../config.o ../ch_malloc.o ../backend.o ../charray.o \
- ../aclparse.o ../schema.o ../result.o ../filterentry.o \
- ../acl.o ../phonetic.o ../attr.o ../value.o ../entry.o \
- ../dn.o ../filter.o ../str2filter.o ../ava.o ../init.o \
- ../schemaparse.o
+SLAPD_OBJS = ../config.o ../ch_malloc.o ../cr.o ../backend.o \
+ ../module.o ../aclparse.o ../filterentry.o ../schema.o \
+ ../schema_check.o ../schema_init.o ../schema_prep.o \
+ ../schemaparse.o ../ad.o ../at.o ../mr.o ../oc.o \
+ ../syntax.o ../acl.o ../phonetic.o ../attr.o ../value.o \
+ ../entry.o ../dn.o ../filter.o ../str2filter.o ../ava.o \
+ ../init.o ../controls.o ../kerberos.o ../passwd.o \
+ ../index.o ../extended.o ../starttls.o ../sets.o ../mra.o \
+ ../referral.o ../backglue.o ../oidm.o ../mods.o ../operation.o
-all-local: build-ldbm build-edb2ldif build-chlog2replog
+SLAPOBJS = $(SLAPD_OBJS) slapcommon.o mimic.o
-build-ldbm: FORCE
- @if [ "$(BUILD_LDBM)" = "yes" ]; then \
- $(MAKE) $(MFLAGS) ldbm-tools; \
- else \
- echo "run configure with --with-ldbm to build LDBM tools"; \
- fi
+all-local: build-progs
-ldbm-tools: $(PROGRAMS)
+build-progs: $(PROGRAMS)
-build-edb2ldif: FORCE
- @if [ "$(HAVE_ISODE)" = "yes" ]; then \
- $(MAKE) $(MFLAGS) edb2ldif; \
- else \
- echo "run configure with --with-isode to build edb2ldif"; \
- fi
-
-edb2ldif: edb2-vers.o
- $(CC) $(LDFLAGS) -o $@ $(EDB2LDIFOBJS) edb2-vers.o $(LIBS)
-
-edb2-vers.c: $(EDB2LDIFOBJS)
- $(RM) $@
- (u=$${USER-root} v=`$(CAT) $(VERSIONFILE)` d=`$(PWD)` h=`$(HOSTNAME)` \
- t=`$(DATE)`; $(SED) -e "s|%WHEN%|$${t}|" \
- -e "s|%WHOANDWHERE%|$${u}@$${h}:$${d}|" \
- -e "s|%VERSION%|$${v}|" \
- < Vers-edb2.c > $@)
-
-build-chlog2replog: FORCE
- @if [ "$(HAVE_ISODE)" = "yes" ]; then \
- $(MAKE) $(MFLAGS) chlog2replog; \
- else \
- echo "run configure with --with-isode to build chlog2replog"; \
- fi
-
-chlog2replog: chlog2replog.o ../lock.o ../ch_malloc.o
- $(LTLINK) -o $@ chlog2replog.o ../lock.o ../ch_malloc.o $(LIBS)
-
-ldif2index: ldif2index.o ../libbackends.a $(OBJS2)
- $(LTLINK) -o $@ ldif2index.o $(OBJS2) ../libbackends.a $(LIBS)
-
-ldif2ldbm: ldif2ldbm.o ../libbackends.a $(OBJS2)
- $(LTLINK) -o $@ ldif2ldbm.o $(OBJS2) ../libbackends.a $(LIBS)
-
-ldif2id2entry: ldif2id2entry.o ../libbackends.a $(OBJS2)
- $(LTLINK) -o $@ ldif2id2entry.o $(OBJS2) ../libbackends.a $(LIBS)
-
-ldif2id2children: ldif2id2children.o ../libbackends.a $(OBJS2)
- $(LTLINK) -o $@ ldif2id2children.o $(OBJS2) ../libbackends.a $(LIBS)
-
-ldbmcat: ldbmcat.o
- $(LTLINK) -o $@ ldbmcat.o $(LIBS)
-
-ldif: ldif.o
- $(LTLINK) -o $@ ldif.o $(LIBS)
+#
+# SLAP Tools
+#
+slapadd: slapadd.o $(STATIC_DEPENDS) $(SLAPOBJS) $(SLAPD_L)
+ $(LTLINK) -o $@ slapadd.o $(SLAPOBJS) $(STATIC_DEPENDS) $(LIBS)
-centipede: centipede.o
- $(LTLINK) -o $@ centipede.o $(LIBS)
+slapcat: slapcat.o $(STATIC_DEPENDS) $(SLAPOBJS) $(SLAPD_L)
+ $(LTLINK) -o $@ slapcat.o $(SLAPOBJS) $(STATIC_DEPENDS) $(LIBS)
-sizecount: sizecount.o ../phonetic.o ../ch_malloc.o
- $(LTLINK) -o $@ sizecount.o ../phonetic.o ../ch_malloc.o $(LIBS)
+slapindex: slapindex.o $(STATIC_DEPENDS) $(SLAPOBJS) $(SLAPD_L)
+ $(LTLINK) -o $@ slapindex.o $(SLAPOBJS) $(STATIC_DEPENDS) $(LIBS)
-ldbmtest: ldbmtest.o ../libbackends.a $(OBJS2)
- $(LTLINK) -o ldbmtest ldbmtest.o $(OBJS2) ../libbackends.a $(LIBS)
+slappasswd: slappasswd.o $(SLAPD_L)
+ $(LTLINK) -o $@ slappasswd.o $(LIBS)
clean-local: FORCE
- $(RM) $(PROGRAMS) $(XPROGRAMS) $(XSRCS) edb2-vers.c \
- *.o core .libs/*
+ $(RM) $(PROGRAMS) $(XPROGRAMS) $(XSRCS) *.o core .libs/* *.exe
depend-local: FORCE
- @DEPEND=no ; DEPEND_LDBM= ; DEPEND_ISODE= ; \
- if [ "$(BUILD_LDBM)" = "yes" ]; then \
- DEPEND_LDBM="$(SRCS)"; \
- DEPEND=yes ; \
- fi; \
- if [ "$(HAVE_ISODE)" = "yes" ]; then \
- DEPEND_ISODE="$(ISODEINCLUDEFLAG) chlog2replog.c $(EDB2LDIFSRCS)"; \
- DEPEND=yes ; \
- fi; \
- if [ "$$DEPEND" = "yes" ]; then \
- $(MKDEP) $(DEFS) $(DEFINES) $$DEPEND_ISODE $$DEPEND_LDBM; \
- else \
- echo "slapd-tools: no dependencies to make"; \
- fi
-
-install-local: install-ldbm install-isode FORCE
-
-install-ldbm: FORCE
- @-$(MKDIR) $(sbindir)
- @if [ "$(BUILD_LDBM)" = "yes" ]; then \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldif2ldbm $(sbindir) ; \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldif2index $(sbindir) ; \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldif2id2entry $(sbindir) ; \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldif2id2children $(sbindir) ; \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldbmcat $(sbindir) ; \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldif $(sbindir) ; \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 centipede $(sbindir) ; \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 ldbmtest $(sbindir) ; \
- else \
- exit 0 ; \
- fi
-
-install-isode: FORCE
- @-$(MKDIR) $(sbindir)
- @if [ "$(HAVE_ISODE)" = "yes" ]; then \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 edb2ldif $(sbindir); \
- $(LTINSTALL) $(INSTALLFLAGS) -m 755 chlog2replog $(sbindir); \
- else \
- exit 0 ; \
- fi
+ $(MKDEP) $(DEFS) $(DEFINES) $(SRCS)
+
+install-local: FORCE
+ -$(MKDIR) $(DESTDIR)$(sbindir)
+ @for bin in $(PROGRAMS); do \
+ $(LTINSTALL) $(INSTALLFLAGS) -s -m 755 \
+ $$bin$(EXEEXT) $(DESTDIR)$(sbindir); \
+ done