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

Last change on this file since 15907 was 15907, checked in by mdewsnip, 16 years ago

Moving "lib" directory into "src", to keep all the source code together. Not tested yet.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 5.9 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-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 = ..\..
28INDEXERS_DIR = $(GSDL_DIR)\indexers
29PACKAGES_DIR = $(GSDL_DIR)\packages
30COLSERVR_DIR = $(GSDL_DIR)\src\colservr
31PROTOCOL_DIR = $(GSDL_DIR)\src\protocol
32Z3950_DIR = $(GSDL_DIR)\src\z3950
33
34
35GSDL_VC4 = 0
36LOCAL_LIBRARY = 0
37USE_Z3950 = 0
38DLL = 0
39DLLDEBUG = 0
40ENABLE_ACCENTFOLD = 1
41USE_SQLITE = 0
42
43
44!IF $(GSDL_VC4)
45CPPFLAGS = -GX
46!ELSE
47CPPFLAGS = -EHsc
48!ENDIF
49
50!IF $(DLL)
51CPPFLAGS = $(CPPFLAGS) -MD
52!ELSE
53!IF ($(DLLDEBUG))
54CPPFLAGS = $(CPPFLAGS) -MDd
55!ENDIF
56!ENDIF
57
58!IF $(ENABLE_ACCENTFOLD)
59ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\unac\iconv.lib"
60!ELSE
61ACCENTFOLD_LIBS =
62!ENDIF
63
64!IF $(USE_SQLITE)
65SQLITE_LIBS = "$(PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
66!ELSE
67SQLITE_LIBS =
68!ENDIF
69
70!IF $(USE_Z3950)
71Z3950_DEFS = -DUSE_Z3950
72Z3950_INCLUDES = -I$(Z3950_DIR)
73Z3950_LIBS = $(Z3950_DIR)\gsdlz3950.lib $(PACKAGES_DIR)\yaz\yaz-2.1.4\lib\yaz.lib
74!ELSE
75Z3950_DEFS =
76Z3950_INCLUDES =
77Z3950_LIBS =
78!ENDIF
79
80
81AR = lib
82CC = cl
83DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE \
84 -DGSDL_NOCACHE $(Z3950_DEFS)
85INCLUDES = -I. -I"$(GSDL_DIR)" -I"$(GSDL_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" \
86 -I"$(INDEXERS_DIR)\mg" -I"$(INDEXERS_DIR)\mg\lib" -I"$(INDEXERS_DIR)\mgpp\text" \
87 -I"$(PACKAGES_DIR)\windows\crypt\crypt" -I"$(PACKAGES_DIR)\windows\expat\expat" \
88 -I"$(PACKAGES_DIR)\windows\gdbm\gdbm" $(Z3950_INCLUDES)
89LDFLAGS =
90LIBS = "$(PACKAGES_DIR)\windows\crypt\crypt\crypt.lib" "$(PACKAGES_DIR)\windows\expat\expat\libexpat.lib" \
91 "$(PACKAGES_DIR)\windows\gdbm\gdbm\gdbm.lib" $(ACCENTFOLD_LIBS) $(SQLITE_LIBS) $(Z3950_LIBS)
92
93!IF $(GSDL_VC4)
94DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
95INCLUDES = $(INCLUDES) -I"$(PACKAGES_DIR)\windows\stlport\stlport"
96!ENDIF
97!IF $(LOCAL_LIBRARY)
98DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY
99!ENDIF
100
101
102COMPILE = $(CC) -nologo -c $(CPPFLAGS) $(DEFS) $(INCLUDES)
103LINK = $(CC) -nologo -Fe"$@" $(LDFLAGS)
104
105
106.SUFFIXES:
107.SUFFIXES: .cpp .obj
108.cpp.obj:
109 $(COMPILE) $<
110
111
112SOURCES = \
113 action.cpp \
114 argdb.cpp \
115 authenaction.cpp \
116 browseaction.cpp \
117 browseactiontools.cpp \
118 browserclass.cpp \
119 browsetoolsclass.cpp \
120 cgiargs.cpp \
121 cgiutils.cpp \
122 cgiwrapper.cpp \
123 collectoraction.cpp \
124 configaction.cpp \
125 converter.cpp \
126 datelistbrowserclass.cpp \
127 depositoraction.cpp \
128 documentaction.cpp \
129 dynamicclassifieraction.cpp \
130 extlinkaction.cpp \
131 formattools.cpp \
132 gtiaction.cpp \
133 highlighttext.cpp \
134 historydb.cpp \
135 hlistbrowserclass.cpp \
136 htmlbrowserclass.cpp \
137 htmlutils.cpp \
138 invbrowserclass.cpp \
139 librarymain.cpp \
140 maincfg.cpp \
141 pageaction.cpp \
142 pagedbrowserclass.cpp \
143 phindaction.cpp \
144 phindbrowserclass.cpp \
145 pingaction.cpp \
146 queryaction.cpp \
147 querytools.cpp \
148 receptionist.cpp \
149 statusaction.cpp \
150 summarise.cpp \
151 tipaction.cpp \
152 userdb.cpp \
153 usersaction.cpp \
154 vlistbrowserclass.cpp \
155 wizardaction.cpp
156
157OBJECTS = \
158 action.obj \
159 argdb.obj \
160 authenaction.obj \
161 browseaction.obj \
162 browseactiontools.obj \
163 browserclass.obj \
164 browsetoolsclass.obj \
165 cgiargs.obj \
166 cgiutils.obj \
167 cgiwrapper.obj \
168 collectoraction.obj \
169 configaction.obj \
170 converter.obj \
171 datelistbrowserclass.obj \
172 depositoraction.obj \
173 documentaction.obj \
174 dynamicclassifieraction.obj \
175 extlinkaction.obj \
176 formattools.obj \
177 gtiaction.obj \
178 highlighttext.obj \
179 historydb.obj \
180 hlistbrowserclass.obj \
181 htmlbrowserclass.obj \
182 htmlutils.obj \
183 invbrowserclass.obj \
184 librarymain.obj \
185 maincfg.obj \
186 pageaction.obj \
187 pagedbrowserclass.obj \
188 phindaction.obj \
189 phindbrowserclass.obj \
190 pingaction.obj \
191 queryaction.obj \
192 querytools.obj \
193 receptionist.obj \
194 statusaction.obj \
195 summarise.obj \
196 tipaction.obj \
197 userdb.obj \
198 usersaction.obj \
199 vlistbrowserclass.obj \
200 wizardaction.obj
201
202LIBRARY = gsdlrecpt.lib
203
204GSDL_LIBS = \
205 "$(PROTOCOL_DIR)\gsdlprotocol.lib" \
206 "$(COLSERVR_DIR)\gsdlcolservr.lib" \
207 "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
208 "$(INDEXERS_DIR)\mg\lib\libmglib.lib" \
209 "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
210 "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib" \
211 "$(GSDL_DIR)\src\lib\gsdllib.lib"
212
213EXECUTABLE_OBJECTS = \
214 $(OBJECTS) \
215 $(GSDL_LIBS)
216
217EXECUTABLE = library.exe
218
219
220# Default target: make gsdlrecpt.lib if LOCAL_LIBRARY is set, otherwise both gsdlrecpt.lib and library.exe
221!IF $(LOCAL_LIBRARY)
222all: $(LIBRARY)
223!ELSE
224all: $(LIBRARY) $(EXECUTABLE)
225!ENDIF
226
227gsdlrecpt.lib: $(OBJECTS)
228 if EXIST $(LIBRARY) del $(LIBRARY)
229 $(AR) -nologo /out:$(LIBRARY) $(OBJECTS)
230
231library.exe: $(EXECUTABLE_OBJECTS)
232 $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS)
233
234!IF $(LOCAL_LIBRARY)
235install:
236!ELSE
237install: $(EXECUTABLE)
238 copy $(EXECUTABLE) "$(GSDL_DIR)\cgi-bin"
239!ENDIF
240
241clean:
242 del *.obj
243 del $(LIBRARY)
244 del $(EXECUTABLE)
245
246
247# Always recompile configaction and statusaction in case GSDL_LOCAL_LIBRARY has changed
248statusaction.obj: FORCE
249configaction.obj: FORCE
250
251FORCE:
Note: See TracBrowser for help on using the repository browser.