commit:     cc12259f2c6c10bfdb780156b1f0e31008749f1e
Author:     Mark Wright <gienah <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 23 13:44:10 2016 +0000
Commit:     Mark Wright <gienah <AT> gentoo <DOT> org>
CommitDate: Tue Feb 23 13:44:10 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc12259f

dev-java/sbt: Bump to 0.13.11, allow building with jdk 1.8.

Thanks to Christian Strahl for the bump request 562904 and Pavel Kozlov for
reporting 560810 requesting allowing building with jdk 1.8.

Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=562904
Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=560810

Package-Manager: portage-2.2.27

 dev-java/sbt/Manifest           |   5 ++
 dev-java/sbt/sbt-0.13.11.ebuild | 153 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 158 insertions(+)

diff --git a/dev-java/sbt/Manifest b/dev-java/sbt/Manifest
index df04a94..e525e64 100644
--- a/dev-java/sbt/Manifest
+++ b/dev-java/sbt/Manifest
@@ -3,10 +3,15 @@ DIST sbt-0.13.10_rc2-ivy2-deps.tar.bz2 139970194 SHA256 
b3ef28fbc330d8b8218712a4
 DIST sbt-0.13.10_rc2-sbt-deps.tar.bz2 38778951 SHA256 
f2be26d49010fa521b4a0e9a112c465107838f5250883de4bc132926ccd685fa SHA512 
c929562d18e2e5032d502556a960b25fa707c2893172425c2c3b5365a86ccd63729ce8795f12fd1aced5b39267f6db4b8e9d0c1eaf00ba20b071fac9044157f8
 WHIRLPOOL 
b75096e0b2429a104b548e601e06fc5b3e452bda39d4fc434d8f98137275899a5c40ac2bb528324dd621eef4aa17e952648c9698cc4eeedd6e8aeb391509db16
 DIST sbt-0.13.10_rc2-src.tar.bz2 35017169 SHA256 
c34051649a8c998a98d5ff401e622d6c3e54fc15b6e1aeac7e223c5ff8ce54aa SHA512 
7e734fdecc631cc0307c09e6706b761dd55d1cb6a03aa29a0cd5826d86bfa44dde29ebc05bca7f947351a6b6510caef51d0c3df2b07d60895b41f074c319d1b8
 WHIRLPOOL 
de34b47a87af7f77a2ee00230901cf21015312359f29cff8689692b7c9d2f148a8233224a3b5b488c63a55cde695b0928000938e6608c1437e4be2287ddc026d
 DIST sbt-0.13.10_rc2-test-deps.tar.bz2 266656 SHA256 
62d0ed5b43898a42696f8b148e933d70871c2f75bf3f6b20ac39cea00b327f17 SHA512 
7e30459f010eb9c8ffba8e8e4da90bcb7d03cdd4347e63d0207a9bf9b9ddeb38b68d2798c98452ea81bcddc9973e287066603ce06ebadf56c006f25e76fdb57d
 WHIRLPOOL 
e4c06db36cc2b0e4417a81c961bc470caa169e358734ab7f7b71103547286704e6cfd104fe342afd7df0270300073a695ee35342944e25a65e96bd036bb5a953
+DIST sbt-0.13.11-gentoo-binary.tar.bz2 144170371 SHA256 
ca13e6d5751de14ac0fe3542f80c42c3dc74fabd3f897455b8f93391ab465f08 SHA512 
705f8a5e3065ee6d88ca0044a1e0b55856e4cf167172fc3102503ff28b0992bc918da9ab8541320474abe7dd4956d2a0d33df1709894bace225993e32b85b667
 WHIRLPOOL 
0b94e74ebb827d9517d621606321e8fd0ca72c74b6f40776248e1bbcdf64e328c3bf83ece4c37adbbdaadb273f0951275a21d278ea3307e904a76c44809b4321
+DIST sbt-0.13.11-ivy2-deps.tar.bz2 139796284 SHA256 
d8ad25a99e1dd8ebbc29955844543a1cee8bbd845cca9bb4fa92b62c27673a29 SHA512 
e431e00884dbf58ca911d64da726b41b8aeae9987ae2725705c9c45b4601162e45d310f933e4214cf8a4d21ba9e7207365d9ba352cbe1511ce09f59cd33da033
 WHIRLPOOL 
b56ba91892ee2dbb1d9d9609ffd8417184e291fa8c03f8a115757301c412a8d141a17ae315ac916067bab5b49d74f16cb82da497c8790c212f3ccc068721e24f
+DIST sbt-0.13.11-sbt-deps.tar.bz2 38783848 SHA256 
c2059a2513cbee50afe506d1fb0511b384df99757273d941b136e5bb3155ca7e SHA512 
53020538eac11d6ae268436987d98093f017f421750496080908fad36eb9148a4cce41ab1a231ff1a35868c5c07cc8e338f1793fc91d044802b3e95b900e9cc8
 WHIRLPOOL 
0e4617b728536be9adfcf683b1575a522c5c0f073098c7f685003f0a340bfc4fff06031252016227b8af38f666296185815508b89bb7e82334276e55c707e16e
+DIST sbt-0.13.11-src.tar.bz2 35163092 SHA256 
1b987725b4e57d6139b02c9d43b18d6ec43880681cccdfca3a29c803e79f6494 SHA512 
95065c452fbbf2a206ad8d8518f083abe608e8bad1075848fa7a4ad797e8a10e4127823cdb8502f4d9bd0eb01867298af7d69895eb1470bf71deba354871dd86
 WHIRLPOOL 
652ba691ea2dccf6eb22ea2b43d9b96e15597cb8ce2325eacd912752a60854f982e1a6fec8c049e144042c10e98b888a66b3fe923c63447ef46e6582786e4a81
 DIST sbt-0.13.8-gentoo-binary.tar.bz2 1048674 SHA256 
4a2b22c9d9fbe922d5a5336d88ca21f18b2545850fec16485c824aee43df53e1 SHA512 
9a5707601387d604b746ea21145a3c7735dd4b6d36541111b47519b66e5abc929ecc96ff52e144ed39a3db947204a1956e19394a1848e3fd8904f9a98ec24816
 WHIRLPOOL 
4fb1bde15ab57260a25b0a4a1634122af2e2b9d6cd35d3a9c693d9bba6c398bee489f05bf29a763a60d7a04f54823bdd9fc54ec5a2809900b28f890930649fc7
 DIST sbt-0.13.8-ivy2-deps.tar.bz2 124672043 SHA256 
565ba7434316a3ab2f61f58b4bc57317e5c2ae7c9ee95061c39cfddd5767a355 SHA512 
47b2f235b7d5883086f8246265e9081a50dcdaede43550a1c0de1c85a9ebf24b47e1331b662aa5c0faebaf22a37849ffb2c1f25a7592c461e62f582984ad4b70
 WHIRLPOOL 
f92b2cd087d51f0ae31d5ac93d1dca7214ace6df8c06b050287007f05697e81ac14758368730e6df45043ba80167b9581e636b0364d5ba3a5c7352fafd7e5007
 DIST sbt-0.13.8-sbt-deps.tar.bz2 88352931 SHA256 
d0eab3858f389e201277d1ead68352172830b17dd8343f09e0e63e4880a5e20e SHA512 
a6e886f5f18821c26df28a2e8cf2773b4841854fc1bd4dfa43924089966020da5affd635da96a8e13efc7c06be6a5bf53697ca91f5fbf41efcdf8dda00e8428d
 WHIRLPOOL 
54744676b33b11ffb350b5a543986efd5cd629594ce4bac5154a78df233619a92a2a4842659acf9c15533e764d24333183372f136b3b1f7463bbe55347c41b8f
 DIST sbt-0.13.8-src.tar.bz2 32766054 SHA256 
5225864c54e5718dc68cfcd554a7215bd028947d61ed9522e2ad9d0a19cbdd83 SHA512 
f6c834c6294c957e8d5b89a3a616f23a980cca1f882695d09a6e0080d1013227ba3bac86942b39c13e49fb6ac9fb72c3478df24ec8549b8b9812ea352932fff8
 WHIRLPOOL 
5054578505fe35b6c5f269c72b921920cf232a1efed18da5cd1833457d46f4e4342988be46539001b4dcfcfc6c807785915f4d0791af939dc83018ffcc03effe
 DIST sbt-0.13.8-test-deps.tar.bz2 40704285 SHA256 
7cb252d69b5868905e0592df7ef9a83ce09f75cb10a72bc9dcd649286bb524a3 SHA512 
a79ea9c81abc436168f04f674ffef4fee6f7c7a5dede5a3060e2e2bd9a9863dd5f1c7b31c02f3823fb5a67b2bb43c44d306efb59468f625e4db277cface47cd0
 WHIRLPOOL 
268ea150c5ca2fe1988317e0616262de814e2aa7213f64b99baf389c3e67e2093a04765ac27f08bd585fe33c77d9dd8c7a0ba8d3bd77d937d9a7260dab72c23a
+DIST sbt-launch-0.13.11.jar 1210231 SHA256 
c63ade35a7a7aa0d8e3bdc7c2353ce79b045083cfabf6bc6fab88584f6100bc1 SHA512 
9db3d3e953e4246b09ce2265b76463b6000c6d1c9d1328eb0deb1b67e9c955816ef67f6aeaeca22dc46e27cc71ba833545ab39c5351b8230609c021ca9e818b9
 WHIRLPOOL 
6650144da7aef195779c4d23c594fee9c7f79e7b2758bb2c98c83732f75656b0143ec73023a98677201502a813c0e37bbec48cebbc6fe520484ec6bd53fb4019
 DIST sbt-launch-0.13.7.jar 1208385 SHA256 
6570bb03df6138ffaa7ac0bbe35eb4ea79062d1146b6929c75cf238d14dd9158 SHA512 
ddc62dd85b552a7157ae0c19d0161d77a929adeb4ea81042a3a38c3d979e32674b9174aef47d458e9a7c8ea7942c08f1a7177b9bc739f7cd9e0484aef9915204
 WHIRLPOOL 
63841a401739aa3eab24632fcec41dc5c186502f4b80fe782106a0c6448b1da2321bf2a7a0b0f83473f7c073cce2ac8f5f85440d955acc191a73bd95200cb2cf
 DIST sbt-launch-0.13.9.jar 1210236 SHA256 
4fddf384322c8aa02671ab89e229ab1e703613eee350e3af6c7790916d43f96d SHA512 
c447e7be5b18689e4821dbde699fba230214a34059aa38441dcff13938d3cb351f1bd4266d99a2dcd40a80a7c623a14483755a461417750ab60635ab73c2fdde
 WHIRLPOOL 
61806d9140b9b64b8a60f5f6a0e5d16bb6b16e643185b874780af0b3b32a9e62311d86e4a3fc3526735eb590a1a98f00881e60789c5b079521da660aea319171

diff --git a/dev-java/sbt/sbt-0.13.11.ebuild b/dev-java/sbt/sbt-0.13.11.ebuild
new file mode 100644
index 0000000..991ac86
--- /dev/null
+++ b/dev-java/sbt/sbt-0.13.11.ebuild
@@ -0,0 +1,153 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+# repoman gives LIVEVCS.unmasked even with EGIT_COMMIT, so create snapshot
+inherit eutils java-pkg-2 # git-r3
+
+MY_PV="0.13.11"
+
+L_PN="sbt-launch"
+L_P="${L_PN}-${MY_PV}"
+
+SV="2.10"
+
+DESCRIPTION="sbt is a build tool for Scala and Java projects that aims to do 
the basics well"
+HOMEPAGE="http://www.scala-sbt.org/";
+EGIT_COMMIT="v${PV}"
+EGIT_REPO_URI="https://github.com/sbt/sbt.git";
+SRC_URI="!binary?
+(
+       https://dev.gentoo.org/~gienah/snapshots/${P}-src.tar.bz2
+       https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.bz2
+       https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.bz2
+       
http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/${L_PN}/${MY_PV}/${L_PN}.jar
 -> ${L_P}.jar
+)
+binary? ( https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.bz2 
)
+"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="binary"
+
+DEPEND=">=virtual/jdk-1.7
+       >=dev-lang/scala-2.10.6:${SV}"
+RDEPEND=">=virtual/jre-1.7
+       dev-lang/scala:*"
+
+# test hangs or fails
+RESTRICT="test"
+
+# Note: to bump sbt, some things to try are:
+# 1. Create the sbt src snapshot:
+# git clone https://github.com/sbt/sbt.git sbt-0.13.11
+# cd sbt-0.13.11
+# git checkout v0.13.11
+# cd ..
+# tar --owner=portage --group=portage -cjf 
/usr/portage/distfiles/sbt-0.13.11-src.tar.bz2 \
+# sbt-0.13.11
+# 2. remove the https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.bz2
+# https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.bz2 and
+# https://dev.gentoo.org/~gienah/snapshots/${P}-test-deps.tar.bz2
+# binary? ( 
https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.bz2 )
+# from SRC_URI
+# 3. Comment the sbt publishLocal line in src_compile.
+# 4. try:
+# FEATURES='noclean -test' emerge -v -1 dev-java/sbt
+# It should fail in src_install since the sbt publishLocal is not done.
+# Check if it downloads more stuff in
+# src_compile to ${WORKDIR}/.ivy2 and ${WORKDIR}/.sbt.
+# 5. If some of the downloads fail, it might be necessary to run the sbt 
compile
+# again manually to obtain all the dependencies, if so (with jdk 1.6):
+# cd to ${S}
+# export EROOT=/
+# export WORKDIR='/var/tmp/portage/dev-java/sbt-0.13.11/work'
+# export SV="2.10"
+# export L_P=sbt-0.13.11
+# export PATH="/usr/share/scala-${SV}/bin:${WORKDIR}/${L_P}:${PATH}"
+# sbt compile
+# cd ${WORKDIR}
+# find .ivy2 .sbt -uid 0 -exec chown portage:portage {} \;
+# 6. cd ${WORKDIR}
+# tar -cjf /usr/portage/distfiles/sbt-0.13.11-ivy2-deps.tar.bz2 .ivy2
+# tar -cjf /usr/portage/distfiles/sbt-0.13.11-sbt-deps.tar.bz2 .sbt
+# Uncomment the sbt publishLocal line in src_compile.
+# 7. It *might* download more dependencies for src_test, however the presence 
of some of these may cause
+# the src_compile to fail.  So download them seperately as root so we can 
identify the
+# additional files.  Note: src_test creates some files in ${WORKDIR}/.m2 which 
are can
+# hopefully be ignored. As root:
+# cd ${S}
+# ${S}/sbt-0.13.11 test
+# cd ${WORKDIR}
+# tar --owner=portage --group=portage -cjf 
/usr/portage/distfiles/sbt-0.13.11-test-deps.tar.bz2 \
+# $(find .ivy2 .sbt -uid 0 -type f -print)
+# Note: It might not download anything in src_test, in which case 
sbt-0.13.11-test-deps.tar.bz2
+# is not required.
+# 8. Create the binary
+# cd $WORDKIR
+# tar --owner=portage --group=portage -cjf 
/usr/portage/distfiles/sbt-0.13.11-gentoo-binary.tar.bz2 \
+# sbt-0.13.11 .ivy2/local
+# 9. Undo the earlier temporary edits to the ebuild.
+
+src_unpack() {
+       # if ! use binary; then
+       #       git-r3_src_unpack
+       # fi
+       # Unpack tar files only.
+       for f in ${A} ; do
+               [[ ${f} == *".tar."* ]] && unpack ${f}
+       done
+}
+
+java_prepare() {
+       if ! use binary; then
+               mkdir "${WORKDIR}/${L_P}" || die
+               cp -p "${DISTDIR}/${L_P}.jar" "${WORKDIR}/${L_P}/${L_PN}.jar" 
|| die
+               cat <<- EOF > "${WORKDIR}/${L_P}/sbt"
+                       #!/bin/sh
+                       SBT_OPTS="-Xms512M -Xmx1536M -Xss1M 
-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=512M"
+                       java -Djavac.args="-encoding UTF-8" 
-Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${WORKDIR}/${L_P}/sbt-launch.jar" 
"\$@"
+               EOF
+               cat <<- EOF > "${S}/${P}"
+                       #!/bin/sh
+                       SBT_OPTS="-Xms512M -Xmx1536M -Xss1M 
-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=512M"
+                       java -Djavac.args="-encoding UTF-8" 
-Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${S}/launch/target/sbt-launch.jar" 
"\$@"
+               EOF
+               chmod u+x "${WORKDIR}/${L_P}/sbt" "${S}/${P}" || die
+               local SCALA_PVR="$(java-config --query=PVR 
--package=scala-${SV})"
+               local SFV="${SCALA_PVR/-*}"
+               sed -e "s@scalaVersion := \"2.10.4\",@scalaVersion := 
\"${SFV}\",\n  scalaHome := Some(file(\"/usr/share/scala-${SV}\")),@" \
+                       -i "${S}/build.sbt" || die
+       fi
+}
+
+src_compile() {
+       if ! use binary; then
+               export 
PATH="${EROOT}usr/share/scala-${SV}/bin:${WORKDIR}/${L_P}:${PATH}"
+               einfo "=== sbt compile ..."
+               "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true compile || die
+               einfo "=== sbt publishLocal with jdk $(java-pkg_get-vm-version) 
..."
+               cat <<- EOF | "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true 
|| die
+                       set every javaVersionPrefix in javaVersionCheck := 
Some("$(java-pkg_get-vm-version)")
+                       publishLocal
+               EOF
+       fi
+}
+
+src_test() {
+       if ! use binary; then
+               export PATH="${EROOT}usr/share/scala-${SV}/bin:${S}:${PATH}"
+               "${S}/${P}" -Dsbt.log.noformat=true test || die
+       fi
+}
+
+src_install() {
+       # Place sbt-launch.jar at the end of the CLASSPATH
+       java-pkg_dojar $(find "${WORKDIR}"/.ivy2/local -name \*.jar -print | 
grep -v sbt-launch.jar) \
+                                  $(find "${WORKDIR}"/.ivy2/local -name 
sbt-launch.jar -print)
+       local ja="-Dsbt.version=${PV} -Xms512M -Xmx1536M -Xss1M 
-XX:+CMSClassUnloadingEnabled"
+       java-pkg_current-vm-matches "1.7" && ja+=" -XX:MaxPermSize=512M"
+       java-pkg_dolauncher sbt --jar sbt-launch.jar --java_args "${ja}"
+}

Reply via email to