Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Oct 2020 08:30:54 +0000 (UTC)
From:      Emmanuel Vadot <manu@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r552109 - in head: . devel/libclc graphics graphics/libosmesa graphics/mesa-dri graphics/mesa-dri/files graphics/mesa-gallium-va graphics/mesa-gallium-vdpau graphics/mesa-gallium-xa gra...
Message-ID:  <202010120830.09C8UsF1086004@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: manu
Date: Mon Oct 12 08:30:54 2020
New Revision: 552109
URL: https://svnweb.freebsd.org/changeset/ports/552109

Log:
  graphics/mesa*: Update to 20.2
  
  Update to 20.2
  Move graphics/libxatracker to graphics/mesa-gallium-xa
  Remove VAAPI and VDPAU options in mesa-libs in favor of
  two new ports : mesa-gallium-va and mesa-gallium-vdpau
  Bump needed llvm to llvm10
  Change a lot of meson option from false to disabled as it's
  deprecated.
  Remove the drm and surfaceless platform from mesa* as it's always
  enabled now.
  Add zstd option, used for shader cache.
  
  Reviewed by:	x11 (zeising@)
  Differential Revision:	https://reviews.freebsd.org/D26682

Added:
  head/graphics/mesa-dri/files/extra-src_gallium_auxiliary_meson.build   (contents, props changed)
  head/graphics/mesa-dri/files/extra-src_gallium_auxiliary_vl_vl__stubs.c   (contents, props changed)
  head/graphics/mesa-dri/files/patch-src_util_os__file.c   (contents, props changed)
  head/graphics/mesa-dri/files/patch-src_util_os__misc.c   (contents, props changed)
  head/graphics/mesa-dri/files/patch-src_util_u__process.c   (contents, props changed)
  head/graphics/mesa-dri/files/pkg-message.in   (contents, props changed)
  head/graphics/mesa-gallium-va/
  head/graphics/mesa-gallium-va/Makefile   (contents, props changed)
  head/graphics/mesa-gallium-va/pkg-descr   (contents, props changed)
  head/graphics/mesa-gallium-va/pkg-plist   (contents, props changed)
  head/graphics/mesa-gallium-vdpau/
  head/graphics/mesa-gallium-vdpau/Makefile   (contents, props changed)
  head/graphics/mesa-gallium-vdpau/pkg-descr   (contents, props changed)
  head/graphics/mesa-gallium-vdpau/pkg-plist   (contents, props changed)
Deleted:
  head/graphics/mesa-dri/files/extra-src_mesa_drivers_dri_i965_intel__screen.c
  head/graphics/mesa-dri/files/patch-75e5720e.c
  head/graphics/mesa-dri/files/patch-a134ac5e.c
  head/graphics/mesa-dri/files/patch-b7f97598.c
  head/graphics/mesa-dri/files/patch-bd4380c6.c
  head/graphics/mesa-dri/files/patch-compat-include-guards
  head/graphics/mesa-dri/files/patch-eda36feb.c
  head/graphics/mesa-dri/files/patch-i386
  head/graphics/mesa-dri/files/patch-include_GL_internal_dri__interface.h
  head/graphics/mesa-dri/files/patch-src_amd_vulkan_winsys_amdgpu_radv__amdgpu__cs.c
  head/graphics/mesa-dri/files/patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c
  head/graphics/mesa-dri/files/patch-src_gallium_include_pipe_p__config.h
  head/graphics/mesa-dri/files/patch-src_gallium_state__trackers_clover_llvm_invocation.cpp
  head/graphics/mesa-dri/files/patch-src_gallium_state__trackers_clover_llvm_metadata.hpp
  head/graphics/mesa-dri/files/patch-src_gallium_state__trackers_clover_util_range.hpp
  head/graphics/mesa-dri/files/patch-src_gallium_state__trackers_xvmc_meson.build
  head/graphics/mesa-dri/files/patch-src_gallium_targets_xvmc_meson.build
  head/graphics/mesa-dri/files/patch-src_intel_compiler_brw__fs__bank__conflicts.cpp
  head/graphics/mesa-dri/files/patch-src_intel_tools_aub__mem.c
  head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c
  head/graphics/mesa-dri/files/patch-src_intel_tools_error2aub.c
  head/graphics/mesa-dri/files/patch-src_intel_vulkan_anv__allocator.c
  head/graphics/mesa-dri/files/patch-src_intel_vulkan_anv__gem.c
  head/graphics/mesa-dri/files/patch-src_intel_vulkan_anv__queue.c
  head/graphics/mesa-dri/files/patch-src_mapi_glapi_gen_gl__gentable.py
  head/graphics/mesa-dri/files/patch-src_mesa_main_macros.h
  head/graphics/mesa-dri/files/patch-src_util_futex.h
  head/graphics/mesa-dri/files/patch-src_util_os__time.c
  head/graphics/mesa-dri/files/patch-src_util_u__thread.h
Modified:
  head/UPDATING
  head/devel/libclc/Makefile
  head/graphics/Makefile
  head/graphics/libosmesa/Makefile
  head/graphics/mesa-dri/Makefile
  head/graphics/mesa-dri/Makefile.common
  head/graphics/mesa-dri/distinfo
  head/graphics/mesa-dri/files/patch-meson.build
  head/graphics/mesa-dri/files/patch-src_amd_vulkan_radv__device.c
  head/graphics/mesa-dri/files/patch-src_intel_vulkan_anv__device.c
  head/graphics/mesa-dri/pkg-plist
  head/graphics/mesa-gallium-xa/Makefile
  head/graphics/mesa-libs/Makefile
  head/graphics/mesa-libs/pkg-plist
  head/lang/clover/Makefile

Modified: head/UPDATING
==============================================================================
--- head/UPDATING	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/UPDATING	Mon Oct 12 08:30:54 2020	(r552109)
@@ -5,6 +5,14 @@ they are unavoidable.
 You should get into the habit of checking this file for changes each time
 you update your ports collection, before attempting any port upgrades.
 
+20201012:
+  AFFECTS: Users of mesa-dri with VAAPI or VDPAU options
+  AUTHOR: manu@FreeBSD.org
+
+  The nondefault options VAAPI and VDPAU were removed from the mesa-dri
+  port and two new ports, mesa-gallium-va and mesa-gallium-vdpau now contain
+  the necessary libraries for using VAAPI or VDPAU on AMD hardware.
+
 20201006:
   AFFECTS: users of sysutils/tenshi
   AUTHOR: 0mp@FreeBSD.org

Modified: head/devel/libclc/Makefile
==============================================================================
--- head/devel/libclc/Makefile	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/devel/libclc/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -43,9 +43,6 @@ do-configure:
 
 .include <bsd.port.options.mk>
 
-# Keep in sync with lang/clover
-.if ${LLVM_DEFAULT:C/[1-5]./&0/:S,-devel,990,} >= 90
-LLVM_DEFAULT=	80
-.endif
+LLVM_DEFAULT=	10
 
 .include <bsd.port.mk>

Modified: head/graphics/Makefile
==============================================================================
--- head/graphics/Makefile	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -534,6 +534,8 @@
     SUBDIR += mesa-demos
     SUBDIR += mesa-devel
     SUBDIR += mesa-dri
+    SUBDIR += mesa-gallium-va
+    SUBDIR += mesa-gallium-vdpau
     SUBDIR += mesa-gallium-xa
     SUBDIR += mesa-libs
     SUBDIR += metacam

Modified: head/graphics/libosmesa/Makefile
==============================================================================
--- head/graphics/libosmesa/Makefile	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/libosmesa/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -3,7 +3,6 @@
 
 PORTNAME=	libosmesa
 PORTVERSION=	${MESAVERSION}
-PORTREVISION=	1
 CATEGORIES=	graphics
 
 COMMENT=	Off-Screen Mesa implementation of the OpenGL API
@@ -14,26 +13,26 @@ USE_XORG=	xorgproto
 .include <bsd.port.options.mk>
 .include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
 
-
 # Disable some options
 MESON_ARGS+=	-Ddri-drivers="" \
 		-Dgallium-drivers=swrast \
 		-Dvulkan-drivers="" \
 		-Dplatforms="" \
-		-Dgallium-vdpau=false \
+		-Dgallium-vdpau=disabled \
 		-Dgallium-omx=disabled \
-		-Dgallium-va=false \
+		-Dgallium-va=disabled \
 		-Dgallium-opencl=disabled \
-		-Dgallium-xa=false \
-		-Dgallium-xvmc=false \
+		-Dgallium-xa=disabled \
+		-Dgallium-xvmc=disabled \
 		-Dgallium-nine=false \
-		-Dgles1=false \
-		-Dgles2=false \
-		-Dopengl=false \
+		-Dgles1=disabled \
+		-Dgles2=disabled \
+		-Dopengl=true \
 		-Dglx=disabled \
-		-Degl=false \
-		-Dgbm=false \
-		-Dtools=""
+		-Degl=disabled \
+		-Dgbm=disabled \
+		-Dtools="" \
+		-Dzstd=disabled
 LDFLAGS_i386=		-Wl,-znotext
 
 .if ${ARCH} == sparc64

Modified: head/graphics/mesa-dri/Makefile
==============================================================================
--- head/graphics/mesa-dri/Makefile	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-dri/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -3,35 +3,29 @@
 
 PORTNAME=	mesa-dri
 PORTVERSION=	${MESAVERSION}
-PORTREVISION=	9
 CATEGORIES=	graphics
 
 COMMENT=	OpenGL hardware acceleration drivers for DRI2+
 
 OPTIONS_GROUP=			PLATFORM
-OPTIONS_GROUP_PLATFORM=		PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS
+OPTIONS_GROUP_PLATFORM=		PLATFORM_X11 PLATFORM_WAYLAND
 PLATFORM_X11_DESC=		Enable X11 support for GBM/EGL
 PLATFORM_WAYLAND_DESC=		Enable Wayland support for GBM/EGL
-PLATFORM_DRM_DESC=		Enable DRM support for GBM/EGL
-PLATFORM_SURFACELESS_DESC=	Enable Surfaceless support for GBM/EGL
 PLATFORM_WAYLAND_IMPLIES=	WAYLAND
 
-OPTIONS_DEFINE=	VAAPI VDPAU WAYLAND
-OPTIONS_DEFAULT=WAYLAND PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS
-OPTIONS_SUB=	yes
+OPTIONS_DEFINE=		WAYLAND ZSTD
+OPTIONS_DEFAULT=	WAYLAND PLATFORM_X11 PLATFORM_WAYLAND ZSTD
+OPTIONS_SUB=		yes
 
-VAAPI_MESON_ON=		-Dgallium-va=true
-VAAPI_LIB_DEPENDS=	libva.so:multimedia/libva
-VAAPI_USE=		XORG=xcb
-
-VDPAU_MESON_ON=		-Dgallium-vdpau=true
-VDPAU_LIB_DEPENDS=	libvdpau.so:multimedia/libvdpau
-
 WAYLAND_DESC=		Enable support for the Wayland platform in Vulkan drivers
 WAYLAND_BUILD_DEPENDS=	wayland-protocols>=1.8:graphics/wayland-protocols
 WAYLAND_LIB_DEPENDS=	libwayland-client.so:graphics/wayland
 WAYLAND_IMPLIES=	PLATFORM_WAYLAND
 
+ZSTD_DESC=		Use ZSTD for shader cache
+ZSTD_LIB_DEPENDS=	libzstd.so:archivers/zstd
+ZSTD_MESON_ENABLED=	zstd
+
 .include <bsd.port.options.mk>
 .include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
 
@@ -51,16 +45,13 @@ DRI_DRIVERS+=		R100 R200
 GALLIUM_DRIVERS+=	R300 R600 RADEONSI
 VULKAN_DRIVERS+=	AMD
 . if ${PORT_OPTIONS:MPLATFORM_X11}
-MESON_ARGS+=		-Dgallium-xvmc=true
-USE_XORG+=		xvmc
+USE_XORG+=		xv xvmc
+MESON_ARGS+=		-Dgallium-xvmc=enabled
 . endif
 .endif
 .if ${ARCH} == amd64 || ${ARCH} == i386
 DRI_DRIVERS+=		I915 I965
 GALLIUM_DRIVERS+=	SVGA
-. if ${OPSYS} == FreeBSD
-EXTRA_PATCHES+=	${PATCHDIR}/extra-src_mesa_drivers_dri_i965_intel__screen.c
-. endif
 VULKAN_DRIVERS+=	INTEL
 .endif
 
@@ -74,14 +65,6 @@ USE_XORG+=		xcb xrandr
 .endif
 .endif
 
-.if ${PORT_OPTIONS:MPLATFORM_DRM}
-MESA_PLATFORMS+=	drm
-.endif
-
-.if ${PORT_OPTIONS:MPLATFORM_SURFACELESS}
-MESA_PLATFORMS+=	surfaceless
-.endif
-
 .if ${PORT_OPTIONS:MPLATFORM_WAYLAND}
 MESA_PLATFORMS+=	wayland
 .endif
@@ -92,11 +75,11 @@ MESON_ARGS+=	-Ddri-drivers="${DRI_DRIVERS:ts,:tl}" \
 			-Dplatforms="${MESA_PLATFORMS:ts,:tl}"
 
 # Disable some options
-MESON_ARGS+=	-Dgallium-xa=false \
-		-Dgles1=false \
-		-Dgles2=false \
+MESON_ARGS+=	-Dgallium-xa=disabled \
+		-Dgles1=disabled \
+		-Dgles2=disabled \
 		-Dglx=disabled \
-		-Degl=false \
+		-Degl=disabled \
 		-Dosmesa=none \
 		-Dtools=""
 

Modified: head/graphics/mesa-dri/Makefile.common
==============================================================================
--- head/graphics/mesa-dri/Makefile.common	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-dri/Makefile.common	Mon Oct 12 08:30:54 2020	(r552109)
@@ -14,7 +14,7 @@
 MESAVERSION=	${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/}
 MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/}
 
-MESABASEVERSION=	19.0.8
+MESABASEVERSION=	20.2.0
 # if there is a subversion, don't include the '-' between 7.11-rc2.
 MESASUBVERSION=
 
@@ -74,7 +74,6 @@ python_OLD_CMD=	/usr/bin/env[[:space:]]python2 /usr/bi
 SHEBANG_FILES=	src/gallium/*/*/*.py src/gallium/tools/trace/*.py \
 		src/gallium/drivers/svga/svgadump/svga_dump.py \
 		src/mapi/glapi/gen/*.py src/mapi/mapi_abi.py \
-		src/util/xmlpool/gen_xmlpool.py \
 		src/mesa/main/get_*.py src/util/format_srgb.py \
 		src/amd/*/*.py src/intel/genxml/gen_pack_header.py
 
@@ -86,23 +85,34 @@ PLIST=		${.CURDIR}/pkg-plist
 PKGHELP=	${.CURDIR}/pkg-help
 PKGINSTALL=	${.CURDIR}/pkg-install
 PKGDEINSTALL=	${.CURDIR}/pkg-deinstall
-INSTALL_TARGET=	install-strip
 
-.include <bsd.port.pre.mk>
+.if ${OSVERSION} < 1200000
+EXTRA_PATCHES+= ${PATCHDIR}/extra-src_util_build__id.c
+.endif
 
-.if ${ARCH} == powerpc64
-LLVM_DEFAULT=	90
-.elif ${LLVM_DEFAULT:C/[1-5]./&0/:S,-devel,990,} >= 90
-LLVM_DEFAULT=	80
+.if ${COMPONENT} == clover
+EXTRA_PATCHES+= ${PATCHDIR}/extra-src_gallium_auxiliary_meson.build \
+		${PATCHDIR}/extra-src_gallium_auxiliary_vl_vl__stubs.c
 .endif
 
+.include <bsd.port.pre.mk>
+
 BINARY_ALIAS+=	python3=${PYTHON_VERSION}
 
-BUILD_DEPENDS+=	llvm${LLVM_DEFAULT}>=3.9.0_4:devel/llvm${LLVM_DEFAULT}
+.if ${ARCH} == powerpc64
+LLVM_DEFAULT=	90
+BUILD_DEPENDS+=	llvm${LLVM_DEFAULT}>=9.0.1_2:devel/llvm${LLVM_DEFAULT}
 .if ${COMPONENT} != libs
-RUN_DEPENDS+=	llvm${LLVM_DEFAULT}>=3.9.0_4:devel/llvm${LLVM_DEFAULT}
+RUN_DEPENDS+=	llvm${LLVM_DEFAULT}>=9.0.1_2:devel/llvm${LLVM_DEFAULT}
 .endif
+.else
+LLVM_DEFAULT=	10
+BUILD_DEPENDS+=	llvm${LLVM_DEFAULT}>=10.0.1_1:devel/llvm${LLVM_DEFAULT}
+.if ${COMPONENT} != libs
+RUN_DEPENDS+=	llvm${LLVM_DEFAULT}>=10.0.1_1:devel/llvm${LLVM_DEFAULT}
+.endif
+.endif
+
 MESON_ARGS+=	--native-file="${WRKSRC}/llvm.ini"
 LDFLAGS+=	-Wl,-rpath=${LOCALBASE}/llvm${LLVM_DEFAULT}/lib
-MESON_ARGS+=	-Dllvm=true
-
+MESON_ARGS+=	-Dllvm=enabled

Modified: head/graphics/mesa-dri/distinfo
==============================================================================
--- head/graphics/mesa-dri/distinfo	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-dri/distinfo	Mon Oct 12 08:30:54 2020	(r552109)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1561580048
-SHA256 (mesa-19.0.8.tar.xz) = d017eb53a810c32dabeedf6ca2238ae1e897ce9090e470e9ce1d6c9e3f1b0862
-SIZE (mesa-19.0.8.tar.xz) = 11967592
+TIMESTAMP = 1601893546
+SHA256 (mesa-20.2.0.tar.xz) = 63f0359575d558ef98dd78adffc0df4c66b76964ebf603b778b7004964191d30
+SIZE (mesa-20.2.0.tar.xz) = 13675596

