Statistics
| Revision:

root / trunk / install / distribucion.sh @ 5994

History | View | Annotate | Download (6.02 KB)

1
#!/bin/bash
2

    
3
# Si se produce un error, salimos inmediatamente
4
set -e
5

    
6
# Obtenemos el locale
7
LOC=`echo $LANG | sed 's/_.*//'`
8

    
9
# Comprobar que estamos en el directorio adecuado
10
if [ $LOC = "es" ] ; then
11
  ERROR_BASEDIR="Este script debe invocarse desde el directorio raiz del workspace o desde el directorio \'install\'"
12
else
13
  ERROR_BASEDIR="This script must be run from the workspace\'s root directory or from the \'install\' directory"
14
fi
15
[ -d _fwAndami ] && [ -d install ] && cd install
16
if [ ! -d instalador-gvSIG-lin ] || [ ! -d instalador-gvSIG-win ] || [ ! -d ../_fwAndami ] ; then
17
        echo $ERROR_BASEDIR
18
        exit 1 ;
19
fi
20

    
21
DIR_BASE=`pwd`
22

    
23
source variables.sh
24
# Get a version with format 1_0_alpha
25
UNDERSCORE_VERSION=`echo $FULLVERSION | sed 'y/./_/'`
26
# Get a version with format 10_alpha
27
BRIEFVERSION=`echo $FULLVERSION | sed 's/\.//'`
28
# The name of the dir which will be ZIPed, containing the resulting installer
29
INSTALLER_DIR="$APPNAME"-$FULLVERSION\_installer
30
JARNAME="$APPNAME"-"$FULLVERSION".jar
31
# The extension targets on the this version of gvSIG:
32
GVSIG_VERSION=1.0_alpha
33

    
34
BUILDNUMBER=`sed -n 's/build.number=//p' ../_fwAndami/gvSIG/extensiones/com.iver.cit.gvsig/build.number`
35

    
36
#ZIPNAME="$APPNAME"-"$UNDERSCORE_VERSION"\_"$BUILDNUMBER".zip
37
DIR_LIN=instalador-gvSIG-lin
38
DIR_WIN=instalador-gvSIG-win
39
WINDOWSZIP="$APPNAME"-"$BRIEFVERSION"\_"$BUILDNUMBER"-windows-i586.zip
40
LINUXZIP="$APPNAME"-"$BRIEFVERSION"\_"$BUILDNUMBER"-linux-i586.tgz
41

    
42
#Directorios
43
#OUTPUT_DIR=/mnt/sercartlin/grupo-sig-ca/Testing/Versiones/v"$FULLVERSION"\_"$BUILDNUMBER"
44
OUTPUT_DIR="$TARGET_DIR"/v"$FULLVERSION"\_"$BUILDNUMBER"
45
PATH_SOURCE_EXT=../_fwAndami/gvSIG/extensiones
46
PATH_SOURCE_MANDAT_EXT=../../../../../_fwAndami/gvSIG/extensiones
47

    
48

    
49
echo "*****************"
50
echo "      BASE       "
51
echo "*****************"
52
# Para Windows
53
echo -n "$DIR_BASE"/"$DIR_LIN" "-- "
54
cd "$DIR_BASE"/"$DIR_LIN"
55
rm bin -rf
56
mkdir -p bin/gvSIG/extensiones
57
cp installer_files/LEEME installer_files/LLIG-ME installer_files/README bin
58
cp resources/gpl.txt bin
59
# No enlazamos directamente el directorio lib para no incluir el directorio CVS
60
mkdir -p bin/lib
61
cd "$DIR_BASE"/"$DIR_LIN"/bin/lib
62
for i in ../../../../_fwAndami/lib/*.jar ; do
63
  ln -s "$i" .
64
done
65
for i in ../../../../_fwAndami/lib/*.zip ; do
66
  ln -s "$i" .
67
done
68
cd "$DIR_BASE"/"$DIR_LIN"
69
ln -s ../../../_fwAndami/andami.jar bin/
70
cp resources/andami-config.xml bin
71
echo OK.
72

    
73

    
74
# Para Linux
75
echo -n "$DIR_BASE"/"$DIR_WIN" "-- "
76
cd "$DIR_BASE"/"$DIR_WIN"
77
rm bin -rf
78
mkdir -p bin/gvSIG/extensiones
79
cp installer_files/LEEME.txt installer_files/LLIG-ME.txt installer_files/README.txt bin
80
cp resources/gpl.txt bin
81
# No enlazamos directamente el directorio lib para no incluir el directorio CVS
82
mkdir -p bin/lib
83
cd "$DIR_BASE"/"$DIR_WIN"/bin/lib
84
for i in ../../../../_fwAndami/lib/*.jar ; do
85
  ln -s "$i" .
86
done
87
for i in ../../../../_fwAndami/lib/*.zip ; do
88
  ln -s "$i" .
89
done
90
cd "$DIR_BASE"/"$DIR_WIN"
91
ln -s ../../../_fwAndami/andami.jar bin
92
cp resources/andami-config.xml bin
93
echo OK.
94

    
95
# Estas extensiones se copian directamente al directorio destino, ya que no vamos a dar
96
# opcion a no instalarlas, son obligatorias
97
cd $DIR_BASE
98
i=0
99
while [ ! -z ${MANDATORY_EXTENSIONS[$i]} ] 
100
do
101
  echo ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_LIN"/bin/gvSIG/extensiones
102
  ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_LIN"/bin/gvSIG/extensiones
103
  echo ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_WIN"/bin/gvSIG/extensiones
104
  ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_WIN"/bin/gvSIG/extensiones
105
  i=`expr $i + 1`
106
done
107

    
108

    
109
echo "*****************"
110
[ $LOC = "es" ] && echo "   EXTENSIONES   "
111
[ $LOC != "es" ] && echo "   EXTENSIONS   "
112
echo "*****************"
113

    
114
rm -rf $DIR_LIN/extensiones
115
mkdir $DIR_LIN/extensiones
116
rm -rf $DIR_WIN/extensiones
117
mkdir $DIR_WIN/extensiones
118

    
119
i=0
120
while [ ! -z ${EXTENSIONS[$i]} ] 
121
do
122
  [ $LOC = "es" ] && echo "Copiando "${EXTENSIONS[$i]}
123
  [ $LOC != "es" ] && echo "Copying "${EXTENSIONS[$i]}
124
  echo cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_LIN"/extensiones -rf
125
  cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_LIN"/extensiones -rf
126
  echo cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_WIN"/extensiones -rf
127
  cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_WIN"/extensiones -rf
128
  i=`expr $i + 1`
129
done
130

    
131

    
132
echo "*****************"
133
echo "    INST-WIN     "
134
echo "*****************"
135
# Generar el instalador (jar) para windows
136
cd "$DIR_BASE"/"$DIR_WIN"
137
rm "$JARNAME" -f
138
ant -DJARNAME="$JARNAME" -DGVSIG_VERSION="$GVSIG_VERSION" -DAPPNAME="$APPNAME"
139

    
140
echo "*****************"
141
echo "    INST-LIN     "
142
echo "*****************"
143
# Generar el instalador (jar) para Linux
144
cd "$DIR_BASE"/"$DIR_LIN"
145
rm "$JARNAME" -f
146
ant -DJARNAME="$JARNAME" -DGVSIG_VERSION="$GVSIG_VERSION" -DAPPNAME="$APPNAME"
147

    
148

    
149
echo "******************"
150
[ $LOC = "es" ] && echo " GENERAR DISTRIB "
151
[ $LOC != "es" ] && echo " GENERATE DISTRIB "
152
echo "******************"
153
# Generar el tar.gz para Linux y el ZIP para Windows
154

    
155
mkdir -p "$OUTPUT_DIR"
156

    
157
## Para Linux
158
cd "$DIR_BASE"/"$DIR_LIN"
159
rm -Rf "$INSTALLER_DIR"
160
cp -a installer_files "$INSTALLER_DIR"
161
rm -R "$INSTALLER_DIR"/CVS 2> /dev/null && true
162
# Set the correct version number in the scripts and files
163
if [ -f  "$INSTALLER_DIR"/install.sh ] ; then
164
  sed "s/JARNAME/$JARNAME/" "$INSTALLER_DIR"/install.sh > "$INSTALLER_DIR"/install.sh.bak
165
  mv "$INSTALLER_DIR"/install.sh.bak "$INSTALLER_DIR"/install.sh ;
166
  chmod +x "$INSTALLER_DIR"/install.sh
167
fi
168
mv "$JARNAME" "$INSTALLER_DIR"
169
tar -cvzf "$LINUXZIP" "$INSTALLER_DIR"
170
rm -Rf "$INSTALLER_DIR"
171
mv "$LINUXZIP" "$OUTPUT_DIR"
172

    
173
 
174
## Para Windows
175
cd "$DIR_BASE"/"$DIR_WIN"
176
rm -Rf "$INSTALLER_DIR"
177
cp -a installer_files "$INSTALLER_DIR"
178
rm -R "$INSTALLER_DIR"/CVS 2> /dev/null && true
179
# Set the correct version number in the scripts and files
180
if [ -f  "$INSTALLER_DIR"/install.bat ] ; then
181
  sed "s/JARNAME/$JARNAME/" "$INSTALLER_DIR"/install.bat > "$INSTALLER_DIR"/install.bat.bak
182
  mv "$INSTALLER_DIR"/install.bat.bak "$INSTALLER_DIR"/install.bat;
183
fi
184
mv "$JARNAME" "$INSTALLER_DIR"
185
zip -9r "$WINDOWSZIP" "$INSTALLER_DIR"
186
rm -Rf "$INSTALLER_DIR"
187
mv "$WINDOWSZIP" "$OUTPUT_DIR"