1 |
#!/bin/bash |
2 |
|
3 |
# Convert a gtk2-perl program to a standalone .exe, including all |
4 |
# libraries and runtime files required for running as well as required |
5 |
# datafiles. I _literaly_ sold my soul to the devil and paid with blood |
6 |
# for this. Microsoft die die die die die die die die die die die die |
7 |
|
8 |
PERL=c:\\perl |
9 |
GTK2=c:\\gtk |
10 |
|
11 |
( |
12 |
cat <<EOF |
13 |
$PERL/site/lib/Event/idle.pm;lib/Event/idle.pm |
14 |
$PERL/site/lib/Event/io.pm;lib/Event/io.pm |
15 |
$PERL/site/lib/Event/timer.pm;lib/Event/timer.pm |
16 |
$PERL/site/lib/Event/signal.pm;lib/Event/signal.pm |
17 |
$PERL/site/lib/Event/var.pm;lib/Event/var.pm |
18 |
$PERL/site/lib/AnyEvent/Impl/Event.pm;lib/AnyEvent/Impl/Event.pm |
19 |
$GTK2/etc;root/etc |
20 |
$GTK2/share/themes/MS-Windows/gtk-2.0;root/share/themes/MS-Windows/gtk-2.0 |
21 |
$GTK2/lib/gtk-2.0;root/lib/gtk-2.0 |
22 |
$GTK2/lib/pango;root/lib/pango |
23 |
docwiki.pst;root/CFPlus/resources/docwiki.pst |
24 |
win32/splash.bmp;SPLASH.bmp |
25 |
EOF |
26 |
|
27 |
perl -ne '/^(resources\/.*)/ and print "$1;root/CFPlus/$1\n"' <MANIFEST |
28 |
|
29 |
cd $GTK2/bin || exit |
30 |
for dll in \ |
31 |
SDL.dll \ |
32 |
SDL_image.dll \ |
33 |
SDL_mixer.dll \ |
34 |
ogg.dll \ |
35 |
vorbis.dll \ |
36 |
vorbisfile.dll \ |
37 |
jpeg.dll \ |
38 |
xmltok.dll \ |
39 |
xmlparse.dll \ |
40 |
libpng13.dll \ |
41 |
freetype6.dll \ |
42 |
zlib1.dll \ |
43 |
iconv.dll \ |
44 |
intl.dll \ |
45 |
libglib-2.0-0.dll \ |
46 |
libgobject-2.0-0.dll \ |
47 |
libgmodule-2.0-0.dll \ |
48 |
libpango-1.0-0.dll \ |
49 |
libpangoft2-1.0-0.dll \ |
50 |
fontconfig.dll \ |
51 |
libfontconfig-1.dll |
52 |
do |
53 |
echo "$GTK2/bin/$dll;shlib/$dll" |
54 |
done |
55 |
) >addlist |
56 |
cat addlist |
57 |
|
58 |
trap "rm addlist" 0 |
59 |
|
60 |
echo "nmake install??" |
61 |
GUI=--gui |
62 |
$PERL/bin/perl $PERL/bin/pp $GUI --icon win32/client.ico -C -I "//.host/Shared Folders/root/src/Crossfire" -I . -o cfplus.exe -A addlist bin/cfplus |
63 |
|