bazelbuild / platforms

Constraint values for specifying platforms and toolchains
Apache License 2.0
106 stars 70 forks source link

Add Apple visionos. #71

Closed aiuto closed 11 months ago

aiuto commented 1 year ago

I'm not really satisified with this PR. The number of Apple specific platforms has grown to the point where we may want to refactor them. The question I would focus on is how various toolchain matches and select clauses go.

Do we see things like:

foo = select({
  ".../os:linux": A,
  ".../os:windows": B,
  ".../os:macos": C,
  ".../os:watchos": C,
  ".../os:visionos": C,
})

Where C is the same for all the apple platforms?

Or, do we see real distinctions across the various per-device OSes. Or a mix of both? And, do we see the fanout of the Apple OSes done with a select_or wrapper, so users end up seeing the simple selection of just apple, linux, or windows, but we buried complexity elsewhere?

keith commented 1 year ago

I think in general we see both "all apple" selects and specific OS version selects. In apple_support we provide a config_setting for "all apple" here.

keith commented 12 months ago

@aiuto friendly ping

brentleyjones commented 11 months ago

Thanks @meteorcloudy @katre!

keith commented 11 months ago

Thanks folks, could you also push a 0.0.7 with this?

aiuto commented 11 months ago

I'll get to that today. Have to run a short errand.