diff options
-rw-r--r-- | PATCHES | 3 | ||||
-rw-r--r-- | src/net/sf/antcontrib/cpptasks/OutputTypeEnum.java | 3 | ||||
-rw-r--r-- | src/net/sf/antcontrib/cpptasks/compiler/LinkType.java | 9 | ||||
-rw-r--r-- | src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java | 4 |
4 files changed, 17 insertions, 2 deletions
@@ -1,5 +1,8 @@ *** Changes marked with FREEHEP.
cpptasks-20051015-patched-1.1-SNAPSHOT
+- [OutputTypeEnum] added jni
+- [compiler.LinkType] add jni as type
+- [gcc.GccLinker] add jni as type and special linker for MacOS X to output jnilib files.
- [gcc.GccCCompiler] added gfortran compiler
- [CompilerEnum] added gfortran compiler
cpptasks-20051015-patched-1.0
diff --git a/src/net/sf/antcontrib/cpptasks/OutputTypeEnum.java b/src/net/sf/antcontrib/cpptasks/OutputTypeEnum.java index 873a99c..471ae82 100644 --- a/src/net/sf/antcontrib/cpptasks/OutputTypeEnum.java +++ b/src/net/sf/antcontrib/cpptasks/OutputTypeEnum.java @@ -42,7 +42,8 @@ public class OutputTypeEnum extends EnumeratedAttribute { return new String[]{"executable", // executable program "plugin", // plugin module "shared", // dynamically linkable module - "static" // convenience library + "static", // convenience library + "jni" // FREEHEP Java Native Interface library }; } } diff --git a/src/net/sf/antcontrib/cpptasks/compiler/LinkType.java b/src/net/sf/antcontrib/cpptasks/compiler/LinkType.java index d769431..31348f2 100644 --- a/src/net/sf/antcontrib/cpptasks/compiler/LinkType.java +++ b/src/net/sf/antcontrib/cpptasks/compiler/LinkType.java @@ -44,6 +44,12 @@ public class LinkType { String value = outputType.getValue(); return value.equals("executable"); } +// FREEHEP + public boolean isJNIModule() { + String value = outputType.getValue(); + return value.equals("jni"); + } + /** * Gets whether the link should produce a plugin module. * @@ -60,7 +66,8 @@ public class LinkType { */ public boolean isSharedLibrary() { String value = outputType.getValue(); - return value.equals("shared") || value.equals("plugin"); +// FREEHEP + return value.equals("shared") || value.equals("plugin") || value.equals("jni"); } /** * Gets whether the link should produce a static library. diff --git a/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java b/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java index c4720c8..227d446 100644 --- a/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java +++ b/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java @@ -191,6 +191,10 @@ public class GccLinker extends AbstractLdLinker { if (type.isStaticLibrary()) { return GccLibrarian.getInstance(); } +// FREEHEP + if (type.isJNIModule()) { + return dllLinker; + } if (type.isPluginModule()) { if (isDarwin()) { return machBundleLinker; |