summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Le Cuirot <chewi@gentoo.org>2015-10-01 22:43:40 +0100
committerJames Le Cuirot <chewi@gentoo.org>2015-10-01 23:15:38 +0100
commitfd7e7d11e8f68eda16467083d9fbce30a08ca184 (patch)
treee8cca9321ca4b121a8b6c43df7eab1db52775b29 /dev-java/jss
parentdev-java/vecmath: Stable for amd64+x86. (diff)
downloadgentoo-fd7e7d11e8f68eda16467083d9fbce30a08ca184.tar.gz
gentoo-fd7e7d11e8f68eda16467083d9fbce30a08ca184.tar.bz2
gentoo-fd7e7d11e8f68eda16467083d9fbce30a08ca184.zip
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
Diffstat (limited to 'dev-java/jss')
-rw-r--r--dev-java/jss/Manifest1
-rw-r--r--dev-java/jss/files/jss-4.3-javadoc.patch11
-rw-r--r--dev-java/jss/files/jss-4.3.2-ldflags.patch11
-rw-r--r--dev-java/jss/jss-4.3-r1.ebuild101
-rw-r--r--dev-java/jss/jss-4.3.2.ebuild94
5 files changed, 117 insertions, 101 deletions
diff --git a/dev-java/jss/Manifest b/dev-java/jss/Manifest
index 1a2012b98cc6..c51c7a4e3d6b 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 000000000000..891e1ff93838
--- /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 000000000000..fde2e26bf77c
--- /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 846e085a58c5..000000000000
--- 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:anonymous@cvs-mirror.mozilla.org:/cvsroot export \
-# -r JSS_4_3_RTM mozilla/security/coreconf
-# cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/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 000000000000..fb3bacf60057
--- /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
+}