########################################################################### # # Makefile -- runtime-src/src/colservr # A component of the Greenstone digital library software # from the New Zealand Digital Library Project at the # University of Waikato, New Zealand. # # Copyright (C) 1999-2008 The New Zealand Digital Library Project # # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # ########################################################################### GSDL_DIR = ../../.. COMMON_DIR = $(GSDL_DIR)/common-src INDEXERS_DIR = $(COMMON_DIR)/indexers COMMON_PACKAGES_DIR = $(COMMON_DIR)/packages # NOTE: phrasequeryfilter inherits from mgqueryfilter and uses mgsearch ENABLE_MG = @ENABLE_MG@ ifeq ($(ENABLE_MG), 1) MG_SOURCES = mgq.c \ mgqueryfilter.cpp \ mgsearch.cpp \ mgsource.cpp \ phrasequeryfilter.cpp MG_OBJECTS = mgq.o \ mgqueryfilter.o \ mgsearch.o \ mgsource.o \ phrasequeryfilter.o MG_INCLUDES = -I$(INDEXERS_DIR)/mg -I$(INDEXERS_DIR)/mg/lib -I$(INDEXERS_DIR)/mg/src/text else MG_SOURCES = MG_OBJECTS = MG_INCLUDES = endif ENABLE_MGPP = @ENABLE_MGPP@ ifeq ($(ENABLE_MGPP), 1) MGPP_SOURCES = mgppqueryfilter.cpp \ mgppsearch.cpp \ mgppsource.cpp MGPP_OBJECTS = mgppqueryfilter.o \ mgppsearch.o \ mgppsource.o MGPP_INCLUDES = -I$(INDEXERS_DIR)/mgpp/lib -I$(INDEXERS_DIR)/mgpp/text else MGPP_SOURCES = MGPP_OBJECTS = MGPP_INCLUDES = endif ENABLE_LUCENE = @ENABLE_LUCENE@ ifeq ($(ENABLE_LUCENE), 1) LUCENE_SOURCES = lucenequeryfilter.cpp \ lucenesearch.cpp \ lucenesource.cpp LUCENE_OBJECTS = lucenequeryfilter.o \ lucenesearch.o \ lucenesource.o else LUCENE_SOURCES = LUCENE_OBJECTS = endif USE_GDBM = @USE_GDBM@ ifeq ($(USE_GDBM), 1) GDBM_DEFINES = -DUSE_GDBM GDBM_INCLUDES = -I$(COMMON_PACKAGES_DIR)/gdbm/include else GDBM_DEFINES = GDBM_INCLUDES = endif USE_JDBM = @USE_JDBM@ ifeq ($(USE_JDBM), 1) JDBM_DEFINES = -DUSE_JDBM else JDBM_DEFINES = endif USE_SQLITE = @USE_SQLITE@ ifeq ($(USE_SQLITE), 1) SQLITE_DEFINES = -DUSE_SQLITE SQLITE_INCLUDES = -I$(COMMON_PACKAGES_DIR)/sqlite/include else SQLITE_DEFINES = SQLITE_INCLUDES = endif # Support for Extensions EXT_DEFINES = EXT_INCLUDES = AR = ar CC = @CC@ CXX = @CXX@ CFLAGS = @CFLAGS@ @ARCH_DEP_FLAGS@ CXXFLAGS = @CXXFLAGS@ @ARCH_DEP_FLAGS@ DEFS = @DEFS@ -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DGSDLSERVER $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES) $(EXT_DEFINES) # Do NOT add the "recpt" directory here: the colserver should be independent of the receptionist! INCLUDES = -I. -I$(GSDL_DIR) -I$(COMMON_DIR)/src/lib \ $(MG_INCLUDES) \ $(MGPP_INCLUDES) \ -I$(COMMON_PACKAGES_DIR)/expat/include \ $(GDBM_INCLUDES) $(SQLITE_INCLUDES) $(EXT_INCLUDES) RANLIB = @RANLIB@ COMPILE = $(CC) -c $(CFLAGS) $(DEFS) $(INCLUDES) CXXCOMPILE = $(CXX) -c $(CXXFLAGS) $(DEFS) $(INCLUDES) .SUFFIXES: .SUFFIXES: .c .o .c.o: $(COMPILE) $< .SUFFIXES: .cpp .o .cpp.o: $(CXXCOMPILE) $< SOURCES = \ browsefilter.cpp \ collectserver.cpp \ collectset.cpp \ colservrconfig.cpp \ comtypes.cpp \ expat_document.cpp \ expat_resultset.cpp \ filter.cpp \ $(LUCENE_SOURCES) \ maptools.cpp \ $(MG_SOURCES) \ $(MGPP_SOURCES) \ phrasesearch.cpp \ querycache.cpp \ queryfilter.cpp \ queryinfo.cpp \ search.cpp \ source.cpp \ sqlbrowsefilter.cpp \ sqlqueryfilter.cpp \ sqlfilter.cpp OBJECTS = \ browsefilter.o \ collectserver.o \ collectset.o \ colservrconfig.o \ comtypes.o \ expat_document.o \ expat_resultset.o \ filter.o \ $(LUCENE_OBJECTS) \ maptools.o \ $(MG_OBJECTS) \ $(MGPP_OBJECTS) \ phrasesearch.o \ querycache.o \ queryfilter.o \ queryinfo.o \ search.o \ source.o \ sqlbrowsefilter.o \ sqlqueryfilter.o \ sqlfilter.o LIBRARY = gsdlcolservr.a # Default target: make gsdlcolservr.a all: $(LIBRARY) gsdlcolservr.a: $(OBJECTS) rm -f $(LIBRARY) $(AR) cru $(LIBRARY) $(OBJECTS) $(RANLIB) $(LIBRARY) install: clean: rm -f $(OBJECTS) $(LIBRARY) distclean: rm -f $(OBJECTS) $(LIBRARY) Makefile depend: makedepend -Y -- $(DEFS) $(INCLUDES) $(CXXFLAGS) -- $(SOURCES)