diff --git a/jdk/src/macosx/native/jobjc/build.xml b/jdk/src/macosx/native/jobjc/build.xml
index 46e726c6278..19e29ad51af 100644
--- a/jdk/src/macosx/native/jobjc/build.xml
+++ b/jdk/src/macosx/native/jobjc/build.xml
@@ -140,8 +140,16 @@
-
+ includeantruntime="false">
+
+
+
+
+
+
+
+
+
diff --git a/jdk/src/macosx/native/jobjc/src/core/PrimitiveCoder.hs b/jdk/src/macosx/native/jobjc/src/core/PrimitiveCoder.hs
index 544998ee859..2759733ec6f 100644
--- a/jdk/src/macosx/native/jobjc/src/core/PrimitiveCoder.hs
+++ b/jdk/src/macosx/native/jobjc/src/core/PrimitiveCoder.hs
@@ -2,7 +2,7 @@
{-
/*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011,2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -196,6 +196,8 @@ sizeofRet nt =
c2java ntype =
unlines [
"// native " ++ ntypeS ++ " -> java " ++ jprimS,
+ "/* No native methods here, but the constants are needed in the supporting JNI code */",
+ "@GenerateNativeHeader",
"public static final class " ++ className ++ " extends PrimitiveCoder<" ++ jclassS ++ ">{",
"\tpublic static final " ++ className ++ " INST = new " ++ className ++ "();",
"\tpublic " ++ className ++ "(){ super("++ffitypeVal ntype++", \"" ++ [encoding ntype] ++ "\", "++jclassS++".class, "++jprimS++".class); }",
@@ -246,10 +248,13 @@ main = do
putStrLn "package com.apple.jobjc;"
putStrLn "import com.apple.jobjc.JObjCRuntime.Width;"
+ putStrLn "import javax.tools.annotation.GenerateNativeHeader;"
putStrLn "// Auto generated by PrimitiveCoder.hs"
putStrLn "// Do not edit by hand."
+ putStrLn "/* No native methods here, but the constants are needed in the supporting JNI code */"
+ putStrLn "@GenerateNativeHeader"
putStrLn "public abstract class PrimitiveCoder extends Coder{"
putStrLn "\tpublic PrimitiveCoder(int ffiTypeCode, String objCEncoding, Class jclass, Class jprim){"
diff --git a/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CFType.java b/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CFType.java
index aeeca30d29e..835b3793538 100644
--- a/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CFType.java
+++ b/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/CFType.java
@@ -24,6 +24,10 @@
*/
package com.apple.jobjc;
+import javax.tools.annotation.GenerateNativeHeader;
+
+/* No native methods here, but the constants are needed in the supporting JNI code */
+@GenerateNativeHeader
public class CFType extends Pointer {
protected CFType(long ptr) { super(ptr); }
protected CFType(Pointer> ptr) { super(ptr.ptr); }
diff --git a/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Coder.java b/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Coder.java
index a6a714f3933..f1bc68283ac 100644
--- a/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Coder.java
+++ b/jdk/src/macosx/native/jobjc/src/core/java/com/apple/jobjc/Coder.java
@@ -35,6 +35,7 @@ import com.apple.jobjc.PrimitiveCoder.SCharCoder;
import com.apple.jobjc.PrimitiveCoder.SIntCoder;
import com.apple.jobjc.PrimitiveCoder.SLongLongCoder;
import com.apple.jobjc.PrimitiveCoder.SShortCoder;
+import javax.tools.annotation.GenerateNativeHeader;
public abstract class Coder {
private static native long getNativeFFITypePtrForCode(final int code);
@@ -142,6 +143,8 @@ public abstract class Coder {
//
+ /* No native methods here, but the constants are needed in the supporting JNI code */
+ @GenerateNativeHeader
public static final class VoidCoder extends Coder