1 | #!/bin/bash
|
---|
2 | # if this file is executed, /bin/sh is used, as we don't start with #!
|
---|
3 | # this should work under ash, bash, zsh, ksh, sh style shells.
|
---|
4 | gsdllang=""
|
---|
5 | # encoding inputs and outputs
|
---|
6 | gsdltoenc=""
|
---|
7 | gsdlfromenc=""
|
---|
8 |
|
---|
9 | # see if the shell has any language environment variables set
|
---|
10 | # see locale(7) manpage for this ordering.
|
---|
11 | if test ! -z "$LC_ALL" ; then
|
---|
12 | gsdllang="$LC_ALL"
|
---|
13 | elif test ! -z "$LANG"; then
|
---|
14 | gsdllang="$LANG"
|
---|
15 | fi
|
---|
16 |
|
---|
17 |
|
---|
18 | # note... all our output strings have the charset hard-coded, but
|
---|
19 | # people may be using a different encoding in their terminal. LANG
|
---|
20 | # strings look like "en_NZ.UTF-8".
|
---|
21 |
|
---|
22 | # Determine the requested output encoding
|
---|
23 | case $gsdllang in
|
---|
24 | *.*)
|
---|
25 | gsdltoenc=`echo $gsdllang | sed 's/.*\.//'`
|
---|
26 | ;;
|
---|
27 | esac
|
---|
28 |
|
---|
29 | # Our french and spanish strings are currently in iso-8859-1 encoding.
|
---|
30 | case $gsdllang in
|
---|
31 | fr*|FR*)
|
---|
32 | gsdllang=fr
|
---|
33 | gsdlfromenc="iso-8859-1"
|
---|
34 | ;;
|
---|
35 | es*|ES*)
|
---|
36 | gsdllang=es
|
---|
37 | gsdlfromenc="iso-8859-1"
|
---|
38 | ;;
|
---|
39 | ru*|RU*)
|
---|
40 | gsdllang=ru
|
---|
41 | gsdlfromenc="koi8r"
|
---|
42 | ;;
|
---|
43 | *) # default
|
---|
44 | gsdllang=en
|
---|
45 | gsdlfromenc="iso-8859-1"
|
---|
46 | ;;
|
---|
47 | esac
|
---|
48 |
|
---|
49 | # "iconv" is the program for converting text between encodings.
|
---|
50 | gsdliconv=`which iconv 2>/dev/null`
|
---|
51 | if test $? -ne 0 || test ! -x "$gsdliconv" || test -z "$gsdlfromenc" || test -z "$gsdltoenc"; then
|
---|
52 | # we can't convert encodings from some reason
|
---|
53 | gsdliconv="cat"
|
---|
54 | else
|
---|
55 | # add the encodings
|
---|
56 | gsdliconv="$gsdliconv -f $gsdlfromenc -t $gsdltoenc"
|
---|
57 | fi
|
---|
58 |
|
---|
59 | # make sure we are sourced, and not run
|
---|
60 |
|
---|
61 | if test "$0" != "`echo $0 | sed s/setup\.bash//`" ; then
|
---|
62 | # if $0 contains "setup.bash" we've been run... $0 is shellname if sourced.
|
---|
63 | # One exception is zsh has an option to set it temporarily to the script name
|
---|
64 | if test -z "$ZSH_NAME" ; then
|
---|
65 | # we aren't using zsh
|
---|
66 | gsdl_not_sourced=true
|
---|
67 | fi
|
---|
68 | fi
|
---|
69 |
|
---|
70 | if test -n "$gsdl_not_sourced" ; then
|
---|
71 | case "$gsdllang" in
|
---|
72 | "es")
|
---|
73 | eval $gsdliconv <<EOF
|
---|
74 | Error: Asegúrese de compilar este guión, no de ejecutarlo. P. ej.:
|
---|
75 | $ source setup.bash
|
---|
76 | o
|
---|
77 | $ . ./setup.bash
|
---|
78 | no
|
---|
79 | $ ./setup.bash
|
---|
80 | EOF
|
---|
81 | ;;
|
---|
82 | "fr")
|
---|
83 | eval $gsdliconv <<EOF
|
---|
84 | Erreur: Assurez-vous de "sourcer" le script, plutôt que de l'exécuter. Ex:
|
---|
85 | $ source setup.bash
|
---|
86 | ou
|
---|
87 | $ . ./setup.bash
|
---|
88 | pas
|
---|
89 | $ ./setup.bash
|
---|
90 | EOF
|
---|
91 | ;;
|
---|
92 | "ru")
|
---|
93 | eval $gsdliconv <<EOF
|
---|
94 | ïÛÉÂËÁ: õÄÏÓÔÏ×ÅÒØÔÅÓØ × ÉÓÔÏÞÎÉËÅ ÜÔÏÇÏ ÓËÒÉÐÔÁ. îÅ ÉÓÐÏÌÎÑÊÔÅ ÅÇÏ.
|
---|
95 | îÁÐÒÉÍÅÒ:
|
---|
96 | $ source setup.bash
|
---|
97 | ÉÌÉ
|
---|
98 | $ . ./setup.bash
|
---|
99 | ÎÅÔ
|
---|
100 | $ ./setup.bash
|
---|
101 | EOF
|
---|
102 | ;;
|
---|
103 | *)
|
---|
104 | eval $gsdliconv <<EOF
|
---|
105 | Error: Make sure you source this script, not execute it. Eg:
|
---|
106 | $ source setup.bash
|
---|
107 | or
|
---|
108 | $ . ./setup.bash
|
---|
109 | not
|
---|
110 | $ ./setup.bash
|
---|
111 | EOF
|
---|
112 | ;;
|
---|
113 | esac
|
---|
114 | elif test -n "$GSDLHOME" ; then
|
---|
115 | case "$gsdllang" in
|
---|
116 | "es")
|
---|
117 | echo '¡Su ambiente ya está listo para Greenstone!' | eval $gsdliconv
|
---|
118 | ;;
|
---|
119 | "fr")
|
---|
120 | echo 'Votre environnement est déjà préparé pour Greenstone!' | eval $gsdliconv
|
---|
121 | ;;
|
---|
122 | "ru")
|
---|
123 | echo '÷ÁÛÅ ÏËÒÕÖÅÎÉÅ ÕÖÅ ÎÁÓÔÒÏÅÎÏ ÄÌÑ Greenstone!' | eval $gsdliconv
|
---|
124 | ;;
|
---|
125 | *)
|
---|
126 | echo 'Your environment is already set up for Greenstone!'
|
---|
127 | ;;
|
---|
128 | esac
|
---|
129 | elif test ! -f setup.bash ; then
|
---|
130 | case "$gsdllang" in
|
---|
131 | "es")
|
---|
132 | eval $gsdliconv <<EOF
|
---|
133 | Usted debe compilar el guión desde el interior del directorio de inicio
|
---|
134 | de Greenstone.
|
---|
135 | EOF
|
---|
136 | ;;
|
---|
137 | "fr")
|
---|
138 | echo 'Vous devez trouver la source du script dans le répertoire de base de Greenstone' | eval $gsdliconv
|
---|
139 | ;;
|
---|
140 | "ru")
|
---|
141 | eval $gsdliconv <<EOF
|
---|
142 | ÷ÁÍ ÎÅÏÂÈÏÄÉÍ ÉÓÔÏÞÎÉË ÓËÒÉÐÔÁ ÉÚ ÂÁÚÏ×ÏÊ ÄÉÒÅËÔÏÒÉÉ Greenstone
|
---|
143 | EOF
|
---|
144 | ;;
|
---|
145 | *)
|
---|
146 | echo 'You must source the script from within the Greenstone home directory'
|
---|
147 | ;;
|
---|
148 | esac
|
---|
149 | else
|
---|
150 | GSDLHOME=`pwd`
|
---|
151 | export GSDLHOME
|
---|
152 |
|
---|
153 | if test "x$GSDLOS" = "x" ; then
|
---|
154 | GSDLOS=`uname -s | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
---|
155 | # check for running bash under cygwin
|
---|
156 | if test "`echo $GSDLOS | sed 's/cygwin//'`" != "$GSDLOS" ;
|
---|
157 | then
|
---|
158 | GSDLOS=windows
|
---|
159 | fi
|
---|
160 | fi
|
---|
161 | export GSDLOS
|
---|
162 |
|
---|
163 | # check for running bash under mingw
|
---|
164 | if test "`echo $GSDLOS | sed 's/mingw//'`" != "$GSDLOS" ;
|
---|
165 | then
|
---|
166 | GSDLOS=windows
|
---|
167 | fi
|
---|
168 | export GSDLOS
|
---|
169 |
|
---|
170 | # Establish cpu architecture
|
---|
171 | # 32-bit or 64-bit?
|
---|
172 | UNAME_HW_MACH=`uname -m`
|
---|
173 |
|
---|
174 | # Original test
|
---|
175 | # if test "`echo x$UNAME_HW_MACH | sed 's/^x.*_64$/x/'`" == "x" ;
|
---|
176 | # then
|
---|
177 | # GSDLARCH=64
|
---|
178 | # else
|
---|
179 | # GSDLARCH=32
|
---|
180 | # fi
|
---|
181 |
|
---|
182 | # Following test came from VirtualBox's Guest Additions autostart.sh
|
---|
183 | # (adapted for use in Greenstone)
|
---|
184 | case "$UNAME_HW_MACH" in
|
---|
185 | i[3456789]86|x86|i86pc)
|
---|
186 | GSDLARCH='32'
|
---|
187 | ;;
|
---|
188 | x86_64|amd64|AMD64)
|
---|
189 | GSDLARCH='64'
|
---|
190 | ;;
|
---|
191 | *)
|
---|
192 | echo "Unknown architecture: $UNAME_HW_MACH"
|
---|
193 | ;;
|
---|
194 | esac
|
---|
195 |
|
---|
196 | # Only want non-trival GSDLARCH value set if there is evidence of
|
---|
197 | # the installed bin (lib, ...) directories using linux32, linux64
|
---|
198 | # (otherwise probably looking at an SVN compiled up version for single OS)
|
---|
199 | if test ! -d "$GSDLHOME/bin/$GSDLOS$GSDLARCH" ;
|
---|
200 | then
|
---|
201 | GSDLARCH=""
|
---|
202 | fi
|
---|
203 |
|
---|
204 | export GSDLARCH
|
---|
205 |
|
---|
206 | PATH=$GSDLHOME/bin/script:$GSDLHOME/bin/$GSDLOS$GSDLARCH:$PATH
|
---|
207 | export PATH
|
---|
208 |
|
---|
209 | if test "$GSDLOS" = "linux" ; then
|
---|
210 | LD_LIBRARY_PATH="$GSDLHOME/lib/$GSDLOS$GSDLARCH:$LD_LIBRARY_PATH"
|
---|
211 | export LD_LIBRARY_PATH
|
---|
212 | elif test "$GSDLOS" = "darwin" ; then
|
---|
213 | DYLD_LIBRARY_PATH="$GSDLHOME/lib/$GSDLOS$GSDLARCH:$DYLD_LIBRARY_PATH"
|
---|
214 | export DYLD_LIBRARY_PATH
|
---|
215 | fi
|
---|
216 |
|
---|
217 | # Override Imagemagick and Ghostscript paths to the bundled applications shipped with greenstone if they exists otherwise use default environment variables.
|
---|
218 |
|
---|
219 | # Imagemagick env vars are set in bin\script\gs-magick.pl
|
---|
220 |
|
---|
221 |
|
---|
222 | # Note: Ghostscript is only bundled with Greenstone on Mac and Windows, not on Linux. The code below should be used only for the Darwin platform
|
---|
223 | # for Windows please see setup.bat
|
---|
224 | if test -d "$GSDLHOME/bin/$GSDLOS$GSDLARCH/ghostscript" ; then
|
---|
225 | PATH="$GSDLHOME/bin/$GSDLOS$GSDLARCH/ghostscript/bin":"$PATH"
|
---|
226 | export PATH
|
---|
227 |
|
---|
228 | GS_LIB="$GSDLHOME/bin/$GSDLOS$GSDLARCH/ghostscript/share/ghostscript/8.63/lib"
|
---|
229 | export GS_LIB
|
---|
230 |
|
---|
231 | GS_FONTPATH="$GSDLHOME/bin/$GSDLOS$GSDLARCH/ghostscript/share/ghostscript/8.63/Resource/Font"
|
---|
232 | export GS_FONTPATH
|
---|
233 | fi
|
---|
234 |
|
---|
235 |
|
---|
236 |
|
---|
237 | MANPATH=$MANPATH:$GSDLHOME/packages/mg/man
|
---|
238 | export MANPATH
|
---|
239 | case "$gsdllang" in
|
---|
240 | "es")
|
---|
241 | echo 'Su ambiente ha sido configurado para correr los programas Greenstone.' | eval $gsdliconv
|
---|
242 | ;;
|
---|
243 | "fr")
|
---|
244 | echo 'Votre environnement a été configuére avec succès pour exécuter Greenstone' | eval $gsdliconv
|
---|
245 | ;;
|
---|
246 | "ru")
|
---|
247 | eval $gsdliconv <<EOF
|
---|
248 | ÷ÁÛÅ ÏËÒÕÖÅÎÉÅ ÂÙÌÏ ÕÓÐÅÛÎÏ ÎÁÓÔÒÏÅÎÏ, ÞÔÏÂÙ ÕÓÔÁÎÏ×ÉÔØ Greenstone
|
---|
249 | EOF
|
---|
250 | ;;
|
---|
251 | *)
|
---|
252 | echo 'Your environment has successfully been set up to run Greenstone'
|
---|
253 | ;;
|
---|
254 | esac
|
---|
255 | fi
|
---|
256 | unset gsdl_not_sourced
|
---|
257 | unset gsdliconv
|
---|
258 | unset gsdlfromenc
|
---|
259 | unset gsdltoenc
|
---|
260 |
|
---|
261 | if test "x$gsopt_noexts" != "x1" ; then
|
---|
262 | if test -e ext; then
|
---|
263 | for gsdl_ext in ext/*; do
|
---|
264 | if test -d $gsdl_ext; then
|
---|
265 | cd $gsdl_ext > /dev/null
|
---|
266 | if test -e setup.bash ; then
|
---|
267 | source ./setup.bash
|
---|
268 | fi
|
---|
269 | cd ../..
|
---|
270 | fi
|
---|
271 | done
|
---|
272 | fi
|
---|
273 | fi
|
---|
274 |
|
---|
275 | if test -e apache-httpd ; then
|
---|
276 | echo "+Adding in executable path for apache-httpd"
|
---|
277 | PATH=$GSDLHOME/apache-httpd/$GSDLOS$GSDLARCH/bin:$PATH
|
---|
278 | export PATH
|
---|
279 |
|
---|
280 | if test "$GSDLOS" = "linux" ; then
|
---|
281 | LD_LIBRARY_PATH="$GSDLHOME/apache-httpd/$GSDLOS$GSDLARCH/lib:$LD_LIBRARY_PATH"
|
---|
282 | export LD_LIBRARY_PATH
|
---|
283 |
|
---|
284 | elif test "$GSDLOS" = "darwin" ; then
|
---|
285 | DYLD_LIBRARY_PATH="$GSDLHOME/apache-httpd/$GSDLOS$GSDLARCH/lib:$DYLD_LIBRARY_PATH"
|
---|
286 | export DYLD_LIBRARY_PATH
|
---|
287 | fi
|
---|
288 | fi
|
---|
289 |
|
---|
290 | if test -e local ; then
|
---|
291 | if test -e local/setup.bash ; then
|
---|
292 | echo "Sourcing local/setup.bash"
|
---|
293 | cd local ; source setup.bash ; cd ..
|
---|
294 | fi
|
---|
295 |
|
---|
296 | PATH=$GSDLHOME/local/bin:$PATH
|
---|
297 | export PATH
|
---|
298 | LD_LIBRARY_PATH=$GSDLHOME/local/lib:$LD_LIBRARY_PATH
|
---|
299 | export LD_LIBRARY_PATH
|
---|
300 | fi
|
---|
301 |
|
---|
302 |
|
---|
303 | # if the Perl-for-greenstone tarfile has been installed in the bin/linux
|
---|
304 | # folder, then we set things up to use that, instead of a system perl
|
---|
305 | if [ -d "$GSDLHOME/bin/$GSDLOS$GSDLARCH/perl" ] ; then
|
---|
306 |
|
---|
307 | if [ -d "$GSDLHOME/bin/$GSDLOS$GSDLARCH/perl/bin" ] ; then
|
---|
308 | PERLPATH=$GSDLHOME/bin/$GSDLOS$GSDLARCH/perl/bin
|
---|
309 | export PERLPATH
|
---|
310 | PATH=$PERLPATH:$PATH
|
---|
311 | export PATH
|
---|
312 | fi
|
---|
313 |
|
---|
314 | if test "$GSDLOS" = "linux" ; then
|
---|
315 | LD_LIBRARY_PATH=$GSDLHOME/bin/$GSDLOS$GSDLARCH/perl/lib/5.8.9/i686-linux-thread-multi/CORE:$LD_LIBRARY_PATH
|
---|
316 | export LD_LIBRARY_PATH
|
---|
317 | elif test "$GSDLOS" = "darwin" ; then
|
---|
318 | DYLD_LIBRARY_PATH=$GSDLHOME/bin/$GSDLOS$GSDLARCH/perl/lib/5.8.9/darwin-thread-multi-2level/CORE:$DYLD_LIBRARY_PATH
|
---|
319 | export DYLD_LIBRARY_PATH
|
---|
320 | fi
|
---|
321 |
|
---|
322 | if [ "x$PERL5LIB" = "x" ] ; then
|
---|
323 | PERL5LIB=$GSDLHOME/bin/$GSDLOS$GSDLARCH/perl/lib
|
---|
324 | else
|
---|
325 | PERL5LIB=$GSDLHOME/bin/$GSDLOS$GSDLARCH/perl/lib:$PERL5LIB
|
---|
326 | fi
|
---|
327 | export PERL5LIB
|
---|
328 |
|
---|
329 | echo ""
|
---|
330 | echo "***** Perl installation detected inside Greenstone."
|
---|
331 | echo "Command-line scripts need to be run with \"perl -S ...\""
|
---|
332 | echo " e.g. perl -S import.pl -removeold demo"
|
---|
333 | echo ""
|
---|
334 | # else we may in future need to update PERL5LIB with some other (further) locations
|
---|
335 | fi
|
---|