-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[mesa] Features, dependencies and CI #36081
base: master
Are you sure you want to change the base?
Conversation
330b098
to
6ad59c4
Compare
@@ -74,7 +59,7 @@ | |||
] | |||
}, | |||
"llvm": { | |||
"description": "Build with llvmpipe", | |||
"description": "Build with LLVM", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"description": "Build with LLVM", | |
"description": "Build llvmpipe", |
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This feature doesn't only control llvmpipe but also some other drivers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
doesn't most (all) of them just depend on llvmpipe and not llvm itself?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the feature would be called "llvmpipe", I probably wouldn't have touched it like this.
just depend on llvmpipe and not llvm itself
At least mesa also wants llvm[target-amdgpu]
for with_gallium_radeonsi
.
So either llvm becomes a mandatory dependency (rendering feature llvm
nearly pointless), or the feature really controls the llvm dependency (this PR).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm putting this PR on hold for now. We need to update our VMs to include libxcb-dri3-dev
in our Linux CI environment, as the changes to scripts/azure-pipelines/linux/managed-image.json
don't actually change anything. Tagging this as depends:vm-update
. Once our VMs are updated, someone can pick this up and have all the context they need. Here's a quick rundown of what's in the PR:
- Shared GLAPI Condition: Now builds shared
GLAPI
if eitherOpenGL API
orEGL
is enabled. Previously, it was limited toOpenGL API
. - Valgrind Dependency: Removed the dependency on Valgrind.
- VM Configuration: Switched
-Dshared-llvm
fromauto
todisabled
. The auto-detection was failing becauseLLVM
isONLY_STATIC_LIBRARY
. - gslangValidator: Added to
ADDITIONAL_BINARIES
ifglslang
is available. - CI Environment: Updated to add
libxcb-dri3-dev
, but this depends on our VM update. - In
vcpkg.json
: Simplified the default features list, introduced optional Vulkan support, and expanded LLVM support, including for AMD GPUs.
I'll revisit this PR once our VMs are all set. Until then, it's on hold but ready for action post-update. 🚀
@dg0yt, feel free to jump in if I've missed something or if there's anything that needs correction.
…es are authored by @dg0yt .
* Cherry-pick infrastructure changes from #36081 as authored by @dg0yt * Suppress warnings for the monthly docker mint as suggested by Toddy Mladenov ( MS internal conversation https://teams.microsoft.com/l/message/19:f498f444e97f40b2a2027d015a9047ab@thread.tacv2/1707520630587?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=2080ccbe-0cfb-49e6-a9c1-ea6a6bf82722&parentMessageId=1707520630587&teamName=Containers%20Secure%20Supply%20Chain&channelName=3P%20Registry%20and%20Images%20Guidance&createdTime=1707520630587 ) * Move Azure Container Registry for Android to WestUS3; with this we are officially entirely within one Azure region again :D * Explicitly grant Azure DevOps permissions to touch the scale set rather than relying on subscription-level assignments.
3a94abf
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
@BillyONeal et al. Artifact uploads seems to broken, |
* Cherry-pick infrastructure changes from microsoft#36081 as authored by @dg0yt * Suppress warnings for the monthly docker mint as suggested by Toddy Mladenov ( MS internal conversation https://teams.microsoft.com/l/message/19:f498f444e97f40b2a2027d015a9047ab@thread.tacv2/1707520630587?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=2080ccbe-0cfb-49e6-a9c1-ea6a6bf82722&parentMessageId=1707520630587&teamName=Containers%20Secure%20Supply%20Chain&channelName=3P%20Registry%20and%20Images%20Guidance&createdTime=1707520630587 ) * Move Azure Container Registry for Android to WestUS3; with this we are officially entirely within one Azure region again :D * Explicitly grant Azure DevOps permissions to touch the scale set rather than relying on subscription-level assignments.
* Cherry-pick infrastructure changes from microsoft#36081 as authored by @dg0yt * Suppress warnings for the monthly docker mint as suggested by Toddy Mladenov ( MS internal conversation https://teams.microsoft.com/l/message/19:f498f444e97f40b2a2027d015a9047ab@thread.tacv2/1707520630587?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=2080ccbe-0cfb-49e6-a9c1-ea6a6bf82722&parentMessageId=1707520630587&teamName=Containers%20Secure%20Supply%20Chain&channelName=3P%20Registry%20and%20Images%20Guidance&createdTime=1707520630587 ) * Move Azure Container Registry for Android to WestUS3; with this we are officially entirely within one Azure region again :D * Explicitly grant Azure DevOps permissions to touch the scale set rather than relying on subscription-level assignments.
@yurybura Yes. The delay is from getting additional system packages applied to the CI images, to enable CI for linux and osx. This happens once in a month... I would do a mesa update once CI works for these platforms. |
Any other meson port invoking CMake's |
@dg0yt Is there any progress in this PR? |
Not so soon.
I think I have been there before, some kind of installation order issue. But I can't rebuild LLVM so many time as I would need to. |
I'm trying to support at least |
As I said, go ahead with llvm as you like. Just keep changes to mesa minimal. |
Welcome to meson's incomplete ability to import transitive dependencies from CMake, paired with vcpkg's incomplete ability to provide a consistent |
Revises dependencies and configuration.
Add feature for controlling vulkan support.
Enable CI.