Current status of macosx-port src repository
Build
build using clang
build libraries -fobjc-gc to be ObjC-GC compatible
build .jdk bundle
build embeddable .jre bundle
HotSpot
Load .jnilib (in addition to .dylib)
remove ALWAYS_PASS_TEST_GAMMA hack
register new threads as ObjC-GC capable
Core Libraries
Investigate JDK7-specific additions to NIO
- kqueue based Selector
- WatchService implementation
- Async I/O API
Networking
X11
Universal binaries
JObjC
get tests passing
self-generate BridgeSupport full files
Lightweight AWT
Install AppKit App delegate, handle AWT lifecycle, autoshutdown***
eAWT/eIO
-
Needs refresh from Apple trunk
-XstartOnFirstThread
-
2D drawing (OpenGL based)
Cocoa key/text events
cleanup to use JRSEvent API
threading cleanup
merge JDK6 CWindow -> LWCWindow changes and style flags
update CImage
Complete AWT peers (ScrollPane, TextArea, Checkbox, etc)
Headless
remove $AWT_TOOLKIT=CToolkit, switch to default
ObjC-GC cleanup
Aqua LaF
Screen Menu Bar
Needs cleanup to use JRSMenu API
Needs refresh from Apple trunk
Requires an image tile cache
Fonts/Text drawing**
Needs cleanup to use JRSFont API
Robot
System properties fixup (vendor name, etc)
Resolve "Darwin" vs. "Mac OS X" checks
JNI interface for JavaVM.framework
Not yet ported from Apple's Java SE 6
Clipboard
Printing
Proxy Server handling
- get config from System Configuration framework
DTrace v2-style probes
Shared Archive Generation
Bundled app launching
Port private JUnit harness tests to jtreg
may require additions to JavaRuntimeSupport.framework
Locale support
Requires a single locale setter CFBundle SPI call
Accessibility (requires 1 method)
Drag & Drop (requires some CoreDrag methods)
SWT/3D embedding with JAWT
might require CALayer cross-process linking internals
Requires rewrite
Need Evaluation for distribution mechanism
Crypto/Keychain/Smartcard
Not Scoped ("deploy" is not part of public JDK7)
Applets/Plugin2**
Need to create .plugin bundle
-
Need to embed slimmed JRE into .plugin bundle
Need NPAPI/Cocoa event -> Java event conversion
Need the LWAWT to render into NSOpenGLLayer (see above)
Need cross-process CALayer connection mechanism to be exposed
Need to determine update mechanism (Sparkle.framework?)
-
Web Start
Need to determine delivery vehicle (inside Applet plug-in, or some other form)
.jnlp file ownership hand-off with Apple's "Java Web Start.app" helper?
Java Preferences
Soft tasks
Move internal bugs to http://java.net/jira/browse/MACOSX_PORT
Write up wiki pages for
Quickstart
Status
Compiler changes/issues
Cocoa & Java crash course
Threading manifesto
Memory management manifesto
Mac OS X conceptual deviations from Java platform assumptions
Internal "Adopt-an-app" testing workflows
Non-tasks
These issues will not be ported to OpenJDK from the Apple Java SE 6 port
- Making MacRoman encoding the default
- NSView-based AWT heavyweight widgets
Overview
Content Tools
ThemeBuilder