svn commit: r441424 - in head: graphics/libosmesa graphics/mesa-dri graphics/mesa-dri/files graphics/mesa-libs lang/clover
Matthew Rezny
rezny at FreeBSD.org
Sun May 21 19:30:57 UTC 2017
Author: rezny
Date: Sun May 21 19:30:54 2017
New Revision: 441424
URL: https://svnweb.freebsd.org/changeset/ports/441424
Log:
Update the Mesa ports to 17.1.0
* restrict use of LLVM for Gallium to platforms with LLVM in base to fix
runtime errors when Gallium is built with a mix of GCC and LLVM
* make LLVM only a BUILD_DEPEND for mesa-libs, which needs it to build EGL
* add pkg-plist entries for freedreno and vc4 drivers [1]
* remove extraneous SHEBANG_FILES entry to fix build of freedreno [2,3]
* correct typo in libosmesa, which may have affected the Gallium build [4]
PR: 219247 [1], 219406 [3]
Submitted by: jbeich [1] (2 patches, pkg-plist fix), strejda (vc4 CFLAGS)
Reported by: strejda [2], andrew [3], linimon [4]
Approved by: swills (mentor)
Differential Revision: https://reviews.freebsd.org/D10842
Added:
head/graphics/mesa-dri/files/patch-src_gallium_drivers_vc4_Makefile.in (contents, props changed)
head/graphics/mesa-dri/files/patch-src_gallium_drivers_vc4_vc4__bufmgr.c (contents, props changed)
head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c (contents, props changed)
head/graphics/mesa-dri/files/patch-src_util_build__id.c (contents, props changed)
Deleted:
head/graphics/mesa-dri/files/patch-src_util_ralloc.c
Modified:
head/graphics/libosmesa/Makefile
head/graphics/mesa-dri/Makefile
head/graphics/mesa-dri/Makefile.common
head/graphics/mesa-dri/Makefile.targets
head/graphics/mesa-dri/distinfo
head/graphics/mesa-dri/files/configure.ac
head/graphics/mesa-dri/files/patch-configure
head/graphics/mesa-dri/files/patch-src_egl_drivers_dri2_platform__x11.c
head/graphics/mesa-dri/files/patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c
head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c
head/graphics/mesa-dri/files/patch-src_mapi_glapi_gen_gl__gentable.py
head/graphics/mesa-dri/files/patch-src_mesa_main_compiler.h
head/graphics/mesa-dri/pkg-plist
head/graphics/mesa-libs/Makefile
head/lang/clover/Makefile
Modified: head/graphics/libosmesa/Makefile
==============================================================================
--- head/graphics/libosmesa/Makefile Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/libosmesa/Makefile Sun May 21 19:30:54 2017 (r441424)
@@ -7,20 +7,17 @@ CATEGORIES= graphics
COMMENT= Off-Screen Mesa implementation of the OpenGL API
-LIB_DEPENDS= libexpat.so:textproc/expat2 \
- libglapi.so:graphics/mesa-libs
-
USE_XORG= glproto
.include <bsd.port.options.mk>
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common"
+.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
CONFIGURE_ARGS+= --disable-dri --disable-egl --disable-gbm \
- --with-gallium-drivers=swrast
+ --disable-gles2 --with-gallium-drivers=swrast
MESA_BUILD_WRKSRC= src/util src/compiler src/mapi src/mesa
.if "${MESA_LLVM_VER}" != ""
-CONFGIURE_ARGS+= --enable-osmesa-gallium
+CONFIGURE_ARGS+= --enable-osmesa-gallium
MESA_BUILD_WRKSRC+= src/gallium
MESA_INSTALL_WRKSRC= src/gallium/state_trackers/osmesa src/gallium/targets/osmesa
.else
@@ -28,11 +25,11 @@ CONFIGURE_ARGS+= --enable-osmesa
MESA_INSTALL_WRKSRC= src/mesa/drivers/osmesa
.endif
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets"
+.include "${MASTERDIR}/Makefile.targets"
post-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/include/GL
${INSTALL_DATA} ${WRKSRC}/include/GL/osmesa.h \
${STAGEDIR}${PREFIX}/include/GL
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
Modified: head/graphics/mesa-dri/Makefile
==============================================================================
--- head/graphics/mesa-dri/Makefile Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/Makefile Sun May 21 19:30:54 2017 (r441424)
@@ -7,8 +7,6 @@ CATEGORIES= graphics
COMMENT= OpenGL hardware acceleration drivers for DRI2+
-LIB_DEPENDS= libdrm.so:graphics/libdrm \
- libexpat.so:textproc/expat2
RUN_DEPENDS= ${LOCALBASE}/lib/libtxc_dxtn.so:graphics/s2tc
USE_XORG= dri2proto dri3proto glproto presentproto x11 xdamage xext \
@@ -17,7 +15,6 @@ USE_XORG= dri2proto dri3proto glproto pr
OPTIONS_DEFINE= TEXTURE VAAPI VDPAU
OPTIONS_DEFAULT=TEXTURE
OPTIONS_SUB= yes
-PKGHELP= ${.CURDIR}/pkg-help
TEXTURE_DESC= Enable texture-float support (patent encumbered)
TEXTURE_CONFIGURE_ENABLE= texture-float
@@ -30,23 +27,30 @@ VDPAU_CONFIGURE_ENABLE= vdpau
VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau
.include <bsd.port.options.mk>
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common"
+.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
ALL_DRI_DRIVERS= I915 I965 RADEON R200 SWRAST
ALL_GALLIUM_DRIVERS= FREEDRENO R300 R600 RADEONSI SVGA SWRAST VC4
-DRI_DRIVERS= SWRAST
-GALLIUM_DRIVERS= SWRAST
+DRI_DRIVERS= SWRAST # classic swrast
+.if "${MESA_LLVM_VER}" != ""
+GALLIUM_DRIVERS= SWRAST # llvmpipe
+.else
+GALLIUM_DRIVERS= ""
+.endif
.if ${ARCH} == amd64 || ${ARCH} == i386 \
|| ${ARCH} == powerpc || ${ARCH} == powerpc64
DRI_DRIVERS+= RADEON R200
-GALLIUM_DRIVERS+= R300 R600 RADEONSI
-.elif ${ARCH} == armv6 || ${ARCH} == aarch64
-GALLIUM_DRIVERS+= FREEDRENO VC4
+GALLIUM_DRIVERS+= R300 R600
+.if "${MESA_LLVM_VER}" != "" # until PPC gets LLVM in base
+GALLIUM_DRIVERS+= RADEONSI
+.endif
.endif
.if ${ARCH} == amd64 || ${ARCH} == i386
DRI_DRIVERS+= I915 I965
GALLIUM_DRIVERS+= SVGA
+.elif ${ARCH} == armv6 || ${ARCH} == aarch64
+GALLIUM_DRIVERS+= FREEDRENO VC4
.endif
CONFIGURE_ARGS+= --with-dri-drivers="${DRI_DRIVERS:tl}" \
@@ -68,9 +72,9 @@ PLIST_SUB+= ${_gd}_GDRIVER="@comment "
. endif
.endfor
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets"
+.include "${MASTERDIR}/Makefile.targets"
post-install:
@${RM} -r ${STAGEDIR}/etc/OpenCL
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
Modified: head/graphics/mesa-dri/Makefile.common
==============================================================================
--- head/graphics/mesa-dri/Makefile.common Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/Makefile.common Sun May 21 19:30:54 2017 (r441424)
@@ -14,7 +14,7 @@
MESAVERSION= ${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/}
MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/}
-MESABASEVERSION= 17.0.4
+MESABASEVERSION= 17.1.0
# if there is a subversion, don't include the '-' between 7.11-rc2.
MESASUBVERSION=
@@ -27,14 +27,28 @@ DISTFILES= mesa-${MESADISTVERSION}${EXTR
MAINTAINER= x11 at FreeBSD.org
+COMPONENT= ${PORTNAME:tl:C/^lib//:C/mesa-//}
+
+BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs
+LIB_DEPENDS+= libexpat.so:textproc/expat2
+.if ${COMPONENT} != osmesa
+LIB_DEPENDS+= libdrm.so:graphics/libdrm
+.endif
+.if ${COMPONENT} != libs
+LIB_DEPENDS+= libglapi.so:graphics/mesa-libs
+.endif
+.if ${ARCH} == amd64 || ${ARCH} == i386
+LIB_DEPENDS+= libunwind.so:devel/libunwind
+.endif
+.if ${OPSYS} == DragonFly
+LIB_DEPENDS+= libelf.so:devel/libelf
+.endif
+
USES+= compiler:c++11-lib bison gettext-tools gmake libtool \
localbase pathfix pkgconfig python:2,build shebangfix tar:xz
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
-PKGINSTALL= ${.CURDIR}/pkg-install
-PKGDEINSTALL= ${.CURDIR}/pkg-deinstall
-
# only have one port to check with portscout.
.if ${PORTNAME} != mesa-dri
PORTSCOUT= ignore:1
@@ -43,34 +57,39 @@ PORTSCOUT= ignore:1
python_OLD_CMD= /usr/bin/env[[:space:]]python2 /usr/bin/python2 /bin/env[[:space:]]python
SHEBANG_FILES= src/gallium/*/*/*.py src/gallium/tools/trace/*.py \
src/gallium/drivers/svga/svgadump/svga_dump.py \
- src/gallium/drivers/freedreno/ir3/ir3_nir_trig.py \
src/mapi/glapi/gen/*.py src/mapi/mapi_abi.py \
src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py \
src/mesa/main/get_*.py src/util/format_srgb.py \
src/amd/*/*.py src/intel/genxml/gen_pack_header.py
-MASTERDIR= ${.CURDIR}/../../graphics/mesa-dri
+MASTERDIR= ${.CURDIR:H:H}/graphics/mesa-dri
PATCHDIR= ${MASTERDIR}/files
WRKSRC= ${WRKDIR}/mesa-${MESADISTVERSION}
DESCR= ${.CURDIR}/pkg-descr
PLIST= ${.CURDIR}/pkg-plist
+PKGHELP= ${.CURDIR}/pkg-help
+PKGINSTALL= ${.CURDIR}/pkg-install
+PKGDEINSTALL= ${.CURDIR}/pkg-deinstall
INSTALL_TARGET= install-strip
-COMPONENT= ${PORTNAME:tl:C/^lib//:C/mesa-//}
+.include <bsd.port.pre.mk>
-.if (${ARCH} != sparc64 && ${ARCH} != ia64) # no working LLVM
+# need LLVM for libEGL wherever possible, but mixing GCC and LLVM breaks Gallium
+.if ${CHOSEN_COMPILER_TYPE} == clang \
+ || (${COMPONENT} == libs && ${ARCH} != sparc64) # no working LLVM
MESA_LLVM_VER?= 40
.endif
.if "${MESA_LLVM_VER}" != ""
BUILD_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER}
+.if ${COMPONENT} != libs
RUN_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER}
+.endif
CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER}
LDFLAGS+= -Wl,-rpath=${LOCALBASE}/llvm${MESA_LLVM_VER}/lib
-# The gallium-llvm switch is the global llvm switch for historical reasons
-CONFIGURE_ARGS+= --enable-gallium-llvm
+CONFIGURE_ARGS+= --enable-llvm
.else
-CONFIGURE_ARGS+= --disable-gallium-llvm
+CONFIGURE_ARGS+= --disable-llvm
.endif
# There are issues that need to be fixed to use TLS model "initial-exec"
@@ -84,7 +103,3 @@ CONFIGURE_ARGS+= --disable-glx-tls
# we don't care about GLes v1
CONFIGURE_ARGS+= --disable-gles1
-.if ${OPSYS} == DragonFly
-LIB_DEPENDS+= libelf.so:devel/libelf
-.endif
-
Modified: head/graphics/mesa-dri/Makefile.targets
==============================================================================
--- head/graphics/mesa-dri/Makefile.targets Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/Makefile.targets Sun May 21 19:30:54 2017 (r441424)
@@ -5,13 +5,10 @@
post-patch:
.if ${OPSYS} == FreeBSD
@${REINPLACE_CMD} -e 's|x86_64|amd64|' ${WRKSRC}/configure
-# Clang 3.4 in 10.x on i386 fails with the following error when using "GCC atomics"
-#
-# glsl/cache.c:613:4: error: cannot compile this atomic library call yet
-# p_atomic_add(cache->size, size); note: expanded from macro 'p_atomic_add'
-# define p_atomic_add(v, i) (void) __atomic_add_fetch((v), (i), __ATOMIC_ACQ_REL)
-#
-.if ${OSVERSION} < 1100000 && ${ARCH} == "i386"
+# Disable use of GCC_ATOMICs on i386 to avoid build failures
+# Clang in 10.3 fails with cannot compile this atomic library call yet 'p_atomic_add'
+# Clang in 11.0 fails with undefined reference to `__atomic_fetch_add_8`
+.if ${ARCH} == "i386"
@${REINPLACE_CMD} -e 's|-DUSE_GCC_ATOMIC_BUILTINS||' ${WRKSRC}/configure
.endif
.endif # ${OPSYS}
Modified: head/graphics/mesa-dri/distinfo
==============================================================================
--- head/graphics/mesa-dri/distinfo Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/distinfo Sun May 21 19:30:54 2017 (r441424)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1492459376
-SHA256 (mesa-17.0.4.tar.xz) = 1269dc8545a193932a0779b2db5bce9be4a5f6813b98c38b93b372be8362a346
-SIZE (mesa-17.0.4.tar.xz) = 9454976
+TIMESTAMP = 1494841816
+SHA256 (mesa-17.1.0.tar.xz) = cf234a6ed4764673886b6661553b54675776ef0898f774716173cec890ac3b17
+SIZE (mesa-17.1.0.tar.xz) = 9849580
Modified: head/graphics/mesa-dri/files/configure.ac
==============================================================================
--- head/graphics/mesa-dri/files/configure.ac Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/files/configure.ac Sun May 21 19:30:54 2017 (r441424)
@@ -1,38 +1,5 @@
--- configure.ac.orig 2017-04-01 15:33:36 UTC
+++ configure.ac
-@@ -942,19 +942,19 @@ llvm_add_target() {
- # Call this inside ` ` to get the return value.
- # $1 is the llvm-config command with arguments.
- strip_unwanted_llvm_flags() {
-- # Use \> (marks the end of the word)
-- echo " `$1`" | sed \
-- -e 's/\s\+-m\S*//g' \
-- -e 's/\s\+-DNDEBUG\>//g' \
-- -e 's/\s\+-D_GNU_SOURCE\>//g' \
-- -e 's/\s\+-pedantic\>//g' \
-- -e 's/\s\+-W\S*//g' \
-- -e 's/\s\+-O\S*//g' \
-- -e 's/\s\+-g\S*//g' \
-- -e 's/-fno-rtti\>/-Fno-rtti/g' \
-- -e 's/\s\+-f\S*//g' \
-- -e 's/-Fno-rtti\>/-fno-rtti/g' \
-- -e 's/^ //'
-+ echo " `$1` " | sed -E \
-+ -e 's/[[[:space:]]]+-m[[^[:space:]]]*//g' \
-+ -e 's/[[[:space:]]]+-DNDEBUG[[[:space:]]]/ /g' \
-+ -e 's/[[[:space:]]]+-D_GNU_SOURCE[[[:space:]]]/ /g' \
-+ -e 's/[[[:space:]]]+-pedantic[[[:space:]]]/ /g' \
-+ -e 's/[[[:space:]]]+-W[[^[:space:]]]*//g' \
-+ -e 's/[[[:space:]]]+-O[[^[:space:]]]*//g' \
-+ -e 's/[[[:space:]]]+-g[[^[:space:]]]*//g' \
-+ -e 's/-fno-rtti[[[:space:]]]/-Fno-rtti /g' \
-+ -e 's/[[[:space:]]]+-f[[^[:space:]]]*//g' \
-+ -e 's/-Fno-rtti[[[:space:]]]/-fno-rtti /g' \
-+ -e 's/^[[[:space:]]]//' \
-+ -e 's/[[[:space:]]]$//'
- }
-
- llvm_set_environment_variables() {
@@ -1121,7 +1121,7 @@ fi
AC_SUBST(LIBSENSORS_LIBS)
Modified: head/graphics/mesa-dri/files/patch-configure
==============================================================================
--- head/graphics/mesa-dri/files/patch-configure Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/files/patch-configure Sun May 21 19:30:54 2017 (r441424)
@@ -1,39 +1,6 @@
---- configure.orig 2017-04-01 15:33:50 UTC
+--- configure.orig 2017-05-10 14:14:06 UTC
+++ configure
-@@ -22350,19 +22350,19 @@ llvm_add_target() {
- # Call this inside ` ` to get the return value.
- # $1 is the llvm-config command with arguments.
- strip_unwanted_llvm_flags() {
-- # Use \> (marks the end of the word)
-- echo " `$1`" | sed \
-- -e 's/\s\+-m\S*//g' \
-- -e 's/\s\+-DNDEBUG\>//g' \
-- -e 's/\s\+-D_GNU_SOURCE\>//g' \
-- -e 's/\s\+-pedantic\>//g' \
-- -e 's/\s\+-W\S*//g' \
-- -e 's/\s\+-O\S*//g' \
-- -e 's/\s\+-g\S*//g' \
-- -e 's/-fno-rtti\>/-Fno-rtti/g' \
-- -e 's/\s\+-f\S*//g' \
-- -e 's/-Fno-rtti\>/-fno-rtti/g' \
-- -e 's/^ //'
-+ echo " `$1` " | sed -E \
-+ -e 's/[[:space:]]+-m[^[:space:]]*//g' \
-+ -e 's/[[:space:]]+-DNDEBUG[[:space:]]/ /g' \
-+ -e 's/[[:space:]]+-D_GNU_SOURCE[[:space:]]/ /g' \
-+ -e 's/[[:space:]]+-pedantic[[:space:]]/ /g' \
-+ -e 's/[[:space:]]+-W[^[:space:]]*//g' \
-+ -e 's/[[:space:]]+-O[^[:space:]]*//g' \
-+ -e 's/[[:space:]]+-g[^[:space:]]*//g' \
-+ -e 's/-fno-rtti[[:space:]]/-Fno-rtti /g' \
-+ -e 's/[[:space:]]+-f[^[:space:]]*//g' \
-+ -e 's/-Fno-rtti[[:space:]]/-fno-rtti /g' \
-+ -e 's/^[[:space:]]//' \
-+ -e 's/[[:space:]]$//'
- }
-
- llvm_set_environment_variables() {
-@@ -22560,7 +22560,7 @@ fi
+@@ -22709,7 +22709,7 @@ fi
case "$host_os" in
@@ -42,7 +9,7 @@
dri3_default=yes
;;
*)
-@@ -24099,7 +24099,7 @@ fi
+@@ -24108,7 +24108,7 @@ fi
if test "x$enable_dri" = xyes; then
# Platform specific settings and drivers to build
case "$host_os" in
@@ -51,7 +18,7 @@
if test "x$enable_dri3" = xyes; then
DEFINES="$DEFINES -DHAVE_DRI3"
fi
-@@ -25851,9 +25851,19 @@ if test "x$enable_opencl" = xyes; then
+@@ -25972,9 +25972,19 @@ if test "x$enable_opencl" = xyes; then
as_fn_error $? "cannot enable OpenCL without Gallium" "$LINENO" 5
fi
@@ -71,7 +38,7 @@
if test "x$have_libclc" = xno; then
as_fn_error $? "pkg-config cannot find libclc.pc which is required to build clover.
-@@ -25916,9 +25926,6 @@ rm -f core conftest.err conftest.$ac_obj
+@@ -26037,9 +26047,6 @@ rm -f core conftest.err conftest.$ac_obj
CLANG_LIBDIR=${LLVM_LIBDIR}
fi
CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION}
Modified: head/graphics/mesa-dri/files/patch-src_egl_drivers_dri2_platform__x11.c
==============================================================================
--- head/graphics/mesa-dri/files/patch-src_egl_drivers_dri2_platform__x11.c Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/files/patch-src_egl_drivers_dri2_platform__x11.c Sun May 21 19:30:54 2017 (r441424)
@@ -1,8 +1,8 @@
# work-around for https://bugs.freedesktop.org/show_bug.cgi?id=100627
#
---- src/egl/drivers/dri2/platform_x11.c.orig 2017-04-01 15:33:36 UTC
+--- src/egl/drivers/dri2/platform_x11.c.orig 2017-05-10 14:13:57 UTC
+++ src/egl/drivers/dri2/platform_x11.c
-@@ -1507,7 +1507,11 @@
+@@ -1509,7 +1509,11 @@ dri2_initialize_x11(_EGLDriver *drv, _EG
if (!getenv("LIBGL_ALWAYS_SOFTWARE")) {
#ifdef HAVE_DRI3
Modified: head/graphics/mesa-dri/files/patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c
==============================================================================
--- head/graphics/mesa-dri/files/patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/files/patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c Sun May 21 19:30:54 2017 (r441424)
@@ -25,9 +25,9 @@ Signed-off-by: Emil Velikov <emil.l.veli
Reviewed-by: Francisco Jerez <currojerez at riseup.net>
---- src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c.orig 2017-04-01 15:33:37 UTC
+--- src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c.orig 2017-05-10 14:13:57 UTC
+++ src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
-@@ -225,6 +225,14 @@ pipe_loader_drm_probe_fd(struct pipe_loa
+@@ -209,6 +209,14 @@ pipe_loader_drm_probe_fd(struct pipe_loa
}
static int
@@ -42,7 +42,7 @@ Reviewed-by: Francisco Jerez <currojerez
open_drm_render_node_minor(int minor)
{
char path[PATH_MAX];
-@@ -236,8 +244,15 @@ open_drm_render_node_minor(int minor)
+@@ -220,8 +228,15 @@ open_drm_render_node_minor(int minor)
int
pipe_loader_drm_probe(struct pipe_loader_device **devs, int ndev)
{
@@ -59,7 +59,7 @@ Reviewed-by: Francisco Jerez <currojerez
for (i = DRM_RENDER_NODE_MIN_MINOR, j = 0;
i <= DRM_RENDER_NODE_MAX_MINOR; i++) {
struct pipe_loader_device *dev;
-@@ -251,6 +266,9 @@ pipe_loader_drm_probe(struct pipe_loader
+@@ -235,6 +250,9 @@ pipe_loader_drm_probe(struct pipe_loader
continue;
}
@@ -69,7 +69,7 @@ Reviewed-by: Francisco Jerez <currojerez
if (j < ndev) {
devs[j] = dev;
} else {
-@@ -260,6 +278,46 @@ pipe_loader_drm_probe(struct pipe_loader
+@@ -244,6 +262,46 @@ pipe_loader_drm_probe(struct pipe_loader
j++;
}
Added: head/graphics/mesa-dri/files/patch-src_gallium_drivers_vc4_Makefile.in
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/graphics/mesa-dri/files/patch-src_gallium_drivers_vc4_Makefile.in Sun May 21 19:30:54 2017 (r441424)
@@ -0,0 +1,13 @@
+# enable NEON instructions in the compiler when building the NEON codepath
+#
+--- src/gallium/drivers/vc4/Makefile.in.orig 2017-05-16 13:55:49 UTC
++++ src/gallium/drivers/vc4/Makefile.in
+@@ -669,7 +669,7 @@ libvc4_la_SOURCES = $(C_SOURCES)
+ libvc4_la_LIBADD = $(SIM_LIB) $(VC4_LIBS) libvc4_neon.la
+ libvc4_la_LDFLAGS = $(SIM_LDFLAGS)
+ libvc4_neon_la_SOURCES = vc4_tiling_lt.c
+-libvc4_neon_la_CFLAGS = $(AM_CFLAGS) -DVC4_BUILD_NEON
++libvc4_neon_la_CFLAGS = $(AM_CFLAGS) -DVC4_BUILD_NEON -march=armv7-a -mfpu=neon
+ EXTRA_DIST = kernel/README
+ all: all-am
+
Added: head/graphics/mesa-dri/files/patch-src_gallium_drivers_vc4_vc4__bufmgr.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/graphics/mesa-dri/files/patch-src_gallium_drivers_vc4_vc4__bufmgr.c Sun May 21 19:30:54 2017 (r441424)
@@ -0,0 +1,14 @@
+# define ETIME as ETIMEOUT same as in intel driver
+#
+--- src/gallium/drivers/vc4/vc4_bufmgr.c.orig 2017-05-10 14:13:57 UTC
++++ src/gallium/drivers/vc4/vc4_bufmgr.c
+@@ -27,6 +27,9 @@
+ #include <fcntl.h>
+ #include <xf86drm.h>
+ #include <xf86drmMode.h>
++#ifndef ETIME
++#define ETIME ETIMEDOUT
++#endif
+
+ #include "util/u_hash_table.h"
+ #include "util/u_memory.h"
Modified: head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c
==============================================================================
--- head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator.c Sun May 21 19:30:54 2017 (r441424)
@@ -1,9 +1,9 @@
# 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-04-01 15:33:37 UTC
+--- src/intel/tools/aubinator.c.orig 2017-05-10 14:13:57 UTC
+++ src/intel/tools/aubinator.c
-@@ -1299,7 +1299,7 @@ int main(int argc, char *argv[])
+@@ -1221,7 +1221,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,
Added: head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/graphics/mesa-dri/files/patch-src_intel_tools_aubinator__error__decode.c Sun May 21 19:30:54 2017 (r441424)
@@ -0,0 +1,14 @@
+# expose getline in FreeBSD's stdio.h
+#
+--- src/intel/tools/aubinator_error_decode.c.orig 2017-05-10 14:13:57 UTC
++++ src/intel/tools/aubinator_error_decode.c
+@@ -22,6 +22,9 @@
+ *
+ */
+
++#ifdef __FreeBSD__
++#define _WITH_GETLINE
++#endif
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <stdlib.h>
Modified: head/graphics/mesa-dri/files/patch-src_mapi_glapi_gen_gl__gentable.py
==============================================================================
--- head/graphics/mesa-dri/files/patch-src_mapi_glapi_gen_gl__gentable.py Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/files/patch-src_mapi_glapi_gen_gl__gentable.py Sun May 21 19:30:54 2017 (r441424)
@@ -1,6 +1,6 @@
---- src/mapi/glapi/gen/gl_gentable.py.orig 2017-01-06 02:14:06 UTC
+--- src/mapi/glapi/gen/gl_gentable.py.orig 2017-05-15 12:05:59 UTC
+++ src/mapi/glapi/gen/gl_gentable.py
-@@ -44,7 +44,7 @@ header = """/* GLXEXT is the define used
+@@ -43,7 +43,7 @@ header = """/* GLXEXT is the define used
#endif
#if (defined(GLXEXT) && defined(HAVE_BACKTRACE)) \\
Modified: head/graphics/mesa-dri/files/patch-src_mesa_main_compiler.h
==============================================================================
--- head/graphics/mesa-dri/files/patch-src_mesa_main_compiler.h Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/files/patch-src_mesa_main_compiler.h Sun May 21 19:30:54 2017 (r441424)
@@ -1,6 +1,6 @@
---- src/mesa/main/compiler.h.orig 2016-11-10 22:05:17 UTC
+--- src/mesa/main/compiler.h.orig 2017-05-10 14:13:57 UTC
+++ src/mesa/main/compiler.h
-@@ -56,6 +56,9 @@ extern "C" {
+@@ -51,6 +51,9 @@
#if defined(__linux__)
#include <byteswap.h>
#define CPU_TO_LE32( x ) bswap_32( x )
Added: head/graphics/mesa-dri/files/patch-src_util_build__id.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/graphics/mesa-dri/files/patch-src_util_build__id.c Sun May 21 19:30:54 2017 (r441424)
@@ -0,0 +1,17 @@
+# Elf_ doesn't exist, use Elf32_ or Elf64_
+#
+--- src/util/build_id.c.orig 2017-05-10 14:13:58 UTC
++++ src/util/build_id.c
+@@ -33,7 +33,11 @@
+ #endif
+
+ #ifndef ElfW
+-#define ElfW(type) Elf_##type
++#ifdef __LP64__
++#define ElfW(type) Elf64_##type
++#else
++#define ElfW(type) Elf32_##type
++#endif
+ #endif
+
+ #define ALIGN(val, align) (((val) + (align) - 1) & ~((align) - 1))
Modified: head/graphics/mesa-dri/pkg-plist
==============================================================================
--- head/graphics/mesa-dri/pkg-plist Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-dri/pkg-plist Sun May 21 19:30:54 2017 (r441424)
@@ -25,7 +25,9 @@ include/GL/internal/dri_interface.h
@comment include/gbm.h
%%I915_DRIVER%%lib/dri/i915_dri.so
%%I965_DRIVER%%lib/dri/i965_dri.so
+%%FREEDRENO_GDRIVER%%lib/dri/kgsl_dri.so
%%SWRAST_GDRIVER%%lib/dri/kms_swrast_dri.so
+%%FREEDRENO_GDRIVER%%lib/dri/msm_dri.so
%%R200_DRIVER%%lib/dri/r200_dri.so
%%R300_GDRIVER%%lib/dri/r300_dri.so
%%R600_GDRIVER%%lib/dri/r600_dri.so
@@ -34,6 +36,7 @@ include/GL/internal/dri_interface.h
%%RADEONSI_GDRIVER%%lib/dri/radeonsi_dri.so
%%VAAPI%%%%RADEONSI_GDRIVER%%lib/dri/radeonsi_drv_video.so
%%SWRAST_DRIVER%%lib/dri/swrast_dri.so
+%%VC4_GDRIVER%%lib/dri/vc4_dri.so
%%SVGA_GDRIVER%%lib/dri/vmwgfx_dri.so
@comment lib/gallium-pipe/pipe_r300.so
@comment lib/gallium-pipe/pipe_r600.so
Modified: head/graphics/mesa-libs/Makefile
==============================================================================
--- head/graphics/mesa-libs/Makefile Sun May 21 19:16:18 2017 (r441423)
+++ head/graphics/mesa-libs/Makefile Sun May 21 19:30:54 2017 (r441424)
@@ -7,10 +7,6 @@ CATEGORIES= graphics
COMMENT= OpenGL libraries that support GLX and EGL clients
-BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs
-LIB_DEPENDS+= libdrm.so:graphics/libdrm \
- libexpat.so:textproc/expat2
-
USE_XORG= dri2proto dri3proto glproto presentproto x11 xcb xdamage xext \
xfixes xshmfence xxf86vm
@@ -22,25 +18,25 @@ WAYLAND_LIB_DEPENDS= libwayland-client.s
libwayland-server.so:graphics/wayland
.include <bsd.port.options.mk>
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common"
+.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
-CONFIGURE_ARGS+= --with-dri-drivers=swrast --with-gallium-drivers=swrast
+CONFIGURE_ARGS+= --with-dri-drivers="" --with-gallium-drivers=""
# libEGL needs gallium enabled which depends on llvm
.if "${MESA_LLVM_VER}" != ""
.if ${PORT_OPTIONS:MWAYLAND}
-CONFIGURE_ARGS+= --with-egl-platforms=x11,drm,wayland
+CONFIGURE_ARGS+= --with-platforms=x11,drm,wayland
.else
-CONFIGURE_ARGS+= --with-egl-platforms=x11,drm
+CONFIGURE_ARGS+= --with-platforms=x11,drm
.endif
-PLIST_SUB+= EGL=""
+PLIST_SUB+= EGL=""
.else
-CONFIGURE_ARGS+= --disable-egl
+CONFIGURE_ARGS+= --disable-egl
PLIST_SUB+= EGL="@comment "
.if ${PORT_OPTIONS:MWAYLAND}
-IGNORE= WAYLAND is an option for EGL and thus only valid on platforms with LLVM
+IGNORE= option WAYLAND is only valid on platforms with LLVM
+.endif
.endif
-.endif
MESA_BUILD_WRKSRC= src/mapi
MESA_INSTALL_WRKSRC= src/mapi
@@ -58,10 +54,10 @@ MESA_BUILD_WRKSRC+= src/egl
MESA_INSTALL_WRKSRC+= src/egl
.endif
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets"
+.include "${MASTERDIR}/Makefile.targets"
post-install:
@cd ${WRKSRC}/src && ${SETENV} DESTDIR=${STAGEDIR} \
${MAKE_CMD} install-pkgconfigDATA install-glHEADERS install-glxHEADERS
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
Modified: head/lang/clover/Makefile
==============================================================================
--- head/lang/clover/Makefile Sun May 21 19:16:18 2017 (r441423)
+++ head/lang/clover/Makefile Sun May 21 19:30:54 2017 (r441424)
@@ -7,28 +7,25 @@ CATEGORIES= lang
COMMENT= Mesa "Clover" OpenCL library
BUILD_DEPENDS= libclc>=0.2.0.20160915:devel/libclc \
- opencl>=0:devel/opencl \
- ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs
-LIB_DEPENDS= libdrm.so:graphics/libdrm \
- libexpat.so:textproc/expat2 \
- libOpenCL.so:devel/ocl-icd
+ opencl>=0:devel/opencl
+LIB_DEPENDS= libOpenCL.so:devel/ocl-icd
RUN_DEPENDS= opencl>=0:devel/opencl
ONLY_FOR_ARCHS= i386 amd64
ONLY_FOR_ARCHS_REASON= Clover needs a GPU supported by the Radeon KMS driver
.include <bsd.port.options.mk>
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common"
+.include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common"
CONFIGURE_ARGS+= --enable-opencl --enable-opencl-icd --disable-dri \
- --disable-egl --disable-gbm --disable-glx \
+ --disable-egl --disable-gbm --disable-gles2 --disable-glx \
--disable-va --disable-vdpau --disable-xvmc \
- --with-gallium-drivers=r600,radeonsi
+ --with-gallium-drivers=r600,radeonsi # only supported GPUs
#MESA_BUILD_WRKSRC= src/util src/compiler src/mesa src/gallium
MESA_INSTALL_WRKSRC= src/gallium/targets/opencl src/gallium/targets/pipe-loader
-.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets"
+.include "${MASTERDIR}/Makefile.targets"
pre-configure:
@if [ -e ${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} ] && \
@@ -40,4 +37,4 @@ pre-configure:
post-install:
@${MV} ${STAGEDIR}/etc/OpenCL ${STAGEDIR}${PREFIX}/etc/
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
More information about the svn-ports-all
mailing list