[ANN] rake-compiler 0.6.0 Released

L

Luis Lavena

rake-compiler version 0.6.0 has been released!

* <http://github.com/luislavena/rake-compiler>
* <http://rubyforge.org/projects/rake-compiler>

=3D rake-compiler

rake-compiler aims to help Gem developers while dealing with Ruby C
extensions, simplifying the code and reducing the duplication.

It follows *convention over configuration* and set an standardized
structure to build and package C extensions in your gems.

This is the result of experiences dealing with several Gems that required
native extensions across platforms and different user configurations
where details like portability and clarity of code were lacking.

=3D=3D An Overview

Let's summarize what rake-compiler provides:

* No custom rake tasks required. Less code duplication and errors.

* Painlessly build extensions on different platforms (Linux, OSX and Window=
s).

* Allow multiple extensions be compiled inside the same gem.

* Mimics RubyGems installation process, so helps as test environment.

* Simplify cross platform compilation of extensions (target Windows from Li=
nux).

Changes:

=3D=3D=3D 0.6.0 / 2009-07-25

* Enhancements
* Implemented 'fat-binaries' generation for cross compiling
(for now). Thanks to Aaron Patterson for the suggestion and
original idea.

rake cross native gem RUBY_CC_VERSION=3D1.8.6:1.9.1

Will package extensions for 1.8 and 1.9 versions of Ruby.
* Can now cross compile extensions for 1.9 using 1.8.x as base.
Be warned: works from 1.8 to 1.9, but not if your default ruby is 1.9

rake cross compile RUBY_CC_VERSION=3D1.9.1

* Allow simultaneous versions of Ruby to compile extensions.
This change allow 1.8.x compiles co-exist with 1.9.x ones
and don't override each other.

Please perform <tt>rake clobber</tt> prior compiling again.
* Allow optional source file URL for cross-compile tasks.
(Thanks to deepj for the patches)

rake-compiler cross-ruby VERSION=3D1.9.1-p0
SOURCE=3Dhttp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p0.tar.bz2

* Bugfixes
* Removed strict versioning for gems since it clash with fat binaries.
From now on, if your gem only targets a specific version of Ruby, pleas=
e
indicate it in the Gem::Specification (<tt>required_ruby_version</tt>)

--=20
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=E9ry
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,065
Latest member
OrderGreenAcreCBD

Latest Threads

Top