New build system and OSX

Henri Gomez henri.gomez at gmail.com
Tue Sep 25 08:28:41 PDT 2012


> I think that the java version produced by Apple did have a different
> layout of the jdk image.
> You can see traces of this in the boot-jdk.m4 where configure looks
> for Classes/Classes.jar if it does not find rt.jar.
>
> The OpenJDK sources have, as far as I know, always produced the
> standard cross platform layout, ie rt.jar.

OSX need special files and layout :


6720	./Contents/Home/bin
64	./Contents/Home/demo/applets/ArcTest
56	./Contents/Home/demo/applets/BarChart
40	./Contents/Home/demo/applets/Blink
40	./Contents/Home/demo/applets/CardTest
48	./Contents/Home/demo/applets/Clock
96	./Contents/Home/demo/applets/DitherTest
56	./Contents/Home/demo/applets/DrawTest
80	./Contents/Home/demo/applets/Fractal
160	./Contents/Home/demo/applets/GraphicsTest
48	./Contents/Home/demo/applets/MoleculeViewer/models
176	./Contents/Home/demo/applets/MoleculeViewer
32	./Contents/Home/demo/applets/NervousText
24	./Contents/Home/demo/applets/SimpleGraph
120	./Contents/Home/demo/applets/SortDemo
128	./Contents/Home/demo/applets/SpreadSheet
200	./Contents/Home/demo/applets/WireFrame/models
336	./Contents/Home/demo/applets/WireFrame
1456	./Contents/Home/demo/applets
96	./Contents/Home/demo/jfc/CodePointIM
88	./Contents/Home/demo/jfc/FileChooserDemo
200	./Contents/Home/demo/jfc/Font2DTest
184	./Contents/Home/demo/jfc/Metalworks
136	./Contents/Home/demo/jfc/Notepad
88	./Contents/Home/demo/jfc/SampleTree
32	./Contents/Home/demo/jfc/SwingApplet
120	./Contents/Home/demo/jfc/TableExample
32	./Contents/Home/demo/jfc/TransparentRuler
976	./Contents/Home/demo/jfc
8	./Contents/Home/demo/jpda/com/sun/tools/example
8	./Contents/Home/demo/jpda/com/sun/tools
8	./Contents/Home/demo/jpda/com/sun
8	./Contents/Home/demo/jpda/com
1280	./Contents/Home/demo/jpda
32	./Contents/Home/demo/jvmti/compiledMethodLoad/lib
64	./Contents/Home/demo/jvmti/compiledMethodLoad
32	./Contents/Home/demo/jvmti/gctest/lib
64	./Contents/Home/demo/jvmti/gctest
80	./Contents/Home/demo/jvmti/heapTracker/lib
200	./Contents/Home/demo/jvmti/heapTracker
32	./Contents/Home/demo/jvmti/heapViewer/lib
64	./Contents/Home/demo/jvmti/heapViewer
360	./Contents/Home/demo/jvmti/hprof/lib
808	./Contents/Home/demo/jvmti/hprof
72	./Contents/Home/demo/jvmti/minst/lib
176	./Contents/Home/demo/jvmti/minst
80	./Contents/Home/demo/jvmti/mtrace/lib
200	./Contents/Home/demo/jvmti/mtrace
32	./Contents/Home/demo/jvmti/versionCheck/lib
64	./Contents/Home/demo/jvmti/versionCheck
48	./Contents/Home/demo/jvmti/waiters/lib
104	./Contents/Home/demo/jvmti/waiters
1776	./Contents/Home/demo/jvmti
56	./Contents/Home/demo/management/FullThreadDump
56	./Contents/Home/demo/management/JTop
48	./Contents/Home/demo/management/MemoryMonitor
40	./Contents/Home/demo/management/VerboseGC
208	./Contents/Home/demo/management
48	./Contents/Home/demo/nbproject/jfc/FileChooserDemo/nbproject
64	./Contents/Home/demo/nbproject/jfc/FileChooserDemo
48	./Contents/Home/demo/nbproject/jfc/Font2DTest/nbproject
64	./Contents/Home/demo/nbproject/jfc/Font2DTest
48	./Contents/Home/demo/nbproject/jfc/Metalworks/nbproject
64	./Contents/Home/demo/nbproject/jfc/Metalworks
48	./Contents/Home/demo/nbproject/jfc/Notepad/nbproject
64	./Contents/Home/demo/nbproject/jfc/Notepad
48	./Contents/Home/demo/nbproject/jfc/SampleTree/nbproject
64	./Contents/Home/demo/nbproject/jfc/SampleTree
48	./Contents/Home/demo/nbproject/jfc/SwingApplet/nbproject
64	./Contents/Home/demo/nbproject/jfc/SwingApplet
48	./Contents/Home/demo/nbproject/jfc/TableExample/nbproject
64	./Contents/Home/demo/nbproject/jfc/TableExample
48	./Contents/Home/demo/nbproject/jfc/TransparentRuler/nbproject
64	./Contents/Home/demo/nbproject/jfc/TransparentRuler
512	./Contents/Home/demo/nbproject/jfc
48	./Contents/Home/demo/nbproject/management/FullThreadDump/nbproject
64	./Contents/Home/demo/nbproject/management/FullThreadDump
48	./Contents/Home/demo/nbproject/management/JTop/nbproject
64	./Contents/Home/demo/nbproject/management/JTop
48	./Contents/Home/demo/nbproject/management/MemoryMonitor/nbproject
64	./Contents/Home/demo/nbproject/management/MemoryMonitor
48	./Contents/Home/demo/nbproject/management/VerboseGC/nbproject
64	./Contents/Home/demo/nbproject/management/VerboseGC
256	./Contents/Home/demo/nbproject/management
48	./Contents/Home/demo/nbproject/scripting/jconsole-plugin/nbproject
64	./Contents/Home/demo/nbproject/scripting/jconsole-plugin
64	./Contents/Home/demo/nbproject/scripting
848	./Contents/Home/demo/nbproject
304	./Contents/Home/demo/nio/zipfs
304	./Contents/Home/demo/nio
136	./Contents/Home/demo/scripting/jconsole-plugin
136	./Contents/Home/demo/scripting
6992	./Contents/Home/demo
16	./Contents/Home/include/darwin
432	./Contents/Home/include
1792	./Contents/Home/jre/bin
0	./Contents/Home/jre/lib/applet
504	./Contents/Home/jre/lib/cmm
7816	./Contents/Home/jre/lib/ext
64	./Contents/Home/jre/lib/images/cursors
64	./Contents/Home/jre/lib/images
120	./Contents/Home/jre/lib/jli
56	./Contents/Home/jre/lib/management
392	./Contents/Home/jre/lib/security
22816	./Contents/Home/jre/lib/server
24	./Contents/Home/jre/lib/servicetag
416	./Contents/Home/jre/lib/zi/Africa
96	./Contents/Home/jre/lib/zi/America/Argentina
64	./Contents/Home/jre/lib/zi/America/Indiana
16	./Contents/Home/jre/lib/zi/America/Kentucky
24	./Contents/Home/jre/lib/zi/America/North_Dakota
1144	./Contents/Home/jre/lib/zi/America
80	./Contents/Home/jre/lib/zi/Antarctica
664	./Contents/Home/jre/lib/zi/Asia
80	./Contents/Home/jre/lib/zi/Atlantic
96	./Contents/Home/jre/lib/zi/Australia
232	./Contents/Home/jre/lib/zi/Etc
344	./Contents/Home/jre/lib/zi/Europe
88	./Contents/Home/jre/lib/zi/Indian
304	./Contents/Home/jre/lib/zi/Pacific
104	./Contents/Home/jre/lib/zi/SystemV
3680	./Contents/Home/jre/lib/zi
185648	./Contents/Home/jre/lib
187864	./Contents/Home/jre
67328	./Contents/Home/lib
296	./Contents/Home/man/ja/man1
296	./Contents/Home/man/ja
296	./Contents/Home/man/ja_JP.UTF-8/man1
296	./Contents/Home/man/ja_JP.UTF-8
1512	./Contents/Home/man/man1
2104	./Contents/Home/man
8	./Contents/Home/sample/dtrace/helpers
152	./Contents/Home/sample/dtrace/hotspot
56	./Contents/Home/sample/dtrace/hotspot_jni
224	./Contents/Home/sample/dtrace
40	./Contents/Home/sample/forkjoin/mergesort
40	./Contents/Home/sample/forkjoin
792	./Contents/Home/sample/jmx/jmx-scandir/docfiles
56	./Contents/Home/sample/jmx/jmx-scandir/nbproject
152	./Contents/Home/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config
536	./Contents/Home/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir
536	./Contents/Home/sample/jmx/jmx-scandir/src/com/sun/jmx/examples
536	./Contents/Home/sample/jmx/jmx-scandir/src/com/sun/jmx
536	./Contents/Home/sample/jmx/jmx-scandir/src/com/sun
536	./Contents/Home/sample/jmx/jmx-scandir/src/com
48	./Contents/Home/sample/jmx/jmx-scandir/src/etc
584	./Contents/Home/sample/jmx/jmx-scandir/src
8	./Contents/Home/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config
120	./Contents/Home/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir
120	./Contents/Home/sample/jmx/jmx-scandir/test/com/sun/jmx/examples
120	./Contents/Home/sample/jmx/jmx-scandir/test/com/sun/jmx
120	./Contents/Home/sample/jmx/jmx-scandir/test/com/sun
120	./Contents/Home/sample/jmx/jmx-scandir/test/com
120	./Contents/Home/sample/jmx/jmx-scandir/test
1824	./Contents/Home/sample/jmx/jmx-scandir
1824	./Contents/Home/sample/jmx
8	./Contents/Home/sample/nbproject
80	./Contents/Home/sample/nio/chatserver
128	./Contents/Home/sample/nio/file
40	./Contents/Home/sample/nio/multicast
304	./Contents/Home/sample/nio/server
552	./Contents/Home/sample/nio
48	./Contents/Home/sample/scripting/scriptpad/nbproject
8	./Contents/Home/sample/scripting/scriptpad/src/com/sun/sample/scriptpad
8	./Contents/Home/sample/scripting/scriptpad/src/com/sun/sample
8	./Contents/Home/sample/scripting/scriptpad/src/com/sun
8	./Contents/Home/sample/scripting/scriptpad/src/com
8	./Contents/Home/sample/scripting/scriptpad/src/META-INF
120	./Contents/Home/sample/scripting/scriptpad/src/resources
80	./Contents/Home/sample/scripting/scriptpad/src/scripts
216	./Contents/Home/sample/scripting/scriptpad/src
296	./Contents/Home/sample/scripting/scriptpad
296	./Contents/Home/sample/scripting
2952	./Contents/Home/sample
318760	./Contents/Home
8	./Contents/MacOS
318776	./Contents
319264	.


