commit:     fd7e7d11e8f68eda16467083d9fbce30a08ca184
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  1 21:43:40 2015 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Thu Oct  1 22:15:38 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd7e7d11

dev-java/jss: Version bump to 4.3.2

 * Set CC and AR correctly (bug #428188)
 * Fix javadoc under Java 8
 * Similify Linux kernel version fix
 * Get more tests passing though they still need to be RESTRICTed

Package-Manager: portage-2.2.20.1

 dev-java/jss/Manifest                      |   1 +
 dev-java/jss/files/jss-4.3-javadoc.patch   |  11 ++++
 dev-java/jss/files/jss-4.3.2-ldflags.patch |  11 ++++
 dev-java/jss/jss-4.3-r1.ebuild             | 101 -----------------------------
 dev-java/jss/jss-4.3.2.ebuild              |  94 +++++++++++++++++++++++++++
 5 files changed, 117 insertions(+), 101 deletions(-)

diff --git a/dev-java/jss/Manifest b/dev-java/jss/Manifest
index 1a2012b..c51c7a4 100644
--- a/dev-java/jss/Manifest
+++ b/dev-java/jss/Manifest
@@ -1 +1,2 @@
+DIST jss-4.3.2.tar.bz2 435542 SHA256 
8bfe94668e8aa1b8fdfaf01fd45b18daa2336e1901f90922c44327116df8a278 SHA512 
3296da72f204fc4a0ea58dd889cf2721a4afa0ec7b5406312e64354cc67edcfc370140ad22a24f0dfcf11e438e69ebe9da45a70b5cbaa4026b40fd5fcf96c232
 WHIRLPOOL 
5f72f6cccb49c40e840472329461475bfd83e6ac98ea60cee63c0194374e210df5dac038fb891635f84625c5643b0b25fa36253c78b3cad4461d647c7a0fcc15
 DIST jss-4.3.tar.bz2 421731 SHA256 
e82cdcadd6d7acd0d5f9274134dd5a88f26d7e47e7d9d8b059ce68ca413fb54e SHA512 
b1ae0f2dc2ca90a30caca97e4e89a471f4d0a0483dd384f242989de8a21fdd3c99dc4c452e5ef7e23bf3de745e5868f276528f76afc8aef7a9e7fe99722e0b4f
 WHIRLPOOL 
77773968499aa7c88ed14ae4ab899a45935d5a6c4a0b6d455428f62e81d24bd379324726bda61e3c84521040cc3439ae2a5d167f32006d6dc97ba2b3ec923f5f

diff --git a/dev-java/jss/files/jss-4.3-javadoc.patch 
b/dev-java/jss/files/jss-4.3-javadoc.patch
new file mode 100644
index 0000000..891e1ff
--- /dev/null
+++ b/dev-java/jss/files/jss-4.3-javadoc.patch
@@ -0,0 +1,11 @@
+--- security/jss/build_java.pl.orig    2015-10-01 23:04:22.540035573 +0100
++++ security/jss/build_java.pl 2015-10-01 23:11:41.413230402 +0100
+@@ -323,7 +323,7 @@
+     ensure_dir_exists("$dist_dir/jssdoc");
+     my $targets = join(" ", @packages);
+     print "$targets\n";
+-    print_do("$javadoc -breakiterator -sourcepath . -d $dist_dir/jssdoc 
$html_header_opt $targets");
++    print_do("$javadoc -Xdoclint:none -breakiterator -sourcepath . -d 
$dist_dir/jssdoc $html_header_opt $targets");
+     print_do("cp $dist_dir/jssdoc/index.html 
$dist_dir/jssdoc/index.html.bak");
+     print_do("cp $dist_dir/jssdoc/overview-summary.html 
$dist_dir/jssdoc/index.html");
+ }

diff --git a/dev-java/jss/files/jss-4.3.2-ldflags.patch 
b/dev-java/jss/files/jss-4.3.2-ldflags.patch
new file mode 100644
index 0000000..fde2e26
--- /dev/null
+++ b/dev-java/jss/files/jss-4.3.2-ldflags.patch
@@ -0,0 +1,11 @@
+--- security/coreconf/Linux.mk.orig    2010-01-15 22:19:00.000000000 +0000
++++ security/coreconf/Linux.mk 2015-09-27 22:17:50.102547607 +0100
+@@ -142,7 +142,7 @@
+ ARCH                  = linux
+ 
+ DSO_CFLAGS            = -fPIC
+-DSO_LDOPTS            = -shared $(ARCHFLAG)
++DSO_LDOPTS            = $(LDFLAGS) -shared $(ARCHFLAG)
+ # The linker on Red Hat Linux 7.2 and RHEL 2.1 (GNU ld version 2.11.90.0.8)
+ # incorrectly reports undefined references in the libraries we link with, so
+ # we don't use -z defs there.

diff --git a/dev-java/jss/jss-4.3-r1.ebuild b/dev-java/jss/jss-4.3-r1.ebuild
deleted file mode 100644
index 846e085..0000000
--- a/dev-java/jss/jss-4.3-r1.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit base java-pkg-2 linux-info versionator
-
-RTM_NAME="JSS_${PV//./_}_RTM"
-
-DESCRIPTION="Network Security Services for Java (JSS)"
-HOMEPAGE="http://www.mozilla.org/projects/security/pki/jss/";
-# To prepare this tarball
-# cvs -d :pserver:[email protected]:/cvsroot export \
-#    -r JSS_4_3_RTM mozilla/security/coreconf
-# cvs -d :pserver:[email protected]:/cvsroot export \
-#    -r JSS_4_3_RTM mozilla/security/jss
-# tar cvjf jss-4.3.tar.bz2 mozilla
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-LICENSE="MPL-1.1"
-SLOT="3.4"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND=">=dev-libs/nspr-4.7
-       >=dev-libs/nss-3.12"
-
-DEPEND=">=virtual/jdk-1.4
-       app-arch/zip
-       virtual/pkgconfig
-       ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.4
-       ${CDEPEND}"
-
-S="${WORKDIR}/mozilla"
-
-java_prepare() {
-       epatch "${FILESDIR}"/${PN}-3.4-target_source.patch
-       epatch "${FILESDIR}"/${PN}-4.2.5-use_pkg-config.patch
-       epatch "${FILESDIR}"/${P}-cflags.patch
-       epatch "${FILESDIR}"/${P}-ldflags.patch
-       epatch "${FILESDIR}"/${P}-secitem.patch
-}
-
-# See bug 539100.
-pkg_setup() {
-       linux-info_pkg_setup
-       java-pkg-2_pkg_setup
-}
-
-src_compile() {
-       export JAVA_GENTOO_OPTS="-source $(java-pkg_get-source) -target 
$(java-pkg_get-target)"
-
-       use amd64 && export USE_64=1
-
-       cd "${S}/security/coreconf" || die
-
-       # Hotfix for kernel 3.x #379283
-       get_running_version || die "Failed to determine kernel version"
-       if [[ ${KV_MAJOR} -ge 3 ]]; then
-               cp Linux2.6.mk Linux${KV_MAJOR}.${KV_MINOR}.mk || die
-       fi
-
-       emake -j1 BUILD_OPT=1
-
-       cd "${S}/security/jss" || die
-       emake -j1 BUILD_OPT=1 USE_PKGCONFIG=1 NSS_PKGCONFIG=nss 
NSPR_PKGCONFIG=nspr
-
-       if use doc; then
-               emake -j1 BUILD_OPT=1 javadoc
-       fi
-}
-
-# Investigate why this fails.
-#
-# cp: cannot stat 
‘/var/tmp/portage/dev-java/jss-4.3-r1/work/mozilla/dist/Linux3.8_x86_64_glibc_PTH_64_OPT.OBJ//lib/*nssckbi*’:
 No such file or directory
-# Failed to copy builtins library at security/jss/org/mozilla/jss/tests/all.pl 
line 453.
-#
-# There is indeed no nssckbi file, investigation needed if that file can be
-# generated or whether we can remove the broken test; possibly inform upstream.
-RESTRICT="test"
-
-src_test() {
-       BUILD_OPT=1 perl security/jss/org/mozilla/jss/tests/all.pl dist \
-               "${S}"/dist/Linux*.OBJ/
-}
-
-src_install() {
-       java-pkg_dojar dist/*.jar
-
-       # Use this instead of the one in dist because it is a symlink
-       # and doso handles symlinks by just symlinking to the original
-       java-pkg_doso ./security/${PN}/lib/*/*.so
-
-       use doc && java-pkg_dojavadoc dist/jssdoc
-       use source && java-pkg_dosrc ./security/jss/org
-       use examples && java-pkg_doexamples ./security/jss/samples
-}

diff --git a/dev-java/jss/jss-4.3.2.ebuild b/dev-java/jss/jss-4.3.2.ebuild
new file mode 100644
index 0000000..fb3bacf
--- /dev/null
+++ b/dev-java/jss/jss-4.3.2.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+JAVA_PKG_IUSE="doc source"
+
+inherit multilib toolchain-funcs java-pkg-2
+
+DESCRIPTION="Network Security Services for Java (JSS)"
+HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/JSS";
+# 4.3.2 was released but was seemingly never announced. The binary jar
+# exists on Mozilla's servers but Chewi could only find a source tarball
+# at https://obs.kolabsys.com/package/show/Kolab:3.4/jss. However, you
+# need to register in order to download it, hence he has mirrored it.
+SRC_URI="https://dev.gentoo.org/~chewi/distfiles/${P}.tar.bz2";
+LICENSE="MPL-1.1"
+SLOT="3.4"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples test"
+
+CDEPEND=">=dev-libs/nspr-4.7.1
+       >=dev-libs/nss-3.12.5"
+
+DEPEND="${CDEPEND}
+       dev-lang/perl
+       >=virtual/jdk-1.6
+       virtual/pkgconfig
+       test? ( dev-libs/nss[utils] )"
+
+RDEPEND="${CDEPEND}
+       >=virtual/jre-1.6"
+
+S="${WORKDIR}/${P}/mozilla"
+
+java_prepare() {
+       epatch "${FILESDIR}"/${PN}-3.4-target_source.patch
+       epatch "${FILESDIR}"/${PN}-4.2.5-use_pkg-config.patch
+       epatch "${FILESDIR}"/${PN}-4.3-cflags.patch
+       epatch "${FILESDIR}"/${PN}-4.3.2-ldflags.patch
+       epatch "${FILESDIR}"/${PN}-4.3-secitem.patch
+
+       if java-pkg_is-vm-version-ge 1.8; then
+               epatch "${FILESDIR}"/${PN}-4.3-javadoc.patch
+       fi
+}
+
+src_compile() {
+       local ARGS=(
+               "CC=$(tc-getCC)"
+               "AR=$(tc-getAR) cr \$@"
+               "OS_RELEASE=2.6"
+               "BUILD_OPT=1"
+       )
+
+       export JAVA_GENTOO_OPTS="$(java-pkg_javac-args)"
+       use amd64 && export USE_64=1
+
+       cd "${S}/security/coreconf" || die
+       emake -j1 "${ARGS[@]}"
+
+       cd "${S}/security/jss" || die
+       emake -j1 "${ARGS[@]}" USE_PKGCONFIG=1 NSS_PKGCONFIG=nss 
NSPR_PKGCONFIG=nspr
+       use doc && emake -j1 "${ARGS[@]}" javadoc
+}
+
+# Chewi has managed to reach a test pass rate of 31/40 (78%) but the
+# remainder fail due to JSS not having kept pace with the ciphersuites
+# in NSS. There's not much we can do about that. The suite also leaves
+# java processes running and exits successfully on failure.
+RESTRICT="test"
+
+src_test() {
+       # Parts of NSS are required for the tests.
+       ln -snf "${EROOT}usr/$(get_libdir)/libnssckbi.so" dist/Linux*.OBJ/lib/ 
|| die
+       ln -snf "${EROOT}usr/bin" dist/Linux*.OBJ/ || die
+
+       # The tests must be run from this directory.
+       cd security/jss/org/mozilla/jss/tests || die
+       BUILD_OPT=1 perl all.pl dist "${S}"/dist/Linux*.OBJ/ || die "tests 
failed"
+}
+
+src_install() {
+       java-pkg_dojar dist/*.jar
+
+       # Use this instead of the one in dist because it is a symlink
+       # and doso handles symlinks by just symlinking to the original
+       java-pkg_doso ./security/${PN}/lib/*/*.so
+
+       use doc && java-pkg_dojavadoc dist/jssdoc
+       use source && java-pkg_dosrc ./security/jss/org
+       use examples && java-pkg_doexamples ./security/jss/samples
+}

Reply via email to