From 5e2f6d72c482081af1ded500107397c2583df43c Mon Sep 17 00:00:00 2001 From: Mark Donszelmann Date: Mon, 12 Jun 2006 07:04:33 +0000 Subject: Added jni type --- src/net/sf/antcontrib/cpptasks/OutputTypeEnum.java | 3 ++- src/net/sf/antcontrib/cpptasks/compiler/LinkType.java | 9 ++++++++- src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java | 4 ++++ 3 files changed, 14 insertions(+), 2 deletions(-) (limited to 'src/net/sf') 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; -- cgit v1.2.3