~ubuntu-branches/debian/sid/openchange/sid

« back to all changes in this revision

Viewing changes to .pc/02_mapiproxy_dl/Makefile

  • Committer: Package Import Robot
  • Author(s): Jelmer Vernooij
  • Date: 2012-04-12 20:07:57 UTC
  • mfrom: (11 sid)
  • mto: This revision was merged to the branch mainline in revision 12.
  • Revision ID: package-import@ubuntu.com-20120412200757-k933d9trljmxj1l4
Tags: 1:1.0-4
* openchangeserver: Add dependency on openchangeproxy.
* Rebuild against newer version of Samba 4.
* Use dpkg-buildflags.
* Migrate to Git, update Vcs-Git header.
* Switch to debhelper 9.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# # Makefile for OpenChange
 
2
# Written by Jelmer Vernooij <jelmer@openchange.org>, 2005.
 
3
 
 
4
ifneq ($(MAKECMDGOALS), samba)
 
5
ifneq ($(MAKECMDGOALS), samba-git)
 
6
include config.mk
 
7
endif
 
8
endif
 
9
 
 
10
default: all
 
11
 
 
12
# Until we add proper dependencies for all the C files:
 
13
.NOTPARALLEL:
 
14
 
 
15
config.mk: config.status config.mk.in
 
16
        ./config.status
 
17
 
 
18
config.status: configure
 
19
        @if test x"$(prefix)" != x""; \
 
20
        then \
 
21
          echo "Running configure with prefix '$(prefix)'..."; \
 
22
          ./configure --prefix=$(prefix); \
 
23
        else \
 
24
          echo "Running configure without prefix"; \
 
25
          ./configure; \
 
26
        fi
 
27
 
 
28
configure: configure.ac
 
29
        PREFIX=$(prefix) ./autogen.sh
 
30
 
 
31
samba:
 
32
        ./script/installsamba4.sh all
 
33
 
 
34
samba-git: 
 
35
        ./script/installsamba4.sh git-all
 
36
 
 
37
samba-git-update:
 
38
        ./script/installsamba4.sh git-update
 
39
 
 
40
#################################################################
 
41
# top level compilation rules
 
42
#################################################################
 
43
 
 
44
all:            $(OC_IDL)               \
 
45
                $(OC_LIBS)              \
 
46
                $(OC_TOOLS)             \
 
47
                $(OC_SERVER)            \
 
48
                $(PYMAPIALL)            \
 
49
                $(COVERAGE_INIT)        \
 
50
                $(OPENCHANGE_QT4)
 
51
 
 
52
install:        all                     \
 
53
                installlib              \
 
54
                installpc               \
 
55
                installheader           \
 
56
                $(OC_TOOLS_INSTALL)     \
 
57
                $(OC_SERVER_INSTALL)    \
 
58
                $(PYMAPIINSTALL) \
 
59
                installnagios
 
60
 
 
61
installlib:     $(OC_LIBS_INSTALL)
 
62
installpc:      $(OC_LIBS_INSTALLPC)
 
63
installheader:  $(OC_LIBS_INSTALLHEADERS)
 
64
 
 
65
uninstall::     $(OC_LIBS_UNINSTALL)    \
 
66
                $(OC_TOOLS_UNINSTALL)   \
 
67
                $(OC_SERVER_UNINSTALL)  \
 
68
                $(PYMAPIUNINSTALL)
 
69
 
 
70
dist:: distclean
 
71
        ./autogen.sh
 
72
 
 
73
distclean:: clean
 
74
        rm -f aclocal.m4
 
75
        rm -rf autom4te.cache
 
76
        rm -f Doxyfile
 
77
        rm -f libmapi/Doxyfile
 
78
        rm -f libmapiadmin/Doxyfile
 
79
        rm -f libocpf/Doxyfile
 
80
        rm -f libmapi++/Doxyfile
 
81
        rm -f mapiproxy/Doxyfile
 
82
        rm -f mapiproxy/libmapistore/Doxyfile
 
83
        rm -f config.status config.log
 
84
        rm -f config.h
 
85
        rm -f stamp-h1
 
86
        rm -f utils/mapitest/Doxyfile
 
87
        rm -f intltool-extract intltool-merge intltool-update
 
88
        rm -rf apidocs
 
89
        rm -rf gen_ndr
 
90
        rm -f tags
 
91
 
 
92
clean::
 
93
        rm -f *~
 
94
        rm -f */*~
 
95
        rm -f */*/*~
 
96
        rm -f doc/examples/mapi_sample1
 
97
        rm -f doc/examples/fetchappointment
 
98
        rm -f doc/examples/fetchmail
 
99
 
 
100
re:: clean install
 
101
 
 
102
#################################################################
 
103
# Suffixes compilation rules
 
104
#################################################################
 
105
 
 
106
.SUFFIXES: .c .o .h .po .idl .cpp
 
107
 
 
108
.idl.h:
 
109
        @echo "Generating $@"
 
110
        @$(PIDL) --outputdir=gen_ndr --header -- $<
 
111
 
 
112
.c.o:
 
113
        @echo "Compiling $<"
 
114
        @$(CC) $(CFLAGS) -c $< -o $@
 
115
 
 
116
.c.po:
 
117
        @echo "Compiling $< with -fPIC"
 
118
        @$(CC) $(CFLAGS) -fPIC -c $< -o $@
 
119
 
 
120
.cpp.o:
 
121
        @echo "Compiling $< with -fPIC"
 
122
        @$(CXX) $(CXXFLAGS) $(QT4_CXXFLAGS) -fPIC -c $< -o $@
 
123
 
 
124
.cpp.po:
 
125
        @echo "Compiling $< with -fPIC"
 
126
        @$(CXX) $(CXXFLAGS) -fPIC -c $< -o $@
 
127
 
 
128
#################################################################
 
129
# IDL compilation rules
 
130
#################################################################
 
131
 
 
132
idl: gen_ndr gen_ndr/ndr_exchange.h gen_ndr/ndr_property.h
 
133
 
 
134
exchange.idl: properties_enum.h mapicodes_enum.h
 
135
 
 
136
gen_ndr:
 
137
        @echo "Creating the gen_ndr directory"
 
138
        mkdir -p gen_ndr
 
139
 
 
140
gen_ndr/ndr_%.h gen_ndr/ndr_%.c: %.idl %.h
 
141
        @echo "Generating $@"
 
142
        @$(PIDL) --outputdir=gen_ndr --ndr-parser -- $<
 
143
 
 
144
gen_ndr/ndr_%_c.h gen_ndr/ndr_%_c.c: %.idl %.h
 
145
        @echo "Generating $@"
 
146
        @$(PIDL) --outputdir=gen_ndr --client -- $<
 
147
 
 
148
gen_ndr/ndr_%_s.c: %.idl
 
149
        @echo "Generating $@"
 
150
        @$(PIDL) --outputdir=gen_ndr --server -- $<
 
151
 
 
152
 
 
153
 
 
154
#################################################################
 
155
# libmapi compilation rules
 
156
#################################################################
 
157
 
 
158
LIBMAPI_SO_VERSION = 0
 
159
 
 
160
libmapi:        idl                                     \
 
161
                libmapi/version.h                       \
 
162
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)  
 
163
 
 
164
libmapi-install:        libmapi                 \
 
165
                        libmapi-installpc       \
 
166
                        libmapi-installlib      \
 
167
                        libmapi-installheader   \
 
168
                        libmapi-installscript
 
169
 
 
170
libmapi-uninstall:      libmapi-uninstallpc     \
 
171
                        libmapi-uninstalllib    \
 
172
                        libmapi-uninstallheader \
 
173
                        libmapi-uninstallscript
 
174
 
 
175
libmapi-clean::
 
176
        rm -f libmapi/*.o libmapi/*.po
 
177
        rm -f libmapi/*.gcno libmapi/*.gcda libmapi/*.gcov
 
178
        rm -f libmapi/socket/*.o libmapi/socket/*.po
 
179
        rm -f libmapi/socket/*.gcno libmapi/socket/*.gcda
 
180
        rm -f libmapi/version.h
 
181
ifneq ($(SNAPSHOT), no)
 
182
        rm -f libmapi/mapicode.c
 
183
        rm -f libmapi/codepage_lcid.c
 
184
        rm -f mapicodes_enum.h
 
185
endif
 
186
        rm -f gen_ndr/ndr_exchange*
 
187
        rm -f gen_ndr/exchange.h
 
188
        rm -f gen_ndr/ndr_property*
 
189
        rm -f gen_ndr/property.h
 
190
        rm -f ndr_mapi.o ndr_mapi.po
 
191
        rm -f ndr_mapi.gcno ndr_mapi.gcda
 
192
        rm -f *~
 
193
        rm -f */*~
 
