From b2fd4d77236dcb85e7bd2ed15874d284c9ee048c Mon Sep 17 00:00:00 2001 From: Diego Elio Pettenò Date: Sun, 22 Aug 2010 15:14:11 +0000 Subject: Version bump to fix the Webrick security issue; remove non-stable-candidate vulnerable ebuilds. Package-Manager: portage-2.2_rc67/cvs/Linux x86_64 --- dev-java/jruby/ChangeLog | 9 +- dev-java/jruby/Manifest | 17 ++- dev-java/jruby/jruby-1.4.1-r1.ebuild | 189 --------------------------------- dev-java/jruby/jruby-1.5.1-r2.ebuild | 196 ----------------------------------- dev-java/jruby/jruby-1.5.2.ebuild | 196 +++++++++++++++++++++++++++++++++++ 5 files changed, 217 insertions(+), 390 deletions(-) delete mode 100644 dev-java/jruby/jruby-1.4.1-r1.ebuild delete mode 100644 dev-java/jruby/jruby-1.5.1-r2.ebuild create mode 100644 dev-java/jruby/jruby-1.5.2.ebuild (limited to 'dev-java/jruby') diff --git a/dev-java/jruby/ChangeLog b/dev-java/jruby/ChangeLog index a813380be9e9..a0af3d8f4101 100644 --- a/dev-java/jruby/ChangeLog +++ b/dev-java/jruby/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-java/jruby # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/jruby/ChangeLog,v 1.67 2010/06/30 20:53:35 caster Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/jruby/ChangeLog,v 1.68 2010/08/22 15:14:11 flameeyes Exp $ + +*jruby-1.5.2 (22 Aug 2010) + + 22 Aug 2010; Diego E. Pettenò + -jruby-1.4.1-r1.ebuild, -jruby-1.5.1-r2.ebuild, +jruby-1.5.2.ebuild: + Version bump to fix the Webrick security issue; remove + non-stable-candidate vulnerable ebuilds. 30 Jun 2010; Vlastimil Babka jruby-1.3.1-r1.ebuild, -jruby-1.4.0-r6.ebuild: diff --git a/dev-java/jruby/Manifest b/dev-java/jruby/Manifest index 21b83272472e..96a49e7250e6 100644 --- a/dev-java/jruby/Manifest +++ b/dev-java/jruby/Manifest @@ -1,3 +1,6 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + AUX 1.5.1/build.xml.patch 916 RMD160 813663ea2f391ed36df4c185e7b8ad8726f35890 SHA1 72f0bdd4ee48f8abb602bcda6b05a1a34b288f2e SHA256 761a8835a43511f5c62fff5f3afa4ab05abf17d2c25348c91088ff6eb17f5d2e AUX 1.5.1/testfixes.patch 2490 RMD160 5cd23b036543075e718a7fdc3214e36d21cf6e90 SHA1 261879b1f7bdaaba2b8426ebf403883611906864 SHA256 457ad13912dc8131ddbf60c9afc7227e38e77fb2c389f3c3dde3cc7162dd6148 AUX 10jruby 22 RMD160 ac56025539a2bbb7a1506a2df958c73cc1c3aba9 SHA1 caf6b109c0a7cfa53a1e470ba0ca5f27a6578723 SHA256 fb1240cfedd315ba3772830abbc238eb3061088fcf70eb4df7e9a99d92f124e4 @@ -10,10 +13,16 @@ AUX jruby-1.5.0-system-jars.patch 8113 RMD160 59ac1750a53176c90e134804d7021ca9ba AUX user-test-fixes.patch 5147 RMD160 6258879413ae81a18d0c6bcaa3b0661d86a0d14a SHA1 32d3f80db383cf664c9ad1f9e52c2688ae3cbe5c SHA256 f21469d41de9f9b5fb1682596f64899a71c92332db24bf27e8c50dbb1896a92e DIST jruby-src-1.3.1.tar.gz 12076705 RMD160 ef10395dbdf9490820caa65ff6236dd99e7c62c8 SHA1 e4de71e5c01f71f236b3135e07a5841784767fd8 SHA256 9095b0bec0ee8e6cd96b72c7f2aec8a90fa429b840484d57a48d8fb760aae600 DIST jruby-src-1.4.1.tar.gz 12351374 RMD160 079036e7df373d444221083a9487b6ad8a676879 SHA1 282a730d33fe5ba0686297de6ff68eee443e67ab SHA256 685e6ba0a4709e06fab1158ef6e4d2b246ab91a770fe8b5c1b642d55d22c725a -DIST jruby-src-1.5.1.tar.gz 11260259 RMD160 6bfa5aa1c28d1a9e250be0b8364e423caf905c17 SHA1 b022ad9a5a24a207fcb3e0ded76f70bc305b67ba SHA256 0ddfa33e42510e1c2848dacbde51a7642d7a411583a235f4e78c77036aa1bcac +DIST jruby-src-1.5.2.tar.gz 11259922 RMD160 add2181d47b90cae6ea601b27cb8331f682375da SHA1 796cf6f3f7d6b6cec752d160bcab0cd442547568 SHA256 fd951b93f8917b59bfa687656ee0612c61cd29f5b32bd562e4f71eb2a4a70ee0 EBUILD jruby-1.3.1-r1.ebuild 5350 RMD160 19a52b4bdb5fcc48a6a7d94ad9ede6aea3583327 SHA1 a92b88d5934a1e3e060c595d190782ce34165aaf SHA256 3f85aa08aa29e0f209544109f18b54318d450a28320a3692448213bee8521da4 -EBUILD jruby-1.4.1-r1.ebuild 5996 RMD160 3ade1f4ce4b0cc23fde323699a2b73ff2ead2136 SHA1 7c7e2848fc0da8d7540c12a7a2100d2217c90df1 SHA256 3af0279541a852f8b770c51b8146ee91f86bc6f6237b91a0b0398281207d56b8 EBUILD jruby-1.4.1.ebuild 5993 RMD160 06e37d3b9d1e6b4bcf8048e60ab8df655a0d3d61 SHA1 587f8bbf4c60f41ac8ce33dd73c3dcb21c2c9da8 SHA256 07bd146f37ac94430458e0e239acc50c30f50542b75b6356a404050ac64d1b71 -EBUILD jruby-1.5.1-r2.ebuild 5990 RMD160 235f23aed716bfffe72e5fc553d820d0b65f0144 SHA1 f9cb70c885d19d0c1bc78a1ef6cc42d2bb3cf72a SHA256 61542cdf2bcf732d5c065f88ba625c0f504626f5e7fb04b8801f2881de607390 -MISC ChangeLog 12989 RMD160 c556266df7e09573aa5ecbfa76dfec878a4078f0 SHA1 04cd72c976ec986825e12749be576d081fc6421d SHA256 a2b033117bdbab4ee963824f43ca83c2e9bfe09d917f0d4d0bbe5cc430c7750e +EBUILD jruby-1.5.2.ebuild 5991 RMD160 355a16852e83916f27bd11a49c235a8bf6485489 SHA1 3557e84e338560fa96fabbdb740cc7a0429ae5c6 SHA256 97fb6ce5cb5dd1b65dde4986b9a39260b69e2c6a5517c8f80c4c43c413b3a1ce +MISC ChangeLog 13248 RMD160 2b7c95ee3af6e4caf3bdb83e8398e05ecd71ec46 SHA1 6c2bcb6e57cd33b82b5a0eac2d56bb199bf68c48 SHA256 797db05b41661d2971b4e8ad0e452f4ad08839ee36b6fd5a17e76ed73316c5ac MISC metadata.xml 179 RMD160 3813d8d3651faaf99042cb3c776d0bc59ad7b5b4 SHA1 421371d5338c6b9b8b4950c44d78a9dbe79cf64d SHA256 0df27adc265ef6596f973641d25b64b7291c87f1b114d6895f69d222049bed1b +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.16 (GNU/Linux) + +iEYEARECAAYFAkxxPuIACgkQAiZjviIA2Xj59wCgo9FrVoDIU5nQHogsNyE1+EP6 +us4An2bOkYN07ohZIQOKmyTXj3Y7vHTk +=t4GM +-----END PGP SIGNATURE----- diff --git a/dev-java/jruby/jruby-1.4.1-r1.ebuild b/dev-java/jruby/jruby-1.4.1-r1.ebuild deleted file mode 100644 index 52215ad2a4a1..000000000000 --- a/dev-java/jruby/jruby-1.4.1-r1.ebuild +++ /dev/null @@ -1,189 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/jruby/jruby-1.4.1-r1.ebuild,v 1.1 2010/06/26 12:06:07 ali_bush Exp $ - -EAPI="2" -JAVA_PKG_IUSE="doc source test" -inherit eutils java-pkg-2 java-ant-2 - -MY_PV="${PV/_rc1/RC1}" - -DESCRIPTION="Java-based Ruby interpreter implementation" -HOMEPAGE="http://jruby.codehaus.org/" -#SRC_URI="http://jruby.kenai.com/downloads/${PV}/${PN}-src-${MY_PV}.tar.gz" -SRC_URI="http://jruby.org.s3.amazonaws.com/downloads/${PV}/${PN}-src-${MY_PV}.tar.gz" -LICENSE="|| ( CPL-1.0 GPL-2 LGPL-2.1 )" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="bsf ssl" - -CDEPEND=">=dev-java/bytelist-1.0.2:0 - >=dev-java/constantine-0.6:0 - >=dev-java/jline-0.9.94:0 - >=dev-java/joni-1.1.3:0 - >=dev-java/jna-posix-1.0.1:0 - >=dev-java/jvyamlb-0.2.5:0 - >=dev-java/asm-3.2:3 - >=dev-java/jcodings-1.0.4:0 - >=dev-java/jffi-0.7_pre:0.4 - dev-java/jna:0 - dev-java/joda-time:0 - dev-util/jay:0[java] - dev-java/nailgun:0 - dev-java/jaffl:0 - dev-java/jgrapht:0" - -RDEPEND="${CDEPEND} - >=virtual/jre-1.6" - -DEPEND="${CDEPEND} - >=virtual/jdk-1.6 - bsf? ( dev-java/bsf:2.3 ) - test? ( - dev-java/ant-junit - dev-java/ant-trax - ) - !! ~/jruby.fix' - echo 'emerge -1C $(< ~/jruby.fix)' - echo "rm ${directory}" - echo 'emerge -1 $(< ~/jruby.fix)' - echo 'rm ~/jruby.fix' - - eerror "For more information, please see http://bugs.gentoo.org/show_bug.cgi?id=302187" - fail="true" - fi - done - - if [[ -n ${fail} ]]; then - die "Please address the above errors, then run emerge --resume" - fi -} - -java_prepare() { - epatch "${FILESDIR}/ftype-test-fixes.patch" - epatch "${FILESDIR}/user-test-fixes.patch" - epatch "${FILESDIR}"/${PN}-1.4.0-system-jars-r2.patch - epatch "${FILESDIR}"/${PN}-1.4.0-bindir.patch - - # We don't need to use Retroweaver. There is a jarjar and a regular jar - # target but even with jarjarclean, both are a pain. The latter target - # is slightly easier so go with this one. - sed -r -i \ - -e 's/maxmemory="128m"/maxmemory="192m"/' \ - -e "/RetroWeaverTask/d" \ - -e "//d" \ - build.xml || die - - sed -i -e '/Arndt/d' src/org/jruby/RubyBigDecimal.java - - # Delete the bundled JARs but keep invokedynamic.jar. - # No source is available and it's only a dummy anyway. - find build_lib -name "*.jar" ! -name "jsr292-mock.jar" -delete || die - rm lib/profile.jar || die - - use bsf && java-pkg_jar-from --into build_lib \ - --build-only bsf-2.3 - - if ! use bsf; then - # Remove BSF test cases. - cd "${S}/test/org/jruby" - rm -f test/TestAdoptedThreading.java || die - rm -f javasupport/test/TestBSF.java || die - sed -i '/TestBSF.class/d' javasupport/test/JavaSupportTestSuite.java || die - sed -i '/TestAdoptedThreading.class/d' test/MainTestSuite.java || die - fi -} - -src_compile() { - eant jar $(use_doc apidocs) $(use bsf && echo "-Dbsf.present") \ - -Djdk1.5+=true -} - -src_test() { - if [ ${UID} == 0 ] ; then - ewarn 'The tests will fail if run as root so skipping them.' - ewarn 'Enable FEATURES="userpriv" if you want to run them.' - return - fi - - # ali_bush was getting crashes while attempting to run a test. - # No info about why it crashed seemed to be produced. - # remove it as temp fix. - #sed -i -e '/MRI/d' build.xml || die "Failed to sed build.xml" - - # BSF is a compile-time only dependency because it's just the adapter - # classes and they won't be used unless invoked from BSF itself. - use bsf && java-pkg_jar-from --into build_lib --with-dependencies bsf-2.3 - - # Our jruby.jar is unbundled so we need to add the classpath to this test. - sed -i "s:java -jar:java -Xbootclasspath/a\:#{ENV['JRUBY_CP']} -jar:g" test/test_load_compiled_ruby_class_from_classpath.rb || die - - ANT_TASKS="ant-junit ant-trax" JRUBY_CP=`java-pkg_getjars ${EANT_GENTOO_CLASSPATH// /,}` JRUBY_OPTS="" eant test -Djdk1.5+=true -} - -src_install() { - local bin - - java-pkg_dojar lib/${PN}.jar - dodoc README docs/{*.txt,README.*} || die - - use doc && java-pkg_dojavadoc docs/api - use source && java-pkg_dosrc src/org - - # We run the sed here in install so that we don't get the wrong - # data during the test phase! - sed \ - -e '/++ebuild-cut-here++/, /--ebuild-cut-here--/ d' \ - -e '/^JRUBY_HOME=/s:=:=/usr/share/jruby:' \ - bin/jruby > "${T}"/jruby - - dobin "${T}"/jruby "${S}"/bin/j{irb{,_swing},rubyc} || die - - insinto "${RUBY_HOME}" - doins -r "${S}"/lib/ruby/{1.8,1.9,site_ruby} || die - - # Remove all the references to RubyGems as we're just going to - # install it through dev-ruby/rubygems. - find "${D}${RUBY_HOME}" -type f \ - '(' '(' -path '*rubygems*' -not -name 'jruby.rb' ')' -or -name 'ubygems.rb' -or -name 'datadir.rb' ')' \ - -delete || die -} - -pkg_postinst() { - ewarn "If you're updating from <=jruby-1.4.0, you're going to get errors related" - ewarn "to gentoo.rb load failure." - ewarn "This is due to a stray definition of JRUBY_OPTS variable from the previous ebuilds." - ewarn "To solve the problem, either login in a new shell, use 'env -i ${SHELL} --login'" - ewarn "or explicitly unset the variable before running jruby." -} diff --git a/dev-java/jruby/jruby-1.5.1-r2.ebuild b/dev-java/jruby/jruby-1.5.1-r2.ebuild deleted file mode 100644 index 2b39af23a317..000000000000 --- a/dev-java/jruby/jruby-1.5.1-r2.ebuild +++ /dev/null @@ -1,196 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/jruby/jruby-1.5.1-r2.ebuild,v 1.2 2010/06/30 06:36:34 fauli Exp $ - -EAPI="2" -JAVA_PKG_IUSE="doc source test" -inherit eutils java-pkg-2 java-ant-2 - -MY_PV="${PV/_rc1/RC1}" - -DESCRIPTION="Java-based Ruby interpreter implementation" -HOMEPAGE="http://jruby.codehaus.org/" -SRC_URI="http://jruby.org.s3.amazonaws.com/downloads/${PV}/${PN}-src-${PV}.tar.gz" -LICENSE="|| ( CPL-1.0 GPL-2 LGPL-2.1 )" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="bsf ssl" - -CDEPEND=">=dev-java/bytelist-1.0.6:0 - >=dev-java/constantine-0.6:0 - >=dev-java/jline-0.9.94:0 - >=dev-java/joni-1.1.3:0 - >=dev-java/jnr-posix-1.1.3:0 - >=dev-java/jnr-netdb-1.0:0 - >=dev-java/jvyamlb-0.2.5:0 - >=dev-java/asm-3.2:3 - dev-java/jcodings:0 - >=dev-java/jffi-0.7_pre:0.4 - dev-java/joda-time:0 - dev-util/jay:0[java] - dev-java/nailgun:0 - dev-java/jaffl:0 - dev-java/jgrapht:0 - dev-java/ant-core:0 - dev-java/bsf:2.3" - -RDEPEND="${CDEPEND} - >=virtual/jre-1.6" - -DEPEND="${CDEPEND} - >=virtual/jdk-1.6 - test? ( - dev-java/ant-junit4:0 - dev-java/ant-trax:0 - dev-java/junit:4 - java-virtuals/jdk-with-com-sun - dev-java/commons-logging:0 - dev-java/xalan:0 - >=dev-java/jna-posix-1.0.1:0 - ) - !! ~/jruby.fix' - echo 'emerge -1C $(< ~/jruby.fix)' - echo "rm ${directory}" - echo 'emerge -1 $(< ~/jruby.fix)' - echo 'rm ~/jruby.fix' - - eerror "For more information, please see http://bugs.gentoo.org/show_bug.cgi?id=302187" - fail="true" - fi - done - - if [[ -n ${fail} ]]; then - die "Please address the above errors, then run emerge --resume" - fi -} - -java_prepare() { - epatch "${FILESDIR}"/${PN}-1.5.0-system-jars.patch - epatch "${FILESDIR}/${PV}/build.xml.patch" - epatch "${FILESDIR}/${PV}/testfixes.patch" - - # We don't need to use Retroweaver. There is a jarjar and a regular jar - # target but even with jarjarclean, both are a pain. The latter target - # is slightly easier so go with this one. - sed -r -i \ - -e 's/maxmemory="128m"/maxmemory="192m"/' \ - -e "/RetroWeaverTask/d" \ - -e "//d" \ - build.xml || die - - sed -i -e '/Arndt/d' src/org/jruby/RubyBigDecimal.java - - # Delete the bundled JARs but keep invokedynamic.jar. - # No source is available and it's only a dummy anyway. - find build_lib -name "*.jar" ! -name "jsr292-mock.jar" -delete || die - rm lib/profile.jar || die - - # change some defaults for Gentoo to work properly - cat - >> src/org/jruby/jruby.properties < 'build.classpath'@:path =>\"#{ENV['JRUBY_CP']}:lib/jruby.jar\"@g" \ - rakelib/commands.rake || die - #sed -i "s@:refid => 'test.class.path'@:path => \"#{ENV['JRUBY_CP']}@g" \ - # rakelib/commands.rake || die - - #bsf optionally depends on jruby, which means that the previously - #installed jruby will be added to classpath, nasty things will happen. - local cpath=`java-pkg_getjars ${EANT_GENTOO_CLASSPATH// /,},junit-4` - cpath="$(echo ${cpath} | sed -e "s_${ROOT}/usr/share/jruby/lib/jruby.jar:__g")" - cpath="${cpath}:$(java-pkg_getjars --build-only commons-logging,xalan)" - EANT_GENTOO_CLASSPATH="" - - local flags="" - use bsf && flags="-Dbsf.present=true" - - #Clear RUBYOPT - export RUBYOPT="" - export JRUBY_CP="${cpath}" - ANT_TASKS="ant-junit4 ant-trax" \ - JRUBY_OPTS="" eant test -Djdk1.5+=true -Djruby.bindir=bin \ - -Dgentoo.classpath="${cpath}" ${flags} -} - -src_install() { - local bin - - java-pkg_dojar lib/${PN}.jar - dodoc README docs/{*.txt,README.*} || die - - use doc && java-pkg_dojavadoc docs/api - use source && java-pkg_dosrc src/org - - # We run the sed here in install so that we don't get the wrong - # data during the test phase! - sed \ - -e '/++ebuild-cut-here++/, /--ebuild-cut-here--/ d' \ - -e '/^JRUBY_HOME=/s:=:=/usr/share/jruby:' \ - bin/jruby > "${T}"/jruby - - dobin "${T}"/jruby "${S}"/bin/j{irb{,_swing},rubyc} || die - - insinto "${RUBY_HOME}" - doins -r "${S}"/lib/ruby/{1.8,1.9,site_ruby} || die - - # Remove all the references to RubyGems as we're just going to - # install it through dev-ruby/rubygems. - find "${D}${RUBY_HOME}" -type f \ - '(' '(' -path '*rubygems*' -not -name 'jruby.rb' ')' -or -name 'ubygems.rb' -or -name 'datadir.rb' ')' \ - -delete || die -} - -pkg_postinst() { - ewarn "If you're updating from <=jruby-1.4.0, you're going to get errors related" - ewarn "to gentoo.rb load failure." - ewarn "This is due to a stray definition of JRUBY_OPTS variable from the previous ebuilds." - ewarn "To solve the problem, either login in a new shell, use 'env -i ${SHELL} --login'" - ewarn "or explicitly unset the variable before running jruby." -} diff --git a/dev-java/jruby/jruby-1.5.2.ebuild b/dev-java/jruby/jruby-1.5.2.ebuild new file mode 100644 index 000000000000..8dccf773e841 --- /dev/null +++ b/dev-java/jruby/jruby-1.5.2.ebuild @@ -0,0 +1,196 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-java/jruby/jruby-1.5.2.ebuild,v 1.1 2010/08/22 15:14:11 flameeyes Exp $ + +EAPI="2" +JAVA_PKG_IUSE="doc source test" +inherit eutils java-pkg-2 java-ant-2 + +MY_PV="${PV/_rc1/RC1}" + +DESCRIPTION="Java-based Ruby interpreter implementation" +HOMEPAGE="http://jruby.codehaus.org/" +SRC_URI="http://jruby.org.s3.amazonaws.com/downloads/${PV}/${PN}-src-${PV}.tar.gz" +LICENSE="|| ( CPL-1.0 GPL-2 LGPL-2.1 )" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="bsf ssl" + +CDEPEND=">=dev-java/bytelist-1.0.6:0 + >=dev-java/constantine-0.6:0 + >=dev-java/jline-0.9.94:0 + >=dev-java/joni-1.1.3:0 + >=dev-java/jnr-posix-1.1.3:0 + >=dev-java/jnr-netdb-1.0:0 + >=dev-java/jvyamlb-0.2.5:0 + >=dev-java/asm-3.2:3 + dev-java/jcodings:0 + >=dev-java/jffi-0.7_pre:0.4 + dev-java/joda-time:0 + dev-util/jay:0[java] + dev-java/nailgun:0 + dev-java/jaffl:0 + dev-java/jgrapht:0 + dev-java/ant-core:0 + dev-java/bsf:2.3" + +RDEPEND="${CDEPEND} + >=virtual/jre-1.6" + +DEPEND="${CDEPEND} + >=virtual/jdk-1.6 + test? ( + dev-java/ant-junit4:0 + dev-java/ant-trax:0 + dev-java/junit:4 + java-virtuals/jdk-with-com-sun + dev-java/commons-logging:0 + dev-java/xalan:0 + >=dev-java/jna-posix-1.0.1:0 + ) + !! ~/jruby.fix' + echo 'emerge -1C $(< ~/jruby.fix)' + echo "rm ${directory}" + echo 'emerge -1 $(< ~/jruby.fix)' + echo 'rm ~/jruby.fix' + + eerror "For more information, please see http://bugs.gentoo.org/show_bug.cgi?id=302187" + fail="true" + fi + done + + if [[ -n ${fail} ]]; then + die "Please address the above errors, then run emerge --resume" + fi +} + +java_prepare() { + epatch "${FILESDIR}"/${PN}-1.5.0-system-jars.patch + epatch "${FILESDIR}/1.5.1/build.xml.patch" + epatch "${FILESDIR}/1.5.1/testfixes.patch" + + # We don't need to use Retroweaver. There is a jarjar and a regular jar + # target but even with jarjarclean, both are a pain. The latter target + # is slightly easier so go with this one. + sed -r -i \ + -e 's/maxmemory="128m"/maxmemory="192m"/' \ + -e "/RetroWeaverTask/d" \ + -e "//d" \ + build.xml || die + + sed -i -e '/Arndt/d' src/org/jruby/RubyBigDecimal.java + + # Delete the bundled JARs but keep invokedynamic.jar. + # No source is available and it's only a dummy anyway. + find build_lib -name "*.jar" ! -name "jsr292-mock.jar" -delete || die + rm lib/profile.jar || die + + # change some defaults for Gentoo to work properly + cat - >> src/org/jruby/jruby.properties < 'build.classpath'@:path =>\"#{ENV['JRUBY_CP']}:lib/jruby.jar\"@g" \ + rakelib/commands.rake || die + #sed -i "s@:refid => 'test.class.path'@:path => \"#{ENV['JRUBY_CP']}@g" \ + # rakelib/commands.rake || die + + #bsf optionally depends on jruby, which means that the previously + #installed jruby will be added to classpath, nasty things will happen. + local cpath=`java-pkg_getjars ${EANT_GENTOO_CLASSPATH// /,},junit-4` + cpath="$(echo ${cpath} | sed -e "s_${ROOT}/usr/share/jruby/lib/jruby.jar:__g")" + cpath="${cpath}:$(java-pkg_getjars --build-only commons-logging,xalan)" + EANT_GENTOO_CLASSPATH="" + + local flags="" + use bsf && flags="-Dbsf.present=true" + + #Clear RUBYOPT + export RUBYOPT="" + export JRUBY_CP="${cpath}" + ANT_TASKS="ant-junit4 ant-trax" \ + JRUBY_OPTS="" eant test -Djdk1.5+=true -Djruby.bindir=bin \ + -Dgentoo.classpath="${cpath}" ${flags} +} + +src_install() { + local bin + + java-pkg_dojar lib/${PN}.jar + dodoc README docs/{*.txt,README.*} || die + + use doc && java-pkg_dojavadoc docs/api + use source && java-pkg_dosrc src/org + + # We run the sed here in install so that we don't get the wrong + # data during the test phase! + sed \ + -e '/++ebuild-cut-here++/, /--ebuild-cut-here--/ d' \ + -e '/^JRUBY_HOME=/s:=:=/usr/share/jruby:' \ + bin/jruby > "${T}"/jruby + + dobin "${T}"/jruby "${S}"/bin/j{irb{,_swing},rubyc} || die + + insinto "${RUBY_HOME}" + doins -r "${S}"/lib/ruby/{1.8,1.9,site_ruby} || die + + # Remove all the references to RubyGems as we're just going to + # install it through dev-ruby/rubygems. + find "${D}${RUBY_HOME}" -type f \ + '(' '(' -path '*rubygems*' -not -name 'jruby.rb' ')' -or -name 'ubygems.rb' -or -name 'datadir.rb' ')' \ + -delete || die +} + +pkg_postinst() { + ewarn "If you're updating from <=jruby-1.4.0, you're going to get errors related" + ewarn "to gentoo.rb load failure." + ewarn "This is due to a stray definition of JRUBY_OPTS variable from the previous ebuilds." + ewarn "To solve the problem, either login in a new shell, use 'env -i ${SHELL} --login'" + ewarn "or explicitly unset the variable before running jruby." +} -- cgit v1.2.3-65-gdbad