Opened 4 years ago

Closed 21 months ago

#55705 closed enhancement (fixed)

Add +llvm60 to cctools and ld64

Reported by: gaming-hacker (G Alexander) Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version: 2.4.2
Keywords: Cc: ryandesign (Ryan Schmidt), maehne (Torsten Maehne), vit9696, mf2k (Frank Schima), slarew
Port: cctools ld64

Description

hello,

i always use the latest clang compiler and switched to clang-6.0 so i need to rebuilt a lot of ports because i don't keep old compilers around. many ports do not handle new compilers, here is an example, there are other ports like this.

port: ld64-latest

...

set all_llvm_variants {llvm39 llvm40 llvm50 llvmdev}

array set llvm_variant_version {llvm33 3.3 llvm34 3.4 llvm37 3.7 llvm39 3.9 llvm40 4.0 llvm50 5.0 llvmdev devel}

...

so i manually updated these to

set all_llvm_variants {llvm39 llvm40 llvm50 llvm60 llvmdev}

array set llvm_variant_version {llvm33 3.3 llvm34 3.4 llvm37 3.7 llvm39 3.9 llvm40 4.0 llvm50 5.0 llvm60 6.0 llvmdev devel}

Are ports better ways to 'fix' these ports without having to manually update them?

Thanks

Change History (19)

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

Cc: jeremyhu removed
Keywords: compiler environment removed
Owner: set to jeremyhu
Port: macports removed
Status: newassigned

What compilers base uses for ports by default is completely separate from what compilers individual ports such as ld64 might have variants for. Both need to be updated separately.

Base uses compilers as specified in browser:macports-base/src/port1.0/portconfigure.tcl. Looks like it hasn't been updated to include clang-6.0 yet. And neither, as you've noticed, has ld64. I guess that's because clang-6.0's existence is very recent, having just been created twelve days ago.

Neither of these are particularly painful to update, someone just has to do it.

comment:2 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Right, and I haven't had time to qualify either to my satisfaction yet. I consider it fairly obvious that "devel" isn't qualified, but I consider adding 6.0 a stamp that 6.0 (while itself still it beta) is ready for prime time.

I'm not saying it isn't ready. I'm just saying that I have not had the time to do an install with it as the default compiler in order to vet it. I'll probably do that some time after the next update to it.

comment:3 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Summary: adding new clang compilers:: why so painful?Add +llvm60 to cctools and ld64

comment:4 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Port: cctools ld64 added

comment:5 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Component: baseports

comment:6 Changed 4 years ago by gaming-hacker (G Alexander)

ok, thanks can you close the ticket?

comment:7 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)

No, I'm leaving this open unil I finish qualifying.

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

Cc: ryandesign added

It it time now? The llvm-6.0 port is updated to the 6.0.0 stable version.

comment:9 Changed 3 years ago by maehne (Torsten Maehne)

Cc: maehne added

comment:10 Changed 3 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Yep.

comment:11 Changed 3 years ago by vit9696

With all the effort needed to continuously update cctools dependencies, may it be reasonable to provide an option to use Xcode cctools, just like it was done for ld64? I do not think there is a particular need in custom cctools on recent versions of macOS, and such a way would ease upgrading the custom clang compiler infrastructure with macports. @jeremyhu, what's your opinion?

comment:12 Changed 3 years ago by vit9696

Cc: vit9696 added

comment:13 Changed 3 years ago by mf2k (Frank Schima)

Cc: mf2k added

comment:14 Changed 3 years ago by slarew

Cc: slarew added

comment:15 Changed 3 years ago by pmetzger (Perry E. Metzger)

Resolution: fixed
Status: assignedclosed

comment:16 Changed 3 years ago by vit9696

Resolution: fixed
Status: closedreopened

comment:17 Changed 3 years ago by mf2k (Frank Schima)

Indeed and also it is not fixed in the ld64 ports.

comment:18 Changed 3 years ago by mf2k (Frank Schima)

Port: cctools,ld64cctools ld64

comment:19 Changed 21 months ago by kencu (Ken)

Resolution: fixed
Status: reopenedclosed

llvm-6.0 has been in use for some time now; llvm 7, 8, and 9 are also active.

Note: See TracTickets for help on using tickets.