[Rubygems-developers] --destdir changed behavior again ?

Jeremy Hinegardner jeremy at hinegardner.org
Fri Nov 14 18:55:42 EST 2008

Hi all,

I was packaging up rubygems 1.3.1 fo use at my work and it appears that the
setup.rb behavior has changed since 1.2.0.

in 1.2.0:

  ./setup.rb --destdir=/fakeroot/location

Items get installed into:


in 1.3.1 ( and 1.3.0 )

  ./setup.rb --destdir=/fakeroot/location

Items get installed into:


Is the purpose now, if you want to use destdir, that you are required to
also use --prefix?   I don't know about others, but for me, --destdir
means setting where '/' is supposed to be, and then rubygems should
install relative to that as normal.

The bug for me is all in : 

  unless install_destdir.empty?
    top_dir = Pathname.new(RbConfig::TOPDIR)
    lib_dir_p = Pathname.new(lib_dir)
    bin_dir_p = Pathname.new(bin_dir)

    lib_dir = File.join install_destdir, lib_dir_p.relative_path_from(top_dir)
    bin_dir = File.join install_destdir, bin_dir_p.relative_path_from(top_dir)

I'm thinking it should really be:

    top_dir = Pathname.new(RbConfig::TOPDIR).parent




 Jeremy Hinegardner                              jeremy at hinegardner.org 

More information about the Rubygems-developers mailing list