Mac OS UUID virtual: platform-specific virtuals not correctly prioritized (#43002)

`apple-libuuid` includes types that aren't available in other `uuid`
providers; this cause issues in consuming packages (e.g., py-matplotlib)
that use SDKs like CarbonCore.framework when they attempt to use
`util-linux-uuid` as a `uuid` provider on Mac OS.

Tweak `util-linux-uuid` to indicate that it does not provide `uuid`
on Mac OS.
This commit is contained in:
Chris Marsh 2024-07-30 11:38:07 -06:00 committed by GitHub
parent e563f84ae2
commit 65a15c6145
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 12 additions and 3 deletions

View File

@ -3,6 +3,8 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import sys
from spack.package import *
@ -20,6 +22,7 @@ class Libuuid(AutotoolsPackage, SourceforgePackage):
depends_on("c", type="build") # generated
if sys.platform not in ["darwin", "win32"]:
provides("uuid")
conflicts("%gcc@14:")

View File

@ -3,6 +3,8 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import sys
from spack.package import *
@ -22,6 +24,7 @@ class OsspUuid(AutotoolsPackage):
depends_on("c", type="build") # generated
depends_on("cxx", type="build") # generated
if sys.platform not in ["darwin", "win32"]:
provides("uuid")
@property

View File

@ -3,6 +3,8 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import sys
from spack.package import *
@ -29,6 +31,7 @@ class UtilLinuxUuid(AutotoolsPackage):
depends_on("pkgconfig", type="build")
if sys.platform not in ["darwin", "win32"]:
provides("uuid")
def url_for_version(self, version):