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.10 by root, Wed Dec 26 18:09:30 2007 UTC vs.
Revision 1.18 by root, Mon Sep 29 03:05:00 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/
7PANGO=1.5.0 8PANGO=1.5.0
8#PERL=/opt/perl 9#PERL=/opt/perl
9#PERLLIB=/opt/perl/lib/perl5/ 10#PERLLIB=/opt/perl/lib/perl5/
10#PANGO=1.6.0 11#PANGO=1.6.0
11 12
12for mod in AnyEvent EV JSON-XS Deliantra Compress-LZF BDB; do 13for mod in AnyEvent EV JSON-XS Deliantra Compress-LZF BDB; do
13 ( 14 (
14 cd /root/src/$mod 15 cd /root/src/$mod
15 $PERL/bin/perl Makefile.PL 16 $PERL/bin/perl Makefile.PL </dev/null
16 make install
17 make clean 17 make clean
18 $PERL/bin/perl Makefile.PL </dev/null
19 make install || exit
20 make clean
18 ) & 21 )
19done 22done
20 23
21( 24(
22 # patch braindamaged pango 25 # patch braindamaged pango
23 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 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
28/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
29/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
30/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
31/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
32/usr/lib/pango/$PANGO;root/usr/lib/pango/$PANGO 35/usr/lib/pango/$PANGO;root/usr/lib/pango/$PANGO
33docwiki.pst;root/CFPlus/resources/docwiki.pst 36docwiki.pst;root/Deliantra/Client/private/resources/docwiki.pst
34EOF 37EOF
35 38
36 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
37 40
38) >addlist 41) >addlist
39 42
40trap "rm addlist pangoversion pango-1.0.so.0" 0 43trap "rm addlist pangoversion pango-1.0.so.0" 0
41 44
42$PERL/bin/perl Makefile.PL 45$PERL/bin/perl Makefile.PL
46make clean
47$PERL/bin/perl Makefile.PL
43make install 48make install || exit
44 49
45wait 50wait
46 51
47LD_LIBRARY_PATH=/lib:/usr/lib \ 52LD_LIBRARY_PATH=/lib:/usr/lib \
48$PERL/bin/pp -C -I /root/src/Deliantra \ 53$PERL/bin/pp -C -I /root/src/Deliantra \
49 -M AnyEvent::Impl::EV \ 54 -M AnyEvent::Impl::EV \
55 -M attributes \
56 -a "blib/arch/auto/Deliantra/Client/Client.so;lib/auto/Deliantra/Client/Client.so" \
50 -l db-4.4 \ 57 -l db-4.6 \
51 -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 \
52 -l pangoft2-1.0 \ 59 -l pangoft2-1.0 \
53 -l SDL -l asound \ 60 -l SDL -l asound \
54 -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++ \
55 -l SDL_image -l png12 -l z \ 62 -l SDL_image -l png12 -l z \
56 -o deliantra-gnu-linux-x86.bin -A addlist bin/deliantra 63 -o deliantra-gnu-linux-x86 -A addlist bin/deliantra || exit
57 64
65make clean
66
67tar cf deliantra-gnu-linux-x86.tar deliantra-gnu-linux-x86
68gzip -9vf deliantra-gnu-linux-x86.tar
58todata deliantra-gnu-linux-x86.bin 69todata deliantra-gnu-linux-x86.tar.gz
70

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines