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

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

Dr Bainbridge has introduced the isPersistentAction (add the a=is-persistent to the library url). It is true for server.exe and when using mod_gsdl, but false for library.cgi which uses the apache web server (when not using mod_gsdl).

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 8.1 KB
RevLine 
[552]1###########################################################################
2#
[18224]3# Makefile -- runtime-src/src/recpt
[558]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#
[15478]8# Copyright (C) 1999-2008 The New Zealand Digital Library Project
[552]9#
10#
[558]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#
[552]25###########################################################################
26
[16563]27GSDL_DIR = ../../..
[16572]28COMMON_DIR = $(GSDL_DIR)/common-src
29RUNTIME_DIR = $(GSDL_DIR)/runtime-src
[1937]30
[19259]31GSDLOS = @gsdlos@
[24901]32GSDLARCH = @gsdlarch@
[19259]33
[16563]34INDEXERS_DIR = $(COMMON_DIR)/indexers
[18025]35COMMON_PACKAGES_DIR = $(COMMON_DIR)/packages
[18226]36RUNTIME_PACKAGES_DIR = $(RUNTIME_DIR)/packages
[16563]37COLSERVR_DIR = $(RUNTIME_DIR)/src/colservr
38PROTOCOL_DIR = $(RUNTIME_DIR)/src/protocol
39Z3950_DIR = $(RUNTIME_DIR)/src/z3950
[13773]40
[16563]41
[12926]42ENABLE_ACCENTFOLD = @ENABLE_ACCENTFOLD@
43ifeq ($(ENABLE_ACCENTFOLD), 1)
[20849]44ACCENTFOLD_LIBS = $(INDEXERS_DIR)/packages/unac/libunac.a $(COMMON_PACKAGES_DIR)/iconv/lib/libiconv.a
[12926]45else
[15478]46ACCENTFOLD_LIBS =
[12926]47endif
48
[21324]49ENABLE_MG = @ENABLE_MG@
50ifeq ($(ENABLE_MG), 1)
51MG_INDEXERS_LIBS = $(INDEXERS_DIR)/mg/src/text/libmgtext.a \
52 $(INDEXERS_DIR)/mg/lib/libmglib.a
53MG_INCLUDES = -I$(INDEXERS_DIR)/mg -I$(INDEXERS_DIR)/mg/lib
54else
55MG_INDEXERS_LIBS =
56MG_INCLUDES =
57endif
58
59ENABLE_MGPP = @ENABLE_MGPP@
60ifeq ($(ENABLE_MGPP), 1)
61MGPP_SOURCES = phindaction.cpp
62MGPP_OBJECTS = phindaction.o
63MGPP_INDEXERS_LIBS = $(INDEXERS_DIR)/mgpp/text/libmgpptext.a \
64 $(INDEXERS_DIR)/mgpp/lib/libmgpplib.a
65MGPP_INCLUDES = -I$(INDEXERS_DIR)/mgpp/text -I$(INDEXERS_DIR)/mgpp/lib
66else
67MGPP_SOURCES =
68MGPP_OBJECTS =
69MGPP_INDEXERS_LIBS =
70MGPP_INCLUDES =
71endif
72
[568]73USE_FASTCGI = @USE_FASTCGI@
[15478]74ifeq ($(USE_FASTCGI), 1)
75FASTCGI_DEFS = -DUSE_FASTCGI
[18226]76FASTCGI_INCLUDES = -I$(RUNTIME_PACKAGES_DIR)/fcgi/include
77FASTCGI_LIBS = $(RUNTIME_PACKAGES_DIR)/fcgi/libfcgi/libfcgi.a
[15478]78else
79FASTCGI_DEFS =
80FASTCGI_INCLUDES =
81FASTCGI_LIBS =
[556]82endif
[15452]83
[22058]84USE_GDBM = @USE_GDBM@
[21485]85ifeq ($(USE_GDBM), 1)
86GDBM_DEFINES = -DUSE_GDBM
87GDBM_INCLUDES = -I$(COMMON_PACKAGES_DIR)/gdbm/include
[22078]88GDBM_LIBS = $(COMMON_PACKAGES_DIR)/gdbm/lib/libgdbm.a
[21485]89else
90GDBM_DEFINES =
91GDBM_INCLUDES =
[22078]92GDBM_LIBS =
[21485]93endif
94
[22058]95USE_JDBM = @USE_JDBM@
96ifeq ($(USE_JDBM), 1)
97JDBM_DEFINES = -DUSE_JDBM
98else
99JDBM_DEFINES =
100endif
101
[15599]102USE_SQLITE = @USE_SQLITE@
103ifeq ($(USE_SQLITE), 1)
[22046]104SQLITE_DEFINES = -DUSE_SQLITE
[18024]105SQLITE_LIBS = $(COMMON_PACKAGES_DIR)/sqlite/lib/libsqlite3.a -ldl -lpthread
[22058]106SQL_SOURCES = sqlqueryaction.cpp
107SQL_OBJECTS = sqlqueryaction.o
[15599]108else
[22046]109SQLITE_DEFINES =
[15599]110SQLITE_LIBS =
[22046]111SQL_SOURCES =
112SQL_OBJECTS =
113endif
114
[24958]115USE_RSS = @USE_RSS@
116ifeq ($(USE_RSS), 1)
117RSS_DEFINES = -DUSE_RSS
118RSS_SOURCES = rssaction.cpp
119RSS_OBJECTS = rssaction.o
120else
121RSS_DEFINES =
122RSS_SOURCES =
123RSS_OBJECTS =
124endif
[22046]125
[24958]126
[15494]127USE_Z3950 = @USE_Z3950@
128ifeq ($(USE_Z3950), 1)
129Z3950_DEFS = -DUSE_Z3950
130Z3950_INCLUDES = -I$(Z3950_DIR)
[18226]131Z3950_LIBS = $(Z3950_DIR)/gsdlz3950.a $(RUNTIME_PACKAGES_DIR)/yaz/lib/libyaz.a
[15494]132else
133Z3950_DEFS =
134Z3950_INCLUDES =
135Z3950_LIBS =
136endif
[8033]137
[19259]138USE_APACHE_HTTPD=@USE_APACHE_HTTPD@
[19358]139#ifeq ($(USE_APACHE_HTTPD), 1)
140ifeq ($(USE_APACHE_HTTPD), "IGNORE_FOR_NOW")
[19259]141APACHE_OBJS = string_pool.o mod_gsdl.o
[15494]142
[19292]143APACHE_INSTDIR=$(GSDL_DIR)/apache-httpd/$(GSDLOS)
144APACHE_SRCLIBDIR=../../packages/apache-httpd/httpd-2.2.11/srclib
145
146APXS_CFLAGS=-I$(APACHE_INSTDIR)/include \
147 -I$(APACHE_SRCLIBDIR)/apr/include -I$(APACHE_SRCLIBDIR)/apr-util/include
148
149APXS_LDFLAGS= -L$(APACHE_INSTDIR)/lib \
150 -L$(APACHE_SRCLIBDIR)/apr/include -L$(APACHE_SRCLIBDIR)/apr-util/include
151
[19259]152APACHE_MODULE = mod_gsdl.so
153else
154APACHE_OBJS =
[19292]155APACHE_MODULE =
[19259]156endif
157
[25236]158# Extension support
[25238]159EXT_DEFINES =
[25236]160EXT_INCLUDES =
[25238]161EXT_LDFLAGS =
162EXT_LIBS =
[19259]163
[25236]164
165
[15577]166AR = ar
[15551]167CC = @CC@
[25149]168CFLAGS=@CFLAGS@ @ARCH_DEP_FLAGS@
[15551]169CXX = @CXX@
[25149]170CXXFLAGS = @CXXFLAGS@ @ARCH_DEP_FLAGS@
[25236]171DEFS = @DEFS@ -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DHAVE_CONFIG_H $(FASTCGI_DEFS) $(RSS_DEFINES) $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES) $(Z3950_DEFS) $(EXT_DEFINES)
[21485]172INCLUDES = -I. -I$(GSDL_DIR) -I$(COMMON_DIR)/src/lib \
[15555]173 -I$(COLSERVR_DIR) -I$(PROTOCOL_DIR) \
[21324]174 $(MG_INCLUDES) $(MGPP_INCLUDES) \
[25236]175 -I$(COMMON_PACKAGES_DIR)/expat/include $(FASTCGI_INCLUDES) $(GDBM_INCLUDES) $(Z3950_INCLUDES) $(EXT_INCLUDES)
[15478]176INSTALL = @INSTALL@
[25236]177LDFLAGS = @LDFLAGS@ @ARCH_DEP_FLAGS@ $(EXT_LDFLAGS)
[22078]178LIBS = @LIBS@ $(GDBM_LIBS) \
[20841]179 $(COMMON_PACKAGES_DIR)/expat/lib/libexpat.a \
[25236]180 $(ACCENTFOLD_LIBS) $(FASTCGI_LIBS) $(SQLITE_LIBS) $(Z3950_LIBS) $(EXT_LIBS)
[15577]181RANLIB = @RANLIB@
[552]182
[15478]183
[15551]184CXXCOMPILE = $(CXX) -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
185CXXLINK = $(CXX) $(LDFLAGS) -o $@
[552]186
[1860]187
[15478]188SOURCES = \
189 action.cpp \
190 argdb.cpp \
191 authenaction.cpp \
192 browseaction.cpp \
193 browseactiontools.cpp \
194 browserclass.cpp \
195 browsetoolsclass.cpp \
196 cgiargs.cpp \
197 cgiutils.cpp \
198 cgiwrapper.cpp \
199 collectoraction.cpp \
[19259]200 configaction.cpp \
[15478]201 converter.cpp \
202 datelistbrowserclass.cpp \
203 depositoraction.cpp \
204 documentaction.cpp \
[15744]205 dynamicclassifieraction.cpp \
[15478]206 extlinkaction.cpp \
207 formattools.cpp \
208 gtiaction.cpp \
209 highlighttext.cpp \
210 historydb.cpp \
211 hlistbrowserclass.cpp \
212 htmlbrowserclass.cpp \
213 htmlutils.cpp \
214 invbrowserclass.cpp \
215 librarymain.cpp \
216 maincfg.cpp \
217 pageaction.cpp \
218 pagedbrowserclass.cpp \
[21324]219 $(MGPP_SOURCES) \
[15478]220 phindbrowserclass.cpp \
221 pingaction.cpp \
[25560]222 ispersistentaction.cpp \
[22046]223 basequeryaction.cpp \
[15478]224 queryaction.cpp \
[22046]225 $(SQL_SOURCES) \
[15478]226 querytools.cpp \
227 receptionist.cpp \
[24958]228 $(RSS_SOURCES) \
[15478]229 statusaction.cpp \
230 summarise.cpp \
231 tipaction.cpp \
232 userdb.cpp \
233 usersaction.cpp \
234 vlistbrowserclass.cpp \
235 wizardaction.cpp
[552]236
[15478]237OBJECTS = \
238 action.o \
239 argdb.o \
240 authenaction.o \
241 browseaction.o \
242 browseactiontools.o \
243 browserclass.o \
244 browsetoolsclass.o \
245 cgiargs.o \
246 cgiutils.o \
247 cgiwrapper.o \
248 collectoraction.o \
[19259]249 configaction.o \
[15478]250 converter.o \
251 datelistbrowserclass.o \
252 depositoraction.o \
253 documentaction.o \
[15744]254 dynamicclassifieraction.o \
[15478]255 extlinkaction.o \
256 formattools.o \
257 gtiaction.o \
258 highlighttext.o \
259 historydb.o \
260 hlistbrowserclass.o \
261 htmlbrowserclass.o \
262 htmlutils.o \
263 invbrowserclass.o \
264 librarymain.o \
265 maincfg.o \
266 pageaction.o \
267 pagedbrowserclass.o \
[21324]268 $(MGPP_OBJECTS) \
[15478]269 phindbrowserclass.o \
270 pingaction.o \
[25560]271 ispersistentaction.o \
[22046]272 basequeryaction.o \
[15478]273 queryaction.o \
[22046]274 $(SQL_OBJECTS) \
[15478]275 querytools.o \
276 receptionist.o \
[24958]277 $(RSS_OBJECTS) \
[15478]278 statusaction.o \
279 summarise.o \
280 tipaction.o \
281 userdb.o \
282 usersaction.o \
283 vlistbrowserclass.o \
[19259]284 wizardaction.o
[552]285
[15577]286LIBRARY = gsdlrecpt.a
287
[15478]288GSDL_LIBS = \
[15489]289 $(PROTOCOL_DIR)/gsdlprotocol.a \
[15480]290 $(COLSERVR_DIR)/gsdlcolservr.a \
[21324]291 $(MG_INDEXERS_LIBS) \
292 $(MGPP_INDEXERS_LIBS) \
[16563]293 $(COMMON_DIR)/src/lib/gsdllib.a
[552]294
[15480]295EXECUTABLE_OBJECTS = \
[15478]296 $(OBJECTS) \
297 $(GSDL_LIBS)
[552]298
[18612]299EXECUTABLE = library.cgi
[552]300
[722]301
[15579]302# Default target: make both gsdlrecpt.a and the library executable
[19259]303all: $(LIBRARY) $(EXECUTABLE) $(APACHE_MODULE)
[15579]304
[15577]305gsdlrecpt.a: $(OBJECTS)
[15579]306 rm -f $(LIBRARY)
307 $(AR) cru $(LIBRARY) $(OBJECTS)
308 $(RANLIB) $(LIBRARY)
[15577]309
[18612]310$(EXECUTABLE): $(EXECUTABLE_OBJECTS) $(GSDL_LIBS)
[15551]311 $(CXXLINK) $(EXECUTABLE_OBJECTS) $(LIBS)
[552]312
[19259]313mod_gsdl.o: mod_gsdl.cpp
[19292]314 $(CXX) -c $(CXXFLAGS) $(DEFS) $(INCLUDES) -D_APACHE_MOD=2 -fPIC $(APXS_CFLAGS) -Wall -o $@ $<
[19259]315
316mod_gsdl.so: $(APACHE_OBJS) $(LIBRARY)
[19292]317 $(CXX) -fPIC -shared -o $@ $(APACHE_OBJS) $(LIBRARY) $(GSDL_LIBS) $(LIBS)
[19259]318
319
320.SUFFIXES:
321.SUFFIXES: .cpp .o
322.cpp.o:
323 $(CXXCOMPILE) $<
324
325
[15480]326install: $(EXECUTABLE)
[24901]327 $(INSTALL) -m 755 -s $(EXECUTABLE) $(GSDL_DIR)/cgi-bin/$(GSDLOS)$(GSDLARCH)
[19387]328#ifeq ($(USE_APACHE_HTTPD), 1)
329ifeq ($(USE_APACHE_HTTPD), "IGNORE_FOR_NOW")
[19259]330 $(GSDL_DIR)/apache-httpd/$(GSDLOS)/bin/apxs -i -n gsdl mod_gsdl.so
[19261]331endif
[1937]332
[15478]333clean:
[19259]334 rm -f $(OBJECTS) $(LIBRARY) $(EXECUTABLE) $(APACHE_MODULE) $(APACHE_OBJS)
[552]335
[992]336distclean:
[15579]337 rm -f $(OBJECTS) $(LIBRARY) $(EXECUTABLE) Makefile
[992]338
[552]339depend:
[15551]340 makedepend -Y -- $(DEFS) $(INCLUDES) $(CXXFLAGS) -- $(SOURCES)
Note: See TracBrowser for help on using the repository browser.