blob: 2d97b4068bc646340ca2bfa5ab6b24fa368e26dd [file] [log] [blame]
Jan Tattermusch44372132016-02-01 16:20:03 -08001#!/bin/bash
2# Copyright 2016, Google Inc.
3# All rights reserved.
4#
5# Redistribution and use in source and binary forms, with or without
6# modification, are permitted provided that the following conditions are
7# met:
8#
9# * Redistributions of source code must retain the above copyright
10# notice, this list of conditions and the following disclaimer.
11# * Redistributions in binary form must reproduce the above
12# copyright notice, this list of conditions and the following disclaimer
13# in the documentation and/or other materials provided with the
14# distribution.
15# * Neither the name of Google Inc. nor the names of its
16# contributors may be used to endorse or promote products derived from
17# this software without specific prior written permission.
18#
19# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Nicolas "Pixel" Nobleec187ce2016-02-06 01:45:46 +010030set -ex
Nicolas "Pixel" Noble4bb713b2016-02-06 02:09:11 +010031
32SYSTEM=`uname | cut -f 1 -d_`
33
Nicolas "Pixel" Nobleec187ce2016-02-06 01:45:46 +010034cd $(dirname $0)/../..
35set +ex
36[[ -s /etc/profile.d/rvm.sh ]] && . /etc/profile.d/rvm.sh
Nicolas "Pixel" Noble2cbc5452016-02-06 07:47:32 +010037[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Jan Tattermusch44372132016-02-01 16:20:03 -080038set -ex
39
Nicolas "Pixel" Nobleec187ce2016-02-06 01:45:46 +010040if [ "$SYSTEM" == "MSYS" ] ; then
41 SYSTEM=MINGW32
42fi
43if [ "$SYSTEM" == "MINGW64" ] ; then
44 SYSTEM=MINGW32
45fi
Jan Tattermusch44372132016-02-01 16:20:03 -080046
Nicolas "Pixel" Nobleec187ce2016-02-06 01:45:46 +010047if [ "$SYSTEM" == "MINGW32" ] ; then
48 echo "Need Linux to build the Windows ruby gem."
49 exit 1
50fi
Jan Tattermusch44372132016-02-01 16:20:03 -080051
Nicolas "Pixel" Noble4bb713b2016-02-06 02:09:11 +010052set +ex
Nicolas "Pixel" Noble32ee36d2016-02-06 07:45:04 +010053rvm use default
Nicolas "Pixel" Noblebb439ef2016-02-06 06:27:00 +010054gem install bundler --update
Nicolas "Pixel" Nobleb9e66cd2016-02-06 06:24:16 +010055bundle install
Nicolas "Pixel" Noble4bb713b2016-02-06 02:09:11 +010056set -ex
Nicolas "Pixel" Nobleec187ce2016-02-06 01:45:46 +010057
Nicolas "Pixel" Nobleb9e66cd2016-02-06 06:24:16 +010058rake gem:native
Nicolas "Pixel" Nobleec187ce2016-02-06 01:45:46 +010059
60if [ "$SYSTEM" == "Darwin" ] ; then
Nicolas "Pixel" Noblea6772082016-02-06 06:35:29 +010061 rm `ls pkg/*.gem | grep -v darwin`
Nicolas "Pixel" Nobleec187ce2016-02-06 01:45:46 +010062fi
Jan Tattermusch44372132016-02-01 16:20:03 -080063
64mkdir -p artifacts
65
66cp pkg/*.gem artifacts