Needed software for development
===============================

	Mozilla 1.7a or newer
	GCC 3.4.0 or newer
	autoconf 2.59
	automake 1.8.2
	libtool 1.4.3 (1.5.x branch doesnt work)

Debugging gcjwebplugin in Mozilla
=================================

From dist/bin in the Mozilla build directory:

  export LD_LIBRARY_PATH=`pwd`:$(libgcj_prefix)/lib

  gdb ./mozilla-bin

Now from gdb:

  run

Wait for the Mozilla window to come up.  Then, from the gdb window,
press Ctrl-C to suspend the browser's execution.

Now you need to set a breakpoint in Mozilla at a point just after the
plug-in has been loaded, but before any of its functions have been
called.  At that point, the plug-in's symbols will be available to
gdb, so you will be able to set breakpoints in the plug-in code.

The call to load the plug-in .so is
pluginFile.LoadPlugin(pluginLibrary) in
modules/plugin/base/src/nsPluginHostImpl.cpp.  So for my version of
Mozilla, I do this:

  break nsPluginHostImpl.cpp:4545

which sets a breakpoint just after the LoadPlugin call.

Then,

  continue

In Mozilla, enter the URL of a web page that loads an applet
(preferably a local one, for security reasons!).  This will cause
Mozilla to load the plug-in .so and hit the breakpoint you set.  From
this point, you should be able to set breakpoints anywhere in the
plug-in.
