Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#56814 closed defect (fixed)

libvpx forces the use of clang-3.9

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc:
Port: libvpx

Description

The libvpx port forces the use of clang-3.9 on some systems. The comments in the Portfile suggest this is because clang 3.9 was new at the time, and MacPorts would otherwise choose clang 3.7, which was too old.

The situation has now changed, in that clang 3.9 is now old, and it is annoying to have to install this old version when we would rather use clang 5.0 or 6.0. Could you fix the port, please, to prefer newer clangs?

Change History (4)

comment:1 Changed 6 years ago by phriedrich

It seems it builds fine with the compiler coming with current Xcode 10 on Mojave beta. I just commented out the clang-3.9 requirement and it looks good.

comment:2 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: haspatch added

My point exactly. MacPorts base added clang 3.9 to the default list of compilers almost 2 years ago. Furthermore, clang 3.9 and earlier don't work properly with the High Sierra SDK or later, and MacPorts base knows that too, so let's let it choose the right compiler, by removing the override from the libvpx port.

See: https://github.com/macports/macports-ports/pull/2374

comment:3 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed

In fbc7e5417df7b5ef946edbebaf324883b458132e/macports-ports (master):

libvpx: Append clang-3.9 to compiler.fallback

...rather than prepending it, so that newer MacPorts-selected compilers
will be preferred on newer systems, since clang-3.9 is too old to work
with newer macOS SDKs.

Closes: #56814

comment:4 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

In 37627404de84d08da852de9e6ba97eda80230b9d/macports-ports (master):

libvpx: Use -fno-integrated-as for clang >= 4 too

The comments indicate this flag should be used for clang 3.5 and later,
so make it actually do that.

See: #56814

Note: See TracTickets for help on using tickets.