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.7 by root, Tue Nov 27 09:49:51 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
12(cd /root/src/JSON-XS ; $PERL/bin/perl Makefile.PL; make install; make clean) & 13for mod in AnyEvent EV JSON-XS Deliantra Compress-LZF BDB; do
13(cd /root/src/Crossfire; $PERL/bin/perl Makefile.PL; make install; make clean) & 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
14 23
15( 24(
16 # patch braindamaged pango 25 # patch braindamaged pango
17 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
18 printf "%s" "$PANGO" >pangoversion 27 printf "%s" "$PANGO" >pangoversion
22/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
23/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
24/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
25/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
26/usr/lib/pango/$PANGO;root/usr/lib/pango/$PANGO 35/usr/lib/pango/$PANGO;root/usr/lib/pango/$PANGO
27docwiki.pst;root/CFPlus/resources/docwiki.pst 36docwiki.pst;root/Deliantra/Client/private/resources/docwiki.pst
28EOF 37EOF
29 38
30 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
31 40
32) >addlist 41) >addlist
33 42
34trap "rm addlist pangoversion pango-1.0.so.0" 0 43trap "rm addlist pangoversion pango-1.0.so.0" 0
35 44
36$PERL/bin/perl Makefile.PL 45$PERL/bin/perl Makefile.PL
46make clean
47$PERL/bin/perl Makefile.PL
37make install 48make install || exit
38 49
39wait 50wait
40 51
41LD_LIBRARY_PATH=/lib:/usr/lib \ 52LD_LIBRARY_PATH=/lib:/usr/lib \
42$PERL/bin/pp -C -I /root/src/Crossfire \ 53$PERL/bin/pp -C -I /root/src/Deliantra \
43 -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" \
44 -l db-4.4 \ 57 -l db-4.6 \
45 -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 \
46 -l pangoft2-1.0 \ 59 -l pangoft2-1.0 \
47 -l SDL -l asound \ 60 -l SDL -l asound \
48 -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++ \
49 -l SDL_image -l png12 -l z \ 62 -l SDL_image -l png12 -l z \
50 -o deliantra-gnu-linux-x86.bin -A addlist bin/deliantra 63 -o deliantra-gnu-linux-x86 -A addlist bin/deliantra || exit
51 64
65make clean
66
67tar cf deliantra-gnu-linux-x86.tar deliantra-gnu-linux-x86
68gzip -9vf deliantra-gnu-linux-x86.tar
52todata deliantra-gnu-linux-x86.bin 69todata deliantra-gnu-linux-x86.tar.gz
70

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines