source: trunk/gsdl/src/recpt/Makefile.in@ 1385

Last change on this file since 1385 was 1385, checked in by jrm21, 24 years ago

We now don't remove the zparse.tab.[ch] or parse.yy.c files on a make clean,
for the benefit of people without lex/yacc tools.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 7.5 KB
Line 
1###########################################################################
2#
3# Makefile -- src/recpt
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 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
27AR = ar
28CC = @CC@
29#CCFLAGS = @CFLAGS@ -Wall -Wunused -pedantic -W -Woverloaded-virtual
30CCFLAGS = @CFLAGS@
31
32# YAZ kit for z39.50
33YAZDIR=../../packages/yaz
34
35USE_FASTCGI = @USE_FASTCGI@
36ifneq ($(USE_FASTCGI), 1)
37DEFS = -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DGSDLSERVER \
38 -DGSDLUSAGELOG @DEFS@
39
40INCLUDES = -I../../lib -I. -I../colservr -I../../packages/mg \
41 -I../../packages/mg/lib -I../../packages/mg/src/text \
42 -I../mgpp/lib -I../mgpp/text -I$(YAZDIR)/include
43else
44DEFS = -DNZDL -DQUIET -DSHORT_SUFFIX -DPARADOCNUM -DGSDLSERVER \
45 -DGSDLUSAGELOG -DUSE_FASTCGI @DEFS@
46
47INCLUDES = -I../../lib -I. -I../colservr -I../../packages/mg \
48 -I../../packages/mg/lib -I../../packages/mg/src/text \
49 -I../../packages/fcgi/include -I../mgpp/lib \
50 -I../mgpp/text -I$(YAZDIR)/include
51endif
52
53RANLIB = @RANLIB@
54LDFLAGS = @LDFLAGS@
55LIBS = @LIBS@
56
57GSDLOS = @gsdlos@
58
59
60COMPILE = $(CC) -c $(CCFLAGS) $(DEFS) $(INCLUDES)
61LINK = $(CC) $(LDFLAGS) -o $@
62
63.SUFFIXES:
64.SUFFIXES: .c .o
65.c.o:
66 $(COMPILE) $<
67
68.SUFFIXES: .cpp .o
69.cpp.o:
70 $(COMPILE) $<
71
72COMMONHEADERS = receptionist.h cgiwrapper.h cgiargs.h action.h browserclass.h \
73 converter.h recptconfig.h cgiutils.h OIDtools.h browsetools.h htmlgen.h \
74 statusaction.h pageaction.h comtypes.h recptproto.h \
75 pingaction.h queryaction.h documentaction.h \
76 extlinkaction.h buildaction.h htmlutils.h \
77 querytools.h formattools.h tipaction.h authenaction.h infodbclass.h \
78 userdb.h usersaction.h vlistbrowserclass.h hlistbrowserclass.h \
79 datelistbrowserclass.h invbrowserclass.h pagedbrowserclass.h \
80 htmlbrowserclass.h delhistoryaction.h historydb.h
81
82RECEPTHEADERS =
83
84LIBRARYHEADERS = nullproto.h z3950proto.h z3950server.h
85
86HEADERS = $(COMMONHEADERS) $(RECPTHEADERS) $(LIBRARYHEADERS)
87
88
89COMMONSOURCES = receptionist.cpp cgiwrapper.cpp cgiargs.cpp action.cpp browserclass.cpp \
90 converter.cpp recptconfig.cpp cgiutils.cpp OIDtools.cpp browsetools.cpp \
91 htmlgen.cpp statusaction.cpp pageaction.cpp comtypes.cpp \
92 recptproto.cpp pingaction.cpp queryaction.cpp documentaction.cpp \
93 extlinkaction.cpp buildaction.cpp htmlutils.cpp querytools.cpp formattools.cpp \
94 tipaction.cpp authenaction.cpp infodbclass.cpp userdb.cpp usersaction.cpp \
95 vlistbrowserclass.cpp hlistbrowserclass.cpp datelistbrowserclass.cpp \
96 invbrowserclass.cpp pagedbrowserclass.cpp htmlbrowserclass.cpp \
97 delhistoryaction.cpp historydb.cpp
98
99
100RECPTSOURCES = recptmain.cpp
101
102LIBRARYSOURCES = nullproto.cpp z3950proto.cpp z3950server.cpp librarymain.cpp \
103 zparse.tab.c parse.yy.c $(YAZDIR)/client/yaz_zclient.c
104
105SOURCES = $(COMMONSOURCES) $(RECPTSOURCES) $(LIBRARYSOURCES)
106
107
108COMMONOBJECTS = receptionist.o cgiwrapper.o cgiargs.o action.o browserclass.o \
109 converter.o recptconfig.o cgiutils.o OIDtools.o browsetools.o \
110 htmlgen.o statusaction.o pageaction.o comtypes.o \
111 recptproto.o pingaction.o queryaction.o documentaction.o \
112 extlinkaction.o buildaction.o htmlutils.o querytools.o \
113 formattools.o tipaction.o authenaction.o \
114 infodbclass.o userdb.o usersaction.o vlistbrowserclass.o \
115 hlistbrowserclass.o datelistbrowserclass.o invbrowserclass.o \
116 pagedbrowserclass.o htmlbrowserclass.o delhistoryaction.o \
117 historydb.o parse.yy.o
118
119RECPTOBJECTS = recptmain.o
120
121LIBRARYOBJECTS = nullproto.o z3950proto.o z3950server.o librarymain.o \
122 zparse.tab.o $(YAZDIR)/client/yaz_zclient.o
123
124OBJECTS = $(COMMONOBJECTS) $(RECPTOBJECTS) $(LIBRARYOBJECTS)
125
126
127COLSERVROBJECTS = ../colservr/mgq.o \
128 ../colservr/search.o \
129 ../colservr/mgsearch.o \
130 ../colservr/querycache.o \
131 ../colservr/queryinfo.o \
132 ../colservr/collectserver.o \
133 ../colservr/colservrconfig.o \
134 ../colservr/maptools.o \
135 ../colservr/filter.o \
136 ../colservr/source.o \
137 ../colservr/browsefilter.o \
138 ../colservr/queryfilter.o \
139 ../colservr/mggdbmsource.o \
140 ../colservr/phrasesearch.o \
141 ../colservr/phrasequeryfilter.o \
142 ../colservr/mgqueryfilter.o \
143 ../colservr/mgppsearch.o \
144 ../colservr/mgppqueryfilter.o
145
146#EXEC = recpt library
147EXEC = library
148
149all: $(EXEC)
150
151## z39.50 stuff
152# Note! If USE_FASTCGI=1, yaz is still compiled and linked, but never
153# called by librarymain.cpp.
154$(YAZDIR)/client/yaz_zclient.o: $(YAZDIR)/lib/libyaz.a
155 cd $(YAZDIR)/client && make yaz_zclient.o
156
157$(YAZDIR)/lib/libyaz.a:
158 cd $(YAZDIR) && ./configure && make all
159
160zparse.tab.c: zparse.y
161 @YACC@ -b zparse -d zparse.y
162
163zparse.tab.h: zparse.tab.c
164
165parse.yy.c: parse.fl zparse.tab.h
166 flex -oparse.yy.c parse.fl
167
168# We'll keep the .c and .h files for those without lex/flex and yacc/bison.
169#PARSE_TMPFILES= zparse.tab.o zparse.tab.c zparse.tab.h parse.yy.o parse.yy.c
170PARSE_TMPFILE=zparse.tab.o parse.yy.o
171
172distclean:
173 rm -f $(OBJECTS) $(EXEC) $(PARSE_TMPFILES) Makefile
174
175clean:
176 rm -f $(OBJECTS) $(EXEC) $(PARSE_TMPFILES)
177
178install:
179 install -m 755 -s library ../../cgi-bin/library
180
181depend:
182 makedepend -Y -- $(DEFS) $(INCLUDES) $(CCFLAGS) -- $(SOURCES)
183
184# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
185
186ifneq ($(USE_FASTCGI), 1)
187RECPT_OBJS = $(COMMONOBJECTS) $(RECPTOBJECTS) \
188 ../../lib/gsdllib.a \
189 ../../packages/mg/src/text/libtextin.a \
190 ../../packages/mg/lib/libmg.a \
191 ../mgpp/text/libtextin.a \
192 ../mgpp/lib/libmg.a
193else
194RECPT_OBJS = $(COMMONOBJECTS) $(RECPTOBJECTS) \
195 ../../lib/gsdllib.a \
196 ../../packages/mg/src/text/libtextin.a \
197 ../../packages/mg/lib/libmg.a \
198 ../../packages/fcgi/libfcgi/libfcgi.a \
199 ../mgpp/text/libtextin.a \
200 ../mgpp/lib/libmg.a
201endif
202
203recpt: $(RECPT_OBJS)
204 $(LINK) $(RECPT_OBJS) $(LIBS)
205
206# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
207
208ifneq ($(USE_FASTCGI), 1)
209LIBRARY_OBJS = $(COMMONOBJECTS) $(LIBRARYOBJECTS) $(COLSERVROBJECTS) \
210 ../../lib/gsdllib.a \
211 ../../packages/mg/src/text/libtextin.a \
212 ../../packages/mg/lib/libmg.a \
213 $(YAZDIR)/lib/libyaz.a \
214 ../mgpp/text/libtextin.a \
215 ../mgpp/lib/libmg.a
216else
217LIBRARY_OBJS = $(COMMONOBJECTS) $(LIBRARYOBJECTS) $(COLSERVROBJECTS) \
218 ../../lib/gsdllib.a \
219 ../../packages/mg/src/text/libtextin.a \
220 ../../packages/mg/lib/libmg.a \
221 ../../packages/fcgi/libfcgi/libfcgi.a \
222 ../mgpp/text/libtextin.a \
223 ../mgpp/lib/libmg.a \
224 $(YAZDIR)/lib/libyaz.a
225endif
226
227library: $(LIBRARY_OBJS)
228 $(LINK) $(LIBRARY_OBJS) $(LIBS)
229
230
231
232
233
Note: See TracBrowser for help on using the repository browser.