~ubuntu-branches/ubuntu/trusty/enigma/trusty-proposed

« back to all changes in this revision

Viewing changes to etc/mingw32-dist.sh

  • Committer: Package Import Robot
  • Author(s): Erich Schubert
  • Date: 2013-04-06 14:54:02 UTC
  • mfrom: (1.1.10)
  • Revision ID: package-import@ubuntu.com-20130406145402-jgjrtk7hac8gtvza
Tags: 1.20-dfsg.1-1
* New upstream release (Closes: #704595)
  (Repacked: dropped zipios++ source and main menu music)
* Update watch file, sf.net again.
* Fix documentation links (Closes: #653508)
* Conflict with enigma-level-previews to encourage deinstallation
  (Pregenerated level previews were only used with version 1.01)
* Use dh7 for building instead of CDBS
* Update to policy 3.9.4.0 (no changes)
* Register documentation with doc-base

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/sh
 
2
#
 
3
# This file creates a w32 binary release
 
4
#
 
5
VERSION=1.20
 
6
DDIR="`pwd`/Enigma-$VERSION"
 
7
SDIR=..
 
8
BDIR=..
 
9
DLLDEFAULTS="SDL SDL_image SDL_mixer SDL_ttf jpeg zlib1 libfreetype-6 libogg-0 libpng12-0 libvorbis-0 libvorbisfile-3 mikmod libcurl-4"
 
10
 
 
11
if [ "$ENIGMADEVDLLS" != "" ]; then
 
12
  DLLS=$ENIGMADEVDLLS
 
13
else
 
14
  DLLS=$DLLDEFAULTS
 
15
fi
 
16
 
 
17
STRIP=
 
18
if [ "$STRIP" = "" ]; then
 
19
  STRIP=strip
 
20
fi
 
21
 
 
22
if [ "$ENIGMADEVCROSSPREFIX" != "" ]; then
 
23
  PATH="$ENIGMADEVCROSSPREFIX/bin:$PATH"
 
24
fi
 
25
 
 
26
# copy text file with newline convertion if necessary
 
27
function cptext {
 
28
    $NLCVT dos2unix $SDIR/$1 >$DDIR/$2 2> /dev/null
 
29
    if test $? -ne 0; then
 
30
        $NLCVT unix2dos $SDIR/$1 >$DDIR/$2
 
31
    else
 
32
        cp $SDIR/$1 $DDIR/$2
 
33
    fi
 
34
}
 
35
 
 
36
function cpfile {
 
37
        cp $SDIR/$1 $DDIR/$2
 
38
}
 
39
 
 
40
function cpbuiltfile {
 
41
        cp $BDIR/$1 $DDIR/$2
 
42
}
 
43
 
 
44
# copy files of an extention with newline convertion to lf if necessary
 
45
function cplffiles {
 
46
    for f in `(cd $SDIR/$1 && ls *.$3)`; do
 
47
        $NLCVT dos2unix $SDIR/$1/$f >$DDIR/$2/$f 2> /dev/null
 
48
        if test $? -ne 0; then
 
49
            cp $SDIR/$1/$f $DDIR/$2/$f
 
50
        fi
 
51
    done
 
52
}
 
53
 
 
54
#
 
55
# Copy levels
 
56
#
 
57
function copy_levels
 
58
{
 
59
    echo "... copying levels"
 
60
    mkdir $DDIR/data/levels
 
61
    cp -p $SDIR/data/levels/*.png $DDIR/data/levels
 
62
    cplffiles data/levels data/levels lua
 
63
    cplffiles data/levels data/levels txt
 
64
    cplffiles data/levels data/levels xml
 
65
    for folder in `(cd $SDIR/data/levels && ls -F)| grep / `; do 
 
66
        mkdir $DDIR/data/levels/$folder; 
 
67
        cp -p $SDIR/data/levels/$folder/*.png $DDIR/data/levels/$folder
 
68
        cplffiles data/levels/$folder data/levels/$folder lua
 
69
        cplffiles data/levels/$folder data/levels/$folder txt
 
70
        cplffiles data/levels/$folder data/levels/$folder xml
 
71
    done
 
72
    for folder in `(cd $SDIR/data/levels/soko && ls -F)| grep / `; do 
 
73
        mkdir $DDIR/data/levels/soko/$folder; 
 
74
        cp -p $SDIR/data/levels/soko/$folder/*.png $DDIR/data/levels/soko/$folder
 
75
        cplffiles data/levels/soko/$folder data/levels/soko/$folder lua
 
76
        cplffiles data/levels/soko/$folder data/levels/soko/$folder txt
 
77
        cplffiles data/levels/soko/$folder data/levels/soko/$folder xml
 
78
    done
 
79
}
 
80
 
 
81
function copy_data
 
82
{
 
83
    echo "... copying data files"
 
84
    mkdir $DDIR/data
 
85
    cplffiles data data lua
 
86
    cplffiles data data xml
 
87
    for folder in `(cd $SDIR && ls -F data)| grep / | grep gfx`; do 
 
88
        mkdir $DDIR/data/$folder; 
 
89
        cp -p $SDIR/data/$folder/*.{png,jpg} $DDIR/data/$folder
 
90
    done
 
91
    mkdir $DDIR/data/gfx/flags25x15
 
92
    cp -p $SDIR/data/gfx/flags25x15/*.png $DDIR/data/gfx/flags25x15
 
93
    mkdir $DDIR/data/schemas
 
94
    cplffiles data/schemas data/schemas xsd
 
95
    cplffiles data/schemas data/schemas xml
 
96
    copy_levels
 
97
    mkdir $DDIR/data/fonts
 
98
    cp -p $SDIR/data/fonts/*.{bmf,png,txt,ttf} $DDIR/data/fonts
 
99
    mkdir $DDIR/data/music
 
100
    mkdir $DDIR/data/music/menu
 
101
    cp -p $SDIR/data/music/menu/*.{ogg,s3m} $DDIR/data/music/menu
 
102
    mkdir $DDIR/data/music
 
103
    mkdir $DDIR/data/music/game
 
104
    cp -p $SDIR/data/music/game/*.{ogg,s3m} $DDIR/data/music/game
 
105
    mkdir $DDIR/data/soundsets 
 
106
    mkdir $DDIR/data/soundsets/enigma 
 
107
    cp -p $SDIR/data/soundsets/enigma/*.wav $DDIR/data/soundsets/enigma
 
108
    
 
109
    echo "... copying locales:"
 
110
    mkdir $DDIR/data/locale
 
111
    for lang in de fr nl it es sv ru hu pt fi uk be el pl; do
 
112
        echo "$lang.gmo"
 
113
        mkdir "$DDIR/data/locale/$lang"
 
114
        mkdir "$DDIR/data/locale/$lang/LC_MESSAGES"
 
115
        cp -p $SDIR/po/$lang.gmo $DDIR/data/locale/$lang/LC_MESSAGES/enigma.mo
 
116
    done
 
117
}
 
118
 
 
119
#
 
120
# Copy documentation files
 
121
#
 
122
function copy_doc
 
123
{
 
124
    echo "... copying documentation"
 
125
    mkdir $DDIR/images $DDIR/images/flags25x15
 
126
    cptext README                       README
 
127
    cptext COPYING                      COPYING
 
128
    cptext CHANGES                      CHANGES
 
129
    cptext ACKNOWLEDGEMENTS             ACKNOWLEDGEMENTS
 
130
    cptext doc/index.html               index.html
 
131
    cptext doc/gpl.txt                  gpl.txt
 
132
    cptext doc/lgpl.txt                 lgpl.txt
 
133
    cptext doc/images/enigma.css        images/enigma.css
 
134
    cpfile doc/images/nav_enigma.gif    images/
 
135
    cpfile doc/images/nav_cornerul.gif  images/
 
136
    cpfile doc/images/nav_cornerur.gif  images/
 
137
    cpfile doc/images/favicon.png       images/
 
138
    cpfile doc/images/menu_bg.jpg       images/
 
139
    cpfile doc/images/flags25x15/*.png  images/flags25x15
 
140
    cptext etc/README-SDL.txt           README-SDL.txt
 
141
    cptext doc/reference/ant_lua.txt    reference/ant_lua.txt
 
142
    cptext doc/reference/ConceptLuaAPI2.txt     reference/ConceptLuaAPI2.txt
 
143
    cptext doc/reference/sounds.txt     reference/sounds.txt
 
144
    cptext doc/reference/soundset.lua   reference/soundset.lua
 
145
    cpfile doc/reference/lua2xml        reference/
 
146
    cpfile doc/reference/xml2lua        reference/
 
147
}
 
148
 
 
149
#
 
150
# Copy user manual
 
151
#
 
152
function copy_manual
 
153
{
 
154
    echo "... copying user manual"
 
155
    mkdir $DDIR/manual $DDIR/manual/images
 
156
    cpfile doc/manual/images/*.png manual/images
 
157
    cpbuiltfile doc/manual/*.html manual
 
158
}
 
159
 
 
160
#
 
161
# Copy reference manual
 
162
#
 
163
function copy_refman
 
164
{
 
165
    echo "... copying reference manual"
 
166
    mkdir $DDIR/reference $DDIR/reference/images
 
167
    cpfile doc/reference/images/*.png reference/images
 
168
    cpbuiltfile doc/reference/*.html reference
 
169
}
 
170
 
 
171
#
 
172
# Copy windows DLLs
 
173
#
 
174
function copy_dlls
 
175
{
 
176
    echo "... copying DLLs: $DLLS"
 
177
    for f in $DLLS; do
 
178
        ff="$f.dll"
 
179
        if [ -f $ff ]; then
 
180
            cp $ff $DDIR/
 
181
        else
 
182
            echo "*** DLL missing: $ff ***"
 
183
        fi
 
184
    done
 
185
}
 
186
 
 
187
################
 
188
# Build Enigma #
 
189
################
 
190
(cd .. ; make all) >/dev/null
 
191
 
 
192
echo "----------------------------------------------------------------"
 
193
echo "                 Building Enigma-$VERSION.zip"
 
194
echo "----------------------------------------------------------------"
 
195
 
 
196
 
 
197
###############
 
198
# Find programs
 
199
###############
 
200
 
 
201
UPX=`which upx`
 
202
STRIPFULLPATH=`which $STRIP`
 
203
NLCVT="perl $SDIR/etc/nlcvt.pl"
 
204
 
 
205
if [ ! ${UPX} ]; then
 
206
  echo "*** Program not found: upx" 
 
207
  UPX="echo"
 
208
fi
 
209
 
 
210
if [ ! ${STRIPFULLPATH} ]; then
 
211
  echo "*** Program not found: strip"
 
212
  STRIP="echo"
 
213
fi
 
214
 
 
215
###################
 
216
# Copy everything #
 
217
###################
 
218
rm -rf $DDIR
 
219
mkdir $DDIR
 
220
 
 
221
copy_data
 
222
copy_manual
 
223
copy_refman
 
224
copy_doc
 
225
 
 
226
cp $BDIR/etc/enigma.nsi $DDIR/enigma.nsi
 
227
cp $BDIR/etc/enigma-inst-lang.nsh $DDIR/enigma-inst-lang.nsh
 
228
cp $BDIR/etc/enigma-inst-opt.ini $DDIR/enigma-inst-opt.ini
 
229
cp $BDIR/etc/enigma-inst-welcome.bmp $DDIR/enigma-inst-welcome.bmp
 
230
cp -p $BDIR/src/enigma.exe $DDIR/enigma.exe
 
231
 
 
232
copy_dlls
 
233
$STRIP "$DDIR/enigma.exe"
 
234
$UPX $DDIR/enigma.exe >/dev/null
 
235
 
 
236
rm -f Enigma-w32-$VERSION.zip
 
237
zip -r Enigma-w32-$VERSION.zip "Enigma-$VERSION" >/dev/null
 
238
rm -rf $DDIR
 
239
 
 
240
echo "----------------------------------------------------------------"
 
241
echo "                           DONE"
 
242
echo "----------------------------------------------------------------"