<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch release-2.6
in repository macports-base.
</pre>
<p><a href="https://github.com/macports/macports-base/commit/a17a3983a917d8d99a617db0f837ce629e09bf86">https://github.com/macports/macports-base/commit/a17a3983a917d8d99a617db0f837ce629e09bf86</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit a17a3983a917d8d99a617db0f837ce629e09bf86
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Fri Nov 13 09:42:13 2020 +1100
<span style='display:block; white-space:pre;color:#404040;'> extend possible demotions in choose_supported_archs
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Allow switching to x86_64 when arm64 is not supported, and to ppc when
</span><span style='display:block; white-space:pre;color:#404040;'> i386 is not supported.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/61430
</span><span style='display:block; white-space:pre;color:#404040;'> (cherry picked from commit 94f428eda6bd58b57c670c20fb2362ad7012310a)
</span><span style='display:block; white-space:pre;color:#404040;'> (cherry picked from commit b17865b65c6e9b8423875f273dc3015681a358b6)
</span>---
src/port1.0/portconfigure.tcl | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portconfigure.tcl b/src/port1.0/portconfigure.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 34e44094..91496641 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portconfigure.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portconfigure.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -430,17 +430,21 @@ proc portconfigure::choose_supported_archs {archs} {
</span> # No SDK version (maybe not on macOS)
set intersection_archs $supported_archs
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set ret {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Filter out unsupported archs, but allow demoting to 32-bit if needed.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # That means if build_arch is x86_64 it's still possible to build a port
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set ret [list]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Filter out unsupported archs, but allow demoting to another arch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # supported by the SDK if needed, e.g. 64-bit to 32-bit. That means
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # e.g. if build_arch is x86_64 it's still possible to build a port
</span> # that sets supported_archs to "i386 ppc" if the SDK allows it.
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ array set arch_demotions [list \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arm64 x86_64 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ x86_64 i386 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ppc64 ppc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ i386 ppc]
</span> foreach arch $archs {
if {$arch in $intersection_archs} {
set add_arch $arch
<span style='display:block; white-space:pre;background:#ffe0e0;'>- } elseif {$arch eq "x86_64" && "i386" in $intersection_archs} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set add_arch "i386"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } elseif {$arch eq "ppc64" && "ppc" in $intersection_archs} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set add_arch "ppc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {[info exists arch_demotions($arch)] && $arch_demotions($arch) in $intersection_archs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set add_arch $arch_demotions($arch)
</span> } else {
continue
}
</pre><pre style='margin:0'>
</pre>