630e2b5
From 92a975e01d1d6e24be8b3e7c56dbfb09bf1ccf79 Mon Sep 17 00:00:00 2001
630e2b5
From: Robert Scheck <robert-scheck@users.noreply.github.com>
630e2b5
Date: Tue, 30 May 2023 02:33:56 +0200
630e2b5
Subject: [PATCH] Disable sun.applet javadocs and plugin man page for
630e2b5
 --disable-pluginjar
630e2b5
630e2b5
---
630e2b5
 Makefile.am                                   |  8 ++--
630e2b5
 .../jnlp/util/docprovider/TextsProvider.java  | 42 +++++++++++--------
630e2b5
 2 files changed, 28 insertions(+), 22 deletions(-)
630e2b5
630e2b5
diff --git a/Makefile.am b/Makefile.am
630e2b5
index d762c002b..88c18f501 100644
630e2b5
--- a/Makefile.am
630e2b5
+++ b/Makefile.am
630e2b5
@@ -241,8 +241,7 @@ export NETX_PKGS = javax.jnlp net.sourceforge.nanoxml net.sourceforge.jnlp \
630e2b5
 	net.sourceforge.jnlp.controlpanel net.sourceforge.jnlp.event \
630e2b5
 	net.sourceforge.jnlp.runtime net.sourceforge.jnlp.security \
630e2b5
 	net.sourceforge.jnlp.security.viewer net.sourceforge.jnlp.services \
630e2b5
-	net.sourceforge.jnlp.tools net.sourceforge.jnlp.util \
630e2b5
-	sun.applet
630e2b5
+	net.sourceforge.jnlp.tools net.sourceforge.jnlp.util
630e2b5
 
630e2b5
 if ENABLE_PLUGINJAR
630e2b5
 export ICEDTEAPLUGIN_TARGET = stamps/liveconnect-dist.stamp
630e2b5
@@ -251,6 +250,7 @@ export PLUGIN_SRCDIR=$(TOP_SRC_DIR)/plugin/icedteanp
630e2b5
 export JSOBJECT_DIRS = netscape
630e2b5
 export SUN_DIR = sun
630e2b5
 export SUN_APPLET_DIRS = sun/applet
630e2b5
+export SUN_APPLET_PKGS = sun.applet
630e2b5
 export PLUGIN_PKGS = sun.applet netscape.security netscape.javascript
630e2b5
 export LIVECONNECT_SRCS = $(PLUGIN_SRCDIR)/java
630e2b5
 export LIVECONNECT_DIR = $(JSOBJECT_DIRS) $(SUN_APPLET_DIRS)
630e2b5
@@ -898,7 +898,7 @@ stamps/generate-docs.stamp: stamps/netx.stamp
630e2b5
 	mkdir "$$PLAIN_DOCS_TARGET_DIR" ; \
630e2b5
 	mkdir "$$MAN_DOCS_TARGET_DIR" ; \
630e2b5
 	HTML_DOCS_INDEX="$$HTML_DOCS_TARGET_DIR/index.html" ; \
630e2b5
-	TP_COMMAND="$(SYSTEM_JRE_DIR)/bin/java -cp $(NETX_DIR) net.sourceforge.jnlp.util.docprovider.TextsProvider" ; \
630e2b5
+	TP_COMMAND="$(SYSTEM_JRE_DIR)/bin/java --add-exports=java.base/sun.security.action=ALL-UNNAMED -DPLUGIN_JAR=$(PLUGIN_JAR) -cp $(NETX_DIR) net.sourceforge.jnlp.util.docprovider.TextsProvider" ; \
630e2b5
 	TP_TAIL="false $(FULL_VERSION)" ; \
630e2b5
 	LANG_BACKUP=$$LANG ; \
630e2b5
 	echo "<html><head><title>$(PLUGIN_VERSION)</title></head>" > "$$HTML_DOCS_INDEX" ; \
630e2b5
@@ -1189,7 +1189,7 @@ if ENABLE_DOCS
630e2b5
 	 -windowtitle 'IcedTea-Web: NetX ' \
630e2b5
 	 -header 'IcedTea-Web
NetX
' \
630e2b5
 	 $(call composeclasspath, $(MSLINKS_JAR) $(TAGSOUP_JAR) $(RHINO_JAR)) \
630e2b5
-	 $(NETX_PKGS)
630e2b5
+	 $(NETX_PKGS) $(SUN_APPLET_PKGS)
630e2b5
 endif
630e2b5
 	mkdir -p stamps
630e2b5
 	touch stamps/netx-docs.stamp
630e2b5
diff --git a/netx/net/sourceforge/jnlp/util/docprovider/TextsProvider.java b/netx/net/sourceforge/jnlp/util/docprovider/TextsProvider.java
630e2b5
index 941b3e377..3269a54c1 100644
630e2b5
--- a/netx/net/sourceforge/jnlp/util/docprovider/TextsProvider.java
630e2b5
+++ b/netx/net/sourceforge/jnlp/util/docprovider/TextsProvider.java
630e2b5
@@ -498,12 +498,14 @@ public static void generateHtmlTexts(String encoding, File dir, boolean allowCon
630e2b5
                 os.flush();
630e2b5
             }
630e2b5
         }
