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

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

(Adding new DB support) Fixed SQLite library paths.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 5.8 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)\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 "$(GSDL_DIR)\lib\gsdllib.lib" \
208 "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
209 "$(INDEXERS_DIR)\mg\lib\libmglib.lib" \
210 "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
211 "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.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.