[8239] | 1 | ###########################################################################
|
---|
| 2 | #
|
---|
[15531] | 3 | # win32 makefile -- src/oaiserver
|
---|
[8239] | 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 | #
|
---|
[15531] | 8 | # Copyright (C) 1999-2008 The New Zealand Digital Library Project
|
---|
[8239] | 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] | 27 | GSDL_DIR = ..\..\..
|
---|
| 28 | COMMON_DIR = $(GSDL_DIR)\common-src
|
---|
| 29 | RUNTIME_DIR = $(GSDL_DIR)\runtime-src
|
---|
[15531] | 30 |
|
---|
[16574] | 31 | INDEXERS_DIR = $(COMMON_DIR)\indexers
|
---|
[18048] | 32 | COMMON_PACKAGES_DIR = $(COMMON_DIR)\packages
|
---|
[16574] | 33 | PACKAGES_DIR = $(RUNTIME_DIR)\packages
|
---|
| 34 | COLSERVR_DIR = $(RUNTIME_DIR)\src\colservr
|
---|
| 35 | PROTOCOL_DIR = $(RUNTIME_DIR)\src\protocol
|
---|
| 36 | RECPT_DIR = $(RUNTIME_DIR)\src\recpt
|
---|
[15531] | 37 |
|
---|
[16574] | 38 |
|
---|
[11256] | 39 | GSDL_VC4 = 0
|
---|
[19521] | 40 | DEBUG = 0
|
---|
[15531] | 41 | LOCAL_LIBRARY = 0
|
---|
[8239] | 42 | DLL = 0
|
---|
| 43 | DLLDEBUG = 0
|
---|
[12990] | 44 | ENABLE_ACCENTFOLD = 1
|
---|
[22090] | 45 | USE_GDBM = 1
|
---|
| 46 | USE_JDBM = 1
|
---|
[18076] | 47 | USE_SQLITE = 1
|
---|
[22090] | 48 | USE_MSSQL = 0
|
---|
[21324] | 49 | ENABLE_MG = 1
|
---|
| 50 | ENABLE_MGPP = 1
|
---|
| 51 | ENABLE_LUCENE = 1
|
---|
[8239] | 52 |
|
---|
[19521] | 53 | !IF $(DEBUG)
|
---|
| 54 | CXXFLAGS = -DEBUG -Z7 /errorReport:prompt
|
---|
| 55 | !ELSE
|
---|
| 56 | CXXFLAGS =
|
---|
| 57 | !ENDIF
|
---|
[8239] | 58 |
|
---|
[11256] | 59 | !IF $(GSDL_VC4)
|
---|
[19521] | 60 | CXXFLAGS = $(CXXFLAGS) -GX
|
---|
[11256] | 61 | !ELSE
|
---|
[19521] | 62 | CXXFLAGS = $(CXXFLAGS) -EHsc
|
---|
[11256] | 63 | !ENDIF
|
---|
| 64 |
|
---|
[8239] | 65 | !IF $(DLL)
|
---|
[19521] | 66 | CXXFLAGS = $(CXXFLAGS) -MD
|
---|
[8239] | 67 | !ELSE
|
---|
| 68 | !IF ($(DLLDEBUG))
|
---|
[19521] | 69 | CXXFLAGS = $(CXXFLAGS) -MDd
|
---|
[8239] | 70 | !ENDIF
|
---|
| 71 | !ENDIF
|
---|
| 72 |
|
---|
[15531] | 73 | !IF $(ENABLE_ACCENTFOLD)
|
---|
[16908] | 74 | ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\windows\iconv\iconv\lib\iconv.lib"
|
---|
[15531] | 75 | !ELSE
|
---|
| 76 | ACCENTFOLD_LIBS =
|
---|
| 77 | !ENDIF
|
---|
| 78 |
|
---|
[22090] | 79 | !IF $(USE_GDBM)
|
---|
| 80 | GDBM_INCLUDES = -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3" \
|
---|
| 81 | -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\windows"
|
---|
| 82 | GDBM_LIBS = "$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\gdbm.lib"
|
---|
| 83 | GDBM_DEFINES = -DUSE_GDBM
|
---|
| 84 | !ELSE
|
---|
| 85 | GDBM_INCLUDES =
|
---|
| 86 | GDBM_LIBS =
|
---|
| 87 | GDBM_DEFINES =
|
---|
| 88 | !ENDIF
|
---|
| 89 |
|
---|
| 90 | !IF $(USE_JDBM)
|
---|
| 91 | JDBM_DEFINES = -DUSE_JDBM
|
---|
| 92 | !ELSE
|
---|
| 93 | JDBM_DEFINES =
|
---|
| 94 | !ENDIF
|
---|
| 95 |
|
---|
[21435] | 96 | !IF $(USE_SQLITE)
|
---|
| 97 | SQLITE_LIBS = "$(COMMON_PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
|
---|
[22090] | 98 | SQLITE_DEFINES = -DUSE_SQLITE
|
---|
[21435] | 99 | !ELSE
|
---|
[21324] | 100 | SQLITE_LIBS =
|
---|
[22090] | 101 | SQLITE_DEFINES =
|
---|
[21324] | 102 | !ENDIF
|
---|
| 103 |
|
---|
[22090] | 104 | !IF $(USE_MSSQL)
|
---|
| 105 | MSSQL_DEFINES = -DUSE_MSSQL
|
---|
| 106 | !ELSE
|
---|
| 107 | MSSQL_DEFINES =
|
---|
| 108 | !ENDIF
|
---|
| 109 |
|
---|
[21435] | 110 | !IF $(ENABLE_MG)
|
---|
[21945] | 111 | MG_DEFS = -DENABLE_MG
|
---|
[21324] | 112 | MG_LIBS = "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \
|
---|
| 113 | "$(INDEXERS_DIR)\mg\lib\libmglib.lib"
|
---|
[21435] | 114 | !ELSE
|
---|
[21945] | 115 | MG_DEFS =
|
---|
[21435] | 116 | MG_LIBS =
|
---|
[15788] | 117 | !ENDIF
|
---|
[15531] | 118 |
|
---|
[21435] | 119 | !IF $(ENABLE_MGPP)
|
---|
[21945] | 120 | MGPP_DEFS = -DENABLE_MGPP
|
---|
[21324] | 121 | MGPP_LIBS = "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \
|
---|
| 122 | "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib"
|
---|
| 123 | MGPP_INCLUDES = -I"$(INDEXERS_DIR)\mgpp\text"
|
---|
[21435] | 124 | !ELSE
|
---|
[21945] | 125 | MGPP_DEFS =
|
---|
[21435] | 126 | MGPP_LIBS =
|
---|
| 127 | MGPP_INCLUDES =
|
---|
[21324] | 128 | !ENDIF
|
---|
[15788] | 129 |
|
---|
[21945] | 130 | !IF $(ENABLE_LUCENE)
|
---|
| 131 | LUCENE_DEFS = -DENABLE_LUCENE
|
---|
| 132 | !ELSE
|
---|
| 133 | LUCENE_DEFS=
|
---|
| 134 | !ENDIF
|
---|
[21324] | 135 |
|
---|
[21945] | 136 |
|
---|
[15531] | 137 | AR = lib
|
---|
| 138 | CC = cl
|
---|
[15788] | 139 | DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE \
|
---|
[22090] | 140 | -DGSDL_NOCACHE $(GDBM_DEFINES) $(JDBM_DEFINES) $(SQLITE_DEFINES) $(MSSQL_DEFINES) \
|
---|
| 141 | $(MG_DEFS) $(MGPP_DEFS) $(LUCENE_DEFS)
|
---|
[16574] | 142 | INCLUDES = -I"$(COMMON_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" -I"$(RECPT_DIR)" \
|
---|
[21324] | 143 | $(MGPP_INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\crypt\crypt" \
|
---|
[22090] | 144 | $(GDBM_INCLUDES) \
|
---|
[18077] | 145 | -I"$(COMMON_PACKAGES_DIR)\windows\expat\expat"
|
---|
[15531] | 146 | LDFLAGS =
|
---|
[18048] | 147 | LIBS = "$(COMMON_PACKAGES_DIR)\windows\crypt\crypt\crypt.lib" "$(COMMON_PACKAGES_DIR)\windows\expat\expat\libexpat.lib" \
|
---|
[22090] | 148 | $(GDBM_LIBS) $(ACCENTFOLD_LIBS) $(SQLITE_LIBS)
|
---|
[15531] | 149 |
|
---|
[11257] | 150 | !IF $(GSDL_VC4)
|
---|
[8239] | 151 | DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
|
---|
[18048] | 152 | INCLUDES = $(INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\stlport\stlport"
|
---|
[8239] | 153 | !ENDIF
|
---|
[15531] | 154 | !IF $(LOCAL_LIBRARY)
|
---|
| 155 | DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY
|
---|
[12990] | 156 | !ENDIF
|
---|
| 157 |
|
---|
[8239] | 158 |
|
---|
[19521] | 159 | COMPILE = $(CC) -nologo -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
|
---|
[15531] | 160 | LINK = $(CC) -nologo -Fe"$@"
|
---|
[8239] | 161 |
|
---|
[15531] | 162 |
|
---|
[8239] | 163 | .SUFFIXES:
|
---|
| 164 | .SUFFIXES: .cpp .obj
|
---|
| 165 | .cpp.obj:
|
---|
| 166 | $(COMPILE) $<
|
---|
| 167 |
|
---|
| 168 |
|
---|
[15531] | 169 | RECPT_OBJECTS = \
|
---|
[15539] | 170 | "$(RECPT_DIR)\cgiargs.obj" \
|
---|
| 171 | "$(RECPT_DIR)\cgiutils.obj" \
|
---|
[15574] | 172 | "$(RECPT_DIR)\htmlutils.obj"
|
---|
[8239] | 173 |
|
---|
[15531] | 174 | SOURCES = \
|
---|
| 175 | abstractlistaction.cpp \
|
---|
| 176 | dublincore.cpp \
|
---|
[18864] | 177 | qualified_dublincore.cpp \
|
---|
[15844] | 178 | identifyaction.cpp \
|
---|
[15531] | 179 | listidsaction.cpp \
|
---|
| 180 | listrecsaction.cpp \
|
---|
| 181 | listsetsaction.cpp \
|
---|
| 182 | metaformat.cpp \
|
---|
| 183 | metaformatsaction.cpp \
|
---|
| 184 | oaiaction.cpp \
|
---|
| 185 | oaiargs.cpp \
|
---|
| 186 | oaiconfig.cpp \
|
---|
| 187 | oaidispatcher.cpp \
|
---|
| 188 | oaimain.cpp \
|
---|
| 189 | oaitools.cpp \
|
---|
| 190 | recordaction.cpp \
|
---|
| 191 | resumptiontoken.cpp \
|
---|
| 192 | rfc1807.cpp
|
---|
[8239] | 193 |
|
---|
[15531] | 194 | OBJECTS = \
|
---|
| 195 | abstractlistaction.obj \
|
---|
| 196 | dublincore.obj \
|
---|
[18864] | 197 | qualified_dublincore.obj \
|
---|
[15844] | 198 | identifyaction.obj \
|
---|
[15531] | 199 | listidsaction.obj \
|
---|
| 200 | listrecsaction.obj \
|
---|
| 201 | listsetsaction.obj \
|
---|
| 202 | metaformat.obj \
|
---|
| 203 | metaformatsaction.obj \
|
---|
| 204 | oaiaction.obj \
|
---|
| 205 | oaiargs.obj \
|
---|
| 206 | oaiconfig.obj \
|
---|
| 207 | oaidispatcher.obj \
|
---|
| 208 | oaimain.obj \
|
---|
| 209 | oaitools.obj \
|
---|
| 210 | recordaction.obj \
|
---|
| 211 | resumptiontoken.obj \
|
---|
| 212 | rfc1807.obj
|
---|
[8239] | 213 |
|
---|
[15531] | 214 | GSDL_LIBS = \
|
---|
[15539] | 215 | "$(PROTOCOL_DIR)\gsdlprotocol.lib" \
|
---|
| 216 | "$(COLSERVR_DIR)\gsdlcolservr.lib" \
|
---|
[21324] | 217 | $(MG_LIBS) \
|
---|
| 218 | $(MGPP_LIBS) \
|
---|
[16574] | 219 | "$(COMMON_DIR)\src\lib\gsdllib.lib"
|
---|
[8239] | 220 |
|
---|
[15531] | 221 | EXECUTABLE_OBJECTS = \
|
---|
| 222 | $(OBJECTS) \
|
---|
| 223 | $(RECPT_OBJECTS) \
|
---|
| 224 | $(GSDL_LIBS)
|
---|
[8239] | 225 |
|
---|
[18613] | 226 | EXECUTABLE = oaiserver.cgi
|
---|
[8239] | 227 |
|
---|
| 228 |
|
---|
[21931] | 229 | # Default target: compile up .obj files only if LOCAL_LIBRARY is set, otherwise both obj files and oaiserver.cgi
|
---|
| 230 | !IF $(LOCAL_LIBRARY)
|
---|
| 231 | all: $(EXECUTABLE_OBJECTS)
|
---|
| 232 | !ELSE
|
---|
[15580] | 233 | all: $(EXECUTABLE)
|
---|
[21931] | 234 | !ENDIF
|
---|
[15580] | 235 |
|
---|
[18613] | 236 | oaiserver.cgi: $(EXECUTABLE_OBJECTS)
|
---|
[15531] | 237 | $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS)
|
---|
[8239] | 238 |
|
---|
[21931] | 239 | !IF $(LOCAL_LIBRARY)
|
---|
| 240 | install:
|
---|
| 241 | !ELSE
|
---|
[15531] | 242 | install: $(EXECUTABLE)
|
---|
[15580] | 243 | copy $(EXECUTABLE) "$(GSDL_DIR)\cgi-bin"
|
---|
[21931] | 244 | !ENDIF
|
---|
[8239] | 245 |
|
---|
| 246 | clean:
|
---|
| 247 | del *.obj
|
---|
[15580] | 248 | del $(EXECUTABLE)
|
---|