mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-07-31 10:58:21 -07:00
dev-java/icedtea-web: Version bump, addressing many issues
* Bump to version 1.6.1 (#530860) * Respect java-config's VM selection (#538144, #552640) * Use new eselect-java that looks for itweb-javaws (#504678) * Fix USE=doc under stricter Java 8 (#558718) * Don't call hg because .hg directory is missing (#528268) This version no longer relies on eselect java-nsplugin as it installs the plugin directly under /usr/lib/nsbrowser/plugins. It blocks the Oracle plugins because Firefox cannot disable them individually. Package-Manager: portage-2.2.26
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST icedtea-web-1.5.1.tar.gz 1616344 SHA256 03f16356fa84564f1ae32286e0a090a464c87ec123b40602dcea925757900195 SHA512 ef47eecbbb52fcb44ec9585db4c4428025201b04968dfcfc26061160d80b29ee649752f21ffe891cfa5c6bf775d0bc1dbb7dbd9a79794e052bb8b865fa94d039 WHIRLPOOL 955b5cc565fa62d2f5eb85a3253751cd284a4cb926619afe60920123878281a77f348a7c26cdafea2c6d4cd760fe4d399041b665b86ff1bbaf441e25f9f18379
|
||||
DIST icedtea-web-1.6.1.tar.gz 1776222 SHA256 a9b46ab6c9dc303c89651143596bc5abea29242b9bdcabdd2dab7c606592c920 SHA512 dae39818f74a098289acd0736d27c2e68b10b603a3fb0a180cf4b6444345cbe71ab1ba77dfb198f053f9567bb18aa96de09049c3b595b3d292d142a7ae7d3ef9 WHIRLPOOL 96826d17daee16dfa99f6439678cc509c94556955839b7e8bc43c1993ee04740f35b0547d56649bb9f7a625b5b2515be9d173b642ccb15cb1dead83a03586a6e
|
||||
|
||||
56
dev-java/icedtea-web/files/README.gentoo-r1
Normal file
56
dev-java/icedtea-web/files/README.gentoo-r1
Normal file
@@ -0,0 +1,56 @@
|
||||
Browser plugin
|
||||
--------------
|
||||
|
||||
The IcedTea browser plugin (NPPlugin) is now made immediately
|
||||
available to supporting browsers without the need for eselect. Note
|
||||
that Chromium-based browsers no longer support NPAPI-based plugins
|
||||
since the code was removed in September 2015. The list of supporting
|
||||
browsers is shrinking but still includes Firefox as of version 46.
|
||||
|
||||
JVM selection
|
||||
-------------
|
||||
|
||||
By default, IcedTea's browser plugin and Web Start uses the JVM
|
||||
selected via eselect or the GENTOO_VM environment variable. Note that
|
||||
this doesn't have to be an IcedTea JVM. An Oracle JVM will also
|
||||
work. The choice can be overridden using the itweb-settings
|
||||
program. Simply blank out the field to restore the default behaviour.
|
||||
|
||||
Coexistence with Oracle's plugin
|
||||
--------------------------------
|
||||
|
||||
The IcedTea browser plugin can no longer be installed alongside
|
||||
Oracle's plugin. This used to be possible thanks to eselect
|
||||
java-nsplugin but this was removed in an effort to simplify things. No
|
||||
one is likely to need both, especially with plugins being all but
|
||||
outlawed these days. To avoid any blockers, simply enable the nsplugin
|
||||
USE flag on icedtea-web or the Oracle packages, but not both.
|
||||
|
||||
If you're wondering why we don't just leave plugin selection to the
|
||||
browser, it's because Firefox (and probably others) only allows you to
|
||||
disable all the Java plugins together, not individually.
|
||||
|
||||
Coexistence with Oracle's Web Start
|
||||
-----------------------------------
|
||||
|
||||
/usr/bin/javaws, the executable used to launch JNLP files from a
|
||||
browser, will always use IcedTea's implementation over Oracle's when
|
||||
icedtea-web is installed, regardless of which JVM has been
|
||||
selected. This is primarily for consistency with the browser
|
||||
plugin. If you want to use Oracle's implementation then simply
|
||||
uninstall icedtea-web.
|
||||
|
||||
32-bit plugin on 64-bit systems
|
||||
-------------------------------
|
||||
|
||||
This is no longer supported as the 64-bit plugin can launch a 32-bit
|
||||
JVM. Other reasons for running a 32-bit browser on a 64-bit system
|
||||
have long passed.
|
||||
|
||||
32-bit JVM on 64-bit systems
|
||||
----------------------------
|
||||
|
||||
The emul-linux-x86-java package was removed in 2015 with the migration
|
||||
to full multilib. icedtea-bin now provides this feature via the
|
||||
multilib USE flag. Once installed, using the 32-bit variant is simply
|
||||
a case of selecting that VM as described above.
|
||||
11
dev-java/icedtea-web/files/icedtea-web-1.6-javadoc.patch
Normal file
11
dev-java/icedtea-web/files/icedtea-web-1.6-javadoc.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- Makefile.am.orig 2015-09-11 14:02:04.245280051 +0100
|
||||
+++ Makefile.am 2016-01-01 14:00:49.857225492 +0000
|
||||
@@ -652,7 +652,7 @@
|
||||
|
||||
stamps/netx-docs.stamp:
|
||||
if ENABLE_DOCS
|
||||
- $(SYSTEM_JDK_DIR)/bin/javadoc $(JAVADOC_MEM_OPTS) $( _OPTS) \
|
||||
+ $(SYSTEM_JDK_DIR)/bin/javadoc $(JAVADOC_MEM_OPTS) $(JAVADOC_OPTS) \
|
||||
-d ${abs_top_builddir}/docs/netx -sourcepath $(NETX_SRCDIR) \
|
||||
-doctitle 'IcedTea-Web: NetX API Specification' \
|
||||
-windowtitle 'IcedTea-Web: NetX ' \
|
||||
79
dev-java/icedtea-web/files/icedtea-web-1.6-launchers.patch
Normal file
79
dev-java/icedtea-web/files/icedtea-web-1.6-launchers.patch
Normal file
@@ -0,0 +1,79 @@
|
||||
--- launcher/launchers.in.orig 2015-09-11 14:02:04.252280131 +0100
|
||||
+++ launcher/launchers.in 2015-12-18 23:06:35.721135526 +0000
|
||||
@@ -7,7 +7,7 @@
|
||||
BINARY_LOCATION=@BIN_LOCATION@
|
||||
SPLASH_LOCATION=@JAVAWS_SPLASH_LOCATION@
|
||||
PROGRAM_NAME=@PROGRAM_NAME@
|
||||
-CP=@JRE@/lib/rt.jar:@JRE@/lib/jfxrt.jar
|
||||
+CP=$(java-config -r)
|
||||
|
||||
CONFIG_HOME=$XDG_CONFIG_HOME
|
||||
if [ "x$CONFIG_HOME" = "x" ] ; then
|
||||
--- plugin/icedteanp/IcedTeaNPPlugin.cc.orig 2015-09-11 14:02:04.219279754 +0100
|
||||
+++ plugin/icedteanp/IcedTeaNPPlugin.cc 2015-12-19 22:35:23.479775591 +0000
|
||||
@@ -137,8 +137,7 @@
|
||||
static DIR *data_directory_descriptor;
|
||||
|
||||
// Fully-qualified appletviewer default executable and rt.jar
|
||||
-static const char* appletviewer_default_executable = ICEDTEA_WEB_JRE "/bin/java";
|
||||
-static const char* appletviewer_default_rtjar = ICEDTEA_WEB_JRE "/lib/rt.jar";
|
||||
+static const char* appletviewer_default_executable = ICEDTEA_WEB_JAVA;
|
||||
//javaws name and binary
|
||||
static const char* javaws_bin_property = "-Dicedtea-web.bin.location=" JAVAWS_BIN;
|
||||
static const char* javaws_name_property = "-Dicedtea-web.bin.name=" JAVAWS_NAME;
|
||||
@@ -298,7 +297,15 @@
|
||||
PLUGIN_ERROR("Your custom jre (/lib/rt.jar check) %s is not valid. Please fix %s in your %s. In attempt to run using default one. \n", custom_jre.c_str(), custom_jre_key.c_str(), default_file_ITW_deploy_props_name.c_str());
|
||||
}
|
||||
}
|
||||
- return appletviewer_default_rtjar;
|
||||
+ gchar *stdout;
|
||||
+ if (g_spawn_command_line_sync("java-config -r", &stdout, NULL, NULL, NULL)) {
|
||||
+ std::string result = g_strchomp(stdout);
|
||||
+ g_free(stdout);
|
||||
+ return result;
|
||||
+ } else {
|
||||
+ PLUGIN_ERROR("Failed to query jre bootclasspath with java-config.\n");
|
||||
+ return "";
|
||||
+ }
|
||||
}
|
||||
|
||||
static void cleanUpDir(){
|
||||
--- plugin/icedteanp/IcedTeaParseProperties.cc.orig 2015-09-11 14:02:04.220279765 +0100
|
||||
+++ plugin/icedteanp/IcedTeaParseProperties.cc 2015-12-19 23:06:05.095409132 +0000
|
||||
@@ -151,7 +151,15 @@
|
||||
}
|
||||
|
||||
string default_java_properties_file(){
|
||||
- return ICEDTEA_WEB_JRE "/lib/"+default_file_ITW_deploy_props_name;
|
||||
+ gchar *stdout;
|
||||
+ if (g_spawn_command_line_sync("java-config -o", &stdout, NULL, NULL, NULL)) {
|
||||
+ string result = g_strchomp(stdout);
|
||||
+ g_free(stdout);
|
||||
+ return result+"/lib/"+default_file_ITW_deploy_props_name;
|
||||
+ } else {
|
||||
+ PLUGIN_ERROR("Failed to query jre location with java-config.\n");
|
||||
+ return "";
|
||||
+ }
|
||||
}
|
||||
|
||||
|
||||
@@ -224,7 +232,7 @@
|
||||
dest = custom_jre_file;
|
||||
return true;
|
||||
}
|
||||
- } else {
|
||||
+ } else if (!default_java_file.empty()) {
|
||||
if(IcedTeaPluginUtilities::file_exists(default_java_file)) {
|
||||
dest = default_java_file;
|
||||
return true;
|
||||
--- Makefile.am.orig 2015-09-11 14:02:04.245280051 +0100
|
||||
+++ Makefile.am 2015-12-19 22:37:35.460518630 +0000
|
||||
@@ -353,7 +353,7 @@
|
||||
-DPLUGIN_VERSION="\"$(PLUGIN_VERSION)\"" \
|
||||
-DPACKAGE_URL="\"$(PACKAGE_URL)\"" \
|
||||
-DMOZILLA_VERSION_COLLAPSED="$(MOZILLA_VERSION_COLLAPSED)" \
|
||||
- -DICEDTEA_WEB_JRE="\"$(SYSTEM_JRE_DIR)\"" \
|
||||
+ -DICEDTEA_WEB_JAVA="\"$(JAVA)\"" \
|
||||
-DPLUGIN_BOOTCLASSPATH=$(PLUGIN_BOOTCLASSPATH) \
|
||||
$(GLIB_CFLAGS) \
|
||||
$(MOZILLA_CFLAGS) \
|
||||
49
dev-java/icedtea-web/files/icedtea-web-1.6-no-hg.patch
Normal file
49
dev-java/icedtea-web/files/icedtea-web-1.6-no-hg.patch
Normal file
@@ -0,0 +1,49 @@
|
||||
--- html-gen.sh.orig 2015-09-11 14:02:04.250280108 +0100
|
||||
+++ html-gen.sh 2016-01-01 14:13:46.693307166 +0000
|
||||
@@ -67,13 +67,18 @@
|
||||
if [ -z "$CHANGESETS" ] || [ "$CHANGESETS" -lt 0 ]; then CHANGESETS=10; fi
|
||||
|
||||
NEWS_ITEMS=2
|
||||
-REPO_URL="$(hg paths default | sed -r 's/.*icedtea.classpath.org\/(.*)/\1/')"
|
||||
+
|
||||
+if [ -d .hg ]; then
|
||||
+ REPO_URL="$(hg paths default | sed -r 's/.*icedtea.classpath.org\/(.*)/\1/')"
|
||||
+else
|
||||
+ unset REPO_URL
|
||||
+fi
|
||||
|
||||
start_time="$(date +%s.%N)"
|
||||
|
||||
cd html-gen
|
||||
|
||||
-print_debug "Generating HTML content for javaws -about for $REPO_URL. $CHANGESETS changesets, $NEWS_ITEMS news items"
|
||||
+print_debug "Generating HTML content for javaws -about${REPO_URL:+ for }$REPO_URL. $CHANGESETS changesets, $NEWS_ITEMS news items"
|
||||
print_debug "Starting sed substitutions"
|
||||
for FILE in NEWS AUTHORS COPYING ChangeLog
|
||||
do
|
||||
@@ -99,7 +104,9 @@
|
||||
sed -i '5i <br><img src="jamIcon.jpg" alt="Jam Icon" width="87" height="84"><br><br>' AUTHORS.html
|
||||
echo "</center>" >> AUTHORS.html
|
||||
|
||||
-REVS=(`hg log -l"$CHANGESETS" | grep 'changeset:' | cut -d: -f3 | tr '\n' ' '`)
|
||||
+if [ -n "${REPO_URL}" ]; then
|
||||
+ REVS=(`hg log -l"$CHANGESETS" | grep 'changeset:' | cut -d: -f3 | tr '\n' ' '`)
|
||||
+fi
|
||||
|
||||
print_debug "Done. Starting formatting (bolding, mailto and hyperlink creation)"
|
||||
|
||||
@@ -132,9 +139,11 @@
|
||||
if [[ "$LINE" =~ $date_regex* ]] # Matches line starting with eg 2013-07-01
|
||||
then
|
||||
html_space="\ \ "
|
||||
- REV="${REVS["$COUNTER"]}"
|
||||
- # Turn the date into a hyperlink for the revision this changelog entry describes
|
||||
- LINE=$(echo "$LINE" | sed -r "s|($date_regex)($html_space.*$html_space.*)|<a href=http://icedtea.classpath.org/$REPO_URL/rev/$REV>\1</a>\2|")
|
||||
+ if [ -n "${REPO_URL}" ]; then
|
||||
+ REV="${REVS["$COUNTER"]}"
|
||||
+ # Turn the date into a hyperlink for the revision this changelog entry describes
|
||||
+ LINE=$(echo "$LINE" | sed -r "s|($date_regex)($html_space.*$html_space.*)|<a href=http://icedtea.classpath.org/$REPO_URL/rev/$REV>\1</a>\2|")
|
||||
+ fi
|
||||
COUNTER="$(( COUNTER + 1 ))"
|
||||
fi
|
||||
if [ "$COUNTER" -gt "$CHANGESETS" ] # Cut to ten changesets
|
||||
@@ -0,0 +1,20 @@
|
||||
--- Makefile.am.orig 2015-09-11 14:02:04.245280051 +0100
|
||||
+++ Makefile.am 2015-12-18 21:37:43.328862431 +0000
|
||||
@@ -344,7 +344,7 @@
|
||||
$(PLUGIN_DIR)/%.o: $(PLUGIN_SRCDIR)/%.cc
|
||||
mkdir -p $(PLUGIN_DIR) && \
|
||||
cd $(PLUGIN_DIR) && \
|
||||
- $(CXX) $(CXXFLAGS) \
|
||||
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) \
|
||||
$(DEFS) $(VERSION_DEFS) \
|
||||
-DJDK_UPDATE_VERSION="\"$(JDK_UPDATE_VERSION)\"" \
|
||||
-DPLUGIN_NAME="\"IcedTea-Web Plugin\"" \
|
||||
@@ -362,7 +362,7 @@
|
||||
|
||||
$(PLUGIN_DIR)/$(BUILT_PLUGIN_LIBRARY): $(addprefix $(PLUGIN_DIR)/,$(PLUGIN_OBJECTS))
|
||||
cd $(PLUGIN_DIR) && \
|
||||
- $(CXX) $(CXXFLAGS) \
|
||||
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) \
|
||||
$(PLUGIN_OBJECTS) \
|
||||
$(GLIB_LIBS) \
|
||||
$(MOZILLA_LIBS) \
|
||||
83
dev-java/icedtea-web/icedtea-web-1.6.1.ebuild
Normal file
83
dev-java/icedtea-web/icedtea-web-1.6.1.ebuild
Normal file
@@ -0,0 +1,83 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
README_GENTOO_SUFFIX="-r1"
|
||||
|
||||
inherit autotools eutils multilib readme.gentoo-r1 java-pkg-2
|
||||
|
||||
DESCRIPTION="FOSS Java browser plugin and Web Start implementation"
|
||||
HOMEPAGE="http://icedtea.classpath.org"
|
||||
SRC_URI="http://icedtea.classpath.org/download/source/${P}.tar.gz"
|
||||
LICENSE="GPL-2 GPL-2-with-linking-exception LGPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
|
||||
IUSE="doc javascript +nsplugin tagsoup test"
|
||||
RESTRICT="test"
|
||||
|
||||
CDEPEND="javascript? ( dev-java/rhino:1.6 )
|
||||
nsplugin? ( >=dev-libs/glib-2.16 )
|
||||
tagsoup? ( dev-java/tagsoup:0 )"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
app-arch/zip
|
||||
>=virtual/jdk-1.7
|
||||
virtual/pkgconfig
|
||||
nsplugin? ( net-misc/npapi-sdk )
|
||||
test? ( >=dev-java/junit-4.8:4 )"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
>=app-eselect/eselect-java-0.2.0
|
||||
>=virtual/jre-1.7
|
||||
nsplugin? (
|
||||
!dev-java/oracle-jdk-bin[nsplugin]
|
||||
!dev-java/oracle-jre-bin[nsplugin]
|
||||
)"
|
||||
|
||||
src_prepare() {
|
||||
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2779
|
||||
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2780
|
||||
epatch "${FILESDIR}"/${PN}-1.6-{javadoc,no-hg,launchers,respect-ldflags}.patch
|
||||
|
||||
if java-pkg_is-vm-version-ge "1.8" ; then
|
||||
sed -i 's/JAVADOC_OPTS=/\0-Xdoclint:none /g' Makefile.am || die
|
||||
fi
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local tagsoup
|
||||
use tagsoup && tagsoup="$(java-pkg_getjars tagsoup)"
|
||||
|
||||
local config=(
|
||||
# Rename javaws to itweb-javaws as eselect java-vm manages
|
||||
# javaws to prevent a clash with Oracle's implementation.
|
||||
--program-transform-name='s/^javaws$/itweb-javaws/'
|
||||
--libdir="${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins
|
||||
--with-java="${EPREFIX}"/usr/bin/java
|
||||
--with-jdk-home="${JAVA_HOME}"
|
||||
$(use_enable doc docs)
|
||||
$(use_enable nsplugin plugin)
|
||||
$(use_with javascript rhino)
|
||||
$(use_with tagsoup tagsoup "${tagsoup}")
|
||||
)
|
||||
|
||||
unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS
|
||||
econf "${config[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
||||
Reference in New Issue
Block a user