diff options
-rw-r--r-- | PATCHES | 1 | ||||
-rw-r--r-- | src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java | 5 | ||||
-rw-r--r-- | src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java | 2 |
3 files changed, 5 insertions, 3 deletions
@@ -1,6 +1,7 @@ *** Changes marked with FREEHEP. cpptasks-20051015-patched-1.2-SNAPSHOT - added -shared-libgcc/-static-libgcc for linking gcc and c++. +- added -dynamic as a valid option to GccLinker cpptasks-20051015-patched-1.1 - [CCTask] added method to link with CPP diff --git a/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java b/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java index a32e28a..638e06d 100644 --- a/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java +++ b/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java @@ -125,8 +125,9 @@ public abstract class AbstractLdLinker extends CommandLineLinker { previousLibraryType = set.getType(); } } else { - if (set.getType() == null || - !"framework".equals(set.getType().getValue()) || + // FREEHEP FIXME, recheck this, works on MacOSX + if (set.getType() == null && + !"framework".equals(set.getType().getValue()) && !isDarwin()) { endargs.addElement("-Bdynamic"); previousLibraryType = set.getType(); diff --git a/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java b/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java index be85124..4c82743 100644 --- a/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java +++ b/src/net/sf/antcontrib/cpptasks/gcc/GccLinker.java @@ -33,7 +33,7 @@ public class GccLinker extends AbstractLdLinker { private static final String[] libtoolObjFiles = new String[]{".fo", ".a", ".lib", ".dll", ".so", ".sl"}; private static String[] linkerOptions = new String[]{"-bundle", - "-dynamiclib", "-nostartfiles", "-nostdlib", "-prebind", "-s", + "-dynamic", "-dynamiclib", "-nostartfiles", "-nostdlib", "-prebind", "-s", "-static", "-shared", "-symbolic", "-Xlinker", "--export-all-symbols", "-static-libgcc",}; private static final GccLinker dllLinker = new GccLinker("gcc", objFiles, |