Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#52118 closed enhancement (fixed)

ld64: don't declare variants when they won't work

Reported by: jmroot (Joshua Root) Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: mojca (Mojca Miklavec)
Port: ld64


This way if a user has an unsupported variant selected for whatever reason, they'll just be switched to the current default when upgrading instead of getting an error message that requires manual intervention.

The some_llvm_variant_set proc may be slight overkill but it does mean the list of variants only has to be updated in one place.

Attachments (1)

Portfile.diff (3.9 KB) - added by jmroot (Joshua Root) 4 years ago.

Download all attachments as: .zip

Change History (6)

Changed 4 years ago by jmroot (Joshua Root)

Attachment: Portfile.diff added

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

That would be great if it worked, but doing so will result in the llvm33 and llvm34 variants not being declared in the PortIndex when generated on newer systems.

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

From IRC, it turns out each platform has a separate index, so that should work out fine.

Unfortunately, this doesn't quite work because the system sees [ldelete $all_llvm_variants $variantname] as a single variant. Eg:

Warning: Variant llvm38 conflicts with non-existing variant llvm39 llvmdev

r152081 addresses the main issue (note that the accidental change to wiggle was reverted in the following commit), but I'd prefer to generate the variants instead of listing them all out if that's possible. Leaving this open to track taking the spirit of the rest of the change.

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

Resolution: fixed
Status: newclosed

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

And r152086 for cctools

comment:5 Changed 4 years ago by mojca (Mojca Miklavec)

Cc: mojca@… added

Cc Me!

Note: See TracTickets for help on using tickets.