diff options
Diffstat (limited to 'libjava/classpath/doc')
-rw-r--r-- | libjava/classpath/doc/Makefile.in | 10 | ||||
-rw-r--r-- | libjava/classpath/doc/README.jaxp | 5 | ||||
-rw-r--r-- | libjava/classpath/doc/api/Makefile.in | 10 | ||||
-rw-r--r-- | libjava/classpath/doc/hacking.texinfo | 73 | ||||
-rw-r--r-- | libjava/classpath/doc/vmintegration.texinfo | 42 | ||||
-rw-r--r-- | libjava/classpath/doc/www.gnu.org/events/events.wml | 13 | ||||
-rw-r--r-- | libjava/classpath/doc/www.gnu.org/events/fosdem06.wml | 191 | ||||
-rw-r--r-- | libjava/classpath/doc/www.gnu.org/newsitems.txt | 5 |
8 files changed, 330 insertions, 19 deletions
diff --git a/libjava/classpath/doc/Makefile.in b/libjava/classpath/doc/Makefile.in index 34bdbb19c16..77e60a9683e 100644 --- a/libjava/classpath/doc/Makefile.in +++ b/libjava/classpath/doc/Makefile.in @@ -41,10 +41,11 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in texinfo.tex ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \ $(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \ - $(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/acinclude.m4 \ + $(top_srcdir)/m4/ax_create_stdint_h.m4 \ + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -149,6 +150,7 @@ JAY = @JAY@ JAY_SKELETON = @JAY_SKELETON@ JIKES = @JIKES@ JIKESENCODING = @JIKESENCODING@ +JIKESWARNINGS = @JIKESWARNINGS@ KJC = @KJC@ LDFLAGS = @LDFLAGS@ LIBDEBUG = @LIBDEBUG@ diff --git a/libjava/classpath/doc/README.jaxp b/libjava/classpath/doc/README.jaxp index 12fd0527815..55a1df52ff1 100644 --- a/libjava/classpath/doc/README.jaxp +++ b/libjava/classpath/doc/README.jaxp @@ -17,7 +17,7 @@ PACKAGES . gnu.xml.xpath.* ... JAXP XPath implementation . gnu.xml.transform.* ... JAXP XSL transformer implementation . gnu.xml.pipeline.* ... SAX2 event pipeline support -. gnu.xml.stream.* ... StAX pull parser implementation +. gnu.xml.stream.* ... StAX pull parser and SAX-over-StAX driver . gnu.xml.util.* ... various XML utility classes . gnu.xml.libxmlj.dom.* ... libxmlj DOM Level 3 Core and XPath . gnu.xml.libxmlj.sax.* ... libxmlj SAX parser @@ -139,6 +139,9 @@ To enable the various GNU JAXP factories, set the following system properties -Djavax.xml.stream.XMLInputFactory=gnu.xml.stream.XMLInputFactoryImpl -Djavax.xml.stream.XMLOutputFactory=gnu.xml.stream.XMLOutputFactoryImpl + GNU SAX-over-StAX: + -Djavax.xml.parsers.SAXParserFactory=gnu.xml.stream.SAXParserFactory + libxmlj SAX: -Djavax.xml.parsers.SAXParserFactory=gnu.xml.libxmlj.sax.GnomeSAXParserFactory diff --git a/libjava/classpath/doc/api/Makefile.in b/libjava/classpath/doc/api/Makefile.in index dafdd41f5b5..e2e0a1a115e 100644 --- a/libjava/classpath/doc/api/Makefile.in +++ b/libjava/classpath/doc/api/Makefile.in @@ -42,10 +42,11 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \ $(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \ - $(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/acinclude.m4 \ + $(top_srcdir)/m4/ax_create_stdint_h.m4 \ + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -142,6 +143,7 @@ JAY = @JAY@ JAY_SKELETON = @JAY_SKELETON@ JIKES = @JIKES@ JIKESENCODING = @JIKESENCODING@ +JIKESWARNINGS = @JIKESWARNINGS@ KJC = @KJC@ LDFLAGS = @LDFLAGS@ LIBDEBUG = @LIBDEBUG@ diff --git a/libjava/classpath/doc/hacking.texinfo b/libjava/classpath/doc/hacking.texinfo index e97116fd5fa..34b1099fdc4 100644 --- a/libjava/classpath/doc/hacking.texinfo +++ b/libjava/classpath/doc/hacking.texinfo @@ -83,6 +83,11 @@ Programming Standards Working on the code, Working with others +* Branches:: +* Writing ChangeLogs:: + +Working with branches + * Writing ChangeLogs:: Programming Goals @@ -493,7 +498,7 @@ The following lists how code is formatted (and some other code conventions): -@itemize +@itemize @bullet @item Java source files in GNU Classpath are encoded using UTF-8. However, @@ -689,7 +694,7 @@ fail to compile the offending source code. Some things are the same as in the normal GNU Coding Standards: -@itemize +@itemize @bullet @item Unnecessary braces can be removed, one line after an if, for, while as @@ -807,10 +812,70 @@ followed to be the most productive they can be (given the above constraints). @menu +* Branches:: +* Writing ChangeLogs:: +@end menu + +@node Branches, Writing ChangeLogs, Hacking Code, Hacking Code +@comment node-name, next, previous, up +@section Working with branches + +Sometimes it is necessary to create branch of the source for doing new +work that is disruptive to the other hackers, or that needs new +language or libraries not yet (easily) available. + +After discussing the need for a branch on the main mailinglist with +the other hackers explaining the need of a branch and suggestion of +the particular branch rules (what will be done on the branch, who will +work on it, will there be different commit guidelines then for the +mainline trunk and when is the branch estimated to be finished and +merged back into the trunk) every GNU Classpath hacker with commit +access should feel free to create a branch. There are however a couple +of rules that every branch should follow: + +@itemize @bullet + +@item All branches ought to be documented in the developer wiki at +@uref{http://developer.classpath.org/mediation/ClasspathBranches}, so +we can know which are live, who owns them, and when they die. + +@item Some rules can be changed on a branch. In particular the branch +maintainer can change the review requirements, and the requirement of +keeping things building, testing, etc, can also be lifted. (These +should be documented along with the branch name and owner if they +differ from the trunk.) + +@item Requirements for patch email to classpath-patches and for paperwork +@strong{cannot} be lifted. See @ref{Requirements}. + +@item A branch should not be seen as ``private'' or +``may be completely broken''. It should be as much as possible +something that you work on with a team (and if there is no team - yet +- then there is nothing as bad as having a completely broken build to +get others to help out). There can of course be occasional breakage, but +it should be planned and explained. And you can certainly have a rule +like ``please ask me before committing to this branch''. + +@item Merges from the trunk to a branch are at the discretion of the +branch maintainer. + +@item A merge from a branch to the trunk is treated like any other patch. +In particular, it has to go through review, it must satisfy all the +trunk requirements (build, regression test, documentation). + +@item There may be additional timing requirements on merging a branch to +the trunk depending on the release schedule, etc. For instance we may +not want to do a branch merge just before a release. + +@end itemize + +If any of these rules are unclear please discuss on the list first. + +@menu * Writing ChangeLogs:: @end menu -@node Writing ChangeLogs, , Hacking Code, Hacking Code +@node Writing ChangeLogs, , Branches, Hacking Code @comment node-name, next, previous, up @section Documenting what changed when with ChangeLog entries @@ -828,7 +893,7 @@ A good ChangeLog entry guideline can be found in the Guile Manual at Here are some example to explain what should or shouldn't be in a ChangeLog entry (and the corresponding commit message): -@itemize +@itemize @bullet @item The first line of a ChangeLog entry should be: diff --git a/libjava/classpath/doc/vmintegration.texinfo b/libjava/classpath/doc/vmintegration.texinfo index 81e9920d6a8..fa5f747ffea 100644 --- a/libjava/classpath/doc/vmintegration.texinfo +++ b/libjava/classpath/doc/vmintegration.texinfo @@ -226,6 +226,7 @@ become operable. * java.lang.VMRuntime:: * java.lang.VMString:: * java.lang.VMThread:: +* java.lang.VMInstrumentationImpl:: @end menu @node java.lang.VMClass, java.lang.VMObject ,java.lang,java.lang @@ -607,7 +608,7 @@ A new mapping is created for each new string being @code{intern}ed. A VM may implement this differently by implementing this method, which is @code{static} and the only one in @code{VMString}. -@node java.lang.VMThread,, java.lang.VMString, java.lang +@node java.lang.VMThread,java.lang.VMInstrumentationImpl, java.lang.VMString, java.lang @subsection @code{java.lang.VMThread} @code{VMThread} provides the link between Java's threads and the platform @@ -683,6 +684,45 @@ having returned true, and is thus deprecated as a result. @end itemize @end itemize +@node java.lang.VMInstrumentationImpl,, java.lang.VMThread, java.lang +@subsection @code{java.lang.VMInstrumentationImpl} + +The @code{java.lang.VMInstrumentationImpl} and +@code{java.lang.InstrumentationImpl} provides an implementation of the +@code{java.lang.instrument.Instrument} interface. This interface is for java +1.5 and is only in the generics branch. +A @code{InstrumentationImpl} object should be given to any agent +given in the command line (see the @code{java.lang.instrument} package +documentation). A VM has to implement the static native methods of the +@code{VMInstrumentationImpl} class. + +@itemize @bullet +@item @code{isRedefineClassesSupported()} -- Returns true if the JVM supports +class redefinition. +@item @code{redefineClasses()} -- Gives a set of classes with new bytecodes. +The VM must redefine the classes by reading the new bytecodes. +@item @code{getAllLoadedClass()} -- Returns an array of all loaded classes. +@item @code{getInitiatedClass()} -- Returns an array of all classes loaded +by a specific class loader. +@item @code{getObjectSize()} -- Gives the size of an object. +@end itemize + +When agents are defined, the VM has to call transformers of the +@code{InstrumentImpl} object each time a class is loaded, eg a call to +@code{VMClassLoader.defineClass}. The @code{InstrumentationImpl} class defines +a method that has to be called before reading a class file in the VM. + +@itemize @bullet +@item @code{callTransformers} -- Calls each transformer registered to +the @code{InstrumentationImpl} object and returns a new bytecode file. +@end itemize + +No default implementation is provided in gnu classpath for the +@code{VMInstrumentationImpl} methods. A default implementation will perhaps +be written, but it might break the @code{ClassLoader/VMClassLoader} interface +for calling the @code{InstrumentationImpl.callTransformers} when a class byte +code is defined with @code{ClassLoader.defineClass}. + @node gnu.classpath, java.util, java.lang, Classpath Hooks @section @code{gnu.classpath} diff --git a/libjava/classpath/doc/www.gnu.org/events/events.wml b/libjava/classpath/doc/www.gnu.org/events/events.wml index 873d4fae1d5..7d9514bdf9d 100644 --- a/libjava/classpath/doc/www.gnu.org/events/events.wml +++ b/libjava/classpath/doc/www.gnu.org/events/events.wml @@ -9,11 +9,7 @@ <boxitem> <strong>Upcoming Events:</strong><br> <ul> -<li>[1-5 Aug 2005] <a href="http://conferences.oreillynet.com/os2005/">OSCON</a>, Portland, Oregon - USA -<ul> -<li><a href="http://conferences.oreillynet.com/cs/os2005/view/e_sess/6730">The State of Free JVMs</a> -Tom Tromey</li> -</ul> +<li>[25+26 Feb. 2006] FOSDEM'06 in Brussels, Belgium. [<createlink name="GNU Classpath and friends" url="events/fosdem06.html">]</li> </ul> </boxitem> @@ -22,6 +18,13 @@ Tom Tromey</li> <ul> <li> +[1-5 Aug 2005] <a href="http://conferences.oreillynet.com/os2005/">OSCON</a>, Portland, Oregon - USA +<ul> +<li><a href="http://conferences.oreillynet.com/cs/os2005/view/e_sess/6730">The State of Free JVMs</a> +Tom Tromey</li> +</ul> + +<li> [29-31 May 2005] <a href="http://2005.guadec.org/">Guadec</a>, Stuttgart - Germany <ul> <li><a href="http://2005.guadec.org/schedule/gnometalks.html#eclipseyou">The Eclipse IDE and you</a> diff --git a/libjava/classpath/doc/www.gnu.org/events/fosdem06.wml b/libjava/classpath/doc/www.gnu.org/events/fosdem06.wml new file mode 100644 index 00000000000..2623ef06630 --- /dev/null +++ b/libjava/classpath/doc/www.gnu.org/events/fosdem06.wml @@ -0,0 +1,191 @@ +#!wml --include=.. + +#include "include/layout.wml" + +<set-var last-modified-author="mjw"> +<subject "GNU Classpath and friends @ Fosdem 2006"> + +<box> +<boxitem> +<h2>GNU Classpath and friends meeting during Fosdem 2006</h2> + +<i>Fosdem, Saturday/Sunday 25/26 February 2006, Brussels, Belgium</i> +<p> +The various free software library, runtimes, compiler and tool +projects around GNU Classpath will meet in Brussel to discuss what has +happened in the last year in the Free Software community and what the +next year will bring us during Fosdem. +<p> +The 6th edition of FOSDEM (Free and Opensource Software Developers' +European Meeting) will take place on February 25+26 2006 in Brussels +(Belgium), at the Solbosch Campus of the ULB (Free University of +Brussels). FOSDEM is a free and non-commercial event for the community +and organized by the community. +See <a href="http://www.fosdem.org/">http://www.fosdem.org/</a>. +</boxitem> + +<boxitem> + <h3>Saturday from 13:00 to 17:00 - "End-User talks"</h3> + + <p> + Presentations that show what cool stuff can be done with the Free + Stack right now. + </p> + + <p> + <b>Putting the 'Free' into JFreeChart</b> + <i>Dave Gilbert, JFreeChart Project Leader</i> + <p> + A review of the efforts to make JFreeChart work with GNU + Classpath-based runtimes, including a brief history, a demonstration + of the current state (using the java bindings for Cairo), and an + overview of the work that remains to be done. + </p> + </p> + + <p> + <b>Using Eclipse for GNU Classpath development</b> + <i>Tom Tromey</i> + <p> + Learn how to setup a fully working development environment based + on GNU Classpath in Eclipse that can be used to bootstrap the full + free toolchain (and can be used to run Eclipse itself) in just 10 + minutes. + </p> + </p> + + <p> + <b>Eclipse RCP and GCJ/GIJ</b> + <i>Wayne Beaton</i> + <p> + Eclipse Rich Client Platform (RCP) is a runtime platform for + delivering your Java applications on multiple platforms. RCP is far + more than just a windowing toolkit; it is rich client "middleware" + that provides a comprehensive framework for building and deploying + applications that are modular, extensible, and updatable. The kinds + of applications you can build with Eclipse RCP are limited only by + your imagination. During this talk, we will discuss how the Eclipse + RCP can be used in conjunction with the Eclipse Eco-system and + GCJ/GIJ to build high quality applications. + </p> + </p> + +<p> +</boxitem> + +<boxitem> + <h3>Sunday from 09:00 to 13:00 - "Developer talks"</h3> + + <p> + Presentations of (core) libraries and runtimes that are in progress, + made a lot of progress in the last year and are in active development. + </p> + + <p> + <b>Free Swing, past, present and future</b> + <i>Roman Kennke</i> + <p> + An overview of that state of Free Swing one year ago, what has been + done in the meantime, what still must be done and which applications + work now. + </p> + </p> + + <p> + <b>The Free CORBA comes</b> + <i>Dr Audrius Meskauskas</i> + <p> + If the Free world does not want to step back in the battle, we need + a complete set of the Free tools for advanced communication over + the network. For our CORBA implementation we needed: + <p> + <ol> + <li> Free. No classes with restricted license. + <li> Fully workable, interoperable and pass tests, recognized by + the CORBA user community as serious (we needed to find a well + known Free testing suite). + <li> Properly commented, being ready for the long life in the Free + world. + <li> No pressure to use the outdated approaches. + CORBA 3.0.3 and jdk 1.5. + </ol> + <p> + To reach these goals, we have chosen for implementing a clean room + implementation, using the published standard specifications only. + During the recent year of the GNU Classpath development, this goal + is in large degree achieved. The important directions of future + development could be providing features that are outside the scope + of the both CORBA standard and Sun API, but included in the near all + proprietary implementations (SSH, HTTP and other bridges, get rid of + rmic code generator for RMI/IIOP, fault tolerant behavior, reduced + the footprint and others). + </p> + </p> + + <p> + <b>The JamVM runtime</b> + <i>Robert Lougher</i> + <p> + An overview of the JamVM virtual machine, with comparisons to other + GNU Classpath runtimes, and a section on the VM interface. + </p> + </p> + + <p> + <b>Integrating Vmgen-based interpreters</b> + <i>Christian Thalinger</i> + <p> + Vmgen is a tool for writing efficient interpreters. The Cacao + runtime recently added a Vmgen based interpreter in addition to + the JIT engine. + </p> + </p> + +<p> +<boxitem> + +<boxitem> + <h3>Sunday from 14:00 to 17:30 - "The Future"</h3> + + <p> + Interactive technical hacker discussions on how to integrate + the projects more and move forward in the next year. + </p> + + <p> + <b>State of the world, beyond japi</b> + <i>Mark Wielaard, GNU Classpath Maintainer</i> + <p> + After a short overview of the various free stacks, libraries, + compilers, tools and runtimes this session is mostly open discussion + about what work remains to be done and how to integrate the various + efforts better. Ideas for work items welcome. + </p> + </p> + +<p> +</boxitem> + +<boxitem> +<b>Additional Resources:</b> +<ul> +<li><createlink name="Free But Shackled - The Java Trap" + url="http://www.gnu.org/philosophy/java-trap.html"> + (by Richard Stallman) +</li> +<li><createlink name="Escaping the Java Trap: A practical road map to the Free Software and Open Source alternatives" + url="http://developer.classpath.org/support/"> +</li> +</ul> +<p> +</boxitem> + +<boxitem> +<b>Official links:</b> +<ul> +<li><createlink name="FOSDEM Homepage" + url="http://www.fosdem.org/"> +</li> +</ul> +</boxitem> +</box> diff --git a/libjava/classpath/doc/www.gnu.org/newsitems.txt b/libjava/classpath/doc/www.gnu.org/newsitems.txt index dbfcfd2ced9..97c14244e65 100644 --- a/libjava/classpath/doc/www.gnu.org/newsitems.txt +++ b/libjava/classpath/doc/www.gnu.org/newsitems.txt @@ -1,3 +1,8 @@ +<newsitem date="25/26 Feb 2006"> +<createlink name="GNU Classpath and friends meeting during Fosdem 2006" + url="events/fosdem06.html"> +</newsitem> + <newsitem date="02 Nov 2005"> <createlink name="GNU Classpath 0.19" url="announce/20051102.html"> |