Commit Graph

330 Commits

Author SHA1 Message Date
Romain Naour
091e2aec68 package/mesa3d: Add xcb-fixes to loader when using x11 and dri3
"loader_dr3_helper.c uses xcb_xfixes_create_region() that requires dep_xcb_xfixes to link.
This is dependent on with_platform_x11 and with_dri3.
But the source meson file does not set this up dependent on with_dri3."

i686-buildroot-linux-gnu/bin/ld: src/loader/libloader_dri3_helper.a(loader_dri3_helper.c.o): in function `loader_dri3_swap_buffers_msc':
loader_dri3_helper.c:(.text.loader_dri3_swap_buffers_msc+0x33e): undefined reference to `xcb_xfixes_create_region'

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/830981830

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-11-11 11:57:57 +01:00
Bernd Kuhls
101878cd88 package/{mesa3d, mesa3d-headers}: bump version to 20.2.2
Release notes of this bugfix release::
https://lists.freedesktop.org/archives/mesa-announce/2020-November/000604.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-11-09 17:05:09 +01:00
Bernd Kuhls
9d874c9051 package/mesa3d: bump version to 20.2.1
Rebased patch 0002 & 0003, added patch 0004 to fix build error.

Switched license file to license.rst due to upstream commit
https://cgit.freedesktop.org/mesa/mesa/commit/?id=4d066836e3cf307431a74eafcc8a404ce5ccea69
"No modification to the generated results have been done."

Switched true/false configure option values to enabled/disabled due to
upstream commit:
https://cgit.freedesktop.org/mesa/mesa/commit/?id=138c003d22739b0d1e6860ed398dd511a44cde04

Remove "MESA3D_PLATFORMS += drm", this platform is now automatically
selected:
https://cgit.freedesktop.org/mesa/mesa/commit/?id=e00adef34a5ce485e2c9216a268ca05e89a5fc98

Remove "MESA3D_PLATFORMS += surfaceless", this platform is now
automatically selected:
https://cgit.freedesktop.org/mesa/mesa/commit/?id=a38e21d6683aeecb51aea4f933a77c6e7f1a6179

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-11-01 10:01:06 +01:00
Bernd Kuhls
90434a1419 package/{mesa3d, mesa3d-headers}: bump version to 20.1.10
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-10-15 22:29:25 +02:00
Yann E. MORIN
0b029cac1b package/mesa3d: drop r100 dependency on _HAS_ATOMIC
This partially reverts commit a3aac6d847,
just dropping the atomic dependency.

That dependency would introduce a "recursive dependency" chain in
Kconfig.

However, r100 is only available on i386 and x86-64, and they both have
sync4, which means libdrm's HAS_ATOMICS is always 'y' when r100 is
available.

So, like we did in 00c1a8c34f (package/mesa3d: propagate missing
libdrm-freedreno deps), we just add a fat comment that explains why the
dependency is not propagated.

Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: James Hilliard <james.hilliard1@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
2020-10-06 23:01:28 +02:00
James Hilliard
a3aac6d847 package/mesa3d: add missing depends and driver name to r100 driver
Propagate libdrm dependencies.

Add r100 to menu name to differentiate from r200 dri driver.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Reviewed-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-10-06 22:18:30 +02:00
Bernd Kuhls
e56dbc12c3 package/{mesa3d, mesa3d-headers}: bump version to 20.1.9
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-04 20:44:03 +02:00
Bernd Kuhls
44ec066067 package/{mesa3d, mesa3d-headers}: bump version to 20.1.8
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-09-20 15:05:56 +02:00
Bernd Kuhls
4a9333b7a1 package/{mesa3d, mesa3d-headers}: bump version to 20.1.7
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-09-04 09:14:48 +02:00
Bernd Kuhls
b5a1fe3d29 package/{mesa3d, mesa3d-headers}: bump version to 20.1.6
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-08-24 22:54:43 +02:00
Bernd Kuhls
2dd6a4f6f4 package/{mesa3d, mesa3d-headers}: bump version to 20.1.5
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-08-08 18:16:42 +02:00
Bernd Kuhls
c35fe399cd package/mesa3d: xvmc needs x11
This is a follow-up patch to

https://git.buildroot.net/buildroot/commit/package/mesa3d?id=e79ee3b0f91aa3eb1b20d86701a195e3bd9a26d3

to make sure that MESA3D_PLATFORMS contains x11 needed by xvmc:
https://cgit.freedesktop.org/mesa/mesa/tree/meson.build?h=20.1#n510

Fixes
http://autobuild.buildroot.net/results/dae/dae41e30d2ac69b768ec0a5b795a2e559c35bcd3/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-08-02 22:22:06 +02:00
Bernd Kuhls
bb300751c0 package/{mesa3d, mesa3d-headers}: bump version to 20.1.4
Removed patch 0001-musl.patch, upstream added a different fix in 2019:
da84d071a6

Renumbered remaining patches.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-07-23 21:57:06 +02:00
Bernd Kuhls
28628c9c0d package/{mesa3d, mesa3d-headers}: bump version to 20.1.3
Renumbered patches, rebased patch 0003.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-07-11 15:26:21 +02:00
Bernd Kuhls
2fc3d65cda package/{mesa3d, mesa3d-headers}: bump version to 20.1.2
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-06-25 23:25:20 +02:00
Bernd Kuhls
565058967f package/{mesa3d, mesa3d-headers}: bump version to 20.1.1
Removed patches applied upstream:

- 0005-vc4_bufmgr-fix-time_t-printf.patch
  https://cgit.freedesktop.org/mesa/mesa/commit/?h=20.1&id=ad81207d00623cb2156ca0ecab39d0bcad5b28c9
- 0006-pan_bo.h-add-time.h-include-for-time_t.patch
  https://cgit.freedesktop.org/mesa/mesa/commit/?h=20.1&id=eedeee0094841c863e2f6ddd8bc2212d011e0e2f
- 0007-v3d_bufmgr-fix-time_t-printf.patch
  https://cgit.freedesktop.org/mesa/mesa/commit/?h=20.1&id=9f67806f141986c1d8310c5e0f1b2493434118d9

Renumbered remaining patches.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-06-21 09:21:05 +02:00
Romain Naour
d3f576d2f3 package/mesa3d: disable --as-needed linker flag for Codesourcery ARM 2014.05 toolchain
Meson build system enable by default -Wl,--as-needed [1][2] in the linker command line
and due to this the libmesa_dri_drivers.so build fail with the Codesourcery ARM and
Aarch64 2014.05 toolchain:

/home/buildroot/autobuild/run/instance-1/output-1/host/bin/arm-none-linux-gnueabi-g++
  -o src/mesa/drivers/dri/libmesa_dri_drivers.so
  -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -shared -fPIC -Wl,--start-group
  -Wl,-soname,libmesa_dri_drivers.so -Wl,--whole-archive
  src/mesa/drivers/dri/radeon/libr100.a src/mesa/drivers/dri/nouveau/libnouveau_vieux.a
  -Wl,--no-whole-archive
  src/mesa/drivers/dri/common/libmegadriver_stub.a
  src/mesa/drivers/dri/common/libdricommon.a
  src/mapi/shared-glapi/libglapi.so.0.0.0
  src/mesa/libmesa_classic.a src/mesa/libmesa_common.a
  src/compiler/glsl/libglsl.a src/compiler/glsl/glcpp/libglcpp.a
  src/util/libmesa_util.a src/util/format/libmesa_format.a
  src/compiler/nir/libnir.a src/compiler/libcompiler.a
  src/util/libxmlconfig.a
  [...]

