# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ EAPI="5" JAVA_PKG_IUSE="doc source test" inherit java-pkg-2 java-ant-2 MY_P="${PN}-jdk15on-${PV/./}" DESCRIPTION="Java cryptography APIs" HOMEPAGE="http://www.bouncycastle.org/java.html" SRC_URI="http://www.bouncycastle.org/download/${MY_P}.tar.gz" LICENSE="BSD" SLOT="0" KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x64-macos" # Tests are currently broken. Needs further investigation. # java.security.NoSuchAlgorithmException: Cannot find any provider supporting McElieceFujisakiWithSHA256 RESTRICT="test" # The src_unpack find needs a new find # https://bugs.gentoo.org/show_bug.cgi?id=182276 DEPEND=">=virtual/jdk-1.6 app-arch/unzip userland_GNU? ( sys-apps/findutils ) test? ( dev-java/junit:4 )" RDEPEND=">=virtual/jre-1.6" IUSE="userland_GNU" S="${WORKDIR}/${MY_P}" src_unpack() { default cd "${S}" || die unpack ./src.zip } java_prepare() { mkdir "${S}"/classes || die if use test; then java-pkg_jar-from --build-only junit-4 fi } src_compile() { find . -name "*.java" > "${T}"/src.list local cp if use test ; then cp="-cp junit.jar" else sed -i '/\/test\//d' "${T}"/src.list || die "Failed to remove test classes" fi ejavac $cp -encoding ISO-8859-1 -d "${S}"/classes "@${T}"/src.list cd "${S}"/classes || die jar -cf "${S}"/${PN}.jar * || die "Failed to create jar." } src_test() { java -cp ${PN}.jar:junit.jar org.bouncycastle.pqc.jcajce.provider.test.AllTests | tee pqc.tests java -cp ${PN}.jar:junit.jar org.bouncycastle.ocsp.test.AllTests | tee oscp.tests java -cp ${PN}.jar:junit.jar org.bouncycastle.jce.provider.test.AllTests | tee jce.tests grep -q FAILURES *.tests && die "Tests failed." } src_install() { java-pkg_dojar ${PN}.jar use source && java-pkg_dosrc org use doc && java-pkg_dojavadoc docs }