summaryrefslogtreecommitdiff
path: root/graphics
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2019-01-17 15:34:37 +0000
committerJan Beich <jbeich@FreeBSD.org>2019-01-17 15:34:37 +0000
commit435f466d596e071a865b1993cf63985299ecb0ad (patch)
tree471d0119a117cc324c8c84a763b0c5b4b6ccab35 /graphics
parentWith Qt 4.x sadly going away in less than two months, remove the QT4 (diff)
graphics/mesa-{libs,dri}: update to 18.2.8
- TEXTURE option is always enabled per https://cgit.freedesktop.org/mesa/mesa/commit/?id=66673bef941a Changes: https://www.mesa3d.org/relnotes/18.2.0.html Changes: https://www.mesa3d.org/relnotes/18.2.1.html Changes: https://www.mesa3d.org/relnotes/18.2.2.html Changes: https://www.mesa3d.org/relnotes/18.2.3.html Changes: https://www.mesa3d.org/relnotes/18.2.4.html Changes: https://www.mesa3d.org/relnotes/18.2.5.html Changes: https://www.mesa3d.org/relnotes/18.2.6.html Changes: https://www.mesa3d.org/relnotes/18.2.7.html Changes: https://www.mesa3d.org/relnotes/18.2.8.html PR: 230298 Tested by: Samy Mahmoudi, Kevin Oberman Approved by: maintainer timeout (2 weeks after 2019Q1) Differential Revision: https://reviews.freebsd.org/D16571
Notes
Notes: svn path=/head/; revision=490569
Diffstat (limited to 'graphics')
-rw-r--r--graphics/mesa-dri/Makefile9
-rw-r--r--graphics/mesa-dri/Makefile.common2
-rw-r--r--graphics/mesa-dri/distinfo6
-rw-r--r--graphics/mesa-dri/files/configure.ac12
-rw-r--r--graphics/mesa-dri/files/patch-configure68
-rw-r--r--graphics/mesa-dri/files/patch-llvm752
-rw-r--r--graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c46
-rw-r--r--graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c2
-rw-r--r--graphics/mesa-dri/files/patch-src_intel_tools_error2aub.c14
-rw-r--r--graphics/mesa-dri/files/patch-src_util_build__id.c16
-rw-r--r--graphics/mesa-dri/pkg-help12
-rw-r--r--graphics/mesa-dri/pkg-plist4
-rw-r--r--graphics/mesa-libs/Makefile7
-rw-r--r--graphics/mesa-libs/pkg-plist4
14 files changed, 145 insertions, 109 deletions
diff --git a/graphics/mesa-dri/Makefile b/graphics/mesa-dri/Makefile
index e1aa9d603698..b221669d7fe3 100644
--- a/graphics/mesa-dri/Makefile
+++ b/graphics/mesa-dri/Makefile
@@ -3,20 +3,16 @@
PORTNAME= mesa-dri
PORTVERSION= ${MESAVERSION}
-PORTREVISION= 3
CATEGORIES= graphics
COMMENT= OpenGL hardware acceleration drivers for DRI2+
USE_XORG= xorgproto x11 xdamage xext xfixes xshmfence xv xvmc
-OPTIONS_DEFINE= TEXTURE VAAPI VDPAU WAYLAND
-OPTIONS_DEFAULT=TEXTURE WAYLAND
+OPTIONS_DEFINE= VAAPI VDPAU WAYLAND
+OPTIONS_DEFAULT=WAYLAND
OPTIONS_SUB= yes
-TEXTURE_DESC= Enable texture-float support (patent encumbered)
-TEXTURE_CONFIGURE_ENABLE= texture-float
-
VAAPI_CONFIGURE_ENABLE= va
VAAPI_LIB_DEPENDS= libva.so:multimedia/libva
VAAPI_USE= XORG=xcb
@@ -72,6 +68,7 @@ EXTRA_PATCHES+= ${PATCHDIR}/extra-src_gallium_drivers_vc4_Makefile.in
.if ${VULKAN_DRIVERS}
BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}mako>0:textproc/py-mako@${PY_FLAVOR}
+USE_XORG+= xcb xrandr
.endif
LDFLAGS_i386= -Wl,-znotext
diff --git a/graphics/mesa-dri/Makefile.common b/graphics/mesa-dri/Makefile.common
index 0dba6c5044a9..ef34931e0f41 100644
--- a/graphics/mesa-dri/Makefile.common
+++ b/graphics/mesa-dri/Makefile.common
@@ -14,7 +14,7 @@
MESAVERSION= ${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/}
MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/}
-MESABASEVERSION= 18.1.9
+MESABASEVERSION= 18.2.8
# if there is a subversion, don't include the '-' between 7.11-rc2.
MESASUBVERSION=
diff --git a/graphics/mesa-dri/distinfo b/graphics/mesa-dri/distinfo
index 245db76d95e0..f40a548d172b 100644
--- a/graphics/mesa-dri/distinfo
+++ b/graphics/mesa-dri/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1538226082
-SHA256 (mesa-18.1.9.tar.xz) = 55f5778d58a710a63d6635f000535768faf7db9e8144dc0f4fd1989f936c1a83
-SIZE (mesa-18.1.9.tar.xz) = 11146188
+TIMESTAMP = 1545926521
+SHA256 (mesa-18.2.8.tar.xz) = 1d2ed9fd435d86d95b7215b287258d3e6b1180293a36f688e5a2efc18298d863
+SIZE (mesa-18.2.8.tar.xz) = 11385224
diff --git a/graphics/mesa-dri/files/configure.ac b/graphics/mesa-dri/files/configure.ac
index 918d6e0be70a..bce4180de23e 100644
--- a/graphics/mesa-dri/files/configure.ac
+++ b/graphics/mesa-dri/files/configure.ac
@@ -30,6 +30,18 @@
dri3_default=yes
;;
*)
+@@ -1884,9 +1884,9 @@ fi
+
+ if test x"$have_xlease" = xyes; then
+ randr_modules="x11-xcb xcb-randr"
+- PKG_CHECK_MODULES([XCB_RANDR], [$randr_modules])
++ PKG_CHECK_MODULES([XCB_RANDR], [$randr_modules],, [have_xlease=no])
+ xlib_randr_modules="xrandr"
+- PKG_CHECK_MODULES([XLIB_RANDR], [$xlib_randr_modules])
++ PKG_CHECK_MODULES([XLIB_RANDR], [$xlib_randr_modules],, [have_xlease=no])
+ fi
+
+ AM_CONDITIONAL(HAVE_PLATFORM_X11, echo "$platforms" | grep -q 'x11')
@@ -2061,8 +2070,6 @@ if test "x$enable_opencl" = xyes; then
CLANG_LIBDIR=${LLVM_LIBDIR}
fi
diff --git a/graphics/mesa-dri/files/patch-configure b/graphics/mesa-dri/files/patch-configure
index 3b7516c0e152..c78bbcf54b00 100644
--- a/graphics/mesa-dri/files/patch-configure
+++ b/graphics/mesa-dri/files/patch-configure
@@ -51,6 +51,74 @@
dri3_default=yes
;;
*)
+@@ -26000,31 +26000,11 @@ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$XCB_RANDR_PKG_ERRORS" >&5
+
+- as_fn_error $? "Package requirements ($randr_modules) were not met:
+-
+-$XCB_RANDR_PKG_ERRORS
+-
+-Consider adjusting the PKG_CONFIG_PATH environment variable if you
+-installed software in a non-standard prefix.
+-
+-Alternatively, you may set the environment variables XCB_RANDR_CFLAGS
+-and XCB_RANDR_LIBS to avoid the need to call pkg-config.
+-See the pkg-config man page for more details." "$LINENO" 5
++ have_xlease=no
+ elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ $as_echo "no" >&6; }
+- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+-as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
+-is in your PATH or set the PKG_CONFIG environment variable to the full
+-path to pkg-config.
+-
+-Alternatively, you may set the environment variables XCB_RANDR_CFLAGS
+-and XCB_RANDR_LIBS to avoid the need to call pkg-config.
+-See the pkg-config man page for more details.
+-
+-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+-See \`config.log' for more details" "$LINENO" 5; }
++ have_xlease=no
+ else
+ XCB_RANDR_CFLAGS=$pkg_cv_XCB_RANDR_CFLAGS
+ XCB_RANDR_LIBS=$pkg_cv_XCB_RANDR_LIBS
+@@ -26092,31 +26072,11 @@ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$XLIB_RANDR_PKG_ERRORS" >&5
+
+- as_fn_error $? "Package requirements ($xlib_randr_modules) were not met:
+-
+-$XLIB_RANDR_PKG_ERRORS
+-
+-Consider adjusting the PKG_CONFIG_PATH environment variable if you
+-installed software in a non-standard prefix.
+-
+-Alternatively, you may set the environment variables XLIB_RANDR_CFLAGS
+-and XLIB_RANDR_LIBS to avoid the need to call pkg-config.
+-See the pkg-config man page for more details." "$LINENO" 5
++ have_xlease=no
+ elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ $as_echo "no" >&6; }
+- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+-as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
+-is in your PATH or set the PKG_CONFIG environment variable to the full
+-path to pkg-config.
+-
+-Alternatively, you may set the environment variables XLIB_RANDR_CFLAGS
+-and XLIB_RANDR_LIBS to avoid the need to call pkg-config.
+-See the pkg-config man page for more details.
+-
+-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+-See \`config.log' for more details" "$LINENO" 5; }
++ have_xlease=no
+ else
+ XLIB_RANDR_CFLAGS=$pkg_cv_XLIB_RANDR_CFLAGS
+ XLIB_RANDR_LIBS=$pkg_cv_XLIB_RANDR_LIBS
@@ -27096,9 +27106,6 @@ rm -f core conftest.err conftest.$ac_obj
CLANG_LIBDIR=${LLVM_LIBDIR}
fi
diff --git a/graphics/mesa-dri/files/patch-llvm7 b/graphics/mesa-dri/files/patch-llvm7
deleted file mode 100644
index a64040e86c95..000000000000
--- a/graphics/mesa-dri/files/patch-llvm7
+++ /dev/null
@@ -1,52 +0,0 @@
-commit d424be0feda5
-Author: Jan Vesely <jan.vesely@rutgers.edu>
-Date: Tue May 22 17:52:30 2018 -0400
-
- clover: Fix build after llvm r332881.
-
- v2: fix whitespace and indentation
-
- r332881 added an extra parameter to the emit function.
- Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106619
- Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
- Reviewed-By: Aaron Watry <awatry@gmail.com>
- Tested-By: Aaron Watry <awatry@gmail.com>
- Tested-by: Kai Wasserbäch <kai@dev.carbon-project.org>
-
---- src/gallium/state_trackers/clover/llvm/codegen/native.cpp.orig 2018-07-27 13:52:17 UTC
-+++ src/gallium/state_trackers/clover/llvm/codegen/native.cpp
-@@ -126,13 +126,12 @@ namespace {
- {
- compat::pass_manager pm;
- ::llvm::raw_svector_ostream os { data };
-- compat::raw_ostream_to_emit_file fos(os);
-
- mod.setDataLayout(compat::get_data_layout(*tm));
- tm->Options.MCOptions.AsmVerbose =
- (ft == TargetMachine::CGFT_AssemblyFile);
-
-- if (tm->addPassesToEmitFile(pm, fos, ft))
-+ if (compat::add_passes_to_emit_file(*tm, pm, os, ft))
- fail(r_log, build_error(), "TargetMachine can't emit this file");
-
- pm.run(mod);
---- src/gallium/state_trackers/clover/llvm/compat.hpp.orig 2018-07-27 13:52:17 UTC
-+++ src/gallium/state_trackers/clover/llvm/compat.hpp
-@@ -247,6 +247,17 @@ namespace clover {
- ::llvm::WriteBitcodeToFile(&mod, os);
- #endif
- }
-+
-+ template<typename TM, typename PM, typename OS, typename FT>
-+ bool add_passes_to_emit_file(TM &tm, PM &pm, OS &os, FT &ft)
-+ {
-+ compat::raw_ostream_to_emit_file fos(os);
-+#if HAVE_LLVM >= 0x0700
-+ return tm.addPassesToEmitFile(pm, fos, nullptr, ft);
-+#else
-+ return tm.addPassesToEmitFile(pm, fos, ft);
-+#endif
-+ }
- }
- }
- }
diff --git a/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c b/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c
index 7dd86b562f3d..8a42a522da9b 100644
--- a/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c
+++ b/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c
@@ -1,14 +1,34 @@
-# We don't have MAP_NORESERVE so use MAP_NOSYNC | MAP_NOCORE and
-# hope for the best (this alloc is too big but it's only a test)
-#
---- src/intel/tools/aubinator.c.orig 2017-10-02 15:49:02 UTC
+- Partially implement memfd_create() via mkostemp()
+
+--- src/intel/tools/aubinator.c.orig 2018-08-02 15:41:20 UTC
+++ src/intel/tools/aubinator.c
-@@ -637,7 +637,7 @@ int main(int argc, char *argv[])
- /* mmap a terabyte for our gtt space. */
- gtt_size = 1ull << 40;
- gtt = mmap(NULL, gtt_size, PROT_READ | PROT_WRITE,
-- MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0);
-+ MAP_PRIVATE | MAP_ANONYMOUS | MAP_NOSYNC | MAP_NOCORE, -1, 0);
- if (gtt == MAP_FAILED) {
- fprintf(stderr, "failed to alloc gtt space: %s\n", strerror(errno));
- exit(EXIT_FAILURE);
+@@ -52,7 +52,29 @@
+ static inline int
+ memfd_create(const char *name, unsigned int flags)
+ {
++#if defined(__linux__)
+ return syscall(SYS_memfd_create, name, flags);
++#elif defined(__FreeBSD__)
++ return shm_open(SHM_ANON, flags | O_RDWR | O_CREAT, 0600);
++#else /* DragonFly, NetBSD, OpenBSD, Solaris */
++ char template[] = "/tmp/shmfd-XXXXXX";
++#ifdef HAVE_MKOSTEMP
++ int fd = mkostemp(template, flags);
++#else
++ int fd = mkstemp(template);
++ if (flags & O_CLOEXEC) {
++ int flags = fcntl(fd, F_GETFD);
++ if (flags != -1) {
++ flags |= FD_CLOEXEC;
++ (void) fcntl(fd, F_SETFD, &flags);
++ }
++ }
++#endif /* HAVE_MKOSTEMP */
++ if (fd >= 0)
++ unlink(template);
++
++ return fd;
++#endif /* __linux__ */
+ }
+ #endif
+
diff --git a/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c b/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c
index 0fb81f672750..4b01baa5c4d1 100644
--- a/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c
+++ b/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c
@@ -6,7 +6,7 @@
*
*/
-+#ifdef __FreeBSD__
++#if defined(__FreeBSD__) && __FreeBSD__ < 12
+#define _WITH_GETLINE
+#endif
#include <stdbool.h>
diff --git a/graphics/mesa-dri/files/patch-src_intel_tools_error2aub.c b/graphics/mesa-dri/files/patch-src_intel_tools_error2aub.c
new file mode 100644
index 000000000000..cd14553b6c51
--- /dev/null
+++ b/graphics/mesa-dri/files/patch-src_intel_tools_error2aub.c
@@ -0,0 +1,14 @@
+# expose getline in FreeBSD's stdio.h
+#
+--- src/intel/tools/error2aub.c.orig 2018-08-09 00:34:30 UTC
++++ src/intel/tools/error2aub.c
+@@ -26,6 +26,9 @@
+ #include <getopt.h>
+ #include <inttypes.h>
+ #include <signal.h>
++#if defined(__FreeBSD__) && __FreeBSD__ < 12
++#define _WITH_GETLINE
++#endif
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
diff --git a/graphics/mesa-dri/files/patch-src_util_build__id.c b/graphics/mesa-dri/files/patch-src_util_build__id.c
index b5d3ecace969..4b7b69d6b8ee 100644
--- a/graphics/mesa-dri/files/patch-src_util_build__id.c
+++ b/graphics/mesa-dri/files/patch-src_util_build__id.c
@@ -2,16 +2,14 @@
#
--- src/util/build_id.c.orig 2017-12-21 17:31:22 UTC
+++ src/util/build_id.c
-@@ -34,7 +34,11 @@
+@@ -38,6 +38,10 @@
+ #define ElfW(type) Elf_##type
#endif
- #ifndef ElfW
--#define ElfW(type) Elf_##type
-+#ifdef __LP64__
-+#define ElfW(type) Elf64_##type
-+#else
-+#define ElfW(type) Elf32_##type
++#if defined(__FreeBSD__) && __FreeBSD__ < 12
++typedef Elf_Note Elf_Nhdr;
+#endif
- #endif
++
+ struct build_id_note {
+ ElfW(Nhdr) nhdr;
- #define ALIGN(val, align) (((val) + (align) - 1) & ~((align) - 1))
diff --git a/graphics/mesa-dri/pkg-help b/graphics/mesa-dri/pkg-help
index 03d56b5752d8..675f349c22b9 100644
--- a/graphics/mesa-dri/pkg-help
+++ b/graphics/mesa-dri/pkg-help
@@ -2,14 +2,4 @@ VAAPI and VDPAU options enable building Gallium based VA-API and VDPAU
drivers to decode video on the GPU via libva and libvdpau, respectively.
Gallium based VAAPI and VDPAU drivers are only available for Radeon GPUs.
-Both GPU decode options require newer drm drivers than are currently present
-in a released FreeBSD kernel. These are options for DRM-next and DragonFly.
-
-The TEXTURE option enables texture-float support, which SGI claims requires
-US Patent #6,650,327 [1], filed Jun 16, 1998 thus expiring on Jun 16, 2018.
-Use may require a license depending on jurisdiction, consult a lawyer.
-
-See docs/patents.txt in the Mesa tarball or the following URLs:
-
-[1] https://www.google.com/patents/US6650327
-[2] http://www.opengl.org/registry/specs/ARB/texture_float.txt
+VAAPI and VDPAU require graphics/drm-stable-kmod or newer on FreeBSD.
diff --git a/graphics/mesa-dri/pkg-plist b/graphics/mesa-dri/pkg-plist
index 96b9268b3104..14b399177c5b 100644
--- a/graphics/mesa-dri/pkg-plist
+++ b/graphics/mesa-dri/pkg-plist
@@ -83,15 +83,11 @@ include/GL/internal/dri_interface.h
%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so.1.0.0
%%INTEL_VDRIVER%%lib/libvulkan_intel.so
%%RADEON_VDRIVER%%lib/libvulkan_radeon.so
-@comment lib/libwayland-egl.so
-@comment lib/libwayland-egl.so.1
-@comment lib/libwayland-egl.so.1.0.0
libdata/pkgconfig/dri.pc
@comment libdata/pkgconfig/egl.pc
@comment libdata/pkgconfig/gbm.pc
@comment libdata/pkgconfig/gl.pc
@comment libdata/pkgconfig/glesv2.pc
@comment libdata/pkgconfig/osmesa.pc
-@comment libdata/pkgconfig/wayland-egl.pc
%%INTEL_VDRIVER%%share/vulkan/icd.d/intel_icd.%%ARCH%%.json
%%RADEON_VDRIVER%%share/vulkan/icd.d/radeon_icd.%%ARCH%%.json
diff --git a/graphics/mesa-libs/Makefile b/graphics/mesa-libs/Makefile
index ccac2ee952f9..413d8cf24562 100644
--- a/graphics/mesa-libs/Makefile
+++ b/graphics/mesa-libs/Makefile
@@ -3,7 +3,6 @@
PORTNAME= mesa-libs
PORTVERSION= ${MESAVERSION}
-PORTREVISION= 4
CATEGORIES= graphics
COMMENT= OpenGL libraries that support GLX and EGL clients
@@ -17,8 +16,7 @@ OPTIONS_SUB= yes
WAYLAND_DESC= Enable support for the Wayland platform in EGL
WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.8:graphics/wayland-protocols
-WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \
- libwayland-server.so:graphics/wayland
+WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland
.include <bsd.port.options.mk>
.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
@@ -33,8 +31,7 @@ MESA_BUILD_WRKSRC= src/mapi src/util
MESA_INSTALL_WRKSRC= src/mapi
.if ${PORT_OPTIONS:MWAYLAND}
-MESA_BUILD_WRKSRC+= src/egl/wayland/wayland-drm src/egl/wayland/wayland-egl
-MESA_INSTALL_WRKSRC+= src/egl/wayland/wayland-egl
+MESA_BUILD_WRKSRC+= src/egl/wayland/wayland-drm
.endif
MESA_BUILD_WRKSRC+= src/gbm src/glx
diff --git a/graphics/mesa-libs/pkg-plist b/graphics/mesa-libs/pkg-plist
index ed52d98e35de..c13d3cb1ba0c 100644
--- a/graphics/mesa-libs/pkg-plist
+++ b/graphics/mesa-libs/pkg-plist
@@ -36,11 +36,7 @@ lib/libgbm.so.1.0.0
lib/libglapi.so
lib/libglapi.so.0
lib/libglapi.so.0.0.0
-@comment %%WAYLAND%%lib/libwayland-egl.so
-@comment %%WAYLAND%%lib/libwayland-egl.so.1
-@comment %%WAYLAND%%lib/libwayland-egl.so.1.0.0
libdata/pkgconfig/egl.pc
libdata/pkgconfig/gbm.pc
libdata/pkgconfig/gl.pc
libdata/pkgconfig/glesv2.pc
-@comment %%WAYLAND%%libdata/pkgconfig/wayland-egl.pc