source: main/trunk/greenstone3/gs3-setup.bat@ 30378

Last change on this file since 30378 was 27832, checked in by ak19, 11 years ago

Win GS3 gs3-setup.bat now checks whether setup has already been run by checking whether GSDL3SRCHOME has already been set

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 6.7 KB
Line 
1@echo off
2
3setlocal enabledelayedexpansion
4
5set java_min_version=1.5.0_00
6
7if exist gs3-setup.bat goto prelim
8 echo This script must be run from within the Greenstone 3 home directory
9 goto done
10
11:prelim
12if "!GSDL3SRCHOME!" == "" goto start
13if "!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
21:start
22:: ---- Set some relevant environment variables ----
23
24:: this is the default
25:: greenstone3 (!GSDL3SRCHOME!)
26:: +-- web (!GSDL3HOME!)
27:: +-- packages
28:: +-- tomcat (!TOMCAT_HOME!)
29:: +-- ant (!ANT_HOME!)
30
31:: set GSDL3SRCHOME to the current directory
32cd | winutil\setvar.exe GSDL3SRCHOME > !TMP!\setgsdl3.bat
33call !TMP!\setgsdl3.bat
34del !TMP!\setgsdl3.bat
35
36:: set GSDL3HOME to the 'web' subdirectory
37set GSDL3HOME=!GSDL3SRCHOME!\web
38
39:: change if using external tomcat or ant
40set TOMCAT_HOME=!GSDL3SRCHOME!\packages\tomcat
41if exist "!GSDL3SRCHOME!\packages\ant\*.*" set ANT_HOME=!GSDL3SRCHOME!\packages\ant
42
43:: other important environment variables
44set GSDLOS=windows
45
46:: ---- Set the CLASSPATH and PATH environment variables ----
47if "!GS_CP_SET!" == "yes" goto skipSetCp
48set CLASSPATH=!GSDL3HOME!\WEB-INF\classes;!GSDL3SRCHOME!\resources\java;!GSDL3SRCHOME!\cp.jar;!CLASSPATH!;
49set PATH=!GSDL3SRCHOME!\bin;!GSDL3SRCHOME!\bin\script;!GSDL3SRCHOME!\lib\jni;!ANT_HOME!\bin;!PATH!
50
51:: Override Imagemagick and Ghostscript paths to the bundled applications shipped with greenstone if they exists otherwise use default environment variables.
52:: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin\gsdll32.dll" set GS_DLL=!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin\gsdll32.dll
53:: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\lib\*.*" set GS_LIB=!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\lib
54:: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin\*.*" set PATH=!GSDL3SRCHOME!\gs2build\bin\windows\ghostscript\bin;!PATH!
55:: if exist "!GSDL3SRCHOME!\gs2build\bin\windows\imagemagick\*.*" set PATH=!GSDL3SRCHOME!\gs2build\bin\windows\imagemagick;!PATH!
56
57:: a little dynamic set cp stuff
58if exist "!TMP!\setcp.bat" del "!TMP!\setcp.bat"
59
60:: http://ss64.com/nt/for_cmd.html, how to deal with spaces in the file list in a for command
61:: Note that TOMCAT_HOME\common\endorsed only exists for Tomcat 5, not Tomcat 6
62:: (where it contains xercesImpl.jar and xml-apis.jar which aren't there in Tomcat 6)
63if 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
64for /f %%j in ('dir/b ^"!TOMCAT_HOME!\lib\*.jar^"') do echo set CLASSPATH=%%CLASSPATH%%;%%TOMCAT_HOME%%\lib\%%j>> !TMP!\setcp.bat
65
66if exist !TMP!\setcp.bat call !TMP!\setcp.bat
67if exist !TMP!\setcp.bat del !TMP!\setcp.bat
68
69set GS_CP_SET=yes
70:skipSetCp
71
72:: ---- if gs2build is there, run its setup.bat file ----
73endlocal & 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%
74
75if exist gs2build\setup.bat (
76 echo.
77 echo Running gs2build\setup.bat
78 cd gs2build
79 call setup.bat
80 cd ..
81)
82
83:: ---- Check for any setup files in ext or local folders ----
84if exist ext (
85 for /D %%e IN ("ext/*") do (
86 cd ext\%%e
87 if EXIST gs3-setup.bat (
88 call gs3-setup.bat
89 ) else (
90 if EXIST setup.bat call setup.bat
91 )
92 cd ..\..
93 )
94)
95
96
97if exist local\gs3-setup.bat (
98 echo.
99 echo Running local\gs3-setup.bat
100 cd local
101 call gs3-setup.bat
102 cd ..
103)
104
105setlocal enabledelayedexpansion
106
107:: ---- Search for java ----
108set JAVA_MIN_VERSION=1.5.0_00
109set HINT=!CD!\packages\jre
110::if search4j is present, use it
111set FOUNDJAVAHOME=
112set RUNJAVA=
113if exist bin\search4j.exe (
114 for /F "tokens=*" %%r in ('bin\search4j.exe -d -p "!HINT!" -m !JAVA_MIN_VERSION!') do set FOUNDJAVAHOME=%%r
115 for /F "tokens=*" %%r in ('bin\search4j.exe -r -p "!HINT!" -m !JAVA_MIN_VERSION!') do set FOUNDJREHOME=%%r
116)
117
118if DEFINED FOUNDJAVAHOME (
119 set JAVA_HOME=!FOUNDJAVAHOME!
120 set PATH=!FOUNDJAVAHOME!\bin;!PATH!
121 set RUNJAVA=!FOUNDJAVAHOME!\bin\java.exe
122 goto summaryThenEnd
123)
124
125if DEFINED FOUNDJREHOME (
126 set JRE_HOME=!FOUNDJREHOME!
127 set PATH=!FOUNDJREHOME!\bin;!PATH!
128 set RUNJAVA=!FOUNDJREHOME!\bin\java.exe
129 goto summaryThenEnd
130)
131
132if exist "!HINT!\bin\java.exe" (
133 set JAVA_HOME=!HINT!
134 set PATH=!JAVA_HOME!\bin;!PATH!
135 set RUNJAVA=!JAVA_HOME!\bin\java.exe
136 goto summaryThenEnd
137)
138
139if exist "!JAVA_HOME!\bin\java.exe" (
140 set PATH=!JAVA_HOME!\bin;!PATH!
141 set RUNJAVA=!JAVA_HOME!\bin\java.exe
142 echo Using Java at !JAVA_HOME!
143 echo WARNING: Greenstone has not checked the version number of this Java installation
144 echo The source distribution of Greenstone3 requires Java 1.5 or greater
145 echo SVN users may still use Java 1.4
146 goto summaryThenEnd
147)
148
149if exist "!JRE_HOME!\bin\java.exe" (
150 set PATH=!JRE_HOME!\bin;!PATH!
151 set RUNJAVA=!JRE_HOME!\bin\java.exe
152 echo Using Java at !JRE_HOME!
153 echo WARNING: Greenstone has not checked the version number of this Java installation
154 echo The source distribution of Greenstone3 requires Java 1.5 or greater
155 echo SVN users may still use Java 1.4
156 goto summaryThenEnd
157)
158
159echo ERROR: Failed to locate Java
160echo Please set JAVA_HOME or JRE_HOME to point to an appropriate Java
161goto end
162
163:summaryThenEnd
164
165echo GSDL3SRCHOME : !GSDL3SRCHOME!
166echo GSDL3HOME : !GSDL3HOME!
167echo JAVA : !RUNJAVA!
168
169if "!ANT_HOME!" == "" (
170 echo.
171 echo ANT_HOME is not yet set.
172 echo Please make sure you have Ant version 1.7.1 or higher installed
173 echo Then set ANT_HOME to the Ant installation folder
174 echo and add the path to its bin folder to the PATH environment variable
175) else (
176 echo ANT_HOME : !ANT_HOME!
177)
178echo.
179
180:done
181:: End localisation of variables that started with the set local/set enabledelayedexpansion command
182:: Restore global variables that would otherwise be lost at script's end due to their having been initialised in a
183:: set local/set enabledelayedexpansion section. See http://ss64.com/nt/endlocal.html
184endlocal & 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%
185
186:end
Note: See TracBrowser for help on using the repository browser.