Core commit. Compile and run on the OpenPandora
[mupen64plus-pandora.git] / source / mupen64plus-core / tools / build_bundle_bin.sh
1 #!/bin/sh
2 #/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
3 # *   Mupen64plus - build_bundle_bin.sh                                     *
4 # *   Mupen64Plus homepage: http://code.google.com/p/mupen64plus/           *
5 # *   Copyright (C) 2009-2013 Richard Goedeken                              *
6 # *                                                                         *
7 # *   This program is free software; you can redistribute it and/or modify  *
8 # *   it under the terms of the GNU General Public License as published by  *
9 # *   the Free Software Foundation; either version 2 of the License, or     *
10 # *   (at your option) any later version.                                   *
11 # *                                                                         *
12 # *   This program is distributed in the hope that it will be useful,       *
13 # *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
14 # *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
15 # *   GNU General Public License for more details.                          *
16 # *                                                                         *
17 # *   You should have received a copy of the GNU General Public License     *
18 # *   along with this program; if not, write to the                         *
19 # *   Free Software Foundation, Inc.,                                       *
20 # *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.          *
21 # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
22
23 # terminate the script if any commands return a non-zero error code
24 set -e
25
26 if [ $# -lt 2 ]; then
27     echo "Usage: build_bundle_bin.sh <tag-name> <build-name> [<makefile_param> ...]"
28     exit 1
29 fi
30
31 TEMPDIR="mupen64plus-temp-build"
32
33 rm -rf ${TEMPDIR}
34 mkdir -p ${TEMPDIR}/source
35 cd ${TEMPDIR}/source
36
37 echo "************************************ Downloading Mupen64Plus module source code"
38 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-core
39 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-rom
40 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-ui-console
41 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-audio-sdl
42 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-input-sdl
43 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-rsp-hle
44 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-video-rice
45 hg clone -r $1 http://bitbucket.org/richard42/mupen64plus-video-glide64mk2
46 shift
47 for dirname in ./mupen64plus-*; do rm -rf ${dirname}/.hg*; done
48
49 OUTPUTDIR="mupen64plus-bundle-$1"
50 shift
51
52 echo "************************************ Building Mupen64Plus modules"
53 cd ..
54 tar xzvf source/mupen64plus-core/tools/m64p_helper_scripts.tar.gz
55
56 ./m64p_build.sh COREDIR=/usr/local/lib/ $@
57 mv "test" "${OUTPUTDIR}"
58
59 echo "************************************ Creating archive"
60 cp source/mupen64plus-core/tools/install_binary_bundle.sh "${OUTPUTDIR}/install.sh"
61 cp source/mupen64plus-core/tools/uninstall_binary_bundle.sh "${OUTPUTDIR}/uninstall.sh"
62
63 tar c "${OUTPUTDIR}" --owner 0 --group 0 --numeric-owner | gzip -n > "../${OUTPUTDIR}.tar.gz"
64 cd ..
65 rm -rf "${TEMPDIR}"