ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/makebin.linux
(Generate patch)

Comparing deliantra/Deliantra-Client/makebin.linux (file contents):
Revision 1.1 by root, Wed May 9 12:13:02 2007 UTC vs.
Revision 1.17 by root, Mon May 5 20:22:03 2008 UTC

1#!/bin/bash 1#!/bin/bash
2 2
3# Convert a gtk2-perl program to a standalone linux binary 3# Convert a gtk2-perl program to a standalone linux binary
4 4
5EV_EVENTFD=
5PERL=/usr 6PERL=/usr
6PERLLIB=/usr/lib/perl5/ 7PERLLIB=/usr/lib/perl5/
8PANGO=1.5.0
9#PERL=/opt/perl
10#PERLLIB=/opt/perl/lib/perl5/
11#PANGO=1.6.0
12
13for mod in AnyEvent EV JSON-XS Deliantra Compress-LZF BDB; do
14 (
15 cd /root/src/$mod
16 $PERL/bin/perl Makefile.PL </dev/null
17 make clean
18 $PERL/bin/perl Makefile.PL </dev/null
19 make install || exit
20 make clean
21 )
22done
7 23
8( 24(
9 # patch braindamaged pango 25 # patch braindamaged pango
10 perl -pe 's{/u(?=sr/lib(32)?/pango)}{/\x00}g; s{1\.5\.0\x00}{\x00.5.0\x00}g' </usr/lib/libpango-1.0.so.0 >pango-1.0.so.0 26 perl -pe 's{/u(?=sr/lib(32)?/pango)}{/\x00}g; s{\Q'$PANGO'\E\x00}{y.t.u\x00}g' </usr/lib/libpango-1.0.so.0 >pango-1.0.so.0
27 printf "%s" "$PANGO" >pangoversion
11 cat <<EOF 28 cat <<EOF
29pangoversion;root/pangoversion
12pango-1.0.so.0;shlib/i486-linux-gnu-thread-multi/libpango-1.0.so.0 30pango-1.0.so.0;shlib/i486-linux-gnu-thread-multi/libpango-1.0.so.0
13/usr/lib/libglib-2.0.so.0;shlib/i486-linux-gnu-thread-multi/libglib-2.0.so.0 31/usr/lib/libglib-2.0.so.0;shlib/i486-linux-gnu-thread-multi/libglib-2.0.so.0
14/usr/lib/libstdc++.so.6;shlib/i486-linux-gnu-thread-multi/libstdc++.so.6 32/usr/lib/libstdc++.so.6;shlib/i486-linux-gnu-thread-multi/libstdc++.so.6
15/usr/lib/libaudio.so.2;shlib/i486-linux-gnu-thread-multi/libaudio.so.2 33/usr/lib/libaudio.so.2;shlib/i486-linux-gnu-thread-multi/libaudio.so.2
16/lib/libgcc_s.so.1;shlib/i486-linux-gnu-thread-multi/libgcc_s.so.1 34/lib/libgcc_s.so.1;shlib/i486-linux-gnu-thread-multi/libgcc_s.so.1
17/usr/lib/pango/1.5.0;root/usr/lib/pango/1.5.0 35/usr/lib/pango/$PANGO;root/usr/lib/pango/$PANGO
18docwiki.pst;root/CFPlus/resources/docwiki.pst 36docwiki.pst;root/Deliantra/Client/private/resources/docwiki.pst
19EOF 37EOF
20 38
21 perl -ne '/^(resources\/.*)/ and print "$1;root/CFPlus/$1\n"' <MANIFEST 39 perl -ne '/^(resources\/.*)/ and print "$1;root/Deliantra/Client/private/$1\n"' <MANIFEST
22 40
23) >addlist 41) >addlist
24 42
25trap "rm addlist; rm pango-1.0.so.0" 0 43trap "rm addlist pangoversion pango-1.0.so.0" 0
26 44
27perl Makefile.PL 45$PERL/bin/perl Makefile.PL
46make clean
47$PERL/bin/perl Makefile.PL
28make install 48make install || exit
49
50wait
29 51
30LD_LIBRARY_PATH=/lib:/usr/lib \ 52LD_LIBRARY_PATH=/lib:/usr/lib \
31$PERL/bin/pp -C -I /root/src/Crossfire \ 53$PERL/bin/pp -C -I /root/src/Deliantra \
32 -M Event::idle -M Event::io -M Event::timer -M Event::signal -M Event::var \
33 -M AnyEvent::Impl::Event \ 54 -M AnyEvent::Impl::EV \
55 -M attributes \
56 -a "blib/arch/auto/Deliantra/Client/Client.so;lib/auto/Deliantra/Client/Client.so" \
34 -l db-4.4 \ 57 -l db-4.6 \
35 -l glib-2.0 -l gobject-2.0 -l gmodule-2.0 \ 58 -l glib-2.0 -l gobject-2.0 -l gmodule-2.0 \
36 -l pangoft2-1.0 \ 59 -l pangoft2-1.0 \
37 -l SDL -l asound \ 60 -l SDL -l asound \
38 -l SDL_mixer -l vorbisfile -l vorbis -l ogg -l smpeg -l stdc++ \ 61 -l SDL_mixer -l vorbisfile -l vorbis -l ogg -l smpeg -l stdc++ \
39 -l SDL_image -l png12 -l z \ 62 -l SDL_image -l png12 -l z \
40 -o cfplus-gnu-linux-x86.bin -A addlist bin/cfplus 63 -o deliantra-gnu-linux-x86.bin -A addlist bin/deliantra || exit
41 64
65make clean
66
67todata deliantra-gnu-linux-x86.bin
68

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines