Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F162260858
D45754.id140420.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
6 KB
Referenced Files
None
Subscribers
None
D45754.id140420.diff
View Options
diff --git a/graphics/mesa-dri/Makefile b/graphics/mesa-dri/Makefile
--- a/graphics/mesa-dri/Makefile
+++ b/graphics/mesa-dri/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mesa-dri
PORTVERSION= ${MESAVERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= graphics
COMMENT= OpenGL hardware acceleration drivers for DRI2+
@@ -10,14 +10,8 @@
USES+= llvm:lib,noexport
-OPTIONS_GROUP= PLATFORM
-OPTIONS_GROUP_PLATFORM= X11 WAYLAND
-X11_DESC= Enable X11 support for GBM/EGL
-WAYLAND_DESC= Enable Wayland support for GBM/EGL and Vulkan
-WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.8:graphics/wayland-protocols
-WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland
-
OPTIONS_DEFINE= ZSTD
+OPTIONS_GROUP= GALLIUM PLATFORM VULKAN
OPTIONS_DEFAULT= WAYLAND X11 ZSTD
OPTIONS_SUB= yes
@@ -25,32 +19,52 @@
ZSTD_LIB_DEPENDS= libzstd.so:archivers/zstd
ZSTD_MESON_ENABLED= zstd
+OPTIONS_GROUP_PLATFORM= X11 WAYLAND
+X11_DESC= Enable X11 support for GBM/EGL
+WAYLAND_DESC= Enable Wayland support for GBM/EGL and Vulkan
+WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.8:graphics/wayland-protocols
+WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland
+
+OPTIONS_GROUP_GALLIUM= crocus i915 iris panfrost r300 r600 radeonsi svga swrast zink
+GALLIUM_DESC= Unified OpenGL drivers
+crocus_DESC= Intel GPU Gen4 (Broadwater) to Gen7 (Haswell)
+i915_DESC= Intel GPU Gen3 (Grantsdale to Pineview)
+iris_DESC= Intel GPU Gen8 (Broadwell) and newer
+panfrost_DESC= ARM Midgard and Bifrost
+r300_DESC= AMD/ATI R300, R400 and R500
+r600_DESC= AMD/ATI R600, R700, Evergreen, Northern Islands
+radeonsi_DESC= AMD/ATI Southern Islands and newer
+svga_DESC= VMWare Virtual GPU
+swrast_DESC= Software Rasterizer
+zink_DESC= OpenGL on top of Khronos’ Vulkan API
+
+OPTIONS_EXCLUDE+= ${ARCH:Marmv7:C/.+/crocus i915 iris panfrost r300 r600 radeonsi svga zink/}
+OPTIONS_EXCLUDE+= ${ARCH:Naarch64:C/.+/panfrost/}
+OPTIONS_EXCLUDE+= ${ARCH:Namd64:Ni386:Nx86_64:C/.+/crocus i915 iris svga/}
+MESON_ARGS+= -Dgallium-drivers=${GALLIUM_DRIVERS:ts,}
+. for _gd in ${OPTIONS_GROUP_GALLIUM}
+OPTIONS_DEFAULT+= ${_gd}
+${_gd}_VARS+= GALLIUM_DRIVERS+=${_gd}
+. endfor
+
+OPTIONS_GROUP_VULKAN= anv radv swrast_vk
+VULKAN_DESC= Vulkan drivers
+anv_DESC= Intel GPU Gen9 and newer Vulkan support
+radv_DESC= AMD/ATI Southern Islands and newer Vulkan support
+radv_BUILD_DEPENDS= glslangValidator:graphics/glslang
+swrast_vk_DESC= Software Rasterizer Vulkan support
+
+OPTIONS_EXCLUDE+= ${ARCH:Marmv7:C/.+/anv radv/}
+OPTIONS_EXCLUDE+= ${ARCH:Namd64:Ni386:Nx86_64:C/.+/anv/}
+MESON_ARGS+= -Dvulkan-drivers=${VULKAN_DRIVERS:ts,}
+. for _vd in ${OPTIONS_GROUP_VULKAN}
+OPTIONS_DEFAULT+= ${_vd}
+${_vd}_VARS+= VULKAN_DRIVERS+=${_vd:S/anv/intel/:S/radv/amd/:S/swrast_vk/swrast/}
+. endfor
+
.include <bsd.port.options.mk>
.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
-ALL_GALLIUM_DRIVERS= CROCUS I915 IRIS PANFROST R300 R600 RADEONSI SVGA \
- SWRAST ZINK
-ALL_VULKAN_DRIVERS= INTEL AMD SWRAST
-
-GALLIUM_DRIVERS+= SWRAST \
- ZINK
-VULKAN_DRIVERS+= SWRAST # lavapipe
-
-.if ${ARCH} == aarch64
-GALLIUM_DRIVERS+= PANFROST
-.endif
-
-.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH} == i386 \
- || ${ARCH:Mpowerpc*} || ${ARCH} == riscv64
-GALLIUM_DRIVERS+= R300 R600 RADEONSI
-VULKAN_DRIVERS+= AMD
-BUILD_DEPENDS+= glslangValidator:graphics/glslang
-.endif
-.if ${ARCH} == amd64 || ${ARCH} == i386
-GALLIUM_DRIVERS+= CROCUS I915 IRIS SVGA
-VULKAN_DRIVERS+= INTEL
-.endif
-
LDFLAGS_i386= -Wl,-znotext
.if ${PORT_OPTIONS:MX11}
@@ -64,9 +78,7 @@
MESA_PLATFORMS+= wayland
.endif
-MESON_ARGS+= -Dgallium-drivers="${GALLIUM_DRIVERS:ts,:tl}" \
- -Dvulkan-drivers="${VULKAN_DRIVERS:ts,:tl}" \
- -Dplatforms="${MESA_PLATFORMS:ts,:tl}"
+MESON_ARGS+= -Dplatforms="${MESA_PLATFORMS:ts,:tl}"
# Vulkan Video extensions (keep in sync with mesa-gallium-va)
MESON_ARGS+= -Dvideo-codecs="vc1dec,h264dec,h264enc,h265dec,h265enc,av1dec,av1enc,vp9dec"
@@ -85,20 +97,20 @@
-Dosmesa=false \
-Dvalgrind=disabled
-.for _gd in ${ALL_GALLIUM_DRIVERS}
+.for _gd in ${OPTIONS_GROUP_GALLIUM}
. if defined(GALLIUM_DRIVERS) && ${GALLIUM_DRIVERS:M${_gd}}
-PLIST_SUB+= ${_gd}_GDRIVER=""
+PLIST_SUB+= ${_gd}=""
. else
-PLIST_SUB+= ${_gd}_GDRIVER="@comment "
+PLIST_SUB+= ${_gd}="@comment "
. endif
.endfor
PLIST_SUB += ARCH=${ARCH:S/amd/x86_/}
-.for _vd in ${ALL_VULKAN_DRIVERS}
+.for _vd in ${OPTIONS_GROUP_VULKAN}
. if defined(VULKAN_DRIVERS) && ${VULKAN_DRIVERS:M${_vd}}
-PLIST_SUB+= ${_vd}_VDRIVER=""
+PLIST_SUB+= ${_vd}=""
. else
-PLIST_SUB+= ${_vd}_VDRIVER="@comment "
+PLIST_SUB+= ${_vd}="@comment "
. endif
.endfor
diff --git a/graphics/mesa-dri/pkg-plist b/graphics/mesa-dri/pkg-plist
--- a/graphics/mesa-dri/pkg-plist
+++ b/graphics/mesa-dri/pkg-plist
@@ -21,18 +21,18 @@
@comment include/GLES3/gl3platform.h
@comment include/KHR/khrplatform.h
@comment include/gbm.h
-%%CROCUS_GDRIVER%%lib/dri/crocus_dri.so
-%%I915_GDRIVER%%lib/dri/i915_dri.so
-%%IRIS_GDRIVER%%lib/dri/iris_dri.so
-%%PANFROST_GDRIVER%%lib/dri/panfrost_dri.so
-%%PANFROST_GDRIVER%%lib/dri/rockchip_dri.so
-%%SWRAST_GDRIVER%%lib/dri/kms_swrast_dri.so
-%%R300_GDRIVER%%lib/dri/r300_dri.so
-%%R600_GDRIVER%%lib/dri/r600_dri.so
-%%RADEONSI_GDRIVER%%lib/dri/radeonsi_dri.so
-%%SWRAST_GDRIVER%%lib/dri/swrast_dri.so
-%%SVGA_GDRIVER%%lib/dri/vmwgfx_dri.so
-%%ZINK_GDRIVER%%lib/dri/zink_dri.so
+%%crocus%%lib/dri/crocus_dri.so
+%%i915%%lib/dri/i915_dri.so
+%%iris%%lib/dri/iris_dri.so
+%%panfrost%%lib/dri/panfrost_dri.so
+%%panfrost%%lib/dri/rockchip_dri.so
+%%r300%%lib/dri/r300_dri.so
+%%r600%%lib/dri/r600_dri.so
+%%radeonsi%%lib/dri/radeonsi_dri.so
+%%svga%%lib/dri/vmwgfx_dri.so
+%%swrast%%lib/dri/kms_swrast_dri.so
+%%swrast%%lib/dri/swrast_dri.so
+%%zink%%lib/dri/zink_dri.so
@comment lib/libEGL.so
@comment lib/libEGL.so.1
@comment lib/libEGL.so.1.0.0
@@ -48,17 +48,17 @@
@comment lib/libGLESv2.so
@comment lib/libGLESv2.so.2
@comment lib/libGLESv2.so.2.0.0
-%%INTEL_VDRIVER%%lib/libvulkan_intel.so
-%%AMD_VDRIVER%%lib/libvulkan_radeon.so
-%%SWRAST_VDRIVER%%lib/libvulkan_lvp.so
+%%anv%%lib/libvulkan_intel.so
+%%radv%%lib/libvulkan_radeon.so
+%%swrast_vk%%lib/libvulkan_lvp.so
libdata/pkgconfig/dri.pc
@comment libdata/pkgconfig/egl.pc
@comment libdata/pkgconfig/gbm.pc
@comment libdata/pkgconfig/glesv1_cm.pc
@comment libdata/pkgconfig/glesv2.pc
share/drirc.d/00-mesa-defaults.conf
-%%AMD_VDRIVER%%share/drirc.d/00-radv-defaults.conf
+%%radv%%share/drirc.d/00-radv-defaults.conf
share/drirc.d/01-freebsd.conf
-%%INTEL_VDRIVER%%share/vulkan/icd.d/intel_icd.%%ARCH%%.json
-%%AMD_VDRIVER%%share/vulkan/icd.d/radeon_icd.%%ARCH%%.json
-%%SWRAST_VDRIVER%%share/vulkan/icd.d/lvp_icd.%%ARCH%%.json
+%%anv%%share/vulkan/icd.d/intel_icd.%%ARCH%%.json
+%%radv%%share/vulkan/icd.d/radeon_icd.%%ARCH%%.json
+%%swrast_vk%%share/vulkan/icd.d/lvp_icd.%%ARCH%%.json
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Jul 12, 11:15 AM (5 h, 50 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34994486
Default Alt Text
D45754.id140420.diff (6 KB)
Attached To
Mode
D45754: graphics/mesa-dri: Convert gallium and vulkan driver to port options
Attached
Detach File
Event Timeline
Log In to Comment