source: trunk/gsdl/src/recpt/win32.mak@ 11188

Last change on this file since 11188 was 11188, checked in by mdewsnip, 18 years ago

The expat library is now compiled too, rather than being included statically. Also, the expat stuff contained in expat.zip is in a "expat" folder.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 7.1 KB
Line 
1###########################################################################
2#
3# win32 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
27GSDLHOME = ..\..
28USE_STLPORT = 0
29LOCAL_LIBRARY = 0
30USE_Z3950 = 0
31DLL = 0
32DLLDEBUG = 0
33STLPATH = "$(GSDLHOME)\packages\windows\stlport\stlport"
34
35# YAZ kit for z39.50
36YAZDIR=$(GSDLHOME)\packages\yaz\yaz-2.1.4
37
38AR = lib
39CC = cl
40
41CPPFLAGS = -GX
42!IF $(DLL)
43CPPFLAGS = $(CPPFLAGS) -MD
44!ELSE
45!IF ($(DLLDEBUG))
46CPPFLAGS = $(CPPFLAGS) -MDd
47!ENDIF
48!ENDIF
49
50LDFLAGS =
51
52DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX
53INCLUDES = -I"$(GSDLHOME)\src\recpt" -I"$(GSDLHOME)\lib" -I"$(GSDLHOME)\src\colservr" \
54 -I"$(GSDLHOME)\packages\mg" -I"$(GSDLHOME)\packages\mg\lib" \
55 -I"$(GSDLHOME)\packages\mg\src\text" -I"$(GSDLHOME)\packages\windows\gdbm\gdbm" \
56 -I"$(GSDLHOME)\packages\windows\crypt\crypt" -I"$(GSDLHOME)\src\mgpp\lib" \
57 -I"$(GSDLHOME)\src\mgpp\text" -I"$(GSDLHOME)"
58!IF $(USE_STLPORT)
59DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
60INCLUDES = $(INCLUDES) -I$(STLPATH)
61!ENDIF
62!IF $(LOCAL_LIBRARY)
63DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY
64!ENDIF
65
66LIBS = "$(GSDLHOME)\packages\windows\gdbm\gdbm\gdbm.lib" \
67 "$(GSDLHOME)\packages\windows\crypt\crypt\crypt.lib" \
68 "$(GSDLHOME)\src\colservr\gsdlcolservr.lib" \
69 "$(GSDLHOME)\lib\gsdllib.lib" \
70 "$(GSDLHOME)\packages\mg\src\text\libtextin.lib" \
71 "$(GSDLHOME)\packages\mg\lib\libmg.lib" \
72 "$(GSDLHOME)\src\mgpp\text\libtextin.lib" \
73 "$(GSDLHOME)\src\mgpp\lib\libmg.lib" \
74 "$(GSDLHOME)\packages\windows\expat\expat\libexpat.lib"
75
76!IF $(USE_Z3950)
77DEFS = $(DEFS) -DUSE_Z3950
78Z3950EXEC = z3950server.exe
79Z3950OBJS = z3950proto.obj z3950proxy.obj yaz_zclient.obj zparse.tab.obj zparse.yy.obj
80Z_CLIENTOBJS = "$(YAZDIR)\win\obj\tabcomplete.obj"
81Z_LIBYAZ = "$(YAZDIR)\lib\yaz.lib"
82LDFLAGS = $(LDFLAGS) /link /NOD:msvcrt.lib
83!ELSE
84Z3950EXEC =
85Z3950OBJS =
86Z_CLIENTOBJS =
87Z_LIBYAZ =
88!ENDIF
89
90COMPILE = $(CC) -c $(CPPFLAGS) $(DEFS) $(INCLUDES)
91LINK = $(CC) -o $@
92
93.SUFFIXES:
94.SUFFIXES: .c .obj
95.c.obj:
96 $(COMPILE) $<
97
98.SUFFIXES: .cpp .obj
99.cpp.obj:
100 $(COMPILE) $<
101
102
103COMMONHEADERS = receptionist.h cgiargs.h action.h browserclass.h \
104 converter.h recptconfig.h cgiutils.h OIDtools.h browsetools.h \
105 statusaction.h pageaction.h comtypes.h recptproto.h pingaction.h \
106 queryaction.h documentaction.h extlinkaction.h htmlutils.h \
107 querytools.h formattools.h tipaction.h authenaction.h infodbclass.h \
108 userdb.h usersaction.h vlistbrowserclass.h hlistbrowserclass.h \
109 datelistbrowserclass.h invbrowserclass.h pagedbrowserclass.h \
110 htmlbrowserclass.h historydb.h phindbrowserclass.h collectoraction.h \
111 nullproto.h argdb.h browseaction.h browseactiontools.h phindaction.h \
112 summarise.h highlighttext.h configaction.h
113
114CGIHEADERS = cgiwrapper.h
115
116HEADERS = $(COMMONHEADERS) $(CGIHEADERS)
117
118
119COMMONSOURCES = receptionist.cpp cgiargs.cpp action.cpp browserclass.cpp \
120 converter.cpp recptconfig.cpp cgiutils.cpp OIDtools.cpp browsetools.cpp \
121 statusaction.cpp pageaction.cpp comtypes.cpp \
122 recptproto.cpp pingaction.cpp queryaction.cpp documentaction.cpp \
123 extlinkaction.cpp htmlutils.cpp querytools.cpp formattools.cpp \
124 tipaction.cpp authenaction.cpp infodbclass.cpp userdb.cpp usersaction.cpp \
125 vlistbrowserclass.cpp hlistbrowserclass.cpp datelistbrowserclass.cpp \
126 invbrowserclass.cpp pagedbrowserclass.cpp htmlbrowserclass.cpp \
127 historydb.cpp phindbrowserclass.cpp collectoraction.cpp nullproto.cpp \
128 argdb.cpp browseaction.cpp browseactiontools.cpp phindaction.cpp \
129 summarise.cpp highlighttext.cpp configaction.cpp
130
131CGISOURCES = librarymain.cpp cgiwrapper.cpp
132
133SOURCES = $(COMMONSOURCES) $(CGISOURCES)
134
135
136COMMONOBJECTS = receptionist.obj cgiargs.obj action.obj browserclass.obj \
137 converter.obj recptconfig.obj cgiutils.obj OIDtools.obj browsetools.obj \
138 statusaction.obj pageaction.obj comtypes.obj recptproto.obj \
139 pingaction.obj queryaction.obj documentaction.obj extlinkaction.obj \
140 htmlutils.obj querytools.obj formattools.obj tipaction.obj \
141 authenaction.obj infodbclass.obj userdb.obj usersaction.obj \
142 vlistbrowserclass.obj hlistbrowserclass.obj datelistbrowserclass.obj \
143 invbrowserclass.obj pagedbrowserclass.obj htmlbrowserclass.obj \
144 historydb.obj phindbrowserclass.obj collectoraction.obj nullproto.obj \
145 argdb.obj browseaction.obj browseactiontools.obj phindaction.obj \
146 summarise.obj highlighttext.obj configaction.obj $(Z3950OBJS)
147
148CGIOBJECTS = librarymain.obj cgiwrapper.obj
149
150
151OBJECTS = $(COMMONOBJECTS) $(CGIOBJECTS)
152
153EXEC = library.exe $(Z3950EXEC)
154
155!IF $(LOCAL_LIBRARY)
156all: gsdlrecpt.lib $(Z3950EXEC)
157!ELSE
158all: $(EXEC)
159!ENDIF
160
161gsdlrecpt.lib : $(COMMONOBJECTS) $(Z_CLIENTOBJS)
162 if EXIST gsdlrecpt.lib del gsdlrecpt.lib
163 $(AR) /out:gsdlrecpt.lib $(COMMONOBJECTS) $(Z_CLIENTOBJS)
164
165clean:
166 del *.obj
167 del library.exe
168 del z3950server.exe
169!IF $(LOCAL_LIBRARY)
170install:
171!ELSE
172install:
173 copy library.exe "$(GSDLHOME)\cgi-bin"
174!ENDIF
175!IF $(USE_Z3950)
176 copy z3950server.exe "$(GSDLHOME)\cgi-bin"
177!ENDIF
178
179
180yaz_zclient.obj: yaz_zclient.c
181 $(COMPILE) -I"$(YAZDIR)\include" -I"$(YAZDIR)\client" yaz_zclient.c
182
183library.exe: $(OBJECTS) $(Z_CLIENTOBJS)
184 $(LINK) $(OBJECTS) $(LIBS) $(Z_LIBYAZ) $(Z_CLIENTOBJS) $(LDFLAGS)
185
186Z3950_OBJS_OLD = $(COMMONOBJECTS) $(COLSERVROBJECTS)\
187 ../colservr/z3950parser.o ../colservr/z3950explain.o \
188 ../colservr/z3950_to_gsdl.o \
189 ../colservr/z3950server.o ../colservr/read-grs.o nullproto.o \
190 ../../lib/gsdllib.a \
191 ../../packages/mg/src/text/libtextin.a \
192 ../../packages/mg/lib/libmg.a \
193 $(FASTCGI_OBJS) \
194 ../mgpp/text/libtextin.a \
195 ../mgpp/lib/libmg.a ../../packages/yaz/lib/libyaz.a ../../packages/d2m/libd2m.a
196
197Z3950_OBJS = "$(GSDLHOME)\src\colservr\gsdlz3950.lib" \
198 "$(YAZDIR)\lib\yaz.lib" \
199 "$(GSDLHOME)\packages\d2m\libd2m.lib" \
200 zparse.yy.obj comtypes.obj infodbclass.obj \
201 OIDtools.obj recptconfig.obj recptproto.obj \
202 nullproto.obj
203
204z3950server.exe: $(Z3950_OBJS)
205 @echo building z3950server
206 $(LINK) $(Z3950_OBJS) $(LIBS) $(LDFLAGS)
207
208# we want the following to always be compiled in case the status of
209# GSDL_LOCAL_LIBRARY has changed
210statusaction.obj: FORCE
211configaction.obj: FORCE
212
213FORCE:
214
Note: See TracBrowser for help on using the repository browser.