Discussion:
[MacPorts] #55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
MacPorts
2017-11-30 20:37:18 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Keywords: leopard snowleopard | Port: clang-3.8 clang-3.9
lion mountainlion | clang-4.0 clang-5.0 clang-devel
-------------------------------------+-------------------------------------
clang 3.8 and later cannot be compiled on 10.8 (without
LibcxxOnOlderSystems).

{{{
$ port info --name --version clang-{3.7,3.8,3.9,4.0,5.0,devel}
version: 3.7.1
name: clang-3.7
--
Warning: All compilers are either blacklisted or unavailable; defaulting
to first fallback option
version: 3.8.1
name: clang-3.8
--
Warning: All compilers are either blacklisted or unavailable; defaulting
to first fallback option
version: 3.9.1
name: clang-3.9
--
Warning: All compilers are either blacklisted or unavailable; defaulting
to first fallback option
version: 4.0.1
name: clang-4.0
--
Warning: All compilers are either blacklisted or unavailable; defaulting
to first fallback option
version: 5.0.0
name: clang-5.0
--
Warning: All compilers are either blacklisted or unavailable; defaulting
to first fallback option
version: devel-r319156
name: clang-devel
}}}

Could clang-3.7 be added to `compiler.fallback` to accommodate this?

I know you've been maintaining the fallback list in MacPorts base, so
maybe you can think about whether it would be reasonable to add clang-3.7
to the fallback in base, or whether it should go individually into each of
those clang ports.

--
Ticket URL: <https://trac.macports.org/ticket/55444>
MacPorts <https://www.macports.org/>
Ports system for macOS
MacPorts
2017-12-01 04:59:37 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: leopard snowleopard
Port: clang-3.8 clang-3.9 | lion mountainlion
clang-4.0 clang-5.0 clang-devel |
-------------------------------------+-------------------------------------

Comment (by jeremyhu):

macports-clang-3.7 is in the fallback list in base but only if the stdlib
is libc++ (since the port itself requires C++11 and libc++):

{{{
if {${configure.cxx_stdlib} eq "libc++"} {
# clang-3.5+ require libc++
lappend compilers macports-clang-5.0 macports-clang-4.0

if {${os.major} < 17} {
# The High Sierra SDK requires a toolchain that can apply
nullability to uuid_t
lappend compilers macports-clang-3.9
}

if {${os.major} < 16} {
# The Sierra SDK requires a toolchain that supports class
properties
lappend compilers macports-clang-3.7
}
}
}}}

I suppose we could make that check based on `[file exists
/usr/lib/libc++.dylib] || ${configure.cxx_stdlib} eq "libc++"` since the
port itself forces the use of libc++ even when it's not default (Lion /
ML).

Thoughts?

--
Ticket URL: <https://trac.macports.org/ticket/55444#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
MacPorts
2017-12-01 08:29:39 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: leopard snowleopard
Port: clang-3.8 clang-3.9 | lion mountainlion
clang-4.0 clang-5.0 clang-devel |
-------------------------------------+-------------------------------------
Post by MacPorts
I suppose we could make that check based on `[file exists
/usr/lib/libc++.dylib] || ${configure.cxx_stdlib} eq "libc++"` since the
port itself forces the use of libc++ even when it's not default (Lion /
ML).

That could be reasonable. If a port requires libc++, it will set
`configure.cxx_stdlib libc++` and add the `port:libcxx` dependency, so
that should work.

--
Ticket URL: <https://trac.macports.org/ticket/55444#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS
MacPorts
2018-12-06 01:22:37 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: leopard snowleopard
Port: clang-3.8 clang-3.9 | lion mountainlion
clang-4.0 clang-5.0 clang-devel |
-------------------------------------+-------------------------------------

Comment (by kencu):

clang 3.8 no longer exists in MacPorts
--
Ticket URL: <https://trac.macports.org/ticket/55444#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS
MacPorts
2018-12-06 01:22:46 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: fixed | Keywords: leopard snowleopard
Port: clang-3.8 clang-3.9 | lion mountainlion
clang-4.0 clang-5.0 clang-devel |
-------------------------------------+-------------------------------------
Changes (by kencu):

* status: new => closed
* resolution: => fixed
--
Ticket URL: <https://trac.macports.org/ticket/55444#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS
MacPorts
2018-12-06 01:23:04 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: reopened
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: leopard snowleopard
Port: clang-3.8 clang-3.9 | lion mountainlion
clang-4.0 clang-5.0 clang-devel |
-------------------------------------+-------------------------------------
Changes (by kencu):

* status: closed => reopened
* resolution: fixed =>


Comment:

overeager.
--
Ticket URL: <https://trac.macports.org/ticket/55444#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS
MacPorts
2018-12-06 07:16:10 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: fixed | Keywords: leopard snowleopard
Port: clang-3.8 clang-3.9 | lion mountainlion
clang-4.0 clang-5.0 clang-devel |
-------------------------------------+-------------------------------------
Changes (by kencu):

* status: reopened => closed
* resolution: => fixed


Comment:

In [changeset:"c35b1701f54cb5a048f8821641d8ecdf524bf989/macports-ports"
c35b1701f54cb5a048f8821641d8ecdf524bf989/macports-ports] (master):
{{{
#!ConfigurableCommitTicketReference repository="macports-ports"
revision="c35b1701f54cb5a048f8821641d8ecdf524bf989"
clang-6.0: fix build on leopard Intel

work around compiler_rt build error due to
no libdispatch on Leopard

disables santizer_common which presently doesn't build on Leopard

add fallback to clang-3.7 and clang-3.9

closes: https://trac.macports.org/ticket/55444
closes: https://trac.macports.org/ticket/57694
}}}
--
Ticket URL: <https://trac.macports.org/ticket/55444#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS
MacPorts
2018-12-06 22:03:50 UTC
Permalink
#55444: clang-3.8 and later: All compilers are either blacklisted or unavailable
-------------------------------------+-------------------------------------
Reporter: ryandesign | Owner: jeremyhu
Type: defect | Status: reopened
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: leopard snowleopard
Port: clang-3.8 clang-3.9 | lion mountainlion
clang-4.0 clang-5.0 clang-devel |
-------------------------------------+-------------------------------------
Changes (by kencu):

* status: closed => reopened
* resolution: fixed =>


Comment:

this was closed by a commit reference, but is not yet fully solved for all
the clangs
--
Ticket URL: <https://trac.macports.org/ticket/55444#comment:7>
MacPorts <https://www.macports.org/>
Ports system for macOS
Loading...