rake-compiler version 0.9.0 has been released!
* <http://github.com/luislavena/rake-compiler>
= What is rake-compiler?
rake-compiler is first and foremost a productivity tool for Ruby developers.
It's goal is to make the busy developer's life easier by simplifying the
building
and packaging of Ruby extensions by simplifying code and reducing
duplication.
It follows *convention over configuration* by advocating a standardized
build and
package structure for both C and Java based RubyGems.
rake-compiler is the result of many hard-won experiences dealing with
several
diverse RubyGems that provided native extensions for different platforms and
different user configurations in different ways. Details such as
differences in
code portability, differences in code clarity, and differences in project
directory
structure often made it very difficult for newcomers to those RubyGems.
From these challenges, rake-compiler was born with the single-minded goal of
making the busy RubyGem developer's life much less difficult.
== Feature Overview
Some of the benefits rake-compiler provides include:
* No custom rake tasks required. Less code duplication and errors.
* Painlessly build extensions on different platforms (Linux, OSX and
Windows).
* Painlessly build extensions for different Ruby implementations (JRuby,
Rubinius and MRI).
* Allow multiple extensions to be compiled inside the same gem.
* Painlessly build "fat" native gems for Windows users (from Linux or OSX).
* Mimics RubyGems standard installation process, helping as a test
environment.
* Simplifies cross platform extension compilation (targeting Windows from
Linux).
Changes:
=== 0.9.0 / 2013-08-03
* Enhancements:
* Add support for cross-builds and multiple platforms (x86/x64).
Pull #74 [larskanis]
$ rake-compiler cross-ruby VERSION=1.8.7-p371
$ rake-compiler cross-ruby VERSION=1.9.3-p392
$ rake-compiler cross-ruby VERSION=2.0.0-p0
$ rake-compiler cross-ruby VERSION=2.0.0-p0 HOST=x86_64-w64-mingw32
$ rake cross compile RUBY_CC_VERSION=1.8.7:1.9.3:2.0.0
# Rakefile
ext.cross_platform = %w[i386-mingw32 x64-mingw32]
* Support for cross-platform specific options. Pull #74 [larskanis]
# Rakefile
ext.cross_config_options << "--with-common-option"
ext.cross_config_options << {"x64-mingw32" => "--enable-64bits"}
* Bugfixes:
* Correct fat-gems support caused by RubyGems issues. Pull #76 [knu]
* Deprecations:
* Requires minimum Ruby 1.8.7 and RubyGems 1.8.25
* Usage of 'i386-mswin32' needs to be changed to 'i386-mswin32-60'
···
--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry