diff options
Diffstat (limited to 'dev-lang/nqp/nqp-2020.10.ebuild')
-rw-r--r-- | dev-lang/nqp/nqp-2020.10.ebuild | 159 |
1 files changed, 0 insertions, 159 deletions
diff --git a/dev-lang/nqp/nqp-2020.10.ebuild b/dev-lang/nqp/nqp-2020.10.ebuild deleted file mode 100644 index 81e93919b90b..000000000000 --- a/dev-lang/nqp/nqp-2020.10.ebuild +++ /dev/null @@ -1,159 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit java-pkg-opt-2 multibuild - -if [[ ${PV} == "9999" ]]; then - EGIT_REPO_URI="https://github.com/perl6/${PN}.git" - inherit git-r3 -else - SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler" -HOMEPAGE="https://rakudo.org" - -LICENSE="Artistic-2" -SLOT="0" -IUSE="doc clang java +moar test" -RESTRICT="!test? ( test )" -REQUIRED_USE="|| ( java moar )" - -CDEPEND="java? ( - dev-java/asm:4 - dev-java/jline:0 - dev-java/jna:4 - ) - moar? ( ~dev-lang/moarvm-${PV}[clang=] )" -RDEPEND="${CDEPEND} - java? ( >=virtual/jre-1.8 )" -DEPEND="${CDEPEND}" -BDEPEND="${CDEPEND} - clang? ( sys-devel/clang ) - java? ( >=virtual/jdk-1.8 ) - dev-lang/perl" - -pkg_pretend() { - if has_version dev-lang/rakudo || has_version dev-lang/nqp; then - ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP" - ewarn "already being installed. So if it fails, try uninstalling both" - ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation." - ewarn "(see Bug #584394)" - fi -} - -java_prepare() { - # Don't clean stage0 jars. - einfo "Cleaning upstream jars" - java-pkg_clean 3rdparty/ - - # Don't use jars we just deleted. - sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \ - src/vm/jvm/runners/nqp-j || die -} - -src_prepare() { - MULTIBUILD_VARIANTS=() - use moar && MULTIBUILD_VARIANTS+=( moar ) - use java && MULTIBUILD_VARIANTS+=( jvm ) - - multibuild_copy_sources - - # This will pull in conditional java_prepare - default -} - -nqp_configure() { - pushd "${BUILD_DIR}" > /dev/null || die - local myconfargs=( - "--backend=${MULTIBUILD_VARIANT}" - "--prefix=${EPREFIX}/usr" ) - - perl Configure.pl "${myconfargs[@]}" || die - popd || die -} - -nqp_compile() { - if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then - emake -j1 \ - -C "${BUILD_DIR}" \ - THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \ - JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)" - elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then - emake -j1 \ - -C "${BUILD_DIR}" - fi -} - -nqp_test() { - emake -j1 \ - -C "${BUILD_DIR}" \ - test -} - -nqp_install() { - # This is the actual reason we need multibuild.eclass. - # We need to distinguish the install procedure for MoarVM and JVM backends. - case "${MULTIBUILD_VARIANT}" in - moar) - emake \ - DESTDIR="${ED}" \ - -C "${BUILD_DIR}" \ - install - ;; - jvm) - pushd "${BUILD_DIR}" > /dev/null || die - # Set JAVA_PKG_JARDEST early. - java-pkg_init_paths_ - - # Upstream sets the classpath to this location. Perhaps it's - # used to locate the additional libraries? - java-pkg_addcp "${JAVA_PKG_JARDEST}" - - insinto "${JAVA_PKG_JARDEST}" - local jar - - for jar in *.jar; do - if has ${jar} ${PN}.jar ${PN}-runtime.jar; then - # jars for NQP itself. - java-pkg_dojar ${jar} - else - # jars used by NQP. - doins ${jar} - fi - done - - # Upstream uses -Xbootclasspath/a, which is faster due to lack - # of verification, but gjl isn't flexible enough yet. :( - java-pkg_dolauncher ${PN}-j --main ${PN} - dosym ${PN}-j /usr/bin/${PN} - dobin tools/jvm/eval-client.pl - popd > /dev/null || die - ;; - *) - die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}." - ;; - esac -} - -src_configure() { - multibuild_foreach_variant nqp_configure -} - -src_compile() { - multibuild_foreach_variant nqp_compile -} - -src_test() { - multibuild_foreach_variant nqp_test -} - -src_install() { - multibuild_foreach_variant nqp_install - - dodoc CREDITS README.pod - use doc && dodoc -r docs/* -} |