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

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

Changes to makefiles, configure files, and source code to work with the new configure flags that allow indexers to be individually compiled up by setting each indexer to be enabled or disabled (enable-mg, enable-mgpp, enable-lucene)

  • 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)" == "0"
69SQLITE_LIBS =
70!ELSE
71SQLITE_LIBS = "$(COMMON_PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
72!ENDIF
73
74!IF "$(ENABLE_MG)" == "0"
75MG_LIBS =
76MG_INCLUDES =
77!ELSE
78MG_LIBS = "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
79 "$(INDEXERS_DIR)\mg\lib\libmglib.lib"
80MG_INCLUDES = -I"$(INDEXERS_DIR)\mg" -I"$(INDEXERS_DIR)\mg\lib" -I"$(INDEXERS_DIR)\mg\src\text"
81!ENDIF
82
83!IF "$(ENABLE_MGPP)" == "0"
84MGPP_DEFS =
85MGPP_LIBS =
86MGPP_INCLUDES =
87!ELSE
88MGPP_DEFS = -DENABLE_MGPP
89MGPP_LIBS = "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
90 "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib"
91MGPP_INCLUDES = -I"$(INDEXERS_DIR)\mgpp\lib" -I"$(INDEXERS_DIR)\mgpp\text"
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.