]> git.sur5r.net Git - openldap/blob - servers/slapd/Makefile.in
Removed XLDFLAGS, unnecessary for modules.
[openldap] / servers / slapd / Makefile.in
1 # $OpenLDAP$
2 ##
3 ## Makefile.in for slapd
4 ##
5 PROGRAMS=slapd
6 XPROGRAMS=sslapd libbackends.a .backend
7 XSRCS=version.c
8
9 NT_SRCS = nt_svc.c
10 NT_OBJS = nt_svc.o ../../libraries/liblutil/slapdmsg.res
11
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)
22
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)
33
34 LDAP_INCDIR= ../../include
35 LDAP_LIBDIR= ../../libraries
36
37 SLAP_DIR=
38 SLAPD_MODULES=@SLAPD_MODULES_LIST@
39
40 XDEFS = $(MODULES_CPPFLAGS)
41 XLDFLAGS = $(MODULES_LDFLAGS) $(SLAPD_MODULES)
42
43 # $(LTHREAD_LIBS) must be last
44 XLIBS = libbackends.a -lavl -lldbm -lldif -llutil -lldap_r -llber
45 XXLIBS = $(LDBM_LIBS) $(SLAPD_LIBS) \
46          $(SECURITY_LIBS) \
47          $(LDIF_LIBS) $(LUTIL_LIBS)
48 XXXLIBS = $(LTHREAD_LIBS) $(MODULES_LIBS)
49
50 BUILD_OPT = "--enable-slapd"
51 BUILD_SRV = @BUILD_SLAPD@
52
53 all-local-srv: all-cffiles
54
55 NT_GEN_DEFS = -DLIBLUTIL_DECL=dllexport -DLIBAVL_DECL=dllexport \
56               -DLIBLDBM_DECL=dllexport -DLIBLDIF_DECL=dllexport
57
58 NT_DYN_DEFS  = -DLIBLBER_DECL=dllimport -DLIBLDAP_DECL=dllimport
59
60 DEFINES = $(@PLAT@_@LIB_LINKAGE@_DEFS)
61
62 slapd.def: slapd.syms
63         (                                                       \
64             echo EXPORTS > $@;                                  \
65             _hint=1;                                            \
66             for symbol in `cat $<`; do                          \
67                 echo " $$symbol @ $$_hint ; " >> $@;            \
68                 _hint=`expr 1 + $$_hint`;                       \
69             done                                                \
70         )
71
72 slapd.base: version.o
73         $(LTLINK) -o slapd $(OBJS) version.o $(LIBS) $(WRAP_LIBS) \
74             -Wl,--base-file,$@
75         rm -f slapd
76
77 slapd.exp: slapd.def slapd.base
78         dlltool --dllname slapd.exe --def slapd.def --base-file slapd.base \
79             --output-exp $@
80
81 libslapd.a: slapd.def
82         dlltool --dllname slapd.exe --def $< --output-lib $@
83
84 NT_EXP = slapd.exp
85 NT_IMP_LIB = libslapd.a
86
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)
90
91 sslapd: version.o
92         $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS) $(WRAP_LIBS)
93
94 .backend: FORCE
95         @for i in back-*; do \
96                 if [ -d $$i ]; then \
97                         echo " "; echo "  cd $$i; $(MAKE) $(MFLAGS) all"; \
98                         ( cd $$i; $(MAKE) $(MFLAGS) all ); \
99                 fi; \
100         done; \
101         echo " "
102
103 libbackends.a: .backend
104         @$(RM) -r tmp
105         @$(MKDIR) tmp
106         @-for i in back-*/*.a; do \
107                 ( \
108                   cd tmp; \
109                   $(AR) x ../$$i; \
110                   pre=`echo $$i | sed -e 's/\/.*$$//' -e 's/back-//'`; \
111                   for j in *.o; do \
112                         mv $$j $${pre}$$j; \
113                   done; \
114                   $(AR) ruv libbackends.a *.o 2>&1 | grep -v truncated; \
115                   $(RM) *.o __.SYMDEF; \
116                   echo "added backend library $$i"; \
117                 ); \
118         done
119         @mv -f tmp/libbackends.a ./libbackends.a
120         @$(RM) -r tmp
121         @if [ ! -z "$(RANLIB)" ]; then \
122                 $(RANLIB) libbackends.a; \
123         fi
124         @ls -l libbackends.a
125
126 version.c: libbackends.a $(OBJS) $(SLAPD_LIBDEPEND) 
127         @-$(RM) $@
128         $(MKVERSION) -s -n Versionstr slapd > $@
129
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 ); \
135                 fi; \
136         done
137         @echo ""
138
139 clean-local:
140         rm -f *.exp *.def *.base *.a
141
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 ); \
147                 fi; \
148         done
149         rm -f *.tmp all-cffiles
150
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 ); \
156                 fi; \
157         done
158
159 install-local-srv: install-slapd install-conf install-schema install-tools
160
161 install-slapd: FORCE
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 ); \
171                 fi; \
172             done; \
173         fi
174
175
176 CFFILES=slapd.conf slapd.at.conf slapd.oc.conf
177
178 all-cffiles: slapd
179         @for i in $(CFFILES); do \
180                 tmpcf=$$i.tmp; \
181                 $(SED) -e 's;%SYSCONFDIR%;$(sysconfdir);' \
182                         -e 's;%LOCALSTATEDIR%;$(localstatedir);' \
183                         -e 's;%MODULEDIR%;$(moduledir);' \
184                         $(srcdir)/$$i > $$tmpcf ; \
185         done
186         touch all-cffiles
187
188 install-schema: FORCE
189         @-$(MKDIR) $(DESTDIR)$(sysconfdir)/schema
190         @cd $(srcdir) ; \
191         for i in schema/*.schema schema/*.conf ; do \
192                 if test ! -f $(DESTDIR)$(sysconfdir)/$$i; then \
193                         echo "installing $$i in $(sysconfdir)"; \
194                         echo $(INSTALL) $(INSTALLFLAGS) $$i $(DESTDIR)$(sysconfdir)/$$i; \
195                         $(INSTALL) $(INSTALLFLAGS) $$i $(DESTDIR)$(sysconfdir)/$$i; \
196                 else \
197                         echo "PRESERVING EXISTING SCHEMA FILE $(DESTDIR)$(sysconfdir)/$$i"; \
198                 fi; \
199                 $(INSTALL) $(INSTALLFLAGS) $$i $(DESTDIR)$(sysconfdir)/$$i.default ; \
200         done
201
202 install-conf: FORCE
203         @-$(MKDIR) $(DESTDIR)$(sysconfdir)
204         @-$(MKDIR) $(DESTDIR)$(localstatedir)/openldap-ldbm
205         @for i in $(CFFILES); do \
206                 tmpcf=$$i.tmp ; \
207                 if test $$i = slapd.conf ; then \
208                         mode=600 ; \
209                 else \
210                         mode=644 ; \
211                 fi ; \
212                 if test ! -f $(DESTDIR)$(sysconfdir)/$$i; then \
213                         echo "installing $$i in $(sysconfdir)"; \
214                         echo "$(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(DESTDIR)$(sysconfdir)/$$i"; \
215                         $(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(DESTDIR)$(sysconfdir)/$$i; \
216                 else \
217                         echo "PRESERVING EXISTING CONFIGURATION FILE $(DESTDIR)$(sysconfdir)/$$i" ; \
218                 fi; \
219                 $(INSTALL) $(INSTALLFLAGS) -m $$mode $$tmpcf $(DESTDIR)$(sysconfdir)/$$i.default ; \
220         done
221
222 install-tools: FORCE
223         @-$(MKDIR) $(DESTDIR)$(sbindir)
224         (cd tools; $(MAKE) $(MFLAGS) install)
225