Mercurial > hg > release > icedtea-web-1.8
changeset 1224:11249cdb910b icedtea-web-1.6-branchpoint
README: updated to match current state.
author | Jiri Vanek <jvanek@redhat.com> |
---|---|
date | Tue, 28 Apr 2015 12:08:24 +0200 |
parents | ab8ea3bd3ead |
children | e7bbc9001264 |
files | ChangeLog README |
diffstat | 2 files changed, 67 insertions(+), 49 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Tue Apr 28 11:38:35 2015 +0200 +++ b/ChangeLog Tue Apr 28 12:08:24 2015 +0200 @@ -1,3 +1,7 @@ +2015-04-28 Jiri Vanek <jvanek@redhat.com> + + * README: updated to match current state. + 2015-04-28 Jiri Vanek <jvanek@redhat.com> Improved JDK9 detection
--- a/README Tue Apr 28 11:38:35 2015 +0200 +++ b/README Tue Apr 28 12:08:24 2015 +0200 @@ -7,7 +7,7 @@ project. Homepage (wiki): - http://icedtea.classpath.org/ + http://icedtea.classpath.org/wiki/IcedTea-Web Bugs (bugzilla): http://icedtea.classpath.org/bugzilla @@ -25,14 +25,23 @@ NetX ==== -NetX provides a drop-in replacement for javaws (Java Web Start). Since -upstream NetX is dormant, we will be hosting and modifying the sources -in the IcedTea-Web repository, particularly in the netx/net/sourceforge/jnlp -directory. +NetX provides a drop-in replacement for javaws (Java Web Start). Since upstream +NetX is dead, we forked the code into the netx/net/sourceforge/jnlp package, +whole implementation is still in this package, NetX is kept referenced +However, as icedtea-web has evolved to complex set of tools, extensions and tests, +it has now only a few lines of code shared with the original implementation. IcedTea's NetX currently supports verification of signed jars, trusted certificate storing, system certificate store checking, and provides -the services specified by the jnlp API. +the services specified by the jnlp API. + +In addition it also provides: + * full desktop integration + * offline run + * own appletviewer + * many extended security features + * own policy editor and much more. +For full list read NEWS and Changelog The Browser Plugin ================== @@ -48,12 +57,12 @@ $ ./autogen.sh (if building from Mercurial rather than a tarball) $ ./configure -$ gmake -$ gmake install +$ make +$ make install incantation. The build requirements are as follows: -* A bootstrap JDK. At present, only IcedTea6 is supported. +* A bootstrap JDK. You can use any java JDK7 or higher compatible. * A C compiler (for the launchers). * libX11 * zlib-devel @@ -61,33 +70,28 @@ Additionally, the plugin requires: * A C++ compiler -* firefox-devel -* xulrunner-devel +* npapi headers - depending on your distribution: firefox-devel or xulrunner-devel or NPAPI-SDK ... + +Some distributions do not provide correct NPAPI headers so you can use those: +https://bitbucket.org/mgorny/npapi-sdk/downloads. The plugin can be disabled by passing --disable-plugin. The following optional dependencies enable additional features -* rhino (enables support for using proxy auto config files) +* rhino (enables support for using proxy auto config files evaluating javascript) +* tagsoup (enables cleanup of not well formed JNLP files) * junit4 (enables unit tests) +* jacoco (enables codecoverage) + + See ./configure --help if you need to override the defaults. -The following locations are checked for a JDK: - * /usr/lib/jvm/java-openjdk - * /usr/lib/jvm/icedtea6 - * /usr/lib/jvm/java-6-openjdk - * /usr/lib/jvm/openjdk - * /usr/lib/jvm/java-icedtea - * /usr/lib/jvm/java-gcj - * /usr/lib/jvm/gcj-jdk - * /usr/lib/jvm/cacao -in the order given above. +Check IT_CHECK_FOR_JDK in acinclude.m4 to see the default search paths for JDKs. At present, some of these options fail due to sun.* classes required -by IcedTea-Web. Upstream OpenJDK will only be able to compile -IcedTea-Web if the patch applet_hole.patch from IcedTea has been -applied. +by IcedTea-Web. Most targets in IcedTea-Web create stamp files in the stamps directory to determine what and when dependencies were compiled. Each target @@ -100,44 +104,45 @@ The build process may be modified by passing the following options to configure: +To configure jdk used for build and runtime, +* --with-jdk-home and --with-jre-home are your best friends. +If you are using jdk without jre, it may force you to use both those switches +to point to same location. + * --disable-docs: Don't build the Javadoc documentation. -* --with-gcj: Compile ecj to native code with gcj prior to building. +* --with-gcj: Compile ecj to native code with gcj prior to building. (deprecated) * --with-ecj: Specify the location of a 'ecj' binary. By default, the path - is checked for ecj, ecj-3.1, ecj-3.2 and ecj-3.3. + is checked for ecj, ecj-3.1, ecj-3.2 and ecj-3.3. (deprecated) * --with-javac: Specify the location of a 'javac' binary. By default, the path - is checked for javac. + is checked for javac. (deprecated) * --with-jar: Specify the location of a 'jar' binary. By default, the path - is checked for gjar and jar. -* --with-ecj-jar: Specify the location of an ecj JAR file. By default, the - following paths are checked: - - /usr/share/java/eclipse-ecj.jar - - /usr/share/java/ecj.jar - - /usr/share/eclipse-ecj-3.{2,3,4,5}/lib/ecj.jar + is checked for gjar and jar. (deprecated) + --with-ecj-jar: Specify the location of an ecj JAR file. (deprecated) Other options may be supplied which enable or disable new features. These are documented fully in the relevant section below. * --disable-plugin: Don't build the browser plugin. * --with-rhino: Specify the location of rhino jar -* --with-junit: Specify the location of the junit 4 jar +* --with-tagsoup: Specify the location of the tagsoup jar +* --with-jacoco: Specify the location of the jacoco jar -Rhino Support -============= +Rhino and Tagsoup Support +========================= IcedTea-Web needs rhino for using Proxy Auto Config (PAC) files. If rhino is not found, or explicitly disabled, then support for PAC files will be disabled. -By default, the following paths are checked for rhino: - - /usr/share/java/js.jar - - /usr/share/rhino-1.6/lib/js.jar - - /usr/share/java/rhino.jar - If a rhino jar is not found, rhino support is disabled. The --with-rhino build option can be used to specify the location of the jar file. To explicitly disable rhino use --with-rhino=no. -JUnit Support -============= +Tagsoup is used in similar way, and it is library used to fix malformed JNLP files. + +Check acinclude.m4 to see the default search paths. + +JUnit and Jacoco Support +======================== JUnit is needed for running some tests. It has no run-time impact. @@ -153,11 +158,20 @@ printed out, followed by <TestClass>.<testMethod>. This is also the format used by JTreg. +Jacoco is used in similar way and can be used to measure code-coverage both for +junit tests and for reproducer. For plugin a fake binary is created and used. + +Check acinclude.m4 and Makefile.am to see the default behavior. + Testing ======= A set of automated tests is supplied for IcedTea-Web. They can be run by using -'make check'. Currently, this only tests a few parts of IcedTea-Web. +'make check' or "make run-netx-dist-tests" +'make check' runs a set of unit tests are that always supposed to pass. +'make run-next-dist-tets' runs the reproducer test suite which requires +you to install IcedTea-Web first. (if you want to use it in your personal space, +use --prefix to specify final path) The number and type of tests run by 'make check' may be affected by the build options, including JUnit support and rhino support. @@ -165,9 +179,9 @@ A test suite is supplied for the browser plugin. It can be built using 'make plugin-tests' and run by loading the HTML page specified into a browser with the plugin installed. +See http://icedtea.classpath.org/wiki/Reproducers for more. For debugging, the environment variable ICEDTEAPLUGIN_DEBUG should be -set to 'true'. This will produce output on the console from the C++ -side, and output from the Java side in $HOME/.icedteaplugin/java.stdout -and $HOME/.icedteaplugin/java.stderr. It also starts the debug server -on port 8787. +set to 'true'. It also starts the debug server on port 8787. If you set it to +suspend java will wait for debugger to join before launching main class. +You can set verbosity and logging levels via itweb-settings