Statistics
| Revision:

root / trunk / install / distribucion.sh @ 6837

History | View | Annotate | Download (6.62 KB)

1 4679 cesar
#!/bin/bash
2
3 4696 cesar
# Si se produce un error, salimos inmediatamente
4
set -e
5
6 4692 cesar
# 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 4701 cesar
  ERROR_BASEDIR="This script must be run from the workspace\'s root directory or from the \'install\' directory"
14 4692 cesar
fi
15
[ -d _fwAndami ] && [ -d install ] && cd install
16
if [ ! -d instalador-gvSIG-lin ] || [ ! -d instalador-gvSIG-win ] || [ ! -d ../_fwAndami ] ; then
17 5841 cesar
        echo $ERROR_BASEDIR
18
        exit 1 ;
19 4692 cesar
fi
20 5841 cesar
21 4692 cesar
DIR_BASE=`pwd`
22
23 5841 cesar
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 6088 jmvivo
WINDOWSZIP="$APPNAME"-"$BRIEFVERSION"\_"$BUILDNUMBER"-windows-i586.7z
40 5841 cesar
LINUXZIP="$APPNAME"-"$BRIEFVERSION"\_"$BUILDNUMBER"-linux-i586.tgz
41
42 6088 jmvivo
WINDOWSEXE="$APPNAME"-"$BRIEFVERSION"\_"$BUILDNUMBER"-windows-i586.exe
43
44 4679 cesar
#Directorios
45 5841 cesar
#OUTPUT_DIR=/mnt/sercartlin/grupo-sig-ca/Testing/Versiones/v"$FULLVERSION"\_"$BUILDNUMBER"
46
OUTPUT_DIR="$TARGET_DIR"/v"$FULLVERSION"\_"$BUILDNUMBER"
47 4696 cesar
PATH_SOURCE_EXT=../_fwAndami/gvSIG/extensiones
48
PATH_SOURCE_MANDAT_EXT=../../../../../_fwAndami/gvSIG/extensiones
49 4679 cesar
50 4692 cesar
51 4679 cesar
echo "*****************"
52 4692 cesar
echo "      BASE       "
53 4679 cesar
echo "*****************"
54 6088 jmvivo
# Para Linux
55 4696 cesar
echo -n "$DIR_BASE"/"$DIR_LIN" "-- "
56 4692 cesar
cd "$DIR_BASE"/"$DIR_LIN"
57
rm bin -rf
58
mkdir -p bin/gvSIG/extensiones
59 5841 cesar
cp installer_files/LEEME installer_files/LLIG-ME installer_files/README bin
60 4696 cesar
cp resources/gpl.txt bin
61 4789 cesar
# No enlazamos directamente el directorio lib para no incluir el directorio CVS
62
mkdir -p bin/lib
63
cd "$DIR_BASE"/"$DIR_LIN"/bin/lib
64
for i in ../../../../_fwAndami/lib/*.jar ; do
65
  ln -s "$i" .
66
done
67
for i in ../../../../_fwAndami/lib/*.zip ; do
68
  ln -s "$i" .
69
done
70
cd "$DIR_BASE"/"$DIR_LIN"
71 4696 cesar
ln -s ../../../_fwAndami/andami.jar bin/
72 4692 cesar
cp resources/andami-config.xml bin
73 4696 cesar
echo OK.
74
75 5841 cesar
76 6088 jmvivo
# Para Windows
77 4696 cesar
echo -n "$DIR_BASE"/"$DIR_WIN" "-- "
78
cd "$DIR_BASE"/"$DIR_WIN"
79
rm bin -rf
80
mkdir -p bin/gvSIG/extensiones
81 5841 cesar
cp installer_files/LEEME.txt installer_files/LLIG-ME.txt installer_files/README.txt bin
82 4696 cesar
cp resources/gpl.txt bin
83 4789 cesar
# No enlazamos directamente el directorio lib para no incluir el directorio CVS
84
mkdir -p bin/lib
85
cd "$DIR_BASE"/"$DIR_WIN"/bin/lib
86
for i in ../../../../_fwAndami/lib/*.jar ; do
87
  ln -s "$i" .
88
done
89
for i in ../../../../_fwAndami/lib/*.zip ; do
90
  ln -s "$i" .
91
done
92
cd "$DIR_BASE"/"$DIR_WIN"
93 4696 cesar
ln -s ../../../_fwAndami/andami.jar bin
94
cp resources/andami-config.xml bin
95
echo OK.
96
97 4692 cesar
# Estas extensiones se copian directamente al directorio destino, ya que no vamos a dar
98
# opcion a no instalarlas, son obligatorias
99 4696 cesar
cd $DIR_BASE
100 4692 cesar
i=0
101 5841 cesar
while [ ! -z ${MANDATORY_EXTENSIONS[$i]} ]
102 4692 cesar
do
103 5841 cesar
  echo ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_LIN"/bin/gvSIG/extensiones
104 4696 cesar
  ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_LIN"/bin/gvSIG/extensiones
105 5841 cesar
  echo ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_WIN"/bin/gvSIG/extensiones
106 4696 cesar
  ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_WIN"/bin/gvSIG/extensiones
107 4692 cesar
  i=`expr $i + 1`
108
done
109 4679 cesar
110
111 4692 cesar
echo "*****************"
112
[ $LOC = "es" ] && echo "   EXTENSIONES   "
113
[ $LOC != "es" ] && echo "   EXTENSIONS   "
114
echo "*****************"
115 4679 cesar
116 5146 cesar
rm -rf $DIR_LIN/extensiones
117
mkdir $DIR_LIN/extensiones
118
rm -rf $DIR_WIN/extensiones
119
mkdir $DIR_WIN/extensiones
120 4692 cesar
121 4679 cesar
i=0
122 5841 cesar
while [ ! -z ${EXTENSIONS[$i]} ]
123 4679 cesar
do
124 4692 cesar
  [ $LOC = "es" ] && echo "Copiando "${EXTENSIONS[$i]}
125
  [ $LOC != "es" ] && echo "Copying "${EXTENSIONS[$i]}
126 5841 cesar
  echo cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_LIN"/extensiones -rf
127 5146 cesar
  cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_LIN"/extensiones -rf
128 5841 cesar
  echo cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_WIN"/extensiones -rf
129 5146 cesar
  cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_WIN"/extensiones -rf
130 4692 cesar
  i=`expr $i + 1`
131 4679 cesar
done
132
133 4692 cesar
134 4679 cesar
echo "*****************"
135
echo "    INST-WIN     "
136
echo "*****************"
137 4692 cesar
# Generar el instalador (jar) para windows
138
cd "$DIR_BASE"/"$DIR_WIN"
139 5841 cesar
rm "$JARNAME" -f
140
ant -DJARNAME="$JARNAME" -DGVSIG_VERSION="$GVSIG_VERSION" -DAPPNAME="$APPNAME"
141 4679 cesar
142
echo "*****************"
143
echo "    INST-LIN     "
144
echo "*****************"
145 4692 cesar
# Generar el instalador (jar) para Linux
146
cd "$DIR_BASE"/"$DIR_LIN"
147 5841 cesar
rm "$JARNAME" -f
148
ant -DJARNAME="$JARNAME" -DGVSIG_VERSION="$GVSIG_VERSION" -DAPPNAME="$APPNAME"
149 4679 cesar
150 5841 cesar
151 4701 cesar
echo "******************"
152
[ $LOC = "es" ] && echo " GENERAR DISTRIB "
153
[ $LOC != "es" ] && echo " GENERATE DISTRIB "
154
echo "******************"
155 6088 jmvivo
# Generar el tar.gz para Linux y el EXE para Windows
156 4679 cesar
157 5841 cesar
mkdir -p "$OUTPUT_DIR"
158 6098 jmvivo
echo "- Linux"
159 5841 cesar
## Para Linux
160 4696 cesar
cd "$DIR_BASE"/"$DIR_LIN"
161 5841 cesar
rm -Rf "$INSTALLER_DIR"
162
cp -a installer_files "$INSTALLER_DIR"
163
rm -R "$INSTALLER_DIR"/CVS 2> /dev/null && true
164
# Set the correct version number in the scripts and files
165
if [ -f  "$INSTALLER_DIR"/install.sh ] ; then
166
  sed "s/JARNAME/$JARNAME/" "$INSTALLER_DIR"/install.sh > "$INSTALLER_DIR"/install.sh.bak
167
  mv "$INSTALLER_DIR"/install.sh.bak "$INSTALLER_DIR"/install.sh ;
168
  chmod +x "$INSTALLER_DIR"/install.sh
169
fi
170
mv "$JARNAME" "$INSTALLER_DIR"
171
tar -cvzf "$LINUXZIP" "$INSTALLER_DIR"
172
rm -Rf "$INSTALLER_DIR"
173
mv "$LINUXZIP" "$OUTPUT_DIR"
174 4679 cesar
175 5841 cesar
176
## Para Windows
177 6098 jmvivo
echo "- Windows"
178
#set -x
179 4692 cesar
cd "$DIR_BASE"/"$DIR_WIN"
180 5841 cesar
rm -Rf "$INSTALLER_DIR"
181
cp -a installer_files "$INSTALLER_DIR"
182 6088 jmvivo
183
cp -aR ../launcher/izpack-launcher-1.3/dist/* "$INSTALLER_DIR"
184
rm -f "$INSTALLER_DIR"/install.bat
185
186 6098 jmvivo
find "$INSTALLER_DIR" -name CVS -type d -exec rm -rf {} 2> /dev/null ';' || true
187 6088 jmvivo
188
## hacemos las sustituciones de la variable
189
if [ -f  "$INSTALLER_DIR"/launcher.ini ] ; then
190
  sed "s/%JARNAME%/$JARNAME/" "$INSTALLER_DIR"/launcher.ini > "$INSTALLER_DIR"/launcher.ini.bak
191
  mv "$INSTALLER_DIR"/launcher.ini.bak "$INSTALLER_DIR"/launcher.ini;
192 4696 cesar
fi
193 6088 jmvivo
194 5841 cesar
mv "$JARNAME" "$INSTALLER_DIR"
195 6088 jmvivo
cd "$INSTALLER_DIR"
196
197
if [ -f  "$DIR_BASE"/"$DIR_WIN"/"$WINDOWSZIP" ] ; then
198
	rm -f "$DIR_BASE"/"$DIR_WIN"/"$WINDOWSZIP"
199
fi
200
"$DIR_BASE"/launcher/7z/7za a -r "$DIR_BASE"/"$DIR_WIN"/"$WINDOWSZIP" *
201
cd -
202
sed "s/%TITLE%/$APPNAME-$BRIEFVERSION\_$BUILDNUMBER/" ../launcher/7z/dist_config.txt > dist_config.txt
203
cat ../launcher/7z/7zS.sfx  dist_config.txt "$WINDOWSZIP" > "$WINDOWSEXE"
204
rm dist_config.txt
205 6183 jmvivo
#rm "$WINDOWSZIP"
206 6088 jmvivo
207 5841 cesar
rm -Rf "$INSTALLER_DIR"
208 6088 jmvivo
209
mv "$WINDOWSEXE" "$OUTPUT_DIR"