diff --git a/.gitignore b/.gitignore
index 58d9512..e32b6d1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/icedtea-web-1.6.1.tar.gz
+SOURCES/icedtea-web-1.6.2.tar.gz
diff --git a/.icedtea-web.metadata b/.icedtea-web.metadata
index 7be042f..6e47951 100644
--- a/.icedtea-web.metadata
+++ b/.icedtea-web.metadata
@@ -1 +1 @@
-1e7d8f9a57ba94b4db1a3d6a5b46b69ba77994e0 SOURCES/icedtea-web-1.6.1.tar.gz
+54b730855b29533866c8deb78cfe522adb18ff5d SOURCES/icedtea-web-1.6.2.tar.gz
diff --git a/SOURCES/donLogToFileBeforeFileLogsInitiate.patch b/SOURCES/donLogToFileBeforeFileLogsInitiate.patch
deleted file mode 100644
index 1ffb1ee..0000000
--- a/SOURCES/donLogToFileBeforeFileLogsInitiate.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff -r b02ae452f99f plugin/icedteanp/IcedTeaNPPlugin.cc
---- a/plugin/icedteanp/IcedTeaNPPlugin.cc Thu Sep 24 16:32:30 2015 +0200
-+++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Sep 29 13:15:10 2015 +0200
-@@ -241,6 +241,7 @@
- static guint appletviewer_watch_id = -1;
-
- bool debug_initiated = false;
-+bool file_logs_initiated = false;
- int plugin_debug = getenv ("ICEDTEAPLUGIN_DEBUG") != NULL;
- bool plugin_debug_headers = false;
- bool plugin_debug_to_file = false ;
-diff -r b02ae452f99f plugin/icedteanp/IcedTeaNPPlugin.h
---- a/plugin/icedteanp/IcedTeaNPPlugin.h Thu Sep 24 16:32:30 2015 +0200
-+++ b/plugin/icedteanp/IcedTeaNPPlugin.h Tue Sep 29 13:15:10 2015 +0200
-@@ -117,6 +117,7 @@
-
- // debug switches
- extern bool debug_initiated;
-+extern bool file_logs_initiated;
- extern int plugin_debug;
- extern bool plugin_debug_headers;
- extern bool plugin_debug_to_file;
-diff -r b02ae452f99f plugin/icedteanp/IcedTeaPluginUtils.h
---- a/plugin/icedteanp/IcedTeaPluginUtils.h Thu Sep 24 16:32:30 2015 +0200
-+++ b/plugin/icedteanp/IcedTeaPluginUtils.h Tue Sep 29 13:15:10 2015 +0200
-@@ -86,6 +86,7 @@
- plugin_debug_to_console = is_java_console_enabled(); \
- if (plugin_debug_to_file) { \
- IcedTeaPluginUtilities::initFileLog(); \
-+ file_logs_initiated = true; \
- } \
- if (plugin_debug_to_console) { \
- /*initialisation done during jvm startup*/ \
-@@ -134,7 +135,7 @@
- snprintf(ldebug_message, MESSAGE_SIZE, "%s%s", ldebug_header, ldebug_body); \
- fprintf (stdout, "%s", ldebug_message);\
- } \
-- if (plugin_debug_to_file) { \
-+ if (plugin_debug_to_file && file_logs_initiated) { \
- snprintf(ldebug_message, MESSAGE_SIZE, "%s%s", ldebug_header, ldebug_body); \
- fprintf (plugin_file_log, "%s", ldebug_message); \
- fflush(plugin_file_log); \
-@@ -180,7 +181,7 @@
- snprintf(ldebug_message, MESSAGE_SIZE, "%s%s", ldebug_header, ldebug_body); \
- fprintf (stderr, "%s", ldebug_message); \
- } \
-- if (plugin_debug_to_file) { \
-+ if (plugin_debug_to_file && file_logs_initiated) { \
- snprintf(ldebug_message, MESSAGE_SIZE, "%s%s", ldebug_header, ldebug_body); \
- fprintf (plugin_file_log, "%s", ldebug_message); \
- fflush(plugin_file_log); \
diff --git a/SOURCES/fileLogInitializationError-1.6.patch b/SOURCES/fileLogInitializationError-1.6.patch
deleted file mode 100644
index 003e313..0000000
--- a/SOURCES/fileLogInitializationError-1.6.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-diff -r 2b1af623e3a8 NEWS
---- a/NEWS Thu Oct 08 12:11:49 2015 +0200
-+++ b/NEWS Wed Oct 14 10:37:54 2015 +0200
-@@ -23,6 +23,7 @@
- * RH1231441 Unable to read the text of the buttons of the security dialogue
- * Fixed RH1233697 icedtea-web: applet origin spoofing
- * Fixed RH1233667 icedtea-web: unexpected permanent authorization of unsigned applets
-+* fixed fatal impact of initialization error of FileLog
- * MissingALACAdialog made available also for unsigned applications (but ignoring actual manifest value) and fixed
- * NetX
- - fixed issues with -html shortcuts
-diff -r 2b1af623e3a8 netx/net/sourceforge/jnlp/util/logging/FileLog.java
---- a/netx/net/sourceforge/jnlp/util/logging/FileLog.java Thu Oct 08 12:11:49 2015 +0200
-+++ b/netx/net/sourceforge/jnlp/util/logging/FileLog.java Wed Oct 14 10:37:54 2015 +0200
-@@ -60,21 +60,46 @@
- private final FileHandler fh;
- private static final String defaultloggerName = "IcedTea-Web file-logger";
-
-- public FileLog() {
-+
-+ public static SingleStreamLogger createFileLog() {
-+ SingleStreamLogger s;
-+ try {
-+ s = new FileLog();
-+ } catch (Exception ex) {
-+ //we do not wont to block whole logging just because initialization error in "new FileLog()"
-+ OutputController.getLogger().log(ex);
-+ s = new SingleStreamLogger() {
-+
-+ @Override
-+ public void log(String s) {
-+ //dummy
-+ }
-+
-+ @Override
-+ public void close() {
-+ //dummy
-+ }
-+ };
-+ }
-+ return s;
-+ }
-+
-+ private FileLog() {
- this(false);
- }
-
-- public FileLog(boolean append) {
-+ private FileLog(boolean append) {
- this(defaultloggerName, LogConfig.getLogConfig().getIcedteaLogDir() + "itw-javantx-" + getStamp() + ".log", append);
- }
-
-
--
-- public FileLog(String fileName, boolean append) {
-+ // testing constructor
-+ FileLog(String fileName, boolean append) {
- this(fileName, fileName, append);
- }
-
-- public FileLog(String loggerName, String fileName, boolean append) {
-+
-+ private FileLog(String loggerName, String fileName, boolean append) {
- try {
- File futureFile = new File(fileName);
- if (!futureFile.exists()) {
-@@ -106,6 +131,7 @@
- impl.log(Level.FINE, s);
- }
-
-+ @Override
- public void close() {
- fh.close();
- }
-diff -r 2b1af623e3a8 netx/net/sourceforge/jnlp/util/logging/OutputController.java
---- a/netx/net/sourceforge/jnlp/util/logging/OutputController.java Thu Oct 08 12:11:49 2015 +0200
-+++ b/netx/net/sourceforge/jnlp/util/logging/OutputController.java Wed Oct 14 10:37:54 2015 +0200
-@@ -333,9 +333,9 @@
-
- //https://en.wikipedia.org/wiki/Double-checked_locking#Usage_in_Java
- //https://en.wikipedia.org/wiki/Initialization_on_demand_holder_idiom
-- private static volatile FileLog INSTANCE = new FileLog();
-+ private static volatile SingleStreamLogger INSTANCE = FileLog.createFileLog();
- }
-- private FileLog getFileLog() {
-+ private SingleStreamLogger getFileLog() {
- return FileLogHolder.INSTANCE;
- }
-
-diff -r 2b1af623e3a8 netx/net/sourceforge/jnlp/util/logging/PrintStreamLogger.java
---- a/netx/net/sourceforge/jnlp/util/logging/PrintStreamLogger.java Thu Oct 08 12:11:49 2015 +0200
-+++ b/netx/net/sourceforge/jnlp/util/logging/PrintStreamLogger.java Wed Oct 14 10:37:54 2015 +0200
-@@ -58,6 +58,11 @@
- public void setStream(PrintStream stream) {
- this.stream = stream;
- }
-+
-+ @Override
-+ public void close() {
-+ stream.flush();
-+ }
-
-
-
-diff -r 2b1af623e3a8 netx/net/sourceforge/jnlp/util/logging/SingleStreamLogger.java
---- a/netx/net/sourceforge/jnlp/util/logging/SingleStreamLogger.java Thu Oct 08 12:11:49 2015 +0200
-+++ b/netx/net/sourceforge/jnlp/util/logging/SingleStreamLogger.java Wed Oct 14 10:37:54 2015 +0200
-@@ -41,6 +41,7 @@
-
-
- public void log(String s);
-+ public void close();
-
-
- }
-diff -r 2b1af623e3a8 netx/net/sourceforge/jnlp/util/logging/UnixSystemLog.java
---- a/netx/net/sourceforge/jnlp/util/logging/UnixSystemLog.java Thu Oct 08 12:11:49 2015 +0200
-+++ b/netx/net/sourceforge/jnlp/util/logging/UnixSystemLog.java Wed Oct 14 10:37:54 2015 +0200
-@@ -63,6 +63,11 @@
- OutputController.getLogger().log(ex);
- }
- }
-+
-+ @Override
-+ public void close() {
-+ //nope
-+ }
-
-
- }
-diff -r 2b1af623e3a8 netx/net/sourceforge/jnlp/util/logging/WinSystemLog.java
---- a/netx/net/sourceforge/jnlp/util/logging/WinSystemLog.java Thu Oct 08 12:11:49 2015 +0200
-+++ b/netx/net/sourceforge/jnlp/util/logging/WinSystemLog.java Wed Oct 14 10:37:54 2015 +0200
-@@ -49,9 +49,10 @@
- public void log(String s) {
- //not yet implemented
- }
--
--
-
--
-+ @Override
-+ public void close() {
-+ //nope
-+ }
-
- }
-diff -r 2b1af623e3a8 netx/net/sourceforge/jnlp/util/logging/headers/PluginMessage.java
---- a/netx/net/sourceforge/jnlp/util/logging/headers/PluginMessage.java Thu Oct 08 12:11:49 2015 +0200
-+++ b/netx/net/sourceforge/jnlp/util/logging/headers/PluginMessage.java Wed Oct 14 10:37:54 2015 +0200
-@@ -38,7 +38,6 @@
- package net.sourceforge.jnlp.util.logging.headers;
-
- import java.util.Date;
--import net.sourceforge.jnlp.util.logging.FileLog;
- import net.sourceforge.jnlp.util.logging.OutputController;
-
- public class PluginMessage implements MessageWithHeader{
diff --git a/SOURCES/icedtea-web-javaws.appdata.xml b/SOURCES/icedtea-web-javaws.appdata.xml
deleted file mode 100644
index fe0971b..0000000
--- a/SOURCES/icedtea-web-javaws.appdata.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-Free java implementation of jnlp launching protocol.
-
-Originally based on NetX,but now bringing many improvements compared to proprietary implementations.
-
-Powerful debug console, internal appletviewer, safe run-in-sandbox option, extendable "remember me" options and custom policy editor.
-
-It have also possibility to turn all security off and just enjoy legacy web (on your own risk). All via simple itweb-settings gui.
-
-+{@code - ITW-thread(s) | dialogs-thread X - | X - presteps in SecurtyDialogs | X -@@ -75,7 +76,7 @@ - | | X - continue accordingly | X - X -- -+} - *- */ - package net.sourceforge.jnlp.security; diff --git a/SPECS/icedtea-web.spec b/SPECS/icedtea-web.spec index f8b667d..e860055 100644 --- a/SPECS/icedtea-web.spec +++ b/SPECS/icedtea-web.spec @@ -10,8 +10,10 @@ %define binsuffix .itweb +%define preffered_java java-%{javaver}-openjdk + Name: icedtea-web -Version: 1.6.1 +Version: 1.6.2 Release: 4%{?dist} Summary: Additional Java components for OpenJDK - Java browser plug-in and Web Start implementation @@ -19,13 +21,9 @@ Group: Applications/Internet License: LGPLv2+ and GPLv2 with exceptions URL: http://icedtea.classpath.org/wiki/IcedTea-Web Source0: http://icedtea.classpath.org/download/source/%{name}-%{version}.tar.gz -Source1: icedtea-web.metainfo.xml -Source2: icedtea-web-javaws.appdata.xml -Patch0: javadocFixes.patch -Patch1: donLogToFileBeforeFileLogsInitiate.patch -Patch2: fileLogInitializationError-1.6.patch -BuildRequires: java-%{javaver}-openjdk-devel +BuildRequires: jpackage-utils +BuildRequires: %{preffered_java}-devel BuildRequires: desktop-file-utils BuildRequires: gecko-devel BuildRequires: glib2-devel @@ -40,7 +38,11 @@ BuildRequires: tagsoup BuildRequires: rhino # For functionality and the OpenJDK dirs -Requires: java-%{javaver}-openjdk +Requires: %{preffered_java} +Requires: jpackage-utils +#maven fragments +Requires(post): jpackage-utils +Requires(postun): jpackage-utils # For the mozilla plugin dir Requires: mozilla-filesystem%{?_isa} @@ -51,21 +53,22 @@ Requires: tagsoup # rhino is used as JS evaluator in runtime Requires: rhino -# Post requires alternatives to install plugin alternative. +# Post requires alternatives to install tool alternatives. Requires(post): %{_sbindir}/alternatives - -# Postun requires alternatives to uninstall plugin alternative. +# in version 1.7 and higher for --family switch +Requires(post): chkconfig >= 1.7 +# Postun requires alternatives to uninstall tool alternatives. Requires(postun): %{_sbindir}/alternatives +# in version 1.7 and higher for --family switch +Requires(postun): chkconfig >= 1.7 # Standard JPackage plugin provides. Provides: java-plugin = 1:%{javaver} Provides: javaws = 1:%{javaver} -Provides: java-%{javaver}-openjdk-plugin = 1:%{version} +Provides: %{preffered_java}-plugin = 1:%{version} Obsoletes: java-1.6.0-openjdk-plugin - - %description The IcedTea-Web project provides a Java web browser plugin, an implementation of Java Web Start (originally based on the Netx project) and a settings tool to @@ -84,9 +87,6 @@ This package contains Javadocs for the IcedTea-Web project. %prep %setup -q -%patch0 -%patch1 -p1 -%patch2 -p1 %build autoreconf -vfi @@ -122,23 +122,41 @@ desktop-file-install --vendor ''\ --dir $RPM_BUILD_ROOT%{_datadir}/applications policyeditor.desktop # install MetaInfo file for firefox -DESTDIR=%{buildroot} appstream-util install %{SOURCE1} +DESTDIR=%{buildroot} appstream-util install metadata/%{name}.metainfo.xml +# install MetaInfo file for javaws +DESTDIR=%{buildroot} appstream-util install metadata/%{name}-javaws.appdata.xml + +# maven fragments generation +mkdir -p $RPM_BUILD_ROOT%{_javadir} +pushd $RPM_BUILD_ROOT%{_javadir} +ln -s ../%{name}/netx.jar %{name}.jar +ln -s ../%{name}/plugin.jar %{name}-plugin.jar +popd +mkdir -p $RPM_BUILD_ROOT/%{_mavenpomdir} +cp metadata/%{name}.pom $RPM_BUILD_ROOT/%{_mavenpomdir}/%{name}.pom +cp metadata/%{name}-plugin.pom $RPM_BUILD_ROOT/%{_mavenpomdir}/%{name}-plugin.pom + +# __main__.IncompatibleFilenames: Filenames of POM /builddir/build/BUILDROOT/icedtea-web-1.6.2-1.el7.x86_64/usr/share/maven-poms/icedtea-web.pom and JAR /builddir/build/BUILDROOT/icedtea-web-1.6.2-1.el7.x86_64/usr/share/java/icedtea-web.jar does not match properly. Check that JAR subdirectories matches '.' in pom name. +# resolve before 7.2.z! +#add_maven_depmap %{name}.pom %{name}.jar +#add_maven_depmap %{name}-plugin.pom %{name}-plugin.jar + + %check make check -appstream-util validate $RPM_BUILD_ROOT/%{_datadir}/appdata/*.xml +appstream-util validate $RPM_BUILD_ROOT/%{_datadir}/appdata/*.xml || : %post alternatives \ --install %{_libdir}/mozilla/plugins/libjavaplugin.so %{javaplugin} \ - %{_libdir}/IcedTeaPlugin.so %{priority} \ + %{_libdir}/IcedTeaPlugin.so %{priority} --family %{preffered_java}.%{_arch} \ --slave %{_bindir}/javaws javaws %{_prefix}/bin/javaws%{binsuffix} \ --slave %{_mandir}/man1/javaws.1.gz javaws.1.gz \ %{_mandir}/man1/javaws-itweb.1.gz %posttrans update-desktop-database &> /dev/null || : - exit 0 %postun @@ -148,22 +166,27 @@ then alternatives --remove %{javaplugin} \ %{_libdir}/IcedTeaPlugin.so fi - exit 0 +# files -f .mfiles %files %defattr(-,root,root,-) -%{_sysconfdir}/bash_completion.d/ +%{_sysconfdir}/bash_completion.d/icedteaweb-completion %{_prefix}/bin/* %{_libdir}/IcedTeaPlugin.so %{_datadir}/applications/* -%{_datadir}/icedtea-web +%{_datadir}/%{name} %{_datadir}/man/man1/* %{_datadir}/man/cs/man1/* %{_datadir}/man/de/man1/* %{_datadir}/man/pl/man1/* %{_datadir}/pixmaps/* %{_datadir}/appdata/*.xml +# thsoe four shouldnotbe there. Fixme! something went wrong +%{_mavenpomdir}/%{name}.pom +%{_mavenpomdir}/%{name}-plugin.pom +%{_javadir}/%{name}.jar +%{_javadir}/%{name}-plugin.jar %doc NEWS README COPYING %files javadoc @@ -172,6 +195,21 @@ exit 0 %doc COPYING %changelog +* Thu Jul 14 2016 Jiri Vanek