Add a patch to fix a few more problems in eventmachine, such as bug #317281.
authorDiego Elio Pettenò <flameeyes@gentoo.org>
Mon, 26 Apr 2010 14:09:07 +0000 (14:09 +0000)
committerDiego Elio Pettenò <flameeyes@gentoo.org>
Mon, 26 Apr 2010 14:09:07 +0000 (14:09 +0000)
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64

dev-ruby/eventmachine/ChangeLog
dev-ruby/eventmachine/Manifest
dev-ruby/eventmachine/eventmachine-0.12.10-r2.ebuild
dev-ruby/eventmachine/files/eventmachine-0.12.10-gentoo.patch [new file with mode: 0644]

index b88411c313578c7105d00425ee1a4f39e98df487..be4e5e5406b9801c22694a21b5ec646bd744a444 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for dev-ruby/eventmachine
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-ruby/eventmachine/ChangeLog,v 1.10 2010/04/19 11:48:28 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/eventmachine/ChangeLog,v 1.11 2010/04/26 14:09:07 flameeyes Exp $
+
+  26 Apr 2010; Diego E. Pettenò <flameeyes@gentoo.org>
+  eventmachine-0.12.10-r2.ebuild, +files/eventmachine-0.12.10-gentoo.patch:
+  Add a patch to fix a few more problems in eventmachine, such as bug
+  #317281.
 
 *eventmachine-0.12.10-r2 (19 Apr 2010)
 
index 6864949f5db4c1d4b97ef38d76f717de7a65ad80..d4b9a518378394ea10719757f37638ebf3ebf411 100644 (file)
@@ -1,16 +1,17 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
+AUX eventmachine-0.12.10-gentoo.patch 1644 RMD160 9b8cf21be9e4832389fc2a9c473e591b7dfa3827 SHA1 a1d572de43e9a395bf803320c08398b0a1f9ec85 SHA256 11e8bbfa3b776d05d7a64ca729398e35b0083a6738ba3a1a297760090cb3781e
 DIST eventmachine-0.12.10.gem 220672 RMD160 625b4917e84d55fec468a810e9ee0bb5273387f0 SHA1 d9b3ec65e3e94e461ed2d53c01a2b9ab62fe6a07 SHA256 dcbe6193937366b5c6803f8aa09886ff241eeb13b782c1a33ff1a76f99a6ede8
 EBUILD eventmachine-0.12.10-r1.ebuild 992 RMD160 270ce2f56a3e7c524a3d12a7f25433dff6c2c9db SHA1 a2c39f1ba2d769180076dbeae1e2aff9d2cf164a SHA256 7ccc8e9ad7d55d2d152390dfe122c0968cdc6ed79d7849baa358dd61fed5b793
-EBUILD eventmachine-0.12.10-r2.ebuild 1284 RMD160 eb131a781aeaee60fe5b377fc40f79f123aa8dad SHA1 24242680d305432f06ea783d53cf957acc1b9f13 SHA256 f3628053fd32ec6695a28a0f9f65d5bc9ff3f60c4730517a6f3a5d2e453e324d
+EBUILD eventmachine-0.12.10-r2.ebuild 1714 RMD160 841ffe7c6e559f1266d152e94debce9ce05d1ad8 SHA1 29ab5a2f3b5170d57ff7e24225ae21e26f4607f9 SHA256 212e5a5ad3e466c040d061534cd88c424343c51e7b595e58a10fad5689a06bf4
 EBUILD eventmachine-0.12.10.ebuild 467 RMD160 6d63cd5cb85602fc3d3e7a087733e5a7f462c438 SHA1 da0eb6ebaca27384cc41086d61d02fb3f2bbe659 SHA256 75850f25834b392d59fc2998e4c5f99e7f9578df57b6058e6f3d9108473aea6e
-MISC ChangeLog 1918 RMD160 69bcfbc9ba34436588f83014af2f331b9e0c7965 SHA1 b0d35781309a9b2498d160bb385905ccf1b6c6f0 SHA256 78fabaa9536293e2ba96cde5fae618221b3fd30e50c17d9f12d25b2bd632998c
+MISC ChangeLog 2132 RMD160 a5714ec10b51679641c501c00c17a562fdd82c96 SHA1 e8c304bc31bb68f82a3fe71ea3b649dd108ffbbc SHA256 18ebcaf6e56eeb7616bf7c2cc8039b142c5d3b68eba1c3908b72a2dff16f7c69
 MISC metadata.xml 433 RMD160 b5bc8163799d4caf1299a8fc0bf59b65fc8e3856 SHA1 e0ad3695d36bb1dcee0607262d0b1934d6d23cb8 SHA256 cb277b1f4d7367e9b925224bd5e742773d371799cdfc39a3f56b8d568f7d2e27
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.15 (GNU/Linux)
 
-iEYEARECAAYFAkvMQxgACgkQAiZjviIA2XhjvgCgvSSIEC/lPzzCzi18tYcXd1Sd
-QO4An2SJYg15Ts0bgpYbA9OmQR8XSLfx
-=NkEB
+iEYEARECAAYFAkvVnpEACgkQAiZjviIA2XgXWwCfUuw2rfrcZdxujqYJV2LY8lJu
+eckAn1r+oHM/sa5+FERrFOyKFZhHMYso
+=9Lgc
 -----END PGP SIGNATURE-----
