dev-lang/rakudo: update 9999 to reflect 2016.05
authorMarshall Brewer <tomboy64@sina.cn>
Wed, 1 Jun 2016 16:28:56 +0000 (18:28 +0200)
committerAmy Winston <amynka@gentoo.org>
Thu, 2 Jun 2016 12:52:38 +0000 (14:52 +0200)
dev-lang/rakudo/rakudo-9999.ebuild

index c6696c6c104f3f43213c343138c25d49d04471cd..821e32f1ac935c2944b2ac132871fbadbcd79847 100644 (file)
@@ -2,9 +2,9 @@
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
-EAPI=6
+EAPI=5
 
-inherit java-pkg-2
+inherit java-pkg-opt-2
 
 DESCRIPTION="A compiler for the Perl 6 programming language"
 HOMEPAGE="http://rakudo.org"
@@ -21,63 +21,60 @@ fi
 LICENSE="Artistic-2"
 SLOT="0"
 # TODO: add USE="javascript" once that's usable in nqp
-IUSE="clang java moar test"
+IUSE="clang java +moar test"
+REQUIRED_USE="|| ( java moar )"
 
-RDEPEND="~dev-lang/nqp-${PV}:=[java=,moar=,clang=]"
-DEPEND="${RDEPEND}
+CDEPEND="~dev-lang/nqp-${PV}:${SLOT}=[java?,moar?,clang=]"
+RDEPEND="${CDEPEND}
+       java? ( >=virtual/jre-1.7 )"
+DEPEND="${CDEPEND}
        clang? ( sys-devel/clang )
+       java? ( >=virtual/jdk-1.7 )
        >=dev-lang/perl-5.10"
 
-REQUIRED_USE="|| ( java moar )"
-PATCHES=( "${FILESDIR}/${PN}-2016.04-Makefile.in.patch" )
+PATCHES=( "${FILESDIR}/${PN}-2016.04-jna-lib.patch" )
 
 pkg_pretend() {
-       if has_version dev-lang/rakudo && use java; then
-               die "Rakudo is known to fail compilation with the jvm backend if it's already installed."
+       if has_version dev-lang/rakudo; then
+               ewarn "Rakudo is known to fail compilation/installation with Rakudo"
+               ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
+               ewarn "then do a new installation."
+               ewarn "(see Bug #584394)"
        fi
 }
 
-pkg_setup() {
-       use java && java-pkg-2_pkg_setup
-}
-
 src_prepare() {
-       eapply "${PATCHES[@]}"
-
-       # yup, this is ugly. but emake doesn't respect DESTDIR.
-       for i in Moar JVM; do
-               echo "DESTDIR   = ${D}" > "${T}/Makefile-${i}.in" || die
-               cat "${S}/tools/build/Makefile-${i}.in" >> "${T}/Makefile-${i}.in" || die
-               mv "${T}/Makefile-${i}.in" "${S}/tools/build/Makefile-${i}.in" || die
-       done
-
-       eapply_user
-       use java && java-pkg-2_src_prepare
+       epatch "${PATCHES[@]}"
+       epatch_user
 }
 
 src_configure() {
        local backends
-       use java && backends+="jvm,"
        use moar && backends+="moar,"
-       local myargs=( "--prefix=/usr"
+       use java && backends+="jvm"
+
+       local myargs=(
+               "--prefix=/usr"
                "--sysroot=/"
                "--sdkroot=/"
-               "--make-install"
-               "--sdkroot=/"
                "--backends=${backends}"
        )
-       perl Configure.pl "${myargs[@]}"
+
+       perl Configure.pl "${myargs[@]}" || die
+
+       if use java; then
+               NQP=$(java-pkg_getjars --with-dependencies nqp)
+       fi
 }
 
 src_compile() {
-       emake DESTDIR="${D}"
+       emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
 }
 
-src_test() {
-       export RAKUDO_PRECOMP_PREFIX=$(mktemp -d)
-       default
+src_install() {
+       emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
 }
 
-src_install() {
-       emake DESTDIR="${D}" install
+src_test() {
+       RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
 }