Contributed by deanna on from the making-the-impossible-happen dept.
For the last year or so I've been quite busy working on various things that have caught my interest. Early last year I made OpenBSD my primary desktop. That led me down a path that I hardly anticipated but has been quite rewarding... While working on the devel/eclipse port, I began taking an interest in www/mozilla which eclipse depends on. I was building it from source regularly so I started looking at some of the stability issues with it. One of the key stability problems was caused by a bug in our runtime linker ld.so(1) - closing a dlopen'ed object that was a dependency of another object would cause the application to crash. All the mozilla.org applications suffered from this bug so I committed a workaround that stopped them from doing that.
Later drahn@ fixed the ld.so problem and the workaround was removed, but that debugging experience along with some previous ld.so porting work I did for Java had me debugging ld.so issues and becoming more familiar with it. When some dlsym(3) changes were proposed that broke the Java ports, I got involved with a rather significant rewrite of ld.so's symbol visibility internals. Working closely with Dale we overhauled ld.so for 3.9-release. That overall paved the way for me to remove all remaining OpenBSD ld.so related workarounds in the ports tree.
In the 4.0 development cycle my attention went back to Java on OpenBSD and elsewhere. Using some bootstrap tricks I broke 1.5's build dependency on devel/jdk/1.4 by using kaffe. This was significant because it broke the chain of dependencies that ultimately depended on Linux emulation (i386 only) and paved the way for 1.5 to run on other architectures. Working with ian@ (who has an amd64) we got kaffe and 1.5 running on amd64. Access to an amd64 system was provided to me by a kindly OpenBSD user and the kinks were worked out with the eclipse build there. So for 4.0 we will see both devel/jdk/1.5 and devel/eclipse running on amd64.
Also I worked on javaPathHelper which will help make Java ports on OpenBSD work consistently. I expanded the Java module to add kaffe and jamvm as possible packages for satisfying the RUN_DEPENDS for 1.4 and below level ports. For example, if you want to work with just kaffe on OpenBSD, just install it before installing other Java ports like apache-ant and ant will be smart enough to use kaffe. However, if you've got multiple jdk's or jre's installed it would be a good idea to setup your environment vars (JAVA_HOME and/or JAVACMD) to explicitly control which one is used.
Also noteworthy in the Java area; I applied to the Sun scholarship program to get access to the test kit for our devel/jdk/1.5 port. I was approved by the committee but the licensing phase has been dragging along at a snail's pace. Hopefully, in the next month or two that will be resolved.
A few weeks ago I started working on robert@'s OpenOffice port. After fixing some minor issues I started debugging the final two showstopper bugs that prevented the build from finishing. The first one was caused by a conflict between the internal libz in devel/jdk/1.4 and our libz linked into OOo. The second one was due to our not having getpwuid_r. With corrections to both of those issues and few other minor corrections, OOo was at least able to launch most of the applications and was imported into our ports tree. It still needs work before it's fully ready for general use, but it's now in a place where anyone who wants to can get involved with it.
Well that about covers most of the highlights of the last year or so. I use KDE for my desktop and an assortment of other applications on a daily basis. They all work exceedingly well.
(Comments are closed)