1# GNUstep makefile
2
3include ../../config.make
4include $(GNUSTEP_MAKEFILES)/common.make
5include ../../Version
6
7FRAMEWORK_NAME = SOGo
8
9SOGo_VERSION=$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBMINOR_VERSION)
10
11#SOGo_INSTALL_DIR = $(SOGO_LIBDIR)
12SOGo_INSTALL_DIR = $(DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_FRAMEWORKS)
13
14ADDITIONAL_LDFLAGS += -Wl,--rpath,$(SOGO_SYSLIBDIR)/sogo
15
16SOGo_HEADER_FILES = \
17	SOGoBuild.h \
18	SOGoProductLoader.h		\
19	\
20	BSONCodec.h			\
21	EOBitmaskQualifier.h 		\
22	EOQualifier+SOGoCacheObject.h 	\
23	GCSSpecialQueries+SOGoCacheObject.h \
24	SOGoCache.h			\
25	SOGoCacheGCSFolder.h		\
26	SOGoCacheGCSObject.h		\
27	SOGoCacheObject.h		\
28	SOGoConstants.h			\
29	SOGoObject.h			\
30	SOGoContentObject.h		\
31	SOGoFolder.h			\
32	SOGoGCSFolder.h			\
33	SOGoParentFolder.h		\
34	SOGoUserFolder.h		\
35	SOGoSource.h			\
36	SOGoSystemDefaults.h		\
37	SOGoDomainDefaults.h		\
38	SOGoLDAPDefaults.h		\
39	SOGoDefaultsSource.h		\
40	SOGoUserDefaults.h		\
41	\
42	SOGoSieveManager.h		\
43	\
44	SOGoUserManager.h		\
45	LDAPSource.h			\
46	LDAPSourceSchema.h		\
47	SQLSource.h			\
48	SOGoUserProfile.h		\
49	SOGoDateFormatter.h		\
50	SOGoPermissions.h		\
51	SOGoStartupLogger.h		\
52	NSArray+DAV.h			\
53	NSArray+Utilities.h		\
54	NSCalendarDate+SOGo.h		\
55	NSDictionary+DAV.h		\
56	NSDictionary+URL.h		\
57	NSDictionary+Utilities.h	\
58	NSNull+Utilities.h		\
59	NSNumber+Utilities.h		\
60	NSObject+DAV.h			\
61	NSObject+Utilities.h		\
62	NSString+DAV.h			\
63	NSString+Utilities.h		\
64	NSString+Crypto.h		\
65	NSData+Crypto.h			\
66	NSURL+DAV.h			\
67	\
68	SOGoAuthenticator.h		\
69	SOGoSession.h			\
70	SOGoCASSession.h		\
71	SOGoDAVAuthenticator.h		\
72	SOGoProxyAuthenticator.h	\
73	SOGoStaticAuthenticator.h	\
74	SOGoWebAuthenticator.h		\
75	SOGoWebDAVAclManager.h		\
76	SOGoWebDAVValue.h		\
77	SOGoMailer.h			\
78	SOGoGroup.h			\
79	SOGoUser.h			\
80	\
81	DOMNode+SOGo.h			\
82	\
83	WORequest+SOGo.h		\
84	WOResourceManager+SOGo.h	\
85	WOResponse+SOGo.h		\
86	WOContext+SOGo.h		\
87	\
88	SOGoCredentialsFile.h
89
90all::
91	@touch SOGoBuild.m
92
93SOGo_OBJC_FILES = \
94	SOGoBuild.m \
95	SOGoProductLoader.m		\
96	\
97	BSONCodec.m			\
98	EOBitmaskQualifier.m		\
99	EOQualifier+SOGoCacheObject.m	\
100	GCSSpecialQueries+SOGoCacheObject.m \
101	SOGoCache.m			\
102	SOGoCacheGCSFolder.m		\
103	SOGoCacheGCSObject.m		\
104	SOGoCacheObject.m		\
105	SOGoConstants.m			\
106	SOGoObject.m			\
107	SOGoContentObject.m		\
108	SOGoFolder.m			\
109	SOGoGCSFolder.m			\
110	SOGoParentFolder.m		\
111	SOGoPublicBaseFolder.m		\
112	SOGoUserFolder.m		\
113	\
114	SOGoSieveManager.m		\
115	\
116	SOGoDefaultsSource.m		\
117	SOGoSystemDefaults.m		\
118	SOGoDomainDefaults.m		\
119	SOGoUserDefaults.m		\
120	SOGoUserSettings.m		\
121	\
122	SOGoDateFormatter.m		\
123	SOGoPermissions.m		\
124	SOGoStartupLogger.m		\
125	SOGoUserManager.m		\
126	LDAPSource.m			\
127	LDAPSourceSchema.m		\
128	SQLSource.m			\
129	SOGoUserProfile.m		\
130	SOGoSQLUserProfile.m		\
131	NSArray+DAV.m			\
132	NSArray+Utilities.m		\
133	NSCalendarDate+SOGo.m		\
134	NSDictionary+DAV.m		\
135	NSDictionary+URL.m		\
136	NSDictionary+Utilities.m	\
137	NSNull+Utilities.m		\
138	NSNumber+Utilities.m		\
139	NSObject+DAV.m			\
140	NSObject+Utilities.m		\
141	NSString+DAV.m  		\
142	NSString+Utilities.m		\
143	NSString+Crypto.m		\
144	NSData+Crypto.m			\
145	NSURL+DAV.m	  		\
146	\
147	SOGoSession.m			\
148	SOGoCASSession.m		\
149	SOGoDAVAuthenticator.m		\
150	SOGoProxyAuthenticator.m	\
151	SOGoStaticAuthenticator.m	\
152	SOGoWebAuthenticator.m		\
153	SOGoWebDAVAclManager.m		\
154	SOGoWebDAVValue.m		\
155	SOGoMailer.m			\
156	SOGoGroup.m			\
157	SOGoUser.m			\
158	\
159	DOMNode+SOGo.m			\
160	\
161	WORequest+SOGo.m		\
162	WOResourceManager+SOGo.m	\
163	WOResponse+SOGo.m		\
164	WOContext+SOGo.m		\
165	\
166	SOGoCredentialsFile.m
167
168SOGo_C_FILES += lmhash.c
169
170SOGo_RESOURCE_FILES = \
171	SOGoDefaults.plist \
172	DAVReportMap.plist \
173	CASLogoutRequestMap.plist
174
175ifeq ($(saml2_config), yes)
176	SOGo_HEADER_FILES += SOGoSAML2Session.h SOGoSAML2Exceptions.h
177	SOGo_OBJC_FILES += SOGoSAML2Session.m SOGoSAML2Exceptions.m
178	SOGo_RESOURCE_FILES += SOGoSAML2Metadata.xml
179
180SOGoSAML2Exceptions.h SOGoSAML2Exceptions.m: gen-saml2-exceptions.py
181	$(ECHO_CREATING) ./gen-saml2-exceptions.py $(LASSO_CFLAGS) $(END_ECHO)
182
183distclean clean::
184	-rm -f SOGoSAML2Exceptions.h SOGoSAML2Exceptions.m
185
186endif
187
188ifeq ($(ldap_config),yes)
189
190LIBRARY_NAME += \
191	SOGoNSUserDefaults
192
193SOGoNSUserDefaults_VERSION = 1
194SOGoNSUserDefaults_INSTALL_DIR = $(SOGO_LIBDIR)
195
196SOGoNSUserDefaults_OBJC_FILES = \
197	SOGoLDAPUserDefaultsBootstrap.m \
198	SOGoLDAPUserDefaults.m
199
200endif
201
202ADDITIONAL_TOOL_LIBS += -Lobj -lSOGo$(LIBRARY_NAME_SUFFIX)
203ADDITIONAL_INCLUDE_DIRS += -I../../SOPE/
204ADDITIONAL_LIB_DIRS += -L../../SOPE/GDLContentStore/obj/
205ADDITIONAL_LDFLAGS += -lmemcached
206
207-include GNUmakefile.preamble
208ifneq ($(FHS_INSTALL_ROOT),)
209GNUSTEP_HEADERS=$(DESTDIR)$(FHS_INSTALL_ROOT)/include
210endif
211GNUSTEP_TARGET_LDIR=sogo
212include $(GNUSTEP_MAKEFILES)/framework.make
213include $(GNUSTEP_MAKEFILES)/library.make
214include $(GNUSTEP_MAKEFILES)/tool.make
215-include GNUmakefile.postamble
216