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

Comparing deliantra/Deliantra-Client/util/build (file contents):
Revision 1.10 by root, Sat Jan 7 19:29:58 2012 UTC vs.
Revision 1.15 by root, Fri Jan 27 01:43:03 2012 UTC

1#!/bin/sh 1#!/bin/sh
2
3# 1. build
4# 2. gendist
5# 3. ota_publish
6
7if [ "$1" ]; then
8 eval "do_$1=1"
9else
10 do_l32=1
11 do_l64=1
12 do_osx=1
13 do_win=1
14fi
2 15
3############################################################################# 16#############################################################################
4# copy and install modules 17# copy and install modules
5 18
6if ! [ "$SKIP_INSTALL" ] ; then 19if ! [ "$SKIP_INSTALL" ] ; then
7 cpan="Win32::Exe Pod::POM LWP" 20 cpan="Win32::Exe Pod::POM LWP PPI Getopt::Long"
21 mods="common-sense Guard JSON-XS AnyEvent EV BDB Coro Compress-LZF"
22 mods="$mods IO-AIO AnyEvent-AIO AnyEvent-BDB Perl-Strip Perl-LibExtractor Urlader"
23 mods="$mods deliantra/Deliantra deliantra/Deliantra-Client"
24
8 cpan="" 25 cpan=""
9 mods="common-sense Guard JSON-XS AnyEvent EV BDB Coro Compress-LZF IO-AIO Urlader deliantra/Deliantra deliantra/Deliantra-Client"
10 #mods="deliantra/Deliantra-Client"
11 26
12 for host in vm osx105; do 27 copy_to() {
28 host="$1"; shift
29
13 ( 30 (
14 cd /root/src 31 cd /root/src
15 cvsfind $mods 32 cvsfind $mods
16 echo Urlader/liblzf/lzfP.h 33 echo Urlader/liblzf/lzfP.h
17 echo Urlader/liblzf/lzf_c_best.c 34 echo Urlader/liblzf/lzf_c_best.c
18 echo Urlader/liblzf/lzf_d.c 35 echo Urlader/liblzf/lzf_d.c
19 ) | rsync --files-from=- -aessh /root/src $host:src/. || exit 36 ) | rsync --files-from=- -aessh /root/src --chmod=a+rwX $host:src/. || exit
20 done 37 }
21 38
22 osx105() { ssh osx105 "$1"; } 39 osx105() { ssh osx105 "$1"; }
23 linux32() { s32 bash -c "$1"; } 40 linux32() { s32 bash -c "$1"; }
24 linux64() { s64 bash -c "$1"; } 41 linux64() { s64 bash -c "$1"; }
25 windows() { ssh vm ". .setenv; $1"; } 42 windows() { ssh vm ". .setenv; $1"; }
27 upd() { 44 upd() {
28 MAKE="$1"; shift 45 MAKE="$1"; shift
29 PERL="$1"; shift 46 PERL="$1"; shift
30 echo "building on platform <$@>" 47 echo "building on platform <$@>"
31 "$@" ' 48 "$@" '
32 cpan '"$cpan"' </dev/null >log 2>&1 || { cat log; exit 68; } 49 [ "'"$cpan"'" ] && '"$PERL"' -MCPAN -e "CPAN::Shell->notest (install => @ARGV)" '"$cpan"' </dev/null >log 2>&1 || { cat log; exit 68; }
50 export EV_EVENTFD=0
51 export EV_INOTIFY=0
52 export EV_SIGNALFD=0
33 for mod in '"$mods"'; do 53 for mod in '"$mods"'; do
34 echo building $mod 54 echo building $mod
35 cd /root/src/$mod || exit 69 55 cd /root/src/$mod || exit 69
36 rm -rf blib 56 rm -rf blib
37 '$PERL' Makefile.PL </dev/null >/dev/null 2>&1 57 '$PERL' Makefile.PL </dev/null >/dev/null 2>&1
55 true 75 true
56 done 76 done
57 ' || exit 77 ' || exit
58 } 78 }
59 79
60 ( ( upd make /usr/bin/perl linux64 ) >log.linux64 2>&1; cat log.linux64 ) & 80 [ "$do_l64" ] && ( ( upd make /usr/bin/perl linux64 ) >log.linux64 2>&1; cat log.linux64 ) &
61 ( ( upd make /opt/local/bin/perl osx105 ) >log.osx105 2>&1; cat log.osx105 ) & 81 [ "$do_osx" ] && ( copy_to osx105; ( upd make /opt/local/bin/perl osx105 ) >log.osx105 2>&1; cat log.osx105 ) &
62 ( ( upd nmake /c/perl/bin/perl windows ) >log.windows 2>&1; cat log.windows ) & 82 [ "$do_win" ] && ( copy_to vm ; ( upd nmake /c/perl/bin/perl windows ) >log.windows 2>&1; cat log.windows ) &
63 83
64 wait 84 wait
65 85
66 # can't run parallel to 64 bit 86 # can't run parallel to 64 bit
67 ( ( upd make /usr/bin/perl linux32 ) >log.linux32 2>&1; cat log.linux32 ) & 87 [ "$do_l32" ] && ( ( upd make /usr/bin/perl linux32 ) >log.linux32 2>&1; cat log.linux32 ) &
68 88
69 wait 89 wait
70 90
71 rm -f log.* 91 rm -f log.*
72fi 92fi
73 93
74############################################################################# 94#############################################################################
75# gather 95# gather
76 96
77mkdir -p dist 97mkdir -p dist
78util/build.linux 98[ "$do_l32" -o "$do_l64" ] && util/build.linux
79util/build.osx 99[ "$do_osx" ] && util/build.osx
80util/build.windows 100[ "$do_win" ] && util/build.windows
81 101

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines