Bump buildroot to 2019.02
This commit is contained in:
@@ -1,12 +1,29 @@
|
||||
Fix musl build
|
||||
From 25e20c2e288e1d482f479eca863bc4aaa374b782 Mon Sep 17 00:00:00 2001
|
||||
From: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
Date: Sun, 22 Apr 2018 15:58:38 +0200
|
||||
Subject: [PATCH] Fix musl build
|
||||
|
||||
Fix musl build when svga gallium driver is enabled.
|
||||
|
||||
In file included from vmw_fence.c:34:0:
|
||||
vmw_screen.h:100:4: error: unknown type name ‘dev_t’
|
||||
dev_t device;
|
||||
^~~~~
|
||||
|
||||
Downloaded from
|
||||
http://git.alpinelinux.org/cgit/aports/plain/main/mesa/musl-fixes.patch
|
||||
|
||||
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
[Romain: rebase on 18.1]
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
src/gallium/winsys/svga/drm/vmw_screen.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- ./src/gallium/winsys/svga/drm/vmw_screen.h.orig
|
||||
+++ ./src/gallium/winsys/svga/drm/vmw_screen.h
|
||||
diff --git a/src/gallium/winsys/svga/drm/vmw_screen.h b/src/gallium/winsys/svga/drm/vmw_screen.h
|
||||
index f21cabb51f..20d03f8b53 100644
|
||||
--- a/src/gallium/winsys/svga/drm/vmw_screen.h
|
||||
+++ b/src/gallium/winsys/svga/drm/vmw_screen.h
|
||||
@@ -34,7 +34,7 @@
|
||||
#ifndef VMW_SCREEN_H_
|
||||
#define VMW_SCREEN_H_
|
||||
@@ -16,3 +33,6 @@ Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
#include "pipe/p_compiler.h"
|
||||
#include "pipe/p_state.h"
|
||||
|
||||
--
|
||||
2.14.3
|
||||
|
||||
|
||||
@@ -1,67 +0,0 @@
|
||||
From 4135bd2e13880866deb0440855d1a869397e5024 Mon Sep 17 00:00:00 2001
|
||||
From: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
Date: Fri, 4 Nov 2016 19:44:37 +0100
|
||||
Subject: [PATCH] Fix endianess detection with musl-based toolchains
|
||||
|
||||
Musl does not define __GLIBC__ and will not provide a __MUSL__ macro:
|
||||
http://wiki.musl-libc.org/wiki/FAQ#Q:_why_is_there_no_MUSL_macro_.3F
|
||||
|
||||
This patch checks for the presence of endian.h and promotes the result
|
||||
to src/amd/Makefile.addrlib.am which executes the broken build command.
|
||||
Fixes compile errors detected by the autobuilder infrastructure of the
|
||||
buildroot project:
|
||||
|
||||
http://autobuild.buildroot.net/results/e27/e27a9a95f72dba3076549beb2a2ccfdbea2fcfee/
|
||||
http://autobuild.buildroot.net/results/e27/e27a9a95f72dba3076549beb2a2ccfdbea2fcfee/
|
||||
|
||||
Patch sent upstream: https://patchwork.freedesktop.org/patch/119961/
|
||||
|
||||
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
[Romain: rebase on mesa 17.3.1]
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
configure.ac | 1 +
|
||||
src/amd/Makefile.addrlib.am | 1 +
|
||||
src/util/u_endian.h | 2 +-
|
||||
3 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index a02173f244..ee03d6f582 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -791,6 +791,7 @@ fi
|
||||
AC_HEADER_MAJOR
|
||||
AC_CHECK_HEADER([xlocale.h], [DEFINES="$DEFINES -DHAVE_XLOCALE_H"])
|
||||
AC_CHECK_HEADER([sys/sysctl.h], [DEFINES="$DEFINES -DHAVE_SYS_SYSCTL_H"])
|
||||
+AC_CHECK_HEADER([endian.h], [DEFINES="$DEFINES -DHAVE_ENDIAN_H"])
|
||||
AC_CHECK_FUNC([strtof], [DEFINES="$DEFINES -DHAVE_STRTOF"])
|
||||
AC_CHECK_FUNC([mkostemp], [DEFINES="$DEFINES -DHAVE_MKOSTEMP"])
|
||||
AC_CHECK_FUNC([memfd_create], [DEFINES="$DEFINES -DHAVE_MEMFD_CREATE"])
|
||||
diff --git a/src/amd/Makefile.addrlib.am b/src/amd/Makefile.addrlib.am
|
||||
index 46689637f9..508edfd0d5 100644
|
||||
--- a/src/amd/Makefile.addrlib.am
|
||||
+++ b/src/amd/Makefile.addrlib.am
|
||||
@@ -30,6 +30,7 @@ addrlib_libamdgpu_addrlib_la_CPPFLAGS = \
|
||||
-I$(srcdir)/addrlib/inc/chip/r800 \
|
||||
-I$(srcdir)/addrlib/gfx9/chip \
|
||||
-I$(srcdir)/addrlib/r800/chip \
|
||||
+ $(DEFINES) \
|
||||
-DBRAHMA_BUILD=1
|
||||
|
||||
addrlib_libamdgpu_addrlib_la_CXXFLAGS = \
|
||||
diff --git a/src/util/u_endian.h b/src/util/u_endian.h
|
||||
index 9e09f80181..038a28fac9 100644
|
||||
--- a/src/util/u_endian.h
|
||||
+++ b/src/util/u_endian.h
|
||||
@@ -27,7 +27,7 @@
|
||||
#ifndef U_ENDIAN_H
|
||||
#define U_ENDIAN_H
|
||||
|
||||
-#if defined(__GLIBC__) || defined(ANDROID) || defined(__CYGWIN__)
|
||||
+#if defined(__GLIBC__) || defined(ANDROID) || defined(__CYGWIN__) || defined(HAVE_ENDIAN_H)
|
||||
#include <endian.h>
|
||||
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
--
|
||||
2.14.3
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
From ef96bac7cbbb11b98606864ead0f731dd5b71d5a Mon Sep 17 00:00:00 2001
|
||||
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
Date: Thu, 17 Nov 2016 15:36:54 -0300
|
||||
Subject: [PATCH] configure.ac: invert order for wayland-scanner check
|
||||
|
||||
When cross-compiling the .pc file might point to the wrong
|
||||
wayland-scanner binary (target rather than host) resulting in a
|
||||
non-executable and wrong scanner.
|
||||
Try searching the PATH first, and if that fails fall back into
|
||||
pkg-config.
|
||||
|
||||
[Vincent: tweak patch for 17.1.1 version]
|
||||
|
||||
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
|
||||
[Romain: rebase on 18.1]
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
[Bernd rebase on 18.3]
|
||||
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
---
|
||||
configure.ac | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f1fbdcc6c7..dcf87e7dd6 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1841,17 +1841,16 @@
|
||||
fi
|
||||
WAYLAND_PROTOCOLS_DATADIR=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`
|
||||
|
||||
- PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner],
|
||||
+ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner], [:])
|
||||
+ if test "x$WAYLAND_SCANNER" = x; then
|
||||
+ PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner],
|
||||
WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`,
|
||||
WAYLAND_SCANNER='')
|
||||
+ fi
|
||||
PKG_CHECK_EXISTS([wayland-scanner >= 1.15],
|
||||
AC_SUBST(SCANNER_ARG, 'private-code'),
|
||||
AC_SUBST(SCANNER_ARG, 'code'))
|
||||
|
||||
- if test "x$WAYLAND_SCANNER" = x; then
|
||||
- AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner], [:])
|
||||
- fi
|
||||
-
|
||||
if test "x$WAYLAND_SCANNER" = "x:"; then
|
||||
AC_MSG_ERROR([wayland-scanner is needed to compile the wayland platform])
|
||||
fi
|
||||
--
|
||||
2.14.3
|
||||
@@ -1,44 +0,0 @@
|
||||
From 11a759c33160db6e887e7640071ba84482e6164f Mon Sep 17 00:00:00 2001
|
||||
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
Date: Thu, 17 Nov 2016 15:36:54 -0300
|
||||
Subject: [PATCH] configure.ac: invert order for wayland-scanner check
|
||||
|
||||
When cross-compiling the .pc file might point to the wrong
|
||||
wayland-scanner binary (target rather than host) resulting in a
|
||||
non-executable and wrong scanner.
|
||||
Try searching the PATH first, and if that fails fall back into
|
||||
pkg-config.
|
||||
|
||||
[Vincent: tweak patch for 17.1.1 version]
|
||||
|
||||
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
|
||||
[Romain: rebase on 17.3.1]
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
configure.ac | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index ee03d6f582..786b7214b9 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1695,11 +1695,11 @@ if test "x$with_platforms" = xauto; then
|
||||
with_platforms=$with_egl_platforms
|
||||
fi
|
||||
|
||||
-PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner],
|
||||
- WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`,
|
||||
- WAYLAND_SCANNER='')
|
||||
+AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner])
|
||||
if test "x$WAYLAND_SCANNER" = x; then
|
||||
- AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner], [:])
|
||||
+ PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner],
|
||||
+ WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`,
|
||||
+ WAYLAND_SCANNER='')
|
||||
fi
|
||||
|
||||
PKG_CHECK_EXISTS([wayland-protocols >= $WAYLAND_PROTOCOLS_REQUIRED], [have_wayland_protocols=yes], [have_wayland_protocols=no])
|
||||
--
|
||||
2.14.3
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
From 94bceeb621e36f3188c6246a763def8695526578 Mon Sep 17 00:00:00 2001
|
||||
From: Valentin Korenblit <valentinkorenblit@gmail.com>
|
||||
Date: Sat, 20 Oct 2018 10:56:23 +0200
|
||||
Subject: [PATCH] Set proper value for LIBCLC_INCLUDEDIR
|
||||
|
||||
LIBCLC_INCLUDEDIR is the location where mesa3d OpenCL implementation
|
||||
will look for OpenCL "headers" on the target, when building the OpenCL
|
||||
kernels.
|
||||
|
||||
The value returned by pkg-config for includedir is relevant when
|
||||
cross-compiling, on the build machine. But in this specific case, we
|
||||
really need a value that is valid on the target.
|
||||
|
||||
Those headers are installed by the libclc package in /usr/share so
|
||||
that they are not removed by Buildroot target-finalize logic.
|
||||
|
||||
Signed-off-by: Valentin Korenblit <valentinkorenblit@gmail.com>
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 864dcae..cc2390b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2429,7 +2429,7 @@ if test "x$enable_opencl" = xyes; then
|
||||
PKG_CONFIG_PATH environment variable.
|
||||
By default libclc.pc is installed to /usr/local/share/pkgconfig/])
|
||||
else
|
||||
- LIBCLC_INCLUDEDIR=`$PKG_CONFIG --variable=includedir libclc`
|
||||
+ LIBCLC_INCLUDEDIR="/usr/share"
|
||||
LIBCLC_LIBEXECDIR=`$PKG_CONFIG --variable=libexecdir libclc`
|
||||
AC_SUBST([LIBCLC_INCLUDEDIR])
|
||||
AC_SUBST([LIBCLC_LIBEXECDIR])
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
From eb44c36cf1729e7e200b77cf8ea755dff72d1639 Mon Sep 17 00:00:00 2001
|
||||
From: Gurchetan Singh <gurchetansingh@chromium.org>
|
||||
Date: Wed, 28 Nov 2018 08:39:34 -0800
|
||||
Subject: [PATCH] egl: add missing #include <stddef.h> in egldevice.h
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Otherwise, I get this error:
|
||||
|
||||
main/egldevice.h:54:13: error: ‘NULL’ undeclared (first use in this function)
|
||||
dev = NULL;
|
||||
^~~~
|
||||
with this config:
|
||||
|
||||
./autogen.sh --enable-gles1 --enable-gles2 --with-platforms='surfaceless' --disable-glx
|
||||
--with-dri-drivers="i965" --with-gallium-drivers="" --enable-gbm
|
||||
|
||||
v3: Use stddef.h (Matt)
|
||||
v4: Modify commit message (Eric)
|
||||
|
||||
Reviewed-by: Matt Turner <mattst88@gmail.com>
|
||||
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
|
||||
Backported from upstream commit eb44c36cf1729e7e200b77cf8ea755dff72d1639
|
||||
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
|
||||
---
|
||||
src/egl/main/egldevice.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/egl/main/egldevice.h b/src/egl/main/egldevice.h
|
||||
index ddcdcd1..83a47d5 100644
|
||||
--- a/src/egl/main/egldevice.h
|
||||
+++ b/src/egl/main/egldevice.h
|
||||
@@ -31,9 +31,9 @@
|
||||
|
||||
|
||||
#include <stdbool.h>
|
||||
+#include <stddef.h>
|
||||
#include "egltypedefs.h"
|
||||
|
||||
-
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -8,13 +8,13 @@ menuconfig BR2_PACKAGE_MESA3D
|
||||
select BR2_PACKAGE_EXPAT
|
||||
select BR2_PACKAGE_HAS_LIBGL if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_WAYLAND_PROTOCOLS if BR2_PACKAGE_WAYLAND
|
||||
select BR2_PACKAGE_XPROTO_DRI2PROTO if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XPROTO_GLPROTO if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XPROTO_XF86DRIPROTO if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XORGPROTO if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XLIB_LIBXFIXES if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XLIB_LIBXRANDR if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XLIB_LIBXXF86VM if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_LIBXCB if BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_ZLIB
|
||||
help
|
||||
@@ -25,6 +25,43 @@ menuconfig BR2_PACKAGE_MESA3D
|
||||
|
||||
if BR2_PACKAGE_MESA3D
|
||||
|
||||
# Some Gallium driver needs libelf when built with LLVM support
|
||||
config BR2_PACKAGE_MESA3D_NEEDS_ELFUTILS
|
||||
bool
|
||||
|
||||
config BR2_PACKAGE_MESA3D_LLVM
|
||||
bool "llvm support"
|
||||
depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
|
||||
depends on BR2_HOST_GCC_AT_LEAST_4_8
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future
|
||||
depends on !BR2_STATIC_LIBS
|
||||
depends on BR2_USE_WCHAR # std::wstring
|
||||
select BR2_PACKAGE_LLVM
|
||||
|
||||
comment "llvm support needs a toolchain w/ wchar, threads, C++, gcc >= 4.8, host gcc >= 4.8, dynamic library"
|
||||
depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \
|
||||
!BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \
|
||||
|| BR2_STATIC_LIBS || !BR2_USE_WCHAR
|
||||
|
||||
comment "llvm support needs a toolchain not affected by GCC bug 64735"
|
||||
depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||
|
||||
# clang and libclc dependencies are satisfied by
|
||||
# BR2_PACKAGE_MESA3D_LLVM
|
||||
config BR2_PACKAGE_MESA3D_OPENCL
|
||||
bool "OpenCL support"
|
||||
depends on BR2_PACKAGE_MESA3D_LLVM
|
||||
depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600 || \
|
||||
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI
|
||||
select BR2_PACKAGE_CLANG
|
||||
select BR2_PACKAGE_LIBCLC
|
||||
select BR2_PACKAGE_HAS_LIBOPENCL
|
||||
|
||||
# inform the .mk file of gallium, dri or vulkan driver selection
|
||||
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
|
||||
bool
|
||||
@@ -33,15 +70,8 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
|
||||
config BR2_PACKAGE_MESA3D_DRI_DRIVER
|
||||
bool
|
||||
select BR2_PACKAGE_MESA3D_DRIVER
|
||||
# xlib-libxshmfence needs sync_4, so we cannot select it if
|
||||
# BR2_TOOLCHAIN_HAS_SYNC_4 is false. xproto-presentproto
|
||||
# doesn't need sync_4, but it is only needed in conjunction
|
||||
# with xlib-libxshmfence and dri3proto to provide dri3
|
||||
# support, so we also only select it if sync_4 is available.
|
||||
select BR2_PACKAGE_XLIB_LIBXSHMFENCE if \
|
||||
(BR2_PACKAGE_XPROTO_DRI3PROTO && BR2_TOOLCHAIN_HAS_SYNC_4)
|
||||
select BR2_PACKAGE_XPROTO_PRESENTPROTO if \
|
||||
(BR2_PACKAGE_XPROTO_DRI3PROTO && BR2_TOOLCHAIN_HAS_SYNC_4)
|
||||
(BR2_PACKAGE_XORG7 && BR2_TOOLCHAIN_HAS_SYNC_4)
|
||||
|
||||
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER
|
||||
bool
|
||||
@@ -75,12 +105,45 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU
|
||||
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600
|
||||
bool "Gallium Radeon R600 driver"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
depends on !BR2_PACKAGE_MESA3D_LLVM || \
|
||||
(BR2_PACKAGE_MESA3D_LLVM && (BR2_TOOLCHAIN_USES_UCLIBC || \
|
||||
BR2_TOOLCHAIN_USES_GLIBC)) # elfutils
|
||||
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
|
||||
select BR2_PACKAGE_LIBDRM_RADEON
|
||||
select BR2_PACKAGE_LLVM_AMDGPU if BR2_PACKAGE_MESA3D_LLVM
|
||||
select BR2_PACKAGE_ELFUTILS if BR2_PACKAGE_MESA3D_LLVM
|
||||
select BR2_PACKAGE_MESA3D_NEEDS_ELFUTILS if BR2_PACKAGE_MESA3D_LLVM
|
||||
select BR2_PACKAGE_MESA3D_NEEDS_XA
|
||||
help
|
||||
Driver for ATI/AMD Radeon R600/R700/HD5000/HD6000 GPUs.
|
||||
|
||||
# R600 needs libelf when Mesa3D is built with LLVM support
|
||||
# musl is not currently compatible with elfutils
|
||||
comment "R600 driver needs a uClibc or glibc toolchain when llvm is enabled"
|
||||
depends on BR2_PACKAGE_MESA3D_LLVM
|
||||
depends on !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
|
||||
|
||||
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI
|
||||
bool "Gallium Radeon SI driver"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
depends on BR2_PACKAGE_MESA3D_LLVM
|
||||
depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
|
||||
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
|
||||
select BR2_PACKAGE_LIBDRM_AMDGPU
|
||||
select BR2_PACKAGE_LIBDRM_RADEON
|
||||
select BR2_PACKAGE_LLVM_AMDGPU
|
||||
select BR2_PACKAGE_ELFUTILS
|
||||
select BR2_PACKAGE_MESA3D_NEEDS_ELFUTILS
|
||||
select BR2_PACKAGE_MESA3D_NEEDS_XA
|
||||
help
|
||||
Driver for ATI/AMD Radeon HD7000/HD8000/Rx200 GPUs.
|
||||
|
||||
# Radeon SI needs libelf
|
||||
# musl is not currently compatible with elfutils
|
||||
comment "Radeon SI driver needs a uClibc or glibc toolchain"
|
||||
depends on BR2_PACKAGE_MESA3D_LLVM
|
||||
depends on !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
|
||||
|
||||
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA
|
||||
bool "Gallium vmware svga driver"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
@@ -136,11 +199,16 @@ config BR2_PACKAGE_MESA3D_DRI_DRIVER_I915
|
||||
config BR2_PACKAGE_MESA3D_DRI_DRIVER_I965
|
||||
bool "DRI i965 driver"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 # memfd.h
|
||||
select BR2_PACKAGE_MESA3D_DRI_DRIVER
|
||||
select BR2_PACKAGE_LIBDRM_INTEL
|
||||
help
|
||||
Support for i965-based Intel GPUs.
|
||||
|
||||
comment "DRI i965 driver needs a toolchain w/ headers >= 3.17"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17
|
||||
|
||||
config BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU
|
||||
bool "DRI nouveau driver"
|
||||
select BR2_PACKAGE_MESA3D_DRI_DRIVER
|
||||
@@ -160,17 +228,20 @@ comment "Vulkan drivers"
|
||||
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL
|
||||
bool "Vulkan Intel driver"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 # memfd.h
|
||||
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libxshmfence
|
||||
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 # memfd.h
|
||||
depends on BR2_TOOLCHAIN_USES_GLIBC # ifunc, static_assert
|
||||
depends on BR2_PACKAGE_XORG7 # xproto_dri3proto
|
||||
depends on BR2_PACKAGE_XORG7 # xorgproto
|
||||
select BR2_PACKAGE_MESA3D_VULKAN_DRIVER
|
||||
select BR2_PACKAGE_XPROTO_DRI3PROTO
|
||||
select BR2_PACKAGE_XORGPROTO
|
||||
select BR2_PACKAGE_XLIB_LIBXSHMFENCE
|
||||
help
|
||||
Vulkan driver for Intel hardware from Ivy Bridge onward.
|
||||
|
||||
comment "intel vulkan depends on X.org and needs a glibc toolchain w/ headers >= 3.18"
|
||||
comment "intel vulkan depends on X.org and needs a glibc toolchain w/ headers >= 3.17"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 || \
|
||||
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
||||
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 || \
|
||||
!BR2_TOOLCHAIN_USES_GLIBC || !BR2_PACKAGE_XORG7
|
||||
|
||||
comment "Off-screen Rendering"
|
||||
@@ -200,29 +271,6 @@ config BR2_PACKAGE_MESA3D_OPENGL_ES
|
||||
Use the Khronos OpenGL ES APIs. This is commonly used on
|
||||
embedded systems and represents a subset of the OpenGL API.
|
||||
|
||||
config BR2_PACKAGE_MESA3D_OPENGL_TEXTURE_FLOAT
|
||||
bool "OpenGL texture float (patented format)"
|
||||
help
|
||||
GL_ARB_texture_float is required to enable GLX core profile
|
||||
(OpenGL3.x) otherwise the compat profile is used
|
||||
(OpenGL2.1).
|
||||
|
||||
The source code to implement ARB_texture_float extension is
|
||||
included and can be toggled on at compile time, for those
|
||||
who purchased a license from SGI, or are in a country where
|
||||
the patent does not apply, etc.
|
||||
|
||||
Please consult docs/patents.txt with your lawyer before
|
||||
building Mesa.
|
||||
|
||||
Also, note that this option doesn't affect all drivers. Some
|
||||
drivers have support for texture float enabled
|
||||
unconditionally.
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
http://www.google.com/patents/about?id=mIIOAAAAEBAJ&dq=6650327
|
||||
|
||||
endif # BR2_PACKAGE_MESA3D_DRIVER
|
||||
|
||||
config BR2_PACKAGE_PROVIDES_LIBGL
|
||||
@@ -234,6 +282,9 @@ config BR2_PACKAGE_PROVIDES_LIBEGL
|
||||
config BR2_PACKAGE_PROVIDES_LIBGLES
|
||||
default "mesa3d" if BR2_PACKAGE_MESA3D_OPENGL_ES
|
||||
|
||||
config BR2_PACKAGE_PROVIDES_LIBOPENCL
|
||||
default "mesa3d" if BR2_PACKAGE_MESA3D_OPENCL
|
||||
|
||||
endif # BR2_PACKAGE_MESA3D
|
||||
|
||||
comment "mesa3d needs a toolchain w/ C++, NPTL, dynamic library"
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
# From https://lists.freedesktop.org/archives/mesa-announce/2018-February/000403.html
|
||||
md5 ba66ae0f09b9b84482268608557cd175 mesa-17.3.6.tar.xz
|
||||
sha1 eff29cb8c284a813977d4201dd646d949b1d8fc4 mesa-17.3.6.tar.xz
|
||||
sha256 e5915680d44ac9d05defdec529db7459ac9edd441c9845266eff2e2d3e57fbf8 mesa-17.3.6.tar.xz
|
||||
sha512 5164ed5a1d3d25031b712a9f443f0e467a29b2bca0a1aa11324ed5c10279411979c9c7482825053926a813e76c58b78a3439c7c81fcd51a7808f53977080828f mesa-17.3.6.tar.xz
|
||||
# From https://lists.freedesktop.org/archives/mesa-announce/2019-February/000492.html
|
||||
md5 e9d1a24dbd5ca20efa75b9a29eb4566f mesa-18.3.3.tar.xz
|
||||
sha1 abb067204ae31493dba7710c378b2b90245108ca mesa-18.3.3.tar.xz
|
||||
sha256 2ab6886a6966c532ccbcc3b240925e681464b658244f0cbed752615af3936299 mesa-18.3.3.tar.xz
|
||||
sha512 cd6214b8bbeb3e3d187139ae1e949684f32f90152e1d7ba8d81222bd088770e28cff7ff165f2ccc41c068950561fe952420c6e54472f7204532a8d8700ff18bb mesa-18.3.3.tar.xz
|
||||
# License
|
||||
sha256 630e75b4fdeb75ee2bf9e55db54dd1e3ff7353d52d9314ca8512bfd460f8e24c docs/license.html
|
||||
sha256 a75ee0cec909515ff80a3ec07155b7fb0aafe8051abe1f0e45d5c4c5e2539366 docs/patents.txt
|
||||
|
||||
@@ -5,11 +5,13 @@
|
||||
################################################################################
|
||||
|
||||
# When updating the version, please also update mesa3d-headers
|
||||
MESA3D_VERSION = 17.3.6
|
||||
MESA3D_VERSION = 18.3.3
|
||||
MESA3D_SOURCE = mesa-$(MESA3D_VERSION).tar.xz
|
||||
MESA3D_SITE = https://mesa.freedesktop.org/archive
|
||||
MESA3D_LICENSE = MIT, SGI, Khronos
|
||||
MESA3D_LICENSE_FILES = docs/license.html
|
||||
# 0002-configure.ac-invert-order-for-wayland-scanner-check.patch
|
||||
# 0003-set-LIBCLC_INCLUDEDIR.patch
|
||||
MESA3D_AUTORECONF = YES
|
||||
|
||||
MESA3D_INSTALL_STAGING = YES
|
||||
@@ -32,6 +34,33 @@ ifeq ($(BR2_SHARED_STATIC_LIBS),y)
|
||||
MESA3D_CONF_OPTS += --disable-static
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_MESA3D_LLVM),y)
|
||||
MESA3D_DEPENDENCIES += host-llvm llvm
|
||||
MESA3D_CONF_OPTS += \
|
||||
--with-llvm-prefix=$(STAGING_DIR)/usr \
|
||||
--enable-llvm-shared-libs \
|
||||
--enable-llvm
|
||||
else
|
||||
# Avoid automatic search of llvm-config
|
||||
MESA3D_CONF_OPTS += --disable-llvm
|
||||
endif
|
||||
|
||||
# Disable opencl-icd: OpenCL lib will be named libOpenCL instead of
|
||||
# libMesaOpenCL and CL headers are installed
|
||||
ifeq ($(BR2_PACKAGE_MESA3D_OPENCL),y)
|
||||
MESA3D_PROVIDES += libopencl
|
||||
MESA3D_DEPENDENCIES += clang libclc
|
||||
MESA3D_CONF_OPTS += --enable-opencl \
|
||||
--disable-opencl-icd \
|
||||
--with-clang-libdir=$(STAGING_DIR)/usr/lib
|
||||
else
|
||||
MESA3D_CONF_OPTS += --disable-opencl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_MESA3D_NEEDS_ELFUTILS),y)
|
||||
MESA3D_DEPENDENCIES += elfutils
|
||||
endif
|
||||
|
||||
# The Sourcery MIPS toolchain has a special (non-upstream) feature to
|
||||
# have "compact exception handling", which unfortunately breaks with
|
||||
# mesa3d, so we disable it here by passing -mno-compact-eh.
|
||||
@@ -42,13 +71,13 @@ endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_XORG7),y)
|
||||
MESA3D_DEPENDENCIES += \
|
||||
xproto_xf86driproto \
|
||||
xproto_dri2proto \
|
||||
xproto_glproto \
|
||||
xlib_libX11 \
|
||||
xlib_libXext \
|
||||
xlib_libXdamage \
|
||||
xlib_libXfixes \
|
||||
xlib_libXrandr \
|
||||
xlib_libXxf86vm \
|
||||
xorgproto \
|
||||
libxcb
|
||||
MESA3D_CONF_OPTS += --enable-glx --disable-mangling
|
||||
# quote from mesa3d configure "Building xa requires at least one non swrast gallium driver."
|
||||
@@ -69,6 +98,7 @@ endif
|
||||
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV) += etnaviv imx
|
||||
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU) += nouveau
|
||||
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600) += r600
|
||||
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI) += radeonsi
|
||||
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA) += svga
|
||||
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST) += swrast
|
||||
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VC4) += vc4
|
||||
@@ -97,18 +127,16 @@ ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),)
|
||||
MESA3D_CONF_OPTS += \
|
||||
--without-dri-drivers --disable-dri3
|
||||
else
|
||||
ifeq ($(BR2_PACKAGE_XLIB_LIBXSHMFENCE)$(BR2_PACKAGE_XPROTO_DRI3PROTO),yy)
|
||||
MESA3D_DEPENDENCIES += xlib_libxshmfence xproto_dri3proto xproto_presentproto
|
||||
ifeq ($(BR2_PACKAGE_XLIB_LIBXSHMFENCE),y)
|
||||
MESA3D_DEPENDENCIES += xlib_libxshmfence
|
||||
MESA3D_CONF_OPTS += --enable-dri3
|
||||
else
|
||||
MESA3D_CONF_OPTS += --disable-dri3
|
||||
endif
|
||||
ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86VM),y)
|
||||
MESA3D_DEPENDENCIES += xlib_libXxf86vm
|
||||
endif
|
||||
MESA3D_CONF_OPTS += \
|
||||
--enable-shared-glapi \
|
||||
--enable-driglx-direct \
|
||||
--with-dri-driverdir=/usr/lib/dri \
|
||||
--with-dri-drivers=$(subst $(space),$(comma),$(MESA3D_DRI_DRIVERS-y))
|
||||
endif
|
||||
|
||||
@@ -116,7 +144,9 @@ ifeq ($(BR2_PACKAGE_MESA3D_VULKAN_DRIVER),)
|
||||
MESA3D_CONF_OPTS += \
|
||||
--without-vulkan-drivers
|
||||
else
|
||||
MESA3D_DEPENDENCIES += xlib_libxshmfence
|
||||
MESA3D_CONF_OPTS += \
|
||||
--enable-dri3 \
|
||||
--with-vulkan-drivers=$(subst $(space),$(comma),$(MESA3D_VULKAN_DRIVERS-y))
|
||||
endif
|
||||
|
||||
@@ -155,6 +185,8 @@ else ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV),y)
|
||||
MESA3D_PLATFORMS = drm
|
||||
else ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL),y)
|
||||
MESA3D_PLATFORMS = drm
|
||||
else ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI),y)
|
||||
MESA3D_PLATFORMS = drm
|
||||
endif
|
||||
ifeq ($(BR2_PACKAGE_WAYLAND),y)
|
||||
MESA3D_DEPENDENCIES += wayland wayland-protocols
|
||||
@@ -184,13 +216,6 @@ else
|
||||
MESA3D_CONF_OPTS += --disable-gles1 --disable-gles2
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_TEXTURE_FLOAT),y)
|
||||
MESA3D_CONF_OPTS += --enable-texture-float
|
||||
MESA3D_LICENSE_FILES += docs/patents.txt
|
||||
else
|
||||
MESA3D_CONF_OPTS += --disable-texture-float
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_XLIB_LIBXVMC),y)
|
||||
MESA3D_DEPENDENCIES += xlib_libXvMC
|
||||
MESA3D_CONF_OPTS += --enable-xvmc
|
||||
@@ -219,7 +244,4 @@ else
|
||||
MESA3D_CONF_OPTS += --disable-lmsensors
|
||||
endif
|
||||
|
||||
# Avoid automatic search of llvm-config
|
||||
MESA3D_CONF_OPTS += --with-llvm-prefix=$(STAGING_DIR)/usr/bin
|
||||
|
||||
$(eval $(autotools-package))
|
||||
|
||||
Reference in New Issue
Block a user