[MacPorts] #45268: icu @53.1_1 +universal: icu-config differs and cannot be merged
MacPorts
noreply at macports.org
Sun Jan 10 22:39:01 UTC 2021
#45268: icu @53.1_1 +universal: icu-config differs and cannot be merged
-----------------------+--------------------------------
Reporter: nerdling | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.99
Resolution: | Keywords:
Port: icu |
-----------------------+--------------------------------
Comment (by kencu):
So this ticket becomes an issue again with a need for arm64/Intel
universal builds forthcoming.
It's actually fairly easy to build icu +universal on BigSur:
{{{
% port -v installed icu
The following ports are currently installed:
icu @67.1_2+universal (active) platform='darwin 20' archs='arm64 x86_64'
date='2021-01-10T17:29:50-0500'
}}}
the quick fix is to copy the arm64 icu-config shell script into the x86_64
icu-config, pre-destroot, like this (manually)
{{{
sudo mv ./source-arm64/config/icu-config ./source-x86_64/config/icu-config
}}}
and then away you go. The pkg-config files are identical, it seems.
The icu-config files differ only minorly, with respect to the host and
host cpu:
{{{
% diff -u ./destroot-arm64/opt/universal/bin/icu-config ./destroot-
x86_64/opt/universal/bin/icu-config
--- ./destroot-arm64/opt/universal/bin/icu-config 2021-01-10
17:11:53.000000000 -0500
+++ ./destroot-x86_64/opt/universal/bin/icu-config 2021-01-10
17:11:54.000000000 -0500
@@ -188,9 +188,9 @@
##################################################################
# Information about the host that 'configure' was run on.
-host="aarch64-apple-darwin20.3.0"
-host_alias="aarch64-apple-darwin20.3.0"
-host_cpu="aarch64"
+host="x86_64-apple-darwin20.3.0"
+host_alias="x86_64-apple-darwin20.3.0"
+host_cpu="x86_64"
host_vendor="apple"
host_os="darwin20.3.0"
# Our platform canonical name (as determined by configure)
}}}
To be honest, this information is none of icu-config's business, so we
might argue to just delete it. But then icu-config would not give back
anything for this option:
{{{
% /opt/universal/bin/icu-config --host
aarch64-apple-darwin20.3.0
}}}
we could write our own bit of shell script to replace that part of icu-
config, and branch on the machine:
{{{
% uname -m
arm64
}}}
I guess that makes the most sense? Looking for some inspiration here from
Ryan or similar about what might the right thing to return.
Either way, delete or fix, this looks simple to repair, once we decide
what it should return on each system.
--
Ticket URL: <https://trac.macports.org/ticket/45268#comment:22>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list