summaryrefslogtreecommitdiff
path: root/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java
diff options
context:
space:
mode:
authorMark Donszelmann <Mark.Donszelmann@gmail.com>2007-07-06 19:06:29 +0000
committerMark Donszelmann <Mark.Donszelmann@gmail.com>2007-07-06 19:06:29 +0000
commit2dac20493cf190fb56f04d1fe22f58c30eac1869 (patch)
treeebbcea6f539fbb3a474217c45502632f0c84289a /src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java
parent502ee6ac6df5cd8aa19c2c1f9db87861d763ac1b (diff)
downloadcpptasks-parallel-2dac20493cf190fb56f04d1fe22f58c30eac1869.tar.gz
cpptasks-parallel-2dac20493cf190fb56f04d1fe22f58c30eac1869.tar.bz2
cpptasks-parallel-2dac20493cf190fb56f04d1fe22f58c30eac1869.tar.xz
cpptasks-parallel-2dac20493cf190fb56f04d1fe22f58c30eac1869.zip
Fixed NARPLUGIN-106
Diffstat (limited to 'src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java')
-rw-r--r--src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java26
1 files changed, 14 insertions, 12 deletions
diff --git a/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java b/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java
index 27cbfa5..5b743d3 100644
--- a/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java
+++ b/src/net/sf/antcontrib/cpptasks/gcc/AbstractLdLinker.java
@@ -55,17 +55,18 @@ public abstract class AbstractLdLinker extends CommandLineLinker {
args.addElement("-g");
}
if (isDarwin()) {
- if (linkType.isPluginModule()) {
+ if (linkType.isPluginModule()) {
args.addElement("-bundle");
-// FREEHEP
+// BEGINFREEHEP
} else if (linkType.isJNIModule()) {
args.addElement("-dynamic");
args.addElement("-bundle");
+// ENDFREEHEP
} else {
if (linkType.isSharedLibrary()) {
-// No longer needed for 10.4 and up.
-// args.addElement("-prebind");
- args.addElement("-dynamiclib");
+// FREEHEP no longer needed for 10.4+
+// args.addElement("-prebind");
+ args.addElement("-dynamiclib");
}
}
} else {
@@ -120,14 +121,15 @@ public abstract class AbstractLdLinker extends CommandLineLinker {
//
if (set.getType() != previousLibraryType) {
if (set.getType() != null && "static".equals(set.getType().getValue())) {
- // FREEHEP
- if (!isDarwin()) {
+// BEGINFREEHEP not on MacOS X
+ if (!isDarwin()) {
endargs.addElement("-Bstatic");
previousLibraryType = set.getType();
- }
+ }
+//ENDFREEHEP
} else {
- // FREEHEP FIXME, recheck this, works on MacOSX
- if (set.getType() == null &&
+// FREEHEP not on MacOS X, recheck this!
+ if (set.getType() == null ||
!"framework".equals(set.getType().getValue()) &&
!isDarwin()) {
endargs.addElement("-Bdynamic");
@@ -140,8 +142,8 @@ public abstract class AbstractLdLinker extends CommandLineLinker {
"framework".equals(set.getType().getValue()) &&
isDarwin()) {
buf.setLength(0);
-// buf.append("-framework ");
- endargs.addElement("-framework");
+// FREEHEP
+ endargs.addElement("-framework ");
}
int initialLength = buf.length();
for (int j = 0; j < libs.length; j++) {