[15071] | 1 | @echo off
|
---|
| 2 |
|
---|
[22069] | 3 | setlocal enabledelayedexpansion
|
---|
| 4 |
|
---|
[20191] | 5 | set java_min_version=1.5.0_00
|
---|
[15071] | 6 |
|
---|
[27832] | 7 | if exist gs3-setup.bat goto prelim
|
---|
[15071] | 8 | echo This script must be run from within the Greenstone 3 home directory
|
---|
[27832] | 9 | goto done
|
---|
[15071] | 10 |
|
---|
[27832] | 11 | :prelim
|
---|
| 12 | if "!GSDL3SRCHOME!" == "" goto start
|
---|
| 13 | if "!GSDL3SRCHOME!" == "!CD!" (
|
---|
| 14 | echo Your environment is already set up for Greenstone3
|
---|
| 15 | goto done
|
---|
| 16 | ) else (
|
---|
| 17 | echo Your environment was set up for Greenstone 3 in !GSDL3SRCHOME!.
|
---|
| 18 | echo Overwriting that set up for the current Greenstone 3 in !CD!.
|
---|
| 19 | )
|
---|
| 20 |
|
---|
[15071] | 21 | :start
|
---|
[15363] | 22 | :: ---- Set some relevant environment variables ----
|
---|
| 23 |
|
---|
| 24 | :: this is the default
|
---|
[22069] | 25 | :: greenstone3 (!GSDL3SRCHOME!)
|
---|
| 26 | :: +-- web (!GSDL3HOME!)
|
---|
[15363] | 27 | :: +-- packages
|
---|
[22069] | 28 | :: +-- tomcat (!TOMCAT_HOME!)
|
---|
| 29 | :: +-- ant (!ANT_HOME!)
|
---|
[15363] | 30 |
|
---|
[24374] | 31 | :: set GSDL3SRCHOME to the current directory
|
---|
[22069] | 32 | cd | winutil\setvar.exe GSDL3SRCHOME > !TMP!\setgsdl3.bat
|
---|
| 33 | call !TMP!\setgsdl3.bat
|
---|
| 34 | del !TMP!\setgsdl3.bat
|
---|
[15363] | 35 |
|
---|
[24374] | 36 | :: set GSDL3HOME to the 'web' subdirectory
|
---|
[22069] | 37 | set GSDL3HOME=!GSDL3SRCHOME!\web
|
---|
[30574] | 38 | set WEB_CONTAINING_CLASSES=!GSDL3SRCHOME!\web
|
---|
[30568] | 39 | :: set GSDL3HOME to any web.home property provided, and create that folder if it doesn't exist
|
---|
| 40 | :: Replace forward slashes in web.home with back slashes
|
---|
| 41 | :: http://scripts.dragon-it.co.uk/scripts.nsf/docs/batch-search-replace-substitute!OpenDocument&ExpandSection=3&BaseTarget=East&AutoFramed
|
---|
[30592] | 42 | if exist "!GSDL3SRCHOME!\build.properties" for /F "usebackq tokens=1,2 delims==" %%G in ("!GSDL3SRCHOME!\build.properties") do (
|
---|
[30568] | 43 | if "%%G"=="web.home" (
|
---|
| 44 | set GSDL3HOME=%%H
|
---|
| 45 | set GSDL3HOME=!GSDL3HOME:/=\!
|
---|
[30574] | 46 | set WEB_CONTAINING_CLASSES=!GSDL3HOME!
|
---|
[30568] | 47 | if not exist "!GSDL3HOME!" cmd /c "!GSDL3SRCHOME!\userweb.cmd"
|
---|
[30574] | 48 | goto foundwebhome
|
---|
| 49 | )
|
---|
[30568] | 50 | )
|
---|
[15071] | 51 |
|
---|
[30574] | 52 | :foundwebhome
|
---|
[30568] | 53 | :: Whatever the web directory is, it should contain the WEB-INF\classes folder, else go back to using default for this
|
---|
| 54 | :: The WEB-INF\classes folder will be absent in a userweb folder, but will be present if GSDL3HOME=GSDL3SRCHOME\web
|
---|
| 55 | :: or if web.home points to GS3 as a webapp inside tomcat
|
---|
[30574] | 56 | if not exist "!GSDL3HOME!\WEB-INF\classes" set WEB_CONTAINING_CLASSES=!GSDL3SRCHOME!\web
|
---|
[30568] | 57 |
|
---|
[15363] | 58 | :: change if using external tomcat or ant
|
---|
[22069] | 59 | set TOMCAT_HOME=!GSDL3SRCHOME!\packages\tomcat
|
---|
| 60 | if exist "!GSDL3SRCHOME!\packages\ant\*.*" set ANT_HOME=!GSDL3SRCHOME!\packages\ant
|
---|
[15071] | 61 |
|
---|
[15363] | 62 | :: other important environment variables
|
---|
[15071] | 63 | set GSDLOS=windows
|
---|
[15363] | 64 |
|
---|
| 65 | :: ---- Set the CLASSPATH and PATH environment variables ----
|
---|
[22069] | 66 | if "!GS_CP_SET!" == "yes" goto skipSetCp
|
---|
[30574] | 67 | set CLASSPATH=!WEB_CONTAINING_CLASSES!\WEB-INF\classes;!GSDL3SRCHOME!\resources\java;!GSDL3SRCHOME!\cp.jar;!CLASSPATH!;
|
---|
[24603] | 68 | set PATH=!GSDL3SRCHOME!\bin;!GSDL3SRCHOME!\bin\script;!GSDL3SRCHOME!\lib\jni;!ANT_HOME!\bin;!PATH!
|
---|
[15071] | 69 |
|
---|
[20304] | 70 | :: Override Imagemagick and Ghostscript paths to the bundled applications shipped with greenstone if they exists otherwise use default environment variables.
|
---|
[24374] | 71 | :: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin\gsdll32.dll" set GS_DLL=!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin\gsdll32.dll
|
---|
| 72 | :: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\lib\*.*" set GS_LIB=!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\lib
|
---|
| 73 | :: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin\*.*" set PATH=!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin;!PATH!
|
---|
| 74 | :: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\imagemagick\*.*" set PATH=!GSDL3SRCHOME!\gs2build\bin\windows\imagemagick;!PATH!
|
---|
[20304] | 75 |
|
---|
[15363] | 76 | :: a little dynamic set cp stuff
|
---|
[22075] | 77 | if exist "!TMP!\setcp.bat" del "!TMP!\setcp.bat"
|
---|
| 78 |
|
---|
| 79 | :: http://ss64.com/nt/for_cmd.html, how to deal with spaces in the file list in a for command
|
---|
| 80 | :: Note that TOMCAT_HOME\common\endorsed only exists for Tomcat 5, not Tomcat 6
|
---|
| 81 | :: (where it contains xercesImpl.jar and xml-apis.jar which aren't there in Tomcat 6)
|
---|
| 82 | if exist "!TOMCAT_HOME!\common\endorsed\*.jar" for /f %%j in ('dir/b ^"!TOMCAT_HOME!\common\endorsed\*.jar^"') do echo set CLASSPATH=%%CLASSPATH%%;%%TOMCAT_HOME%%\common\endorsed\%%j>> !TMP!\setcp.bat
|
---|
| 83 | for /f %%j in ('dir/b ^"!TOMCAT_HOME!\lib\*.jar^"') do echo set CLASSPATH=%%CLASSPATH%%;%%TOMCAT_HOME%%\lib\%%j>> !TMP!\setcp.bat
|
---|
| 84 |
|
---|
[22069] | 85 | if exist !TMP!\setcp.bat call !TMP!\setcp.bat
|
---|
| 86 | if exist !TMP!\setcp.bat del !TMP!\setcp.bat
|
---|
[15363] | 87 |
|
---|
| 88 | set GS_CP_SET=yes
|
---|
[15071] | 89 | :skipSetCp
|
---|
| 90 |
|
---|
[21320] | 91 | :: ---- if gs2build is there, run its setup.bat file ----
|
---|
[24374] | 92 | endlocal & set RUNJAVA=%RUNJAVA%& set PATH=%PATH%& set GSDLOS=%GSDLOS%& set GSDLHOME=%GSDLHOME%& set GSDL3HOME=%GSDL3HOME%& set GSDL3SRCHOME=%GSDL3SRCHOME%& set JAVA_HOME=%JAVA_HOME%& set JRE_HOME=%JRE_HOME%& set ANT_HOME=%ANT_HOME%& set CLASSPATH=%CLASSPATH%
|
---|
[21320] | 93 |
|
---|
| 94 | if exist gs2build\setup.bat (
|
---|
| 95 | echo.
|
---|
| 96 | echo Running gs2build\setup.bat
|
---|
| 97 | cd gs2build
|
---|
| 98 | call setup.bat
|
---|
| 99 | cd ..
|
---|
| 100 | )
|
---|
| 101 |
|
---|
| 102 | :: ---- Check for any setup files in ext or local folders ----
|
---|
| 103 | if exist ext (
|
---|
| 104 | for /D %%e IN ("ext/*") do (
|
---|
| 105 | cd ext\%%e
|
---|
[24336] | 106 | if EXIST gs3-setup.bat (
|
---|
| 107 | call gs3-setup.bat
|
---|
| 108 | ) else (
|
---|
| 109 | if EXIST setup.bat call setup.bat
|
---|
| 110 | )
|
---|
[21320] | 111 | cd ..\..
|
---|
| 112 | )
|
---|
| 113 | )
|
---|
| 114 |
|
---|
| 115 |
|
---|
| 116 | if exist local\gs3-setup.bat (
|
---|
| 117 | echo.
|
---|
| 118 | echo Running local\gs3-setup.bat
|
---|
| 119 | cd local
|
---|
| 120 | call gs3-setup.bat
|
---|
| 121 | cd ..
|
---|
| 122 | )
|
---|
| 123 |
|
---|
[24374] | 124 | setlocal enabledelayedexpansion
|
---|
| 125 |
|
---|
[15363] | 126 | :: ---- Search for java ----
|
---|
[20300] | 127 | set JAVA_MIN_VERSION=1.5.0_00
|
---|
[22069] | 128 | set HINT=!CD!\packages\jre
|
---|
[20300] | 129 | ::if search4j is present, use it
|
---|
| 130 | set FOUNDJAVAHOME=
|
---|
| 131 | set RUNJAVA=
|
---|
| 132 | if exist bin\search4j.exe (
|
---|
[22069] | 133 | for /F "tokens=*" %%r in ('bin\search4j.exe -d -p "!HINT!" -m !JAVA_MIN_VERSION!') do set FOUNDJAVAHOME=%%r
|
---|
| 134 | for /F "tokens=*" %%r in ('bin\search4j.exe -r -p "!HINT!" -m !JAVA_MIN_VERSION!') do set FOUNDJREHOME=%%r
|
---|
[20300] | 135 | )
|
---|
[15071] | 136 |
|
---|
[21988] | 137 | if DEFINED FOUNDJAVAHOME (
|
---|
| 138 | set JAVA_HOME=!FOUNDJAVAHOME!
|
---|
| 139 | set PATH=!FOUNDJAVAHOME!\bin;!PATH!
|
---|
| 140 | set RUNJAVA=!FOUNDJAVAHOME!\bin\java.exe
|
---|
[20300] | 141 | goto summaryThenEnd
|
---|
| 142 | )
|
---|
[15071] | 143 |
|
---|
[21988] | 144 | if DEFINED FOUNDJREHOME (
|
---|
| 145 | set JRE_HOME=!FOUNDJREHOME!
|
---|
| 146 | set PATH=!FOUNDJREHOME!\bin;!PATH!
|
---|
| 147 | set RUNJAVA=!FOUNDJREHOME!\bin\java.exe
|
---|
[20307] | 148 | goto summaryThenEnd
|
---|
| 149 | )
|
---|
| 150 |
|
---|
[22069] | 151 | if exist "!HINT!\bin\java.exe" (
|
---|
| 152 | set JAVA_HOME=!HINT!
|
---|
| 153 | set PATH=!JAVA_HOME!\bin;!PATH!
|
---|
| 154 | set RUNJAVA=!JAVA_HOME!\bin\java.exe
|
---|
[20300] | 155 | goto summaryThenEnd
|
---|
| 156 | )
|
---|
[15071] | 157 |
|
---|
[22069] | 158 | if exist "!JAVA_HOME!\bin\java.exe" (
|
---|
| 159 | set PATH=!JAVA_HOME!\bin;!PATH!
|
---|
| 160 | set RUNJAVA=!JAVA_HOME!\bin\java.exe
|
---|
[22082] | 161 | echo Using Java at !JAVA_HOME!
|
---|
| 162 | echo WARNING: Greenstone has not checked the version number of this Java installation
|
---|
| 163 | echo The source distribution of Greenstone3 requires Java 1.5 or greater
|
---|
| 164 | echo SVN users may still use Java 1.4
|
---|
[20300] | 165 | goto summaryThenEnd
|
---|
| 166 | )
|
---|
| 167 |
|
---|
[22069] | 168 | if exist "!JRE_HOME!\bin\java.exe" (
|
---|
| 169 | set PATH=!JRE_HOME!\bin;!PATH!
|
---|
| 170 | set RUNJAVA=!JRE_HOME!\bin\java.exe
|
---|
[22082] | 171 | echo Using Java at !JRE_HOME!
|
---|
[22081] | 172 | echo WARNING: Greenstone has not checked the version number of this Java installation
|
---|
| 173 | echo The source distribution of Greenstone3 requires Java 1.5 or greater
|
---|
[22082] | 174 | echo SVN users may still use Java 1.4
|
---|
[20300] | 175 | goto summaryThenEnd
|
---|
| 176 | )
|
---|
| 177 |
|
---|
[22082] | 178 | echo ERROR: Failed to locate Java
|
---|
| 179 | echo Please set JAVA_HOME or JRE_HOME to point to an appropriate Java
|
---|
[20300] | 180 | goto end
|
---|
| 181 |
|
---|
| 182 | :summaryThenEnd
|
---|
| 183 |
|
---|
[22069] | 184 | echo GSDL3SRCHOME : !GSDL3SRCHOME!
|
---|
| 185 | echo GSDL3HOME : !GSDL3HOME!
|
---|
| 186 | echo JAVA : !RUNJAVA!
|
---|
[22075] | 187 |
|
---|
[22024] | 188 | if "!ANT_HOME!" == "" (
|
---|
[20493] | 189 | echo.
|
---|
| 190 | echo ANT_HOME is not yet set.
|
---|
| 191 | echo Please make sure you have Ant version 1.7.1 or higher installed
|
---|
[22082] | 192 | echo Then set ANT_HOME to the Ant installation folder
|
---|
[22075] | 193 | echo and add the path to its bin folder to the PATH environment variable
|
---|
[20493] | 194 | ) else (
|
---|
[22024] | 195 | echo ANT_HOME : !ANT_HOME!
|
---|
[20493] | 196 | )
|
---|
| 197 | echo.
|
---|
[22015] | 198 |
|
---|
[27832] | 199 | :done
|
---|
[22069] | 200 | :: End localisation of variables that started with the set local/set enabledelayedexpansion command
|
---|
| 201 | :: Restore global variables that would otherwise be lost at script's end due to their having been initialised in a
|
---|
| 202 | :: set local/set enabledelayedexpansion section. See http://ss64.com/nt/endlocal.html
|
---|
[22339] | 203 | endlocal & set RUNJAVA=%RUNJAVA%& set PATH=%PATH%& set GSDLOS=%GSDLOS%& set GSDLHOME=%GSDLHOME%& set GSDL3HOME=%GSDL3HOME%& set GSDL3SRCHOME=%GSDL3SRCHOME%& set JAVA_HOME=%JAVA_HOME%& set JRE_HOME=%JRE_HOME%& set ANT_HOME=%ANT_HOME%& set CLASSPATH=%CLASSPATH%
|
---|
[22015] | 204 |
|
---|
[20300] | 205 | :end |
---|