[100514] trunk/dports/devel/ld64
jeremyhu at macports.org
jeremyhu at macports.org
Fri Dec 14 08:57:41 PST 2012
Revision: 100514
https://trac.macports.org/changeset/100514
Author: jeremyhu at macports.org
Date: 2012-12-14 08:57:41 -0800 (Fri, 14 Dec 2012)
Log Message:
-----------
ld64: Fix logic for ppc branch islands (#37300).
Modified Paths:
--------------
trunk/dports/devel/ld64/Portfile
Added Paths:
-----------
trunk/dports/devel/ld64/files/ld64-97-ppc-branch-island.patch
Modified: trunk/dports/devel/ld64/Portfile
===================================================================
--- trunk/dports/devel/ld64/Portfile 2012-12-14 16:50:25 UTC (rev 100513)
+++ trunk/dports/devel/ld64/Portfile 2012-12-14 16:57:41 UTC (rev 100514)
@@ -70,7 +70,7 @@
# XCode 3.2.6
# 127.2 should work for powerpc, but it will require some build fixes.
version 97.17
- revision 1
+ revision 2
checksums rmd160 d52df7d7f741c8bedd29cbac73dbb9db992b4795 \
sha256 02bd46af0809eaa415d096d7d41c3e8e7d80f7d8d181840866fb87f036b4e089
supported_archs x86_64 i386 ppc
@@ -78,7 +78,7 @@
set makefile "Makefile-97"
patchfiles-delete ld64-133-no-CrashReporterClient.h.patch
- patchfiles-append ld64-97-no-LTO.patch
+ patchfiles-append ld64-97-no-LTO.patch ld64-97-ppc-branch-island.patch
} elseif {${os.major} < 11} {
# XCode 4.2
# This was the last ld64 release that supported linking ppc executables.
Added: trunk/dports/devel/ld64/files/ld64-97-ppc-branch-island.patch
===================================================================
--- trunk/dports/devel/ld64/files/ld64-97-ppc-branch-island.patch (rev 0)
+++ trunk/dports/devel/ld64/files/ld64-97-ppc-branch-island.patch 2012-12-14 16:57:41 UTC (rev 100514)
@@ -0,0 +1,20 @@
+--- src/ld/MachOWriterExecutable.hpp 2010-04-20 20:41:08.000000000 +0200
++++ src/ld/MachOWriterExecutable.hpp 2012-12-13 20:08:24.000000000 +0100
+@@ -10999,7 +10999,7 @@
+ const int64_t bl_sixteenMegLimit = 0x00FFFFFF;
+ if ( fTarget.getContentType() == ObjectFile::Atom::kBranchIsland ) {
+ displacement = getFinalTargetAdress() - this->getAddress();
+- if ( (displacement > bl_sixteenMegLimit) && (displacement < (-bl_sixteenMegLimit)) ) {
++ if ( (displacement > bl_sixteenMegLimit) || (displacement < (-bl_sixteenMegLimit)) ) {
+ displacement = fTarget.getAddress() - this->getAddress();
+ }
+ }
+@@ -11017,7 +11017,7 @@
+ const int64_t bl_sixteenMegLimit = 0x00FFFFFF;
+ if ( fTarget.getContentType() == ObjectFile::Atom::kBranchIsland ) {
+ displacement = getFinalTargetAdress() - this->getAddress();
+- if ( (displacement > bl_sixteenMegLimit) && (displacement < (-bl_sixteenMegLimit)) ) {
++ if ( (displacement > bl_sixteenMegLimit) || (displacement < (-bl_sixteenMegLimit)) ) {
+ displacement = fTarget.getAddress() - this->getAddress();
+ }
+ }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20121214/b0862065/attachment.html>
More information about the macports-changes
mailing list