[DRE-commits] [gem2deb] 03/06: SetupRbInstaller: always use the system copy of setup.rb
Antonio Terceiro
terceiro at moszumanska.debian.org
Sat Dec 20 15:10:29 UTC 2014
This is an automated email from the git hooks/post-receive script.
terceiro pushed a commit to branch master
in repository gem2deb.
commit 59ce6848e14eb3d671157ba23b16266a56ba552a
Author: Antonio Terceiro <terceiro at debian.org>
Date: Sat Dec 20 12:52:48 2014 -0200
SetupRbInstaller: always use the system copy of setup.rb
---
debian/changelog | 1 +
lib/gem2deb/setup_rb_installer.rb | 37 +++++++++++++++++++++++++++---------
test/unit/setup_rb_installer_test.rb | 3 ---
3 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index f57f1a8..91cb233 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,7 @@ gem2deb (0.11) UNRELEASED; urgency=medium
- autopkgtest-pkg-ruby will be handled by autopkgtest and the implicit
test control data that uses gem2deb-test-runner will be used.
* improved "usage: " banner in several of the provided programs
+ * SetupRbInstaller: always use the system copy of setup.rb
-- Antonio Terceiro <terceiro at debian.org> Wed, 15 Oct 2014 16:16:04 -0300
diff --git a/lib/gem2deb/setup_rb_installer.rb b/lib/gem2deb/setup_rb_installer.rb
index d37d5d8..fd1eb68 100644
--- a/lib/gem2deb/setup_rb_installer.rb
+++ b/lib/gem2deb/setup_rb_installer.rb
@@ -27,24 +27,43 @@ module Gem2Deb
archdir = destdir(:archdir, rubyver)
prefix = destdir(:prefix, rubyver)
- # First configure
- run(ruby, 'setup.rb', 'config', "--prefix=#{prefix}", "--bindir=#{bindir}", "--siteruby=#{siteruby}", "--siterubyver=#{siteruby}", "--siterubyverarch=#{archdir}")
+ with_system_setuprb do
+ # First configure
+ run(ruby, 'setup.rb', 'config', "--prefix=#{prefix}", "--bindir=#{bindir}", "--siteruby=#{siteruby}", "--siterubyver=#{siteruby}", "--siterubyverarch=#{archdir}")
- # Then setup
- run(ruby, 'setup.rb', 'setup')
+ # Then setup
+ run(ruby, 'setup.rb', 'setup')
- # Then install
- run(ruby, 'setup.rb', 'install')
+ # Then install
+ run(ruby, 'setup.rb', 'install')
- # Then clean
- run(ruby, 'setup.rb', 'distclean')
+ # Then clean
+ run(ruby, 'setup.rb', 'distclean')
+ end
end
end
def run_make_clean_on_extensionss
ruby = SUPPORTED_RUBY_VERSIONS.keys.sort.first
- run(ruby, 'setup.rb', 'distclean')
+ with_system_setuprb do
+ run(ruby, 'setup.rb', 'distclean')
+ end
+ end
+
+ def with_system_setuprb(*argv)
+ if File.exists?('setup.rb')
+ run('mv', 'setup.rb', 'setup.rb.gem2deb-orig')
+ end
+ run('ln', '-s', '/usr/lib/ruby/vendor_ruby/setup.rb', 'setup.rb')
+ begin
+ yield
+ ensure
+ run('rm', '-f', 'setup.rb')
+ if File.exists?('setup.rb.gem2deb-orig')
+ run('mv setup.rb.gem2deb-orig', 'setup.rb')
+ end
+ end
end
end
diff --git a/test/unit/setup_rb_installer_test.rb b/test/unit/setup_rb_installer_test.rb
index 1ad2f0c..102403f 100644
--- a/test/unit/setup_rb_installer_test.rb
+++ b/test/unit/setup_rb_installer_test.rb
@@ -43,9 +43,6 @@ class SetupRbInstallerTest < Gem2DebTestCase
source_dir = File.join(tmpdir, source_package)
FileUtils.cp_r("test/sample/#{pkgname}", source_dir)
- # Here, copy setup.rb to the source dir.
- FileUtils.cp("/usr/lib/ruby/vendor_ruby/setup.rb",
- source_dir)
system("tar czf #{tarball} -C#{tmpdir} #{source_package}")
FileUtils.rm_rf(File.join(tmpdir, source_dir))
Gem2Deb::DhMakeRuby.new(tarball).build
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/gem2deb.git
More information about the Pkg-ruby-extras-commits
mailing list