root/main/trunk/gs2build/setup.bash @ 21686

Revision 21686, 4.7 KB (checked in by ak19, 10 years ago)

Copied the fix Oran had made for greenstone2's setup.bash into gs2build's setup.bash. His fix for the infinite loop that occurred when the ext directory exists but is empty.

  • Property svn:executable set to *
Line 
1# if this file is executed, /bin/sh is used, as we don't start with #!
2# this should work under ash, bash, zsh, ksh, sh style shells.
3gsdllang=""
4# encoding inputs and outputs
5gsdltoenc=""
6gsdlfromenc=""
7
8# see if the shell has any language environment variables set
9# see locale(7) manpage for this ordering.
10if test ! -z "$LC_ALL" ; then
11  gsdllang="$LC_ALL"
12elif test ! -z "$LANG"; then
13  gsdllang="$LANG"
14fi
15
16
17# note... all our output strings have the charset hard-coded, but
18# people may be using a different encoding in their terminal. LANG
19# strings look like "en_NZ.UTF-8".
20
21# Determine the requested output encoding
22case $gsdllang in
23  *.*)
24    gsdltoenc=`echo $gsdllang | sed 's/.*\.//'`
25    ;;
26esac
27
28# Our french and spanish strings are currently in iso-8859-1 encoding.
29case $gsdllang in
30  fr*|FR*)
31    gsdllang=fr
32    gsdlfromenc="iso-8859-1"
33  ;;
34  es*|ES*)
35    gsdllang=es
36    gsdlfromenc="iso-8859-1"
37  ;;
38  ru*|RU*)
39    gsdllang=ru
40    gsdlfromenc="koi8r"
41  ;;
42  *) # default
43    gsdllang=en
44    gsdlfromenc="iso-8859-1"
45  ;;
46esac 
47
48# "iconv" is the program for converting text between encodings.
49gsdliconv=`which iconv 2>/dev/null`
50if test $? -ne 0 || test ! -x "$gsdliconv" || test -z "$gsdlfromenc" || test -z "$gsdltoenc"; then
51# we can't convert encodings from some reason
52  gsdliconv="cat"
53else
54# add the encodings
55  gsdliconv="$gsdliconv -f $gsdlfromenc -t $gsdltoenc"
56fi
57
58# make sure we are sourced, and not run
59
60if test "$0" != "`echo $0 | sed s/setup\.bash//`" ; then
61# if $0 contains "setup.bash" we've been run... $0 is shellname if sourced.
62# One exception is zsh has an option to set it temporarily to the script name
63  if test -z "$ZSH_NAME" ; then
64  # we aren't using zsh
65  gsdl_not_sourced=true
66  fi
67fi
68
69if test -n "$gsdl_not_sourced" ; then
70  case "$gsdllang" in
71 "es")
72eval $gsdliconv <<EOF
73      Error: Asegúrese de compilar este guión, no de ejecutarlo. P. ej.:
74         $ source setup.bash
75      o
76         $ . ./setup.bash
77      no
78         $ ./setup.bash
79EOF
80  ;;
81  "fr")
82eval $gsdliconv <<EOF
83      Erreur: Assurez-vous de "sourcer" le script, plutôt que de l'exécuter. Ex:
84         $ source setup.bash
85      ou
86         $ . ./setup.bash
87      pas
88         $ ./setup.bash
89EOF
90  ;;
91  "ru")
92eval $gsdliconv <<EOF
93      ïÛÉÂËÁ: õÄÏÓÔÏ×ÅÒØÔÅÓØ × ÉÓÔÏÞÎÉËÅ ÜÔÏÇÏ ÓËÒÉÐÔÁ. îÅ ÉÓÐÏÌÎÑÊÔÅ ÅÇÏ.
94      îÁÐÒÉÍÅÒ:
95         $ source setup.bash
96      ÉÌÉ
97         $ . ./setup.bash
98      ÎÅÔ
99         $ ./setup.bash
100EOF
101  ;;
102  *)
103eval $gsdliconv <<EOF
104    Error: Make sure you source this script, not execute it. Eg:
105        $ source setup.bash
106    or
107        $ . ./setup.bash
108    not
109        $ ./setup.bash
110EOF
111  ;;
112  esac
113elif test -n "$GSDLHOME" ; then
114  case "$gsdllang" in
115  "es")
116    echo '¡Su ambiente ya está listo para Greenstone!' | eval $gsdliconv
117  ;;
118  "fr")
119    echo 'Votre environnement est déjà préparé pour Greenstone!' | eval $gsdliconv
120 ;;
121  "ru")
122    echo '÷ÁÛÅ ÏËÒÕÖÅÎÉÅ ÕÖÅ ÎÁÓÔÒÏÅÎÏ ÄÌÑ Greenstone!' | eval $gsdliconv
123  ;;
124  *)
125    echo 'Your environment is already set up for Greenstone!'
126  ;;
127  esac
128elif test ! -f setup.bash ; then
129  case "$gsdllang" in
130    "es")
131eval $gsdliconv <<EOF
132Usted debe compilar el guión desde el interior del directorio de inicio
133de Greenstone.
134EOF
135  ;;
136  "fr")
137echo 'Vous devez trouver la source du script dans le répertoire de base de Greenstone' | eval $gsdliconv
138  ;;
139  "ru")
140eval $gsdliconv <<EOF
141÷ÁÍ ÎÅÏÂÈÏÄÉÍ ÉÓÔÏÞÎÉË ÓËÒÉÐÔÁ ÉÚ ÂÁÚÏ×ÏÊ ÄÉÒÅËÔÏÒÉÉ Greenstone
142EOF
143  ;;
144  *)
145    echo 'You must source the script from within the Greenstone home directory'
146  ;;
147  esac
148else
149  GSDLHOME=`pwd`
150  export GSDLHOME
151  GSDLOS=`uname -s | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
152  # check for running bash under cygwin
153  if test "`echo $GSDLOS | sed 's/cygwin//'`" != "$GSDLOS" ;
154  then
155    GSDLOS=windows
156  fi
157  export GSDLOS
158
159  PATH=$PATH:$GSDLHOME/bin/script:$GSDLHOME/bin/$GSDLOS
160  export PATH
161  MANPATH=$MANPATH:$GSDLHOME/packages/mg/man
162  export MANPATH
163  case "$gsdllang" in
164    "es")
165      echo 'Su ambiente ha sido configurado para correr los programas Greenstone.' | eval $gsdliconv
166    ;;
167    "fr")
168      echo 'Votre environnement a été configuére avec succès pour exécuter Greenstone' | eval $gsdliconv
169    ;;
170    "ru")
171eval $gsdliconv <<EOF
172÷ÁÛÅ ÏËÒÕÖÅÎÉÅ ÂÙÌÏ ÕÓÐÅÛÎÏ ÎÁÓÔÒÏÅÎÏ, ÞÔÏÂÙ ÕÓÔÁÎÏ×ÉÔØ Greenstone
173EOF
174    ;;
175    *)
176      echo 'Your environment has successfully been set up to run Greenstone'
177    ;;
178  esac
179fi
180unset gsdl_not_sourced
181unset gsdliconv
182unset gsdlfromenc
183unset gsdltoenc
184
185if test -e ext; then
186  for gsdl_ext in ext/*; do
187    if test -d $gsdl_ext; then
188      cd $gsdl_ext > /dev/null
189      if test -e setup.bash ; then
190        source ./setup.bash
191      fi
192      cd ../..
193    fi
194  done
195fi
196
197if [ -e local ] ; then
198  export PATH=$GSDLHOME/local/bin:$PATH
199  export LD_LIBRARY_PATH=$GSDLHOME/local/lib:$LD_LIBRARY_PATH
200fi
201
202
Note: See TracBrowser for help on using the browser.