Opened 3 years ago

Closed 2 years ago

#62927 closed enhancement (fixed)

Prefer MacPorts clang-11 and clang-10 over clang-9.0

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.6.4
Keywords: Cc:
Port:

Description

If Xcode clang is blacklisted, base picks MacPorts clang-9.0 as its first fallback. Newer stable versions should be preferred, but see comments from Ken in [2f37547eddee14389286364929d2b2f2b57b321c/macports-ports] about some complications.

Change History (4)

comment:1 Changed 3 years ago by kencu (Ken)

If you choose a clang that is approximately similar to the current Xcode clang as the primary fallback compiler, you maximize successful builds.

If you choose the newest released clang, you get many many more build errors, but (arguably) function as the canary in the coal mine for finding software that needs fixing before Xcode finds it. This was not much fun a few years ago when clang 9 was first selected as our primary fallback, when Xcode was more like clang 5. Xcode has just now caught up to clang 9, as noted with all the recent VERSION errors showing up.

You can get an idea where the software world is by looking at what the linux distros are defaulting too as well.

And as per comments you mentioned, if/when we go past clang 9 as primary default, we'll need to look at bootstrapping again in the clang_dependency PG and other places.

Version 1, edited 3 years ago by kencu (Ken) (previous) (next) (diff)

comment:2 Changed 3 years ago by kencu (Ken)

You might say making the very oldest systems run point on compiler errors is kinda unfair...be nice if some capable users with current systems set up their defaults to serve up clang-11 on BigSur and Catalina, and started wading through the inevitable copious build errors there first...

but that is unlikely to happen, I suppose.

comment:3 in reply to:  1 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to kencu:

If you choose a clang that is approximately similar to the current Xcode clang as the primary fallback compiler, you maximize successful builds.

That's a good point, and I wasn't aware what version of open source clang the latest Xcode clang approximately corresponds to.

comment:4 Changed 2 years ago by jmroot (Joshua Root)

Component: baseports
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.