Added: head/graphics/mesa-dri/files/extra-src_gallium_auxiliary_meson.build
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-dri/files/extra-src_gallium_auxiliary_meson.build	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,18 @@
+--- src/gallium/auxiliary/meson.build.orig	2020-09-23 21:05:28 UTC
++++ src/gallium/auxiliary/meson.build
+@@ -440,7 +440,6 @@ files_libgalliumvl = files(
+   'vl/vl_compositor_cs.h',
+   'vl/vl_csc.c',
+   'vl/vl_csc.h',
+-  'vl/vl_decoder.c',
+   'vl/vl_decoder.h',
+   'vl/vl_defines.h',
+   'vl/vl_deint_filter.c',
+@@ -461,7 +460,6 @@ files_libgalliumvl = files(
+   'vl/vl_types.h',
+   'vl/vl_vertex_buffers.c',
+   'vl/vl_vertex_buffers.h',
+-  'vl/vl_video_buffer.c',
+   'vl/vl_video_buffer.h',
+   'vl/vl_vlc.h',
+   'vl/vl_zscan.c',

Added: head/graphics/mesa-dri/files/extra-src_gallium_auxiliary_vl_vl__stubs.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-dri/files/extra-src_gallium_auxiliary_vl_vl__stubs.c	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,17 @@
+--- src/gallium/auxiliary/vl/vl_stubs.c.orig	2020-09-23 21:12:53 UTC
++++ src/gallium/auxiliary/vl/vl_stubs.c
+@@ -140,6 +140,14 @@ vl_create_mpeg12_decoder(struct pipe_context *pipe,
+    return NULL;
+ }
+ 
++struct pipe_video_buffer *
++vl_video_buffer_create_as_resource(struct pipe_context *pipe,
++                                   const struct pipe_video_buffer *tmpl)
++{
++   assert(0);
++   return NULL;
++}
++
+ /*
+  * vl_zscan
+  */

Modified: head/graphics/mesa-dri/files/patch-meson.build
==============================================================================
--- head/graphics/mesa-dri/files/patch-meson.build	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-dri/files/patch-meson.build	Mon Oct 12 08:30:54 2020	(r552109)
@@ -1,64 +1,42 @@
-- Do not define GLX_USE_TLS, this doesn't work on all FreeBSD version
-  Later mesa version rename this to USE_ELF_TLS and make it conditional
-  on some platform, but for now simply comment it here.
-  See https://github.com/dumbbell/test-tls-initial-exec for more info
-- Add dependency on libxv for xvmc, this is fixed in later mesa version.
-- Define _GNU_SOURCE on FreeBSD, adapted from
-  https://gitlab.freedesktop.org/mesa/mesa/commit/b4f508ab5990
-- sys/sysctl.h needs sys/types.h to be properly detected, adapted from
-  https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5462/diffs
---- meson.build.orig	2020-06-14 07:52:34 UTC
+--- meson.build.orig	2020-10-06 07:15:26 UTC
 +++ meson.build
-@@ -25,7 +25,7 @@ project(
-     [find_program('python', 'python2', 'python3'), 'bin/meson_get_version.py']
-   ).stdout(),
-   license : 'MIT',
--  meson_version : '>= 0.45',
-+  meson_version : '>= 0.46',
-   default_options : ['buildtype=debugoptimized', 'b_ndebug=if-release', 'c_std=c99', 'cpp_std=c++11']
- )
- 
-@@ -336,7 +336,7 @@ if with_egl and not (with_platform_drm or with_platfor
-   endif
+@@ -1108,9 +1108,9 @@ else
  endif
  
--pre_args += '-DGLX_USE_TLS'
-+#pre_args += '-DGLX_USE_TLS'
- if with_glx != 'disabled'
-   if not (with_platform_x11 and with_any_opengl)
-     error('Cannot build GLX support without X11 platform support and at least one OpenGL API')
-@@ -458,7 +458,8 @@ dep_xvmc = null_dep
- with_gallium_xvmc = false
- if _xvmc != 'false'
-   dep_xvmc = dependency('xvmc', version : '>= 1.0.6', required : _xvmc == 'true')
--  with_gallium_xvmc = dep_xvmc.found()
-+  dep_xv = dependency('xv', required: _xvmc == 'true')
-+  with_gallium_xvmc = dep_xvmc.found() and dep_xv.found()
- endif
+ # Check for GCC style atomics
+-dep_atomic = null_dep
++dep_atomic = cc.find_library('atomic', required : false)
  
- xvmc_drivers_path = get_option('xvmc-libs-path')
-@@ -792,7 +793,7 @@ if cc.compiles('int foo(void) __attribute__((__noretur
- endif
+-if cc.compiles('''#include <stdint.h>
++if cc.links('''#include <stdint.h>
+                   int main() {
+                     struct {
+                       uint64_t *v;
+@@ -1119,26 +1119,9 @@ if cc.compiles('''#include <stdint.h>
+                            (int)__atomic_add_fetch(x.v, (uint64_t)1, __ATOMIC_ACQ_REL);
  
- # TODO: this is very incomplete
--if ['linux', 'cygwin', 'gnu'].contains(host_machine.system())
-+if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd'].contains(host_machine.system())
-   pre_args += '-D_GNU_SOURCE'
+                   }''',
++	       dependencies : dep_atomic,
+                name : 'GCC atomic builtins')
+   pre_args += '-DUSE_GCC_ATOMIC_BUILTINS'
+-
+-  # Not all atomic calls can be turned into lock-free instructions, in which
+-  # GCC will make calls into the libatomic library. Check whether we need to
+-  # link with -latomic.
+-  #
+-  # This can happen for 64-bit atomic operations on 32-bit architectures such
+-  # as ARM.
+-  if not cc.links('''#include <stdint.h>
+-                     int main() {
+-                       struct {
+-                         uint64_t *v;
+-                       } x;
+-                       return (int)__atomic_load_n(x.v, __ATOMIC_ACQUIRE) &
+-                              (int)__atomic_add_fetch(x.v, (uint64_t)1, __ATOMIC_ACQ_REL);
+-                     }''',
+-                  name : 'GCC atomic builtins required -latomic')
+-    dep_atomic = cc.find_library('atomic')
+-  endif
  endif
- 
-@@ -977,7 +978,14 @@ elif cc.has_header_symbol('sys/mkdev.h', 'major')
-   pre_args += '-DMAJOR_IN_MKDEV'
- endif
- 
--foreach h : ['xlocale.h', 'sys/sysctl.h', 'linux/futex.h', 'endian.h', 'dlfcn.h']
-+if not ['linux'].contains(host_machine.system())
-+  # Deprecated on Linux and requires <sys/types.h> on FreeBSD and OpenBSD
-+  if cc.check_header('sys/sysctl.h', prefix : '#include <sys/types.h>')
-+    pre_args += '-DHAVE_SYS_SYSCTL_H'
-+  endif
-+endif
-+
-+foreach h : ['xlocale.h', 'linux/futex.h', 'endian.h', 'dlfcn.h']
-   if cc.compiles('#include <@0@>'.format(h), name : '@0@'.format(h))
-     pre_args += '-DHAVE_@0@'.format(h.to_upper().underscorify())
-   endif
+ if not cc.links('''#include <stdint.h>
+                    uint64_t v;

Modified: head/graphics/mesa-dri/files/patch-src_amd_vulkan_radv__device.c
==============================================================================
--- head/graphics/mesa-dri/files/patch-src_amd_vulkan_radv__device.c	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-dri/files/patch-src_amd_vulkan_radv__device.c	Mon Oct 12 08:30:54 2020	(r552109)
@@ -1,19 +1,13 @@
-- Define CLOCK_MONOTONIC_RAW if missing
-
---- src/amd/vulkan/radv_device.c.orig	2018-11-06 16:16:02 UTC
+--- src/amd/vulkan/radv_device.c.orig	2020-09-28 22:52:10 UTC
 +++ src/amd/vulkan/radv_device.c
-@@ -50,6 +50,14 @@
- #include "util/debug.h"
- #include "util/mesa-sha1.h"
+@@ -56,6 +56,10 @@
+ #include "compiler/glsl_types.h"
+ #include "util/driconf.h"
  
-+#ifndef CLOCK_MONOTONIC_RAW
-+# ifdef CLOCK_MONOTONIC_FAST
-+#  define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC_FAST
-+# else
-+#  define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC
-+# endif
++#if DETECT_OS_FREEBSD
++#define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC_FAST
 +#endif
 +
- static int
- radv_device_get_cache_uuid(enum radeon_family family, void *uuid)
- {
+ static struct radv_timeline_point *
+ radv_timeline_find_point_at_least_locked(struct radv_device *device,
+                                          struct radv_timeline *timeline,

Modified: head/graphics/mesa-dri/files/patch-src_intel_vulkan_anv__device.c
==============================================================================
--- head/graphics/mesa-dri/files/patch-src_intel_vulkan_anv__device.c	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-dri/files/patch-src_intel_vulkan_anv__device.c	Mon Oct 12 08:30:54 2020	(r552109)
@@ -1,50 +1,13 @@
-- Without sysinfo() fall back to sysconf()
-- Define ETIME if missing
-- Define CLOCK_MONOTONIC_RAW if missing
-
---- src/intel/vulkan/anv_device.c.orig	2018-11-06 16:16:02 UTC
+--- src/intel/vulkan/anv_device.c.orig	2020-09-28 22:52:12 UTC
 +++ src/intel/vulkan/anv_device.c
-@@ -25,7 +25,9 @@
- #include <stdbool.h>
- #include <string.h>
- #include <sys/mman.h>
-+#ifdef __GLIBC__
- #include <sys/sysinfo.h>
-+#endif
- #include <unistd.h>
- #include <fcntl.h>
- #include <xf86drm.h>
-@@ -44,6 +46,17 @@
+@@ -48,6 +48,10 @@
  
  #include "genxml/gen7_pack.h"
  
-+#ifndef ETIME
-+#define ETIME ETIMEDOUT
++#if DETECT_OS_FREEBSD
++#define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC_FAST
 +#endif
-+#ifndef CLOCK_MONOTONIC_RAW
-+# ifdef CLOCK_MONOTONIC_FAST
-+#  define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC_FAST
-+# else
-+#  define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC
-+# endif
-+#endif
 +
- static void
- compiler_debug_log(void *data, const char *fmt, ...)
- { }
-@@ -64,10 +73,15 @@ static VkResult
- anv_compute_heap_size(int fd, uint64_t gtt_size, uint64_t *heap_size)
- {
-    /* Query the total ram from the system */
-+#ifdef __GLIBC__
-    struct sysinfo info;
-    sysinfo(&info);
- 
-    uint64_t total_ram = (uint64_t)info.totalram * (uint64_t)info.mem_unit;
-+#else
-+   uint64_t total_ram = sysconf(_SC_PHYS_PAGES) * sysconf(_SC_PAGE_SIZE);
-+#endif
-+
- 
-    /* We don't want to burn too much ram with the GPU.  If the user has 4GiB
-     * or less, we use at most half.  If they have more than 4GiB, we use 3/4.
+ static const char anv_dri_options_xml[] =
+ DRI_CONF_BEGIN
+    DRI_CONF_SECTION_PERFORMANCE

Added: head/graphics/mesa-dri/files/patch-src_util_os__file.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-dri/files/patch-src_util_os__file.c	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,50 @@
+--- src/util/os_file.c.orig	2020-10-05 09:57:28 UTC
++++ src/util/os_file.c
+@@ -80,7 +80,7 @@ os_dupfd_cloexec(int fd)
+ #endif
+ 
+ 
+-#if DETECT_OS_LINUX
++#if DETECT_OS_LINUX || DETECT_OS_FREEBSD
+ 
+ #include <fcntl.h>
+ #include <sys/stat.h>
+@@ -93,7 +93,11 @@ os_dupfd_cloexec(int fd)
+ static ssize_t
+ readN(int fd, char *buf, size_t len)
+ {
++#if DETECT_OS_LINUX
+    int err = -ENODATA;
++#elif DETECT_OS_FREEBSD
++   int err = -1;
++#endif
+    size_t total = 0;
+    do {
+       ssize_t ret = read(fd, buf + total, len - total);
+@@ -185,6 +189,7 @@ os_read_file(const char *filename, size_t *size)
+    return buf;
+ }
+ 
++#if DETECT_OS_LINUX
+ int
+ os_same_file_description(int fd1, int fd2)
+ {
+@@ -196,6 +201,18 @@ os_same_file_description(int fd1, int fd2)
+ 
+    return syscall(SYS_kcmp, pid, pid, KCMP_FILE, fd1, fd2);
+ }
++#else
++int
++os_same_file_description(int fd1, int fd2)
++{
++   /* Same file descriptor trivially implies same file description */
++   if (fd1 == fd2)
++      return 0;
++
++   /* Otherwise we can't tell */
++   return -1;
++}
++#endif
+ 
+ #else
+ 

Added: head/graphics/mesa-dri/files/patch-src_util_os__misc.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-dri/files/patch-src_util_os__misc.c	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,26 @@
+--- src/util/os_misc.c.orig	2020-09-28 22:52:13 UTC
++++ src/util/os_misc.c
+@@ -58,7 +58,7 @@
+ #  include <log/log.h>
+ #elif DETECT_OS_LINUX || DETECT_OS_CYGWIN || DETECT_OS_SOLARIS || DETECT_OS_HURD
+ #  include <unistd.h>
+-#elif DETECT_OS_OPENBSD
++#elif DETECT_OS_OPENBSD || DETECT_OS_FREEBSD
+ #  include <sys/resource.h>
+ #  include <sys/sysctl.h>
+ #elif DETECT_OS_APPLE || DETECT_OS_BSD
+@@ -213,9 +213,13 @@ os_get_available_system_memory(uint64_t *size)
+ 
+    free(meminfo);
+    return false;
+-#elif DETECT_OS_OPENBSD
++#elif defined(DETECT_OS_OPENBSD) || defined(DETECT_OS_FREEBSD)
+    struct rlimit rl;
++#if DETECT_OS_OPENBSD
+    int mib[] = { CTL_HW, HW_USERMEM64 };
++#elif DETECT_OS_FREEBSD
++   int mib[] = { CTL_HW, HW_USERMEM };
++#endif
+    int64_t mem_available;
+    size_t len = sizeof(mem_available);
+ 

Added: head/graphics/mesa-dri/files/patch-src_util_u__process.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-dri/files/patch-src_util_u__process.c	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,29 @@
+--- src/util/u_process.c.orig	2020-10-05 09:53:46 UTC
++++ src/util/u_process.c
+@@ -44,6 +44,11 @@
+ #include <mach-o/dyld.h>
+ #endif
+ 
++#if DETECT_OS_FREEBSD
++#include <sys/types.h>
++#include <sys/sysctl.h>
++#endif
++
+ #if defined(__linux__) && defined(HAVE_PROGRAM_INVOCATION_NAME)
+ 
+ static char *path = NULL;
+@@ -175,6 +180,14 @@ util_get_process_exec_path(char* process_path, size_t 
+    int result = _NSGetExecutablePath(process_path, &bufSize);
+ 
+    return (result == 0) ? strlen(process_path) : 0;
++#elif DETECT_OS_FREEBSD
++   int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 };
++   size_t read_len = len;
++
++   (void) sysctl(mib, 4, process_path, &read_len, NULL, 0);
++   process_path[len - 1] = '\0';
++
++   return read_len;
+ #elif DETECT_OS_UNIX
+    ssize_t r;
+ 

Added: head/graphics/mesa-dri/files/pkg-message.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-dri/files/pkg-message.in	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,9 @@
+[
+{ type: install
+  message: <<EOM
+mesa-dri was just installed.
+If you want VAAPI or VDPAU from mesa project please install
+mesa-gallium-va or mesa-gallium-vdpau
+EOM
+}
+]

Modified: head/graphics/mesa-dri/pkg-plist
==============================================================================
--- head/graphics/mesa-dri/pkg-plist	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-dri/pkg-plist	Mon Oct 12 08:30:54 2020	(r552109)
@@ -12,10 +12,8 @@ include/GL/internal/dri_interface.h
 %%R200_DRIVER%%lib/dri/r200_dri.so
 %%R300_GDRIVER%%lib/dri/r300_dri.so
 %%R600_GDRIVER%%lib/dri/r600_dri.so
-%%VAAPI%%%%R600_GDRIVER%%lib/dri/r600_drv_video.so
 %%R100_DRIVER%%lib/dri/radeon_dri.so
 %%RADEONSI_GDRIVER%%lib/dri/radeonsi_dri.so
-%%VAAPI%%%%RADEONSI_GDRIVER%%lib/dri/radeonsi_drv_video.so
 %%SWRAST_DRIVER%%lib/dri/swrast_dri.so
 %%SWRAST_GDRIVER%%lib/dri/swrast_dri.so
 %%SVGA_GDRIVER%%lib/dri/vmwgfx_dri.so
@@ -29,18 +27,6 @@ include/GL/internal/dri_interface.h
 @comment lib/libglapi.so
 @comment lib/libglapi.so.0
 @comment lib/libglapi.so.0.0.0
-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so
-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so.1
-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so.1.0
-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so.1.0.0
-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so
-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so.1
-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so.1.0
-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so.1.0.0
-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so
-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so.1
-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so.1.0
-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so.1.0.0
 %%INTEL_VDRIVER%%lib/libvulkan_intel.so
 %%AMD_VDRIVER%%lib/libvulkan_radeon.so
 libdata/pkgconfig/dri.pc

Added: head/graphics/mesa-gallium-va/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-gallium-va/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,44 @@
+# $FreeBSD$
+
+PORTNAME=	mesa-gallium-va
+PORTVERSION=	${MESAVERSION}
+CATEGORIES=	graphics
+
+COMMENT=	Mesa Gallium VAAPI drivers
+
+USES=		xorg
+USE_XORG=	xcb xfixes xrandr
+
+LIB_DEPENDS=	libva.so:multimedia/libva \
+		libzstd.so:archivers/zstd
+BUILD_DEPENDS=	wayland-protocols>=1.8:graphics/wayland-protocols
+
+.include <bsd.port.options.mk>
+.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
+
+ONLY_FOR_ARCHS=		i386 amd64 aarch64 powerpc64
+ONLY_FOR_ARCHS_REASON=	Used only by amd/radeon hardware
+
+MESON_ARGS+=	-Ddri-drivers="" \
+		-Dgallium-drivers="radeonsi,r600" \
+		-Dvulkan-drivers="" \
+		-Dgallium-vdpau=disabled \
+		-Dgallium-omx=disabled \
+		-Dgallium-xa=disabled \
+		-Dgallium-opencl=disabled \
+		-Dgallium-xvmc=disabled \
+		-Dgallium-nine=false \
+		-Degl=disabled \
+		-Dgbm=disabled \
+		-Dgles2=disabled \
+		-Dglx=disabled \
+		-Dopengl=false \
+		-Dshared-glapi=disabled \
+		-Dosmesa=none
+
+LDFLAGS_i386=		-Wl,-znotext
+
+MESON_ARGS+=	-Dgallium-va=enabled
+
+.include "${MASTERDIR}/Makefile.targets"
+.include <bsd.port.post.mk>

Added: head/graphics/mesa-gallium-va/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-gallium-va/pkg-descr	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,9 @@
+Mesa is a 3-D graphics library with an API which is very similar to that
+of OpenGL*.  To the extent that Mesa utilizes the OpenGL command syntax or
+state machine, it is being used with authorization from Silicon Graphics,
+Inc.  However, the author makes no claim that Mesa is in any way a
+compatible replacement for OpenGL or associated with Silicon Graphics, Inc.
+
+VA is a Gallium driver for video decoding on AMD hardware.
+
+WWW: https://www.mesa3d.org/

Added: head/graphics/mesa-gallium-va/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-gallium-va/pkg-plist	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,3 @@
+lib/dri/r600_drv_video.so
+lib/dri/radeonsi_drv_video.so
+@comment share/drirc.d/00-mesa-defaults.conf

Added: head/graphics/mesa-gallium-vdpau/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-gallium-vdpau/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,45 @@
+# $FreeBSD$
+
+PORTNAME=	mesa-gallium-vdpau
+PORTVERSION=	${MESAVERSION}
+CATEGORIES=	graphics
+
+COMMENT=	Mesa Gallium VDPAU drivers
+
+USES=		xorg
+USE_XORG=	xcb xfixes xrandr
+
+LIB_DEPENDS=	libva.so:multimedia/libva \
+		libvdpau.so:multimedia/libvdpau \
+		libzstd.so:archivers/zstd
+BUILD_DEPENDS=	wayland-protocols>=1.8:graphics/wayland-protocols
+
+.include <bsd.port.options.mk>
+.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
+
+ONLY_FOR_ARCHS=		i386 amd64 aarch64 powerpc64
+ONLY_FOR_ARCHS_REASON=	Used only by amd/radeon hardware
+
+MESON_ARGS+=	-Ddri-drivers="" \
+		-Dgallium-drivers="r300,r600,radeonsi" \
+		-Dvulkan-drivers="" \
+		-Dgallium-va=disabled \
+		-Dgallium-omx=disabled \
+		-Dgallium-xa=disabled \
+		-Dgallium-opencl=disabled \
+		-Dgallium-xvmc=disabled \
+		-Dgallium-nine=false \
+		-Degl=disabled \
+		-Dgbm=disabled \
+		-Dgles2=disabled \
+		-Dglx=disabled \
+		-Dopengl=false \
+		-Dshared-glapi=disabled \
+		-Dosmesa=none
+
+LDFLAGS_i386=	-Wl,-znotext
+
+MESON_ARGS+=	-Dgallium-vdpau=enabled
+
+.include "${MASTERDIR}/Makefile.targets"
+.include <bsd.port.post.mk>

Added: head/graphics/mesa-gallium-vdpau/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-gallium-vdpau/pkg-descr	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,9 @@
+Mesa is a 3-D graphics library with an API which is very similar to that
+of OpenGL*.  To the extent that Mesa utilizes the OpenGL command syntax or
+state machine, it is being used with authorization from Silicon Graphics,
+Inc.  However, the author makes no claim that Mesa is in any way a
+compatible replacement for OpenGL or associated with Silicon Graphics, Inc.
+
+VDPAU is a Gallium driver for video decoding on AMD hardware.
+
+WWW: https://www.mesa3d.org/

Added: head/graphics/mesa-gallium-vdpau/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/mesa-gallium-vdpau/pkg-plist	Mon Oct 12 08:30:54 2020	(r552109)
@@ -0,0 +1,13 @@
+lib/vdpau/libvdpau_r300.so
+lib/vdpau/libvdpau_r300.so.1
+lib/vdpau/libvdpau_r300.so.1.0
+lib/vdpau/libvdpau_r300.so.1.0.0
+lib/vdpau/libvdpau_r600.so
+lib/vdpau/libvdpau_r600.so.1
+lib/vdpau/libvdpau_r600.so.1.0
+lib/vdpau/libvdpau_r600.so.1.0.0
+lib/vdpau/libvdpau_radeonsi.so
+lib/vdpau/libvdpau_radeonsi.so.1
+lib/vdpau/libvdpau_radeonsi.so.1.0
+lib/vdpau/libvdpau_radeonsi.so.1.0.0
+@comment share/drirc.d/00-mesa-defaults.conf

Modified: head/graphics/mesa-gallium-xa/Makefile
==============================================================================
--- head/graphics/mesa-gallium-xa/Makefile	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-gallium-xa/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -1,12 +1,11 @@
 # Created by: johalun
 # $FreeBSD$
 
-PORTNAME=	libxatracker
+PORTNAME=	mesa-gallium-xa
 PORTVERSION=	${MESAVERSION}
-PORTREVISION=	5
 CATEGORIES=	graphics
 
-COMMENT=	Mesa XA state tracker
+COMMENT=	Mesa Gallium XA state tracker
 
 USES=		xorg
 USE_XORG=	xorgproto
@@ -20,25 +19,25 @@ ONLY_FOR_ARCHS_REASON=	Used only by VMWare supported a
 MESON_ARGS+=	-Ddri-drivers="" \
 		-Dgallium-drivers="svga" \
 		-Dvulkan-drivers="" \
-		-Dgallium-vdpau=false \
+		-Dplatforms="" \
+		-Dgallium-vdpau=disabled \
 		-Dgallium-omx=disabled \
-		-Dgallium-va=false \
+		-Dgallium-va=disabled \
 		-Dgallium-opencl=disabled \
-		-Dgallium-xvmc=false \
+		-Dgallium-xvmc=disabled \
 		-Dgallium-nine=false \
-		-Degl=false \
-		-Dgbm=false \
-		-Dgles1=false \
-		-Dgles2=false \
+		-Degl=disabled \
+		-Dgbm=disabled \
+		-Dgles1=disabled \
+		-Dgles2=disabled \
 		-Dglx=disabled \
 		-Dopengl=false \
-		-Dshared-glapi=false \
-		-Dosmesa=none \
-		-Dplatforms=
+		-Dshared-glapi=disabled \
+		-Dosmesa=none
 
 LDFLAGS_i386=		-Wl,-znotext
 
-MESON_ARGS+=	-Dgallium-xa=true
+MESON_ARGS+=	-Dgallium-xa=enabled
 
 .include "${MASTERDIR}/Makefile.targets"
 .include <bsd.port.post.mk>

Modified: head/graphics/mesa-libs/Makefile
==============================================================================
--- head/graphics/mesa-libs/Makefile	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-libs/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -3,7 +3,6 @@
 
 PORTNAME=	mesa-libs
 PORTVERSION=	${MESAVERSION}
-PORTREVISION=	3
 CATEGORIES=	graphics
 
 COMMENT=	OpenGL libraries that support GLX and EGL clients
@@ -11,15 +10,13 @@ COMMENT=	OpenGL libraries that support GLX and EGL cli
 CONFLICTS_INSTALL=	libglvnd # include/GL/gl.h
 
 OPTIONS_GROUP=			PLATFORM
-OPTIONS_GROUP_PLATFORM=		PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS
+OPTIONS_GROUP_PLATFORM=		PLATFORM_X11 PLATFORM_WAYLAND
 PLATFORM_X11_DESC=		Enable X11 support for GBM/EGL
 PLATFORM_WAYLAND_DESC=		Enable Wayland support for GBM/EGL
-PLATFORM_DRM_DESC=		Enable DRM support for GBM/EGL
-PLATFORM_SURFACELESS_DESC=	Enable Surfaceless support for GBM/EGL
 PLATFORM_WAYLAND_IMPLIES=	WAYLAND
 
-OPTIONS_DEFINE=	WAYLAND
-OPTIONS_DEFAULT=WAYLAND PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS
+OPTIONS_DEFINE=	WAYLAND ZSTD
+OPTIONS_DEFAULT=WAYLAND PLATFORM_X11 PLATFORM_WAYLAND ZSTD
 OPTIONS_SUB=	yes
 
 WAYLAND_DESC=		Enable support for the Wayland platform in EGL
@@ -27,21 +24,25 @@ WAYLAND_BUILD_DEPENDS=	wayland-protocols>=1.8:graphics
 WAYLAND_LIB_DEPENDS=	libwayland-egl.so:graphics/wayland
 WAYLAND_IMPLIES=	PLATFORM_WAYLAND
 
+ZSTD_DESC=		Use ZSTD for shader cache
+ZSTD_LIB_DEPENDS=	libzstd.so:archivers/zstd
+ZSTD_MESON_ENABLED=	zstd
+
 .include <bsd.port.options.mk>
 .include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
 
 MESON_ARGS+=	-Dgallium-drivers="" \
-		-Dgallium-vdpau=false \
-		-Dgallium-xvmc=false \
+		-Dgallium-vdpau=disabled \
+		-Dgallium-xvmc=disabled \
 		-Dgallium-omx=disabled \
-		-Dgallium-va=false \
-		-Dgallium-xa=false \
+		-Dgallium-va=disabled \
+		-Dgallium-xa=disabled \
 		-Dgallium-nine=false \
 		-Dgallium-clover=disabled \
 		-Dosmesa=none \
 		-Dtools="" \
-		-Degl=true \
-		-Dgbm=true \
+		-Degl=enabled \
+		-Dgbm=enabled \
 		-Dvulkan-drivers=""
 # Building EGL and GBM requires a dri driver so add swrast
 MESON_ARGS+=	-Ddri-drivers="swrast"
@@ -58,14 +59,6 @@ PLIST_SUB+=	GLX="@comment "
 
 .if ${PORT_OPTIONS:MPLATFORM_WAYLAND} && ${PORT_OPTIONS:MWAYLAND}
 MESA_PLATFORMS+=	wayland
-.endif
-
-.if ${PORT_OPTIONS:MPLATFORM_DRM}
-MESA_PLATFORMS+=	drm
-.endif
-
-.if ${PORT_OPTIONS:MPLATFORM_SURFACELESS}
-MESA_PLATFORMS+=	surfaceless
 .endif
 
 MESON_ARGS+=	-Dplatforms="${MESA_PLATFORMS:ts,:tl}"

Modified: head/graphics/mesa-libs/pkg-plist
==============================================================================
--- head/graphics/mesa-libs/pkg-plist	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/graphics/mesa-libs/pkg-plist	Mon Oct 12 08:30:54 2020	(r552109)
@@ -4,11 +4,9 @@ include/EGL/eglextchromium.h
 include/EGL/eglmesaext.h
 include/EGL/eglplatform.h
 include/GL/gl.h
-include/GL/gl_mangle.h
 include/GL/glcorearb.h
 include/GL/glext.h
 %%GLX%%include/GL/glx.h
-%%GLX%%include/GL/glx_mangle.h
 %%GLX%%include/GL/glxext.h
 @comment include/GL/internal/dri_interface.h
 include/GLES/egl.h

Modified: head/lang/clover/Makefile
==============================================================================
--- head/lang/clover/Makefile	Mon Oct 12 07:46:17 2020	(r552108)
+++ head/lang/clover/Makefile	Mon Oct 12 08:30:54 2020	(r552109)
@@ -2,14 +2,14 @@
 
 PORTNAME=	clover
 PORTVERSION=	${MESAVERSION}
-PORTREVISION=	1
 CATEGORIES=	lang
 
 COMMENT=	Mesa OpenCL implementation for AMD GPUs
 
 BUILD_DEPENDS=	libclc>=0.3.0:devel/libclc \
 		opencl>=0:devel/opencl
-LIB_DEPENDS=	libOpenCL.so:devel/ocl-icd
+LIB_DEPENDS=	libOpenCL.so:devel/ocl-icd \
+		libzstd.so:archivers/zstd
 RUN_DEPENDS=	libclc>=0.3.0:devel/libclc \
 		opencl>=0:devel/opencl
 
@@ -20,24 +20,24 @@ ONLY_FOR_ARCHS_REASON=	Clover needs a GPU supported by
 .include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
 
 MESON_ARGS+=	-Ddri-drivers="" \
-		-Dgallium-drivers=r600,radeonsi \
-		-Dvulkan-drivers="" \
 		-Dplatforms="" \
-		-Dgallium-vdpau=false \
+		-Dvulkan-drivers="" \
+		-Dgallium-nine=false \
 		-Dgallium-omx=disabled \
-		-Dgallium-va=false \
 		-Dgallium-opencl=disabled \
-		-Dgallium-xa=false \
-		-Dgallium-xvmc=false \
-		-Dgallium-nine=false \
-		-Dgles1=false \
-		-Dgles2=false \
+		-Dgallium-va=disabled \
+		-Dgallium-vdpau=disabled \
+		-Dgallium-xa=disabled \
+		-Dgallium-xvmc=disabled \
+		-Dgles1=disabled \
+		-Dgles2=disabled \
 		-Dopengl=false \
 		-Dglx=disabled \
-		-Degl=false \
-		-Dgbm=false \
+		-Degl=disabled \
+		-Dgbm=disabled \
+		-Dtools="" \
 		-Dgallium-opencl=icd \
-		-Dtools=""
+		-Dgallium-drivers=r600,radeonsi
 
 LDFLAGS_i386=		-Wl,-znotext
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202010120830.09C8UsF1086004>