source: gsdl/trunk/runtime-src/src/w32server/win32.mak@ 19521

Last change on this file since 19521 was 19521, checked in by ak19, 15 years ago

Dr Bainbridge updated the Windows makefiles to 1. Take the DEBUG flag so that we can recompile all of GS2 in the Vis C++ 2005 Express Edition command prompt and then use its Debugger on the C code. 2. Now GS2 make clean command cleans up all object and lib files that its make generates.

  • Property svn:keywords set to Author Date Id Revision
File size: 5.2 KB
Line 
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
27GSDL_DIR = ..\..\..
28COMMON_DIR = $(GSDL_DIR)\common-src
29RUNTIME_DIR = $(GSDL_DIR)\runtime-src
30
31INDEXERS_DIR = $(COMMON_DIR)\indexers
32COMMON_PACKAGES_DIR = $(COMMON_DIR)\packages
33PACKAGES_DIR = $(RUNTIME_DIR)\packages
34COLSERVR_DIR = $(RUNTIME_DIR)\src\colservr
35PROTOCOL_DIR = $(RUNTIME_DIR)\src\protocol
36RECPT_DIR = $(RUNTIME_DIR)\src\recpt
37
38
39GSDL_VC4 = 0
40DEBUG = 0
41ENABLE_ACCENTFOLD = 1
42USE_SQLITE = 1
43
44!IF $(DEBUG)
45CXXFLAGS = -DEBUG -Z7 /errorReport:prompt
46LDFLAGS = -DEBUG -Z7 /errorReport:prompt
47!ELSE
48CXXFLAGS =
49LDFLAGS =
50!ENDIF
51
52
53!IF $(GSDL_VC4)
54CXXFLAGS = $(CXXFLAGS) -GX
55!ELSE
56CXXFLAGS = $(CXXFLAGS) -EHsc
57!ENDIF
58
59!IF $(ENABLE_ACCENTFOLD)
60ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\windows\iconv\iconv\lib\iconv.lib"
61!ELSE
62ACCENTFOLD_LIBS =
63!ENDIF
64
65!IF $(USE_SQLITE)
66SQLITE_LIBS = "$(COMMON_PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
67!ELSE
68SQLITE_LIBS =
69!ENDIF
70
71
72AR = lib
73CC = cl
74DEFS = -D__WIN32__ -DHAVE_CONFIG_H -D_LITTLE_ENDIAN -DPARADOCNUM -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE
75INCLUDES = -I"$(GSDL_DIR)" -I"$(COMMON_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" -I"$(RECPT_DIR)" \
76 -I"$(COLSERVR_DIR)" -I"$(INDEXERS_DIR)\mg" \
77 -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3" -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\windows" \
78 -I"$(INDEXERS_DIR)\mg\lib" -I"$(INDEXERS_DIR)\mg\src\text" \
79 -I"$(INDEXERS_DIR)\mgpp\lib" -I"$(INDEXERS_DIR)\mgpp\text"
80
81LIBS = "$(COMMON_PACKAGES_DIR)\windows\crypt\crypt\crypt.lib" "$(COMMON_PACKAGES_DIR)\windows\expat\expat\libexpat.lib" \
82 "$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\gdbm.lib" $(ACCENTFOLD_LIBS) $(SQLITE_LIBS)
83RSC = rc
84WINLIBS = kernel32.lib user32.lib gdi32.lib winspool.lib \
85 comdlg32.lib advapi32.lib shell32.lib ole32.lib \
86 oleaut32.lib uuid.lib odbc32.lib odbccp32.lib
87#wsock32.lib
88
89
90!IF $(GSDL_VC4)
91DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
92INCLUDES = $(INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\stlport\stlport"
93!ENDIF
94
95
96COMPILE = $(CC) -nologo -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
97LINK = $(CC) -nologo $(LDFLAGS) -Fe"$@"
98
99
100.SUFFIXES:
101.SUFFIXES: .cpp .obj
102.cpp.obj:
103 $(COMPILE) $<
104
105
106SOURCES = \
107 cgiwrapper.cpp \
108 conftools.cpp \
109 d_winsock.cpp \
110 fnord.cpp \
111 httpreq.cpp \
112 httpsend.cpp \
113 httpsrv.cpp \
114 locate.cpp \
115 netio.cpp \
116 parse.cpp \
117 settings.cpp \
118 startbrowser.cpp \
119 wincgiutils.cpp
120
121OBJECTS = \
122 cgiwrapper.obj \
123 conftools.obj \
124 d_winsock.obj \
125 fnord.obj \
126 httpreq.obj \
127 httpsend.obj \
128 httpsrv.obj \
129 locate.obj \
130 netio.obj \
131 parse.obj \
132 settings.obj \
133 startbrowser.obj \
134 wincgiutils.obj
135
136RESOURCES = \
137 server.res
138
139GSDL_LIBS = \
140 "$(RECPT_DIR)\gsdlrecpt.lib" \
141 "$(PROTOCOL_DIR)\gsdlprotocol.lib" \
142 "$(COLSERVR_DIR)\gsdlcolservr.lib" \
143 "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
144 "$(INDEXERS_DIR)\mg\lib\libmglib.lib" \
145 "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
146 "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib" \
147 "$(COMMON_DIR)\src\lib\gsdllib.lib"
148
149EXECUTABLE_OBJECTS = \
150 $(OBJECTS) \
151 $(RESOURCES) \
152 $(GSDL_LIBS)
153
154EXECUTABLE = server.exe
155
156
157# Default target: make the local library executable
158all: $(EXECUTABLE)
159
160server.exe: $(EXECUTABLE_OBJECTS)
161 $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS) $(WINLIBS)
162install:
163 copy $(EXECUTABLE) "$(GSDL_DIR)"
164
165clean:
166 del *.obj
167 del $(EXECUTABLE)
168 if exist *.pdb del *.pdb
169
170# Resources stuff
171SOURCE = "$(RUNTIME_DIR)\src\w32server\newgsdl.bmp"
172SOURCE = "$(RUNTIME_DIR)\src\w32server\resource.h"
173SOURCE = "$(RUNTIME_DIR)\src\w32server\server.ico"
174SOURCE = "$(RUNTIME_DIR)\src\w32server\gsdlcol.bmp"
175SOURCE = "$(RUNTIME_DIR)\src\w32server\server.rc"
176DEP_RSC_SERVE=\
177 "$(RUNTIME_DIR)\src\w32server\gsdlcol.bmp"\
178 "$(RUNTIME_DIR)\src\w32server\newgsdl.bmp"\
179 "$(RUNTIME_DIR)\src\w32server\server.ico"
180
181server.res : $(SOURCE) $(DEP_RSC_SERVE) "$(RUNTIME_DIR)\src\w32server"
182 $(RSC) /l 0x409 /fo"$(RUNTIME_DIR)\src\w32server\server.res" /i "$(RUNTIME_DIR)\src\w32server" \
183 /i "$(VCINSTALLDIR)/include/mfc" /d "NDEBUG" $(SOURCE)
184
185"$(RUNTIME_DIR)\src\w32server\server.res" : $(SOURCE) $(DEP_RSC_SERVE) "$(RUNTIME_DIR)\src\w32server"
186 $(RSC) /l 0x409 /fo"$(RUNTIME_DIR)\src\w32server\server.res" /i "$(RUNTIME_DIR)\src\w32server" \
187 /d "NDEBUG" $(SOURCE)
Note: See TracBrowser for help on using the repository browser.