diff -Nru rake-compiler-0.9.1/History.txt rake-compiler-0.9.2/History.txt
--- rake-compiler-0.9.1/History.txt 2013-08-19 19:36:12.000000000 +0000
+++ rake-compiler-0.9.2/History.txt 2014-01-02 06:40:44.000000000 +0000
@@ -1,3 +1,9 @@
+=== 0.9.2 / 2013-11-14
+
+* Bugfixes:
+ * Pre-load resolver to avoid Bundler blow up during cross-compilation
+ Pull #83 [larskanis]
+
=== 0.9.1 / 2013-08-03
* Bugfixes:
diff -Nru rake-compiler-0.9.1/README.rdoc rake-compiler-0.9.2/README.rdoc
--- rake-compiler-0.9.1/README.rdoc 2013-08-19 19:36:12.000000000 +0000
+++ rake-compiler-0.9.2/README.rdoc 2014-01-02 06:40:44.000000000 +0000
@@ -225,7 +225,16 @@
take advantage of GCC's host/target capabilities to build 'target' binaries on
different 'host' OS's.
-=== How I do this from Linux or OSX?
+=== How do I do this from Linux or OSX?
+
+==== The Easy Way
+
+Use rake-compiler-dev-box, a virtual machine provisioned with all the necessary
+build tools. With one command, you can cross-compile and package your gem into
+native, Java, and Windows fat binaries (with 1.8, 1.9, and 2.0 support). See
+https://github.com/tjschuck/rake-compiler-dev-box for more information.
+
+==== The Manual Way
In addition to having the development tool chain installed (GCC), you also need to
install your platform's mingw32 cross compilation package.
@@ -256,7 +265,7 @@
You can add this to your .profile to avoid the repitition.
-=== I've got my tool-chain installed, now what?
+==== I've got my tool-chain installed, now what?
First, you need to build Ruby for Windows on your Linux or OSX system.
@@ -292,7 +301,7 @@
Please consult the documentation and website of the MinGW package provider before
reporting any issues.
-=== OK, let's cross compile some gems!
+==== OK, let's cross compile some gems!
Now, you only need specify a few additional options in your extension definition:
@@ -314,7 +323,7 @@
To target gems for MRI Ruby's current official distribution, please force the
platform to the one (i386-mswin32-60) previously shown.
-=== Warning, magician about to do some tricks, don't blink!
+==== Warning, magician about to do some tricks, don't blink!
Cross compiling is still very simple:
@@ -326,7 +335,7 @@
And you're done, yeah.
-=== But wait, there's more
+==== But wait, there's more
You can specify which version of Ruby to build the extension against:
@@ -372,7 +381,7 @@
end user installing the gem. It has also been implemented successfully in
several projects.
-=== What are you talking about? (Give me examples)
+== What are you talking about? (Give me examples)
I know all the above sounds like a complete foreign language (it does even for me!).
So, what if I show you some examples?
diff -Nru rake-compiler-0.9.1/debian/changelog rake-compiler-0.9.2/debian/changelog
--- rake-compiler-0.9.1/debian/changelog 2013-09-12 12:58:19.000000000 +0000
+++ rake-compiler-0.9.2/debian/changelog 2014-01-14 13:58:27.000000000 +0000
@@ -1,3 +1,10 @@
+rake-compiler (0.9.2-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.9.2
+ * Bump Standard Version: 3.9.5
+
+ -- Youhei SASAKI Tue, 14 Jan 2014 22:58:25 +0900
+
rake-compiler (0.9.1-2) unstable; urgency=low
* Drop Depends: rubygems
diff -Nru rake-compiler-0.9.1/debian/control rake-compiler-0.9.2/debian/control
--- rake-compiler-0.9.1/debian/control 2013-09-12 12:54:01.000000000 +0000
+++ rake-compiler-0.9.2/debian/control 2014-01-14 13:57:57.000000000 +0000
@@ -4,7 +4,7 @@
Maintainer: Debian Ruby Extras Maintainers
Uploaders: Youhei SASAKI , Taku YASUI
Build-Depends: debhelper (>= 7.0.50~), gem2deb (>= 0.3), rake, ruby-rspec
-Standards-Version: 3.9.4
+Standards-Version: 3.9.5
Vcs-Git: git://anonscm.debian.org/pkg-ruby-extras/rake-compiler.git
Vcs-Browser: http://anonscm.debian.org/gitweb?p=pkg-ruby-extras/rake-compiler.git;a=summary
Homepage: http://github.com/luislavena/rake-compiler
diff -Nru rake-compiler-0.9.1/lib/rake/extensiontask.rb rake-compiler-0.9.2/lib/rake/extensiontask.rb
--- rake-compiler-0.9.1/lib/rake/extensiontask.rb 2013-08-19 19:36:12.000000000 +0000
+++ rake-compiler-0.9.2/lib/rake/extensiontask.rb 2014-01-02 06:40:44.000000000 +0000
@@ -380,6 +380,17 @@
# copy mkmf from cross-ruby location
file "#{tmp_path}/mkmf.rb" => [mkmf_file] do |t|
cp t.prerequisites.first, t.name
+ if ruby_ver < "1.9" && "1.9" <= RUBY_VERSION
+ File.open(t.name, 'r+t') do |f|
+ content = f.read
+ content.sub!(/^( break )\*(defaults)$/, '\\1\\2.first')
+ content.sub!(/^( return )\*(defaults)$/, '\\1\\2.first')
+ content.sub!(/^( mfile\.)print( configuration\(srcprefix\))$/, '\\1puts\\2')
+ f.rewind
+ f.write content
+ f.truncate(f.tell)
+ end
+ end
end
# genearte fake.rb for different ruby versions
@@ -471,6 +482,11 @@
def fake_rb(platform, version)
<<-FAKE_RB
+ # Pre-load resolver library before faking, in order to avoid error
+ # "cannot load such file -- win32/resolv" when it is required later on.
+ # See also: https://github.com/tjschuck/rake-compiler-dev-box/issues/5
+ require 'resolv'
+
class Object
remove_const :RUBY_PLATFORM
remove_const :RUBY_VERSION
diff -Nru rake-compiler-0.9.1/metadata.yml rake-compiler-0.9.2/metadata.yml
--- rake-compiler-0.9.1/metadata.yml 2013-08-19 19:36:12.000000000 +0000
+++ rake-compiler-0.9.2/metadata.yml 2014-01-02 06:40:44.000000000 +0000
@@ -1,13 +1,13 @@
--- !ruby/object:Gem::Specification
name: rake-compiler
version: !ruby/object:Gem::Version
- hash: 57
+ hash: 63
prerelease:
segments:
- 0
- 9
- - 1
- version: 0.9.1
+ - 2
+ version: 0.9.2
platform: ruby
authors:
- Luis Lavena
@@ -15,7 +15,7 @@
bindir: bin
cert_chain: []
-date: 2013-08-03 00:00:00 Z
+date: 2013-11-14 00:00:00 Z
dependencies:
- !ruby/object:Gem::Dependency
version_requirements: &id001 !ruby/object:Gem::Requirement
diff -Nru rake-compiler-0.9.1/tasks/gem.rake rake-compiler-0.9.2/tasks/gem.rake
--- rake-compiler-0.9.1/tasks/gem.rake 2013-08-19 19:36:12.000000000 +0000
+++ rake-compiler-0.9.2/tasks/gem.rake 2014-01-02 06:40:44.000000000 +0000
@@ -3,7 +3,7 @@
GEM_SPEC = Gem::Specification.new do |s|
# basic information
s.name = "rake-compiler"
- s.version = "0.9.1"
+ s.version = "0.9.2"
s.platform = Gem::Platform::RUBY
# description and details