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

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

Changes to makefiles to 1. incorporate USE_GDBM and USE_JDBM flags (and USE_SQLITE) in most places so that the DEFINES variable is set at all times. This is necessary to ensure that all classes that contain objects with gdbm and jdbm members are of a consistent size. Else we've had experience with Greenstone crashing with memory errors (to do with the similar ENABLE_indexer flags). 2. ENABLE_JDBM is now USE_JDBM. 3. Not everything works now. It still compiles the default way, but the disable-gdbm flag is causing trouble when compiling argdb in recpt since it uses that.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 4.5 KB
Line 
1###########################################################################
2#
3# Makefile -- runtime-src/src/colservr
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
29
30INDEXERS_DIR = $(COMMON_DIR)/indexers
31COMMON_PACKAGES_DIR = $(COMMON_DIR)/packages
32
33# NOTE: phrasequeryfilter inherits from mgqueryfilter and uses mgsearch
34ENABLE_MG = @ENABLE_MG@
35ifeq ($(ENABLE_MG), 1)
36MG_SOURCES = mgq.c \
37 mgqueryfilter.cpp \
38 mgsearch.cpp \
39 mgsource.cpp \
40 phrasequeryfilter.cpp
41MG_OBJECTS = mgq.o \
42 mgqueryfilter.o \
43 mgsearch.o \
44 mgsource.o \
45 phrasequeryfilter.o
46MG_INCLUDES = -I$(INDEXERS_DIR)/mg -I$(INDEXERS_DIR)/mg/lib -I$(INDEXERS_DIR)/mg/src/text
47else
48MG_SOURCES =
49MG_OBJECTS =
50MG_INCLUDES =
51endif
52
53ENABLE_MGPP = @ENABLE_MGPP@
54ifeq ($(ENABLE_MGPP), 1)
55MGPP_SOURCES = mgppqueryfilter.cpp \
56 mgppsearch.cpp \
57 mgppsource.cpp
58MGPP_OBJECTS = mgppqueryfilter.o \
59 mgppsearch.o \
60 mgppsource.o
61MGPP_INCLUDES = -I$(INDEXERS_DIR)/mgpp/lib -I$(INDEXERS_DIR)/mgpp/text
62else
63MGPP_SOURCES =
64MGPP_OBJECTS =
65MGPP_INCLUDES =
66endif
67
68
69ENABLE_LUCENE = @ENABLE_LUCENE@
70ifeq ($(ENABLE_LUCENE), 1)
71LUCENE_SOURCES = lucenequeryfilter.cpp \
72 lucenesearch.cpp \
73 lucenesource.cpp
74LUCENE_OBJECTS = lucenequeryfilter.o \
75 lucenesearch.o \
76 lucenesource.o
77else
78LUCENE_SOURCES =
79LUCENE_OBJECTS =
80endif
81
82
83USE_GDBM = @USE_GDBM@
84ifeq ($(USE_GDBM), 1)
85GDBM_DEFINES = -DUSE_GDBM
86GDBM_INCLUDES = -I$(COMMON_PACKAGES_DIR)/gdbm/include
87else
88GDBM_DEFINES =
89GDBM_INCLUDES =
90endif
91
92
93USE_JDBM = @USE_JDBM@
94ifeq ($(USE_JDBM), 1)
95JDBM_DEFINES = -DUSE_JDBM
96else
97JDBM_DEFINES =
98endif
99
100
101USE_SQLITE = @USE_SQLITE@
102ifeq ($(USE_SQLITE), 1)
103SQLITE_DEFINES = -DUSE_SQLITE
104SQLITE_INCLUDES = -I$(COMMON_PACKAGES_DIR)/sqlite/include
105else
106SQLITE_DEFINES =
107SQLITE_INCLUDES =
108endif
109
110
111AR = ar
112CC = @CC@
113CXX = @CXX@
114CFLAGS = @CFLAGS@ @COMPAT32BITFLAGS@
115CXXFLAGS = @CXXFLAGS@ @COMPAT32BITFLAGS@
116DEFS = @DEFS@ -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DGSDLSERVER $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES)
117# Do NOT add the "recpt" directory here: the colserver should be independent of the receptionist!
118INCLUDES = -I. -I$(GSDL_DIR) -I$(COMMON_DIR)/src/lib \
119 $(MG_INCLUDES) \
120 $(MGPP_INCLUDES) \
121 -I$(COMMON_PACKAGES_DIR)/expat/include $(GDBM_INCLUDES) $(SQLITE_INCLUDES)
122RANLIB = @RANLIB@
123
124
125COMPILE = $(CC) -c $(CFLAGS) $(DEFS) $(INCLUDES)
126CXXCOMPILE = $(CXX) -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
127
128
129.SUFFIXES:
130.SUFFIXES: .c .o
131.c.o:
132 $(COMPILE) $<
133
134.SUFFIXES: .cpp .o
135.cpp.o:
136 $(CXXCOMPILE) $<
137
138
139SOURCES = \
140 browsefilter.cpp \
141 collectserver.cpp \
142 collectset.cpp \
143 colservrconfig.cpp \
144 comtypes.cpp \
145 expat_document.cpp \
146 expat_resultset.cpp \
147 filter.cpp \
148 $(LUCENE_SOURCES) \
149 maptools.cpp \
150 $(MG_SOURCES) \
151 $(MGPP_SOURCES) \
152 phrasesearch.cpp \
153 querycache.cpp \
154 queryfilter.cpp \
155 queryinfo.cpp \
156 search.cpp \
157 source.cpp \
158 sqlbrowsefilter.cpp \
159 sqlqueryfilter.cpp \
160 sqlfilter.cpp
161
162OBJECTS = \
163 browsefilter.o \
164 collectserver.o \
165 collectset.o \
166 colservrconfig.o \
167 comtypes.o \
168 expat_document.o \
169 expat_resultset.o \
170 filter.o \
171 $(LUCENE_OBJECTS) \
172 maptools.o \
173 $(MG_OBJECTS) \
174 $(MGPP_OBJECTS) \
175 phrasesearch.o \
176 querycache.o \
177 queryfilter.o \
178 queryinfo.o \
179 search.o \
180 source.o \
181 sqlbrowsefilter.o \
182 sqlqueryfilter.o \
183 sqlfilter.o
184
185LIBRARY = gsdlcolservr.a
186
187
188# Default target: make gsdlcolservr.a
189all: $(LIBRARY)
190
191gsdlcolservr.a: $(OBJECTS)
192 rm -f $(LIBRARY)
193 $(AR) cru $(LIBRARY) $(OBJECTS)
194 $(RANLIB) $(LIBRARY)
195
196install:
197
198clean:
199 rm -f $(OBJECTS) $(LIBRARY)
200
201distclean:
202 rm -f $(OBJECTS) $(LIBRARY) Makefile
203
204depend:
205 makedepend -Y -- $(DEFS) $(INCLUDES) $(CXXFLAGS) -- $(SOURCES)
Note: See TracBrowser for help on using the repository browser.