source: main/trunk/greenstone2/runtime-src/src/z3950/Makefile.in@ 21361

Last change on this file since 21361 was 21361, checked in by kjdon, 14 years ago

missing iconv lib for accentfolding

File size: 4.4 KB
Line 
1###########################################################################
2#
3# Makefile -- runtime-src/src/z3950
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
33RUNTIME_PACKAGES_DIR = $(RUNTIME_DIR)/packages
34COLSERVR_DIR = $(RUNTIME_DIR)/src/colservr
35PROTOCOL_DIR = $(RUNTIME_DIR)/src/protocol
36
37
38ENABLE_ACCENTFOLD = @ENABLE_ACCENTFOLD@
39ifeq ($(ENABLE_ACCENTFOLD), 1)
40ACCENTFOLD_LIBS = $(INDEXERS_DIR)/packages/unac/libunac.a $(COMMON_PACKAGES_DIR)/iconv/lib/libiconv.a
41else
42ACCENTFOLD_LIBS =
43endif
44
45
46ENABLE_MG = @ENABLE_MG@
47ifeq ($(ENABLE_MG), 1)
48MG_INDEXERS_LIBS = $(INDEXERS_DIR)/mg/src/text/libmgtext.a \
49 $(INDEXERS_DIR)/mg/lib/libmglib.a
50else
51MG_INDEXERS_LIBS =
52endif
53
54ENABLE_MGPP = @ENABLE_MGPP@
55ifeq ($(ENABLE_MGPP), 1)
56MGPP_INDEXERS_LIBS = $(INDEXERS_DIR)/mgpp/text/libmgpptext.a \
57 $(INDEXERS_DIR)/mgpp/lib/libmgpplib.a
58MGPP_INCLUDES = -I$(INDEXERS_DIR)/mgpp/text
59else
60MGPP_INDEXERS_LIBS =
61MGPP_INCLUDES =
62endif
63
64
65USE_SQLITE = @USE_SQLITE@
66ifeq ($(USE_SQLITE), 1)
67SQLITE_LIBS = $(COMMON_PACKAGES_DIR)/sqlite/lib/libsqlite3.a -ldl -lpthread
68else
69SQLITE_LIBS =
70endif
71
72USE_Z3950 = @USE_Z3950@
73ifeq ($(USE_Z3950), 1)
74AR = ar
75CC = @CC@
76CPP = @CXX@
77CFLAGS = @CFLAGS@
78CPPFLAGS = @CXXFLAGS@
79DEFS = @DEFS@ -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DGSDLSERVER
80GSDLOS = @gsdlos@
81# Do NOT add the "recpt" directory here: the z39.50 code should be independent of the receptionist!
82INCLUDES = -I. -I$(GSDL_DIR) -I$(COMMON_DIR)/src/lib -I$(COLSERVR_DIR) -I$(PROTOCOL_DIR) \
83 $(MGPP_INCLUDES) -I$(RUNTIME_PACKAGES_DIR)/yaz/yaz-2.1.4/include \
84 -I$(RUNTIME_PACKAGES_DIR)/yaz/yaz-2.1.4/client -I$(RUNTIME_PACKAGES_DIR)/d2m
85INSTALL = @INSTALL@
86LDFLAGS = @LDFLAGS@
87LIBS = @LIBS@ $(COMMON_PACKAGES_DIR)/gdbm/lib/libgdbm.a -L$(COMMON_PACKAGES_DIR)/expat/lib -lexpat \
88 $(ACCENTFOLD_LIBS) $(SQLITE_LIBS) \
89 $(RUNTIME_PACKAGES_DIR)/yaz/lib/libyaz.a $(RUNTIME_PACKAGES_DIR)/d2m/libd2m.a -lxml2
90RANLIB = @RANLIB@
91
92
93COMPILE = $(CC) -c $(CFLAGS) $(DEFS) $(INCLUDES)
94CPPCOMPILE = $(CPP) -c $(CPPFLAGS) $(DEFS) $(INCLUDES)
95CPPLINK = $(CPP) $(LDFLAGS) -o $@
96
97
98.SUFFIXES:
99.SUFFIXES: .c .o
100.c.o:
101 $(COMPILE) $<
102
103.SUFFIXES: .cpp .o
104.cpp.o:
105 $(CPPCOMPILE) $<
106
107
108LIBRARY_SOURCES = \
109 yaz_zclient.c \
110 z3950proto.cpp \
111 z3950proxy.cpp \
112 zparse.tab.c \
113 zparse.yy.c
114
115LIBRARY_OBJECTS = \
116 yaz_zclient.o \
117 z3950proto.o \
118 z3950proxy.o \
119 zparse.tab.o \
120 zparse.yy.o
121
122LIBRARY = gsdlz3950.a
123
124SOURCES = \
125 z3950explain.cpp \
126 z3950parser.cpp \
127 z3950server.cpp \
128 z3950_to_gsdl.cpp
129
130OBJECTS = \
131 z3950explain.o \
132 z3950parser.o \
133 z3950server.o \
134 z3950_to_gsdl.o
135
136GSDL_LIBS = \
137 gsdlz3950.a \
138 $(PROTOCOL_DIR)/gsdlprotocol.a \
139 $(COLSERVR_DIR)/gsdlcolservr.a \
140 $(MG_INDEXERS_LIBS) \
141 $(MGPP_INDEXERS_LIBS) \
142 $(COMMON_DIR)/src/lib/gsdllib.a
143
144EXECUTABLE_OBJECTS = \
145 $(OBJECTS) \
146 $(GSDL_LIBS)
147
148EXECUTABLE = z3950server
149
150
151# Default target: make both gsdlz3950.a and the z3950server executable
152all: $(LIBRARY) $(EXECUTABLE)
153
154gsdlz3950.a: $(LIBRARY_OBJECTS)
155 rm -f $(LIBRARY)
156 $(AR) cru $(LIBRARY) $(LIBRARY_OBJECTS) $(RUNTIME_PACKAGES_DIR)/yaz/yaz-2.1.4/client/tabcomplete.o
157 $(RANLIB) $(LIBRARY)
158
159z3950server: $(EXECUTABLE_OBJECTS)
160 $(CPPLINK) $(EXECUTABLE_OBJECTS) $(LIBS)
161
162install: $(EXECUTABLE)
163 $(INSTALL) -m 755 -s $(EXECUTABLE) $(GSDL_DIR)/bin/$(GSDLOS)
164
165clean:
166 rm -f $(OBJECTS) $(LIBRARY) $(EXECUTABLE)
167
168depend:
169 makedepend -Y -- $(DEFS) $(INCLUDES) $(CPPFLAGS) -- $(SOURCES)
170
171else
172all:
173install:
174clean:
175depend:
176endif
177
178distclean: clean
179 rm -f Makefile
180
Note: See TracBrowser for help on using the repository browser.