Current status of macosx-port src repository
- HotSpot
- Load .jnilib (in addition to .dylib)
- remove ALWAYS_PASS_TEST_GAMMA hack
- register new threads as ObjC-GC capable
- build using clang
- Core Libraries
- Investigate JDK7-specific additions to NIO
- kqueue based Selector
- WatchService implementation
- Async I/O API
- build libraries -fobjc-gc to be ObjC-GC compatible
- build using clang
- Investigate JDK7-specific additions to NIO
- Networking
- X11
- Universal binaries
- builds as .jdk bundle
- 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
- eAWT/eIO
- 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
- Install AppKit App delegate, handle AWT lifecycle, autoshutdown
- Aqua LaF
- Screen Menu Bar
- Needs cleanup to use JRSMenu API
- Needs refresh from Apple trunk
- Requires an image tile cache
- Screen Menu Bar
- Fonts/Text drawing
- Needs cleanup to use JRSFont API
- Robot
Not yet ported from Apple's Java SE 6
- Clipboard
- Printing
- Proxy Server handling
- get config from System Configuration framework
- System properties fixup (vendor name, etc)
- Resolve "Darwin" vs. "Mac OS X" checks
- DTrace
- Shared Archive Generation
- JNI interface for JavaVM.framework
- Bundled app launching
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
- Locale support
- Port private JUnit harness tests to jtreg
Not Done - requires partial 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?)
- Need to create .plugin bundle
- 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
Overview
Content Tools
ThemeBuilder