src/mesa/drivers/dri/common/libmegadriver_stub.a(megadriver_stub.c.o): In function `megadriver_stub_init':
megadriver_stub.c:(.text.startup+0x20): undefined reference to `dladdr'
megadriver_stub.c:(.text.startup+0xbc): undefined reference to `dlsym'
collect2: error: ld returned 1 exit status

This problem seems to be specific to this toolchain release (ARM and aarch64)
CodeSourcery 2014.05: gcc 4.8.3-prerelease; binutils 2.24.51.20140217; glibc 2.18

The following prebuilt toolchain has been tested and doesn't trigger this issue:
Linaro 4.9-4.9-2014.11: gcc 4.9.3; binutils 2.24.0; glibc 2.19
CodeSourcery 2014.11: gcc 4.9.1; binutils 2.24.51.20140217; glibc 2.20

Older toolchains doesn't have a recent enough glibc or linux-headers version
to breaking the build with mesa3d 20.1.0 or libdrm 2.4.102.

In order to build mesa3d with the CodeSourcery 2014.05 using --as-needed would be
reorder the static librairies:

 diff --git a/src/mesa/drivers/dri/meson.build b/src/mesa/drivers/dri/meson.build
 index b09ca16e38a..9ac6731c522 100644
 --- a/src/mesa/drivers/dri/meson.build
 +++ b/src/mesa/drivers/dri/meson.build
 @@ -59,7 +59,7 @@ if _dri_drivers != []
      [],
      link_whole : _dri_drivers,
      link_with : [
 -      libmegadriver_stub, libdricommon, libglapi,
 +      libdricommon, libmegadriver_stub, libglapi,
        libmesa_classic,
      ],

Instead, we can disable --as-needed from the meson build system using
"-Db_asneeded=false" only for this toolchain.

[1] https://mesonbuild.com/Builtin-options.html
[2] https://wiki.gentoo.org/wiki/Project:Quality_Assurance/As-needed

Fixes:
http://autobuild.buildroot.net/results/eec39a4fbfbfaa58980fab36f2fd902a16eecf0f/build-end.log

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-06-14 09:36:21 +02:00
Thomas Petazzoni
a6569f2b3d Merge branch 'next'
A few conflicts had to be resolved:

 - Version number and hash for mesa3d-headers/mesa3d
 - Patches added in qemu, and the qemu version number
 - The gnuconfig README.buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-06-02 21:59:52 +02:00
Bernd Kuhls
9ca15896b7 package/{mesa3d, mesa3d-headers}: bump version to 20.1.0
Rebased 0006-pan_bo.h-add-time.h-include-for-time_t.patch.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-05-29 22:46:59 +02:00
Bernd Kuhls
08c8281290 package/{mesa3d, mesa3d-headers}: bump version to 20.0.7
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-05-29 22:46:49 +02:00
James Hilliard
00c1a8c34f package/mesa3d: propagate missing libdrm-freedreno deps
Libdrm freedreno depends on BR2_arm || BR2_aarch64 || BR2_aarch64_be
as such we need to propagate those dependencies to mesa's gallium
freedreno driver.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-05-26 22:44:31 +02:00
Joseph Kogut
8e79f54323 package/mesa3d: reorder platforms to fix EGL
Mesa chooses the first platform specified in -Dplatforms as the default
EGL native platform. [0]

    Configure Options

    -D platforms=...
        List the platforms (window systems) to support. Its argument is
        a comma separated string such as -D platforms=x11,drm. It
        decides the platforms a driver may support. The first listed
        platform is also used by the main library to decide the native
        platform.

This has the effect of breaking EGL applications running on X11 and
possibly Wayland when the first platform specified isn't x11 or wayland,
and EGL_PLATFORM isn't set.

Reorder the specified platforms to use x11, wayland, and drm before
surfaceless, as this is the order chosen by other common distributions,
such as Arch Linux [1], Debian [2], and Fedora [3].

Users preferring drm or surfaceless over x11 or wayland likely know how
to override the native EGL platform, and likely have x11 and wayland
disabled anyway.

[0] https://www.mesa3d.org/egl.html
[1] https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/mesa#n45
[2] fb8c1efb57/debian/rules (L38)
[3] https://src.fedoraproject.org/rpms/mesa/blob/master/f/mesa.spec#_337

Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-05-16 10:00:09 +02:00
Bernd Kuhls
ae63a9c953 package/{mesa3d, mesa3d-headers}: bump version to 20.0.7
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-05-15 21:57:59 +02:00
James Hilliard
72fb9b2fb8 package/mesa3d: drop pkgconfig workaround
This workaround is not needed as of commit
5cff3a8bdf which properly sets the
PKG_CONFIG_LIBDIR for native: true dependencies.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-05-02 18:19:51 +02:00
Bernd Kuhls
b0059dabfd package/{mesa3d, mesa3d-headers}: bump version to 20.0.6
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-05-01 21:13:06 +02:00
James Hilliard
b6d1876d7a package/mesa3d: add valgrind support
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-04-28 07:39:10 +02:00
Bernd Kuhls
794e9e5778 package/{mesa3d, mesa3d-headers}: bump version to 20.0.5
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-04-23 23:26:54 +02:00
Fabio Estevam
e49db51dc4 package/mesa3d: select LIBDRM_FREEDRENO for freedreno
The mesa3d freedreno driver is not usable without the corresponding
libdrm support for this platform, so select LIBDRM_FREEDRENO.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-04-11 10:32:21 +02:00
Fabio Estevam
5b03d42032 package/mesa3d: do not select MESA3D_OPENGL_EGL for etnaviv
As suggested by Thomas, BR2_PACKAGE_MESA3D_OPENGL_EGL should not
be automatically selected by the etnaviv driver.

Suggested-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-04-11 10:32:02 +02:00
Bernd Kuhls
0936fe3dcf package/{mesa3d, mesa3d-headers}: bump version to 20.0.4
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-04 17:28:05 +02:00
Bernd Kuhls
e529989af1 package/{mesa3d, mesa3d-headers}: bump version to 20.0.3
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-02 23:40:43 +02:00
Peter Seiderer
e0acca9f3e package/mesa3d: fix musl related compile failures
Fixes:

  http://autobuild.buildroot.net/results/1881daae69992e30a9c1fff1f639d57f82e6ee19

  ../src/gallium/drivers/vc4/vc4_bufmgr.c:110:57: error: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Werror=format=]

  ../src/gallium/drivers/panfrost/pan_bo.h:93:9: error: unknown type name ‘time_t’

  ../src/gallium/drivers/v3d/v3d_bufmgr.c:83:57: error: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘time_t’ {aka ‘long long int’} [-Werror=format=]

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-03-22 22:15:17 +01:00
Peter Seiderer
ff00c284c5 package/mesa3d: disable v3d support for arm if neon is not supported
The v3d driver for arm uses neon instructions unconditionally, so
depend on BR2_ARM_CPU_HAS_NEON.

Fixes:

  http://autobuild.buildroot.net/results/66c4df4ee84b73160dde5fe4437b5abdbd2b50d2

  [1050/1079] Compiling C object 'src/gallium/drivers/v3d/99241e4@@v3d_neon@sta/v3d_tiling.c.o'.
  {standard input}: Assembler messages:
  {standard input}:417: Error: selected processor does not support `vldm r6,{q0,q1,q2,q3}' in ARM mode
  {standard input}:418: Error: selected processor does not support `vst1.8 d0,[r4],r5' in ARM mode
  {standard input}:419: Error: selected processor does not support `vst1.8 d1,[r4],r5' in ARM mode
  {standard input}:420: Error: selected processor does not support `vst1.8 d2,[r4],r5' in ARM mode
  {standard input}:421: Error: selected processor does not support `vst1.8 d3,[r4],r5' in ARM mode
  {standard input}:422: Error: selected processor does not support `vst1.8 d4,[r4],r5' in ARM mode
  {standard input}:423: Error: selected processor does not support `vst1.8 d5,[r4],r5' in ARM mode
  {standard input}:424: Error: selected processor does not support `vst1.8 d6,[r4],r5' in ARM mode

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-03-22 15:42:13 +01:00
Peter Seiderer
85c95e3614 package/mesa3d: fix vc4 neon related compile failure
Add mesa3d patch to add a vc4 option to disable
the optional neon support and set it dependent
on BR2_ARM_CPU_HAS_NEON.

Fixes:

  http://autobuild.buildroot.net/results/6387b0a99e1a0922811919623d9a10b0943988df

  [1086/1254] Compiling C object 'src/gallium/drivers/vc4/691f666@@vc4_neon@sta/vc4_tiling_lt_neon.c.o'.
  {standard input}: Assembler messages:
  {standard input}:334: Error: selected processor does not support `vldm r4,{q0,q1,q2,q3}' in ARM mode
  {standard input}:335: Error: selected processor does not support `vst1.8 d0,[r3],r2' in ARM mode
  {standard input}:336: Error: selected processor does not support `vst1.8 d1,[r3],r2' in ARM mode
  {standard input}:337: Error: selected processor does not support `vst1.8 d2,[r3],r2' in ARM mode
  {standard input}:338: Error: selected processor does not support `vst1.8 d3,[r3],r2' in ARM mode
  {standard input}:339: Error: selected processor does not support `vst1.8 d4,[r3],r2' in ARM mode
  {standard input}:340: Error: selected processor does not support `vst1.8 d5,[r3],r2' in ARM mode
  {standard input}:341: Error: selected processor does not support `vst1.8 d6,[r3],r2' in ARM mode

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-03-22 15:42:09 +01:00
Bernd Kuhls
4549706d07 package/{mesa3d, mesa3d-headers}: bump version to 20.0.2
Removed patch applied upstream.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[yann.morin.1998@free.fr: two spaces in hash file]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-03-20 21:54:34 +01:00
Peter Korsgaard
fd99eb5016 Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-09 15:17:09 +01:00
Peter Seiderer
99e7cf6de7 package/mesa3d: fix nouveau std::isinf related compile failure
Activate already existing mesa3d solution for the isinf compile
failure for uclibc based toolchains instead of using a custom
workaround.

- remove 0005-src-gallium-drivers-nouveau-codegen-nv50_ir_ra.cpp-p.patch
- add 0004-c99_math-import-isinf-for-uclibc-based-toolchains.patch

Fixes:
  http://autobuild.buildroot.net/results/cbefc5d4a4fefb674e596400fa1d2698cd89c5b3/
  http://autobuild.buildroot.net/results/dc974da012f53fa4ed3be616f937b0afae423d66/

  ../src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp: In member function 'bool nv50_ir::GCRA::simplify()':
  ../src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp:1348:19: error: expected unqualified-id before '(' token
            if (std::isinf(bestScore)) {
                     ^

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-03-05 18:19:41 +01:00
Peter Seiderer
75c5cc23b4 package/mesa3d: fix linux/kcmp.h related compile failure
Add upstream patch [1].

Fixes:

  http://autobuild.buildroot.net/results/df5bcb8e4f6e98c4de347abbbe91e10a98047422

  ../src/util/os_file.c:37:24: fatal error: linux/kcmp.h: No such file or directory

[1] https://cgit.freedesktop.org/mesa/mesa/commit/?id=f7bfb10c69dfe48a91e35523cb5ee641bdbf6988

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-03-04 19:21:10 +01:00
Bernd Kuhls
346fda84eb package/{mesa3d, mesa3d-headers}: bump version to 20.0.0
Added optional dependency to zstd present due to upstream commit:
https://cgit.freedesktop.org/mesa/mesa/commit/?id=a8d941091f72923561a6c58b46ccb264b6a0e205

Replaced MESA_EGL_NO_X11_HEADERS define with EGL_NO_X11 due to upstream
commit:
https://cgit.freedesktop.org/mesa/mesa/commit/?id=6202a13b71e18dc31ba7e2f4ea915b67eacc1ddb

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-23 14:16:01 +01:00
Romain Naour
73835f5766 package/mesa3d: gbm needs a DRI driver or a Gallium driver w/ EGL
src/gbm/cd6bfad@@gbm at sha/main_backend.c.o: In function `_gbm_create_device':
backend.c:(.text+0x38): undefined reference to `gbm_dri_backend'
backend.c:(.text+0x40): undefined reference to `gbm_dri_backend'
backend.c:(.text+0x74): undefined reference to `gbm_dri_backend'
backend.c:(.text+0x78): undefined reference to `gbm_dri_backend'
collect2: error: ld returned 1 exit status

This issue has been trigged since [1]:
"package/mesa3d: add option to configure gbm support"

Before the patch, the gbm support was autodetected by meson and enabled
only when at least one dri driver was enabled [2].

On the Buildroot side, the gbm support was explicitely enabled only when
BR2_PACKAGE_MESA3D_OPENGL_EGL was set.

We have two cases:
- At least one DRI driver.
- No DRI driver but one Gallium w/ EGL enable (EGL selected or not by the
  Gallium driver). In this case the meson build system set with_dri to true
  (even if no DRI driver is enabled) to use the builtin:egl_dri2 [3].

The gbm's meson build system seems to handle the case where no dri driver is
enabled [4] but it still use main/backend.c source file [6] that use
gbm_dri_backend [7]. So with_dri2 must always be set.

Probably a missing check in meson.build:

 if with_gbm and not with_dri
   error('GBM backend needs a dri driver or a gallium driver w/ EGL support.')
 endif

Add a dependency on GBM option:

 depends on BR2_PACKAGE_MESA3D_DRI_DRIVER \
         || (BR2_PACKAGE_MESA3D_GALLIUM_DRIVER && BR2_PACKAGE_MESA3D_OPENGL_EGL)

Fixes:
http://autobuild.buildroot.net/results/b9b6281983388dc22d929887d653da3db60f1f2c

