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