On Fri, Sep 10, 2010 at 6:51 PM, James Tucker <jftuc...@gmail.com> wrote:
>
> I have proposed a number of times moving toward a single script invocation 
> (maybe with some build helpers) rather than having specifically matched build 
> types.
>
> So, that would be moving towards having spec.extensions simply call:
>
>        spec.extensions.each { |e| system Gem.ruby, e }
>
> We could have very simple helpers for migration, like so:
>
>        require "rubygems/extconf_make" # calls at_exit { system ENV['make'] 
> || 'make' }
>        require "rubygems/mkrf_make"    # calls at_exit { system "rake" } # 
> n.b. the correct path and bin name ofc.
>
> You get the idea. We would migrate the old methods out in the long term, and 
> then deprecate these. This way RubyGems can drop all specific build methods, 
> and simply execute a single ruby script for each extension in the gem. If 
> further utilities are required, they can be provided by the Gem api, or 
> separate gems which may be dependencies (for example an extended mkmf, some 
> helpers from rake-compiler, or the like).
>

Interesting idea, but RubyGems specifically tweak the installation directory:

http://github.com/rubygems/rubygems/blob/master/lib/rubygems/ext/builder.rb#L19-21

Because of that little thing, calling at_exit will not work as expected.

Bug, I see lot of potential on this.

-- 
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
_______________________________________________
Rubygems-developers mailing list
http://rubyforge.org/projects/rubygems
Rubygems-developers@rubyforge.org
http://rubyforge.org/mailman/listinfo/rubygems-developers

Reply via email to