source: main/trunk/greenstone2/runtime-src/src/w32server/win32.mak@ 22090

Last change on this file since 22090 was 22090, checked in by ak19, 14 years ago

Windows makefiles to work with USE_GDBM and USE_JDBM: 1. Added winMake.bat to both gs-jdbm-1.0.tar.gz and common-src's jdbmedit so that jdbm java files can now get compiled up. 2. These new winMake bat files are then called from the updated windows makefiles in common-src and common-src's src-lib folder. 3. Changed win32.mak files to work with USE_GDBM and USE_JDBM: these set their USE_DBDEFINES flag when on to prevent memory errors due to makefiles' inconsistent setting of USE_DEFINES between folders. Also certain gdbm related lib, includes and dir statements are moved out of the general part of the windows makefiles into the USE_GDBM section of the makefiles.

  • Property svn:keywords set to Author Date Id Revision
File size: 6.1 KB
RevLine 
[1237]1###########################################################################
2#
3# win32 makefile -- src/w32server
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
[16574]27GSDL_DIR = ..\..\..
28COMMON_DIR = $(GSDL_DIR)\common-src
29RUNTIME_DIR = $(GSDL_DIR)\runtime-src
[15541]30
[16574]31INDEXERS_DIR = $(COMMON_DIR)\indexers
[18048]32COMMON_PACKAGES_DIR = $(COMMON_DIR)\packages
[16574]33PACKAGES_DIR = $(RUNTIME_DIR)\packages
34COLSERVR_DIR = $(RUNTIME_DIR)\src\colservr
[16577]35PROTOCOL_DIR = $(RUNTIME_DIR)\src\protocol
[16574]36RECPT_DIR = $(RUNTIME_DIR)\src\recpt
[15541]37
[16574]38
[11256]39GSDL_VC4 = 0
[19521]40DEBUG = 0
[12998]41ENABLE_ACCENTFOLD = 1
[22090]42USE_GDBM = 1
43USE_JDBM = 1
[18076]44USE_SQLITE = 1
[22090]45USE_MSSQL = 0
[21324]46ENABLE_MG = 1
47ENABLE_MGPP = 1
48ENABLE_LUCENE = 1
[1237]49
[19521]50!IF $(DEBUG)
51CXXFLAGS = -DEBUG -Z7 /errorReport:prompt
52LDFLAGS = -DEBUG -Z7 /errorReport:prompt
53!ELSE
54CXXFLAGS =
55LDFLAGS =
56!ENDIF
[11256]57
[19521]58
[11256]59!IF $(GSDL_VC4)
[19521]60CXXFLAGS = $(CXXFLAGS) -GX
[11256]61!ELSE
[19521]62CXXFLAGS = $(CXXFLAGS) -EHsc
[11256]63!ENDIF
64
[12998]65!IF $(ENABLE_ACCENTFOLD)
[16908]66ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\windows\iconv\iconv\lib\iconv.lib"
[12998]67!ELSE
[15541]68ACCENTFOLD_LIBS =
[12998]69!ENDIF
70
[22090]71!IF $(USE_GDBM)
72GDBM_INCLUDES = -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3" \
73 -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\windows"
74GDBM_LIBS = "$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\gdbm.lib"
75GDBM_DEFINES = -DUSE_GDBM
76!ELSE
77GDBM_INCLUDES =
78GDBM_LIBS =
79GDBM_DEFINES =
80!ENDIF
81
82!IF $(USE_JDBM)
83JDBM_DEFINES = -DUSE_JDBM
84!ELSE
85JDBM_DEFINES =
86!ENDIF
87
[21435]88!IF $(USE_SQLITE)
89SQLITE_LIBS = "$(COMMON_PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
[22090]90SQLITE_DEFINES = -DUSE_SQLITE
[21435]91!ELSE
[21324]92SQLITE_LIBS =
[22090]93SQLITE_DEFINES =
[21324]94!ENDIF
95
[22090]96!IF $(USE_MSSQL)
97MSSQL_DEFINES = -DUSE_MSSQL
98!ELSE
99MSSQL_DEFINES =
100!ENDIF
101
[21435]102!IF $(ENABLE_MG)
[21945]103MG_DEFS = -DENABLE_MG
[21324]104MG_LIBS = "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
105 "$(INDEXERS_DIR)\mg\lib\libmglib.lib"
106MG_INCLUDES = -I"$(INDEXERS_DIR)\mg" -I"$(INDEXERS_DIR)\mg\lib" -I"$(INDEXERS_DIR)\mg\src\text"
[21435]107!ELSE
[21945]108MG_DEFS =
[21435]109MG_LIBS =
110MG_INCLUDES =
[15790]111!ENDIF
[1237]112
[21435]113!IF $(ENABLE_MGPP)
[21324]114MGPP_DEFS = -DENABLE_MGPP
115MGPP_LIBS = "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
116 "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib"
117MGPP_INCLUDES = -I"$(INDEXERS_DIR)\mgpp\lib" -I"$(INDEXERS_DIR)\mgpp\text"
[21435]118!ELSE
119MGPP_DEFS =
120MGPP_LIBS =
121MGPP_INCLUDES =
[21324]122!ENDIF
[15790]123
[21945]124!IF $(ENABLE_LUCENE)
125LUCENE_DEFS = -DENABLE_LUCENE
126!ELSE
127LUCENE_DEFS=
128!ENDIF
129
[15541]130AR = lib
131CC = cl
[21945]132DEFS = -D__WIN32__ -DHAVE_CONFIG_H -D_LITTLE_ENDIAN -DPARADOCNUM -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE \
[22090]133 $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES) $(MSSQL_DEFINES) \
[21945]134 $(MG_DEFS) $(MGPP_DEFS) $(LUCENE_DEFS)
[16574]135INCLUDES = -I"$(GSDL_DIR)" -I"$(COMMON_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" -I"$(RECPT_DIR)" \
[22090]136 $(GDBM_INCLUDES) \
[21324]137 -I"$(COLSERVR_DIR)" \
138 $(MG_INCLUDES) \
139 $(MGPP_INCLUDES)
[19521]140
[18048]141LIBS = "$(COMMON_PACKAGES_DIR)\windows\crypt\crypt\crypt.lib" "$(COMMON_PACKAGES_DIR)\windows\expat\expat\libexpat.lib" \
[22090]142 $(GDBM_LIBS) $(ACCENTFOLD_LIBS) $(SQLITE_LIBS)
[15541]143RSC = rc
[2508]144WINLIBS = kernel32.lib user32.lib gdi32.lib winspool.lib \
145 comdlg32.lib advapi32.lib shell32.lib ole32.lib \
[3056]146 oleaut32.lib uuid.lib odbc32.lib odbccp32.lib
147#wsock32.lib
[2508]148
[15541]149
150!IF $(GSDL_VC4)
151DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
[18048]152INCLUDES = $(INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\stlport\stlport"
[15541]153!ENDIF
154
155
[19521]156COMPILE = $(CC) -nologo -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
[11255]157LINK = $(CC) -nologo $(LDFLAGS) -Fe"$@"
[1237]158
[15541]159
[1237]160.SUFFIXES:
161.SUFFIXES: .cpp .obj
162.cpp.obj:
163 $(COMPILE) $<
164
165
[15541]166SOURCES = \
167 cgiwrapper.cpp \
168 conftools.cpp \
169 d_winsock.cpp \
170 fnord.cpp \
171 httpreq.cpp \
172 httpsend.cpp \
173 httpsrv.cpp \
174 locate.cpp \
175 netio.cpp \
176 parse.cpp \
177 settings.cpp \
178 startbrowser.cpp \
179 wincgiutils.cpp
[1237]180
[15541]181OBJECTS = \
182 cgiwrapper.obj \
183 conftools.obj \
184 d_winsock.obj \
185 fnord.obj \
186 httpreq.obj \
187 httpsend.obj \
188 httpsrv.obj \
189 locate.obj \
190 netio.obj \
191 parse.obj \
192 settings.obj \
193 startbrowser.obj \
194 wincgiutils.obj
[1237]195
[15627]196RESOURCES = \
197 server.res
198
[15541]199GSDL_LIBS = \
200 "$(RECPT_DIR)\gsdlrecpt.lib" \
201 "$(PROTOCOL_DIR)\gsdlprotocol.lib" \
202 "$(COLSERVR_DIR)\gsdlcolservr.lib" \
[21324]203 $(MG_LIBS) \
204 $(MGPP_LIBS) \
[16574]205 "$(COMMON_DIR)\src\lib\gsdllib.lib"
[1237]206
[15541]207EXECUTABLE_OBJECTS = \
208 $(OBJECTS) \
[15627]209 $(RESOURCES) \
[15541]210 $(GSDL_LIBS)
[1237]211
[15541]212EXECUTABLE = server.exe
[1237]213
[15541]214
[15580]215# Default target: make the local library executable
216all: $(EXECUTABLE)
217
[15541]218server.exe: $(EXECUTABLE_OBJECTS)
219 $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS) $(WINLIBS)
[1237]220install:
[15541]221 copy $(EXECUTABLE) "$(GSDL_DIR)"
[1237]222
[15541]223clean:
224 del *.obj
225 del $(EXECUTABLE)
[19521]226 if exist *.pdb del *.pdb
[1237]227
[15627]228# Resources stuff
[16574]229SOURCE = "$(RUNTIME_DIR)\src\w32server\newgsdl.bmp"
230SOURCE = "$(RUNTIME_DIR)\src\w32server\resource.h"
231SOURCE = "$(RUNTIME_DIR)\src\w32server\server.ico"
232SOURCE = "$(RUNTIME_DIR)\src\w32server\gsdlcol.bmp"
233SOURCE = "$(RUNTIME_DIR)\src\w32server\server.rc"
[1237]234DEP_RSC_SERVE=\
[16574]235 "$(RUNTIME_DIR)\src\w32server\gsdlcol.bmp"\
236 "$(RUNTIME_DIR)\src\w32server\newgsdl.bmp"\
237 "$(RUNTIME_DIR)\src\w32server\server.ico"
[1237]238
[16574]239server.res : $(SOURCE) $(DEP_RSC_SERVE) "$(RUNTIME_DIR)\src\w32server"
240 $(RSC) /l 0x409 /fo"$(RUNTIME_DIR)\src\w32server\server.res" /i "$(RUNTIME_DIR)\src\w32server" \
[16889]241 /i "$(VCINSTALLDIR)/include/mfc" /d "NDEBUG" $(SOURCE)
[1237]242
[16574]243"$(RUNTIME_DIR)\src\w32server\server.res" : $(SOURCE) $(DEP_RSC_SERVE) "$(RUNTIME_DIR)\src\w32server"
244 $(RSC) /l 0x409 /fo"$(RUNTIME_DIR)\src\w32server\server.res" /i "$(RUNTIME_DIR)\src\w32server" \
[1237]245 /d "NDEBUG" $(SOURCE)
Note: See TracBrowser for help on using the repository browser.