ls -l Contents/
total 8
drwxr-xr-x  14 henri  wheel   476 20 sep 14:44 Home
-rw-r--r--   1 henri  staff  1599 20 sep 14:44 Info.plist
drwxr-xr-x   3 henri  wheel   102 20 sep 14:43 MacOS

ls -l Contents/Home/
total 44368
-r--r--r--   1 henri  staff      1503 20 sep 14:43 ASSEMBLY_EXCEPTION
-r--r--r--   1 henri  staff     19263 20 sep 14:43 LICENSE
-r--r--r--   1 henri  staff    189593 20 sep 14:44 THIRD_PARTY_README
drwxr-xr-x  40 henri  wheel      1360 20 sep 14:43 bin
drwxr-xr-x  11 henri  wheel       374 20 sep 14:43 demo
drwxr-xr-x   9 henri  wheel       306 20 sep 14:43 include
drwxr-xr-x   7 henri  wheel       238 20 sep 14:43 jre
drwxr-xr-x   9 henri  wheel       306 20 sep 14:43 lib
drwxr-xr-x   5 henri  wheel       170 20 sep 14:43 man
-rw-r--r--   1 henri  staff       215 20 sep 14:43 release
drwxr-xr-x   9 henri  wheel       306 20 sep 14:43 sample
-rw-r--r--   1 henri  staff  22493588 20 sep 14:44 src.zip

