########################################################################### # # win32 makefile -- common code between gsdl runtime and buildtime # 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 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. # ########################################################################### !IF "$(GSDLHOME)"=="" GSDLHOME = $(MAKEDIR) !ELSE GSDLHOME = $(GSDLHOME) !ENDIF COMMONHOME = $(MAKEDIR) GSDL_VC4 = 0 DEBUG = 0 DLL = 0 DLLDEBUG = 0 USE_SQLITE = 1 USE_MSSQL = 0 # by default, all indexers are enabled ENABLE_MG = 1 ENABLE_MGPP = 1 ENABLE_LUCENE = 1 # jni is disabled by default as this is the default for GS2. GS3 will set this explicitly ENABLE_JNI = 0 MDEFINES = /f win32.mak INDEXERSDIR = indexers COMPILEDIRS = packages\windows\crypt\crypt packages\gdbm\gdbm-1.8.3 \ packages\windows\expat\expat packages\search4j src\lib INSTALLDIRS = src\gdbmedit\db2txt src\gdbmedit\txt2db \ src\gdbmedit\gdbmset src\gdbmedit\gdbmget \ src\gdbmedit\gdbmkeys src\gdbmedit\gdbmdel # src\getpw PACKAGEDIRS = SQLITE_DIR = packages\sqlite\sqlite-amalgamation-3.6.23.1 MAKECMD = $(MAKE) $(MDEFINES) GSDLHOME="$(GSDLHOME)" BINDIR="$(GSDLHOME)\bin\windows" !IF $(GSDL_VC4) MAKECMD = $(MAKECMD) GSDL_VC4=1 !ENDIF !IF $(DEBUG) MAKECMD = $(MAKECMD) DEBUG=1 !ENDIF !IF $(DLL) MAKECMD = $(MAKECMD) DLL=1 !ENDIF !IF $(DLLDEBUG) MAKECMD = $(MAKECMD) DLLDEBUG=1 !ENDIF !IF $(USE_SQLITE) PACKAGEDIRS = $(PACKAGEDIRS) $(SQLITE_DIR) !ELSE MAKECMD = $(MAKECMD) USE_SQLITE=0 !ENDIF !IF $(USE_MSSQL) MAKECMD = $(MAKECMD) USE_MSSQL=1 !ENDIF MAKECLEANCMD = $(MAKE) $(MDEFINES) GSDLHOME="$(GSDLHOME)" clean all: win32.mak unzip $(INDEXERSDIR) $(PACKAGEDIRS) $(COMPILEDIRS) $(INSTALLDIRS) install: win32.mak $(INDEXERSDIR) $(INSTALLDIRS) unzip: cd "$(COMMONHOME)" cd packages\windows\crypt if NOT EXIST "crypt" unzip crypt.zip cd "$(COMMONHOME)" cd packages\windows\expat if NOT EXIST "expat" unzip expat.zip cd "$(COMMONHOME)" cd indexers\packages\windows\iconv if NOT EXIST "iconv" unzip iconv.zip cd "$(COMMONHOME)" !IF "$(USE_SQLITE)" == "1" IF NOT EXIST $(SQLITE_DIR) IF EXIST "$(GSDLHOME)\bin\windows\gunzip.exe" IF EXIST "$(GSDLHOME)\bin\windows\tar.exe" "$(GSDLHOME)\bin\windows\gunzip.exe" -cd "$(SQLITE_DIR).tar.gz" | "$(GSDLHOME)\bin\windows\tar.exe" xv --directory=./packages/sqlite @IF NOT EXIST $(SQLITE_DIR) echo ****** Couldn't extract archive $(SQLITE_DIR).tar.gz. Extract it manually, or check that gunzip.exe and tar.exe exist in GSDLHOME\bin\windows. ****** @IF NOT EXIST $(SQLITE_DIR) exit /b 1 !ENDIF clean: cd "$(COMMONHOME)" cd packages\windows\crypt\crypt $(MAKECLEANCMD) cd "$(COMMONHOME)" cd packages\gdbm\gdbm-1.8.3 $(MAKECLEANCMD) cd "$(COMMONHOME)" cd packages\windows\expat\expat $(MAKECLEANCMD) cd "$(COMMONHOME)" cd src\lib $(MAKECLEANCMD) cd "$(COMMONHOME)" cd src\gdbmedit\txt2db $(MAKECLEANCMD) cd "$(COMMONHOME)" cd src\gdbmedit\db2txt $(MAKECLEANCMD) cd "$(COMMONHOME)" cd src\gdbmedit\gdbmget $(MAKECLEANCMD) cd "$(COMMONHOME)" cd src\gdbmedit\gdbmset $(MAKECLEANCMD) cd "$(COMMONHOME)" cd src\gdbmedit\gdbmkeys $(MAKECLEANCMD) cd "$(COMMONHOME)" cd src\gdbmedit\gdbmdel $(MAKECLEANCMD) # cd "$(COMMONHOME)" # cd src\getpw # $(MAKECLEANCMD) cd "$(COMMONHOME)" cd indexers set DEBUG=$(DEBUG) set ENABLE_MG=$(ENABLE_MG) set ENABLE_MGPP=$(ENABLE_MGPP) set ENABLE_LUCENE=$(ENABLE_LUCENE) call winMake.bat clean set DEBUG= set ENABLE_MG= set ENABLE_MGPP= set ENABLE_LUCENE= cd "$(COMMONHOME)" cd packages\search4j $(MAKECLEANCMD) !IF EXIST ("$(SQLITE_DIR)") cd "$(COMMONHOME)" cd "$(SQLITE_DIR)" $(MAKECLEANCMD) if exist "$(COMMONHOME)\packages\sqlite\lib\sqlite3.lib" del "$(COMMONHOME)\packages\sqlite\lib\sqlite3.lib" !ENDIF cd "$(COMMONHOME)" $(COMPILEDIRS): FORCE cd "$(COMMONHOME)" cd "$@" $(MAKECMD) cd "$(GSDLHOME)" $(INSTALLDIRS): FORCE cd "$(COMMONHOME)" cd "$@" $(MAKECMD) $(MAKECMD) install cd "$(COMMONHOME)" $(SQLITE_DIR): FORCE !IF "$(USE_SQLITE)" == "1" cd "$(COMMONHOME)" cd "$@" $(MAKECMD) $(MAKECMD) install !ENDIF cd "$(COMMONHOME)" $(INDEXERSDIR): FORCE cd "$(COMMONHOME)" cd "$@" set DEBUG=$(DEBUG) set ENABLE_MG=$(ENABLE_MG) set ENABLE_MGPP=$(ENABLE_MGPP) set ENABLE_LUCENE=$(ENABLE_LUCENE) !IF $(ENABLE_JNI) call winMake.bat all with-jni call winMake.bat install with-jni !ELSE call winMake.bat all without-jni call winMake.bat install without-jni !ENDIF set DEBUG= set ENABLE_MG= set ENABLE_MGPP= set ENABLE_LUCENE= if NOT EXIST "$(GSDLHOME)\bin\windows" mkdir "$(GSDLHOME)\bin\windows" if NOT EXIST "$(GSDLHOME)\bin\java" mkdir "$(GSDLHOME)\bin\java" for %%i in (bin\*.exe) do \ if exist %%i copy %%i "$(GSDLHOME)\bin\windows" if EXIST "lucene-gs\LuceneWrapper.jar" copy "lucene-gs\LuceneWrapper.jar" "$(GSDLHOME)\bin\java" @if NOT EXIST "lucene-gs\LuceneWrapper.jar" echo Warning: Failed to find lucene-gs\LuceneWrapper.jar. Greenstone will not be able to use Lucene for indexing cd "$(GSDLHOME)" FORCE: