[DRE-commits] [SCM] gem2deb.git branch, master, updated. 0.4.0-9-gabd9703
Antonio Terceiro
terceiro at debian.org
Sun Jun 2 15:19:20 UTC 2013
The following commit has been merged in the master branch:
commit 28c7236244d50aca529f9a6bfeab2d54748828f1
Author: Antonio Terceiro <terceiro at debian.org>
Date: Sat Jun 1 17:17:26 2013 -0300
Make extension buidler honor DH_RUBY_USE_DH_AUTO_INSTALL_DESTDIR
Closes: #701716
diff --git a/lib/gem2deb/extension_builder.rb b/lib/gem2deb/extension_builder.rb
index a8adef1..667315a 100644
--- a/lib/gem2deb/extension_builder.rb
+++ b/lib/gem2deb/extension_builder.rb
@@ -24,12 +24,10 @@ module Gem2Deb
include Gem2Deb
attr_reader :extension
- attr_reader :package
attr_reader :directory
- def initialize(extension, pkg)
+ def initialize(extension)
@extension = extension
- @package = pkg
@directory = File.dirname(extension)
end
@@ -41,7 +39,7 @@ module Gem2Deb
end
end
- def build_and_install
+ def build_and_install(destdir)
clean
results = []
rubygems_builder =
@@ -57,7 +55,7 @@ module Gem2Deb
exit(1)
end
begin
- target = File.expand_path(File.join('debian', package, RbConfig::CONFIG['vendorarchdir']))
+ target = File.expand_path(File.join(destdir, RbConfig::CONFIG['vendorarchdir']))
Dir.chdir(directory) do
rubygems_builder.build(extension, '.', target, results)
puts results
@@ -68,11 +66,11 @@ module Gem2Deb
end
end
- def self.build_all_extensions(package)
+ def self.build_all_extensions(destdir)
all_extensions.each do |extension|
- ext = new(extension, package)
+ ext = new(extension)
ext.clean
- ext.build_and_install
+ ext.build_and_install(destdir)
end
end
@@ -87,7 +85,7 @@ if $PROGRAM_NAME == __FILE__
if ARGV.length == 1
Gem2Deb::ExtensionBuilder.build_all_extensions(ARGV.first)
else
- puts "usage: #{File.basename($PROGRAM_NAME)} PKGNAME"
+ puts "usage: #{File.basename($PROGRAM_NAME)} DESTDIR"
exit(1)
end
end
diff --git a/lib/gem2deb/installer.rb b/lib/gem2deb/installer.rb
index b54895e..ea40bc0 100644
--- a/lib/gem2deb/installer.rb
+++ b/lib/gem2deb/installer.rb
@@ -33,7 +33,7 @@ module Gem2Deb
if metadata.has_native_extensions?
ruby_versions.each do |rubyver|
puts "Building extension for #{rubyver} ..." if verbose
- run("#{SUPPORTED_RUBY_VERSIONS[rubyver]} -I#{LIBDIR} #{EXTENSION_BUILDER} #{binary_package}")
+ run("#{SUPPORTED_RUBY_VERSIONS[rubyver]} -I#{LIBDIR} #{EXTENSION_BUILDER} #{destdir_base}")
# Remove duplicate files installed by rubygems in the arch dir
# This is a hack to workaround a problem in rubygems
diff --git a/test/integration/gem2deb_test.rb b/test/integration/gem2deb_test.rb
index 6095a9d..d937a9c 100644
--- a/test/integration/gem2deb_test.rb
+++ b/test/integration/gem2deb_test.rb
@@ -71,4 +71,10 @@ class Gem2DebTest < Gem2DebTestCase
end
end
+ self.build_tree('test/sample/simpleextension_dh_auto_install_destdir') do |dir|
+ should 'honor DH_RUBY_USE_DH_AUTO_INSTALL_DESTDIR when building extensions' do
+ assert Dir.glob("#{dir}/debian/tmp/usr/lib/ruby/vendor_ruby/**/*.so").size > 0, 'no .so files found in debian/tmp/'
+ end
+ end
+
end
diff --git a/test/sample/simpleextension/Rakefile b/test/sample/simpleextension_dh_auto_install_destdir/Rakefile
similarity index 100%
copy from test/sample/simpleextension/Rakefile
copy to test/sample/simpleextension_dh_auto_install_destdir/Rakefile
diff --git a/test/sample/simpleextension/bin/simpleextension b/test/sample/simpleextension_dh_auto_install_destdir/bin/simpleextension
similarity index 100%
copy from test/sample/simpleextension/bin/simpleextension
copy to test/sample/simpleextension_dh_auto_install_destdir/bin/simpleextension
diff --git a/test/sample/simpleextension_dh_auto_install_destdir/debian/changelog b/test/sample/simpleextension_dh_auto_install_destdir/debian/changelog
new file mode 100644
index 0000000..6841c92
--- /dev/null
+++ b/test/sample/simpleextension_dh_auto_install_destdir/debian/changelog
@@ -0,0 +1,5 @@
+ruby-simpleextension-dh-auto-install-destdir (0.1.0~FIXME-1) UNRELEASED; urgency=low
+
+ * Initial release (Closes: #nnnn)
+
+ -- Antonio Terceiro <terceiro at debian.org> Sat, 01 Jun 2013 16:52:32 -0300
diff --git a/debian/compat b/test/sample/simpleextension_dh_auto_install_destdir/debian/compat
similarity index 100%
copy from debian/compat
copy to test/sample/simpleextension_dh_auto_install_destdir/debian/compat
diff --git a/test/sample/simpleextension_dh_auto_install_destdir/debian/control b/test/sample/simpleextension_dh_auto_install_destdir/debian/control
new file mode 100644
index 0000000..1f5f182
--- /dev/null
+++ b/test/sample/simpleextension_dh_auto_install_destdir/debian/control
@@ -0,0 +1,24 @@
+Source: ruby-simpleextension-dh-auto-install-destdir
+Section: ruby
+Priority: optional
+Maintainer: Debian Ruby Extras Maintainers <pkg-ruby-extras-maintainers at lists.alioth.debian.org>
+Uploaders: Antonio Terceiro <terceiro at debian.org>
+Build-Depends: debhelper (>= 7.0.50~), gem2deb (>= 0.4.0~)
+Standards-Version: 3.9.4
+#Vcs-Git: git://anonscm.debian.org/pkg-ruby-extras/ruby-simpleextension-dh-auto-install-destdir.git
+#Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-ruby-extras/ruby-simpleextension-dh-auto-install-destdir.git;a=summary
+Homepage: FIXME
+XS-Ruby-Versions: all
+
+Package: ruby-simpleextension-dh-auto-install-destdir
+Architecture: any
+XB-Ruby-Versions: ${ruby:Versions}
+Depends: ${shlibs:Depends}, ${misc:Depends}, ruby | ruby-interpreter
+Description: FIXME
+ <insert long description, indented with spaces>
+
+Package: ruby-simpleextension-dh-auto-install-destdir-doc
+Architecture: all
+Description: dummy package
+ The existance of this package will make dh_auto_install call dh_ruby with
+ debian/tmp as destdir
diff --git a/lib/gem2deb/dh_make_ruby/template/debian/copyright b/test/sample/simpleextension_dh_auto_install_destdir/debian/copyright
similarity index 90%
copy from lib/gem2deb/dh_make_ruby/template/debian/copyright
copy to test/sample/simpleextension_dh_auto_install_destdir/debian/copyright
index b8bf6c7..9b26824 100644
--- a/lib/gem2deb/dh_make_ruby/template/debian/copyright
+++ b/test/sample/simpleextension_dh_auto_install_destdir/debian/copyright
@@ -1,5 +1,5 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: <%= gem_name %>
+Upstream-Name: simpleextension_dh_auto_install_destdir
Source: FIXME <http://example.com/>
Files: *
@@ -8,7 +8,7 @@ Copyright: <years> <put author's name and email here>
License: GPL-2+ (FIXME)
Files: debian/*
-Copyright: <%= Date.today.year %> <%= maintainer['DEBFULLNAME'] %> <<%= maintainer['DEBEMAIL'] %>>
+Copyright: 2013 Antonio Terceiro <terceiro at debian.org>
License: GPL-2+ (FIXME)
Comment: the Debian packaging is licensed under the same terms as the original package.
diff --git a/test/sample/simpleextension_dh_auto_install_destdir/debian/rules b/test/sample/simpleextension_dh_auto_install_destdir/debian/rules
new file mode 100755
index 0000000..6ec0ae0
--- /dev/null
+++ b/test/sample/simpleextension_dh_auto_install_destdir/debian/rules
@@ -0,0 +1,6 @@
+#!/usr/bin/make -f
+
+export DH_RUBY_USE_DH_AUTO_INSTALL_DESTDIR=1
+
+%:
+ dh $@ --buildsystem=ruby --with ruby
diff --git a/lib/gem2deb/dh_make_ruby/template/debian/source/format b/test/sample/simpleextension_dh_auto_install_destdir/debian/source/format
similarity index 100%
copy from lib/gem2deb/dh_make_ruby/template/debian/source/format
copy to test/sample/simpleextension_dh_auto_install_destdir/debian/source/format
diff --git a/test/sample/simpleextension_dh_auto_install_destdir/ext/simpleextension_dh_auto_install_destdir/extconf.rb b/test/sample/simpleextension_dh_auto_install_destdir/ext/simpleextension_dh_auto_install_destdir/extconf.rb
new file mode 100644
index 0000000..dd9be54
--- /dev/null
+++ b/test/sample/simpleextension_dh_auto_install_destdir/ext/simpleextension_dh_auto_install_destdir/extconf.rb
@@ -0,0 +1,2 @@
+require 'mkmf'
+create_makefile('simpleextension_dh_auto_install_destdir')
diff --git a/test/sample/simpleextension/ext/simpleextension/simpleextension.c b/test/sample/simpleextension_dh_auto_install_destdir/ext/simpleextension_dh_auto_install_destdir/simpleextension_dh_auto_install_destdir.c
similarity index 100%
copy from test/sample/simpleextension/ext/simpleextension/simpleextension.c
copy to test/sample/simpleextension_dh_auto_install_destdir/ext/simpleextension_dh_auto_install_destdir/simpleextension_dh_auto_install_destdir.c
diff --git a/test/sample/simpleextension/test/test_simpleextension.rb b/test/sample/simpleextension_dh_auto_install_destdir/test/test_simpleextension.rb
similarity index 100%
copy from test/sample/simpleextension/test/test_simpleextension.rb
copy to test/sample/simpleextension_dh_auto_install_destdir/test/test_simpleextension.rb
--
gem2deb.git
More information about the Pkg-ruby-extras-commits
mailing list