[132725] trunk/dports/devel/ld64
jeremyhu at macports.org
jeremyhu at macports.org
Sun Feb 8 23:03:12 PST 2015
Revision: 132725
https://trac.macports.org/changeset/132725
Author: jeremyhu at macports.org
Date: 2015-02-08 23:03:12 -0800 (Sun, 08 Feb 2015)
Log Message:
-----------
ld64-127: Fix an issue building libgcc on ppc (#46801)
Modified Paths:
--------------
trunk/dports/devel/ld64/Portfile
Added Paths:
-----------
trunk/dports/devel/ld64/files/PR-12249048.patch
trunk/dports/devel/ld64/files/ld64-ppc-9610466.patch
Modified: trunk/dports/devel/ld64/Portfile
===================================================================
--- trunk/dports/devel/ld64/Portfile 2015-02-09 03:39:20 UTC (rev 132724)
+++ trunk/dports/devel/ld64/Portfile 2015-02-09 07:03:12 UTC (rev 132725)
@@ -51,6 +51,7 @@
# XCode 4.2
# This was the last ld64 release that supported linking ppc executables.
version 127.2
+ revision 1
checksums rmd160 8ee709341549a1944732daef6ebab7ef1acfcc6e \
sha256 97b75547b2bd761306ab3e15ae297f01e7ab9760b922bc657f4ef72e4e052142
@@ -65,12 +66,15 @@
ld64-127-long-branch-warn.patch \
ld64-127-cxx_initializer_order_and_sim.patch \
ld64-127-ppc.patch \
- ld64-97-no-Availability.h.patch
+ ld64-97-no-Availability.h.patch \
+ PR-12249048.patch \
+ ld64-ppc-9610466.patch
}
subport ld64-136 {
# XCode 4.6
version 136
+ revision 1
checksums rmd160 4a2930ccdd398b63a108810e90293ab96dc154a0 \
sha256 99d6c4acb6d4cdf45772951dd2308222aa966763170137459a9d276674645d9e
@@ -83,7 +87,8 @@
ld64-133-no-CrashReporterClient.h.patch \
ld64-134-missing-include.patch \
ld64-136-i386-badAddress.patch \
- ld64-136-hash_set.patch
+ ld64-136-hash_set.patch \
+ ld64-ppc-9610466.patch
if {${os.major} <= 9} {
pre-fetch {
@@ -96,6 +101,7 @@
subport ld64-latest {
# XCode 5.1
version 236.3
+ revision 1
checksums rmd160 6a3f44aa9ae57a60d2cff5b3d47be7972ad83029 \
sha256 8ef36729b643201081ab45ebd8586ede8f9968bc17614b679a940faa82875ca6
@@ -113,7 +119,8 @@
ld64-134-missing-include.patch \
ld64-136-i386-badAddress.patch \
PR-16935960.patch \
- PR-16936488.patch
+ PR-16936488.patch \
+ ld64-ppc-9610466.patch
if {${configure.cxx_stdlib} eq "libstdc++"} {
patchfiles-append ld64-236-hash_set.patch
Added: trunk/dports/devel/ld64/files/PR-12249048.patch
===================================================================
--- trunk/dports/devel/ld64/files/PR-12249048.patch (rev 0)
+++ trunk/dports/devel/ld64/files/PR-12249048.patch 2015-02-09 07:03:12 UTC (rev 132725)
@@ -0,0 +1,13 @@
+--- src/ld/OutputFile.cpp
++++ src/ld/OutputFile.cpp
+@@ -873,8 +873,8 @@ void OutputFile::rangeCheckAbsolute32(int64_t displacement, ld::Internal& state,
+ // .long _foo + 0x40000000
+ // so if _foo lays out to 0xC0000100, the first is ok, but the second is not.
+ if ( (_options.architecture() == CPU_TYPE_ARM) || (_options.architecture() == CPU_TYPE_I386) ) {
+- // Unlikely userland code does funky stuff like this, so warn for them, but not warn for -preload
+- if ( _options.outputKind() != Options::kPreload ) {
++ // Unlikely userland code does funky stuff like this, so warn for them, but not warn for -preload or -static
++ if ( (_options.outputKind() != Options::kPreload) && (_options.outputKind() != Options::kStaticExecutable) ) {
+ warning("32-bit absolute address out of range (0x%08llX max is 4GB): from %s + 0x%08X (0x%08llX) to 0x%08llX",
+ displacement, atom->name(), fixup->offsetInAtom, atom->finalAddress(), displacement);
+ }
Added: trunk/dports/devel/ld64/files/ld64-ppc-9610466.patch
===================================================================
--- trunk/dports/devel/ld64/files/ld64-ppc-9610466.patch (rev 0)
+++ trunk/dports/devel/ld64/files/ld64-ppc-9610466.patch 2015-02-09 07:03:12 UTC (rev 132725)
@@ -0,0 +1,30 @@
+From df13124fb337260a9f30495159a7db89d7461e4d Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia <jeremyhu at apple.com>
+Date: Sun, 8 Feb 2015 22:53:34 -0800
+Subject: [PATCH] Adjust out-of range error to be a warning on ppc
+
+AKA <rdar://problem/9610466> for ppc
+
+https://trac.macports.org/ticket/46801
+
+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu at apple.com>
+---
+ src/ld/OutputFile.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/ld/OutputFile.cpp b/src/ld/OutputFile.cpp
+index 6150b5c..27fdaad 100644
+--- src/ld/OutputFile.cpp
++++ src/ld/OutputFile.cpp
+@@ -625,7 +625,7 @@ void OutputFile::rangeCheckAbsolute32(int64_t displacement, ld::Internal& state,
+ // is encoded in mach-o the same as:
+ // .long _foo + 0x40000000
+ // so if _foo lays out to 0xC0000100, the first is ok, but the second is not.
+- if ( (_options.architecture() == CPU_TYPE_ARM) || (_options.architecture() == CPU_TYPE_I386) ) {
++ if ( (_options.architecture() == CPU_TYPE_ARM) || (_options.architecture() == CPU_TYPE_I386) || (_options.architecture() == CPU_TYPE_POWERPC) ) {
+ // Unlikely userland code does funky stuff like this, so warn for them, but not warn for -preload or -static
+ if ( (_options.outputKind() != Options::kPreload) && (_options.outputKind() != Options::kStaticExecutable) ) {
+ warning("32-bit absolute address out of range (0x%08llX max is 4GB): from %s + 0x%08X (0x%08llX) to 0x%08llX",
+--
+2.3.0
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20150208/ffe26c6c/attachment.html>
More information about the macports-changes
mailing list