index 3a29d143f62a1e58a40a9be488ce87049bf6fab8..3215d90654979f0bd0cdf17ad5ac5ed5f507be06 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2010 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-ruby/eventmachine/eventmachine-0.12.10-r2.ebuild,v 1.1 2010/04/19 11:48:28 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/eventmachine/eventmachine-0.12.10-r2.ebuild,v 1.2 2010/04/26 14:09:07 flameeyes Exp $
 
 EAPI="2"
 # jruby → has shims for Java handling but tests fail badly, remaining
@@ -20,29 +20,35 @@ SLOT="0"
 KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
 IUSE=""
 
-ruby_add_bdepend 'dev-ruby/rake'
-
 DEPEND="${DEPEND}
        dev-libs/openssl"
 RDEPEND="${RDEPEND}
        dev-libs/openssl"
 
 all_ruby_prepare() {
-       # This test only works on BSD, and error handling fails on 1.8
-       rm tests/test_process_watch.rb || die "rm failed"
-
-       cat - > "${T}"/submake <<EOF
-#!/bin/sh
-
-myrealmake=${MAKE}
-MAKE=\$myrealmake emake "\$@"
+       # fix building with RDoc 2.5.x (bug #317281) — upstream b12663e475514b02a28b60d4427a48be7d75faac
+       # fix tests with Ruby 1.9 — sent upstream
+       # fix tests on non-FreeBSD (where kqueue is missing) — sent upstream
+       # fix building when git is not available — sent upstream
+       epatch "${FILESDIR}/${P}-gentoo.patch"
+}
 
-EOF
-       chmod +x "${T}"/submake || die
+each_ruby_configure() {
+       for extdir in ext ext/fastfilereader; do
+               pushd $extdir
+               ${RUBY} extconf.rb || die "extconf.rb failed for ${extdir}"
+               popd
+       done
 }
 
 each_ruby_compile() {
-       MAKE="${T}"/submake ${RUBY} -S rake build || die "rake build failed"
+       for extdir in ext ext/fastfilereader; do
+               pushd $extdir
+               # both extensions use C++, so use the CXXFLAGS not the CFLAGS
+               emake CFLAGS="${CXXFLAGS} -fPIC" archflag="${LDFLAGS}" || die "emake failed for ${extdir}"
+               popd
+               cp $extdir/*.so lib/ || die "Unable to copy extensions for ${extdir}"
+       done
 }
 
 all_ruby_install() {
diff --git a/dev-ruby/eventmachine/files/eventmachine-0.12.10-gentoo.patch b/dev-ruby/eventmachine/files/eventmachine-0.12.10-gentoo.patch
new file mode 100644 (file)
index 0000000..72b7b72
--- /dev/null
@@ -0,0 +1,62 @@
+unchanged:
+--- a/Rakefile
++++ b/Rakefile
+@@ -86,7 +86,7 @@
+   s.rdoc_options      = %w(--title EventMachine --main README --line-numbers -x lib/em/version -x lib/emva -x lib/evma/ -x lib/pr_eventmachine -x lib/jeventmachine)
+   s.extra_rdoc_files  = Dir['README,docs/*']
+ 
+-  s.files             = `git ls-files`.split("\n")
++  s.files             = `git ls-files`.split("\n") rescue Errno::ENOENT
+ 
+   s.require_path      = 'lib'
+ 
+@@ -301,7 +301,7 @@ rescue LoadError
+   require 'rake/rdoctask'
+   Rake::RDocTask
+ end
+-df = begin; require 'rdoc/generator/darkfish'; true; rescue LoadError; end
++df = begin; require 'rdoc/rdoc'; require 'rdoc/generator/darkfish'; true; rescue LoadError; end
+ rdtask = rdoc_task_type.new do |rd|
+   rd.title = Spec.name
+   rd.rdoc_dir = 'rdoc'
+unchanged:
+--- a/tests/test_defer.rb
++++ b/tests/test_defer.rb
+@@ -28,6 +28,7 @@ $:.unshift "../lib"
+ require 'eventmachine'
+ require 'test/unit'
+ 
++unless RUBY_VERSION >= '1.9.0'
+ class TestDeferUsage < Test::Unit::TestCase
+ 
+   def test_defers
+@@ -41,7 +42,8 @@ class TestDeferUsage < Test::Unit::TestCase
+       }
+     }
+     assert_equal( n, n_times )
+-  end unless RUBY_VERSION >= '1.9.0'
++  end
+ 
+ end
++end
+ 
+only in patch2:
+unchanged:
+--- a/tests/test_process_watch.rb
++++ b/tests/test_process_watch.rb
+@@ -2,6 +2,7 @@ $:.unshift "../lib"
+ require 'eventmachine'
+ require 'test/unit'
+ 
++if EM.kqueue?
+ class TestProcessWatch < Test::Unit::TestCase
+   module ParentProcessWatcher
+     def process_forked
+@@ -45,4 +46,5 @@ class TestProcessWatch < Test::Unit::TestCase
+     assert($exited)
+     assert($unbind)
+   end
+-end
+\ No newline at end of file
++end
++end