Archive for March, 2005

OOO/gcj/parallel buildin

Thursday, March 31st, 2005

Finally figured out a patch to get the java wizards registered under gcj. Such effort for such a little patch, but things are looking good. I think that only leaves getting patched rhino built on my gcj for OOo to-do list (outside of any runtime glitches that might show up)

Also been playing with parallel builds again with an ambitious MAXPROCESS=8, with the following patches. Success as far as binfilter so far, though there’s probably a few problems which didn’t get hit by chance.
- parallel building sdi files
- vcl
- framework

OOo/gcc/gcj/and so forth

Thursday, March 24th, 2005

Allow the OOo myspell dictionaries to be split up amoung the various langpacks.

Use gcj-dbtool during the build for gcj. This has a huge impact for me building multilanguage langpacks as helpcontent2 is a heavy java user, my experience is a 20hour build with interpreted bytecode and an 8 hour build with gcj-dbtool and -Dgnu.gcj.precompiled.db.path

workspace gccfour is ready for qa pending confirmation that gcc#20589#. We’ve been building OOo with gcc 4.0.0 for quite some time now and generally all seems well.

gcj from gcc 4.0.0 is also working quite well, near 90+% coverage of java components, though a handful are still giving trouble at runtime. Indeed the OOo bean compiles with gcj, though there has been no actual experiment to see if it actually works yet, but that should be interesting for java/gcj heads.

gcc 4 pickiness on enums

Thursday, March 24th, 2005

An interesting problem which arises from anonymous enums, templates and gcc 4.0.0 which gives a dread error:
‘<anonymous enum>’ is/uses anonymous type’ on the following code on the i == unnamedA line. Workaround in trivial, but it’s behaviour which I found surprising if apparently legal.

class Any;
template< class C > bool operator == ( const Any & rAny, const C & value );
enum named {namedA=0};
enum {unnamedA=0};
int main(void)
{
	int i=100;
	if (i == namedA)
		return 1;
	if (i == unnamedA)
		return 1;
	return 0;
}

latest gcj and OOo2 update

Thursday, March 10th, 2005

With gcj from gcc4 great progress has been made on the java components in OOo, in workspace gcj3 pretty much everything is enabled as buildable with gcj. With the following remaining handful of problems.

1. ooo patched rhino fails to build with gcj

tar xvzf rhino15R4.tar.gz
cd rhino1_5R4/
patch -p3 < ../rhino1_5R4.patch
ant -Dbuild.compiler=gcj -f build.xml

ERROR in rhino1_5R4/toolsrc/org/mozilla/javascript/tools/debugger/Main.java (at line 449)
[javac] int pos = viewToModel(new Point(popup.x, popup.y));

the scripting module also depends on this rhino module, submitted as rh#150772#. I bet it’s trivial.

2. complicated problem I don’t understand in wizards component registration. Submitted as rh#150650#.

temp ooo side wizards.workaround.patch to get past registration

3. canvas module fails to compile
missing “java.awt.Frame.createBufferStrategy” implementation ?

4. gcj’s libjawt contains a reference to undefined LINK_ReallyLinkKnownClass. Thomas Fitzsimmons is taking care of it.

temp ooo side libjawt.workaround.patch to not checkdll bean for gcj

—- unimportant stuff —-

5. sandbox uses sun.applet.AppletAudioClip and other sun.foo classes,
not important, its really a deprecated module

6. sj2 uses some sandbox things so some parts cannot be built, apparently this
module is being cleaned up to remove some of this, again not important.

gcc4 patch

Wednesday, March 2nd, 2005

Patch to build OOo 1.9.80 with gcc4, seems to work for me.