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

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

Better way of setting the ENABLE_indexer and USE_SQLITE and ENABLE_JNI variables in the windows makefiles.

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