[1] b6c051acf7
[2] https://gitlab.freedesktop.org/mesa/mesa/blob/19.3/meson.build#L348
[3] https://gitlab.freedesktop.org/mesa/mesa/blob/19.3/meson.build#L212
[4] https://gitlab.freedesktop.org/mesa/mesa/blob/19.3/src/gbm/meson.build#L37
[5] https://gitlab.freedesktop.org/mesa/mesa/blob/19.3/src/gbm/meson.build#L24
[6] https://gitlab.freedesktop.org/mesa/mesa/blob/19.3/src/gbm/main/backend.c#L38
[7] http://lists.busybox.net/pipermail/buildroot/2020-February/274425.html

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[yann.morin.1998@free.fr: fix dependency of comment]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-22 20:00:07 +01:00
Romain Naour
59dfa879fb package/mesa3d: select gbm if no glx, no egl and no osmesa-classic
This issue has been trigged since [1]:
"package/mesa3d: add option to configure gbm support"

Before the patch, the gbm support was autodetected by meson and enabled
only when at least one dri driver was enabled [2].

On the Buildroot side, the gbm support was explicitely enabled only when
BR2_PACKAGE_MESA3D_OPENGL_EGL was set.

Now, the gbm support is explicitely disabled but the meson build system
check if at least one option OpenGL GLX or OpenGL EGL or GBM or
OSMesa (classic) library is enabled [3].

