diff --git a/bindings/java/hyperic_jni/lib/README b/bindings/java/hyperic_jni/lib/README
new file mode 100644
index 00000000..a6a660f4
--- /dev/null
+++ b/bindings/java/hyperic_jni/lib/README
@@ -0,0 +1 @@
+cpptasks.jar from http://github.com/dougm/ant-contrib-cpptasks
diff --git a/bindings/java/hyperic_jni/patches/README b/bindings/java/hyperic_jni/patches/README
deleted file mode 100644
index aa818f87..00000000
--- a/bindings/java/hyperic_jni/patches/README
+++ /dev/null
@@ -1,22 +0,0 @@
-
-cpptasks.pat - provides support for HP cc and AIX xlc_r
-the classes listed below are copy-n-pastes from existing cpptasks
-classes, simply changed program names, flags, etc. the HP classes
-were submitted as a patch to ant-contrib-developers on 10/09/2002,
-to which there was no response, so have not bothered to submit the aix
-patch.
-SubsystemEnum patch is for the osf1 javac (aka tru64).
-was throwing IllegalAccessError. why clone a final String[] anyhow??
-CUtil patch is for jdk 1.3 (StringBuffer.indexOf is 1.4+)
-GccLinker patch adds -arch to known flags for building universal binaries
-
-added | derived from
---------------------------
-HPCompiler | aCCCompiler
-HPLinker | aCCLinker
-XlcCompiler | VisualAgeCCompiler
-XlcLinker | VisualAgeLinker
-
-cpptasks.pat applies to:
-cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ant-contrib \
-co -D"2006/04/28 15:00:00" cpptasks
diff --git a/bindings/java/hyperic_jni/patches/cpptasks.pat b/bindings/java/hyperic_jni/patches/cpptasks.pat
deleted file mode 100644
index dfd5ed71..00000000
--- a/bindings/java/hyperic_jni/patches/cpptasks.pat
+++ /dev/null
@@ -1,696 +0,0 @@
-Index: src/net/sf/antcontrib/cpptasks/CUtil.java
-===================================================================
-RCS file: /cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/CUtil.java,v
-retrieving revision 1.28
-diff -u -r1.28 CUtil.java
---- src/net/sf/antcontrib/cpptasks/CUtil.java 17 Mar 2006 16:38:12 -0000 1.28
-+++ src/net/sf/antcontrib/cpptasks/CUtil.java 29 Apr 2006 02:35:28 -0000
-@@ -438,19 +438,19 @@
- StringBuffer buf = new StringBuffer (attrValue);
- int quotePos;
-
-- for (quotePos = -1; (quotePos = buf.indexOf("\"", quotePos + 1)) >= 0;) {
-+ for (quotePos = -1; (quotePos = buf.toString().indexOf("\"", quotePos + 1)) >= 0;) {
- buf.deleteCharAt(quotePos);
- buf.insert (quotePos, """);
- quotePos += 5;
- }
-
-- for (quotePos = -1; (quotePos = buf.indexOf("<", quotePos + 1)) >= 0;) {
-+ for (quotePos = -1; (quotePos = buf.toString().indexOf("<", quotePos + 1)) >= 0;) {
- buf.deleteCharAt(quotePos);
- buf.insert (quotePos, "<");
- quotePos += 3;
- }
-
-- for (quotePos = -1; (quotePos = buf.indexOf(">", quotePos + 1)) >= 0;) {
-+ for (quotePos = -1; (quotePos = buf.toString().indexOf(">", quotePos + 1)) >= 0;) {
- buf.deleteCharAt(quotePos);
- buf.insert (quotePos, ">");
- quotePos += 3;
-Index: src/net/sf/antcontrib/cpptasks/CompilerEnum.java
-===================================================================
-RCS file: /cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/CompilerEnum.java,v
-retrieving revision 1.18
-diff -u -r1.18 CompilerEnum.java
---- src/net/sf/antcontrib/cpptasks/CompilerEnum.java 8 Jul 2004 22:30:53 -0000 1.18
-+++ src/net/sf/antcontrib/cpptasks/CompilerEnum.java 29 Apr 2006 02:35:28 -0000
-@@ -25,7 +25,9 @@
- import net.sf.antcontrib.cpptasks.devstudio.DevStudioResourceCompiler;
- import net.sf.antcontrib.cpptasks.gcc.GccCCompiler;
- import net.sf.antcontrib.cpptasks.hp.aCCCompiler;
-+import net.sf.antcontrib.cpptasks.hp.HPCompiler;
- import net.sf.antcontrib.cpptasks.ibm.VisualAgeCCompiler;
-+import net.sf.antcontrib.cpptasks.ibm.XlcCompiler;
- import net.sf.antcontrib.cpptasks.intel.IntelLinux32CCompiler;
- import net.sf.antcontrib.cpptasks.intel.IntelLinux64CCompiler;
- import net.sf.antcontrib.cpptasks.intel.IntelWin32CCompiler;
-@@ -205,6 +207,8 @@
- new ProcessorEnumValue("armcpp", ADSCCompiler.getArmCpp()),
- new ProcessorEnumValue("tcc", ADSCCompiler.getThumbCC()),
- new ProcessorEnumValue("tcpp", ADSCCompiler.getThumbCpp()),
-+ new ProcessorEnumValue("hp", HPCompiler.getInstance()),
-+ new ProcessorEnumValue("xlc_r", XlcCompiler.getInstance()),
- // GCC Cross Compilers
- new ProcessorEnumValue(
- "sparc-sun-solaris2-gcc",
-Index: src/net/sf/antcontrib/cpptasks/LinkerEnum.java
-===================================================================
-RCS file: /cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/LinkerEnum.java,v
-retrieving revision 1.16
-diff -u -r1.16 LinkerEnum.java
---- src/net/sf/antcontrib/cpptasks/LinkerEnum.java 8 Jul 2004 22:30:53 -0000 1.16
-+++ src/net/sf/antcontrib/cpptasks/LinkerEnum.java 29 Apr 2006 02:35:28 -0000
-@@ -25,7 +25,9 @@
- import net.sf.antcontrib.cpptasks.gcc.GppLinker;
- import net.sf.antcontrib.cpptasks.gcc.LdLinker;
- import net.sf.antcontrib.cpptasks.hp.aCCLinker;
-+import net.sf.antcontrib.cpptasks.hp.HPLinker;
- import net.sf.antcontrib.cpptasks.ibm.VisualAgeLinker;
-+import net.sf.antcontrib.cpptasks.ibm.XlcLinker;
- import net.sf.antcontrib.cpptasks.intel.IntelLinux32Linker;
- import net.sf.antcontrib.cpptasks.intel.IntelLinux64Linker;
- import net.sf.antcontrib.cpptasks.intel.IntelWin32Linker;
-@@ -72,6 +74,8 @@
- new ProcessorEnumValue("armcpp", ADSLinker.getInstance()),
- new ProcessorEnumValue("tcc", ADSLinker.getInstance()),
- new ProcessorEnumValue("tcpp", ADSLinker.getInstance()),
-+ new ProcessorEnumValue("hp", HPLinker.getInstance()),
-+ new ProcessorEnumValue("xlc_r", XlcLinker.getInstance()),
- // gcc cross compilers
- new ProcessorEnumValue(
- "sparc-sun-solaris2-gcc",
-Index: src/net/sf/antcontrib/cpptasks/SubsystemEnum.java
-===================================================================
-RCS file: /cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/SubsystemEnum.java,v
-retrieving revision 1.7
-diff -u -r1.7 SubsystemEnum.java
---- src/net/sf/antcontrib/cpptasks/SubsystemEnum.java 28 Feb 2004 20:04:02 -0000 1.7
-+++ src/net/sf/antcontrib/cpptasks/SubsystemEnum.java 29 Apr 2006 02:35:28 -0000
-@@ -29,6 +29,6 @@
- setValue("gui");
- }
- public String[] getValues() {
-- return (String[]) values.clone();
-+ return values;
- }
- }
-Index: src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java
-===================================================================
-RCS file:
-/cvsroot/ant-contrib/cpptasks/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java,v
-retrieving revision 1.32
-diff -u -r1.32 GccLinker.java
---- src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java 28 Feb 2004
-20:01:15 -0000 1.32
-+++ src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java 29 Apr 2006
-17:27:50 -0000
-@@ -35,7 +35,7 @@
- private static String[] linkerOptions = new String[]{"-bundle",
- "-dynamiclib", "-nostartfiles", "-nostdlib", "-prebind",
- "-s",
- "-static", "-shared", "-symbolic", "-Xlinker",
-- "--export-all-symbols", "-static-libgcc",};
-+ "--export-all-symbols", "-static-libgcc", "-arch"};
- private static final GccLinker dllLinker = new GccLinker("gcc",
- objFiles,
- discardFiles, "lib", ".so", false, new GccLinker("gcc",
- objFiles,
- discardFiles, "lib", ".so", true, null));
-
---- /dev/null 2006-04-28 19:36:02.000000000 -0700
-+++ src/net/sf/antcontrib/cpptasks/hp/HPCompiler.java 2006-04-28 17:08:22.000000000 -0700
-@@ -0,0 +1,161 @@
-+/*
-+ * The Apache Software License, Version 1.1
-+ *
-+ * Copyright (c) 2001 The Ant-Contrib project. All rights
-+ * reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ *
-+ * 1. Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ *
-+ * 2. Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in
-+ * the documentation and/or other materials provided with the
-+ * distribution.
-+ *
-+ * 3. The end-user documentation included with the redistribution, if
-+ * any, must include the following acknowlegement:
-+ * "This product includes software developed by the
-+ * Apache Software Foundation (http://www.apache.org/)."
-+ * Alternately, this acknowlegement may appear in the software itself,
-+ * if and wherever such third-party acknowlegements normally appear.
-+ *
-+ * 4. The names "The Jakarta Project", "Ant", and "Apache Software
-+ * Foundation" must not be used to endorse or promote products derived
-+ * from this software without prior written permission. For written
-+ * permission, please contact apache@apache.org.
-+ *
-+ * 5. Products derived from this software may not be called "Apache"
-+ * nor may "Apache" appear in their names without prior written
-+ * permission of the Apache Group.
-+ *
-+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-+ * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
-+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+ * SUCH DAMAGE.
-+ * ====================================================================
-+ *
-+ * This software consists of voluntary contributions made by many
-+ * individuals on behalf of the Apache Software Foundation. For more
-+ * information on the Apache Software Foundation, please see
-+ * .
-+ */
-+package net.sf.antcontrib.cpptasks.hp;
-+
-+import java.io.File;
-+import java.util.Vector;
-+
-+import net.sf.antcontrib.cpptasks.CUtil;
-+import net.sf.antcontrib.cpptasks.compiler.LinkType;
-+import net.sf.antcontrib.cpptasks.compiler.Linker;
-+import net.sf.antcontrib.cpptasks.gcc.GccCompatibleCCompiler;
-+import org.apache.tools.ant.types.Environment;
-+
-+/**
-+ * Adapter for the HP compiler
-+ *
-+ * @author Curt Arnold
-+ */
-+public final class HPCompiler extends GccCompatibleCCompiler {
-+
-+ private String identifier;
-+ private File[] includePath;
-+ private static final HPCompiler instance =
-+ new HPCompiler("cc", false, null);
-+
-+ /**
-+ * Private constructor. Use GccCCompiler.getInstance() to get
-+ * singleton instance of this class.
-+ */
-+ private HPCompiler(
-+ String command,
-+ boolean newEnvironment,
-+ Environment env) {
-+ super(command, "-help", false, null, newEnvironment, env);
-+ }
-+
-+ public int getMaximumCommandLength() {
-+ return Integer.MAX_VALUE;
-+ }
-+
-+ /**
-+ * Gets singleton instance of this class
-+ */
-+ public static HPCompiler getInstance() {
-+ return instance;
-+ }
-+
-+ public File[] getEnvironmentIncludePath() {
-+ if (includePath == null) {
-+ File ccLoc = CUtil.getExecutableLocation("cc");
-+ if (ccLoc != null) {
-+ File compilerIncludeDir =
-+ new File(new File(ccLoc, "../include").getAbsolutePath());
-+ if (compilerIncludeDir.exists()) {
-+ includePath = new File[2];
-+ includePath[0] = compilerIncludeDir;
-+ }
-+ }
-+ if (includePath == null) {
-+ includePath = new File[1];
-+ }
-+ includePath[includePath.length - 1] = new File("/usr/include");
-+ }
-+ return includePath;
-+ }
-+
-+ public void addImpliedArgs(
-+ Vector args,
-+ boolean debug,
-+ boolean multithreaded,
-+ boolean exceptions,
-+ LinkType linkType) {
-+ args.addElement("-c");
-+ if (debug) {
-+ args.addElement("-g");
-+ }
-+ /*
-+ if (multithreaded) {
-+ args.addElement("-mt");
-+ }
-+ */
-+ if (linkType.isSharedLibrary()) {
-+ args.addElement("+z");
-+ }
-+ }
-+
-+ public void addWarningSwitch(Vector args, int level) {
-+ switch (level) {
-+ case 0 :
-+ args.addElement("-w");
-+ break;
-+
-+ case 1 :
-+ case 2 :
-+ args.addElement("+w");
-+ break;
-+ /*
-+ case 3:
-+ case 4:
-+ case 5:
-+ args.addElement("+w2");
-+ break;
-+ */
-+ }
-+ }
-+
-+ public Linker getLinker(LinkType linkType) {
-+ return HPLinker.getInstance().getLinker(linkType);
-+ }
-+}
---- /dev/null 2006-04-28 19:36:02.000000000 -0700
-+++ src/net/sf/antcontrib/cpptasks/hp/HPLinker.java 2006-04-28 17:08:22.000000000 -0700
-@@ -0,0 +1,153 @@
-+/*
-+ * The Apache Software License, Version 1.1
-+ *
-+ * Copyright (c) 2001 The Ant-Contrib project. All rights
-+ * reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ *
-+ * 1. Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ *
-+ * 2. Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in
-+ * the documentation and/or other materials provided with the
-+ * distribution.
-+ *
-+ * 3. The end-user documentation included with the redistribution, if
-+ * any, must include the following acknowlegement:
-+ * "This product includes software developed by the
-+ * Apache Software Foundation (http://www.apache.org/)."
-+ * Alternately, this acknowlegement may appear in the software itself,
-+ * if and wherever such third-party acknowlegements normally appear.
-+ *
-+ * 4. The names "The Jakarta Project", "Ant", and "Apache Software
-+ * Foundation" must not be used to endorse or promote products derived
-+ * from this software without prior written permission. For written
-+ * permission, please contact apache@apache.org.
-+ *
-+ * 5. Products derived from this software may not be called "Apache"
-+ * nor may "Apache" appear in their names without prior written
-+ * permission of the Apache Group.
-+ *
-+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-+ * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
-+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+ * SUCH DAMAGE.
-+ * ====================================================================
-+ *
-+ * This software consists of voluntary contributions made by many
-+ * individuals on behalf of the Apache Software Foundation. For more
-+ * information on the Apache Software Foundation, please see
-+ * .
-+ */
-+package net.sf.antcontrib.cpptasks.hp;
-+
-+import java.io.File;
-+import java.util.Vector;
-+
-+import net.sf.antcontrib.cpptasks.CUtil;
-+import net.sf.antcontrib.cpptasks.compiler.LinkType;
-+import net.sf.antcontrib.cpptasks.compiler.Linker;
-+import net.sf.antcontrib.cpptasks.gcc.AbstractLdLinker;
-+
-+/**
-+ * Adapter for HP linker
-+ *
-+ * @author Curt Arnold
-+ */
-+public final class HPLinker extends AbstractLdLinker
-+{
-+ private static final String[] objFiles = new String[]
-+ { ".o", ".a", ".lib", ".dll", ".so", ".sl" };
-+ private static final String[] discardFiles = new String[0];
-+
-+ private static final HPLinker instance =
-+ new HPLinker("ld", objFiles, discardFiles, "", "");
-+ private static final HPLinker dllLinker =
-+ new HPLinker("ld", objFiles, discardFiles, "lib", ".sl");
-+ private static final HPLinker arLinker =
-+ new HPLinker("ld", objFiles, discardFiles, "", ".a");
-+
-+ private File[] libDirs;
-+
-+ private HPLinker(String command, String[] extensions,
-+ String[] ignoredExtensions, String outputPrefix,
-+ String outputSuffix) {
-+ super(command, "-help", extensions, ignoredExtensions,
-+ outputPrefix, outputSuffix,false,null);
-+ }
-+
-+ public static HPLinker getInstance() {
-+ return instance;
-+ }
-+
-+ /**
-+ * Returns library path.
-+ *
-+ */
-+ public File[] getLibraryPath() {
-+ if(libDirs == null) {
-+ File CCloc = CUtil.getExecutableLocation("ld");
-+ if(CCloc != null) {
-+ File compilerLib = new File(
-+ new File(CCloc, "../lib").getAbsolutePath());
-+ if (compilerLib.exists()) {
-+ libDirs = new File[2];
-+ libDirs[0] = compilerLib;
-+ }
-+ }
-+ if (libDirs == null) {
-+ libDirs = new File[1];
-+ }
-+ }
-+ libDirs[libDirs.length-1] = new File("/usr/lib");
-+ return libDirs;
-+ }
-+
-+ public void addImpliedArgs(boolean debug, LinkType linkType, Vector args) {
-+/* if(linkType.isStaticRuntime()) {
-+ args.addElement("-static");
-+ }
-+*/
-+ if(linkType.isSharedLibrary()) {
-+ args.addElement("-b");
-+ }
-+/*
-+ if (linkType.isStaticLibrary()) {
-+ args.addElement("-Wl,-noshared");
-+ }
-+*/
-+ }
-+
-+
-+ public Linker getLinker(LinkType type) {
-+ if(type.isStaticLibrary()) {
-+ return arLinker;
-+ }
-+ if(type.isSharedLibrary()) {
-+ return dllLinker;
-+ }
-+ return instance;
-+ }
-+
-+ public void addIncremental(boolean incremental, Vector args) {
-+ /*
-+ if (incremental) {
-+ args.addElement("-xidlon");
-+ } else {
-+ args.addElement("-xidloff");
-+ }
-+ */
-+ }
-+}
---- /dev/null 2006-04-28 19:36:02.000000000 -0700
-+++ src/net/sf/antcontrib/cpptasks/ibm/XlcCompiler.java 2006-04-28 17:08:22.000000000 -0700
-@@ -0,0 +1,138 @@
-+/*
-+ * The Apache Software License, Version 1.1
-+ *
-+ * Copyright (c) 2001 The Ant-Contrib project. All rights
-+ * reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ *
-+ * 1. Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ *
-+ * 2. Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in
-+ * the documentation and/or other materials provided with the
-+ * distribution.
-+ *
-+ * 3. The end-user documentation included with the redistribution, if
-+ * any, must include the following acknowlegement:
-+ * "This product includes software developed by the
-+ * Ant-Contrib project (http://sourceforge.net/projects/ant-contrib)."
-+ * Alternately, this acknowlegement may appear in the software itself,
-+ * if and wherever such third-party acknowlegements normally appear.
-+ *
-+ * 4. The names "Ant-Contrib"
-+ * must not be used to endorse or promote products derived
-+ * from this software without prior written permission. For written
-+ * permission, please contact apache@apache.org.
-+ *
-+ * 5. Products derived from this software may not be called "Ant-Contrib"
-+ * nor may "Ant-Contrib" appear in their names without prior written
-+ * permission of the Ant-Contrib project.
-+ *
-+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-+ * DISCLAIMED. IN NO EVENT SHALL THE ANT-CONTRIB PROJECT OR
-+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+ * SUCH DAMAGE.
-+ * ====================================================================
-+ */
-+package net.sf.antcontrib.cpptasks.ibm;
-+
-+import java.io.File;
-+import java.util.Vector;
-+
-+import net.sf.antcontrib.cpptasks.compiler.LinkType;
-+import net.sf.antcontrib.cpptasks.compiler.Linker;
-+import net.sf.antcontrib.cpptasks.gcc.GccCompatibleCCompiler;
-+import org.apache.tools.ant.types.Environment;
-+
-+
-+/**
-+ * Adapter for the IBM(r) Visual Age(tm) C++ compiler for AIX(tm)
-+ *
-+ * @author Curt Arnold
-+ */
-+public final class XlcCompiler extends GccCompatibleCCompiler {
-+ private String identifier;
-+ private File[] includePath;
-+ private static final XlcCompiler instance =
-+ new XlcCompiler("xlc_r", false, null);
-+
-+ /**
-+ * Private constructor. Use getInstance() to get
-+ * singleton instance of this class.
-+ */
-+ private XlcCompiler(String command, boolean newEnvironment, Environment env) {
-+ super(command, "-help", false, null, newEnvironment, env);
-+ }
-+
-+ public int getMaximumCommandLength() {
-+ return Integer.MAX_VALUE;
-+ }
-+
-+ /**
-+ * Gets singleton instance of this class
-+ */
-+ public static XlcCompiler getInstance() {
-+ return instance;
-+ }
-+
-+ public void addImpliedArgs(
-+ Vector args,
-+ boolean debug,
-+ boolean multithreaded,
-+ boolean exceptions,
-+ LinkType linkType) {
-+ args.addElement("-c");
-+ if (debug) {
-+ args.addElement("-g");
-+ }
-+ if (linkType.isSharedLibrary()) {
-+ args.addElement("-fpic");
-+ args.addElement("-qmkshrobj");
-+
-+ }
-+ }
-+
-+ public void addWarningSwitch(Vector args, int level) {
-+ switch (level) {
-+ case 0 :
-+ args.addElement("-w");
-+ break;
-+
-+ case 1 :
-+ args.addElement("-qflag=s:s");
-+ break;
-+
-+ case 2 :
-+ args.addElement("-qflag=e:e");
-+ break;
-+
-+ case 3 :
-+ args.addElement("-qflag=w:w");
-+ break;
-+
-+ case 4 :
-+ args.addElement("-qflag=i:i");
-+ break;
-+
-+ case 5 :
-+ args.addElement("-qhalt=w:w");
-+ break;
-+ }
-+ }
-+
-+ public Linker getLinker(LinkType linkType) {
-+ return VisualAgeLinker.getInstance().getLinker(linkType);
-+ }
-+}
---- /dev/null 2006-04-28 19:36:02.000000000 -0700
-+++ src/net/sf/antcontrib/cpptasks/ibm/XlcLinker.java 2006-04-28 17:08:22.000000000 -0700
-@@ -0,0 +1,112 @@
-+/*
-+ * The Apache Software License, Version 1.1
-+ *
-+ * Copyright (c) 2001 The Ant-Contrib project. All rights
-+ * reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ *
-+ * 1. Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ *
-+ * 2. Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in
-+ * the documentation and/or other materials provided with the
-+ * distribution.
-+ *
-+ * 3. The end-user documentation included with the redistribution, if
-+ * any, must include the following acknowlegement:
-+ * "This product includes software developed by the
-+ * Ant-Contrib project (http://sourceforge.net/projects/ant-contrib)."
-+ * Alternately, this acknowlegement may appear in the software itself,
-+ * if and wherever such third-party acknowlegements normally appear.
-+ *
-+ * 4. The names "Ant-Contrib"
-+ * must not be used to endorse or promote products derived
-+ * from this software without prior written permission. For written
-+ * permission, please contact apache@apache.org.
-+ *
-+ * 5. Products derived from this software may not be called "Ant-Contrib"
-+ * nor may "Ant-Contrib" appear in their names without prior written
-+ * permission of the Ant-Contrib project.
-+ *
-+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-+ * DISCLAIMED. IN NO EVENT SHALL THE ANT-CONTRIB PROJECT OR
-+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+ * SUCH DAMAGE.
-+ * ====================================================================
-+ */
-+package net.sf.antcontrib.cpptasks.ibm;
-+
-+import java.util.Vector;
-+
-+import net.sf.antcontrib.cpptasks.compiler.LinkType;
-+import net.sf.antcontrib.cpptasks.compiler.Linker;
-+import net.sf.antcontrib.cpptasks.gcc.AbstractLdLinker;
-+import net.sf.antcontrib.cpptasks.gcc.GccLibrarian;
-+
-+/**
-+ * Adapter for IBM(r) Visual Age(tm) Linker for AIX(tm)
-+ *
-+ * @author Curt Arnold
-+ */
-+public final class XlcLinker extends AbstractLdLinker
-+{
-+ private static final String[] objFiles = new String[]
-+ { ".o", ".a", ".lib",".dll", ".so", ".sl"};
-+ private static final String[] discardFiles = new String[]
-+ { };
-+
-+ private static final XlcLinker instance =
-+ new XlcLinker("ld", objFiles, discardFiles, "", "");
-+ private static final XlcLinker dllLinker =
-+ new XlcLinker("ld", objFiles, discardFiles, "lib", ".so");
-+
-+ private XlcLinker(String command, String[] extensions,
-+ String[] ignoredExtensions, String outputPrefix,
-+ String outputSuffix) {
-+ //
-+ // just guessing that -? might display something useful
-+ //
-+ super(command, "-?", extensions, ignoredExtensions,
-+ outputPrefix, outputSuffix,false,null);
-+ }
-+
-+ public static XlcLinker getInstance() {
-+ return instance;
-+ }
-+
-+ public void addImpliedArgs(boolean debug, LinkType linkType, Vector args) {
-+ if(debug) {
-+ //args.addElement("-g");
-+ }
-+ if(linkType.isSharedLibrary()) {
-+ args.addElement("-bdynamic");
-+ args.addElement("-G");
-+ args.addElement("-bnoentry");
-+ args.addElement("-bexpall");
-+ args.addElement("-lc_r");
-+ }
-+ }
-+
-+
-+ public Linker getLinker(LinkType type) {
-+ if(type.isStaticLibrary()) {
-+ return GccLibrarian.getInstance();
-+ }
-+ if(type.isSharedLibrary()) {
-+ return dllLinker;
-+ }
-+ return instance;
-+ }
-+}