ls -l Contents/MacOS/
total 8
lrwxr-xr-x  1 henri  wheel  32 20 sep 14:44 libjli.dylib ->
../Home/jre/lib/jli/libjli.dylib


cat Contents/Info.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>CFBundleDevelopmentRegion</key>
        <string>English</string>
        <key>CFBundleExecutable</key>
        <string>libjli.dylib</string>
        <key>CFBundleGetInfoString</key>
        <string>OpenJDK (1.8.0)</string>
        <key>CFBundleIdentifier</key>
        <string>net.java.openjdk.jdk</string>
        <key>CFBundleInfoDictionaryVersion</key>
        <string>7.0</string>
        <key>CFBundleName</key>
        <string>OpenJDK 8</string>
        <key>CFBundlePackageType</key>
        <string>BNDL</string>
        <key>CFBundleShortVersionString</key>
        <string>1.0</string>
        <key>CFBundleSignature</key>
        <string>????</string>
        <key>CFBundleVersion</key>
        <string>1.8.0-b56-20120920</string>
        <key>JavaVM</key>
        <dict>
                <key>JVMCapabilities</key>
                <array>
                        <string>CommandLine</string>
                </array>
                <key>JVMMinimumFrameworkVersion</key>
                <string>13.2.9</string>
                <key>JVMMinimumSystemVersion</key>
                <string>10.6.0</string>
                <key>JVMPlatformVersion</key>
                <string>1.8</string>
                <key>JVMVendor</key>
                <string>openjdk-osx-build project</string>
                <key>JVMVersion</key>
                <string>1.8.0-b56-20120920</string>
        </dict>
</dict>
</plist>

PS, this Info.plist is for openjdk-osx-build JDK8 version, but here the idea



More information about the build-infra-dev mailing list