########################################################################### # # win32 makefile -- src/recpt # A component of the Greenstone digital library software # from the New Zealand Digital Library Project at the # University of Waikato, New Zealand. # # Copyright (C) 1999-2008 The New Zealand Digital Library Project # # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # ########################################################################### GSDL_DIR = ..\..\.. COMMON_DIR = $(GSDL_DIR)\common-src RUNTIME_DIR = $(GSDL_DIR)\runtime-src INDEXERS_DIR = $(COMMON_DIR)\indexers COMMON_PACKAGES_DIR = $(COMMON_DIR)\packages PACKAGES_DIR = $(RUNTIME_DIR)\packages COLSERVR_DIR = $(RUNTIME_DIR)\src\colservr PROTOCOL_DIR = $(RUNTIME_DIR)\src\protocol Z3950_DIR = $(RUNTIME_DIR)\src\z3950 GSDL_VC4 = 0 LOCAL_LIBRARY = 0 USE_Z3950 = 0 DEBUG = 0 DLL = 0 DLLDEBUG = 0 ENABLE_ACCENTFOLD = 1 USE_SQLITE = 1 ENABLE_MG = 1 ENABLE_MGPP = 1 ENABLE_LUCENE = 1 !IF $(DEBUG) CXXFLAGS = -DEBUG -Z7 /errorReport:prompt !ELSE CXXFLAGS = !ENDIF !IF $(GSDL_VC4) CXXFLAGS = $(CXXFLAGS) -GX !ELSE CXXFLAGS = $(CXXFLAGS) -EHsc !ENDIF !IF $(DLL) CXXFLAGS = $(CXXFLAGS) -MD !ELSE !IF ($(DLLDEBUG)) CXXFLAGS = $(CXXFLAGS) -MDd !ENDIF !ENDIF !IF $(ENABLE_ACCENTFOLD) ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\windows\iconv\iconv\lib\iconv.lib" !ELSE ACCENTFOLD_LIBS = !ENDIF !IF "$(USE_SQLITE)" == "0" SQLITE_LIBS = !ELSE SQLITE_LIBS = "$(COMMON_PACKAGES_DIR)\sqlite\lib\sqlite3.lib" !ENDIF !IF $(USE_Z3950) Z3950_DEFS = -DUSE_Z3950 Z3950_INCLUDES = -I$(Z3950_DIR) Z3950_LIBS = $(Z3950_DIR)\gsdlz3950.lib $(PACKAGES_DIR)\yaz\yaz-2.1.4\lib\yaz.lib !ELSE Z3950_DEFS = Z3950_INCLUDES = Z3950_LIBS = !ENDIF !IF "$(ENABLE_MG)" == "0" MG_DEFS = MG_LIBS = MG_INCLUDES = !ELSE MG_DEFS = -DENABLE_MG MG_LIBS = "$(INDEXERS_DIR)\mg\src\text\libmgtext.lib" \ "$(INDEXERS_DIR)\mg\lib\libmglib.lib" MG_INCLUDES = -I"$(INDEXERS_DIR)\mg" -I"$(INDEXERS_DIR)\mg\lib" !ENDIF !IF "$(ENABLE_MGPP)" == "0" MGPP_DEFS = MGPP_SOURCES = MGPP_OBJECTS = MGPP_LIBS = MGPP_INCLUDES = !ELSE MGPP_DEFS = -DENABLE_MGPP MGPP_SOURCES = phindaction.cpp MGPP_OBJECTS = phindaction.obj MGPP_LIBS = "$(INDEXERS_DIR)\mgpp\text\libmgpptext.lib" \ "$(INDEXERS_DIR)\mgpp\lib\libmgpplib.lib" MGPP_INCLUDES = -I"$(INDEXERS_DIR)\mgpp\text" !ENDIF AR = lib CC = cl DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE \ -DGSDL_NOCACHE $(Z3950_DEFS) $(MG_DEFS) $(MGPP_DEFS) INCLUDES = -I. -I"$(GSDL_DIR)" -I"$(COMMON_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" \ $(MG_INCLUDES) $(MGPP_INCLUDES) \ -I"$(COMMON_PACKAGES_DIR)\windows\crypt\crypt" -I"$(COMMON_PACKAGES_DIR)\windows\expat\expat" \ -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3" -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\windows" \ $(Z3950_INCLUDES) LDFLAGS = LIBS = "$(COMMON_PACKAGES_DIR)\windows\crypt\crypt\crypt.lib" "$(COMMON_PACKAGES_DIR)\windows\expat\expat\libexpat.lib" \ "$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\gdbm.lib" $(ACCENTFOLD_LIBS) $(SQLITE_LIBS) $(Z3950_LIBS) !IF $(GSDL_VC4) DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS INCLUDES = $(INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\stlport\stlport" !ENDIF !IF $(LOCAL_LIBRARY) DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY !ENDIF COMPILE = $(CC) -nologo -c $(CXXFLAGS) $(DEFS) $(INCLUDES) LINK = $(CC) -nologo -Fe"$@" $(LDFLAGS) .SUFFIXES: .SUFFIXES: .cpp .obj .cpp.obj: $(COMPILE) $< SOURCES = \ action.cpp \ argdb.cpp \ authenaction.cpp \ browseaction.cpp \ browseactiontools.cpp \ browserclass.cpp \ browsetoolsclass.cpp \ cgiargs.cpp \ cgiutils.cpp \ cgiwrapper.cpp \ collectoraction.cpp \ configaction.cpp \ converter.cpp \ datelistbrowserclass.cpp \ depositoraction.cpp \ documentaction.cpp \ dynamicclassifieraction.cpp \ extlinkaction.cpp \ formattools.cpp \ gtiaction.cpp \ highlighttext.cpp \ historydb.cpp \ hlistbrowserclass.cpp \ htmlbrowserclass.cpp \ htmlutils.cpp \ invbrowserclass.cpp \ librarymain.cpp \ maincfg.cpp \ pageaction.cpp \ pagedbrowserclass.cpp \ $(MGPP_SOURCES) \ phindbrowserclass.cpp \ pingaction.cpp \ queryaction.cpp \ querytools.cpp \ receptionist.cpp \ statusaction.cpp \ summarise.cpp \ tipaction.cpp \ userdb.cpp \ usersaction.cpp \ vlistbrowserclass.cpp \ wizardaction.cpp OBJECTS = \ action.obj \ argdb.obj \ authenaction.obj \ browseaction.obj \ browseactiontools.obj \ browserclass.obj \ browsetoolsclass.obj \ cgiargs.obj \ cgiutils.obj \ cgiwrapper.obj \ collectoraction.obj \ configaction.obj \ converter.obj \ datelistbrowserclass.obj \ depositoraction.obj \ documentaction.obj \ dynamicclassifieraction.obj \ extlinkaction.obj \ formattools.obj \ gtiaction.obj \ highlighttext.obj \ historydb.obj \ hlistbrowserclass.obj \ htmlbrowserclass.obj \ htmlutils.obj \ invbrowserclass.obj \ librarymain.obj \ maincfg.obj \ pageaction.obj \ pagedbrowserclass.obj \ $(MGPP_OBJECTS) \ phindbrowserclass.obj \ pingaction.obj \ queryaction.obj \ querytools.obj \ receptionist.obj \ statusaction.obj \ summarise.obj \ tipaction.obj \ userdb.obj \ usersaction.obj \ vlistbrowserclass.obj \ wizardaction.obj LIBRARY = gsdlrecpt.lib GSDL_LIBS = \ "$(PROTOCOL_DIR)\gsdlprotocol.lib" \ "$(COLSERVR_DIR)\gsdlcolservr.lib" \ $(MG_LIBS) \ $(MGPP_LIBS) \ "$(COMMON_DIR)\src\lib\gsdllib.lib" EXECUTABLE_OBJECTS = \ $(OBJECTS) \ $(GSDL_LIBS) EXECUTABLE = library.cgi # Default target: make gsdlrecpt.lib if LOCAL_LIBRARY is set, otherwise both gsdlrecpt.lib and library.exe !IF $(LOCAL_LIBRARY) all: $(LIBRARY) !ELSE all: $(LIBRARY) $(EXECUTABLE) !ENDIF gsdlrecpt.lib: $(OBJECTS) if EXIST $(LIBRARY) del $(LIBRARY) $(AR) -nologo /out:$(LIBRARY) $(OBJECTS) library.cgi: $(EXECUTABLE_OBJECTS) $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS) !IF $(LOCAL_LIBRARY) install: !ELSE install: $(EXECUTABLE) copy $(EXECUTABLE) "$(GSDL_DIR)\cgi-bin" !ENDIF clean: del *.obj del $(LIBRARY) del $(EXECUTABLE) # Always recompile configaction and statusaction in case GSDL_LOCAL_LIBRARY has changed statusaction.obj: FORCE configaction.obj: FORCE FORCE: