Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 538734 Details for
Bug 632532
dev-java/sbt-1.0.2 1.1.6 1.2.0-RC 1.3.6 forks a second java process and hangs
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
failed attempt to package sbt 1.2.0 rc1
sbt-1.2.0_rc1.ebuild (text/plain), 8.48 KB, created by
Mark Wright
on 2018-07-08 01:37:41 UTC
(
hide
)
Description:
failed attempt to package sbt 1.2.0 rc1
Filename:
MIME Type:
Creator:
Mark Wright
Created:
2018-07-08 01:37:41 UTC
Size:
8.48 KB
patch
obsolete
># Copyright 1999-2018 Gentoo Foundation ># Distributed under the terms of the GNU General Public License v2 > >EAPI="6" > >inherit eutils java-pkg-2 > >B_PV="0.13.17" >B_PN="sbt" >B_P="${B_PN}-${B_PV}" > >SB_PV="1.2.0-RC1" >SB_PN="sbt" >SB_P="${SB_PN}-${SB_PV}" > >IO_PV="1.2.0-M2" >IO_PN="io" >IO_P="${P}-${IO_PN}-${IO_PV}" > >UTIL_PV="1.2.0-M2" >UTIL_PN="util" >UTIL_P="${P}-${UTIL_PN}-${UTIL_PV}" > >LM_PV="1.2.0-M3" >LM_PN="librarymanagement" >LM_P="${P}-${LM_PN}-${LM_PV}" > >Z_PV="1.2.0-M1" >Z_PN="zinc" >Z_P="${P}-${Z_PN}-${Z_PV}" > >SV="2.12" > >DESCRIPTION="sbt is a build tool for Scala and Java projects that aims to do the basics well" >HOMEPAGE="http://www.scala-sbt.org/" ># SRC_URI=" ># !binary? ( ># https://dev.gentoo.org/~gienah/snapshots/${P}-src.tar.xz ># https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz ># https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz ># ) ># binary? ( ># https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.xz ># )" > >SRC_URI=" > !binary? ( > https://github.com/sbt/${B_PN}/releases/download/v${B_PV}/${B_P}.tgz > https://github.com/sbt/${SB_PN}/archive/v${SB_PV}.zip -> ${SB_P}.zip > https://github.com/sbt/${IO_PN}/archive/v${IO_PV}.zip -> ${IO_P}.zip > https://github.com/sbt/${UTIL_PN}/archive/v${UTIL_PV}.zip -> ${UTIL_P}.zip > https://github.com/sbt/${LM_PN}/archive/v${LM_PV}.zip -> ${LM_P}.zip > https://github.com/sbt/${Z_PN}/archive/v${Z_PV}.zip -> ${Z_P}.zip > ) >" > >LICENSE="BSD" >SLOT="0" >KEYWORDS="~amd64 ~x86" >IUSE="binary" > >DEPEND=">=virtual/jdk-1.8 > >=dev-lang/scala-2.12.4:${SV}" >RDEPEND=">=virtual/jre-1.8 > dev-java/jline:2 > >=dev-lang/scala-2.12.4:${SV}" > ># test does not seem to do anything except instantly fail >RESTRICT="test" > >JAVA_GENTOO_CLASSPATH="scala-${SV},jline-2" > >S=${WORKDIR}/${SB_P} > ># Note: to bump sbt, some things to try are: ># 1. remove the https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz ># https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz and ># binary? ( https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.xz ) ># from SRC_URI ># 2. Comment the sbt publishLocal line in src_compile. ># 3. 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. ># 4. If some of the downloads fail, it might be necessary to run the sbt compile ># again manually to obtain all the dependencies, if so: ># cd to ${S} ># export EROOT=/ ># export WORKDIR='/var/tmp/portage/dev-java/${P}/work' ># export SV="2.11" ># export SB_P=${P} ># export PATH="/usr/share/scala-${SV}/bin:${WORKDIR}/${SB_P}:${PATH}" ># sbt compile ># cd ${WORKDIR} ># find .ivy2 .sbt -uid 0 -exec chown portage:portage {} \; ># 5. cd ${WORKDIR} ># XZ_OPT=-9 tar --owner=portage --group=portage \ ># -cJf /usr/portage/distfiles/${P}-ivy2-deps.tar.xz .ivy2/cache ># XZ_OPT=-9 tar --owner=portage --group=portage \ ># -cJf /usr/portage/distfiles/${P}-sbt-deps.tar.xz .sbt ># Uncomment the sbt publishLocal line in src_compile. ># 6. 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. As root: ># cd ${S} ># ${S}/${P} test ># cd ${WORKDIR} ># XZ_OPT=-9 tar --owner=portage --group=portage \ ># -cJf /usr/portage/distfiles/${P}-test-deps.tar.xz \ ># $(find .ivy2/cache .sbt -uid 0 -type f -print) ># Note: It might not download anything in src_test, in which case ># ${P}-test-deps.tar.xz is not required. ># 7. Create the binary ># cd $WORDKIR ># XZ_OPT=-9 tar --owner=portage --group=portage \ ># -cJf /usr/portage/distfiles/${P}-gentoo-binary.tar.xz ${P} .ivy2/local ># 9. Undo the earlier temporary edits to the ebuild. > >src_unpack() { > # Unpack tar and zip files only. > for f in ${A}; do > [[ ${f} == *".tgz" ]] || [[ ${f} == *".tar."* ]] || [[ ${f} == *".zip" ]] && unpack ${f} > done >} > >src_prepare() { > default > if ! use binary; then > sed -e "s@scalaVersion := scala210,@scalaVersion := scala${SV/./},\n scalaHome := Some(file(\"${EROOT}usr/share/scala-${SV}\")),@" \ > -i "${S}/build.sbt" || die > > # suppress this warning in build.log: > # [warn] Credentials file /var/tmp/portage/dev-java/${P}/work/.bintray/.credentials does not exist > mkdir -p "${WORKDIR}/.bintray" || die > cat <<- EOF > "${WORKDIR}/.bintray/.credentials" > realm = Bintray API Realm > host = api.bintray.com > user = > password = > EOF > > cat <<- EOF > "${S}"/.jvmopts || die > -Djava.io.tmpdir="${T}" -Duser.home="${WORKDIR}" > EOF > > cat <<-EOF >>"${S}"/.sbtopts || die > -Dsbt.server.autostart=false > EOF > > for v in "1.0" "1.1" "1.2"; do > if [ ! -d "${WORKDIR}"/.sbt/${v} ]; then > mkdir -p "${WORKDIR}"/.sbt/${v} || die > fi > > cat <<-EOF >"${WORKDIR}"/.sbt/${v}/global.sbt || die > SettingKey[Boolean]("autoStartServer", "") := false > EOF > done > fi >} > >sbt_env() { > export PATH="${EROOT}usr/share/scala-${SV}/bin:${WORKDIR}/${SB_P}:${PATH}" >} > >src_compile() { > if ! use binary; then > einfo "=== sbt compile ..." > sbt_env > # "${WORKDIR}/${SB_P}/bin/sbt" \ > # strace -o sbt.out -f bash -c "${WORKDIR}/${SB_P}/bin/sbt" \ > declare -a cc=( > "${WORKDIR}/${B_PN}/bin/sbt" > "-Dsbt.log.noformat=true" > "-Dsbt.server.autostart=false" > "-Dsbtio.path=../${IO_PN}-${IO_PV}" > "-Dsbtutil.path=../${UTIL_PN}-${UTIL_PV}" > "-Dsbtlm.path=../${LM_PN}-${LM_PV}" > "-Dsbtzinc.path=../${Z_PN}-${Z_PV}" > ) > einfo "${cc[@]} publishLocalAllModule" > # cat <<- EOF | bash -c "${WORKDIR}/${SB_P}/bin/sbt" \ > # -Dsbt.log.noformat=true \ > # -Dsbt.server.autostart=false \ > # -Dsbtio.path=../${IO_PN}-${IO_PV} \ > # -Dsbtutil.path=../${UTIL_PN}-${UTIL_PV} \ > # -Dsbtlm.path=../${LM_PN}-${LM_PV} \ > # -Dsbtzinc.path=../${Z_PN}-${Z_PV} || die > # compile > # exit > # EOF > # cat <<- EOF | java -XX:ReservedCodeCacheSize=128m \ > # -XX:MaxMetaspaceSize=256m \ > # -Djava.io.tmpdir="${T}" \ > # -Duser.home="${WORKDIR}" \ > # -Xms2048M \ > # -Xmx2048M \ > # -Xss2M \ > # -jar "${WORKDIR}/${SB_PN}/bin/sbt-launch.jar" \ > # -Dsbt.log.noformat=true \ > # -Dsbt.server.autostart=false \ > # -Dsbtio.path=../${IO_PN}-${IO_PV} \ > # -Dsbtutil.path=../${UTIL_PN}-${UTIL_PV} \ > # -Dsbtlm.path=../${LM_PN}-${LM_PV} \ > # -Dsbtzinc.path=../${Z_PN}-${Z_PV} || die > # publishLocalAllModule > # exit > # EOF > > # java -XX:ReservedCodeCacheSize=128m \ > # -XX:MaxMetaspaceSize=256m \ > # -Djava.io.tmpdir="${T}" \ > # -Duser.home="${WORKDIR}" \ > # -Xms2048M \ > # -Xmx2048M \ > # -Xss2M \ > # -jar "${WORKDIR}/${B_PN}/bin/sbt-launch.jar" \ > # -Dsbt.log.noformat=true \ > # -Dsbtio.path=../${IO_PN}-${IO_PV} \ > # -Dsbtutil.path=../${UTIL_PN}-${UTIL_PV} \ > # -Dsbtlm.path=../${LM_PN}-${LM_PV} \ > # -Dsbtzinc.path=../${Z_PN}-${Z_PV} \ > # publishLocalAllModule || die > > # "${WORKDIR}/${B_PN}"/bin/sbt -d \ > # -Dsbt.log.noformat=true \ > # -Dsbt.server.autostart=false \ > # -Dsbtio.path=../${IO_PN}-${IO_PV} \ > # -Dsbtutil.path=../${UTIL_PN}-${UTIL_PV} \ > # -Dsbtlm.path=../${LM_PN}-${LM_PV} \ > # -Dsbtzinc.path=../${Z_PN}-${Z_PV} \ > # publishLocalAllModule || die > > cat <<- EOF | "${WORKDIR}/${B_PN}"/bin/sbt -d -v \ > -Dsbt.log.noformat=true \ > -Dsbt.server.autostart=false \ > -Dsbtio.path=../${IO_PN}-${IO_PV} \ > -Dsbtutil.path=../${UTIL_PN}-${UTIL_PV} \ > -Dsbtlm.path=../${LM_PN}-${LM_PV} \ > -Dsbtzinc.path=../${Z_PN}-${Z_PV} || die > publishLocalAllModule > exit > EOF > > # einfo "=== sbt publishLocal with jdk $(java-pkg_get-vm-version) ..." > # "${WORKDIR}/${SB_P}/sbt" -Dsbt.log.noformat=true publishLocal || die > einfo "sbt publishLocalAllModule finished" > fi >} > >src_test() { > sbt_env > "${S}/${P}" -Dsbt.log.noformat=true test || die >} > >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}" > # disable memory mapping fixes this error when starting sbt: > # mmap failed for CEN and END part of zip file > ja+=" -Dsun.zip.disableMemoryMapping=true" > # disable auto starting the sbt server fixes this error when starting sbt: > # Exception in thread "sbt-socket-server" java.lang.UnsatisfiedLinkError: > # /tmp/jna-1469034162/jna4237250668830949412.tmp: /tmp/jna-1469 > ja+=" -Dsbt.server.autostart=false" > ja+=" -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled" > java-pkg_dolauncher sbt --jar sbt-launch.jar --java_args "${ja}" >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 632532
: 538734