Building JDK7 on OS X 10.6.8
Mike Swingler
swingler at apple.com
Sat Aug 31 11:00:34 PDT 2013
On Aug 31, 2013, at 8:30 AM, Andrew ``Bass'' Shcheglov <andrewbass at gmail.com> wrote:
> Hello,
>
> I've created a patch which enables building OpenJDK 1.7 on Mac OS X
> 10.6.8. So far, I've got AWT and JFC/Swing applications successfully
> running on Snow Leopard. The patch is currently available here:
> <https://github.com/hgomez/obuildfactory/blob/master/openjdk7/macosx/patches/native-sun-osx106.patch>.
>
> The original discussion is here:
> <https://github.com/hgomez/obuildfactory/issues/3>.
>
> 4 Objective-C files are affected:
>
> * in sun/awt/AWTView.m, 10.7+ code is simply reimplemented with
> 10.6-only API
Probably not important on 10.6, since it does not support HiDPI/Retina.
> * in sun/awt/CGraphicsDevice.m, 10.7+ code is simply stripped out: as
> far as I understand, it's not that important.
This breaks full screen which takes over the whole display and resets it in a specific mode. Might not be a big deal to you.
> * in sun/java2d/opengl/CGLLayer.m, an UnsupportedOperationException is
> thrown from the native code. I have no idea what the correct 10.6
> replacement should be.
Doesn't matter, because 10.6 doesn't support HiDPI/Retina.
> * finally, sun/osxapp/ThreadUtilities.h features a minor 10.6-specific
> correction.
A fine correction.
> The decision of which code branch to include at compile time is based on
> the __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ preprocessor macro.
>
> I'm asking Objective-C experts who read this list to review the patch
> and propose any corrections/enhancements. Any feedback is appreciated.
>
> Also, once the patch looks good to you, would it be possible to merge it
> into the main code tree?
These changes on their own, do not appear to damage the OpenJDK that is built on 10.7 or higher. However, an OpenJDK build on 10.6 would not be acceptable for including in a product that is expected to run on 10.7 or higher, since it would be missing these code chunks that were excised.
If these changes are accepted, there is no guarantee that future development work (in OpenJDK 8 and beyond) will not require additional workarounds.
Regards,
Mike Swingler
Apple Inc.
More information about the macosx-port-dev
mailing list