diff options
Diffstat (limited to 'Installer')
-rw-r--r-- | Installer/CHANGES.txt | 9 | ||||
-rw-r--r-- | Installer/FileTool.java | 33 | ||||
-rw-r--r-- | Installer/FilelistGLFFontArchiv.java.skel | 11 | ||||
-rw-r--r-- | Installer/FilelistGLFFontClasses.java.skel | 11 | ||||
-rw-r--r-- | Installer/FilelistMacOsXPPC.java.skel | 11 | ||||
-rw-r--r-- | Installer/FilelistTool.java | 28 | ||||
-rw-r--r-- | Installer/GL4JInst.java | 95 | ||||
-rw-r--r-- | Installer/GL4JInst_cacert_ns.html | 2 | ||||
-rw-r--r-- | Installer/MachineCtrl.java | 267 | ||||
-rwxr-xr-x | Installer/makeMSIESignedCab.sh | 10 | ||||
-rwxr-xr-x | Installer/makeNetscapeSignedJar-Unix.sh | 6 | ||||
-rwxr-xr-x | Installer/makefile | 6 | ||||
-rw-r--r-- | Installer/versiondef.sh | 2 |
13 files changed, 399 insertions, 92 deletions
diff --git a/Installer/CHANGES.txt b/Installer/CHANGES.txt index 831f225..dae13df 100644 --- a/Installer/CHANGES.txt +++ b/Installer/CHANGES.txt @@ -12,13 +12,20 @@ This CHANGES starts with version 2.00 ! GL4Java Installer 2.00 is based upon version 1.05, by Ron Cemer ! -Last Changes: 31. Dezember 2000 (Version 2.06a) +Last Changes: 6th Dezember 2001 (Version 2.07) ----------------- TOP = new DOWN = old ----------------- +Dezember 6, 2001 (Version 2.07): + + o The Installer now installs also: + - GLF Fonts + - The native libraries under JAVA_HOME/lib/<arch>, or + JAVA_HOME/bin ! (checks where java.dll or libjava.so, resides) + Dezember 31, 2000 (Version 2.06a): - Added a ProgressBar to the main Applet Panel ! diff --git a/Installer/FileTool.java b/Installer/FileTool.java index 92b2233..0fecab5 100644 --- a/Installer/FileTool.java +++ b/Installer/FileTool.java @@ -51,7 +51,7 @@ public class FileTool return f.exists(); } - public static final boolean libraryExists(MachineCtrl mctrl, + public static final String libraryExists(MachineCtrl mctrl, String libname, Vector libdirlist ) { @@ -73,7 +73,7 @@ public class FileTool System.out.println ("Netscape denied privileges, or a failure occurred.\n"+ "Here is the exception that was caught:\n"+e+"\n"); - return false; + return null; } } else if (mctrl.isMicrosoftJvm) @@ -91,7 +91,7 @@ public class FileTool System.out.println ("Microsoft VM denied privileges, or a failure occurred.\n"+ "Here is the exception that was caught:\n"+e+"\n"); - return false; + return null; } } if (mctrl.isUnix) @@ -133,12 +133,12 @@ public class FileTool { System.out.println ("File found: "+s + "/" + libname+"\n"); - return true; + return s; } } } } - return false; + return null; } /** @@ -229,7 +229,7 @@ public class FileTool /** * Copy all files from the zip * or jar archive pointed to by zipURL to their - * corresponding destination given in targetDirs[] ! + * corresponding destination given in targetDirs ! * * The status window is updated with the name of the * source file being copied. @@ -241,20 +241,20 @@ public class FileTool */ public static final boolean copyFilesFromZip (MachineCtrl mctrl, - URL zipURL, String targetDirs[], + URL zipURL, Vector targetDirs, TextArea statustextarea, ProgressBar bar ) { int i, j; boolean ok = true; - int nFiles = targetDirs.length; + int nFiles = targetDirs.size(); String srcFile = null; String destFiles[] = new String[nFiles]; File dstfils[] = new File[nFiles]; FileOutputStream fos[] = new FileOutputStream[nFiles]; - if(targetDirs==null) return true; + if(targetDirs==null||nFiles==0) return true; if (mctrl.isNetscapeJvm) { @@ -300,12 +300,14 @@ public class FileTool // // adding a trailing path-seperator, if needed ! // - if(targetDirs[i]!=null) + if(targetDirs.elementAt(i)!=null) { - targetDirs[i] = targetDirs[i].trim(); - if(targetDirs[i].indexOf('/', targetDirs[i].length()-1)<0) - targetDirs[i] += "/"; - System.out.println("targetDir: "+targetDirs[i]); + String targetDir = (String) targetDirs.elementAt(i); + targetDir = targetDir.trim(); + if(targetDir.indexOf('/', targetDir.length()-1)<0) + targetDir += "/"; + System.out.println("targetDir: "+targetDir); + targetDirs.setElementAt(targetDir, i); } } @@ -350,7 +352,8 @@ public class FileTool for(i=0; ok && i<nFiles; i++) { - destFiles[i] = targetDirs[i] + srcFile; + String targetDir = (String) targetDirs.elementAt(i); + destFiles[i] = targetDir + srcFile; dstfils[i] = new File(destFiles[i]); if (dstfils[i].exists()) diff --git a/Installer/FilelistGLFFontArchiv.java.skel b/Installer/FilelistGLFFontArchiv.java.skel new file mode 100644 index 0000000..3cf2d96 --- /dev/null +++ b/Installer/FilelistGLFFontArchiv.java.skel @@ -0,0 +1,11 @@ + +public class FilelistGLFFontArchiv + implements FilelistOS +{ + public static final String version = "_MAJV_._MINV_._BUGV_._RELV_"; + + public static final String archiv = "../binpkg/gl4java_MAJV_._MINV_._BUGV_._RELV_-glffonts-jar.zip" ; + + public String getVersion() { return version; } + public String getArchiv() { return archiv; } +} diff --git a/Installer/FilelistGLFFontClasses.java.skel b/Installer/FilelistGLFFontClasses.java.skel new file mode 100644 index 0000000..c455a22 --- /dev/null +++ b/Installer/FilelistGLFFontClasses.java.skel @@ -0,0 +1,11 @@ + +public class FilelistGLFFontClasses + implements FilelistOS +{ + public static final String version = "_MAJV_._MINV_._BUGV_._RELV_"; + + public static final String archiv = "../binpkg/gl4java_MAJV_._MINV_._BUGV_._RELV_-glffonts-classes.zip" ; + + public String getVersion() { return version; } + public String getArchiv() { return archiv; } +} diff --git a/Installer/FilelistMacOsXPPC.java.skel b/Installer/FilelistMacOsXPPC.java.skel new file mode 100644 index 0000000..fee409e --- /dev/null +++ b/Installer/FilelistMacOsXPPC.java.skel @@ -0,0 +1,11 @@ + +public class FilelistMacOsXPPC + implements FilelistOS +{ + public static final String version = "_MAJV_._MINV_._BUGV_._RELV_"; + + public static final String archiv = "../binpkg/libGL4Java_MAJV_._MINV_._BUGV_._RELV_-Darwin-MacOsX-aqua-ppc.zip"; + + public String getVersion() { return version; } + public String getArchiv() { return archiv; } +} diff --git a/Installer/FilelistTool.java b/Installer/FilelistTool.java index c5a0c32..b256702 100644 --- a/Installer/FilelistTool.java +++ b/Installer/FilelistTool.java @@ -7,7 +7,7 @@ public class FilelistTool return null; if(mctrl.isWin32) { - if(mctrl.osArch.indexOf("x86")>=0) + if(mctrl.isOsArchX86) { return new FilelistWin32I386(); } @@ -17,36 +17,36 @@ public class FilelistTool { if(mctrl.unixFlavor==mctrl.unixFlavor_Linux) { - if(mctrl.osArch.indexOf("x86")>=0 || - mctrl.osArch.indexOf("i86")>=0 || - mctrl.osArch.indexOf("i686")>=0 || - mctrl.osArch.indexOf("i586")>=0 || - mctrl.osArch.indexOf("i486")>=0 || - mctrl.osArch.indexOf("i386")>=0 - ) + if(mctrl.isOsArchX86) { return new FilelistLinuxI386GlibcXF86(); - } else if(mctrl.osArch.indexOf("ppc")>=0) + } else if(mctrl.isOsArchPPC) { return new FilelistLinuxPPCGlibcXF86(); } } else if(mctrl.unixFlavor==mctrl.unixFlavor_Solaris) { - if(mctrl.osArch.indexOf("sparc")>=0) + if(mctrl.isOsArchSPARC) return new FilelistSUNSolaris26Sparc(); } else if(mctrl.unixFlavor==mctrl.unixFlavor_Irix) { - if(mctrl.osArch.indexOf("mips")>=0) + if(mctrl.isOsArchMIPS) return new FilelistSGIIrix62Mips(); } else if(mctrl.unixFlavor==mctrl.unixFlavor_HPUX) { - if(mctrl.osArch.indexOf("pa_risc")>=0) + if(mctrl.isOsArchPARISC) return new FilelistHPUXPaRisc(); + } else if(mctrl.unixFlavor==mctrl.unixFlavor_MacOsX) + { + if(mctrl.isOsArchPPC) + { + return new FilelistMacOsXPPC(); + } } } - if(mctrl.isMacOs) + if(mctrl.isMacOs9) { - if(mctrl.osArch.indexOf("powerpc")>=0) + if(mctrl.isOsArchPPC) return new FilelistMacOSPPC(); } return null; diff --git a/Installer/GL4JInst.java b/Installer/GL4JInst.java index 887129d..0149da6 100644 --- a/Installer/GL4JInst.java +++ b/Installer/GL4JInst.java @@ -2,7 +2,7 @@ * @(#) GL4JInst.java
* @(#) author: Ronald B. Cemer, Sven Goethel
* @(#) copyright: Copyright (c) 1999 Ronald B. Cemer under GNU GPL
- * @(#) version: 2.00
+ * @(#) version: 2.07
*/
import java.applet.*;
@@ -24,7 +24,7 @@ public class GL4JInst static private final String gl4javaWWW =
"http://www.jausoft.com/Files/Java/1.1.X/GL4Java/Installer";
- static private final String version = "2.06a";
+ static private final String version = "2.07";
static private final String cannot_install_title =
"Cannot install GL4Java";
@@ -49,13 +49,14 @@ public class GL4JInst private String archive = null;
private String gl4j_archive = null;
private String glutfont_archive = null;
+ private String glffont_archive = null;
private boolean install_opengl = false;
private String opengl_archive = null;
private String png_archive = null;
private String gl_lib = null;
private String glu_lib = null;
private Vector lib_dir_list = null;
- private String targetDirs[] = null;
+ private Vector targetDirs = null;
private URL gl4javaURL = null;
private URL sourceURL = null;
private boolean initfailed = false;
@@ -73,6 +74,8 @@ public class GL4JInst FilelistGL4JArchiv fileGL4JArchiv= new FilelistGL4JArchiv();
FilelistGLUTFontClasses fileGLUTFontClasses= new FilelistGLUTFontClasses();
FilelistGLUTFontArchiv fileGLUTFontArchiv= new FilelistGLUTFontArchiv();
+ FilelistGLFFontClasses fileGLFFontClasses= new FilelistGLFFontClasses();
+ FilelistGLFFontArchiv fileGLFFontArchiv= new FilelistGLFFontArchiv();
FilelistPNGClasses filePNGClasses= new FilelistPNGClasses();
FilelistPNGArchiv filePNGArchiv= new FilelistPNGArchiv();
@@ -308,7 +311,7 @@ public class GL4JInst "NT 4.0 service packs can be downloaded from:\n" +
" www.microsoft.com/downloads\n";
}
- else if (mctrl.isMacOs)
+ else if (mctrl.isMacOs9)
{
// TODO !!!
gl_lib = "GL.DLL";
@@ -352,7 +355,7 @@ public class GL4JInst && (lib_dir_list != null)
&& (lib_dir_list.size() > 0) )
{
- if (!FileTool.libraryExists(mctrl,gl_lib,lib_dir_list))
+ if (null==FileTool.libraryExists(mctrl,gl_lib,lib_dir_list))
{
if (mctrl.isWin95)
install_opengl = true;
@@ -378,7 +381,7 @@ public class GL4JInst && (lib_dir_list != null)
&& (lib_dir_list.size() > 0) )
{
- if (!FileTool.libraryExists(mctrl,glu_lib,lib_dir_list))
+ if (null==FileTool.libraryExists(mctrl,glu_lib,lib_dir_list))
{
if (mctrl.isWin95)
install_opengl = true;
@@ -414,7 +417,8 @@ public class GL4JInst statustextarea.setText
(statustextarea.getText() +
"Native libraries will be installed to: " +
- mctrl.browser_natives +"\n");
+ mctrl.browser_natives +", and\n"+
+ mctrl.os_natives +"\n");
statustextarea.setCaretPosition(Integer.MAX_VALUE);
if (mctrl.isWin32)
@@ -427,15 +431,18 @@ public class GL4JInst {
gl4j_archive = fileGL4JClasses.getArchiv();
glutfont_archive = fileGLUTFontClasses.getArchiv();
+ glffont_archive = fileGLFFontClasses.getArchiv();
png_archive = filePNGClasses.getArchiv();
} else {
gl4j_archive = fileGL4JArchiv.getArchiv();
glutfont_archive = fileGLUTFontArchiv.getArchiv();
+ glffont_archive = fileGLFFontArchiv.getArchiv();
png_archive = filePNGArchiv.getArchiv();
}
} else {
gl4j_archive = fileGL4JArchiv.getArchiv();
glutfont_archive = fileGLUTFontArchiv.getArchiv();
+ glffont_archive = fileGLFFontArchiv.getArchiv();
png_archive = filePNGArchiv.getArchiv();
}
archive = osFileLists.getArchiv();
@@ -481,8 +488,8 @@ public class GL4JInst }
if(ok)
{
- targetDirs = new String[1];
- targetDirs[0] = mctrl.os_lib_dir;
+ targetDirs = new Vector();
+ targetDirs.addElement(mctrl.os_lib_dir);
ok = FileTool.copyFilesFromZip
(mctrl, sourceURL, targetDirs, statustextarea, bar);
}
@@ -527,8 +534,8 @@ public class GL4JInst }
if(ok)
{
- targetDirs = new String[1];
- targetDirs[0] = mctrl.browser_classes;
+ targetDirs = new Vector();
+ targetDirs.addElement(mctrl.browser_classes);
ok = FileTool.copyFilesFromZip
(mctrl, sourceURL, targetDirs,statustextarea, bar);
}
@@ -572,8 +579,54 @@ public class GL4JInst }
if(ok)
{
- targetDirs = new String[1];
- targetDirs[0] = mctrl.browser_classes;
+ targetDirs = new Vector();
+ targetDirs.addElement(mctrl.browser_classes);
+ ok = FileTool.copyFilesFromZip
+ (mctrl, sourceURL, targetDirs,statustextarea, bar);
+ }
+ }
+
+ if ( ok
+ && mctrl.installGLFFontSupport
+ && (glffont_archive != null)
+ && (glffont_archive.length() > 0) )
+ {
+ if(!isAnApplet && !FileTool.fileExists(mctrl, glffont_archive))
+ {
+ statustextarea.setText
+ (statustextarea.getText() +
+ "Getting File(s): GL4Java GLF-FONT Java Classes\n");
+ statustextarea.setCaretPosition(Integer.MAX_VALUE);
+
+ ok = FileTool.copyFileFromDir(mctrl,
+ gl4javaURL,
+ glffont_archive, glffont_archive,
+ statustextarea);
+ }
+ if(ok)
+ {
+ statustextarea.setText
+ (statustextarea.getText() +
+ "Install GL4Java GLF-FONT Java Classes\n");
+ statustextarea.setCaretPosition(Integer.MAX_VALUE);
+ try
+ {
+ sourceURL = new URL(codeBase,glffont_archive);
+ }
+ catch (Exception e)
+ {
+ ok=false;
+ statustextarea.setText
+ (statustextarea.getText() +
+ "File does not exist: "+codeBase+","+glffont_archive+" !\n");
+ statustextarea.setCaretPosition(Integer.MAX_VALUE);
+ }
+ }
+
+ if(ok)
+ {
+ targetDirs = new Vector();
+ targetDirs.addElement(mctrl.browser_classes);
ok = FileTool.copyFilesFromZip
(mctrl, sourceURL, targetDirs,statustextarea, bar);
}
@@ -616,8 +669,8 @@ public class GL4JInst }
if(ok)
{
- targetDirs = new String[1];
- targetDirs[0] = mctrl.browser_classes;
+ targetDirs = new Vector();
+ targetDirs.addElement(mctrl.browser_classes);
ok = FileTool.copyFilesFromZip
(mctrl, sourceURL, targetDirs,statustextarea, bar);
}
@@ -660,8 +713,16 @@ public class GL4JInst }
if(ok)
{
- targetDirs = new String[1];
- targetDirs[0] = mctrl.browser_natives;
+ targetDirs = new Vector();
+
+ if(mctrl.browser_natives!=null &&
+ mctrl.browser_natives.length()>0)
+ targetDirs.addElement(mctrl.browser_natives);
+
+ if(mctrl.os_natives!=null &&
+ mctrl.os_natives.length()>0)
+ targetDirs.addElement(mctrl.os_natives);
+
ok = FileTool.copyFilesFromZip
(mctrl, sourceURL, targetDirs,statustextarea, bar);
}
diff --git a/Installer/GL4JInst_cacert_ns.html b/Installer/GL4JInst_cacert_ns.html index 53bc95a..8d42c9d 100644 --- a/Installer/GL4JInst_cacert_ns.html +++ b/Installer/GL4JInst_cacert_ns.html @@ -49,7 +49,7 @@ Certificate Authority" box comes up: IS AN EXTRA SECURITY PRECAUTION.
<p>When asked for a name, enter the following name, exactly as shown: GL4Java
<br>
-<p><b><a href="x509.crt">Click here to import the signing certificate.</a> </b> Valid from <b> Fri Apr 06, 2001 to Fri Jul 06, 2001 </b>
+<p><b><a href="x509.crt">Click here to import the signing certificate.</a> </b> Valid from <b> Thu Dec 06, 2001 to Wed Mar 06, 2002 </b>
<br>
<p>After you have imported the certificate, <b><a href="GL4JInst_ns.html">Click
here to begin the GL4Java installation.</a></b>
diff --git a/Installer/MachineCtrl.java b/Installer/MachineCtrl.java index c2435e4..664f47f 100644 --- a/Installer/MachineCtrl.java +++ b/Installer/MachineCtrl.java @@ -21,18 +21,27 @@ public class MachineCtrl public Button buttonOk = null; public Button buttonCancel = null; public Button buttonFileClasses = null; - public Button buttonFileNatives = null; + public Button buttonFileNativesBrowser = null; + public Button buttonFileNativesOS = null; public TextField tf_browser_classes = null; public TextField tf_browser_natives = null; + public TextField tf_os_natives = null; public boolean installGLUTFontSupport = true; + public boolean installGLFFontSupport = true; private Checkbox checkboxInstallGLUTFontSupport = null; + private Checkbox checkboxInstallGLFFontSupport = null; // Values for replaceable strings: public String browser_classes = null; public String browser_natives = null; + public String os_natives = null; public String os_dir = null; public String os_lib_dir = null; + private String javalibdir=null; + private String java_lib=null; + private Vector javalibdir_list=null; + // Java VM vendor and operating system stuff: public String jvmVendor = null; public String jvmVersion = null; @@ -48,8 +57,8 @@ public class MachineCtrl public String osArch = null; public boolean isWin32 = false; public boolean isWin95 = false; - public boolean isMacOs = false; public boolean isMacOs9 = false; + public boolean isMacOsX = false; public boolean isUnix = false; public int unixFlavor = unixFlavor_Unknown; static public final int @@ -58,7 +67,13 @@ public class MachineCtrl unixFlavor_Solaris = 2, unixFlavor_Aix = 3, unixFlavor_Irix = 4, - unixFlavor_HPUX = 5; + unixFlavor_HPUX = 5, + unixFlavor_MacOsX = 6; + public boolean isOsArchX86=false; + public boolean isOsArchPPC = false; + public boolean isOsArchSPARC = false; + public boolean isOsArchMIPS = false; + public boolean isOsArchPARISC = false; private String pathsep = null; private String filesep = null; @@ -128,10 +143,10 @@ public class MachineCtrl && (osName.indexOf("windows 95") >= 0) && (osVersion.startsWith("4.0")) ); - isMacOs = osName.startsWith("mac os"); - isMacOs9 = osVersion.startsWith("9."); + isMacOs9 = osName.startsWith("mac os") && osVersion.startsWith("9."); + isMacOsX = osName.startsWith("darwin"); - isUnix = ( (!isWin32) && (!isMacOs) ); + isUnix = ( (!isWin32) && (!isMacOs9) ); pathsep = System.getProperty("path.separator"); filesep = System.getProperty("file.separator"); @@ -148,12 +163,35 @@ public class MachineCtrl unixFlavor = unixFlavor_Irix; else if (osName.indexOf("hp-ux") >= 0) unixFlavor = unixFlavor_HPUX; + else if (osName.indexOf("darwin") >= 0) + unixFlavor = unixFlavor_MacOsX; } + if(osArch.indexOf("x86")>=0 || + osArch.indexOf("i86")>=0 || + osArch.indexOf("i786")>=0 || + osArch.indexOf("i686")>=0 || + osArch.indexOf("i586")>=0 || + osArch.indexOf("i486")>=0 || + osArch.indexOf("i386")>=0 + ) isOsArchX86=true; + else + isOsArchX86=false; + + isOsArchPPC = osArch.indexOf("ppc")>=0 || osArch.indexOf("powerpc")>=0; + isOsArchSPARC = osArch.indexOf("sparc")>=0; + isOsArchMIPS = osArch.indexOf("mips")>=0; + isOsArchPARISC = osArch.indexOf("ps_risc")>=0; + System.out.println("Machine Info:"); System.out.println("\tosName: "+osName); System.out.println("\tosVersion: "+osVersion); System.out.println("\tosArch: "+osArch); + System.out.println("\t\t isOsArchX86 ="+isOsArchX86); + System.out.println("\t\t isOsArchPPC ="+isOsArchPPC); + System.out.println("\t\t isOsArchSPARC ="+isOsArchSPARC); + System.out.println("\t\t isOsArchMIPS ="+isOsArchMIPS); + System.out.println("\t\t isOsArchPARISC ="+isOsArchPARISC); System.out.println(""); System.out.println("jvmVendor: "+jvmVendor); System.out.println("jvmVersion: "+jvmVersion+ @@ -359,11 +397,11 @@ public class MachineCtrl len = ((Integer)m.invoke(kernel32,args)).intValue(); f = new File(new String(buf)); os_lib_dir = f.getAbsolutePath().replace('\\','/'); - browser_natives = os_lib_dir; + os_natives = os_lib_dir; } catch (Exception e) { - browser_natives = null; + os_natives = null; System.out.println(e); System.out.println("call to get the sys dir failed:\n"+ buf); } @@ -399,7 +437,7 @@ public class MachineCtrl return false; } } // if (isWin32) - else if (isMacOs) + else if (isMacOs9) { // TODO: Add IE init here for browser_classes and browser_natives directories // under MacOs. @@ -414,8 +452,8 @@ public class MachineCtrl { if (isWin32) { - // Find WINDOWS and WINDOWS\SYSTEM directories for Win9x, - // or WINNT and WINNT\SYSTE23 directories for WinNT. + // Find WINDOWS and WINDOWS\SYSTEM directories for Win9x, + // or WINNT and WINNT\SYSTEM23 directories for WinNT. Process proc = null; String path = ""; try @@ -556,6 +594,7 @@ public class MachineCtrl || (os_lib_dir.length() < 1) ) os_lib_dir = thispath2; + os_natives = os_lib_dir; } } } @@ -606,7 +645,7 @@ public class MachineCtrl String jvmHome = java.lang.System.getProperty("java.home"); - if ( (isWin32) || (isUnix) || (isMacOs) ) + if ( (isWin32) || (isUnix) ) { if(DEBUG) System.out.println("find classpath ..."); @@ -688,30 +727,99 @@ public class MachineCtrl switch (unixFlavor) { case unixFlavor_Linux: - browser_natives = new String("/usr/lib"); + os_natives = new String("/usr/lib"); break; case unixFlavor_Solaris: - browser_natives = new String("/usr/lib"); + os_natives = new String("/usr/lib"); break; case unixFlavor_Aix: - browser_natives = new String("/usr/lib"); + os_natives = new String("/usr/lib"); break; case unixFlavor_Irix: - browser_natives = new String("/usr/lib"); + os_natives = new String("/usr/lib"); break; } } - else - browser_natives = thispath.substring(0,thispath.length()-7) + "bin"; + else if(os_natives==null||os_natives.length()==0) + os_natives = thispath.substring(0,thispath.length()-7) + "bin"; break; } } } } - } - } // if ( (isWin32) || (isUnix) || (isMacOs) ) + if(jvmHome!=null && jvmHome!="null") + { + if(isWin32) + { + if(isOsArchX86) + { + browser_natives=jvmHome+"/bin"; + } + java_lib="java.dll"; + } + if(isUnix) + { + if(unixFlavor==unixFlavor_Linux) + { + if(isOsArchX86) + { + browser_natives=jvmHome+"/lib/i386"; + } else if(isOsArchPPC) + { + browser_natives=jvmHome+"/lib/ppc"; + } + } else if(unixFlavor==unixFlavor_Solaris) + { + if(isOsArchSPARC) + browser_natives=jvmHome+"/lib/sparc"; + } else if(unixFlavor==unixFlavor_Irix) + { + if(isOsArchMIPS) + browser_natives=jvmHome+"/lib/mips"; + } else if(unixFlavor==unixFlavor_HPUX) + { + if(isOsArchPARISC) + browser_natives=jvmHome+"/lib/parisc"; + } else if(unixFlavor==unixFlavor_MacOsX) + { + if(isOsArchPPC) + { + browser_natives=jvmHome+"/lib/ppc"; + } + } + java_lib="libjava.so"; + } + if(isMacOs9) + { + if(isOsArchPPC) + browser_natives=jvmHome+"/lib/ppc"; + java_lib="java.dll"; + } + if(browser_natives==null || browser_natives.length()==0) + { + browser_natives=jvmHome+"/bin"; + java_lib="java.dll"; + } + javalibdir_list=new Vector(); + javalibdir_list.addElement(browser_natives); + javalibdir_list.addElement(jvmHome+"/bin"); + javalibdir_list.addElement(jvmHome+"/lib/i686"); + javalibdir_list.addElement(jvmHome+"/lib/i686/i686/native_threads"); + javalibdir_list.addElement(jvmHome+"/lib/i686/i686/green_threads"); + javalibdir_list.addElement(jvmHome+"/lib/i386"); + javalibdir_list.addElement(jvmHome+"/lib/ppc"); + javalibdir_list.addElement(jvmHome+"/lib/sparc"); + javalibdir_list.addElement(jvmHome+"/lib/mips"); + javalibdir_list.addElement(jvmHome+"/lib/parisc"); + javalibdir_list.addElement(jvmHome+"/lib/risc"); + javalibdir=FileTool.libraryExists(this,java_lib,javalibdir_list); + if (javalibdir!=null) + browser_natives=javalibdir; + } // if jvmhome!=null + } // if jvmhome-classpath exists ! + } // if ( (isWin32) || (isUnix) ) /* - else if (isMacOs) + else if (isMacOs9) { } */ @@ -761,7 +869,7 @@ public class MachineCtrl } Panel panMain = new Panel(); - panMain.setLayout(new GridLayout(10,1)); + panMain.setLayout(new GridLayout(11,1)); if(osVersion!=null && osArch!=null) panMain.add(new Label("OS: "+osName+" "+osVersion+" "+osArch)); @@ -772,7 +880,7 @@ public class MachineCtrl panFlow.setLayout(new FlowLayout(FlowLayout.LEFT,0,0)); panFlow.add(new Label("os-dir/os-library-dir:")); if(os_dir!=null && os_lib_dir!=null) - panFlow.add(new Label(os_dir.trim()+"/"+os_lib_dir.trim())); + panFlow.add(new Label(os_dir.trim()+" / "+os_lib_dir.trim())); else panFlow.add(new Label("none/none")); panMain.add(panFlow); @@ -783,7 +891,16 @@ public class MachineCtrl checkboxInstallGLUTFontSupport = new Checkbox("with GLUT-Fonts", true); checkboxInstallGLUTFontSupport.addItemListener(this); panGL4JSpecials.add(checkboxInstallGLUTFontSupport); - panGL4JSpecials.add(new Label("(takes up to 200kBytes)")); + panGL4JSpecials.add(new Label("(takes up to 111 kBytes)")); + panMain.add(panGL4JSpecials); + + panGL4JSpecials = new Panel(); + panGL4JSpecials.setLayout(new GridLayout(1,2)); + installGLFFontSupport = true; + checkboxInstallGLFFontSupport = new Checkbox("with GLF-Fonts", true); + checkboxInstallGLFFontSupport.addItemListener(this); + panGL4JSpecials.add(checkboxInstallGLFFontSupport); + panGL4JSpecials.add(new Label("(takes up to 611 kBytes)")); panMain.add(panGL4JSpecials); Panel panOS = new Panel(); @@ -794,7 +911,7 @@ public class MachineCtrl cb1 = new Checkbox("Win95", isWin95); cb1.setEnabled(false); panOS.add(cb1); - cb1 = new Checkbox("MacOS", isMacOs); + cb1 = new Checkbox("MacOS9", isMacOs9); cb1.setEnabled(false); panOS.add(cb1); cb1 = new Checkbox("Unix", isUnix); @@ -805,7 +922,7 @@ public class MachineCtrl if(isUnix) { Panel panOSUnix = new Panel(); - panOSUnix.setLayout(new GridLayout(2,2)); + panOSUnix.setLayout(new GridLayout(2,3)); cb1 = new Checkbox("GNU/Linux", unixFlavor==unixFlavor_Linux); cb1.setEnabled(false); panOSUnix.add(cb1); @@ -818,6 +935,12 @@ public class MachineCtrl cb1 = new Checkbox("Irix", unixFlavor==unixFlavor_Irix); cb1.setEnabled(false); panOSUnix.add(cb1); + cb1 = new Checkbox("HP-UX", unixFlavor==unixFlavor_HPUX); + cb1.setEnabled(false); + panOSUnix.add(cb1); + cb1 = new Checkbox("Darwin/MacOsX", unixFlavor==unixFlavor_MacOsX); + cb1.setEnabled(false); + panOSUnix.add(cb1); panMain.add(panOSUnix); } @@ -850,16 +973,29 @@ public class MachineCtrl buttonFileClasses.addActionListener(this); panFlow.add(buttonFileClasses); panMain.add(panFlow); + panFlow = new Panel(); //panFlow.setLayout(new GridLayout(1,3)); panFlow.setLayout(new FlowLayout(FlowLayout.LEFT)); - panFlow.add(new Label("Native-Lib's-Path:")); + panFlow.add(new Label("Java Native-Lib's-Path's:")); tf_browser_natives = new TextField(browser_natives,60); tf_browser_natives.addActionListener(this); panFlow.add(tf_browser_natives); - buttonFileNatives = new Button("..."); - buttonFileNatives.addActionListener(this); - panFlow.add(buttonFileNatives); + buttonFileNativesBrowser = new Button("..."); + buttonFileNativesBrowser.addActionListener(this); + panFlow.add(buttonFileNativesBrowser); + panMain.add(panFlow); + + panFlow = new Panel(); + //panFlow.setLayout(new GridLayout(1,3)); + panFlow.setLayout(new FlowLayout(FlowLayout.LEFT)); + panFlow.add(new Label("OS Native-Lib's-Path's:")); + tf_os_natives = new TextField(os_natives,60); + tf_os_natives.addActionListener(this); + panFlow.add(tf_os_natives); + buttonFileNativesOS = new Button("..."); + buttonFileNativesOS.addActionListener(this); + panFlow.add(buttonFileNativesOS); panMain.add(panFlow); dialog.add("Center", panMain); @@ -974,15 +1110,18 @@ public class MachineCtrl fisdir=false; try { - fname = tf_browser_natives.getText().replace('\\','/'); + fname = tf_browser_natives.getText().replace('\\','/'); + if(fname!=null && fname.length()>0) fname = fname.trim(); - f = new File(fname); + if(fname!=null && fname.length()>0) + { + f = new File(fname); fexist=f.exists(); fisdir=f.isDirectory(); if(f!=null && fexist && fisdir ) { browser_natives = fname; - System.out.println("Set Native-Dir to: "+ + System.out.println("Set Browser-Native-Dir to: "+ browser_natives); } else { str = new String ("directory <"+ @@ -998,6 +1137,7 @@ public class MachineCtrl tf_browser_natives.requestFocus(); tf_browser_natives.getToolkit().beep(); } + } } catch (Exception ex) { ex.printStackTrace(); str = new String ("EXCEPTION directory <"+ @@ -1013,6 +1153,50 @@ public class MachineCtrl tf_browser_natives.requestFocus(); tf_browser_natives.getToolkit().beep(); } + try { + fname = tf_os_natives.getText().replace('\\','/'); + if(fname!=null && fname.length()>0) + fname = fname.trim(); + if(fname!=null && fname.length()>0) + { + f = new File(fname); + fexist=f.exists(); + fisdir=f.isDirectory(); + if(f!=null && fexist && fisdir ) + { + os_natives = fname; + System.out.println("Set OS-Native-Dir to: "+ + os_natives); + } else { + str = new String ("directory <"+ + tf_os_natives.getText().trim()+ + "> is invalid "); + if(f!=null) { + str+= "( exist="+ fexist + + ", isDir="+fisdir+ ")"; + } else { + str+= "( f is NULL )"; + } + ok=false; + tf_os_natives.requestFocus(); + tf_os_natives.getToolkit().beep(); + } + } + } catch (Exception ex) { + ex.printStackTrace(); + str = new String ("EXCEPTION directory <"+ + tf_os_natives.getText().trim()+ + "> is invalid "); + if(f!=null) { + str+= "( exist="+ fexist + + ", isDir="+fisdir+ ")"; + } else { + str+= "( f is NULL )"; + } + ok=false; + tf_os_natives.requestFocus(); + tf_os_natives.getToolkit().beep(); + } if(!ok && str!=null) { System.out.println(str); @@ -1054,14 +1238,22 @@ public class MachineCtrl fd.show(); tf_browser_classes.setText(fd.getDirectory()); //checkTextFields(); - } else if(src.equals(buttonFileNatives)) + } else if(src.equals(buttonFileNativesBrowser)) { FileDialog fd = - new FileDialog(dialog,"GL4Java Classes Dir",FileDialog.SAVE); + new FileDialog(dialog,"GL4Java JVM Natives Dir",FileDialog.SAVE); fd.setDirectory(tf_browser_natives.getText()); fd.show(); tf_browser_natives.setText(fd.getDirectory()); //checkTextFields(); + } else if(src.equals(buttonFileNativesOS)) + { + FileDialog fd = + new FileDialog(dialog,"GL4Java OS Natives Dir",FileDialog.SAVE); + fd.setDirectory(tf_os_natives.getText()); + fd.show(); + tf_os_natives.setText(fd.getDirectory()); + //checkTextFields(); } else if(src.equals(goToJausoftGL4Java) && applet!=null) { try { @@ -1080,6 +1272,11 @@ public class MachineCtrl installGLUTFontSupport = checkboxInstallGLUTFontSupport.getState(); } + if(checkboxInstallGLFFontSupport.equals(e.getItemSelectable())) + { + installGLFFontSupport = + checkboxInstallGLFFontSupport.getState(); + } } diff --git a/Installer/makeMSIESignedCab.sh b/Installer/makeMSIESignedCab.sh index 768c362..1ead186 100755 --- a/Installer/makeMSIESignedCab.sh +++ b/Installer/makeMSIESignedCab.sh @@ -4,16 +4,16 @@ # The Microsft signing keys were created using the Microsoft makecert and # cert2spc utilities, as follows: -# makecert -nscp -r -n CN=GL4JInst GL4JInst.cer -sv GL4JInst.pvk +# makecert -nscp -r -n CN=GL4JInst GL4JInst281.cer -sv GL4JInst281.pvk # (when prompted for a password, click "None") -# cert2spc GL4JInst.cer GL4JInst.spc +# cert2spc GL4JInst281.cer GL4JInst281.spc rm -f *.class GL4JInst.cab -//D/MSJAVASDK/BIN/jvc -nomessage -x- -cp:p .\;..\\CAPSAPI_CLASSES.ZIP *.java +/MSJVM/BIN/jvc -nomessage -x- -cp:p .\;..\\CAPSAPI_CLASSES.ZIP *.java . versionundef.sh -//D/MSJAVASDK/Bin/cabarc N GL4JInst.cab *.class +/MSJVM/Bin/cabarc N GL4JInst.cab *.class # signcode -j javasign.dll -jp low -spc GL4JInst.spc -k GL4JInst GL4JInst.cab -//D/MSJAVASDK/Bin/signcode -j javasign.dll -jp low -spc GL4JInst271.spc -v GL4JInst271.pvk GL4JInst.cab +/MSJVM/Bin/signcode -j javasign.dll -jp low -spc GL4JInst281.spc -v GL4JInst281.pvk GL4JInst.cab rm *.class diff --git a/Installer/makeNetscapeSignedJar-Unix.sh b/Installer/makeNetscapeSignedJar-Unix.sh index 0cad301..437e7b7 100755 --- a/Installer/makeNetscapeSignedJar-Unix.sh +++ b/Installer/makeNetscapeSignedJar-Unix.sh @@ -5,9 +5,9 @@ # The Netscape signing keys were created using the Netscape signtool # utility, as follows: # copy key3.db and cert7.db from one of the users directories. -# signtool -d . -G GL4JInst271 +# signtool -d . -G GL4JInst281 # Enter the following information: -# certificate common name: GL4JInst271 +# certificate common name: GL4JInst281 # organization: GL4Java Development Team # organization unit: GL4JInst # state or province: NRW @@ -27,7 +27,7 @@ javac -classpath ".:../capsapi_classes.zip" *.java . versionundef.sh rm -rf META-INF -signtool -d . -e .class -k GL4JInst271 -Z GL4JInst_ns.jar -c9 --norecurse . +signtool -d . -e .class -k GL4JInst281 -Z GL4JInst_ns.jar -c9 --norecurse . rm -rf META-INF rm -f key3.db cert7.db *.class diff --git a/Installer/makefile b/Installer/makefile new file mode 100755 index 0000000..71cff1b --- /dev/null +++ b/Installer/makefile @@ -0,0 +1,6 @@ + +copy2jaulocal: + cp -a *.txt *.html \ + ~/projects/jausoft-httpd/Files/Java/1.1.X/GL4Java/Installer + cp -a *.cab *.jar *.class *.crt *.policy \ + ~/projects/jausoft-httpd/Files/Java/1.1.X/GL4Java/Installer diff --git a/Installer/versiondef.sh b/Installer/versiondef.sh index ca1295e..88ba6f3 100644 --- a/Installer/versiondef.sh +++ b/Installer/versiondef.sh @@ -1,5 +1,5 @@ MAJV=2 -MINV=7 +MINV=8 BUGV=1 RELV=0 |