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