3 ## Makefile.in for slapd
6 XPROGRAMS=sslapd libbackends.a .backend
10 NT_OBJS = nt_svc.o ../../libraries/liblutil/slapdmsg.res
12 SRCS = main.c daemon.c connection.c search.c filter.c add.c charray.c \
13 attr.c entry.c config.c backend.c result.c operation.c \
14 dn.c compare.c modify.c delete.c modrdn.c ch_malloc.c \
15 value.c ava.c bind.c unbind.c abandon.c filterentry.c \
16 phonetic.c acl.c str2filter.c aclparse.c init.c user.c \
17 repl.c lock.c controls.c extended.c kerberos.c passwd.c \
18 schema.c schema_check.c schema_init.c schemaparse.c \
19 ad.c at.c mr.c syntax.c oc.c \
20 monitor.c configinfo.c starttls.c \
21 root_dse.c sasl.c module.c suffixalias.c $(@PLAT@_SRCS)
23 OBJS = main.o daemon.o connection.o search.o filter.o add.o charray.o \
24 attr.o entry.o config.o backend.o result.o operation.o \
25 dn.o compare.o modify.o delete.o modrdn.o ch_malloc.o \
26 value.o ava.o bind.o unbind.o abandon.o filterentry.o \
27 phonetic.o acl.o str2filter.o aclparse.o init.o user.o \
28 repl.o lock.o controls.o extended.o kerberos.o passwd.o \
29 schema.o schema_check.o schema_init.o schemaparse.o \
30 ad.o at.o mr.o syntax.o oc.o \
31 monitor.o configinfo.o starttls.o \
32 root_dse.o sasl.o module.o suffixalias.o $(@PLAT@_OBJS)
34 LDAP_INCDIR= ../../include
35 LDAP_LIBDIR= ../../libraries
38 SLAPD_MODULES=@SLAPD_MODULES_LIST@
40 XDEFS = $(MODULES_CPPFLAGS)
41 XLDFLAGS = $(MODULES_LDFLAGS) $(SLAPD_MODULES)
43 # $(LTHREAD_LIBS) must be last
44 XLIBS = libbackends.a -lavl -lldbm -lldif -llutil -lldap_r -llber
45 XXLIBS = $(LDBM_LIBS) $(SLAPD_LIBS) \
47 $(LDIF_LIBS) $(LUTIL_LIBS)
48 XXXLIBS = $(LTHREAD_LIBS) $(MODULES_LIBS)
50 BUILD_OPT = "--enable-slapd"
51 BUILD_SRV = @BUILD_SLAPD@
53 all-local-srv: all-cffiles
55 NT_GEN_DEFS = -DLIBLUTIL_DECL=dllexport -DLIBAVL_DECL=dllexport \
56 -DLIBLDBM_DECL=dllexport -DLIBLDIF_DECL=dllexport
58 NT_DYN_DEFS = -DLIBLBER_DECL=dllimport -DLIBLDAP_DECL=dllimport
60 DEFINES = $(@PLAT@_@LIB_LINKAGE@_DEFS)
66 for symbol in `cat $<`; do \
67 echo " $$symbol @ $$_hint ; " >> $@; \
68 _hint=`expr 1 + $$_hint`; \
73 $(LTLINK) -o slapd $(OBJS) version.o $(LIBS) $(WRAP_LIBS) \
77 slapd.exp: slapd.def slapd.base
78 dlltool --dllname slapd.exe --def slapd.def --base-file slapd.base \
82 dlltool --dllname slapd.exe --def $< --output-lib $@
85 NT_IMP_LIB = libslapd.a
87 slapd: $(@PLAT@_IMP_LIB) libbackends.a version.o $(@PLAT@_EXP)
88 $(LTLINK) -o $@ $(OBJS) version.o $(LIBS) $(WRAP_LIBS) $(@PLAT@_EXP)
89 (cd tools; $(MAKE) $(MFLAGS) all)
92 $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS) $(WRAP_LIBS)
95 @for i in back-*; do \
97 echo " "; echo " cd $$i; $(MAKE) $(MFLAGS) all"; \
98 ( cd $$i; $(MAKE) $(MFLAGS) all ); \
103 libbackends.a: .backend
106 @-for i in back-*/*.a; do \
110 pre=`echo $$i | sed -e 's/\/.*$$//' -e 's/back-//'`; \
114 $(AR) ruv libbackends.a *.o 2>&1 | grep -v truncated; \
115 $(RM) *.o __.SYMDEF; \
116 echo "added backend library $$i"; \
119 @mv -f tmp/libbackends.a ./libbackends.a
121 @if [ ! -z "$(RANLIB)" ]; then \
122 $(RANLIB) libbackends.a; \
126 version.c: libbackends.a $(OBJS) $(SLAPD_LIBDEPEND)
128 $(MKVERSION) -s -n Versionstr slapd > $@
130 depend-local-srv: FORCE
131 @for i in back-* shell-backends tools; do \
132 if [ -d $$i ]; then \
133 echo; echo " cd $$i; $(MAKE) $(MFLAGS) depend"; \
134 ( cd $$i; $(MAKE) $(MFLAGS) depend ); \
140 rm -f *.exp *.def *.base *.a
142 clean-local-srv: FORCE
143 @for i in back-* shell-backends tools; do \
144 if [ -d $$i ]; then \
145 echo; echo " cd $$i; $(MAKE) $(MFLAGS) clean"; \
146 ( cd $$i; $(MAKE) $(MFLAGS) clean ); \
149 rm -f *.tmp all-cffiles
151 veryclean-local-srv: FORCE
152 @for i in back-* shell-backends tools; do \
153 if [ -d $$i ]; then \
154 echo; echo " cd $$i; $(MAKE) $(MFLAGS) clean"; \
155 ( cd $$i; $(MAKE) $(MFLAGS) veryclean ); \
159 install-local-srv: install-slapd install-conf install-schema install-tools
162 -$(MKDIR) $(DESTDIR)$(libexecdir)
163 -$(MKDIR) $(DESTDIR)$(localstatedir)
164 $(LTINSTALL) $(INSTALLFLAGS) -m 755 slapd$(EXEEXT) \
165 $(DESTDIR)$(libexecdir)
166 @if [ ! -z "$(SLAPD_MODULES)" ]; then \
167 for i in back-* shell-backends tools; do \
168 if [ -d $$i ]; then \
169 echo; echo " cd $$i; $(MAKE) $(MFLAGS) install"; \
170 ( cd $$i; $(MAKE) $(MFLAGS) install ); \
176 CFFILES=slapd.conf slapd.at.conf slapd.oc.conf
179 @for i in $(CFFILES); do \
181 $(SED) -e 's;%SYSCONFDIR%;$(sysconfdir);' \
182 -e 's;%LOCALSTATEDIR%;$(localstatedir);' \
183 $(srcdir)/$$i > $$tmpcf ; \
187 install-schema: FORCE
188 @-$(MKDIR) $(DESTDIR)$(sysconfdir)/schema
190 for i in schema/*.schema schema/*.conf ; do \
191 if test ! -f $(DESTDIR)$(sysconfdir)/$$i; then \
192 echo "installing $$i in $(sysconfdir)"; \
193 echo $(INSTALL) $(INSTALLFLAGS) $$i $(DESTDIR)$(sysconfdir)/$$i; \
194 $(INSTALL) $(INSTALLFLAGS) $$i $(DESTDIR)$(sysconfdir)/$$i; \
196 echo "PRESERVING EXISTING SCHEMA FILE $(DESTDIR)$(sysconfdir)/$$i"; \
198 $(INSTALL) $(INSTALLFLAGS) $$i $(DESTDIR)$(sysconfdir)/$$i.default ; \
202 @-$(MKDIR) $(DESTDIR)$(sysconfdir)
203 @for i in $(CFFILES); do \
205 if test $$i = slapd.conf ; then \
210 if test ! -f $(DESTDIR)$(sysconfdir)/$$i; then \
211 echo "installing $$i in $(sysconfdir)"; \
212 echo "$(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(DESTDIR)$(sysconfdir)/$$i"; \
213 $(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(DESTDIR)$(sysconfdir)/$$i; \
215 echo "PRESERVING EXISTING CONFIGURATION FILE $(DESTDIR)$(sysconfdir)/$$i" ; \
217 $(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(DESTDIR)$(sysconfdir)/$$i.default ; \
221 @-$(MKDIR) $(DESTDIR)$(sbindir)
222 (cd tools; $(MAKE) $(MFLAGS) install)