source: main/trunk/greenstone2/runtime-src/src/oaiservr/Makefile.in@ 25237

Last change on this file since 25237 was 25237, checked in by jmt12, 12 years ago

Adding some variables to the Makefile.in that extensions can override/add to as necessary - this is needed for TDB support

  • Property svn:keywords set to Author Date Id Revision
File size: 4.7 KB
Line 
1###########################################################################
2#
3# Makefile -- runtime-src/src/oaiservr
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@
32GSDLARCH = @gsdlarch@
33
34INDEXERS_DIR = $(COMMON_DIR)/indexers
35COMMON_PACKAGES_DIR = $(COMMON_DIR)/packages
36COLSERVR_DIR = $(RUNTIME_DIR)/src/colservr
37PROTOCOL_DIR = $(RUNTIME_DIR)/src/protocol
38RECPT_DIR = $(RUNTIME_DIR)/src/recpt
39
40
41ENABLE_ACCENTFOLD = @ENABLE_ACCENTFOLD@
42ifeq ($(ENABLE_ACCENTFOLD), 1)
43ACCENTFOLD_LIBS = $(INDEXERS_DIR)/packages/unac/libunac.a $(COMMON_PACKAGES_DIR)/iconv/lib/libiconv.a
44else
45ACCENTFOLD_LIBS =
46endif
47
48
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
53else
54MG_INDEXERS_LIBS =
55endif
56
57ENABLE_MGPP = @ENABLE_MGPP@
58ifeq ($(ENABLE_MGPP), 1)
59MGPP_INDEXERS_LIBS = $(INDEXERS_DIR)/mgpp/text/libmgpptext.a \
60 $(INDEXERS_DIR)/mgpp/lib/libmgpplib.a
61MGPP_INCLUDES = -I$(INDEXERS_DIR)/mgpp/text -I$(INDEXERS_DIR)/mgpp/lib
62else
63MGPP_INDEXERS_LIBS =
64MGPP_INCLUDES =
65endif
66
67USE_GDBM = @USE_GDBM@
68ifeq ($(USE_GDBM), 1)
69GDBM_DEFINES = -DUSE_GDBM
70GDBM_LIBS = $(COMMON_PACKAGES_DIR)/gdbm/lib/libgdbm.a
71else
72GDBM_DEFINES =
73GDBM_LIBS =
74endif
75
76USE_JDBM = @USE_JDBM@
77ifeq ($(USE_JDBM), 1)
78JDBM_DEFINES = -DUSE_JDBM
79else
80JDBM_DEFINES =
81endif
82
83USE_SQLITE = @USE_SQLITE@
84ifeq ($(USE_SQLITE), 1)
85SQLITE_DEFINES = -DUSE_SQLITE
86SQLITE_LIBS = $(COMMON_PACKAGES_DIR)/sqlite/lib/libsqlite3.a -ldl -lpthread
87else
88SQLITE_LIBS =
89SQLITE_DEFINES =
90endif
91
92# Extension support
93EXT_DEFINES =
94EXT_INCLUDES =
95EXT_LDFLAGS =
96EXT_LIBS =
97
98CC = @CC@
99CFLAGS = @CFLAGS@ @ARCH_DEP_FLAGS@
100CXX = @CXX@
101CXXFLAGS = @CXXFLAGS@ @ARCH_DEP_FLAGS@
102DEFS = @DEFS@ $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES) $(EXT_DEFINES)
103INCLUDES = -I$(COMMON_DIR)/src/lib -I$(COLSERVR_DIR) -I$(PROTOCOL_DIR) -I$(RECPT_DIR) $(MGPP_INCLUDES) $(EXT_INCLUDES)
104LDFLAGS = @LDFLAGS@ @ARCH_DEP_FLAGS@ $(EXT_LDFLAGS)
105LIBS = @LIBS@ $(GDBM_LIBS) -L$(COMMON_PACKAGES_DIR)/expat/lib -lexpat \
106 $(ACCENTFOLD_LIBS) $(SQLITE_LIBS) $(EXT_LIBS)
107INSTALL = @INSTALL@
108
109
110CXXCOMPILE = $(CXX) -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
111CXXLINK = $(CXX) $(LDFLAGS) -o $@
112
113
114.SUFFIXES:
115.SUFFIXES: .cpp .o
116.cpp.o:
117 $(CXXCOMPILE) -o $@ $<
118
119
120RECPT_OBJECTS = \
121 $(RECPT_DIR)/cgiargs.o \
122 $(RECPT_DIR)/cgiutils.o \
123 $(RECPT_DIR)/htmlutils.o
124
125SOURCES = \
126 abstractlistaction.cpp \
127 dublincore.cpp \
128 qualified_dublincore.cpp \
129 identifyaction.cpp \
130 listidsaction.cpp \
131 listrecsaction.cpp \
132 listsetsaction.cpp \
133 metaformat.cpp \
134 metaformatsaction.cpp \
135 oaiaction.cpp \
136 oaiargs.cpp \
137 oaiconfig.cpp \
138 oaidispatcher.cpp \
139 oaimain.cpp \
140 oaitools.cpp \
141 recordaction.cpp \
142 resumptiontoken.cpp \
143 rfc1807.cpp
144
145OBJECTS = \
146 abstractlistaction.o \
147 dublincore.o \
148 qualified_dublincore.o \
149 identifyaction.o \
150 listidsaction.o \
151 listrecsaction.o \
152 listsetsaction.o \
153 metaformat.o \
154 metaformatsaction.o \
155 oaiaction.o \
156 oaiargs.o \
157 oaiconfig.o \
158 oaidispatcher.o \
159 oaimain.o \
160 oaitools.o \
161 recordaction.o \
162 resumptiontoken.o \
163 rfc1807.o
164
165GSDL_LIBS = \
166 $(PROTOCOL_DIR)/gsdlprotocol.a \
167 $(COLSERVR_DIR)/gsdlcolservr.a \
168 $(MG_INDEXERS_LIBS) \
169 $(MGPP_INDEXERS_LIBS) \
170 $(COMMON_DIR)/src/lib/gsdllib.a
171
172EXECUTABLE_OBJECTS = \
173 $(OBJECTS) \
174 $(RECPT_OBJECTS) \
175 $(GSDL_LIBS)
176
177EXECUTABLE = oaiserver.cgi
178
179
180# Default target: make the oaiserver executable
181all: $(EXECUTABLE)
182
183$(EXECUTABLE): $(EXECUTABLE_OBJECTS)
184 $(CXXLINK) $(EXECUTABLE_OBJECTS) $(LIBS)
185
186install: $(EXECUTABLE)
187 $(INSTALL) -m 755 -s $(EXECUTABLE) $(GSDL_DIR)/cgi-bin/$(GSDLOS)$(GSDLARCH)
188
189clean:
190 rm -f $(OBJECTS) $(EXECUTABLE)
191
192distclean:
193 rm -f $(OBJECTS) $(EXECUTABLE) Makefile
194
195depend:
196 makedepend -Y -- $(DEFS) $(INCLUDES) $(CXXFLAGS) -- $(SOURCES)
Note: See TracBrowser for help on using the repository browser.