194
        rm -f */*/*~
 
195
        rm -f libmapi.$(SHLIBEXT).$(PACKAGE_VERSION) libmapi.$(SHLIBEXT).* \
 
196
                  libmapi.$(SHLIBEXT)
 
197
 
 
198
clean:: libmapi-clean
 
199
 
 
200
libmapi-distclean::
 
201
        rm -f libmapi.pc
 
202
 
 
203
distclean:: libmapi-distclean
 
204
 
 
205
libmapi-installpc:
 
206
        @echo "[*] install: libmapi pc files"
 
207
        $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig
 
208
        $(INSTALL) -m 0644 libmapi.pc $(DESTDIR)$(libdir)/pkgconfig
 
209
 
 
210
libmapi-installlib:
 
211
        @echo "[*] install: libmapi library"
 
212
        $(INSTALL) -d $(DESTDIR)$(libdir)
 
213
        $(INSTALL) -m 0755 libmapi.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)
 
214
        ln -sf libmapi.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapi.$(SHLIBEXT)
 
215
ifeq ($(MANUALLY_CREATE_SYMLINKS), yes)
 
216
        ln -sf libmapi.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapi.$(SHLIBEXT).$(LIBMAPI_SO_VERSION)
 
217
endif
 
218
 
 
219
libmapi-installheader:
 
220
        @echo "[*] install: libmapi headers"
 
221
        $(INSTALL) -d $(DESTDIR)$(includedir)/libmapi 
 
222
        $(INSTALL) -d $(DESTDIR)$(includedir)/libmapi/socket 
 
223
        $(INSTALL) -d $(DESTDIR)$(includedir)/gen_ndr
 
224
        $(INSTALL) -m 0644 libmapi/libmapi.h $(DESTDIR)$(includedir)/libmapi/
 
225
        $(INSTALL) -m 0644 libmapi/nspi.h $(DESTDIR)$(includedir)/libmapi/
 
226
        $(INSTALL) -m 0644 libmapi/emsmdb.h $(DESTDIR)$(includedir)/libmapi/
 
227
        $(INSTALL) -m 0644 libmapi/mapi_context.h $(DESTDIR)$(includedir)/libmapi/
 
228
        $(INSTALL) -m 0644 libmapi/mapi_provider.h $(DESTDIR)$(includedir)/libmapi/
 
229
        $(INSTALL) -m 0644 libmapi/mapi_id_array.h $(DESTDIR)$(includedir)/libmapi/
 
230
        $(INSTALL) -m 0644 libmapi/mapi_notification.h $(DESTDIR)$(includedir)/libmapi/
 
231
        $(INSTALL) -m 0644 libmapi/mapi_object.h $(DESTDIR)$(includedir)/libmapi/
 
232
        $(INSTALL) -m 0644 libmapi/mapi_profile.h $(DESTDIR)$(includedir)/libmapi/
 
233
        $(INSTALL) -m 0644 libmapi/mapi_nameid.h $(DESTDIR)$(includedir)/libmapi/
 
234
        $(INSTALL) -m 0644 libmapi/mapidefs.h $(DESTDIR)$(includedir)/libmapi/
 
235
        $(INSTALL) -m 0644 libmapi/version.h $(DESTDIR)$(includedir)/libmapi/
 
236
        $(INSTALL) -m 0644 libmapi/mapicode.h $(DESTDIR)$(includedir)/libmapi/
 
237
        $(INSTALL) -m 0644 libmapi/idset.h $(DESTDIR)$(includedir)/libmapi/
 
238
        $(INSTALL) -m 0644 libmapi/property_tags.h $(DESTDIR)$(includedir)/libmapi/
 
239
        $(INSTALL) -m 0644 libmapi/property_altnames.h $(DESTDIR)$(includedir)/libmapi/
 
240
        $(INSTALL) -m 0644 libmapi/socket/netif.h $(DESTDIR)$(includedir)/libmapi/socket/
 
241
        $(INSTALL) -m 0644 gen_ndr/exchange.h $(DESTDIR)$(includedir)/gen_ndr/
 
242
        $(INSTALL) -m 0644 gen_ndr/property.h $(DESTDIR)$(includedir)/gen_ndr/
 
243
        $(INSTALL) -m 0644 gen_ndr/ndr_exchange.h $(DESTDIR)$(includedir)/gen_ndr/
 
244
        $(INSTALL) -m 0644 gen_ndr/ndr_property.h $(DESTDIR)$(includedir)/gen_ndr/
 
245
        @$(SED) $(DESTDIR)$(includedir)/libmapi/*.h
 
246
        @$(SED) $(DESTDIR)$(includedir)/libmapi/socket/*.h
 
247
        @$(SED) $(DESTDIR)$(includedir)/gen_ndr/*.h
 
248
 
 
249
libmapi-installscript:
 
250
        $(INSTALL) -d $(DESTDIR)$(datadir)/setup/profiles
 
251
        $(INSTALL) -m 0644 setup/profiles/oc_profiles* $(DESTDIR)$(datadir)/setup/profiles/
 
252
 
 
253
libmapi-uninstallpc:
 
254
        rm -f $(DESTDIR)$(libdir)/pkgconfig/libmapi.pc
 
255
 
 
256
libmapi-uninstalllib:
 
257
        rm -f $(DESTDIR)$(libdir)/libmapi.*
 
258
 
 
259
libmapi-uninstallheader:
 
260
        rm -rf $(DESTDIR)$(includedir)/libmapi
 
261
        rm -f $(DESTDIR)$(includedir)/gen_ndr/exchange.h
 
262
        rm -f $(DESTDIR)$(includedir)/gen_ndr/property.h
 
263
 
 
264
libmapi-uninstallscript:
 
265
        rm -f $(DESTDIR)$(datadir)/setup/profiles/oc_profiles*
 
266
        rm -rf $(DESTDIR)$(datadir)/setup/profiles
 
267
 
 
268
libmapi.$(SHLIBEXT).$(PACKAGE_VERSION):                 \
 
269
        libmapi/emsmdb.po                               \
 
270
        libmapi/async_emsmdb.po                         \
 
271
        libmapi/IABContainer.po                         \
 
272
        libmapi/IProfAdmin.po                           \
 
273
        libmapi/IMAPIContainer.po                       \
 
274
        libmapi/IMAPIFolder.po                          \
 
275
        libmapi/IMAPIProp.po                            \
 
276
        libmapi/IMAPISession.po                         \
 
277
        libmapi/IMAPISupport.po                         \
 
278
        libmapi/IStream.po                              \
 
279
        libmapi/IMAPITable.po                           \
 
280
        libmapi/IMessage.po                             \
 
281
        libmapi/IMsgStore.po                            \
 
282
        libmapi/IStoreFolder.po                         \
 
283
        libmapi/IUnknown.po                             \
 
284
        libmapi/IMSProvider.po                          \
 
285
        libmapi/IXPLogon.po                             \
 
286
        libmapi/FXICS.po                                \
 
287
        libmapi/utils.po                                \
 
288
        libmapi/property.po                             \
 
289
        libmapi/cdo_mapi.po                             \
 
290
        libmapi/lzfu.po                                 \
 
291
        libmapi/mapi_object.po                          \
 
292
        libmapi/mapi_id_array.po                        \
 
293
        libmapi/property_tags.po                        \
 
294
        libmapi/mapidump.po                             \
 
295
        libmapi/mapicode.po                             \
 
296
        libmapi/codepage_lcid.po                        \
 
297
        libmapi/mapi_nameid.po                          \
 
298
        libmapi/nspi.po                                 \
 
299
        libmapi/simple_mapi.po                          \
 
300
        libmapi/freebusy.po                             \
 
301
        libmapi/x500.po                                 \
 
302
        libmapi/fxparser.po                             \
 
303
        libmapi/notif.po                                \
 
304
        libmapi/idset.po                                \
 
305
        ndr_mapi.po                                     \
 
306
        gen_ndr/ndr_exchange.po                         \
 
307
        gen_ndr/ndr_exchange_c.po                       \
 
308
        gen_ndr/ndr_property.po                         \
 
309
        libmapi/socket/interface.po                     \
 
310
        libmapi/socket/netif.po                         
 
311
        @echo "Linking $@"
 
312
        @$(CC) $(DSOOPT) $(CFLAGS) $(LDFLAGS) -Wl,-soname,libmapi.$(SHLIBEXT).$(LIBMAPI_SO_VERSION) -o $@ $^ $(LIBS)
 
313
 
 
314
 
 
315
libmapi.$(SHLIBEXT).$(LIBMAPI_SO_VERSION): libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
316
        ln -fs $< $@
 
317
 
 
318
libmapi/version.h: VERSION
 
319
        @./script/mkversion.sh VERSION libmapi/version.h $(PACKAGE_VERSION) $(top_builddir)/
 
320
 
 
321
libmapi/emsmdb.c: libmapi/emsmdb.h gen_ndr/ndr_exchange_c.h
 
322
 
 
323
libmapi/async_emsmdb.c: libmapi/emsmdb.h gen_ndr/ndr_exchange_c.h
 
324
 
 
325
libmapi/mapi_nameid.h libmapi/mapitags.c libmapi/mapicode.c libmapi/codepage_lcid.c mapitags_enum.h mapicodes_enum.h mapiproxy/libmapistore/mapistore_nameid.h: \
 
326
        libmapi/conf/mapi-properties                                                            \
 
327
        libmapi/conf/mapi-codes                                                                 \
 
328
        libmapi/conf/mapi-named-properties                                                      \
 
329
        libmapi/conf/codepage-lcid                                                              \
 
330
        libmapi/conf/mparse.pl
 
331
        @./libmapi/conf/build.sh
 
332
 
 
333
#################################################################
 
334
# libmapi++ compilation rules
 
335
#################################################################
 
336
 
 
337
LIBMAPIPP_SO_VERSION = 0
 
338
 
 
339
libmapixx: libmapi \
 
340
        libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
341
        libmapixx-tests \
 
342
        libmapixx-examples
 
343
 
 
344
libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION):       \
 
345
        libmapi++/src/attachment.po             \
 
346
        libmapi++/src/folder.po                 \
 
347
        libmapi++/src/mapi_exception.po         \
 
348
        libmapi++/src/message.po                \
 
349
        libmapi++/src/object.po                 \
 
350
        libmapi++/src/profile.po                \
 
351
        libmapi++/src/session.po \
 
352
        libmapi.$(SHLIBEXT).$(LIBMAPI_SO_VERSION)
 
353
        @echo "Linking $@"
 
354
        @$(CXX) $(DSOOPT) $(CXXFLAGS) $(LDFLAGS) -Wl,-soname,libmapipp.$(SHLIBEXT).$(LIBMAPIPP_SO_VERSION) -o $@ $^ $(LIBS) 
 
355
 
 
356
libmapixx-installpc:
 
357
        @echo "[*] install: libmapi++ pc files"
 
358
        $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig
 
359
        $(INSTALL) -m 0644 libmapi++.pc $(DESTDIR)$(libdir)/pkgconfig
 
360
 
 
361
libmapixx-distclean:
 
362
        rm -f libmapi++.pc
 
363
 
 
364
libmapixx-uninstallpc:
 
365
        rm -f $(DESTDIR)$(libdir)/pkgconfig/libmapi++.pc
 
366
 
 
367
distclean::libmapixx-distclean
 
368
 
 
369
clean:: libmapixx-clean
 
370
 
 
371
libmapixx-install: libmapixx-installheader libmapixx-installlib libmapixx-installpc
 
372
 
 
373
libmapixx-uninstall: libmapixx-uninstallheader libmapixx-uninstalllib libmapixx-uninstallpc
 
374
 
 
375
libmapixx-installheader:
 
376
        @echo "[*] install: libmapi++ headers"
 
377
        $(INSTALL) -d $(DESTDIR)$(includedir)/libmapi++
 
378
        $(INSTALL) -m 0644 libmapi++/attachment.h $(DESTDIR)$(includedir)/libmapi++/
 
379
        $(INSTALL) -m 0644 libmapi++/clibmapi.h $(DESTDIR)$(includedir)/libmapi++/
 
380
        $(INSTALL) -m 0644 libmapi++/folder.h $(DESTDIR)$(includedir)/libmapi++/
 
381
        $(INSTALL) -m 0644 libmapi++/libmapi++.h $(DESTDIR)$(includedir)/libmapi++/
 
382
        $(INSTALL) -m 0644 libmapi++/mapi_exception.h $(DESTDIR)$(includedir)/libmapi++/
 
383
        $(INSTALL) -m 0644 libmapi++/message.h $(DESTDIR)$(includedir)/libmapi++/
 
384
        $(INSTALL) -m 0644 libmapi++/message_store.h $(DESTDIR)$(includedir)/libmapi++/
 
385
        $(INSTALL) -m 0644 libmapi++/object.h $(DESTDIR)$(includedir)/libmapi++/
 
386
        $(INSTALL) -m 0644 libmapi++/profile.h $(DESTDIR)$(includedir)/libmapi++/
 
387
        $(INSTALL) -m 0644 libmapi++/property_container.h $(DESTDIR)$(includedir)/libmapi++/
 
388
        $(INSTALL) -m 0644 libmapi++/session.h $(DESTDIR)$(includedir)/libmapi++/
 
389
        @$(SED) $(DESTDIR)$(includedir)/libmapi++/*.h
 
390
 
 
391
libmapixx-libs-clean:
 
392
        rm -f libmapi++/src/*.po
 
393
        rm -f libmapipp.$(SHLIBEXT)*
 
394
        rm -f libmapi++/src/*.gcno libmapi++/src/*.gcda
 
395
 
 
396
libmapixx-clean: libmapixx-tests-clean libmapixx-libs-clean
 
397
 
 
398
libmapixx-installlib:
 
399
        @echo "[*] install: libmapi++ library"
 
400
        $(INSTALL) -d $(DESTDIR)$(libdir)
 
401
        $(INSTALL) -m 0755 libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)
 
402
        ln -sf libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapipp.$(SHLIBEXT)
 
403
ifeq ($(MANUALLY_CREATE_SYMLINKS), yes)
 
404
        ln -sf libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapipp.$(SHLIBEXT).$(LIBMAPIPP_SO_VERSION)
 
405
endif
 
406
 
 
407
libmapixx-uninstallheader:
 
408
        rm -rf $(DESTDIR)$(includedir)/libmapi++
 
409
 
 
410
libmapixx-uninstalllib:
 
411
        rm -f $(DESTDIR)$(libdir)/libmapipp.*
 
412
 
 
413
libmapixx-tests:        libmapixx-test          \
 
414
                        libmapixx-attach        \
 
415
                        libmapixx-exception     \
 
416
                        libmapixx-profiletest
 
417
 
 
418
libmapixx-tests-clean:  libmapixx-test-clean            \
 
419
                        libmapixx-attach-clean          \
 
420
                        libmapixx-exception-clean       \
 
421
                        libmapixx-profiletest-clean
 
422
 
 
423
libmapixx-test: bin/libmapixx-test
 
424
 
 
425
libmapixx-test-clean:
 
426
        rm -f bin/libmapixx-test
 
427
        rm -f libmapi++/tests/*.o
 
428
 
 
429
clean:: libmapixx-tests-clean
 
430
 
 
431
bin/libmapixx-test:     libmapi++/tests/test.cpp        \
 
432
                libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
433
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
434
        @echo "Linking sample application $@"
 
435
        @$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) 
 
436
 
 
437
clean:: libmapixx-test-clean
 
438
 
 
439
libmapixx-attach: bin/libmapixx-attach
 
440
 
 
441
libmapixx-attach-clean:
 
442
        rm -f bin/libmapixx-attach
 
443
        rm -f libmapi++/tests/*.po
 
444
        rm -f libmapi++/tests/*.gcno libmapi++/tests/*.gcda
 
445
 
 
446
bin/libmapixx-attach: libmapi++/tests/attach_test.po    \
 
447
                libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
448
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
449
        @echo "Linking sample application $@"
 
450
        @$(CXX) $(CXXFLAGS) -o $@ $^ $(LIBS)
 
451
 
 
452
clean:: libmapixx-attach-clean
 
453
 
 
454
libmapixx-exception: bin/libmapixx-exception
 
455
 
 
456
bin/libmapixx-exception: libmapi++/tests/exception_test.cpp \
 
457
                libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
458
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
459
        @echo "Linking exception test application $@"
 
460
        @$(CXX) $(CXXFLAGS) -o $@ $^ $(LIBS)
 
461
 
 
462
libmapixx-exception-clean:
 
463
        rm -f bin/libmapixx-exception
 
464
        rm -f libmapi++/tests/*.o
 
465
        rm -f libmapi++/tests/*.gcno libmapi++/tests/*.gcda
 
466
 
 
467
clean:: libmapixx-exception-clean
 
468
 
 
469
libmapixx-profiletest: bin/libmapixx-profiletest
 
470
 
 
471
libmapixx-profiletest-clean:
 
472
        rm -f bin/libmapixx-profiletest
 
473
        rm -f libmapi++/tests/*.po
 
474
        rm -f libmapi++/tests/*.gcno libmapi++/tests/*.gcda
 
475
 
 
476
bin/libmapixx-profiletest: libmapi++/tests/profile_test.po      \
 
477
                libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
478
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
479
        @echo "Linking profile test application $@"
 
480
        @$(CXX) $(CXXFLAGS) -o $@ $^ $(LIBS)
 
481
 
 
482
clean:: libmapixx-profiletest-clean
 
483
 
 
484
libmapixx-examples: libmapi++/examples/foldertree \
 
485
                  libmapi++/examples/messages
 
486
 
 
487
libmapixx-foldertree-clean:
 
488
        rm -f libmapi++/examples/foldertree
 
489
        rm -f libmapi++/examples/*.o
 
490
        rm -f libmapi++/examples/*.gcno libmapi++/examples/*.gcda
 
491
 
 
492
libmapixx-messages-clean:
 
493
        rm -f libmapi++/examples/messages
 
494
        rm -f libmapi++/examples/*.o
 
495
        rm -f libmapi++/examples/*.gcno libmapi++/examples/*.gcda
 
496
 
 
497
libmapi++/examples/foldertree: libmapi++/examples/foldertree.cpp        \
 
498
                libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
499
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
500
        @echo "Linking foldertree example application $@"
 
501
        @$(CXX) $(CXXFLAGS) -o $@ $^ $(LIBS)
 
502
 
 
503
clean:: libmapixx-foldertree-clean
 
504
 
 
505
libmapi++/examples/messages: libmapi++/examples/messages.cpp    \
 
506
                libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
507
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
508
        @echo "Linking messages example application $@"
 
509
        @$(CXX) $(CXXFLAGS) -o $@ $^ $(LIBS)
 
510
 
 
511
clean:: libmapixx-messages-clean
 
512
 
 
513
#################################################################
 
514
# libmapiadmin compilation rules
 
515
#################################################################
 
516
 
 
517
LIBMAPIADMIN_SO_VERSION = 0
 
518
 
 
519
libmapiadmin:           libmapiadmin.$(SHLIBEXT).$(PACKAGE_VERSION)
 
520
 
 
521
libmapiadmin-install:   libmapiadmin-installpc          \
 
522
                        libmapiadmin-installlib         \
 
523
                        libmapiadmin-installheader
 
524
 
 
525
libmapiadmin-uninstall: libmapiadmin-uninstallpc        \
 
526
                        libmapiadmin-uninstalllib       \
 
527
                        libmapiadmin-uninstallheader
 
528
 
 
529
libmapiadmin-clean::
 
530
        rm -f libmapiadmin/*.o libmapiadmin/*.po
 
531
        rm -f libmapiadmin/*.gcno libmapiadmin/*.gcda
 
532
        rm -f libmapiadmin.$(SHLIBEXT).$(PACKAGE_VERSION) libmapiadmin.$(SHLIBEXT).* \
 
533
                  libmapiadmin.$(SHLIBEXT)
 
534
 
 
535
clean:: libmapiadmin-clean
 
536
 
 
537
libmapiadmin-distclean::
 
538
        rm -f libmapiadmin.pc
 
539
 
 
540
distclean:: libmapiadmin-distclean
 
541
 
 
542
libmapiadmin-installpc:
 
543
        @echo "[*] install: libmapiadmin pc files"
 
544
        $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig
 
545
        $(INSTALL) -m 0644 libmapiadmin.pc $(DESTDIR)$(libdir)/pkgconfig
 
546
 
 
547
libmapiadmin-installlib:
 
548
        @echo "[*] install: libmapiadmin library"
 
549
        $(INSTALL) -d $(DESTDIR)$(libdir)
 
550
        $(INSTALL) -m 0755 libmapiadmin.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)
 
551
        ln -sf libmapiadmin.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapiadmin.$(SHLIBEXT)
 
552
ifeq ($(MANUALLY_CREATE_SYMLINKS), yes)
 
553
        ln -sf libmapiadmin.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapiadmin.$(SHLIBEXT).$(LIBMAPIADMIN_SO_VERSION)
 
554
endif
 
555
 
 
556
libmapiadmin-installheader:
 
557
        @echo "[*] install: libmapiadmin headers"
 
558
        $(INSTALL) -d $(DESTDIR)$(includedir)/libmapiadmin 
 
559
        $(INSTALL) -m 0644 libmapiadmin/libmapiadmin.h $(DESTDIR)$(includedir)/libmapiadmin/
 
560
        @$(SED) $(DESTDIR)$(includedir)/libmapiadmin/*.h
 
561
 
 
562
libmapiadmin-uninstallpc:
 
563
        rm -f $(DESTDIR)$(libdir)/pkgconfig/libmapiadmin.pc
 
564
 
 
565
libmapiadmin-uninstalllib:
 
566
        rm -f $(DESTDIR)$(libdir)/libmapiadmin.*
 
567
 
 
568
libmapiadmin-uninstallheader:
 
569
        rm -rf $(DESTDIR)$(includedir)/libmapiadmin
 
570
 
 
571
libmapiadmin.$(SHLIBEXT).$(PACKAGE_VERSION):    \
 
572
        libmapiadmin/mapiadmin_user.po          \
 
573
        libmapiadmin/mapiadmin.po               \
 
574
        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
575
        @echo "Linking $@"
 
576
        @$(CC) $(DSOOPT) $(LDFLAGS) -Wl,-soname,libmapiadmin.$(SHLIBEXT).$(LIBMAPIADMIN_SO_VERSION) -o $@ $^ $(LIBS) $(LIBMAPIADMIN_LIBS) 
 
577
 
 
578
 
 
579
 
 
580
#################################################################
 
581
# libocpf compilation rules
 
582
#################################################################
 
583
 
 
584
LIBOCPF_SO_VERSION = 0
 
585
 
 
586
libocpf:                libocpf.$(SHLIBEXT).$(PACKAGE_VERSION)
 
587
 
 
588
libocpf-install:        libocpf-installpc       \
 
589
                        libocpf-installlib      \
 
590
                        libocpf-installheader   
 
591
 
 
592
libocpf-uninstall:      libocpf-uninstallpc     \
 
593
                        libocpf-uninstalllib    \
 
594
                        libocpf-uninstallheader 
 
595
 
 
596
libocpf-clean::
 
597
        rm -f libocpf/*.o libocpf/*.po
 
598
        rm -f libocpf/*.gcno libocpf/*.gcda
 
599
ifneq ($(SNAPSHOT), no)
 
600
        rm -f libocpf/lex.yy.c
 
601
        rm -f libocpf/ocpf.tab.c libocpf/ocpf.tab.h
 
602
endif
 
603
        rm -f libocpf.$(SHLIBEXT).$(PACKAGE_VERSION) libocpf.$(SHLIBEXT).* \
 
604
                  libocpf.$(SHLIBEXT)
 
605
 
 
606
clean:: libocpf-clean
 
607
 
 
608
libocpf-distclean::
 
609
        rm -f libocpf.pc
 
610
 
 
611
distclean:: libocpf-distclean
 
612
 
 
613
libocpf-installpc:
 
614
        @echo "[*] install: libocpf pc files"
 
615
        $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig
 
616
        $(INSTALL) -m 0644 libocpf.pc $(DESTDIR)$(libdir)/pkgconfig
 
617
 
 
618
libocpf-installlib:
 
619
        @echo "[*] install: libocpf library"
 
620
        $(INSTALL) -d $(DESTDIR)$(libdir)
 
621
        $(INSTALL) -m 0755 libocpf.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)
 
622
        ln -sf libocpf.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libocpf.$(SHLIBEXT)
 
623
ifeq ($(MANUALLY_CREATE_SYMLINKS), yes)
 
624
        ln -sf libocpf.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libocpf.$(SHLIBEXT).$(LIBOCPF_SO_VERSION)
 
625
endif
 
626
 
 
627
libocpf-installheader:
 
628
        @echo "[*] install: libocpf headers"
 
629
        $(INSTALL) -d $(DESTDIR)$(includedir)/libocpf
 
630
        $(INSTALL) -m 0644 libocpf/ocpf.h $(DESTDIR)$(includedir)/libocpf/
 
631
        @$(SED) $(DESTDIR)$(includedir)/libocpf/*.h
 
632
 
 
633
libocpf-uninstallpc:
 
634
        rm -f $(DESTDIR)$(libdir)/pkgconfig/libocpf.pc
 
635
 
 
636
libocpf-uninstalllib:
 
637
        rm -f $(DESTDIR)$(libdir)/libocpf.*
 
638
 
 
639
libocpf-uninstallheader:
 
640
        rm -rf $(DESTDIR)$(includedir)/libocpf
 
641
 
 
642
libocpf.$(SHLIBEXT).$(PACKAGE_VERSION):         \
 
643
        libocpf/ocpf.tab.po                     \
 
644
        libocpf/lex.yy.po                       \
 
645
        libocpf/ocpf_context.po                 \
 
646
        libocpf/ocpf_public.po                  \
 
647
        libocpf/ocpf_server.po                  \
 
648
        libocpf/ocpf_dump.po                    \
 
649
        libocpf/ocpf_api.po                     \
 
650
        libocpf/ocpf_write.po                   \
 
651
        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
652
        @echo "Linking $@"
 
653
        @$(CC) $(DSOOPT) $(LDFLAGS) -Wl,-soname,libocpf.$(SHLIBEXT).$(LIBOCPF_SO_VERSION) -o $@ $^ $(LIBS)
 
654
 
 
655
libocpf.$(SHLIBEXT).$(LIBOCPF_SO_VERSION): libocpf.$(SHLIBEXT).$(PACKAGE_VERSION)
 
656
        ln -fs $< $@
 
657
 
 
658
libocpf/lex.yy.c:               libocpf/lex.l
 
659
        @echo "Generating $@"
 
660
        @$(FLEX) -t $< > $@
 
661
 
 
662
libocpf/ocpf.tab.c:     libocpf/ocpf.y
 
663
        @echo "Generating $@"
 
664
        @$(BISON) -d $< -o $@
 
665
 
 
666
# Avoid warnings
 
667
libocpf/lex.yy.o: CFLAGS=
 
668
libocpf/ocpf.tab.o: CFLAGS=
 
669
 
 
670
#################################################################
 
671
# mapiproxy compilation rules
 
672
#################################################################
 
673
LIBMAPIPROXY_SO_VERSION = 0
 
674
LIBMAPISERVER_SO_VERSION = 0
 
675
 
 
676
.PHONY: mapiproxy
 
677
 
 
678
mapiproxy:              idl                                     \
 
679
                        libmapiproxy                            \
 
680
                        libmapiserver                           \
 
681
                        libmapistore                            \
 
682
                        mapiproxy/dcesrv_mapiproxy.$(SHLIBEXT)  \
 
683
                        mapiproxy-modules                       \
 
684
                        mapiproxy-servers
 
685
 
 
686
mapiproxy-install:      mapiproxy                               \
 
687
                        mapiproxy-modules-install               \
 
688
                        mapiproxy-servers-install               \
 
689
                        libmapiproxy-install                    \
 
690
                        libmapiserver-install                   \
 
691
                        libmapistore-installpc                  \
 
692
                        libmapistore-install
 
693
        $(INSTALL) -d $(DESTDIR)$(DCERPC_SERVER_MODULESDIR)
 
694
        $(INSTALL) -m 0755 mapiproxy/dcesrv_mapiproxy.$(SHLIBEXT) $(DESTDIR)$(DCERPC_SERVER_MODULESDIR)
 
695
 
 
696
mapiproxy-uninstall:    mapiproxy-modules-uninstall             \
 
697
                        mapiproxy-servers-uninstall             \
 
698
                        libmapiproxy-uninstall                  \
 
699
                        libmapiserver-uninstall                 \
 
700
                        libmapistore-uninstall
 
701
        rm -f $(DESTDIR)$(DCERPC_SERVER_MODULESDIR)/dcesrv_mapiproxy.*
 
702
        rm -f $(DESTDIR)$(libdir)/libmapiproxy.*
 
703
        rm -f $(DESTDIR)$(includedir)/libmapiproxy.h
 
704
 
 
705
mapiproxy-clean::       mapiproxy-modules-clean                 \
 
706
                        mapiproxy-servers-clean                 \
 
707
                        libmapiproxy-clean                      \
 
708
                        libmapiserver-clean                     \
 
709
                        libmapistore-clean
 
710
        rm -f mapiproxy/*.o mapiproxy/*.po
 
711
        rm -f mapiproxy/*.gcno mapiproxy/*.gcda
 
712
        rm -f mapiproxy/dcesrv_mapiproxy.$(SHLIBEXT)
 
713
 
 
714
clean:: mapiproxy-clean
 
715
 
 
716
 
 
717
mapiproxy/dcesrv_mapiproxy.$(SHLIBEXT):         mapiproxy/dcesrv_mapiproxy.po           \
 
718
                                                mapiproxy/dcesrv_mapiproxy_nspi.po      \
 
719
                                                mapiproxy/dcesrv_mapiproxy_rfr.po       \
 
720
                                                mapiproxy/dcesrv_mapiproxy_unused.po    \
 
721
                                                ndr_mapi.po                             \
 
722
                                                gen_ndr/ndr_exchange.po                         
 
723
 
 
724
        @echo "Linking $@"
 
725
        @$(CC) -o $@ $(DSOOPT) $^ -L. $(LDFLAGS) $(LIBS) $(SAMBASERVER_LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION) libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
726
 
 
727
mapiproxy/dcesrv_mapiproxy.c: gen_ndr/ndr_exchange_s.c gen_ndr/ndr_exchange.c
 
728
 
 
729
 
 
730
###############
 
731
# libmapiproxy
 
732
###############
 
733
 
 
734
libmapiproxy: mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
735
 
 
736
libmapiproxy-install:
 
737
        $(INSTALL) -m 0755 mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)
 
738
        ln -sf libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapiproxy.$(SHLIBEXT)
 
739
ifeq ($(MANUALLY_CREATE_SYMLINKS), yes)
 
740
        ln -sf libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapiproxy.$(SHLIBEXT).$(LIBMAPIPROXY_SO_VERSION)
 
741
endif
 
742
        $(INSTALL) -m 0644 mapiproxy/libmapiproxy/libmapiproxy.h $(DESTDIR)$(includedir)/
 
743
        $(INSTALL) -m 0644 mapiproxy/libmapiproxy.pc $(DESTDIR)$(libdir)/pkgconfig
 
744
 
 
745
libmapiproxy-clean:
 
746
        rm -f mapiproxy/libmapiproxy/*.po mapiproxy/libmapiproxy/*.o
 
747
        rm -f mapiproxy/libmapiproxy/*.gcno mapiproxy/libmapiproxy/*.gcda
 
748
        rm -f mapiproxy/libmapiproxy.$(SHLIBEXT).*
 
749
 
 
750
libmapiproxy-uninstall:
 
751
        rm -f $(DESTDIR)$(libdir)/libmapiproxy.*
 
752
        rm -f $(DESTDIR)$(includedir)/libmapiproxy.h
 
753
        rm -f $(DESTDIR)$(libdir)/pkgconfig/libmapiproxy.pc
 
754
 
 
755
libmapiproxy-distclean:
 
756
        rm -f mapiproxy/libmapiproxy.pc
 
757
 
 
758
distclean::libmapiproxy-distclean
 
759
 
 
760
mapiproxy/libmapiproxy/modules.o mapiproxy/libmapiproxy/modules.po: CFLAGS+=-DMODULESDIR=\"${modulesdir}\"
 
761
 
 
762
mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION):  mapiproxy/libmapiproxy/dcesrv_mapiproxy_module.po       \
 
763
                                                        mapiproxy/libmapiproxy/dcesrv_mapiproxy_server.po       \
 
764
                                                        mapiproxy/libmapiproxy/dcesrv_mapiproxy_session.po      \
 
765
                                                        mapiproxy/libmapiproxy/openchangedb.po                  \
 
766
                                                        mapiproxy/libmapiproxy/openchangedb_table.po            \
 
767
                                                        mapiproxy/libmapiproxy/openchangedb_message.po          \
 
768
                                                        mapiproxy/libmapiproxy/openchangedb_property.po         \
 
769
                                                        mapiproxy/libmapiproxy/mapi_handles.po                  \
 
770
                                                        mapiproxy/libmapiproxy/entryid.po                       \
 
771
                                                        mapiproxy/libmapiproxy/modules.po                       \
 
772
                                                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
773
        @echo "Linking $@"
 
774
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) -Wl,-soname,libmapiproxy.$(SHLIBEXT).$(LIBMAPIPROXY_SO_VERSION) $^ -L. $(LIBS) $(TDB_LIBS)
 
775
 
 
776
mapiproxy/libmapiproxy.$(SHLIBEXT).$(LIBMAPIPROXY_SO_VERSION): libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
777
        ln -fs $< $@
 
778
 
 
779
 
 
780
#################
 
781
# libmapiserver
 
782
#################
 
783
 
 
784
libmapiserver: mapiproxy/libmapiserver.$(SHLIBEXT).$(PACKAGE_VERSION)
 
785
 
 
786
libmapiserver-install:
 
787
        $(INSTALL) -m 0755 mapiproxy/libmapiserver.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)
 
788
        ln -sf libmapiserver.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapiserver.$(SHLIBEXT)
 
789
ifeq ($(MANUALLY_CREATE_SYMLINKS), yes)
 
790
        ln -sf libmapiserver.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapiserver.$(SHLIBEXT).$(LIBMAPISERVER_SO_VERSION)
 
791
endif
 
792
        $(INSTALL) -m 0644 mapiproxy/libmapiserver/libmapiserver.h $(DESTDIR)$(includedir)/
 
793
        $(INSTALL) -m 0644 mapiproxy/libmapiserver.pc $(DESTDIR)$(libdir)/pkgconfig
 
794
        @$(SED) $(DESTDIR)$(includedir)/*.h
 
795
 
 
796
libmapiserver-clean:
 
797
        rm -f mapiproxy/libmapiserver/*.po mapiproxy/libmapiserver/*.o
 
798
        rm -f mapiproxy/libmapiserver/*.gcno mapiproxy/libmapiserver/*.gcda
 
799
        rm -f mapiproxy/libmapiserver.$(SHLIBEXT).*
 
800
 
 
801
libmapiserver-uninstall:
 
802
        rm -f $(DESTDIR)$(libdir)/libmapiserver.*
 
803
        rm -f $(DESTDIR)$(includedir)/libmapiserver.h
 
804
        rm -f $(DESTDIR)$(libdir)/pkgconfig/libmapiserver.pc
 
805
 
 
806
libmapiserver-distclean:
 
807
        rm -f mapiproxy/libmapiserver.pc
 
808
 
 
809
distclean:: libmapiserver-distclean
 
810
 
 
811
mapiproxy/libmapiserver.$(SHLIBEXT).$(PACKAGE_VERSION): mapiproxy/libmapiserver/libmapiserver_oxcstor.po        \
 
812
                                                        mapiproxy/libmapiserver/libmapiserver_oxcprpt.po        \
 
813
                                                        mapiproxy/libmapiserver/libmapiserver_oxcfold.po        \
 
814
                                                        mapiproxy/libmapiserver/libmapiserver_oxcfxics.po       \
 
815
                                                        mapiproxy/libmapiserver/libmapiserver_oxctabl.po        \
 
816
                                                        mapiproxy/libmapiserver/libmapiserver_oxcmsg.po         \
 
817
                                                        mapiproxy/libmapiserver/libmapiserver_oxcnotif.po       \
 
818
                                                        mapiproxy/libmapiserver/libmapiserver_oxomsg.po         \
 
819
                                                        mapiproxy/libmapiserver/libmapiserver_oxorule.po        \
 
820
                                                        mapiproxy/libmapiserver/libmapiserver_oxcperm.po        \
 
821
                                                        mapiproxy/libmapiserver/libmapiserver_oxcdata.po        \
 
822
                                                        ndr_mapi.po                             \
 
823
                                                        gen_ndr/ndr_exchange.po
 
824
        @echo "Linking $@"
 
825
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) -Wl,-soname,libmapiserver.$(SHLIBEXT).$(LIBMAPIPROXY_SO_VERSION) $^ $(LIBS)
 
826
 
 
827
mapiproxy/libmapiserver.$(SHLIBEXT).$(LIBMAPISERVER_SO_VERSION): libmapiserver.$(SHLIBEXT).$(PACKAGE_VERSION)
 
828
        ln -fs $< $@
 
829
 
 
830
 
 
831
################
 
832
# libmapistore
 
833
################
 
834
LIBMAPISTORE_SO_VERSION = 0
 
835
 
 
836
mapiproxy/libmapistore/mgmt/mapistore_mgmt.idl: mapiproxy/libmapistore/mgmt/gen_ndr
 
837
 
 
838
mapiproxy/libmapistore/mgmt/gen_ndr/%.h: mapiproxy/libmapistore/mgmt/mapistore_mgmt.idl
 
839
        @echo "Generating $@"
 
840
        @$(PIDL) --outputdir=mapiproxy/libmapistore/mgmt/gen_ndr --header -- $<
 
841
 
 
842
mapiproxy/libmapistore/mgmt/gen_ndr:
 
843
        @echo "Creating gen_ndr directory for libmapistore mgmt IDL"
 
844
        @mkdir -p mapiproxy/libmapistore/mgmt/gen_ndr
 
845
 
 
846
mapiproxy/libmapistore/mgmt/gen_ndr/ndr_%.h mapiproxy/libmapistore/mgmt/gen_ndr/ndr_%.c: mapiproxy/libmapistore/mgmt/%.idl mapiproxy/libmapistore/mgmt/gen_ndr/%.h
 
847
        @echo "Generating $@"
 
848
        @$(PIDL) --outputdir=mapiproxy/libmapistore/mgmt/gen_ndr --ndr-parser -- $<
 
849
 
 
850
libmapistore:   mapiproxy/libmapistore/mapistore_nameid.h               \
 
851
                mapiproxy/libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION)   \
 
852
                setup/mapistore/mapistore_namedprops.ldif               \
 
853
                $(OC_MAPISTORE)                                         \
 
854
                $(MAPISTORE_TEST)
 
855
 
 
856
libmapistore-installpc:
 
857
        @echo "[*] install: libmapistore pc files"
 
858
        $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig
 
859
        $(INSTALL) -m 0644 mapiproxy/libmapistore.pc $(DESTDIR)$(libdir)/pkgconfig
 
860
 
 
861
libmapistore-install:   $(OC_MAPISTORE_INSTALL)
 
862
        $(INSTALL) -m 0755 mapiproxy/libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)
 
863
        ln -sf libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapistore.$(SHLIBEXT)
 
864
ifeq ($(MANUALLY_CREATE_SYMLINKS), yes)
 
865
        ln -sf libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION) $(DESTDIR)$(libdir)/libmapistore.$(SHLIBEXT).$(LIBMAPISTORE_SO_VERSION)
 
866
endif
 
867
        $(INSTALL) -d $(DESTDIR)$(includedir)/mapistore
 
868
        $(INSTALL) -m 0644 mapiproxy/libmapistore/mapistore.h $(DESTDIR)$(includedir)/mapistore/
 
869
        $(INSTALL) -m 0644 mapiproxy/libmapistore/mapistore_errors.h $(DESTDIR)$(includedir)/mapistore/
 
870
        $(INSTALL) -m 0644 mapiproxy/libmapistore/mapistore_nameid.h $(DESTDIR)$(includedir)/mapistore/
 
871
        $(INSTALL) -m 0644 mapiproxy/libmapiserver.pc $(DESTDIR)$(libdir)/pkgconfig
 
872
        $(INSTALL) -d $(DESTDIR)$(datadir)/setup/mapistore
 
873
        $(INSTALL) -m 0644 setup/mapistore/*.ldif $(DESTDIR)$(datadir)/setup/mapistore/
 
874
        @$(SED) $(DESTDIR)$(includedir)/mapistore/*.h
 
875
 
 
876
libmapistore-clean:     $(OC_MAPISTORE_CLEAN)
 
877
        rm -f mapiproxy/libmapistore/*.po mapiproxy/libmapistore/*.o
 
878
        rm -f mapiproxy/libmapistore/mgmt/*.po mapiproxy/libmapistore/mgmt/*.o
 
879
        rm -f mapiproxy/libmapistore/*.gcno mapiproxy/libmapistore/*.gcda
 
880
        rm -f mapiproxy/libmapistore.$(SHLIBEXT).*
 
881
        rm -f setup/mapistore/mapistore_namedprops.ldif
 
882
        rm -f mapiproxy/libmapistore/mapistore_nameid.h
 
883
        rm -rf mapiproxy/libmapistore/mgmt/gen_ndr
 
884
 
 
885
libmapistore-uninstall: $(OC_MAPISTORE_UNINSTALL)
 
886
        rm -f $(DESTDIR)$(libdir)/libmapistore.*
 
887
        rm -rf $(DESTDIR)$(includedir)/mapistore
 
888
        rm -f $(DESTDIR)$(libdir)/pkgconfig/libmapistore.pc
 
889
        rm -rf $(DESTDIR)$(datadir)/setup/mapistore
 
890
 
 
891
libmapistore-distclean: libmapistore-clean
 
892
        rm -f mapiproxy/libmapistore.pc
 
893
 
 
894
distclean:: libmapistore-distclean
 
895
 
 
896
mapiproxy/libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION):  mapiproxy/libmapistore/mgmt/gen_ndr/ndr_mapistore_mgmt.po       \
 
897
                                                        mapiproxy/libmapistore/mapistore_interface.po                   \
 
898
                                                        mapiproxy/libmapistore/mgmt/mapistore_mgmt.po                   \
 
899
                                                        mapiproxy/libmapistore/mgmt/mapistore_mgmt_messages.po          \
 
900
                                                        mapiproxy/libmapistore/mgmt/mapistore_mgmt_send.po              \
 
901
                                                        mapiproxy/libmapistore/mapistore_processing.po                  \
 
902
                                                        mapiproxy/libmapistore/mapistore_backend.po                     \
 
903
                                                        mapiproxy/libmapistore/mapistore_backend_defaults.po            \
 
904
                                                        mapiproxy/libmapistore/mapistore_tdb_wrap.po                    \
 
905
                                                        mapiproxy/libmapistore/mapistore_ldb_wrap.po                    \
 
906
                                                        mapiproxy/libmapistore/mapistore_indexing.po                    \
 
907
                                                        mapiproxy/libmapistore/mapistore_replica_mapping.po             \
 
908
                                                        mapiproxy/libmapistore/mapistore_namedprops.po                  \
 
909
                                                        mapiproxy/libmapistore/mapistore_notification.po                \
 
910
                                                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
911
        @echo "Linking $@"
 
912
        @$(CC) -o $@ $(DSOOPT) $^ -L. $(LDFLAGS) $(LIBS) $(TDB_LIBS) $(DL_LIBS) -Wl,-soname,libmapistore.$(SHLIBEXT).$(LIBMAPISTORE_SO_VERSION)
 
913
 
 
914
mapiproxy/libmapistore.$(SHLIBEXT).$(LIBMAPISTORE_SO_VERSION): libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION)
 
915
        ln -fs $< $@
 
916
 
 
917
setup/mapistore/mapistore_namedprops.ldif:      \
 
918
        libmapi/conf/mapi-named-properties      \
 
919
        libmapi/conf/mparse.pl                  
 
920
        @./libmapi/conf/build.sh
 
921
 
 
922
#####################
 
923
# mapistore backends
 
924
#####################
 
925
 
 
926
#######################
 
927
# mapistore test tools
 
928
#######################
 
929
 
 
930
mapistore_test: bin/mapistore_test
 
931
 
 
932
bin/mapistore_test:     mapiproxy/libmapistore/tests/mapistore_test.o           \
 
933
                        mapiproxy/libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION)
 
934
        @echo "Linking $@"
 
935
        @$(CC) -o $@ $^ $(LDFLAGS) $(LIBS) -lpopt -L. libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
936
 
 
937
mapistore_clean:
 
938
        rm -f mapiproxy/libmapistore/tests/*.o
 
939
        rm -f mapiproxy/libmapistore/tests/*.gcno
 
940
        rm -f mapiproxy/libmapistore/tests/*.gcda
 
941
        rm -f bin/mapistore_test
 
942
 
 
943
clean:: mapistore_clean
 
944
 
 
945
####################
 
946
# mapiproxy modules
 
947
####################
 
948
 
 
949
mapiproxy-modules:      mapiproxy/modules/mpm_downgrade.$(SHLIBEXT)     \
 
950
                        mapiproxy/modules/mpm_pack.$(SHLIBEXT)          \
 
951
                        mapiproxy/modules/mpm_cache.$(SHLIBEXT)         \
 
952
                        mapiproxy/modules/mpm_dummy.$(SHLIBEXT)         
 
953
 
 
954
mapiproxy-modules-install: mapiproxy-modules
 
955
        $(INSTALL) -d $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy/
 
956
        $(INSTALL) -m 0755 mapiproxy/modules/mpm_downgrade.$(SHLIBEXT) $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy/
 
957
        $(INSTALL) -m 0755 mapiproxy/modules/mpm_pack.$(SHLIBEXT) $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy/
 
958
        $(INSTALL) -m 0755 mapiproxy/modules/mpm_cache.$(SHLIBEXT) $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy/
 
959
        $(INSTALL) -m 0755 mapiproxy/modules/mpm_dummy.$(SHLIBEXT) $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy/
 
960
 
 
961
mapiproxy-modules-uninstall:
 
962
        rm -rf $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy
 
963
 
 
964
mapiproxy-modules-clean::
 
965
        rm -f mapiproxy/modules/*.o mapiproxy/modules/*.po
 
966
        rm -f mapiproxy/modules/*.gcno mapiproxy/modules/*.gcda
 
967
        rm -f mapiproxy/modules/*.so
 
968
 
 
969
clean:: mapiproxy-modules-clean
 
970
 
 
971
mapiproxy/modules/mpm_downgrade.$(SHLIBEXT): mapiproxy/modules/mpm_downgrade.po
 
972
        @echo "Linking $@"
 
973
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) $^ -L. $(LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
974
 
 
975
mapiproxy/modules/mpm_pack.$(SHLIBEXT): mapiproxy/modules/mpm_pack.po   \
 
976
                                        ndr_mapi.po                     \
 
977
                                        gen_ndr/ndr_exchange.po
 
978
        @echo "Linking $@"
 
979
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) $^ -L. $(LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
980
 
 
981
mapiproxy/modules/mpm_cache.$(SHLIBEXT): mapiproxy/modules/mpm_cache.po         \
 
982
                                         mapiproxy/modules/mpm_cache_ldb.po     \
 
983
                                         mapiproxy/modules/mpm_cache_stream.po  \
 
984
                                         ndr_mapi.po                            \
 
985
                                         gen_ndr/ndr_exchange.po
 
986
        @echo "Linking $@"
 
987
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) $^ -L. $(LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
988
 
 
989
mapiproxy/modules/mpm_dummy.$(SHLIBEXT): mapiproxy/modules/mpm_dummy.po
 
990
        @echo "Linking $@"
 
991
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) $^ -L. $(LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
992
 
 
993
 
 
994
####################
 
995
# mapiproxy servers
 
996
####################
 
997
provision-install: python-install
 
998
        $(INSTALL) -d $(DESTDIR)$(datadir)/setup/AD
 
999
        $(INSTALL) -m 0644 setup/AD/oc_provision* $(DESTDIR)$(datadir)/setup/AD/
 
1000
        $(INSTALL) -m 0644 setup/AD/prefixMap.txt $(DESTDIR)$(datadir)/setup/AD/
 
1001
        $(INSTALL) -m 0644 setup/AD/provision_schema_basedn_modify.ldif $(DESTDIR)$(datadir)/setup/AD/
 
1002
        $(INSTALL) -d $(DESTDIR)$(datadir)/setup/openchangedb
 
1003
        $(INSTALL) -m 0644 setup/openchangedb/oc_provision* $(DESTDIR)$(datadir)/setup/openchangedb/
 
1004
 
 
1005
provision-uninstall: python-uninstall
 
1006
        rm -f $(DESTDIR)$(datadir)/setup/AD/oc_provision_configuration.ldif
 
1007
        rm -f $(DESTDIR)$(datadir)/setup/AD/oc_provision_schema.ldif
 
1008
        rm -f $(DESTDIR)$(datadir)/setup/AD/oc_provision_schema_modify.ldif
 
1009
        rm -f $(DESTDIR)$(datadir)/setup/AD/oc_provision_schema_ADSC.ldif
 
1010
        rm -f $(DESTDIR)$(datadir)/setup/AD/prefixMap.txt
 
1011
        rm -rf $(DESTDIR)$(datadir)/setup/AD
 
1012
        rm -rf $(DESTDIR)$(datadir)/setup/openchangedb
 
1013
 
 
1014
mapiproxy-servers:      mapiproxy/servers/exchange_nsp.$(SHLIBEXT)              \
 
1015
                        mapiproxy/servers/exchange_emsmdb.$(SHLIBEXT)           \
 
1016
                        mapiproxy/servers/exchange_ds_rfr.$(SHLIBEXT)
 
1017
 
 
1018
mapiproxy-servers-install: mapiproxy-servers provision-install
 
1019
        $(INSTALL) -d $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy_server/
 
1020
        $(INSTALL) -m 0755 mapiproxy/servers/exchange_nsp.$(SHLIBEXT) $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy_server/
 
1021
        $(INSTALL) -m 0755 mapiproxy/servers/exchange_emsmdb.$(SHLIBEXT) $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy_server/
 
1022
        $(INSTALL) -m 0755 mapiproxy/servers/exchange_ds_rfr.$(SHLIBEXT) $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy_server/
 
1023
 
 
1024
mapiproxy-servers-uninstall: provision-uninstall
 
1025
        rm -rf $(DESTDIR)$(modulesdir)/dcerpc_mapiproxy_server
 
1026
 
 
1027
mapiproxy-servers-clean::
 
1028
        rm -f mapiproxy/servers/default/nspi/*.o mapiproxy/servers/default/nspi/*.po
 
1029
        rm -f mapiproxy/servers/default/nspi/*.gcno mapiproxy/servers/default/nspi/*.gcda
 
1030
        rm -f mapiproxy/servers/default/emsmdb/*.o mapiproxy/servers/default/emsmdb/*.po
 
1031
        rm -f mapiproxy/servers/default/emsmdb/*.gcno mapiproxy/servers/default/emsmdb/*.gcda
 
1032
        rm -f mapiproxy/servers/default/rfr/*.o mapiproxy/servers/default/rfr/*.po
 
1033
        rm -f mapiproxy/servers/default/rfr/*.gcno mapiproxy/servers/default/rfr/*.gcda
 
1034
        rm -f mapiproxy/servers/*.so
 
1035
 
 
1036
clean:: mapiproxy-servers-clean
 
1037
 
 
1038
mapiproxy/servers/exchange_nsp.$(SHLIBEXT):     mapiproxy/servers/default/nspi/dcesrv_exchange_nsp.po   \
 
1039
                                                mapiproxy/servers/default/nspi/emsabp.po                \
 
1040
                                                mapiproxy/servers/default/nspi/emsabp_tdb.po            \
 
1041
                                                mapiproxy/servers/default/nspi/emsabp_property.po       
 
1042
        @echo "Linking $@"
 
1043
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) $^ -L. $(LIBS) $(TDB_LIBS) $(SAMBASERVER_LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1044
 
 
1045
mapiproxy/servers/exchange_emsmdb.$(SHLIBEXT):  mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.po      \
 
1046
                                                mapiproxy/servers/default/emsmdb/emsmdbp.po                     \
 
1047
                                                mapiproxy/servers/default/emsmdb/emsmdbp_object.po              \
 
1048
                                                mapiproxy/servers/default/emsmdb/emsmdbp_provisioning.po        \
 
1049
                                                mapiproxy/servers/default/emsmdb/oxcstor.po                     \
 
1050
                                                mapiproxy/servers/default/emsmdb/oxcprpt.po                     \
 
1051
                                                mapiproxy/servers/default/emsmdb/oxcfold.po                     \
 
1052
                                                mapiproxy/servers/default/emsmdb/oxcfxics.po                    \
 
1053
                                                mapiproxy/servers/default/emsmdb/oxctabl.po                     \
 
1054
                                                mapiproxy/servers/default/emsmdb/oxcmsg.po                      \
 
1055
                                                mapiproxy/servers/default/emsmdb/oxcnotif.po                    \
 
1056
                                                mapiproxy/servers/default/emsmdb/oxomsg.po                      \
 
1057
                                                mapiproxy/servers/default/emsmdb/oxorule.po                     \
 
1058
                                                mapiproxy/servers/default/emsmdb/oxcperm.po
 
1059
        @echo "Linking $@"
 
1060
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) $^ -L. $(LIBS) $(SAMBASERVER_LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION) \
 
1061
                                                mapiproxy/libmapiserver.$(SHLIBEXT).$(PACKAGE_VERSION)          \
 
1062
                                                mapiproxy/libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1063
 
 
1064
mapiproxy/servers/exchange_ds_rfr.$(SHLIBEXT):  mapiproxy/servers/default/rfr/dcesrv_exchange_ds_rfr.po
 
1065
        @echo "Linking $@"
 
1066
        @$(CC) -o $@ $(DSOOPT) $(LDFLAGS) $^ -L. $(LIBS) $(SAMBASERVER_LIBS) -Lmapiproxy mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1067
 
 
1068
#################################################################
 
1069
# Tools compilation rules
 
1070
#################################################################
 
1071
 
 
1072
###################
 
1073
# openchangeclient
 
1074
###################
 
1075
 
 
1076
openchangeclient:       bin/openchangeclient
 
1077
 
 
1078
openchangeclient-install:       openchangeclient
 
1079
        $(INSTALL) -d $(DESTDIR)$(bindir) 
 
1080
        $(INSTALL) -m 0755 bin/openchangeclient $(DESTDIR)$(bindir)
 
1081
 
 
1082
openchangeclient-uninstall:
 
1083
        rm -f $(DESTDIR)$(bindir)/openchangeclient
 
1084
 
 
1085
openchangeclient-clean::
 
1086
        rm -f bin/openchangeclient
 
1087
        rm -f utils/openchangeclient.o
 
1088
        rm -f utils/openchangeclient.gcno
 
1089
        rm -f utils/openchangeclient.gcda
 
1090
        rm -f utils/openchange-tools.o
 
1091
        rm -f utils/openchange-tools.gcno
 
1092
        rm -f utils/openchange-tools.gcda
 
1093
 
 
1094
clean:: openchangeclient-clean
 
1095
 
 
1096
bin/openchangeclient:   utils/openchangeclient.o                        \
 
1097
                        utils/openchange-tools.o                        \
 
1098
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)          \
 
1099
                        libocpf.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1100
        @echo "Linking $@"
 
1101
        @$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(LIBS) -lpopt
 
1102
 
 
1103
 
 
1104
##############
 
1105
# mapiprofile
 
1106
##############
 
1107
 
 
1108
mapiprofile:            bin/mapiprofile
 
1109
 
 
1110
mapiprofile-install:    mapiprofile
 
1111
        $(INSTALL) -d $(DESTDIR)$(bindir) 
 
1112
        $(INSTALL) -m 0755 bin/mapiprofile $(DESTDIR)$(bindir)
 
1113
 
 
1114
mapiprofile-uninstall:
 
1115
        rm -f $(DESTDIR)$(bindir)/mapiprofile
 
1116
 
 
1117
mapiprofile-clean::
 
1118
        rm -f bin/mapiprofile
 
1119
        rm -f utils/mapiprofile.o
 
1120
        rm -f utils/mapiprofile.gcno
 
1121
        rm -f utils/mapiprofile.gcda
 
1122
 
 
1123
clean:: mapiprofile-clean
 
1124
 
 
1125
bin/mapiprofile:        utils/mapiprofile.o                     \
 
1126
                        utils/openchange-tools.o                \
 
1127
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1128
        @echo "Linking $@"
 
1129
        @$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(LIBS) -lpopt
 
1130
 
 
1131
 
 
1132
###################
 
1133
#openchangepfadmin
 
1134
###################
 
1135
 
 
1136
openchangepfadmin:      bin/openchangepfadmin
 
1137
 
 
1138
openchangepfadmin-install:      openchangepfadmin
 
1139
        $(INSTALL) -d $(DESTDIR)$(bindir) 
 
1140
        $(INSTALL) -m 0755 bin/openchangepfadmin $(DESTDIR)$(bindir)
 
1141
 
 
1142
openchangepfadmin-uninstall:
 
1143
        rm -f $(DESTDIR)$(bindir)/openchangepfadmin
 
1144
 
 
1145
openchangepfadmin-clean::
 
1146
        rm -f bin/openchangepfadmin
 
1147
        rm -f utils/openchangepfadmin.o
 
1148
        rm -f utils/openchangepfadmin.gcno
 
1149
        rm -f utils/openchangepfadmin.gcda
 
1150
 
 
1151
clean:: openchangepfadmin-clean
 
1152
 
 
1153
bin/openchangepfadmin:  utils/openchangepfadmin.o                       \
 
1154
                        utils/openchange-tools.o                        \
 
1155
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)          \
 
1156
                        libmapiadmin.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1157
        @echo "Linking $@"
 
1158
        @$(CC) -o $@ $^ $(LDFLAGS) $(LIBS) $(LIBMAPIADMIN_LIBS) -lpopt                  
 
1159
 
 
1160
 
 
1161
###################
 
1162
# exchange2mbox
 
1163
###################
 
1164
 
 
1165
exchange2mbox:          bin/exchange2mbox
 
1166
 
 
1167
exchange2mbox-install:  exchange2mbox
 
1168
        $(INSTALL) -d $(DESTDIR)$(bindir)
 
1169
        $(INSTALL) -m 0755 bin/exchange2mbox $(DESTDIR)$(bindir)
 
1170
 
 
1171
exchange2mbox-uninstall:
 
1172
        rm -f $(DESTDIR)$(bindir)/exchange2mbox
 
1173
 
 
1174
exchange2mbox-clean::
 
1175
        rm -f bin/exchange2mbox
 
1176
        rm -f utils/exchange2mbox.o
 
1177
        rm -f utils/exchange2mbox.gcno
 
1178
        rm -f utils/exchange2mbox.gcda
 
1179
        rm -f utils/openchange-tools.o
 
1180
        rm -f utils/openchange-tools.gcno
 
1181
        rm -f utils/openchange-tools.gcda
 
1182
 
 
1183
clean:: exchange2mbox-clean
 
1184
 
 
1185
bin/exchange2mbox:      utils/exchange2mbox.o                           \
 
1186
                        utils/openchange-tools.o                        \
 
1187
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1188
        @echo "Linking $@"
 
1189
        @$(CC) -o $@ $^ $(LIBS) $(LDFLAGS) -lpopt  $(MAGIC_LIBS)
 
1190
 
 
1191
 
 
1192
###################
 
1193
# exchange2ical
 
1194
###################
 
1195
 
 
1196
exchange2ical:          bin/exchange2ical
 
1197
 
 
1198
exchange2ical-install:  exchange2ical
 
1199
        $(INSTALL) -d $(DESTDIR)$(bindir)
 
1200
        $(INSTALL) -m 0755 bin/exchange2ical $(DESTDIR)$(bindir)
 
1201
 
 
1202
exchange2ical-uninstall:
 
1203
        rm -f $(DESTDIR)$(bindir)/exchange2ical
 
1204
 
 
1205
exchange2ical-clean::
 
1206
        rm -f bin/exchange2ical
 
1207
        rm -f utils/exchange2ical_tool.o
 
1208
        rm -f utils/exchange2ical_tool.gcno
 
1209
        rm -f utils/exchange2ical_tool.gcda
 
1210
        rm -f libexchange2ical/libexchange2ical.o
 
1211
        rm -f libexchange2ical/libexchange2ical.gcno
 
1212
        rm -f libexchange2ical/libexchange2ical.gcda
 
1213
        rm -f libexchange2ical/exchange2ical.o
 
1214
        rm -f libexchange2ical/exchange2ical.gcno
 
1215
        rm -f libexchange2ical/exchange2ical.gcda
 
1216
        rm -f libexchange2ical/exchange2ical_utils.o
 
1217
        rm -f libexchange2ical/exchange2ical_utils.gcno
 
1218
        rm -f libexchange2ical/exchange2ical_utils.gcda
 
1219
        rm -f libexchange2ical/exchange2ical_component.o
 
1220
        rm -f libexchange2ical/exchange2ical_component.gcno
 
1221
        rm -f libexchange2ical/exchange2ical_component.gcda
 
1222
        rm -f libexchange2ical/exchange2ical_property.o
 
1223
        rm -f libexchange2ical/exchange2ical_property.gcno
 
1224
        rm -f libexchange2ical/exchange2ical_property.gcda
 
1225
        rm -f libexchange2ical/libical2exchange.o
 
1226
        rm -f libexchange2ical/libical2exchange.gcno
 
1227
        rm -f libexchange2ical/libical2exchange.gcda
 
1228
        rm -f libexchange2ical/ical2exchange.o
 
1229
        rm -f libexchange2ical/ical2exchange.gcno
 
1230
        rm -f libexchange2ical/ical2exchange.gcda
 
1231
        rm -f libexchange2ical/ical2exchange_property.o
 
1232
        rm -f libexchange2ical/ical2exchange_property.gcno
 
1233
        rm -f libexchange2ical/ical2exchange_property.gcda
 
1234
        rm -f libexchange2ical/openchange-tools.o
 
1235
        rm -f libexchange2ical/openchange-tools.gcno
 
1236
        rm -f libexchange2ical/openchange-tools.gcda
 
1237
 
 
1238
 
 
1239
clean:: exchange2ical-clean
 
1240
 
 
1241
bin/exchange2ical:      utils/exchange2ical_tool.o      \
 
1242
                        libexchange2ical/libexchange2ical.o             \
 
1243
                        libexchange2ical/exchange2ical.o                \
 
1244
                        libexchange2ical/exchange2ical_component.o      \
 
1245
                        libexchange2ical/exchange2ical_property.o       \
 
1246
                        libexchange2ical/exchange2ical_utils.o          \
 
1247
                        libexchange2ical/libical2exchange.o     \
 
1248
                        libexchange2ical/ical2exchange.o        \
 
1249
                        libexchange2ical/ical2exchange_property.o       \
 
1250
                        utils/openchange-tools.o                        \
 
1251
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1252
        @echo "Linking $@"
 
1253
        @$(CC) $(LDFLAGS) -o $@ $^ $(LIBS) $(ICAL_LIBS) -lpopt
 
1254
 
 
1255
 
 
1256
###################
 
1257
# mapitest
 
1258
###################
 
1259
 
 
1260
mapitest:       libmapi                 \
 
1261
                utils/mapitest/proto.h  \
 
1262
                bin/mapitest
 
1263
 
 
1264
mapitest-install:       mapitest
 
1265
        $(INSTALL) -d $(DESTDIR)$(bindir)
 
1266
        $(INSTALL) -m 0755 bin/mapitest $(DESTDIR)$(bindir)
 
1267
        $(INSTALL) -d $(DESTDIR)$(datadir)/mapitest/lzxpress
 
1268
        $(INSTALL) -d $(DESTDIR)$(datadir)/mapitest/lzfu
 
1269
        $(INSTALL) -m 0644 utils/mapitest/data/lzxpress/* $(DESTDIR)$(datadir)/mapitest/lzxpress/
 
1270
        $(INSTALL) -m 0644 utils/mapitest/data/lzfu/* $(DESTDIR)$(datadir)/mapitest/lzfu/
 
1271
 
 
1272
mapitest-uninstall:
 
1273
        rm -f $(DESTDIR)$(bindir)/mapitest
 
1274
        rm -rf $(DESTDIR)$(datadir)/mapitest
 
1275
 
 
1276
mapitest-clean:
 
1277
        rm -f bin/mapitest
 
1278
        rm -f utils/mapitest/*.o
 
1279
        rm -f utils/mapitest/*.gcno
 
1280
        rm -f utils/mapitest/*.gcda
 
1281
        rm -f utils/mapitest/modules/*.o
 
1282
        rm -f utils/mapitest/modules/*.gcno
 
1283
        rm -f utils/mapitest/modules/*.gcda
 
1284
ifneq ($(SNAPSHOT), no)
 
1285
        rm -f utils/mapitest/proto.h
 
1286
        rm -f utils/mapitest/mapitest_proto.h
 
1287
endif
 
1288
 
 
1289
clean:: mapitest-clean
 
1290
 
 
1291
bin/mapitest:   utils/mapitest/mapitest.o                       \
 
1292
                utils/openchange-tools.o                        \
 
1293
                utils/mapitest/mapitest_suite.o                 \
 
1294
                utils/mapitest/mapitest_print.o                 \
 
1295
                utils/mapitest/mapitest_stat.o                  \
 
1296
                utils/mapitest/mapitest_common.o                \
 
1297
                utils/mapitest/module.o                         \
 
1298
                utils/mapitest/modules/module_oxcstor.o         \
 
1299
                utils/mapitest/modules/module_oxcfold.o         \
 
1300
                utils/mapitest/modules/module_oxcfxics.o        \
 
1301
                utils/mapitest/modules/module_oxomsg.o          \
 
1302
                utils/mapitest/modules/module_oxcmsg.o          \
 
1303
                utils/mapitest/modules/module_oxcprpt.o         \
 
1304
                utils/mapitest/modules/module_oxctable.o        \
 
1305
                utils/mapitest/modules/module_oxorule.o         \
 
1306
                utils/mapitest/modules/module_oxcnotif.o        \
 
1307
                utils/mapitest/modules/module_oxcfxics.o        \
 
1308
                utils/mapitest/modules/module_oxcperm.o         \
 
1309
                utils/mapitest/modules/module_nspi.o            \
 
1310
                utils/mapitest/modules/module_noserver.o        \
 
1311
                utils/mapitest/modules/module_errorchecks.o     \
 
1312
                utils/mapitest/modules/module_lcid.o            \
 
1313
                utils/mapitest/modules/module_mapidump.o        \
 
1314
                utils/mapitest/modules/module_lzxpress.o        \
 
1315
                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)          
 
1316
        @echo "Linking $@"
 
1317
        @$(CC) -o $@ $^ $(LDFLAGS) $(LIBS) -lpopt $(SUBUNIT_LIBS)
 
1318
 
 
1319
utils/mapitest/proto.h:                                 \
 
1320
        utils/mapitest/mapitest_suite.c                 \
 
1321
        utils/mapitest/mapitest_print.c                 \
 
1322
        utils/mapitest/mapitest_stat.c                  \
 
1323
        utils/mapitest/mapitest_common.c                \
 
1324
        utils/mapitest/module.c                         \
 
1325
        utils/mapitest/modules/module_oxcstor.c         \
 
1326
        utils/mapitest/modules/module_oxcfold.c         \
 
1327
        utils/mapitest/modules/module_oxcfxics.c        \
 
1328
        utils/mapitest/modules/module_oxomsg.c          \
 
1329
        utils/mapitest/modules/module_oxcmsg.c          \
 
1330
        utils/mapitest/modules/module_oxcprpt.c         \
 
1331
        utils/mapitest/modules/module_oxcfxics.c        \
 
1332
        utils/mapitest/modules/module_oxctable.c        \
 
1333
        utils/mapitest/modules/module_oxorule.c         \
 
1334
        utils/mapitest/modules/module_oxcnotif.c        \
 
1335
        utils/mapitest/modules/module_oxcperm.c         \
 
1336
        utils/mapitest/modules/module_nspi.c            \
 
1337
        utils/mapitest/modules/module_noserver.c        \
 
1338
        utils/mapitest/modules/module_errorchecks.c     \
 
1339
        utils/mapitest/modules/module_lcid.c            \
 
1340
        utils/mapitest/modules/module_mapidump.c        \
 
1341
        utils/mapitest/modules/module_lzxpress.c
 
1342
        @echo "Generating $@"
 
1343
        @./script/mkproto.pl --private=utils/mapitest/mapitest_proto.h --public=utils/mapitest/proto.h $^
 
1344
 
 
1345
#####################
 
1346
# openchangemapidump
 
1347
#####################
 
1348
 
 
1349
openchangemapidump:             bin/openchangemapidump
 
1350
 
 
1351
openchangemapidump-install:     openchangemapidump
 
1352
        $(INSTALL) -d $(DESTDIR)$(bindir)
 
1353
        $(INSTALL) -m 0755 bin/openchangemapidump $(DESTDIR)$(bindir)
 
1354
 
 
1355
openchangemapidump-uninstall:
 
1356
        rm -f bin/openchangemapidump
 
1357
        rm -f $(DESTDIR)$(bindir)/openchangemapidump
 
1358
 
 
1359
openchangemapidump-clean::
 
1360
        rm -f bin/openchangemapidump
 
1361
        rm -f utils/backup/openchangemapidump.o
 
1362
        rm -f utils/backup/openchangemapidump.gcno
 
1363
        rm -f utils/backup/openchangemapidump.gcda
 
1364
        rm -f utils/backup/openchangebackup.o
 
1365
        rm -f utils/backup/openchangebackup.gcno
 
1366
        rm -f utils/backup/openchangebackup.gcda
 
1367
 
 
1368
clean:: openchangemapidump-clean
 
1369
 
 
1370
bin/openchangemapidump: utils/backup/openchangemapidump.o               \
 
1371
                        utils/backup/openchangebackup.o                 \
 
1372
                        utils/openchange-tools.o                        \
 
1373
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1374
        @echo "Linking $@"
 
1375
        @$(CC) -o $@ $^ $(LDFLAGS) $(LIBS) -lpopt
 
1376
 
 
1377
 
 
1378
###############
 
1379
# schemaIDGUID
 
1380
###############
 
1381
 
 
1382
schemaIDGUID:           bin/schemaIDGUID
 
1383
 
 
1384
schemaIDGUID-install:   schemaIDGUID
 
1385
        $(INSTALL) -m 0755 bin/schemaIDGUID $(DESTDIR)$(bindir)
 
1386
 
 
1387
schemaIDGUID-uninstall:
 
1388
        rm -f $(DESTDIR)$(bindir)/schemaIDGUID
 
1389
 
 
1390
schemaIDGUID-clean::
 
1391
        rm -f bin/schemaIDGUID
 
1392
        rm -f utils/schemaIDGUID.o
 
1393
        rm -f utils/schemaIDGUID.gcno
 
1394
        rm -f utils/schemaIDGUID.gcda
 
1395
 
 
1396
clean:: schemaIDGUID-clean
 
1397
 
 
1398
bin/schemaIDGUID: utils/schemaIDGUID.o
 
1399
        @echo "Linking $@"
 
1400
        @$(CC) $(CFLAGS) -o $@ $^ $(LIBS)
 
1401
 
 
1402
###################
 
1403
# check_fasttransfer test app.
 
1404
###################
 
1405
 
 
1406
check_fasttransfer:             bin/check_fasttransfer
 
1407
 
 
1408
check_fasttransfer-install:     check_fasttransfer
 
1409
        $(INSTALL) -d $(DESTDIR)$(bindir)
 
1410
        $(INSTALL) -m 0755 bin/check_fasttransfer $(DESTDIR)$(bindir)
 
1411
 
 
1412
check_fasttransfer-uninstall:
 
1413
        rm -f $(DESTDIR)$(bindir)/check_fasttransfer
 
1414
 
 
1415
check_fasttransfer-clean::
 
1416
        rm -f bin/check_fasttransfer
 
1417
        rm -f testprogs/check_fasttransfer.o
 
1418
        rm -f testprogs/check_fasttransfer.gcno
 
1419
        rm -f testprogs/check_fasttransfer.gcda
 
1420
 
 
1421
clean:: check_fasttransfer-clean
 
1422
 
 
1423
bin/check_fasttransfer: testprogs/check_fasttransfer.o                  \
 
1424
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)          \
 
1425
                        mapiproxy/libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1426
        @echo "Linking $@"
 
1427
        @$(CC) -o $@ $^ $(LIBS) $(LDFLAGS) -lpopt
 
1428
 
 
1429
###################
 
1430
# test_asyncnotif test app.
 
1431
###################
 
1432
 
 
1433
test_asyncnotif:                bin/test_asyncnotif
 
1434
 
 
1435
test_asyncnotif-install:        test_asyncnotif
 
1436
        $(INSTALL) -d $(DESTDIR)$(bindir)
 
1437
        $(INSTALL) -m 0755 bin/test_asyncnotif $(DESTDIR)$(bindir)
 
1438
 
 
1439
test_asyncnotif-uninstall:
 
1440
        rm -f $(DESTDIR)$(bindir)/test_asyncnotif
 
1441
 
 
1442
test_asyncnotif-clean::
 
1443
        rm -f bin/test_asyncnotif
 
1444
        rm -f testprogs/test_asyncnotif.o
 
1445
        rm -f testprogs/test_asyncnotif.gcno
 
1446
        rm -f testprogs/test_asyncnotif.gcda
 
1447
 
 
1448
clean:: test_asyncnotif-clean
 
1449
 
 
1450
bin/test_asyncnotif:    testprogs/test_asyncnotif.o                     \
 
1451
                        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1452
        @echo "Linking $@"
 
1453
        @$(CC) -o $@ $^ $(LIBS) $(LDFLAGS) -lpopt
 
1454
 
 
1455
###################
 
1456
# python code
 
1457
###################
 
1458
 
 
1459
pythonscriptdir = python
 
1460
 
 
1461
PYTHON_MODULES = $(patsubst $(pythonscriptdir)/%,%,$(shell find  $(pythonscriptdir) -name "*.py"))
 
1462
 
 
1463
python-install::
 
1464
        @echo "Installing Python modules"
 
1465
        @$(foreach MODULE, $(PYTHON_MODULES), \
 
1466
                $(INSTALL) -d $(DESTDIR)$(pythondir)/$(dir $(MODULE)); \
 
1467
                $(INSTALL) -m 0644 $(pythonscriptdir)/$(MODULE) $(DESTDIR)$(pythondir)/$(dir $(MODULE)); \
 
1468
        )
 
1469
 
 
1470
python-uninstall::
 
1471
        rm -rf $(DESTDIR)$(pythondir)/openchange
 
1472
 
 
1473
EPYDOC_OPTIONS = --no-private --url http://www.openchange.org/ --no-sourcecode
 
1474
 
 
1475
epydoc::
 
1476
        PYTHONPATH=$(pythonscriptdir):$(PYTHONPATH) epydoc $(EPYDOC_OPTIONS) openchange
 
1477
 
 
1478
check-python:
 
1479
        PYTHONPATH=$(pythonscriptdir):$(PYTHONPATH) trial openchange
 
1480
 
 
1481
check:: check-python
 
1482
 
 
1483
clean-python:
 
1484
        rm -f pymapi/*.o
 
1485
        rm -f $(pythonscriptdir)/mapi.$(SHLIBEXT)
 
1486
        rm -f $(pythonscriptdir)/openchange/*.pyc
 
1487
 
 
1488
clean:: clean-python
 
1489
 
 
1490
pyopenchange:   $(pythonscriptdir)/openchange/mapi.$(SHLIBEXT)                  \
 
1491
                $(pythonscriptdir)/openchange/mapistore.$(SHLIBEXT)             
 
1492
#               $(pythonscriptdir)/openchange/ocpf.$(SHLIBEXT)                  \
 
1493
 
 
1494
$(pythonscriptdir)/openchange/mapi.$(SHLIBEXT): pyopenchange/pymapi.c                           \
 
1495
                                                pyopenchange/pymapi_properties.c                \
 
1496
                                                libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1497
        @echo "Linking $@"
 
1498
        @$(CC) $(CFLAGS) -fno-strict-aliasing $(DSOOPT) $(LDFLAGS) -o $@ $^ $(PYTHON_CFLAGS) $(PYTHON_LIBS) $(LIBS) 
 
1499
 
 
1500
# $(pythonscriptdir)/openchange/ocpf.$(SHLIBEXT):       pyopenchange/pyocpf.c                           \
 
1501
#                                               libocpf.$(SHLIBEXT).$(PACKAGE_VERSION)          \
 
1502
#                                               libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1503
#       @echo "Linking $@"
 
1504
#       @$(CC) $(CFLAGS) $(DSOOPT) $(LDFLAGS) -o $@ $^ $(PYTHON_CFLAGS) $(PYTHON_LIBS) $(LIBS) 
 
1505
 
 
1506
$(pythonscriptdir)/openchange/mapistore.$(SHLIBEXT):    pyopenchange/mapistore/pymapistore.c                    \
 
1507
                                                        pyopenchange/mapistore/mgmt.c                           \
 
1508
                                                        pyopenchange/mapistore/context.c                        \
 
1509
                                                        pyopenchange/mapistore/folder.c                         \
 
1510
                                                        pyopenchange/mapistore/table.c                          \
 
1511
                                                        mapiproxy/libmapistore.$(SHLIBEXT).$(PACKAGE_VERSION)   \
 
1512
                                                        mapiproxy/libmapiproxy.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1513
        @echo "Linking $@"
 
1514
        @$(CC) $(CFLAGS) -fno-strict-aliasing $(DSOOPT) $(LDFLAGS) -o $@ $^ $(PYTHON_CFLAGS) $(PYTHON_LIBS) $(LIBS)
 
1515
 
 
1516
 
 
1517
pyopenchange/pymapi_properties.c:               \
 
1518
        libmapi/conf/mapi-properties            \
 
1519
        libmapi/conf/mparse.pl          
 
1520
        @./libmapi/conf/build.sh
 
1521
 
 
1522
pyopenchange-clean:
 
1523
        rm -f pyopenchange/*.o
 
1524
        rm -f pyopenchange/*.pyc
 
1525
#       rm -f $(pythonscriptdir)/openchange/mapi.$(SHLIBEXT)
 
1526
#       rm -f $(pythonscriptdir)/openchange/ocpf.$(SHLIBEXT)
 
1527
        rm -f $(pythonscriptdir)/openchange/mapistore.$(SHLIBEXT)
 
1528
 
 
1529
clean:: pyopenchange-clean
 
1530
 
 
1531
pyopenchange-install:
 
1532
        $(INSTALL) -d $(DESTDIR)$(PYCDIR)/openchange
 
1533
        $(INSTALL) -m 0755 $(pythonscriptdir)/openchange/mapi.$(SHLIBEXT) $(DESTDIR)$(PYCDIR)/openchange
 
1534
#       $(INSTALL) -m 0755 $(pythonscriptdir)/openchange/ocpf.$(SHLIBEXT) $(DESTDIR)$(PYCDIR)/openchange
 
1535
        $(INSTALL) -m 0755 $(pythonscriptdir)/openchange/mapistore.$(SHLIBEXT) $(DESTDIR)$(PYCDIR)/openchange
 
1536
 
 
1537
pyopenchange-uninstall:
 
1538
        rm -f $(DESTDIR)$(PYCDIR)/openchange/mapi.$(SHLIBEXT)
 
1539
        rm -f $(DESTDIR)$(PYCDIR)/openchange/ocpf.$(SHLIBEXT)
 
1540
        rm -f $(DESTDIR)$(PYCDIR)/openchange/mapistore.$(SHLIBEXT)
 
1541
 
 
1542
 
 
1543
###################
 
1544
# nagios plugin
 
1545
###################
 
1546
 
 
1547
nagiosdir = $(libdir)/nagios
 
1548
 
 
1549
installnagios:
 
1550
        $(INSTALL) -d $(DESTDIR)$(nagiosdir)
 
1551
        $(INSTALL) -m 0755 script/check_exchange $(DESTDIR)$(nagiosdir)
 
1552
 
 
1553
###################
 
1554
# libmapi examples
 
1555
###################
 
1556
examples:
 
1557
        cd doc/examples && make && cd ${OLD_PWD}
 
1558
 
 
1559
examples-clean::
 
1560
        rm -f doc/examples/mapi_sample1
 
1561
        rm -f doc/examples/fetchappointment
 
1562
        rm -f doc/examples/fetchmail
 
1563
 
 
1564
clean:: examples-clean
 
1565
 
 
1566
examples-install examples-uninstall:
 
1567
 
 
1568
manpages = \
 
1569
                doc/man/man1/exchange2mbox.1                            \
 
1570
                doc/man/man1/mapiprofile.1                              \
 
1571
                doc/man/man1/openchangeclient.1                         \
 
1572
                doc/man/man1/openchangepfadmin.1                        \
 
1573
                $(wildcard apidocs/man/man3/*)
 
1574
 
 
1575
installman: doxygen
 
1576
        @./script/installman.sh $(DESTDIR)$(mandir) $(manpages)
 
1577
 
 
1578
 
 
1579
uninstallman:
 
1580
        @./script/uninstallman.sh $(DESTDIR)$(mandir) $(manpages)
 
1581
 
 
1582
doxygen:        
 
1583
        @if test ! -d apidocs ; then                                            \
 
1584
                echo "Doxify API documentation: HTML and man pages";            \
 
1585
                mkdir -p apidocs/html;                                          \
 
1586
                mkdir -p apidocs/man;                                           \
 
1587
                $(DOXYGEN) Doxyfile;                                            \
 
1588
                $(DOXYGEN) libmapi/Doxyfile;                                    \
 
1589
                $(DOXYGEN) libmapiadmin/Doxyfile;                               \
 
1590
                $(DOXYGEN) libocpf/Doxyfile;                                    \
 
1591
                $(DOXYGEN) libmapi++/Doxyfile;                                  \
 
1592
                $(DOXYGEN) mapiproxy/Doxyfile;                                  \
 
1593
                $(DOXYGEN) utils/mapitest/Doxyfile;                             \
 
1594
                $(DOXYGEN) mapiproxy/libmapistore/Doxyfile;                     \
 
1595
                cp -f doc/doxygen/index.html apidocs/html;                      \
 
1596
                cp -f doc/doxygen/pictures/* apidocs/html/overview;             \
 
1597
                cp -f doc/doxygen/pictures/* apidocs/html/libmapi;              \
 
1598
                cp -f doc/doxygen/pictures/* apidocs/html/libmapiadmin;         \
 
1599
                cp -f doc/doxygen/pictures/* apidocs/html/libmapi++;            \
 
1600
                cp -f doc/doxygen/pictures/* apidocs/html/libocpf;              \
 
1601
                cp -f doc/doxygen/pictures/* apidocs/html/mapitest;             \
 
1602
                cp -f doc/doxygen/pictures/* apidocs/html/mapiproxy;            \
 
1603
                cp -f doc/doxygen/pictures/* apidocs/html/libmapistore;         \
 
1604
                cp -f mapiproxy/documentation/pictures/* apidocs/html/mapiproxy;\
 
1605
                rm -f apidocs/man/man3/todo.3;                                  \
 
1606
                rm -f apidocs/man/man3/bug.3;                                   \
 
1607
                rm -f apidocs/man/man3/*.c.3;                                   \
 
1608
        fi                                                              
 
1609
 
 
1610
etags:
 
1611
        etags `find $(srcdir) -name "*.[ch]"`
 
1612
 
 
1613
ctags:
 
1614
        ctags `find $(srcdir) -name "*.[ch]"`
 
1615
 
 
1616
.PRECIOUS: exchange.h gen_ndr/ndr_exchange.h gen_ndr/ndr_exchange.c gen_ndr/ndr_exchange_c.c gen_ndr/ndr_exchange_c.h mapiproxy/libmapistore/mgmt/gen_ndr/ndr_mapistore_mgmt.c mapiproxy/libmapistore/mgmt/gen_ndr/mapistore_mgmt.h
 
1617
 
 
1618
test:: check
 
1619
 
 
1620
check:: libmapi.$(SHLIBEXT).$(LIBMAPI_SO_VERSION)
 
1621
        # FIXME: Set up server
 
1622
        ./bin/mapitest --mapi-calls 
 
1623
 
 
1624
####################################
 
1625
# coverage tests
 
1626
#
 
1627
# this could be better integrated...
 
1628
####################################
 
1629
coverage-init:
 
1630
        lcov --base-directory . --directory . --capture --initial --output-file oc_cov.info
 
1631
 
 
1632
coverage::
 
1633
        rm -f libmapi/\<stdout\>.gcov
 
1634
        rm -f ./libocpf/lex.yy.gcda
 
1635
        rm -f libocpf/\<stdout\>.gcov
 
1636
        rm -f ./\<stdout\>.gcov
 
1637
        lcov --base-directory .  --directory . --output-file oc_cov.info --capture
 
1638
        genhtml -o covresults oc_cov.info
 
1639
 
 
1640
coverage-clean::
 
1641
        rm -rf oc_cov.info
 
1642
        rm -rf covresults
 
1643
        rm -f test.gcno
 
1644
 
 
1645
clean:: coverage-clean
 
1646
 
 
1647
####################################
 
1648
# Qt4 widgets
 
1649
####################################
 
1650
openchange_qt4: qt-lib qt-demoapp
 
1651
 
 
1652
qt-lib: libqtmapi
 
1653
 
 
1654
qt-demoapp: qt/demo/demoapp.moc qt/demo/demoapp 
 
1655
 
 
1656
# No install yet - we need to finish this first
 
1657
 
 
1658
qt-clean::
 
1659
        rm -f qt/demo/demoapp
 
1660
        rm -f qt/demo/*.o
 
1661
        rm -f qt/lib/*.o
 
1662
        rm -f qt/demo/*.moc
 
1663
        rm -f qt/lib/*.moc
 
1664
        rm -f libqtmapi*
 
1665
 
 
1666
clean:: qt-clean
 
1667
 
 
1668
qt/demo/demoapp.moc:    qt/demo/demoapp.h
 
1669
        @$(MOC) -i qt/demo/demoapp.h -o qt/demo/demoapp.moc
 
1670
 
 
1671
qt/lib/foldermodel.moc: qt/lib/foldermodel.h
 
1672
        @$(MOC) -i qt/lib/foldermodel.h -o qt/lib/foldermodel.moc
 
1673
 
 
1674
qt/lib/messagesmodel.moc:       qt/lib/messagesmodel.h
 
1675
        @$(MOC) -i qt/lib/messagesmodel.h -o qt/lib/messagesmodel.moc
 
1676
 
 
1677
libqtmapi: libmapi                                      \
 
1678
        qt/lib/foldermodel.moc                          \
 
1679
        qt/lib/messagesmodel.moc                        \
 
1680
        libqtmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1681
 
 
1682
LIBQTMAPI_SO_VERSION = 0
 
1683
 
 
1684
libqtmapi.$(SHLIBEXT).$(PACKAGE_VERSION):       \
 
1685
        qt/lib/foldermodel.o                    \
 
1686
        qt/lib/messagesmodel.o
 
1687
        @echo "Linking $@"
 
1688
        @$(CXX) $(DSOOPT) $(CXXFLAGS) $(LDFLAGS) -Wl,-soname,libqtmapi.$(SHLIBEXT).$(LIBQTMAPI_SO_VERSION) -o $@ $^ $(LIBS)
 
1689
 
 
1690
 
 
1691
qt/demo/demoapp: qt/demo/demoapp.o                              \
 
1692
        qt/demo/main.o                                  \
 
1693
        libmapi.$(SHLIBEXT).$(PACKAGE_VERSION)          \
 
1694
        libmapipp.$(SHLIBEXT).$(PACKAGE_VERSION)        \
 
1695
        libqtmapi.$(SHLIBEXT).$(PACKAGE_VERSION)
 
1696
        @echo "Linking $@"
 
1697
        @$(CXX) $(CXXFLAGS) -o $@ $^ $(QT4_LIBS) $(LDFLAGS) $(LIBS)
 
1698
        # we don't yet install this...
 
1699
        ln -sf libqtmapi.$(SHLIBEXT).$(PACKAGE_VERSION) libqtmapi.$(SHLIBEXT)
 
1700
        ln -sf libqtmapi.$(SHLIBEXT).$(PACKAGE_VERSION) libqtmapi.$(SHLIBEXT).$(LIBQTMAPI_SO_VERSION)
 
1701
 
 
1702
# This should be the last line in the makefile since other distclean rules may 
 
1703
# need config.mk
 
1704
distclean::
 
1705
        rm -f config.mk