source: main/trunk/greenstone2/runtime-src/src/recpt/Makefile.in@ 24874

Last change on this file since 24874 was 24874, checked in by ak19, 12 years ago

Third set of commits to do with the migration of cgi-bin into common-src, so that upon make install, common-src\cgi-bin will be installed in cgi-bin\GSDLOS(GSDLARCH). The first commit was of changes to files in cgi-bin itself. The second commit was moving cgi-bin. This one involves changes to all the files referring to cgi-bin where this needs to be changed to cgi-bin\OS_and_ARCH.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 7.8 KB
Line 
1###########################################################################
2#
3# Makefile -- runtime-src/src/recpt
4# A component of the Greenstone digital library software
5# from the New Zealand Digital Library Project at the
6# University of Waikato, New Zealand.
7#
8# Copyright (C) 1999-2008 The New Zealand Digital Library Project
9#
10#
11# This program is free software; you can redistribute it and/or modify
12# it under the terms of the GNU General Public License as published by
13# the Free Software Foundation; either version 2 of the License, or
14# (at your option) any later version.
15#
16# This program is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with this program; if not, write to the Free Software
23# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24#
25###########################################################################
26
27GSDL_DIR = ../../..
28COMMON_DIR = $(GSDL_DIR)/common-src
29RUNTIME_DIR = $(GSDL_DIR)/runtime-src
30
31GSDLOS = @gsdlos@
32
33INDEXERS_DIR = $(COMMON_DIR)/indexers
34COMMON_PACKAGES_DIR = $(COMMON_DIR)/packages
35RUNTIME_PACKAGES_DIR = $(RUNTIME_DIR)/packages
36COLSERVR_DIR = $(RUNTIME_DIR)/src/colservr
37PROTOCOL_DIR = $(RUNTIME_DIR)/src/protocol
38Z3950_DIR = $(RUNTIME_DIR)/src/z3950
39
40
41ENABLE_ACCENTFOLD = @ENABLE_ACCENTFOLD@
42ifeq ($(ENABLE_ACCENTFOLD), 1)
43ifeq ($(COMPAT32BITFLAGS),)
44ACCENTFOLD_LIBS = $(INDEXERS_DIR)/packages/unac/libunac.a $(COMMON_PACKAGES_DIR)/iconv/lib/libiconv.a
45else
46ACCENTFOLD_LIBS = $(INDEXERS_DIR)/packages/unac/libunac.a $(INDEXERS_DIR)/packages/iconv/lib64/libiconv.a
47endif
48else
49ACCENTFOLD_LIBS =
50endif
51
52ENABLE_MG = @ENABLE_MG@
53ifeq ($(ENABLE_MG), 1)
54MG_INDEXERS_LIBS = $(INDEXERS_DIR)/mg/src/text/libmgtext.a \
55 $(INDEXERS_DIR)/mg/lib/libmglib.a
56MG_INCLUDES = -I$(INDEXERS_DIR)/mg -I$(INDEXERS_DIR)/mg/lib
57else
58MG_INDEXERS_LIBS =
59MG_INCLUDES =
60endif
61
62ENABLE_MGPP = @ENABLE_MGPP@
63ifeq ($(ENABLE_MGPP), 1)
64MGPP_SOURCES = phindaction.cpp
65MGPP_OBJECTS = phindaction.o
66MGPP_INDEXERS_LIBS = $(INDEXERS_DIR)/mgpp/text/libmgpptext.a \
67 $(INDEXERS_DIR)/mgpp/lib/libmgpplib.a
68MGPP_INCLUDES = -I$(INDEXERS_DIR)/mgpp/text -I$(INDEXERS_DIR)/mgpp/lib
69else
70MGPP_SOURCES =
71MGPP_OBJECTS =
72MGPP_INDEXERS_LIBS =
73MGPP_INCLUDES =
74endif
75
76USE_FASTCGI = @USE_FASTCGI@
77ifeq ($(USE_FASTCGI), 1)
78FASTCGI_DEFS = -DUSE_FASTCGI
79FASTCGI_INCLUDES = -I$(RUNTIME_PACKAGES_DIR)/fcgi/include
80FASTCGI_LIBS = $(RUNTIME_PACKAGES_DIR)/fcgi/libfcgi/libfcgi.a
81else
82FASTCGI_DEFS =
83FASTCGI_INCLUDES =
84FASTCGI_LIBS =
85endif
86
87USE_GDBM = @USE_GDBM@
88ifeq ($(USE_GDBM), 1)
89GDBM_DEFINES = -DUSE_GDBM
90GDBM_INCLUDES = -I$(COMMON_PACKAGES_DIR)/gdbm/include
91GDBM_LIBS = $(COMMON_PACKAGES_DIR)/gdbm/lib/libgdbm.a
92else
93GDBM_DEFINES =
94GDBM_INCLUDES =
95GDBM_LIBS =
96endif
97
98USE_JDBM = @USE_JDBM@
99ifeq ($(USE_JDBM), 1)
100JDBM_DEFINES = -DUSE_JDBM
101else
102JDBM_DEFINES =
103endif
104
105USE_SQLITE = @USE_SQLITE@
106ifeq ($(USE_SQLITE), 1)
107SQLITE_DEFINES = -DUSE_SQLITE
108SQLITE_LIBS = $(COMMON_PACKAGES_DIR)/sqlite/lib/libsqlite3.a -ldl -lpthread
109SQL_SOURCES = sqlqueryaction.cpp
110SQL_OBJECTS = sqlqueryaction.o
111else
112SQLITE_DEFINES =
113SQLITE_LIBS =
114SQL_SOURCES =
115SQL_OBJECTS =
116endif
117
118
119USE_Z3950 = @USE_Z3950@
120ifeq ($(USE_Z3950), 1)
121Z3950_DEFS = -DUSE_Z3950
122Z3950_INCLUDES = -I$(Z3950_DIR)
123Z3950_LIBS = $(Z3950_DIR)/gsdlz3950.a $(RUNTIME_PACKAGES_DIR)/yaz/lib/libyaz.a
124else
125Z3950_DEFS =
126Z3950_INCLUDES =
127Z3950_LIBS =
128endif
129
130USE_APACHE_HTTPD=@USE_APACHE_HTTPD@
131#ifeq ($(USE_APACHE_HTTPD), 1)
132ifeq ($(USE_APACHE_HTTPD), "IGNORE_FOR_NOW")
133APACHE_OBJS = string_pool.o mod_gsdl.o
134
135APACHE_INSTDIR=$(GSDL_DIR)/apache-httpd/$(GSDLOS)
136APACHE_SRCLIBDIR=../../packages/apache-httpd/httpd-2.2.11/srclib
137
138APXS_CFLAGS=-I$(APACHE_INSTDIR)/include \
139 -I$(APACHE_SRCLIBDIR)/apr/include -I$(APACHE_SRCLIBDIR)/apr-util/include
140
141APXS_LDFLAGS= -L$(APACHE_INSTDIR)/lib \
142 -L$(APACHE_SRCLIBDIR)/apr/include -L$(APACHE_SRCLIBDIR)/apr-util/include
143
144APACHE_MODULE = mod_gsdl.so
145else
146APACHE_OBJS =
147APACHE_MODULE =
148endif
149
150
151AR = ar
152CC = @CC@
153CFLAGS=@CFLAGS@ @COMPAT32BITFLAGS@
154CXX = @CXX@
155CXXFLAGS = @CXXFLAGS@ @COMPAT32BITFLAGS@
156DEFS = @DEFS@ -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DHAVE_CONFIG_H $(FASTCGI_DEFS) $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES) $(Z3950_DEFS)
157INCLUDES = -I. -I$(GSDL_DIR) -I$(COMMON_DIR)/src/lib \
158 -I$(COLSERVR_DIR) -I$(PROTOCOL_DIR) \
159 $(MG_INCLUDES) $(MGPP_INCLUDES) \
160 -I$(COMMON_PACKAGES_DIR)/expat/include $(FASTCGI_INCLUDES) $(GDBM_INCLUDES) $(Z3950_INCLUDES)
161INSTALL = @INSTALL@
162LDFLAGS = @LDFLAGS@ @COMPAT32BITFLAGS@
163LIBS = @LIBS@ $(GDBM_LIBS) \
164 $(COMMON_PACKAGES_DIR)/expat/lib/libexpat.a \
165 $(ACCENTFOLD_LIBS) $(FASTCGI_LIBS) $(SQLITE_LIBS) $(Z3950_LIBS)
166RANLIB = @RANLIB@
167
168
169CXXCOMPILE = $(CXX) -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
170CXXLINK = $(CXX) $(LDFLAGS) -o $@
171
172
173SOURCES = \
174 action.cpp \
175 argdb.cpp \
176 authenaction.cpp \
177 browseaction.cpp \
178 browseactiontools.cpp \
179 browserclass.cpp \
180 browsetoolsclass.cpp \
181 cgiargs.cpp \
182 cgiutils.cpp \
183 cgiwrapper.cpp \
184 collectoraction.cpp \
185 configaction.cpp \
186 converter.cpp \
187 datelistbrowserclass.cpp \
188 depositoraction.cpp \
189 documentaction.cpp \
190 dynamicclassifieraction.cpp \
191 extlinkaction.cpp \
192 formattools.cpp \
193 gtiaction.cpp \
194 highlighttext.cpp \
195 historydb.cpp \
196 hlistbrowserclass.cpp \
197 htmlbrowserclass.cpp \
198 htmlutils.cpp \
199 invbrowserclass.cpp \
200 librarymain.cpp \
201 maincfg.cpp \
202 pageaction.cpp \
203 pagedbrowserclass.cpp \
204 $(MGPP_SOURCES) \
205 phindbrowserclass.cpp \
206 pingaction.cpp \
207 basequeryaction.cpp \
208 queryaction.cpp \
209 $(SQL_SOURCES) \
210 querytools.cpp \
211 receptionist.cpp \
212 statusaction.cpp \
213 summarise.cpp \
214 tipaction.cpp \
215 userdb.cpp \
216 usersaction.cpp \
217 vlistbrowserclass.cpp \
218 wizardaction.cpp
219
220OBJECTS = \
221 action.o \
222 argdb.o \
223 authenaction.o \
224 browseaction.o \
225 browseactiontools.o \
226 browserclass.o \
227 browsetoolsclass.o \
228 cgiargs.o \
229 cgiutils.o \
230 cgiwrapper.o \
231 collectoraction.o \
232 configaction.o \
233 converter.o \
234 datelistbrowserclass.o \
235 depositoraction.o \
236 documentaction.o \
237 dynamicclassifieraction.o \
238 extlinkaction.o \
239 formattools.o \
240 gtiaction.o \
241 highlighttext.o \
242 historydb.o \
243 hlistbrowserclass.o \
244 htmlbrowserclass.o \
245 htmlutils.o \
246 invbrowserclass.o \
247 librarymain.o \
248 maincfg.o \
249 pageaction.o \
250 pagedbrowserclass.o \
251 $(MGPP_OBJECTS) \
252 phindbrowserclass.o \
253 pingaction.o \
254 basequeryaction.o \
255 queryaction.o \
256 $(SQL_OBJECTS) \
257 querytools.o \
258 receptionist.o \
259 statusaction.o \
260 summarise.o \
261 tipaction.o \
262 userdb.o \
263 usersaction.o \
264 vlistbrowserclass.o \
265 wizardaction.o
266
267LIBRARY = gsdlrecpt.a
268
269GSDL_LIBS = \
270 $(PROTOCOL_DIR)/gsdlprotocol.a \
271 $(COLSERVR_DIR)/gsdlcolservr.a \
272 $(MG_INDEXERS_LIBS) \
273 $(MGPP_INDEXERS_LIBS) \
274 $(COMMON_DIR)/src/lib/gsdllib.a
275
276EXECUTABLE_OBJECTS = \
277 $(OBJECTS) \
278 $(GSDL_LIBS)
279
280EXECUTABLE = library.cgi
281
282
283# Default target: make both gsdlrecpt.a and the library executable
284all: $(LIBRARY) $(EXECUTABLE) $(APACHE_MODULE)
285
286gsdlrecpt.a: $(OBJECTS)
287 rm -f $(LIBRARY)
288 $(AR) cru $(LIBRARY) $(OBJECTS)
289 $(RANLIB) $(LIBRARY)
290
291$(EXECUTABLE): $(EXECUTABLE_OBJECTS) $(GSDL_LIBS)
292 $(CXXLINK) $(EXECUTABLE_OBJECTS) $(LIBS)
293
294mod_gsdl.o: mod_gsdl.cpp
295 $(CXX) -c $(CXXFLAGS) $(DEFS) $(INCLUDES) -D_APACHE_MOD=2 -fPIC $(APXS_CFLAGS) -Wall -o $@ $<
296
297mod_gsdl.so: $(APACHE_OBJS) $(LIBRARY)
298 $(CXX) -fPIC -shared -o $@ $(APACHE_OBJS) $(LIBRARY) $(GSDL_LIBS) $(LIBS)
299
300
301.SUFFIXES:
302.SUFFIXES: .cpp .o
303.cpp.o:
304 $(CXXCOMPILE) $<
305
306
307install: $(EXECUTABLE)
308 $(INSTALL) -m 755 -s $(EXECUTABLE) $(GSDL_DIR)/cgi-bin/$(GSDLOS)
309#ifeq ($(USE_APACHE_HTTPD), 1)
310ifeq ($(USE_APACHE_HTTPD), "IGNORE_FOR_NOW")
311 $(GSDL_DIR)/apache-httpd/$(GSDLOS)/bin/apxs -i -n gsdl mod_gsdl.so
312endif
313
314clean:
315 rm -f $(OBJECTS) $(LIBRARY) $(EXECUTABLE) $(APACHE_MODULE) $(APACHE_OBJS)
316
317distclean:
318 rm -f $(OBJECTS) $(LIBRARY) $(EXECUTABLE) Makefile
319
320depend:
321 makedepend -Y -- $(DEFS) $(INCLUDES) $(CXXFLAGS) -- $(SOURCES)
Note: See TracBrowser for help on using the repository browser.