@echo off set GLILANG=en :: -------- Run the Greenstone Librarian Interface -------- :: This script must be run from within the directory in which it lives if exist gli.bat goto start if "%GLILANG%" == "en" echo This script must be run from the directory in which it resides. if "%GLILANG%" == "es" echo Este gui¢n deber  ejecutarse desde el directorio en el que reside. if "%GLILANG%" == "fr" echo Ce script doit ˆtre ex‚cut‚ … partir du r‚pertoire dans lequel il se trouve. if "%GLILANG%" == "ru" echo â®â áªà¨¯â ¤®«¦¥­ ¡ëâì ¢§ïâ ¨§ ¤¨à¥ªâ®à¨¨, ¢ ª®â®à®© ®­ à á¯®«®¦¥­ goto exit :start if "%OS%" == "Windows_NT" goto progName :: Invoke a new command processor to ensure there's enough environment space if "%1" == "Second" goto progName command /E:2048 /C %0 Second %1 %2 %3 %4 %5 %6 %7 %8 %9 goto done :progName if not "%PROGNAME%" == "" goto findGSDL :: otherwise PROGNAME was not set, so default to the Greenstone Librarian Interface (GLI) program if "%GLILANG%" == "es" set PROGNAME=Biblioteca Digital Greenstone if "%GLILANG%" == "fr" set PROGNAME=Bibliothécaire Greenstone if "%GLILANG%" == "ru" set PROGNAME=ÉÎÔÅÒÆÅÊÓ Greenstone :: if the PROGNAME is still not set, then set the language to English if "%PROGNAME%" == "" set PROGNAME=Greenstone Librarian Interface if "%PROGABBR%" == "" set PROGABBR=GLI if "%PROGNAME_EN%" == "" set PROGNAME_EN=Greenstone Librarian Interface :findGSDL echo. if "%GLILANG%" == "en" echo %PROGNAME% (%PROGABBR%) if "%GLILANG%" == "en" echo Copyright (C) 2006, New Zealand Digital Library Project, University Of Waikato if "%GLILANG%" == "en" echo %PROGABBR% comes with ABSOLUTELY NO WARRANTY; for details see LICENSE.txt if "%GLILANG%" == "en" echo This is free software, and you are welcome to redistribute it if "%GLILANG%" == "es" echo Interfaz de la %PROGNAME% (%PROGNAME_EN% - %PROGABBR%) if "%GLILANG%" == "es" echo Copyright (C) 2006, New Zealand Digital Library Project, University Of Waikato if "%GLILANG%" == "es" echo La Interfaz de la %PROGNAME% NO INCLUYE ABSOLUTAMENTE NINGUNA GARANTÖA. if "%GLILANG%" == "es" echo Para mayor informaci¢n vea los t‚rminos de la licencia en LICENSE.txt if "%GLILANG%" == "es" echo Este es un software abierto, por lo que lo invitamos a que lo distribuya de forma gratuita if "%GLILANG%" == "fr" echo Interface du %PROGNAME% (%PROGNAME_EN% - %PROGABBR%) if "%GLILANG%" == "fr" echo Copyright (C) 2006, New Zealand Digital Library Project, University Of Waikato if "%GLILANG%" == "fr" echo %PROGABBR% est fourni sans AUCUNE GARANTIE; pour des d‚tails, voir LICENSE.txt if "%GLILANG%" == "fr" echo Ceci est un logiciel libre, et vous ˆtes invit‚ … le redistribuer if "%GLILANG%" == "ru" echo ¨¡«¨®â¥ç­ë© ¨­â¥à䥩á %PROGNAME% (%PROGNAME_EN% - %PROGABBR%) if "%GLILANG%" == "ru" echo Copyright (C) 2006, New Zealand Digital Library Project, University Of Waikato if "%GLILANG%" == "ru" echo ˆƒ ­¥ ¤ ¥â €‘Ž‹ž’Ž ˆŠ€Šˆ• ƒ€€’ˆ‰; ¤¥â «¨ á¬. ¢ ⥪á⥠LICENSE.TXT if "%GLILANG%" == "ru" echo â® - ᢮¡®¤­® à á¯à®áâ࠭塞®¥ ¯à®£à ¬¬­®¥ ®¡¥á¯¥ç¥­¨¥ ¨ ‚ë ¬®¦¥â¥ à á¯à®áâà ­ïâì ¥£® echo. :: ---- Determine path to Greenstone home for GS2 and GS3 ---- set GSDLPATH= :: Some users may set the above line manually, or it may be set as an argument set _VERSION= if not "%GSDLPATH%" == "" goto getVer :: Otherwise gsdlpath is not yet set :: Check the env vars first if not "%GSDL3SRCHOME%" == "" goto ver3 if not "%GSDLHOME%" == "" goto ver2 :: If not set, the default location for the GLI is a subdirectory of Greenstone set GSDLPATH=.. goto getVer :getVer call gsdlver.bat %GSDLPATH% %_VERSION% SetEnv > nul if "%_VERSION%" == "1" goto exit ::if we are running GS2, free up any pre-set GS3 environment variables since we won't need them if "%_VERSION%" == "2" set GSDL3SRCHOME= if "%_VERSION%" == "2" set GSDL3HOME= goto testGSDL :ver3 set _VERSION=3 set GSDLPATH=%GSDL3SRCHOME% :: if GS2 is now also set, then both GS3 and GS2 are set: :: warn the user that we have defaulted to GS3 if not "%GSDLHOME%" == "" echo Both Greenstone 2 and Greenstone 3 environments are set. if not "%GSDLHOME%" == "" echo It is assumed you want to run Greenstone 3. if not "%GSDLHOME%" == "" echo If you want to run Greenstone 2, please unset the if not "%GSDLHOME%" == "" echo environment variable GSDL3SRCHOME before running GLI. if not "%GSDLHOME%" == "" echo. goto testGSDL :ver2 set _VERSION=2 set GSDLPATH=%GSDLHOME% ::free up the GS3 environment variables since we are running GS2 and don't need them set GSDL3SRCHOME= set GSDL3HOME= goto testGSDL :testGSDL set CHECK=1 call chkinst.bat "%GSDLPATH%" %_VERSION% %GLILANG% %CHECK% SetEnv > nul if "%CHECK%" == "1" goto exit :: otherwise installation worked well goto prepGSDL :prepGSDL :: Greenstone 3 case if "%_VERSION%" == "3" goto prepGS3 if not "%_VERSION%" == "2" echo "Greenstone version unknown" if not "%_VERSION%" == "2" goto :exit :: Otherwise, we are dealing with Greenstone 2 :: Setup Greenstone 2, unless it has already been done if not "%GSDLHOME%" == "" goto doneGSDL call "%GSDLPATH%\setup.bat" SetEnv > nul goto doneGSDL :prepGS3 set GSDL2PATH= : Some users may set the above line manually if "%GSDL3SRCHOME%" == "" goto setup3 if "%GSDL3HOME%" == "" goto setup3 ::otherwise goto gs2build :setup3 :: Setup Greenstone 3, unless it has already been done cd | winutil\setvar.exe GLIDIR > %TMP%\setgli.bat call %TMP%\setgli.bat del %TMP%\setgli.bat cd "%GSDLPATH%" call gs3-setup.bat SetEnv > nul cd %GLIDIR% goto gs2build :gs2build :: If Greenstone version 3 is running, we want to set gsdl2path :: Determine GSDLHOME for GS3 if not "%GSDL2PATH%" == "" goto setupGS2 :: GSDL2PATH is not yet set. :: And if GSDLHOME is not set either, then assume :: that the gs2build subdir of GS3 exists if "%GSDLHOME%" == "" set GSDL2PATH=%GSDL3SRCHOME%\gs2build if "%GSDLHOME%" == "" goto setupGS2 :: Otherwise GSDLHOME is set, so set GSDL2PATH to GSDLHOME echo GSDLHOME environment variable is set to %GSDLHOME%. echo Will use this to find build scripts. set GSDL2PATH=%GSDLHOME% :setupGS2 set CHECK=1 call chkinst.bat "%GSDL2PATH%" 2 %GLILANG% %CHECK% SetEnv > nul if "%CHECK%" == "1" goto exit :: otherwise installation worked well :: Setup Greenstone, unless it has already been done if "%GSDLHOME%" == "" call "%GSDL2PATH%\setup.bat" SetEnv > nul :: Either way, we can now dispose of GSDL2PATH set GSDL2PATH= goto doneGSDL :doneGSDL :: GSDLPATH is no longer needed, since GSDLHOME should now be set set GSDLPATH= :findPerl :: ---- Check Perl exists ---- set PERLPATH= :: Some users may set the above line manually - If you do this, you need to :: make sure that perl is in your path otherwise lucene collections may not :: work if not "%PERLPATH%" == "" goto testPerl :: Check if Perl is on the search path echo %PATH%| winutil\which.exe perl.exe | winutil\setvar.exe PERLPATH > %TMP%\setperl.bat call %TMP%\setperl.bat del %TMP%\setperl.bat if not "%PERLPATH%" == "" goto testPerl :: If not, try GSDLHOME\bin\windows\perl\bin if exist "%GSDLHOME%\bin\windows\perl\bin\perl.exe" goto gsdlPerl :: Still haven't found anything, so try looking in the registry (gulp!) type nul > %TMP%\perl.reg regedit /E %TMP%\perl.reg "HKEY_LOCAL_MACHINE\SOFTWARE\Perl" type %TMP%\perl.reg > %TMP%\perl.txt del %TMP%\perl.reg winutil\findperl.exe %TMP%\perl.txt | winutil\setvar.exe PERLPATH > %TMP%\setperl.bat del %TMP%\perl.txt call %TMP%\setperl.bat del %TMP%\setperl.bat :: If nothing was found in the registry, we're stuck if "%PERLPATH%" == "" goto noPerl :: if have found perl in registry, but not in path, then we need to :: add it to path for lucene stuff. if "%OS%" == "Windows_NT" set PATH=%PATH%;%PERLPATH% if "%OS%" == "" set PATH="%PATH%";"%PERLPATH%" goto testPerl :gsdlPerl set PERLPATH=%GSDLHOME%\bin\windows\perl\bin :testPerl echo. :: Check that a Perl executable has been found if "%GLILANG%" == "en" echo Checking Perl: %PERLPATH% if "%GLILANG%" == "es" echo Revisando Perl: %PERLPATH% if "%GLILANG%" == "fr" echo V‚rification de Perl: %PERLPATH% if "%GLILANG%" == "ru" echo ஢¥àª  Perl: %PERLPATH% if exist "%PERLPATH%\perl.exe" goto findJava :noPerl echo. if "%GLILANG%" == "en" echo The Greenstone Librarian Interface requires perl in order to operate, if "%GLILANG%" == "en" echo but perl could not be detected on your system. Please ensure that perl if "%GLILANG%" == "en" echo is installed and is on your search path, then rerun this script. if "%GLILANG%" == "es" echo La Interfaz de la Biblioteca Digital Greenstone requiere Perl para poder if "%GLILANG%" == "es" echo operar, pero ‚ste no aparece en su sistema. Por favor aseg£rese de if "%GLILANG%" == "es" echo que Perl est  instalado y se encuentra en su ruta de b£squeda. if "%GLILANG%" == "es" echo A continuaci¢n ejecute nuevamente este gui¢n. if "%GLILANG%" == "fr" echo Greenstone Librarian Interface n‚cessite perl pour son fonctionnement, if "%GLILANG%" == "fr" echo mais perl n'a pas pu ˆtre d‚tect‚ dans votre systŠme. Veuillez vous if "%GLILANG%" == "fr" echo assurer que perl est install‚ et est sp‚cifi‚ dans votre chemin de if "%GLILANG%" == "fr" echo recherche, puis red‚marrez ce script. if "%GLILANG%" == "ru" echo ¨¡«¨®â¥ç­ë© ¨­â¥à䥩á Greenstone âॡã¥â Perl, çâ®¡ë ¨¬¥âì ¢®§¬®¦­®áâì if "%GLILANG%" == "ru" echo à ¡®â âì, ­® Perl ­¥ ¡ë« ¢ ¢ è¥© á¨á⥬¥. ®¦ «ã©áâ , ¯®¤â¢¥à¤¨â¥, if "%GLILANG%" == "ru" echo çâ® Perl ãáâ ­®¢«¥­ ¨ ­ å®¤¨âáï ­  ¢ è¥¬ ¯ã⨠¯®¨áª , § â¥¬ if "%GLILANG%" == "ru" echo ¯®¢â®à­®¢¢¥¤¨â¥ íâ®â áªà¨¯â. goto exit :findJava :: ---- Check Java exists ---- set JAVAPATH= :: Some users may set the above line manually if not "%JAVAPATH%" == "" goto testJava :: If it is set, use the JAVA_HOME environment variable if not "%JAVA_HOME%" == "" goto javahome :: Check if Java is on the search path echo %PATH%| winutil\which.exe java.exe | winutil\setvar.exe JAVAPATH > %TMP%\setjava.bat call %TMP%\setjava.bat del %TMP%\setjava.bat if not "%JAVAPATH%" == "" goto testJava :: Still haven't found anything, so try looking in the registry (gulp!) type nul > %TMP%\jdk.reg regedit /E %TMP%\jdk.reg "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit" type %TMP%\jdk.reg > %TMP%\jdk.txt del %TMP%\jdk.reg type nul > %TMP%\jre.reg regedit /E %TMP%\jre.reg "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment" type %TMP%\jre.reg > %TMP%\jre.txt del %TMP%\jre.reg winutil\findjava.exe %TMP%\jdk.txt %TMP%\jre.txt | winutil\setvar.exe JAVAPATH > %TMP%\setjava.bat del %TMP%\jdk.txt del %TMP%\jre.txt call %TMP%\setjava.bat del %TMP%\setjava.bat :: If nothing was found in the registry, we're stuck if "%JAVAPATH%" == "" goto noJava set JAVAPATH=%JAVAPATH%\bin goto testJava :javahome set JAVAPATH=%JAVA_HOME%\bin :testJava :: Check that a Java executable has been found if "%GLILANG%" == "en" echo Checking Java: %JAVAPATH% if "%GLILANG%" == "es" echo Revisando Java: %JAVAPATH% if "%GLILANG%" == "fr" echo V‚rification de Java: %JAVAPATH% if "%GLILANG%" == "ru" echo ஢¥àª  Java: %JAVAPATH% if exist "%JAVAPATH%\java.exe" goto checkJV :noJava echo. if "%GLILANG%" == "en" echo Failed to locate an appropriate version of Java. You must install a if "%GLILANG%" == "en" echo Java Runtime Environment (version 1.4 or greater) before running the if "%GLILANG%" == "en" echo Greenstone Librarian Interface. if "%GLILANG%" == "es" echo No se pudo localizar una versi¢n apropiada de Java. Usted deber  if "%GLILANG%" == "es" echo instalar un Ambiente de Ejecuci¢n Java (versi¢n 1.4 o superior) if "%GLILANG%" == "es" echo antes de correr la Interfaz de la Biblioteca Digital Greenstone. if "%GLILANG%" == "fr" echo Une version ad‚quate de Java n'a pas pu ˆtre localis‚e. Vous devez if "%GLILANG%" == "fr" echo installer un Java Runtime Environment (version 1.4 ou sup‚rieur) if "%GLILANG%" == "fr" echo avant de d‚marrer Greenstone Librarian Interface. if "%GLILANG%" == "ru" echo ¥ 㤠«®áì ®¯à¥¤¥«¨âì ¬¥áâ®­ å®¦¤¥­¨¥ ᮮ⢥âáâ¢ãî饩 ¢¥àᨨ Java. if "%GLILANG%" == "ru" echo ‚ë ¤®«¦­ë ãáâ ­®¢¨âì Java Runtime Environment (¢¥àá¨î 1.4 ¨«¨ ¢ëè¥) ¯¥à¥¤ ¢¢®¤®¬ if "%GLILANG%" == "ru" echo ¡¨¡«¨®â¥ç­®£® ¨­â¥àä¥©á  Greenstone. goto exit :: Check the version of Java is new enough (1.4.0 or higher) to run the GLI :checkJV "%JAVAPATH%\java" -classpath . CheckJavaVersion if ERRORLEVEL 2 goto checkGLI :: Otherwise, errorlevel was an error value if "%GLILANG%" == "es" La versión del Ambiente de Ejecución Java (JRE por sus siglas en if "%GLILANG%" == "es" inglés) que usted tiene instalada es demasiado vieja para ejecutar if "%GLILANG%" == "es" la Interfaz de la %PROGNAME%. Por favor instale if "%GLILANG%" == "es" una nueva versión del Ambiente de Ejecución Java (versión 1.4 o if "%GLILANG%" == "es" posterior) y ejecute nuevamente este guión. if "%GLILANG%" == "fr" La version de Java Runtime Environment que vous avez installée est if "%GLILANG%" == "fr" trop vielle pour faire fonctionner %PROGNAME%. if "%GLILANG%" == "fr" Veuillez installer une nouvelle version du JRE (version 1.4 ou plus if "%GLILANG%" == "fr" récente) et redémarrez le script. if "%GLILANG%" == "ru" ÷ÅÒÓÉÑ Java Runtime Environment, ËÏÔÏÒÕÀ ÷Ù ÕÓÔÁÎÏ×ÉÌÉ, ÏÞÅÎØ ÓÔÁÒÁ, if "%GLILANG%" == "ru" ÞÔÏÂÙ ÕÐÒÁ×ÌÑÔØ ÂÉÂÌÉÏÔÅÞÎÙÍ %PROGNAME%. ðÏÖÁÌÕÊÓÔÁ, if "%GLILANG%" == "ru" ÕÓÔÁÎÏ×ÉÔÅ ÎÏ×ÕÀ ×ÅÒÓÉÀ JRE (×ÅÒÓÉÀ 1.4 ÉÌÉ ÂÏÌÅÅ ÎÏ×ÕÀ) É if "%GLILANG%" == "ru" ÐÅÒÅÕÓÔÁÎÏ×ÉÔÅ ÜÔÏÔ ÓËÒÉÐÔ if "%GLILANG%" == "en" The version of the Java Runtime Environment you have installed is too if "%GLILANG%" == "en" old to run the %PROGNAME%. Please install a new if "%GLILANG%" == "en" version of the JRE (version 1.4 or newer) and rerun this script. goto exit :checkGLI :: ---- Check that the GLI has been compiled ---- if exist "classes/org/greenstone/gatherer/Gatherer.class" goto runGLI if exist "GLI.jar" goto runGLI echo. if "%GLILANG%" == "en" echo You need to compile the Greenstone Librarian Interface (using makegli.bat) if "%GLILANG%" == "en" echo before running this script. if "%GLILANG%" == "es" echo Usted necesita compilar la Interfaz de la Biblioteca Digital Greenstone if "%GLILANG%" == "es" echo (por medio de makegli.bat) antes de ejecutar este gui¢n. if "%GLILANG%" == "fr" echo Vous devez compiler le Greenstone Interface (en utilisant makegli.bat) if "%GLILANG%" == "fr" echo avant d'ex‚cuter ce script. if "%GLILANG%" == "ru" echo ‚ë ¤®«¦­ë ª®¬¯¨«¨à®¢ âì ¡¨¡«¨®â¥ç­ë© ¨­â¥à䥩á Greenstone (¨á¯®«ì§ãï makegli.bat) if "%GLILANG%" == "ru" echo ¯¥à¥¤ ¢¢®¤®¬ í⮣® áªà¨¯â  goto exit :runGLI :: ---- Finally, run the GLI ---- echo. if not "%_VERSION%" == "" echo Running on Greenstone version %_VERSION% if not "%GSDL3SRCHOME%" == "" echo GSDL3SRCHOME is %GSDL3SRCHOME% if not "%GSDL3HOME%" == "" echo GSDL3HOME is %GSDL3HOME% if not "%GSDLHOME%" == "" echo GSDLHOME is %GSDLHOME% echo. if "%GLILANG%" == "en" echo Running the %PROGNAME%... if "%GLILANG%" == "es" echo Ejecutando la %PROGNAME%... if "%GLILANG%" == "fr" echo Ex‚cution de %PROGNAME% if "%GLILANG%" == "ru" echo ’¥ªã騩 ¡¨¡«¨%PROGNAME%... :: -Xms32M To set minimum memory :: -Xmx32M To set maximum memory :: -verbose:gc To set garbage collection messages :: -Xincgc For incremental garbage collection :: -Xprof Function call profiling :: -Xloggc: Write garbage collection log :: Run GS3 if version = 3 if "%_VERSION%" == "3" "%JAVAPATH%\java" -cp classes/;GLI.jar;lib/apache.jar;lib/qfslib.jar org.greenstone.gatherer.GathererProg -gsdl %GSDLHOME% -gsdlos %GSDLOS% -gsdl3 %GSDL3HOME% -gsdl3src %GSDL3SRCHOME% -perl %PERLPATH% %1 %2 %3 %4 %5 %6 %7 %8 %9 if "%_VERSION%" == "3" goto finRun :: Run GS2 since version is 2: :: if FLI is running, we don't want the local Greenstone library server running if "%PROGABBR%" == "FLI" goto webLib :: Else we're running GLI, so we want the local Greenstone library server (if server.exe exists, otherwise it will be webLib) if exist "%GSDLHOME%\server.exe" goto localLib :webLib "%JAVAPATH%\java" -Xmx128M -cp classes/;GLI.jar;lib/apache.jar;lib/qfslib.jar org.greenstone.gatherer.GathererProg -gsdl %GSDLHOME% -gsdlos %GSDLOS% -perl %PERLPATH% %1 %2 %3 %4 %5 %6 %7 %8 %9 if ERRORLEVEL 2 goto webLib goto finRun :localLib "%JAVAPATH%\java" -Xmx128M -cp classes/;GLI.jar;lib/apache.jar;lib/qfslib.jar org.greenstone.gatherer.GathererProg -gsdl %GSDLHOME% -gsdlos %GSDLOS% -perl %PERLPATH% -local_library %GSDLHOME%\server.exe %1 %2 %3 %4 %5 %6 %7 %8 %9 if ERRORLEVEL 2 goto localLib goto finRun :finRun if "%GLILANG%" == "en" echo Done! if "%GLILANG%" == "es" echo ­Hecho! if "%GLILANG%" == "fr" echo Termin‚! if "%GLILANG%" == "ru" echo ‚믮«­¥­®! goto done :exit echo. pause :done :: ---- Clean up ---- set PERLPATH= set JAVAPATH=