########################################################################### # # Makefile -- src/z3950 # 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 = ../.. INDEXERS_DIR = $(GSDL_DIR)/indexers COLSERVR_DIR = $(GSDL_DIR)/src/colservr PROTOCOL_DIR = $(GSDL_DIR)/src/protocol ENABLE_ACCENTFOLD = @ENABLE_ACCENTFOLD@ ifeq ($(ENABLE_ACCENTFOLD), 1) ACCENTFOLD_LIBS = $(INDEXERS_DIR)/packages/unac/libunac.a else ACCENTFOLD_LIBS = endif USE_Z3950 = @USE_Z3950@ ifeq ($(USE_Z3950), 1) Z3950_INCLUDES = -I$(GSDL_DIR)/packages/yaz/yaz-2.1.4/include -I$(GSDL_DIR)/packages/yaz/yaz-2.1.4/client \ -I$(GSDL_DIR)/packages/d2m Z3950_LIBS = $(GSDL_DIR)/packages/yaz/lib/libyaz.a $(GSDL_DIR)/packages/d2m/libd2m.a -lxml2 else Z3950_INCLUDES = Z3950_LIBS = endif AR = ar CC = @CC@ CPP = @CXX@ CFLAGS = @CFLAGS@ CPPFLAGS = @CXXFLAGS@ DEFS = @DEFS@ -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DGSDLSERVER GSDLOS = @GSDLOS@ # Do NOT add the "recpt" directory here: the z39.50 code should be independent of the receptionist! INCLUDES = -I. -I$(GSDL_DIR) -I$(GSDL_DIR)/lib -I$(COLSERVR_DIR) -I$(PROTOCOL_DIR) \ -I$(INDEXERS_DIR)/mgpp/text $(Z3950_INCLUDES) INSTALL = @INSTALL@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ @GDBM_LIBPATH@ -lgdbm -L$(GSDL_DIR)/packages/expat/lib -lexpat $(ACCENTFOLD_LIBS) $(Z3950_LIBS) RANLIB = @RANLIB@ COMPILE = $(CC) -c $(CFLAGS) $(DEFS) $(INCLUDES) CPPCOMPILE = $(CPP) -c $(CPPFLAGS) $(DEFS) $(INCLUDES) CPPLINK = $(CPP) $(LDFLAGS) -o $@ .SUFFIXES: .SUFFIXES: .c .o .c.o: $(COMPILE) $< .SUFFIXES: .cpp .o .cpp.o: $(CPPCOMPILE) $< LIBRARY_SOURCES = \ yaz_zclient.c \ z3950proto.cpp \ z3950proxy.cpp \ zparse.tab.c \ zparse.yy.c LIBRARY_OBJECTS = \ yaz_zclient.o \ z3950proto.o \ z3950proxy.o \ zparse.tab.o \ zparse.yy.o LIBRARY = gsdlz3950.a gsdlz3950.a: $(LIBRARY_OBJECTS) rm -f gsdlz3950.a $(AR) cru gsdlz3950.a $(LIBRARY_OBJECTS) $(GSDL_DIR)/packages/yaz/yaz-2.1.4/client/tabcomplete.o $(RANLIB) gsdlz3950.a SOURCES = \ z3950explain.cpp \ z3950parser.cpp \ z3950server.cpp \ z3950_to_gsdl.cpp OBJECTS = \ z3950explain.o \ z3950parser.o \ z3950server.o \ z3950_to_gsdl.o GSDL_LIBS = \ gsdlz3950.a \ $(PROTOCOL_DIR)/gsdlprotocol.a \ $(COLSERVR_DIR)/gsdlcolservr.a \ $(INDEXERS_DIR)/mg/src/text/libmgtext.a \ $(INDEXERS_DIR)/mg/lib/libmglib.a \ $(INDEXERS_DIR)/mgpp/text/libmgpptext.a \ $(INDEXERS_DIR)/mgpp/lib/libmgpplib.a \ $(GSDL_DIR)/lib/gsdllib.a EXECUTABLE_OBJECTS = \ $(OBJECTS) \ $(GSDL_LIBS) EXECUTABLE = z3950server z3950server: $(OBJECTS) $(CPPLINK) $(EXECUTABLE_OBJECTS) $(LIBS) all: $(LIBRARY) $(EXECUTABLE) install: $(LIBRARY) $(EXECUTABLE) $(INSTALL) -m 755 -s $(EXECUTABLE) $(GSDL_DIR)/bin/$(GSDLOS) clean: rm -f $(OBJECTS) distclean: rm -f $(OBJECTS) Makefile depend: makedepend -Y -- $(DEFS) $(INCLUDES) $(CPPFLAGS) -- $(SOURCES)