source: main/trunk/greenstone2/runtime-src/src/oaiservr/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: 4.9 KB
Line 
1###########################################################################
2#
3# win32 makefile -- src/oaiserver
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-2008 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
41LOCAL_LIBRARY = 0
42DLL = 0
43DLLDEBUG = 0
44ENABLE_ACCENTFOLD = 1
45USE_SQLITE = 1
46ENABLE_MG = 1
47ENABLE_MGPP = 1
48ENABLE_LUCENE = 1
49
50!IF $(DEBUG)
51CXXFLAGS = -DEBUG -Z7 /errorReport:prompt
52!ELSE
53CXXFLAGS =
54!ENDIF
55
56!IF $(GSDL_VC4)
57CXXFLAGS = $(CXXFLAGS) -GX
58!ELSE
59CXXFLAGS = $(CXXFLAGS) -EHsc
60!ENDIF
61
62!IF $(DLL)
63CXXFLAGS = $(CXXFLAGS) -MD
64!ELSE
65!IF ($(DLLDEBUG))
66CXXFLAGS = $(CXXFLAGS) -MDd
67!ENDIF
68!ENDIF
69
70!IF $(ENABLE_ACCENTFOLD)
71ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\windows\iconv\iconv\lib\iconv.lib"
72!ELSE
73ACCENTFOLD_LIBS =
74!ENDIF
75
76!IF "$(USE_SQLITE)" == "0"
77SQLITE_LIBS =
78!ELSE
79SQLITE_LIBS = "$(COMMON_PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
80!ENDIF
81
82!IF "$(ENABLE_MG)" == "0"
83MG_LIBS =
84!ELSE
85MG_LIBS = "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
86 "$(INDEXERS_DIR)\mg\lib\libmglib.lib"
87!ENDIF
88
89!IF "$(ENABLE_MGPP)" == "0"
90MGPP_LIBS =
91MGPP_INCLUDES =
92!ELSE
93MGPP_LIBS = "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
94 "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib"
95MGPP_INCLUDES = -I"$(INDEXERS_DIR)\mgpp\text"
96!ENDIF
97
98
99
100AR = lib
101CC = cl
102DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE \
103 -DGSDL_NOCACHE
104INCLUDES = -I"$(COMMON_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" -I"$(RECPT_DIR)" \
105 $(MGPP_INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\crypt\crypt" \
106 -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3" -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\windows" \
107 -I"$(COMMON_PACKAGES_DIR)\windows\expat\expat"
108LDFLAGS =
109LIBS = "$(COMMON_PACKAGES_DIR)\windows\crypt\crypt\crypt.lib" "$(COMMON_PACKAGES_DIR)\windows\expat\expat\libexpat.lib" \
110 "$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\gdbm.lib" $(ACCENTFOLD_LIBS) $(SQLITE_LIBS)
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!IF $(LOCAL_LIBRARY)
117DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY
118!ENDIF
119
120
121COMPILE = $(CC) -nologo -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
122LINK = $(CC) -nologo -Fe"$@"
123
124
125.SUFFIXES:
126.SUFFIXES: .cpp .obj
127.cpp.obj:
128 $(COMPILE) $<
129
130
131RECPT_OBJECTS = \
132 "$(RECPT_DIR)\cgiargs.obj" \
133 "$(RECPT_DIR)\cgiutils.obj" \
134 "$(RECPT_DIR)\htmlutils.obj"
135
136SOURCES = \
137 abstractlistaction.cpp \
138 dublincore.cpp \
139 qualified_dublincore.cpp \
140 identifyaction.cpp \
141 listidsaction.cpp \
142 listrecsaction.cpp \
143 listsetsaction.cpp \
144 metaformat.cpp \
145 metaformatsaction.cpp \
146 oaiaction.cpp \
147 oaiargs.cpp \
148 oaiconfig.cpp \
149 oaidispatcher.cpp \
150 oaimain.cpp \
151 oaitools.cpp \
152 recordaction.cpp \
153 resumptiontoken.cpp \
154 rfc1807.cpp
155
156OBJECTS = \
157 abstractlistaction.obj \
158 dublincore.obj \
159 qualified_dublincore.obj \
160 identifyaction.obj \
161 listidsaction.obj \
162 listrecsaction.obj \
163 listsetsaction.obj \
164 metaformat.obj \
165 metaformatsaction.obj \
166 oaiaction.obj \
167 oaiargs.obj \
168 oaiconfig.obj \
169 oaidispatcher.obj \
170 oaimain.obj \
171 oaitools.obj \
172 recordaction.obj \
173 resumptiontoken.obj \
174 rfc1807.obj
175
176GSDL_LIBS = \
177 "$(PROTOCOL_DIR)\gsdlprotocol.lib" \
178 "$(COLSERVR_DIR)\gsdlcolservr.lib" \
179 $(MG_LIBS) \
180 $(MGPP_LIBS) \
181 "$(COMMON_DIR)\src\lib\gsdllib.lib"
182
183EXECUTABLE_OBJECTS = \
184 $(OBJECTS) \
185 $(RECPT_OBJECTS) \
186 $(GSDL_LIBS)
187
188EXECUTABLE = oaiserver.cgi
189
190
191# Default target: make the oaiserver executable
192all: $(EXECUTABLE)
193
194oaiserver.cgi: $(EXECUTABLE_OBJECTS)
195 $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS)
196
197install: $(EXECUTABLE)
198 copy $(EXECUTABLE) "$(GSDL_DIR)\cgi-bin"
199
200clean:
201 del *.obj
202 del $(EXECUTABLE)
Note: See TracBrowser for help on using the repository browser.