What is the Build Process for Codes inside jdk/src/macosx/native/jobjc
erik.joelsson at oracle.com
Thu Apr 18 08:46:17 UTC 2013
These sources are indeed treated separately. I don't actually know why,
but they were in the old build. (There the native was compiled as an
XCode project and the java code with Ant). When converting to the new
build, we strived to keep differences in build output to a minimum. This
means that the library libJObjC is built as both 32 and 64 bit and
packaged as a universal binary. The java source for this is compiled
with source/target 1.5 for the same reason. Now that equality with the
old build is no longer a requirement, I would welcome the removal of
this and moving the source to more standard locations.
To see how it's done, look in jdk/makefiles/CompileNativeLibraries.gmk
and CompileJavaClasses.gmk and search for jobjc.
On 2013-04-18 02:50, Dan Xu wrote:
> Hi David,
> Under src/macosx/native/jobjc folder, it contains not only native *.m
> source files, but also *.java files. If you check the build results in
> build/macosx-x86_64-normal-server-release/jdk folder, it contains some
> build results specific for jobjc, say gensrc_jobjc/,
> gensrc_headers_jobjc/, jobjc_classes/, jobjc_classes_headers/.
> So it must have some extra build steps to generate those jobjc
> results. And I wonder what they are and why they are special and not
> merged into the regular native compilation and java compilation
> processes. Thanks!
> On 04/17/2013 05:30 PM, David Holmes wrote:
>> Hi Dan,
>> I don't quite understand the question but all native code building is
>> handled via jdk/makefiles/CompileNativeLibraries.gmk which in turn
>> utilizes the set up from <top>/common/makefiles/NativeCompilation.gmk
>> On 18/04/2013 9:51 AM, Dan Xu wrote:
>>> Adding core-libs-dev
>>> On 04/17/2013 04:47 PM, Dan Xu wrote:
>>>> As for the sourcecodes for mac platform, it has a special place
>>>> holding native and java codes for jdk, jdk/src/macosx/native/jobjc. I
>>>> wonder how those codes are builtand whether its compilation process
>>>> has any special handling. Thanks!
More information about the core-libs-dev