## Makefile.in for slapd
##
PROGRAMS=slapd
-XPROGRAMS=libbackends.a .backend
+XPROGRAMS=sslapd libbackends.a .backend
+XSRCS=version.c
SRCS = main.c daemon.c connection.c search.c filter.c add.c charray.c \
attr.c entry.c config.c backend.c result.c operation.c \
dn.c compare.c modify.c delete.c modrdn.c ch_malloc.c \
value.c ava.c bind.c unbind.c abandon.c filterentry.c \
phonetic.c acl.c str2filter.c aclparse.c init.c \
- detach.c repl.c lock.c \
+ repl.c lock.c \
suffixalias.c schema.c schemaparse.c monitor.c configinfo.c
OBJS = main.o daemon.o connection.o search.o filter.o add.o charray.o \
attr.o entry.o config.o backend.o result.o operation.o \
dn.o compare.o modify.o delete.o modrdn.o ch_malloc.o \
value.o ava.o bind.o unbind.o abandon.o filterentry.o \
phonetic.o acl.o str2filter.o aclparse.o init.o \
- detach.o repl.o lock.o \
+ repl.o lock.o \
suffixalias.o schema.o schemaparse.o monitor.o configinfo.o
LDAP_INCDIR= ../../include
LDAP_LIBDIR= ../../libraries
+# $(LTHREAD_LIBS) must be last
+XLIBS = libbackends.a -lavl -lldbm -lldif -lldap_r -llber -llutil
+XXLIBS = $(LDBM_LIBS) $(SLAPD_LIBS) \
+ $(PERL_LDFLAGS) $(KRB_LIBS) $(LUTIL_LIBS)
+XXXLIBS = $(LTHREAD_LIBS)
+
BUILD_OPT = "--enable-slapd"
BUILD_SRV = @BUILD_SLAPD@
-all-local: FORCE
+all-local-srv: FORCE
$(MAKE) $(MFLAGS) backendslib
$(MAKE) $(MFLAGS) slapd
(cd tools; $(MAKE) $(MFLAGS) all)
-
-XLIBS = @SLAPD_LIBS@ libbackends.a \
- -lavl -llutil -lldbm @LDBM_LIBS@ -llthread @LTHREAD_LIBS@ @LUTIL_LIBS@
+ $(MAKE) $(MFLAGS) all-cffiles
slapd: version.o
- $(CC) $(LDFLGS) -o $@ $(OBJS) version.o $(LIBS)
+ $(LTLINK) -o $@ $(OBJS) version.o $(LIBS)
+
+sslapd: version.o
+ $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS)
backendslib: FORCE
@for i in back-*; do \
fi
@ls -l libbackends.a
-version.c: libbackends.a $(OBJS) $(LDAP_LIBDEPEND) \
- $(LDAP_LIBDIR)/libldbm.a \
- $(LDAP_LIBDIR)/libavl.a \
- $(LDAP_LIBDIR)/libldif.a \
- $(LDAP_LIBDIR)/liblutil.a \
- $(LDAP_LIBDIR)/liblthread.a
+version.c: libbackends.a $(OBJS) $(SLAPD_LIBDEPEND)
$(RM) $@
(u=$${USER-root} v=`$(CAT) $(VERSIONFILE)` d=`$(PWD)` h=`$(HOSTNAME)` \
t=`$(DATE)`; $(SED) -e "s|%WHEN%|$${t}|" \
-e "s|%VERSION%|$${v}|" \
< $(srcdir)/Version.c > $@)
-clean-local: FORCE
- @for i in back-* tools; do \
+depend-local-srv: FORCE
+ @for i in back-* shell-backends tools; do \
+ if [ -d $$i ]; then \
+ echo; echo " cd $$i; $(MAKE) $(MFLAGS) depend"; \
+ ( cd $$i; $(MAKE) $(MFLAGS) depend ); \
+ fi; \
+ done
+
+clean-local-srv: FORCE
+ @for i in back-* shell-backends tools; do \
if [ -d $$i ]; then \
echo; echo " cd $$i; $(MAKE) $(MFLAGS) clean"; \
( cd $$i; $(MAKE) $(MFLAGS) clean ); \
fi; \
done
+ rm -f *.tmp all-cffiles
-install-local: install-slapd install-conf install-tools
+veryclean-local-srv: FORCE
+ @for i in back-* shell-backends tools; do \
+ if [ -d $$i ]; then \
+ echo; echo " cd $$i; $(MAKE) $(MFLAGS) clean"; \
+ ( cd $$i; $(MAKE) $(MFLAGS) veryclean ); \
+ fi; \
+ done
+
+install-local-srv: install-slapd install-conf install-tools
install-slapd: FORCE
@-$(MKDIR) $(libexecdir)
- $(INSTALL) $(INSTALLFLAGS) -m 755 slapd $(libexecdir)
+ @-$(MKDIR) $(localstatedir)
+ $(LTINSTALL) $(INSTALLFLAGS) -m 755 slapd $(libexecdir)
+
+CFFILES=slapd.conf slapd.at.conf slapd.oc.conf
+
+all-cffiles:
+ @for i in $(CFFILES); do \
+ tmpcf=$$i.tmp; \
+ $(SED) -e 's;%SYSCONFDIR%;$(sysconfdir);' \
+ -e 's;%LOCALSTATEDIR%;$(localstatedir);' \
+ $(srcdir)/$$i > $$tmpcf ; \
+ done
+ touch all-cffiles
install-conf: FORCE
- @-$(MKDIR) -p $(sysconfdir)
- $(SED) -e 's;%SYSCONFDIR%;$(sysconfdir);' slapd.conf > /tmp/slapd.$$
- -$(MV) $(sysconfdir)/slapd.conf $(sysconfdir)/slapd.conf-
- $(INSTALL) $(INSTALLFLAGS) -m 644 /tmp/slapd.$$ $(sysconfdir)/slapd.conf
- $(RM) -f /tmp/slapd.$$
- -$(MV) $(sysconfdir)/slapd.at.conf $(sysconfdir)/slapd.at.conf-
- $(INSTALL) $(INSTALLFLAGS) -m 644 slapd.at.conf $(sysconfdir)
- -$(MV) $(sysconfdir)/slapd.oc.conf $(sysconfdir)/slapd.oc.conf-
- $(INSTALL) $(INSTALLFLAGS) -m 644 slapd.oc.conf $(sysconfdir)
+ @-$(MKDIR) $(sysconfdir)
+ @for i in $(CFFILES); do \
+ tmpcf=$$i.tmp ; \
+ if test $$i = slapd.conf ; then \
+ mode=600 ; \
+ else \
+ mode=644 ; \
+ fi ; \
+ if test ! -f $(sysconfdir)/$$i; then \
+ echo "installing $$i in $(sysconfdir)"; \
+ echo "$(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(sysconfdir)/$$i"; \
+ $(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(sysconfdir)/$$i; \
+ else \
+ echo "PRESERVING EXISTING CONFIGURATION FILE $(sysconfdir)/$$i" ; \
+ fi; \
+ $(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(sysconfdir)/$$i.default ; \
+ done
install-tools: FORCE
@-$(MKDIR) $(sbindir)