630e2b5
-        JavaWsTextsProvider javaws = new JavaWsTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand);
630e2b5
-        ItwebSettingsTextsProvider itws = new ItwebSettingsTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand);
630e2b5
-        PolicyEditorTextsProvider pe = new PolicyEditorTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand);
630e2b5
-        IcedTeaWebTextsProvider itw = new IcedTeaWebTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand);
630e2b5
-        ItwebPluginTextProvider pl = new ItwebPluginTextProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand);
630e2b5
-        TextsProvider[] providers = new TextsProvider[]{javaws, itws, pe, itw, pl};
630e2b5
+        ArrayList<TextsProvider> providers = new ArrayList<TextsProvider>();
630e2b5
+        providers.add(new JavaWsTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand));
630e2b5
+        providers.add(new ItwebSettingsTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand));
630e2b5
+        providers.add(new PolicyEditorTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand));
630e2b5
+        providers.add(new IcedTeaWebTextsProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand));
630e2b5
+        if (!System.getProperty("PLUGIN_JAR", "").isEmpty()) {
630e2b5
+            providers.add(new ItwebPluginTextProvider(encoding, new HtmlFormatter(allowContext, allowLogo, includeXmlHeader), titles, expand));
630e2b5
+        }
630e2b5
         for (TextsProvider provider : providers) {
630e2b5
             provider.setAuthorFilePath(authorFileFromUserInput);
630e2b5
             provider.writeToDir(dir);
630e2b5
@@ -516,12 +518,14 @@ public static void generateManText(String encoding, File dir, boolean expand) th
630e2b5
     }
630e2b5
 
630e2b5
     public static void generateManText(String encoding, File dir, boolean titles, boolean expand) throws IOException {
630e2b5
-        JavaWsTextsProvider javaws = new JavaWsTextsProvider(encoding, new ManFormatter(), titles, expand);
630e2b5
-        ItwebSettingsTextsProvider itws = new ItwebSettingsTextsProvider(encoding, new ManFormatter(), titles, expand);
630e2b5
-        PolicyEditorTextsProvider pe = new PolicyEditorTextsProvider(encoding, new ManFormatter(), titles, expand);
630e2b5
-        IcedTeaWebTextsProvider itw = new IcedTeaWebTextsProvider(encoding, new ManFormatter(), titles, expand);
630e2b5
-        ItwebPluginTextProvider pl = new ItwebPluginTextProvider(encoding, new ManFormatter(), titles, expand);
630e2b5
-        TextsProvider[] providers = new TextsProvider[]{javaws, itws, pe, itw, pl};
630e2b5
+        ArrayList<TextsProvider> providers = new ArrayList<TextsProvider>();
630e2b5
+        providers.add(new JavaWsTextsProvider(encoding, new ManFormatter(), titles, expand));
630e2b5
+        providers.add(new ItwebSettingsTextsProvider(encoding, new ManFormatter(), titles, expand));
630e2b5
+        providers.add(new PolicyEditorTextsProvider(encoding, new ManFormatter(), titles, expand));
630e2b5
+        providers.add(new IcedTeaWebTextsProvider(encoding, new ManFormatter(), titles, expand));
630e2b5
+        if (!System.getProperty("PLUGIN_JAR", "").isEmpty()) {
630e2b5
+            providers.add(new ItwebPluginTextProvider(encoding, new ManFormatter(), titles, expand));
630e2b5
+        }
630e2b5
         for (TextsProvider provider : providers) {
630e2b5
             provider.setAuthorFilePath(authorFileFromUserInput);
630e2b5
             provider.writeToDir(dir);
630e2b5
@@ -534,12 +538,14 @@ public static void generatePlainTextDocs(File dir, int lineWidth, boolean expand
630e2b5
     }
630e2b5
 
630e2b5
     public static void generatePlainTextDocs(String encoding, File dir, String indent, int lineWidth, boolean titles, boolean expand) throws IOException {
630e2b5
-        JavaWsTextsProvider javaws = new JavaWsTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand);
630e2b5
-        ItwebSettingsTextsProvider itws = new ItwebSettingsTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand);
630e2b5
-        PolicyEditorTextsProvider pe = new PolicyEditorTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand);
630e2b5
-        IcedTeaWebTextsProvider itw = new IcedTeaWebTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand);
630e2b5
-        ItwebPluginTextProvider pl = new ItwebPluginTextProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand);
630e2b5
-        TextsProvider[] providers = new TextsProvider[]{javaws, itws, pe, itw, pl};
630e2b5
+        ArrayList<TextsProvider> providers = new ArrayList<TextsProvider>();
630e2b5
+        providers.add(new JavaWsTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand));
630e2b5
+        providers.add(new ItwebSettingsTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand));
630e2b5
+        providers.add(new PolicyEditorTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand));
630e2b5
+        providers.add(new IcedTeaWebTextsProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand));
630e2b5
+        if (!System.getProperty("PLUGIN_JAR", "").isEmpty()) {
630e2b5
+            providers.add(new ItwebPluginTextProvider(encoding, new PlainTextFormatter(indent, lineWidth), titles, expand));
630e2b5
+        }
630e2b5
         for(TextsProvider provider : providers){
630e2b5
             provider.setAuthorFilePath(authorFileFromUserInput);
630e2b5
             provider.writeToDir(dir);