bsd-port b58 update
Kurt Miller
kurt at intricatesoftware.com
Wed May 20 08:53:15 PDT 2009
I completed updating bsd-port to b58 locally and will be pushing it up
to the repository soon. There are some things to be aware of with this
update. There are new nio classes and packages as well as sctp support
in jdk7 now. For more details see:
http://www.openjdk.org/projects/nio/
http://www.openjdk.org/projects/sctp/
I did not integrate the new java.nio.sctp package. There is no SCTP
support in OpenBSD or FreeBSD 6.x (not sure about NetBSD or OS X). I
removed nio subdir from jdk/make/com/sun/Makefile so the java.nio.sctp
package package is completely skipped.
There is a new nio class:
java.nio.channels.spi.AsynchronousChannelProvider
I did not provide a BSD implementation since the Solaris, Linux or
Windows implementations all use features not present on BSD (/dev/poll,
epoll, and iocp). Attempting to use this class will result in an
"platform not recognized" exception until a BSD version is implemented
(preferably kqueue based).
There is a new nio package: java.nio.fs. I provided partial/incomplete
implementation for the BsdFileSystem and BsdFileStore classes. Basically
I implemented enough so that bsd-port can bootstrap itself on *BSD.
However, OS X needs an alternate implementation of
BsdFileSystem.getMountEntries() since OS X doesn't use /etc/fstab like
the BSD's do. Without an OS X getMountEntries() implementation bsd-port
can't be used to bootstrap itself on OS X, but it should still build.
The BSD's and OS X currently don't have openat, fstatat, unlinkat,
renameat, futimesat, fdopendir or getextmntent which are needed for
full java.nio.fs support. See:
jdk/src/solaris/native/sun/nio/fs/UnixNativeDispatcher.c
I wrote an alternate implementation for getextmntent() that works on
*BSD but not on OS X. We need alternate implementations for the rest.
Expect java.nio.fs classes to have problems until we have alternate
implementations for those functions.
In short, expect bsd-port to have some deficiencies until project
members or the community provide implementations for the missing
parts. If you have the interest and capability this is an excellent
time to contribute to bsd-port.
Regards,
-Kurt
More information about the bsd-port-dev
mailing list