-
-
Notifications
You must be signed in to change notification settings - Fork 903
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Script
build_all
to build gems for all our supported platforms.
- Loading branch information
1 parent
d8a7824
commit 840e802
Showing
1 changed file
with
58 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
#! /usr/bin/env bash | ||
# | ||
# script to build gems for all relevant platforms: | ||
# - MRI et al (standard gem) | ||
# - windows (x86-mingw32 and x86-msin32-60) | ||
# - jruby | ||
# | ||
# prerequisite is the mingw32 packages. | ||
# on ubuntu, `sudo apt-get install mingw32` | ||
# for others, read up at https://github.com/luislavena/rake-compiler | ||
# | ||
|
||
# Load RVM into a shell session *as a function* | ||
if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then | ||
source "$HOME/.rvm/scripts/rvm" | ||
elif [[ -s "/usr/local/rvm/scripts/rvm" ]] ; then | ||
source "/usr/local/rvm/scripts/rvm" | ||
else | ||
echo "ERROR: An RVM installation was not found.\n" | ||
fi | ||
|
||
function rvm_use { | ||
current_ruby=$1 | ||
rvm use "${1}@nokogiri" --create | ||
} | ||
|
||
set -o errexit | ||
|
||
# initialize | ||
rvm_use 1.9.3 | ||
rm -rf tmp pkg | ||
bundle exec rake clean clobber | ||
|
||
# holding pen | ||
rm -rf gems | ||
mkdir -p gems | ||
|
||
# MRI | ||
rvm_use 1.9.3 | ||
bundle exec rake gem | ||
cp -v pkg/nokogiri*.gem gems # should only be one at this point in the script | ||
|
||
# windows | ||
rvm_use 1.8.7 | ||
bundle exec rake-compiler cross-ruby VERSION=1.8.7-p330 | ||
bundle exec rake-compiler cross-ruby VERSION=1.9.2-p136 | ||
bundle exec rake cross | ||
rake gem:windows # don't use bundler here. it blows up. *shrug* | ||
cp -v pkg/nokogiri*x86-{mingw32,mswin32}*.gem gems | ||
|
||
# jruby | ||
rvm_use jruby-1.6.5 | ||
bundle exec rake clean clobber | ||
rvm_use 1.8.7 | ||
bundle exec rake generate | ||
rvm_use jruby-1.6.5 | ||
bundle exec rake gem | ||
cp -v pkg/nokogiri*java.gem gems |