-
Notifications
You must be signed in to change notification settings - Fork 6.4k
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] new port #14640
[mesa] new port #14640
Conversation
CI test failures: ..\src\189b5861b5-bd40f385ca.clean\meson.build:1492:2: ERROR: Neither a subproject directory nor a llvm.wrap file was found. Full logs: |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
@Neumann-A, here is failure for libass:x64-linux in CI testing:
|
@PhoebeHui that seems to be unrelated to this PR since the depend-info for libass does not list fontconfig!
looking at the Since it is completely unrelated I am not going to fix it in this PR. |
@Neumann-A, please ignore it, it's not related to this changes, it also failed in master, I will take a look the baseline issue. |
I will test all features with x64-window if you haven't test yet. |
@PhoebeHui. I did not test everything. One interesting point will be if |
Feature 'egl' test failed with x64-windows, others passed.
|
That feature probably only works for unix due to:
|
Could you add comments to portfile.cmake or description in CONTROL file about the failed feature 'egl'? |
Adding |
Build-Depends: mesa[core] | ||
|
||
Feature: opengl | ||
Description: Build support for OpenGL (all versions) |
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 support for OpenGL (all versions) | |
Description: Build support for OpenGL (all non-ES versions) | |
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.
The description is from meson_options.txt stating:
option(
'opengl',
type : 'boolean',
value : true,
description : 'Build support for OpenGL (all versions)'
)
I think features in vcpkg should copy upstream descriptions 1:1 even if it seems to be a wrong.
@Neumann-A is there a reason that we don't just always build |
The only discussion I found is in https://www.mail-archive.com/mesa-dev@lists.freedesktop.org/msg17040.html and there seem to be at least one use case which does not use a |
@Neumann-A hmm, it looks to me like unshared-glapi is pretty not-useful, except for maybe some minor cases to do with system package managers. I think the best thing to do is just make shared-glapi always-on, and if a person really needs unshared-glapi, they can work on it themselves. |
file(REMOVE ${CURRENT_PACKAGES_DIR}/include/EGL/eglext.h) | ||
file(REMOVE ${CURRENT_PACKAGES_DIR}/include/EGL/eglplatform.h) | ||
|
||
#installed by opengl-registry |
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.
Should this port depend on opengl-registry then?
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 would only generate an hard error on the installation of mesa if it tries to install headers which are already present, The build itself will not use either egl-registry nor opengl-registry.
ports/mesa/portfile.cmake
Outdated
foreach(_file ${_double_files}) | ||
if(EXISTS "${CURRENT_PACKAGES_DIR}/${_file}") | ||
file(REMOVE "${CURRENT_PACKAGES_DIR}/${_file}") | ||
endif() | ||
endforeach() |
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.
foreach(_file ${_double_files}) | |
if(EXISTS "${CURRENT_PACKAGES_DIR}/${_file}") | |
file(REMOVE "${CURRENT_PACKAGES_DIR}/${_file}") | |
endif() | |
endforeach() | |
list(TRANSFORM _double_files PREPEND "${CURRENT_PACKAGES_DIR}/") | |
file(REMOVE ${_double_files}) |
set(_double_files include/GL/glcorearb.h include/GL/glext.h include/GL/glxext.h | ||
include/GLES/egl.h include/GLES/gl.h include/GLES/glext.h include/GLES/glplatform.h | ||
include/GLES2/gl2.h include/GLES2/gl2ext.h include/GLES2/gl2platform.h | ||
include/GLES3/gl3.h include/GLES3/gl31.h include/GLES3/gl32.h include/GLES3/gl3platform.h) |
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.
set(_double_files include/GL/glcorearb.h include/GL/glext.h include/GL/glxext.h | |
include/GLES/egl.h include/GLES/gl.h include/GLES/glext.h include/GLES/glplatform.h | |
include/GLES2/gl2.h include/GLES2/gl2ext.h include/GLES2/gl2platform.h | |
include/GLES3/gl3.h include/GLES3/gl31.h include/GLES3/gl32.h include/GLES3/gl3platform.h) | |
set(_double_files include/GL/glcorearb.h include/GL/glext.h include/GL/glxext.h | |
include/GLES3/gl3.h include/GLES3/gl31.h include/GLES3/gl32.h include/GLES3/gl3platform.h) |
Below is already removing the GLES
and GLES2
dirs.
… and parts being a dynamic library.
The x64-windows-static failed with 'only supports dynamic crt linkage", @Neumann-A, could you add mesa:x64-windows-static to ci.baseline file for unblocking CI testing?
|
vcpkg_add_to_path("${PYTHON3_DIR}/Scripts") | ||
set(ENV{PYTHON} "${PYTHON3}") | ||
|
||
function(vcpkg_get_python_package PYTHON_DIR ) |
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.
@ras0219-msft As requested I factored out a function called vcpkg_get_python_package
here but I did not put it into scripts/cmake
yet since I did not want to rebuild all ports within this PR.
closes #6705
should currently only work for windows. (Since CI on other platforms are currently probably missing dependencies)