Skip to content
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

components/x11/mesa: further fixes and enablement of dri (i915) and gallium (swrast, crocus, iris) drivers #20576

Draft
wants to merge 5 commits into
base: oi/hipster
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 17 additions & 10 deletions components/x11/mesa/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ BUILD_BITS = 64
BUILD_STYLE = meson
include ../../../make-rules/shared-macros.mk

CLANG_VERSION = 13

COMPONENT_NAME= mesa
COMPONENT_VERSION= 21.3.9
COMPONENT_REVISION= 2
Expand Down Expand Up @@ -46,28 +48,30 @@ X11_SERVERLIBS_DIR= /usr/lib/xorg

CONFIGURE_OPTIONS += --libdir='lib/mesa/amd64'

PKG_HARDLINKS += usr/lib/xorg/modules/dri/$(MACH64)/kms_swrast_dri.so
#PKG_HARDLINKS += usr/lib/xorg/modules/dri/$(MACH64)/kms_swrast_dri.so

# Command line options to GNU autoconf configure script
CONFIGURE_OPTIONS += -Dgallium-drivers='swrast, i915, r600'
CONFIGURE_OPTIONS += -Dgallium-drivers='swrast, crocus, iris'
CONFIGURE_OPTIONS += -Dvulkan-drivers=''
CONFIGURE_OPTIONS += -Dgbm=enabled
CONFIGURE_OPTIONS += -Dglvnd=false
# Wayland currently requires linux specific socket options and epoll for events.
CONFIGURE_OPTIONS += -Dplatforms='x11'
# llvm is disabled due to requiring llvm 16 we do not have 16
CONFIGURE_OPTIONS += -Dllvm=false
CONFIGURE_OPTIONS += -Dllvm=enabled
CONFIGURE_OPTIONS += -Dglx='auto'
CONFIGURE_OPTIONS += -Degl=enabled
CONFIGURE_OPTIONS += -Dgles1=enabled
CONFIGURE_OPTIONS += -Dgles2=enabled
CONFIGURE_OPTIONS += -Dosmesa=true
CONFIGURE_OPTIONS += -Dshared-glapi=enabled
CONFIGURE_OPTIONS += -Dgallium-xvmc=enabled
CONFIGURE_OPTIONS += -Dgallium-xa=enabled
CONFIGURE_OPTIONS += -Ddri-drivers=''
CONFIGURE_OPTIONS += -Dgallium-xvmc=disabled
CONFIGURE_OPTIONS += -Dgallium-xa=disabled
CONFIGURE_OPTIONS += -Ddri-drivers='i915'
CONFIGURE_OPTIONS += -Ddri-drivers-path='$(X11_SERVERMODS_DIR)/dri$(SERVERMOD_SUBDIR)'
CONFIGURE_OPTIONS += -Delf-tls=false
CONFIGURE_OPTIONS += -Dprefer-crocus=true
CONFIGURE_OPTIONS += -Dprefer-iris=true

CFLAGS += $(XPG7MODE)
CFLAGS += -Wno-incompatible-pointer-types -D_POSIX_PTHREAD_SEMANTICS
Expand All @@ -88,12 +92,14 @@ CONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)"
# Add RPATH to xorg lib directory where is libdrm.

COMPONENT_POST_INSTALL_ACTION.64 += \
for f in libgbm.so.1.0.0 libEGL.so.1.0.0 libGL.so.1.2.0 libxatracker.so.2.5.0 libXvMCr600.so.1.0.0 vdpau/libvdpau_r600.so.1.0.0; do \
elfedit -e "dyn:runpath /usr/lib/mesa/$(MACH64):/usr/lib/xorg/$(MACH64):$(GCC_LIBDIR)" \
for f in libgbm.so.1.0.0 libEGL.so.1.0.0 libGL.so.1.2.0 libOSMesa.so.8.0.0; do \
elfedit -e "dyn:runpath /usr/lib/mesa/$(MACH64):/usr/lib/xorg/$(MACH64):$(GCC_LIBDIR):${CLANG_LIBDIR}" \
$(PROTOUSRLIBDIR)/mesa/$(MACH64)/$$f ; \
done ; \
elfedit -e "dyn:runpath /usr/lib/mesa/$(MACH64):/usr/lib/xorg/$(MACH64):$(GCC_LIBDIR)" \
$(PROTOUSRLIBDIR)/xorg/modules/dri/$(MACH64)/i915_dri.so ; \
for f in kms_swrast_dri.so i915_dri.so crocus_dri.so iris_dri.so; do \
elfedit -e "dyn:runpath /usr/lib/mesa/$(MACH64):/usr/lib/xorg/$(MACH64):$(GCC_LIBDIR):${CLANG_LIBDIR}" \
$(PROTOUSRLIBDIR)/xorg/modules/dri/$(MACH64)/$$f ; \
done ; \
mv $(PROTOUSRDIR)/include/GL $(PROTOUSRDIR)/include/mesa

