OSX 10.6 clang / llvm circular dependency

Michael Dickens michaelld at macports.org
Fri Feb 8 20:36:14 UTC 2019

On Fri, Feb 8, 2019, at 3:02 PM, Christopher Jones wrote:
>> On 8 Feb 2019, at 7:43 pm, Michael Dickens
>> <michaelld at macports.org> wrote:>> 
>> Updated; rebuilt the PortIndex. No different. I find the following
>> very curious. "cmake" depends on itself circularly, which just can't
>> be good; and, the internal cmake dependency has somewhat different
>> dependencies compared with the outer one. It also has direct
>> dependencies on clang-7.0 and llvm-7.0, which doesn't seem correct to
>> me based on the Portfile. Hmmmm …> 
> Thats not what strikes me. Its the fact this also depends on
> clang-7.0.> 
> I really suspect something in your setup is forcing the use of this
> compiler on all ports…
clang-7.0 is not required on all ports. I've updated those ports where
this circular dependency doesn't exist.
I just checked all of the conf files in PREFIX/etc/macports & updated
them to the latest with my minimal tweaks (applications_dir and sources
location). Otherwise my MP install is "stock" and "normal" and
completely update to date (just reinstalled today; "base" is stock
excepting the version found in config/macports_version).
A few more data points that might be useful:

(1) On 10.6, if I do "sudo port rev", when I tell it to proceed, it
    comes back with the following:{{{
Continue? [Y/n]:
Warning: No port clang-7.0 found in the index.
Warning: No port libomp found in the index.
Warning: No port llvm-7.0 found in the index.
Warning: No port libcxx found in the index.
Warning: No port clang_select found in the index.
Warning: No port ld64 found in the index.
--->  Computing dependencies for clang-7.0Error: Problem while
installing clang-7.0}}}
... but, each of these ports is in the PortIndex .. I assume that's what
"index" means here. So, what does "port" think it's doing?
(2) On 10.10 on a different computer / MP install, I'm updating some
    ports (e.g., uhd-devel) and see that they are dependent on MP clang-
    7.0, which makes no sense ... uhd-devel just requires a c++11
    compliant compiler. No reason why MP clang-7.0 ... could be an older
    version. Luckily on 10.10 there is no circular dependency, so
    everything installs; that and I generally try to have all of the
    major compilers installed for testing purposes anyway ... so, good
    to get clang 7.0 installed anyway.
(3) clang-7.0 depends on cmake, which requires c++11 for building. Maybe
    the circular dependency is coming through cmake's c++11, which
    somehow for some older OSX requires clang-7.0 ... here's an
    interesting point:
In the cmake Portfile, if I insert this line:
ui_msg "configure.compiler is '${configure.compiler}'"
both before and after the line:
PortGroup cxx11 1.1
then before I see the compiler is 'gcc-4.2', while after it is 'macports-clang-
7.0' ... so, somehow the cxx11 1.1 PG is picking the incorrect compiler!
Hmmmm ... will continue investigating! - MLD
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20190208/5530e91b/attachment.html>

More information about the macports-dev mailing list