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

Last change on this file since 16048 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
RevLine 
[743]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#
[15530]8# Copyright (C) 1999-2008 The New Zealand Digital Library Project
[743]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
[15530]27GSDL_DIR = ..\..
28INDEXERS_DIR = $(GSDL_DIR)\indexers
[15546]29PACKAGES_DIR = $(GSDL_DIR)\packages
[15530]30COLSERVR_DIR = $(GSDL_DIR)\src\colservr
31PROTOCOL_DIR = $(GSDL_DIR)\src\protocol
32Z3950_DIR = $(GSDL_DIR)\src\z3950
33
34
[11256]35GSDL_VC4 = 0
[2338]36LOCAL_LIBRARY = 0
[10439]37USE_Z3950 = 0
[7060]38DLL = 0
39DLLDEBUG = 0
[12990]40ENABLE_ACCENTFOLD = 1
[15785]41USE_SQLITE = 0
[1000]42
[10439]43
[11256]44!IF $(GSDL_VC4)
[3055]45CPPFLAGS = -GX
[11256]46!ELSE
47CPPFLAGS = -EHsc
48!ENDIF
49
[7060]50!IF $(DLL)
51CPPFLAGS = $(CPPFLAGS) -MD
52!ELSE
53!IF ($(DLLDEBUG))
54CPPFLAGS = $(CPPFLAGS) -MDd
55!ENDIF
56!ENDIF
57
[12990]58!IF $(ENABLE_ACCENTFOLD)
[15530]59ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\unac\iconv.lib"
[12990]60!ELSE
[15530]61ACCENTFOLD_LIBS =
[12990]62!ENDIF
63
[15785]64!IF $(USE_SQLITE)
[15827]65SQLITE_LIBS = "$(PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
[15785]66!ELSE
67SQLITE_LIBS =
68!ENDIF
69
[10439]70!IF $(USE_Z3950)
[15545]71Z3950_DEFS = -DUSE_Z3950
72Z3950_INCLUDES = -I$(Z3950_DIR)
[15546]73Z3950_LIBS = $(Z3950_DIR)\gsdlz3950.lib $(PACKAGES_DIR)\yaz\yaz-2.1.4\lib\yaz.lib
[10439]74!ELSE
[15545]75Z3950_DEFS =
76Z3950_INCLUDES =
77Z3950_LIBS =
[10439]78!ENDIF
[2338]79
[15530]80
81AR = lib
82CC = cl
[15785]83DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE \
84 -DGSDL_NOCACHE $(Z3950_DEFS)
[15907]85INCLUDES = -I. -I"$(GSDL_DIR)" -I"$(GSDL_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" \
[15530]86 -I"$(INDEXERS_DIR)\mg" -I"$(INDEXERS_DIR)\mg\lib" -I"$(INDEXERS_DIR)\mgpp\text" \
[15546]87 -I"$(PACKAGES_DIR)\windows\crypt\crypt" -I"$(PACKAGES_DIR)\windows\expat\expat" \
88 -I"$(PACKAGES_DIR)\windows\gdbm\gdbm" $(Z3950_INCLUDES)
[15568]89LDFLAGS =
[15546]90LIBS = "$(PACKAGES_DIR)\windows\crypt\crypt\crypt.lib" "$(PACKAGES_DIR)\windows\expat\expat\libexpat.lib" \
[15785]91 "$(PACKAGES_DIR)\windows\gdbm\gdbm\gdbm.lib" $(ACCENTFOLD_LIBS) $(SQLITE_LIBS) $(Z3950_LIBS)
[15530]92
93!IF $(GSDL_VC4)
94DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
[15789]95INCLUDES = $(INCLUDES) -I"$(PACKAGES_DIR)\windows\stlport\stlport"
[15530]96!ENDIF
97!IF $(LOCAL_LIBRARY)
98DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY
99!ENDIF
100
101
[11253]102COMPILE = $(CC) -nologo -c $(CPPFLAGS) $(DEFS) $(INCLUDES)
[15545]103LINK = $(CC) -nologo -Fe"$@" $(LDFLAGS)
[743]104
[15530]105
[743]106.SUFFIXES:
107.SUFFIXES: .cpp .obj
108.cpp.obj:
109 $(COMPILE) $<
110
[1000]111
[15530]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 \
[15540]124 configaction.cpp \
[15530]125 converter.cpp \
126 datelistbrowserclass.cpp \
127 depositoraction.cpp \
128 documentaction.cpp \
[15773]129 dynamicclassifieraction.cpp \
[15530]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
[743]156
[15530]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 \
[15540]169 configaction.obj \
[15530]170 converter.obj \
171 datelistbrowserclass.obj \
172 depositoraction.obj \
173 documentaction.obj \
[15773]174 dynamicclassifieraction.obj \
[15530]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
[743]201
[15569]202LIBRARY = gsdlrecpt.lib
203
[15530]204GSDL_LIBS = \
[15538]205 "$(PROTOCOL_DIR)\gsdlprotocol.lib" \
206 "$(COLSERVR_DIR)\gsdlcolservr.lib" \
[15535]207 "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
208 "$(INDEXERS_DIR)\mg\lib\libmglib.lib" \
209 "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
[15907]210 "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib" \
211 "$(GSDL_DIR)\src\lib\gsdllib.lib"
[743]212
[15530]213EXECUTABLE_OBJECTS = \
214 $(OBJECTS) \
215 $(GSDL_LIBS)
[743]216
[15530]217EXECUTABLE = library.exe
[743]218
219
[15569]220# Default target: make gsdlrecpt.lib if LOCAL_LIBRARY is set, otherwise both gsdlrecpt.lib and library.exe
[15542]221!IF $(LOCAL_LIBRARY)
222all: $(LIBRARY)
223!ELSE
[15569]224all: $(LIBRARY) $(EXECUTABLE)
[15542]225!ENDIF
226
[15580]227gsdlrecpt.lib: $(OBJECTS)
228 if EXIST $(LIBRARY) del $(LIBRARY)
229 $(AR) -nologo /out:$(LIBRARY) $(OBJECTS)
[15542]230
[15530]231library.exe: $(EXECUTABLE_OBJECTS)
232 $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS)
[743]233
[2338]234!IF $(LOCAL_LIBRARY)
[15569]235install:
[2338]236!ELSE
[15530]237install: $(EXECUTABLE)
[15580]238 copy $(EXECUTABLE) "$(GSDL_DIR)\cgi-bin"
[2338]239!ENDIF
[743]240
[15530]241clean:
242 del *.obj
[15580]243 del $(LIBRARY)
244 del $(EXECUTABLE)
[743]245
[10439]246
[15530]247# Always recompile configaction and statusaction in case GSDL_LOCAL_LIBRARY has changed
[2338]248statusaction.obj: FORCE
[4738]249configaction.obj: FORCE
[743]250
[9129]251FORCE:
Note: See TracBrowser for help on using the repository browser.