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

Last change on this file since 24411 was 22378, checked in by sjm84, 14 years ago

Greenstone 2 now compiles and installs on 64-bit linux machines

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