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

Last change on this file since 12082 was 12082, checked in by sjboddie, 18 years ago

Minor changes to get thing compiling under windows. I'm using an old
version of cgiwrapper.cpp and librarymain.cpp to compile as cgicc still
needs to be sorted out under windows. There are still some portability
issues with depositoraction that need to be sorted out too, so I haven't
included it in win32.mak yet.

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