source: main/trunk/greenstone2/runtime-src/src/colservr/win32.mak@ 22766

Last change on this file since 22766 was 22766, checked in by mdewsnip, 14 years ago

Instead of having two copies of expat in Greenstone (one for Linux and one for Windows), added Windows makefiles into the version in common-src/packages/expat. This means we can remove the Windows-only version in common-src/packages/windows/expat, and also means that expat now works the same as SQLite.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 5.0 KB
RevLine 
[743]1###########################################################################
2#
3# win32 makefile -- src/colservr
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#
[15522]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
[16574]27GSDL_DIR = ..\..\..
28COMMON_DIR = $(GSDL_DIR)\common-src
29RUNTIME_DIR = $(GSDL_DIR)\runtime-src
[15522]30
[16574]31INDEXERS_DIR = $(COMMON_DIR)\indexers
[18048]32COMMON_PACKAGES_DIR = $(COMMON_DIR)\packages
[16574]33PACKAGES_DIR = $(RUNTIME_DIR)\packages
[15522]34
[11256]35GSDL_VC4 = 0
[19521]36DEBUG = 0
[7060]37DLL = 0
38DLLDEBUG = 0
[21472]39USE_GDBM = 1
40USE_JDBM = 1
[18076]41USE_SQLITE = 1
[17476]42USE_MSSQL = 0
[21324]43ENABLE_MG = 1
44ENABLE_MGPP = 1
45ENABLE_LUCENE = 1
[743]46
[19521]47!IF $(DEBUG)
48CXXFLAGS = -DEBUG -Z7 /errorReport:prompt
49!ELSE
50CXXFLAGS =
51!ENDIF
[7060]52
[19521]53
[11256]54!IF $(GSDL_VC4)
[19521]55CXXFLAGS = $(CXXFLAGS) -GX
[11256]56!ELSE
[19521]57CXXFLAGS = $(CXXFLAGS) -EHsc
[11256]58!ENDIF
59
[7060]60!IF $(DLL)
[19521]61CXXFLAGS = $(CXXFLAGS) -MD
[7060]62!ELSE
63!IF ($(DLLDEBUG))
[19521]64CXXFLAGS = $(CXXFLAGS) -MDd
[7060]65!ENDIF
66!ENDIF
67
[21472]68!IF $(USE_GDBM)
69GDBM_DEFINES = -DUSE_GDBM
70GDBM_INCLUDES = -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3" -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\windows"
71!ELSE
72GDBM_DEFINES =
73GDBM_INCLUDES =
74!ENDIF
75
76!IF $(USE_JDBM)
77JDBM_DEFINES = -DUSE_JDBM
78!ELSE
79JDBM_DEFINES =
80!ENDIF
81
[21435]82!IF $(USE_SQLITE)
83SQLITE_DEFINES = -DUSE_SQLITE
84SQLITE_INCLUDES = -I"$(COMMON_PACKAGES_DIR)\sqlite\include"
85!ELSE
[21324]86SQLITE_DEFINES =
87SQLITE_INCLUDES =
[15785]88!ENDIF
[15519]89
[17476]90!IF $(USE_MSSQL)
91MSSQL_DEFINES = -DUSE_MSSQL
92!ELSE
93MSSQL_DEFINES =
94!ENDIF
[15785]95
[21435]96!IF $(ENABLE_MG)
[21324]97MG_DEFS = -DENABLE_MG
98MG_SOURCES = mgq.c \
99 mgqueryfilter.cpp \
100 mgsearch.cpp \
101 phrasequeryfilter.cpp \
102 mgsource.cpp
103MG_OBJECTS = mgq.obj \
104 mgqueryfilter.obj \
105 mgsearch.obj \
106 phrasequeryfilter.obj \
107 mgsource.obj
108MG_INCLUDES = -I"$(INDEXERS_DIR)\mg" -I"$(INDEXERS_DIR)\mg\lib" -I"$(INDEXERS_DIR)\mg\src\text"
[21435]109!ELSE
110MG_DEFS =
111MG_SOURCES =
112MG_OBJECTS =
113MG_INCLUDES =
[21324]114!ENDIF
[17476]115
[21435]116!IF $(ENABLE_MGPP)
[21324]117MGPP_DEFS = -DENABLE_MGPP
118MGPP_SOURCES = mgppqueryfilter.cpp \
119 mgppsearch.cpp \
120 mgppsource.cpp
121MGPP_OBJECTS = mgppqueryfilter.obj \
122 mgppsearch.obj \
123 mgppsource.obj
124MGPP_INCLUDES = -I"$(INDEXERS_DIR)\mgpp\lib" -I"$(INDEXERS_DIR)\mgpp\text"
[21435]125!ELSE
126MGPP_DEFS =
127MGPP_SOURCES =
128MGPP_OBJECTS =
129MGPP_INCLUDES =
[21324]130!ENDIF
131
[21945]132!IF $(ENABLE_LUCENE)
133LUCENE_DEFS = -DENABLE_LUCENE
134!ELSE
[21324]135LUCENE_DEFS =
136!ENDIF
137
138
[15519]139AR = lib
140CC = cl
[15785]141DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE \
[21472]142 -DXML_STATIC $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES) $(MSSQL_DEFINES) \
143 $(MG_DEFS) $(MGPP_DEFS) $(LUCENE_DEFS)
[15522]144# Do NOT add the "recpt" directory here: the colserver should be independent of the receptionist!
[16574]145INCLUDES = -I"$(GSDL_DIR)" -I"$(COMMON_DIR)\src\lib" \
[21324]146 $(MG_INCLUDES) \
147 $(MGPP_INCLUDES) \
[22766]148 -I"$(COMMON_PACKAGES_DIR)\expat\include" $(GDBM_INCLUDES) $(SQLITE_INCLUDES)
[2626]149
[11257]150!IF $(GSDL_VC4)
[2338]151DEFS=$(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
[18048]152INCLUDES = $(INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\stlport\stlport"
[2338]153!ENDIF
[743]154
155
[19521]156COMPILE = $(CC) -nologo -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
[743]157
[15519]158
[743]159.SUFFIXES:
160.SUFFIXES: .c .obj
161.c.obj:
162 $(COMPILE) $<
163
164.SUFFIXES: .cpp .obj
165.cpp.obj:
166 $(COMPILE) $<
167
[10438]168
[15519]169SOURCES = \
170 browsefilter.cpp \
171 collectserver.cpp \
172 collectset.cpp \
173 colservrconfig.cpp \
174 comtypes.cpp \
175 expat_document.cpp \
176 expat_resultset.cpp \
177 filter.cpp \
178 lucenequeryfilter.cpp \
179 lucenesearch.cpp \
[15592]180 lucenesource.cpp \
[15519]181 maptools.cpp \
[21324]182 $(MG_SOURCES) \
183 $(MGPP_SOURCES) \
[15519]184 phrasesearch.cpp \
185 querycache.cpp \
186 queryfilter.cpp \
187 queryinfo.cpp \
188 search.cpp \
[15774]189 source.cpp \
[22062]190 sqlbrowsefilter.cpp \
191 sqlfilter.cpp \
192 sqlqueryfilter.cpp
[743]193
[15519]194OBJECTS = \
195 browsefilter.obj \
196 collectserver.obj \
197 collectset.obj \
198 colservrconfig.obj \
199 comtypes.obj \
200 expat_document.obj \
201 expat_resultset.obj \
202 filter.obj \
203 lucenequeryfilter.obj \
204 lucenesearch.obj \
[15592]205 lucenesource.obj \
[15519]206 maptools.obj \
[21324]207 $(MG_OBJECTS) \
208 $(MGPP_OBJECTS) \
[15519]209 phrasesearch.obj \
210 querycache.obj \
211 queryfilter.obj \
212 queryinfo.obj \
213 search.obj \
[15774]214 source.obj \
[22062]215 sqlbrowsefilter.obj \
216 sqlfilter.obj \
217 sqlqueryfilter.obj
[743]218
[15523]219LIBRARY = gsdlcolservr.lib
[743]220
[15523]221
[15580]222# Default target: make gsdlcolservr.lib
223all: $(LIBRARY)
224
[15519]225gsdlcolservr.lib: $(OBJECTS)
[15580]226 if EXIST $(LIBRARY) del $(LIBRARY)
227 $(AR) -nologo /out:$(LIBRARY) $(OBJECTS)
[2338]228
[15580]229install:
[15523]230
[743]231clean:
232 del *.obj
[15580]233 del $(LIBRARY)
Note: See TracBrowser for help on using the repository browser.