The previous behavious was to enable GBM when GLX, EGL and OSMesa are
disabled. So select GBM symbol for this case.

Fixes:
http://autobuild.buildroot.net/results/a14f329560f8022f7ba8ec43ad8eed84e005d226

[1] b6c051acf7
[2] https://gitlab.freedesktop.org/mesa/mesa/blob/19.3/meson.build#L348
[3] https://gitlab.freedesktop.org/mesa/mesa/blob/19.3/meson.build#L449

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-22 19:34:48 +01:00
Bernd Kuhls
be7ee2a088 package/{mesa3d, mesa3d-headers}: bump version to 19.3.4
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-02-15 12:06:45 +01:00
Yann E. MORIN
274d586060 package/mesa3d: fix circular dependency in Kconfig
When the r300 driver was introduced in c5ae77c97 (package/mesa3d: add
support for gallium r300 driver), a last-minute fix was introduced by
Yann, to properly propagate the dependency of a selected symbol.

However, this ended up causing a spurious circular dependency that does
not really exists, but that Kconfig is not smart enough to detect is in
fact OK.

Fixing this is pretty non-obvious, but we have an easy way out: the
dependency is about libdrm's radeon driver requirement for a toolchain
that has the sync4 family of primitives, which is always a given for an
x86 toolchain. As the radeon r300 driver is x86-only, this dependency is
forcefully fulfilled.

So, we drop the propagated dependency, and replace it by a fat comment.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Romain Naour <romain.naour@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Cc: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-02-11 23:39:48 +01:00
James Hilliard
c5ae77c97a package/mesa3d: add support for gallium r300 driver
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr: propagate libdrm's radeon dependencies]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-09 17:28:48 +01:00
James Hilliard
aacf71d107 package/mesa3d: add support for gallium i915 driver
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr: also guard comment with x86 dependency]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-09 11:04:51 +01:00
James Hilliard
3268650a67 package/mesa3d: fix iris driver depends and selects
iris is inherently an x86-only driver, and it hard codes gcc options
specific to x86m like -msse2, causing build breakage on other
architectures.

iris also does not use kmsro, but the select was accidentally added when
iris was introduced.

Fix both by adding the missing dependency to x86, and by removing the
select to kmsro.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr:
  - ad dependency to x86
  - reword commit log accordingly
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-09 10:12:38 +01:00
Peter Seiderer
e904534ad3 package/mesa3d: add v3d driver support
Support for v3d was added in mainline 4.18, and requires a few options
to be set in the kernel, so we list that in the help text.

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[yann.morin.1998@free.fr: tweak the help text]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-04 21:49:17 +01:00
Bernd Kuhls
b6c051acf7 package/mesa3d: add option to configure gbm support
Kodi 18.0-Leia implements stand-alone gbm support alongside x11 &
wayland. To enable building gbm support in mesa3d without x11 &
wayland we need to add a specific configure option for it.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-02-03 11:42:42 +01:00
James Hilliard
77b4f9b31b package/mesa3d: add support for gallium iris driver
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-02-01 23:36:31 +01:00
Bernd Kuhls
44655cda41 package/{mesa3d, mesa3d-headers}: bump version to 19.3.3
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-01-29 20:48:18 +01:00