# Manually added build dependencies
Expand All @@ -105,6 +111,7 @@ REQUIRED_PACKAGES += library/graphics/libvdpau
# Auto-generated dependencies
REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG)
REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG)
REQUIRED_PACKAGES += $(CLANG_RUNTIME_PKG)
REQUIRED_PACKAGES += compress/zstd
REQUIRED_PACKAGES += library/expat
REQUIRED_PACKAGES += library/zlib
Expand Down
24 changes: 3 additions & 21 deletions components/x11/mesa/manifests/sample-manifest.p5m
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,6 @@ file path=usr/include/mesa/internal/dri_interface.h
link path=usr/include/GL/internal/dri_interface.h target=../../mesa/internal/dri_interface.h
file path=usr/include/mesa/osmesa.h
link path=usr/include/GL/osmesa.h target=../mesa/osmesa.h
file path=usr/include/xa_composite.h
file path=usr/include/xa_context.h
file path=usr/include/xa_tracker.h
link path=usr/lib/mesa/$(MACH64)/libEGL.so target=libEGL.so.1
link path=usr/lib/mesa/$(MACH64)/libEGL.so.1 target=libEGL.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/libEGL.so.1.0.0
Expand All @@ -70,36 +67,21 @@ file path=usr/lib/mesa/$(MACH64)/libGLESv2.so.2.0.0
link path=usr/lib/mesa/$(MACH64)/libOSMesa.so target=libOSMesa.so.8
link path=usr/lib/mesa/$(MACH64)/libOSMesa.so.8 target=libOSMesa.so.8.0.0
file path=usr/lib/mesa/$(MACH64)/libOSMesa.so.8.0.0
link path=usr/lib/mesa/$(MACH64)/libXvMCr600.so target=libXvMCr600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libXvMCr600.so.1 target=libXvMCr600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libXvMCr600.so.1.0 target=libXvMCr600.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/libXvMCr600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libgbm.so target=libgbm.so.1
link path=usr/lib/mesa/$(MACH64)/libgbm.so.1 target=libgbm.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/libgbm.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libglapi.so target=libglapi.so.0
link path=usr/lib/mesa/$(MACH64)/libglapi.so.0 target=libglapi.so.0.0.0
file path=usr/lib/mesa/$(MACH64)/libglapi.so.0.0.0
link path=usr/lib/mesa/$(MACH64)/libxatracker.so target=libxatracker.so.2
link path=usr/lib/mesa/$(MACH64)/libxatracker.so.2 target=libxatracker.so.2.5.0
file path=usr/lib/mesa/$(MACH64)/libxatracker.so.2.5.0
file path=usr/lib/mesa/$(MACH64)/pkgconfig/dri.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/egl.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/gbm.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/gl.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/glesv1_cm.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/glesv2.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/osmesa.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/xatracker.pc
link path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so \
target=libvdpau_r600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so.1 \
target=libvdpau_r600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so.1.0 \
target=libvdpau_r600.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so.1.0.0
hardlink path=usr/lib/xorg/modules/dri/$(MACH64/i915_dri.so target=kms_swrast_dri.so
file path=usr/lib/xorg/modules/dri/$(MACH64/i915_dri.so
file path=usr/lib/xorg/modules/dri/$(MACH64)/kms_swrast_dri.so
hardlink path=usr/lib/xorg/modules/dri/$(MACH64)/r600_dri.so target=kms_swrast_dri.so
hardlink path=usr/lib/xorg/modules/dri/$(MACH64)/swrast_dri.so target=kms_swrast_dri.so
file path=usr/lib/xorg/modules/dri/$(MACH64)/crocus_dri.so
file path=usr/lib/xorg/modules/dri/$(MACH64)/iris_dri.so
file path=usr/share/drirc.d/00-mesa-defaults.conf
25 changes: 3 additions & 22 deletions components/x11/mesa/mesa.p5m
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,6 @@ link path=usr/lib/$(MACH64)/pkgconfig/gl.pc target=../../mesa/$(MACH64)/pkgconfi
link path=usr/lib/$(MACH64)/pkgconfig/glesv1_cm.pc target=../../mesa/$(MACH64)/pkgconfig/glesv1_cm.pc
link path=usr/lib/$(MACH64)/pkgconfig/glesv2.pc target=../../mesa/$(MACH64)/pkgconfig/glesv2.pc
link path=usr/lib/$(MACH64)/pkgconfig/osmesa.pc target=../../mesa/$(MACH64)/pkgconfig/osmesa.pc
link path=usr/lib/$(MACH64)/pkgconfig/xatracker.pc target=../../mesa/$(MACH64)/pkgconfig/xatracker.pc

file path=usr/include/EGL/egl.h
file path=usr/include/EGL/eglext.h
Expand Down Expand Up @@ -101,9 +100,6 @@ file path=usr/include/mesa/internal/dri_interface.h
link path=usr/include/GL/internal/dri_interface.h target=../../mesa/internal/dri_interface.h
file path=usr/include/mesa/osmesa.h
link path=usr/include/GL/osmesa.h target=../mesa/osmesa.h
file path=usr/include/xa_composite.h
file path=usr/include/xa_context.h
file path=usr/include/xa_tracker.h
link path=usr/lib/mesa/$(MACH64)/libEGL.so target=libEGL.so.1
link path=usr/lib/mesa/$(MACH64)/libEGL.so.1 target=libEGL.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/libEGL.so.1.0.0
Expand All @@ -119,36 +115,21 @@ file path=usr/lib/mesa/$(MACH64)/libGLESv2.so.2.0.0
link path=usr/lib/mesa/$(MACH64)/libOSMesa.so target=libOSMesa.so.8
link path=usr/lib/mesa/$(MACH64)/libOSMesa.so.8 target=libOSMesa.so.8.0.0
file path=usr/lib/mesa/$(MACH64)/libOSMesa.so.8.0.0
link path=usr/lib/mesa/$(MACH64)/libXvMCr600.so target=libXvMCr600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libXvMCr600.so.1 target=libXvMCr600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libXvMCr600.so.1.0 target=libXvMCr600.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/libXvMCr600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libgbm.so target=libgbm.so.1
link path=usr/lib/mesa/$(MACH64)/libgbm.so.1 target=libgbm.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/libgbm.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/libglapi.so target=libglapi.so.0
link path=usr/lib/mesa/$(MACH64)/libglapi.so.0 target=libglapi.so.0.0.0
file path=usr/lib/mesa/$(MACH64)/libglapi.so.0.0.0
link path=usr/lib/mesa/$(MACH64)/libxatracker.so target=libxatracker.so.2
link path=usr/lib/mesa/$(MACH64)/libxatracker.so.2 target=libxatracker.so.2.5.0
file path=usr/lib/mesa/$(MACH64)/libxatracker.so.2.5.0
file path=usr/lib/mesa/$(MACH64)/pkgconfig/dri.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/egl.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/gbm.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/gl.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/glesv1_cm.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/glesv2.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/osmesa.pc
file path=usr/lib/mesa/$(MACH64)/pkgconfig/xatracker.pc
link path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so \
target=libvdpau_r600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so.1 \
target=libvdpau_r600.so.1.0.0
link path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so.1.0 \
target=libvdpau_r600.so.1.0.0
file path=usr/lib/mesa/$(MACH64)/vdpau/libvdpau_r600.so.1.0.0
file path=usr/lib/xorg/modules/dri/$(MACH64)/i915_dri.so
hardlink path=usr/lib/xorg/modules/dri/$(MACH64)/kms_swrast_dri.so target=i915_dri.so
hardlink path=usr/lib/xorg/modules/dri/$(MACH64)/r600_dri.so target=i915_dri.so
hardlink path=usr/lib/xorg/modules/dri/$(MACH64)/swrast_dri.so target=i915_dri.so
file path=usr/lib/xorg/modules/dri/$(MACH64)/kms_swrast_dri.so
file path=usr/lib/xorg/modules/dri/$(MACH64)/crocus_dri.so
file path=usr/lib/xorg/modules/dri/$(MACH64)/iris_dri.so
file path=usr/share/drirc.d/00-mesa-defaults.conf