aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mesa/mesa.inc
AgeCommit message (Collapse)Author
2019-02-03llvm,mesa: Upgrade to upcoming 8.0.0 releaseKhem Raj
License-Update: Copyright year updates from 2017-2019 Refresh patches to apply on new version mesa move dep to the llvm release to 8.0 Needs to happen along with llvm upgrade always Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-31mesa: enable native and nativesdk variantsAlexander Kanavin
Note that only the most minimal necessary subset of mesa is built; particularly we don't build any drivers as that is offloaded to the GL implementation provided by the host. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-18mesa: Allow building the r600 driverAlistair Francis
The r600 DRI driver does not require LLVM, so remove it from the LLVM dependency PACKAGE_CONFIG. Also remove the x86 requirement on the drivers as they are work on non-x86 systems. This was tested on a RISC-V board. Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-14meta: Fix Deprecated warnings from regexsRichard Purdie
Fix handling of escape characters in regexs and hence fix python Deprecation warnings which will be problematic in python 3.8. Note that some show up as: """ meta/classes/package.bbclass:1293: DeprecationWarning: invalid escape sequence \.   """ where the problem isn't on 1293 in package.bbclass but in some _prepend to a package.bbclass function in a different file like mesa.inc, often from do_package_split() calls. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-18mesa: Remove machine specific appendMark Hatle
If you try to build a system with multiple BSPs, one of which is qemux86 or qemux86-64, the overall system configuration will change and all of the graphics packages will end up being rebuilt each time. For a package based system, the PR values will also be incremented each time. The end result will be an ever growing set of PR values as well as being unable to tell which configured version of the graphics components are really being deployed. The solution was to always include the virgl gallium driver when an x86 based target is used. This may end up wasting some space, but solves the hash issue. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-03mesa: Disable asm on muslKhem Raj
Musl started blocking dlopen of libs with initial-exec references into dynamic TLS area, via https://github.com/kraj/musl/commit/5c2f46a214fceeee3c3e41700c51415e0a4f1acd prior to that commit, musl was loading it and silently letting subsequent TLS accesses via the miscompiled code clobber memory that didn't belong to them This was wrong behavior and it relied on additional space reserved by libc in TLS space to adjust fo such broken libs, but it also fails with glibc if the reserved space was already used up Right fix is that mesa should be patched to remove all the initial-exec hacks and use real TLS, and -mtls-dialect=gnu2 (TLSDESC) should be used on archs it's supported on (i386, x86_64, and aarch64) to make up for the lost performance, but mesa hardcodes the initial-exec, so there must be a reason that probably is better known to mesa devs. but we 'fixed' it for musl by adding --disable-glx-tls for mesa in OE, which uses pthread_getspecific instead and makes is lot slower. this caused additional problems with security flags on, it get textrels in .text segment. Therefore this is 'second fix' to get us through this warning. Cause is some unknown part of mesa's x86 assembly code is broken by readonly text segments [ YOCTO #12918 ] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21mesa: enable virgl driver for qemux86/qemux86-64Ming Liu
virgl driver should be enabled for qemux86/qemux86-64 machines, or else it will cause runtime issue due to virtio_gpu driver missing. Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-09-07mesa: disable LLVM on x86Ross Burton
Whilst turning on the LLVM drivers is a honourable goal, the performance impact is *huge*. Instead let specific BSPs turn it on as required. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21mesa: Enable gallium-llvm on x86 and x86_64Khem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20mesa: Define YOCTO_ALTERNATE_MULTILIB_NAME to consider multilib namesKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15mesa: Disble TLS for muslKhem Raj
See https://bugs.freedesktop.org/show_bug.cgi?id=35268 mesa should infact stop using __attribute__((tls_model("initial-exec"))) until then we disale TLS in glx for musl The problem could happen even on glibc if static TLS sizes are large enough which would mean that additional space the glibc leaves for such rogue libraries get consumed and then same problems show up there as well Fixes errors seen in xorg logs e.g. (EE) Failed to load /usr/lib/xorg/modules/extensions/libglx.so: Error relocating /usr/lib/libGL.so.1: _ITM_deregisterTMCloneTable: initial-exec TLS resolves to dynamic definition in /usr/lib/libGL.so.1 enable readonly text segment on x86 for musl Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18mesa: Fix build with wayland and eglKhem Raj
When wayland and egl both are on then it enables the wayland plugin which actually fails to build because its not finding wayland-protocol xml templates in proper location which is recipe sysroot since we are cross compiling Fixes build errors e.g. make[4]: *** No rule to make target `//usr/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml', needed by `drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h'. Stop. make[4]: *** Waiting for unfinished jobs.... Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-04mesa: enable surfaceless platformRoss Burton
This platform is enabled by default but as we override the platform list doesn't get enabled. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29mesa: fix installed-vs-shipped errorKai Kang
When 'opengl' is not set in DISTRO_FEATURES, ${libdir}/pkgconfig is an empty directory and cause installed-vs-shipped error. Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-11mesa: ensure all libwayland-egl* files are removedDenys Dmytriyenko
Wayland 1.15+ now ships libwayland-egl by itself, so Mesa should remove its instance. Previous commit 6e5952fcfc13ff4b63c9376bd41a1dbba957f425 only removed .so libraries, but left .la, which resulted in conflict. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-11mesa: Define PYTHON2Khem Raj
Ensure that python2 is not assumed to be python which can point to python3 in some cases, when building gallium-llvm there are scripts which are requiring python2 and wont work with python3 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-05-04wayland: upgrade to 1.15.0Denys Dmytriyenko
Official announcement: https://lists.freedesktop.org/archives/wayland-devel/2018-April/037767.html | libwayland-egl is now part of libwayland, and will presumably be removed | from mesa in the not too distant future. Update mesa recipe by removing corresponding libwayland-egl entries. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-05-04xorg: Replace depreciated *proto depends with xorgprotoArmin Kuster
This completes the transition to xorgproto. Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-04-05mesa: Update to use llvm 6.0Richard Purdie
Adpat to the upgrade from 5.0 -> 6.0. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-04-03mesa: Prefer dri3 for x11/openglAndreas Müller
Adresses [1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=12642 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-28virtual/libgbm: createTrevor Woerner
The 'glamor' PACKAGECONFIG in xserver-xorg creates a dependency on libgbm which can be satisfied in some cases by mesa, in others by blobs such as mali. Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-03-28mesa.inc: make PROVIDES conditional on PACKAGECONFIGTrevor Woerner
Mesa only PROVIDES these features if they are enabled via PACKAGECONFIG. Therefore make the PROVIDES conditional depending on whether or not these features have been enabled. Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-03-12meta: remove some EXCLUDE_FROM_WORLD assignmentsRoss Burton
Now that we have recipe-specific-sysroots we don't need to exclude recipes from world builds because they conflict with other recipes, as they'll all be built with their own sysroots. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-29meta: don't use deprecated functions from utils.bbclassRoss Burton
These functions were moved to meta/lib/oe in 2010 and the base_* functions in utils.bbclass were intended to be a short-term compatibility layer. They're still used in a few places, so update the callers to use the new functions. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-03mesa: Upgrade to 17.3.1 releaseOtavio Salvador
The 17.3.1 release, published in December 21, 2017, is the first 17.3 stable release for use. It fixes a number of issues since 17.3.0 release. The release notes can be seen at: - 17.3.0: https://www.mesa3d.org/relnotes/17.3.0.html - 17.3.1: https://www.mesa3d.org/relnotes/17.3.1.html This commit has reworked few patches, to apply to the new source, and dropped the backported ones. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-11-10mesa: Upgrade to 17.2.4 releaseOtavio Salvador
Upgrade to a new stable release and drop patches applied on upstream. For a full release notes, please see: https://mesa3d.org/relnotes/17.2.0.html https://mesa3d.org/relnotes/17.2.1.html https://mesa3d.org/relnotes/17.2.2.html https://mesa3d.org/relnotes/17.2.3.html https://mesa3d.org/relnotes/17.2.4.html Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-08-30mesa: Support building without openglJussi Kukkonen
mesa can build certain things without opengl: most importantly vulkan drivers. Add comments on the dependencies between the packageconfigs. Also add a few dependencies to packageconfigs. Modify default packageconfig to do the reasonable thing based on distro features. Add a backported patch to fix the build with --disable-opengl. Fix do_install_append() so it works even if dri drivers are not built. Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-16mesa: Fix build with vulkan on non-x86Jussi Kukkonen
The intel vulkan driver requires libdrm-intel: Only enable it when building for x86 or x86-64 similar to DRI drivers. Building on non-x86* with vulkan leads to "--with-vulkan-drivers= ": this is interpreted correctly by the build system. Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-09mesa, llvm: Use native version of llvm-configKhem Raj
We have a variable YOCTO_ALTERNATE_EXE_PATH to point to target sysroot, utilize this in mesa to use native version of llvm-config to report values from target sysroot. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-08-09mesa: Depend on llvm-nativeKhem Raj
We need to get llvm-config tool staged which is provided by llvm-native Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-08-09mesa: Use chrpath to delete rpathsKhem Raj
It adds native sysroot chrpath due to llvm-config in cross compiling we can delete them via chrpath, since libs are in standard paths rpath is really not needed Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-07-31mesa: Fix build when building with llvmpipeKhem Raj
Add following in mesa.inc to enable llvmpipe PACKAGECONFIG_append_x86 = " gallium-llvm gallium r600" PACKAGECONFIG_append_x86-64 = " gallium-llvm gallium r600" This would enable llvmpipe for swrast, to check run this root@qemux86:~# glxinfo | grep llvm Device: llvmpipe (LLVM 5.0, 128 bits) (0xffffffff) OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 5.0, 128 bits) Backport patches to support llvm 5.0.0+ Add a patch to understand llvm version when llvm is build from git/svn Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-07-11mesa: Split --with-platforms from egl PACKAGECONFIGJussi Kukkonen
Mesa platforms no longer depend directly on egl. Current implementation breaks without egl with x11 (which can happen with mesa-gl). Separate the platform selection. Make drm platform depend on gbm PACKAGECONFIG by default. Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-07-08mesa, gstreamer: Add "vulkan" DISTRO_FEATUREJussi Kukkonen
It doesn't do much but does make enabling vulkan a little less fiddly. Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-07-06mesa: Avoid platform probing when building without EGLOtavio Salvador
The 17.1.2 release has changed the platform setting and when not explicitly disabled it assumes x11 support. Fixes: | checking for x11-xcb xcb xcb-dri2 >= 1.8 xcb-xfixes... no | configure: error: Package requirements (x11-xcb xcb xcb-dri2 >= 1.8 xcb-xfixes) were not met: | | No package 'x11-xcb' found | No package 'xcb' found | No package 'xcb-dri2' found | No package 'xcb-xfixes' found | | 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_DRI2_CFLAGS | and XCB_DRI2_LIBS to avoid the need to call pkg-config. | See the pkg-config man page for more details. The issue has been exposed by meta-freescale BSP. Fix tested with imx6qsabresd machine. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-06-28mesa.inc: replace deprecated configure optionsTrevor Woerner
--with-egl-platforms -> --with-platforms --enable-gallium-llvm -> --enable-llvm Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-06-12mesa.inc: enable texture float for galliumTrevor Woerner
Following the lead from Fedora (as suggested by Rob Clark) always enable --enable-texture-float for all gallium drivers, but then modify the code to not enable it, at runtime, where the implementation isn't backed by hardware. The patch comes from unpacking fedora-25's mesa-17.0.5-3.fc25.src.rpm from https://dl.fedoraproject.org/pub/fedora/linux/updates/25/SRPMS/m/ Somewhere along the path from OpenGL ES 2.0 to OpenGL ES 3.0 are some algorithms that are encumbered by patents. These algorithms are enabled with mesa's --enable-texture-float configure flag. However, if hardware acceleration is being used and the hardware supports --enable-texture-float, it means the hardware vendor has paid for the patents. Note that with this solution, non-hardware gallium drivers (e.g. swrast) can't --enable-texture-float, which might cause issues with some piglit tests. This solution was discussed and agreed-to on the mailing list: http://lists.openembedded.org/pipermail/openembedded-core/2017-May/137233.html Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09mesa: Add define to indicate missing 64bit atomics on armv5Khem Raj
This is wrongly detected by configure since it only checks for __sync_add_and_fetch and not __atomic_fetch_add, it decides to let compiler emit references to atomic functions which it expects to be provided by libgcc, but thats not the case for armv5 arch [YOCTO #11616] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-06-03mesa: upgrade to 17.1.1Nicolas Dechesne
* Costmetic changes in license.html file required new MD5 hash * Add PACKAGECONFIG option for libunwind support (new feature, disable by default) * Rebased 0001-Use-wayland-scanner-in-the-path.patch * Added zlib in DEPENDS, otherwise mesa no longer builds. * Added 0001-util-rand_xor-add-missing-include-statements.patch, sent upstream Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-05-16mesa: drop pythonnative inheritAlexander Kanavin
Mesa is perfectly capable of using host python nowadays. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-27mesa: Add Etnaviv and i.MX Gallium backend PACKAGECONFIG optionsOtavio Salvador
The MESA 17.0 has Etnaviv and i.MX support. Expose them in PACKAGECONFIG for use. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-17mesa: Contain configure search for llvmKhem Raj
Configure has an unbridled check for llvm and when distro provided llvm is installed on build host it will use that from /usr/bin to poke for llvm libs and configs. This would result in a subtle errors however do_qa_configure catches it as a host include/lib contamination during configure checks ERROR: mesa-gl-2_17.0.1-r0 do_configure: This autoconf log indicates errors, it looked at host include and/or library paths while determining system capabilities. Rerun configure task after fixing this. This is correct because when configure detects build host provided llvm then it add the include/lib paths to compiler cmdline which are looking into /usr/include and /usr/lib Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-10mesa: Enable vulkan driver for intelJussi Kukkonen
PACKAGECONFIG "vulkan" enables building libvulkan_intel.so. The radeon driver can be added to recipe as well but it requires llvm so recent that I couldn't test it. Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-04mesa: Upgrade 13.0.4 -> 17.0.0Jussi Kukkonen
17.0.0 is considered a development release: 17.0.1 is expected to be the first stable in this series. Typically the .1 release comes about two weeks after .0. * New feature release with lots of changes * Versioning change (17 as in 2017, no longer relates to GL bumps) * OpenGL 4.5 support on Haswell * mesa now implements its own sha1 instead of having 5 configurable sha-providers * Remove libxvmcsoftpipe packaging, the library hasn't existed since 2013 Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-01recipes: Make use of the new bb.utils.filter() functionPeter Kjellerstedt
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16meta: remove True option to getVar callsJoshua Lock
getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Search made with the following regex: getVar ?\(( ?[^,()]*), True\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-11-30mesa: make sure GLES3 headers are installedSamuli Piippo
Since there is no libgles3-mesa package that would pull in the headers, add dependency to libgles2-mesa-dev. Now there no need to manually add GLES3 headers to image or toolchain. Signed-off-by: Samuli Piippo <samuli.piippo@qt.io> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-11-23mesa: Upgrade 12.0.3 -> 13.0.1Jussi Kukkonen
New major release with OpenGL 4.4 support. Dependency on libudev has been removed. * Rebase replace_glibc_check_with_linux.patch * Add patch to find native wayland-scanner * Add PACKAGECONFIG[osmesa], disabled by default * package osmesa header correctly Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-07-20mesa: Upgrade 11.2.2 -> 12.0.1Jussi Kukkonen
Massive mesa upgrade (OpenGL 4.3, GLVND support, vulkan driver for intel etc), although many new things are disabled by default. License file change does not change the actual licenses. piglit results (with piglit update on ML) on an old NUC with Intel HD5000 for reference: pass: 33972 fail: 306 crash: 2 skip: 30857 warn: 7 total: 65144 Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
2016-05-20mesa: fix mesa_populate_packages() when dri is disabledHerve Jourdain
When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list of DRI drivers is empty, it will cause populate_package to fail, because it can't find - rightfully - the directory for the DRI drivers. This patch checks that the directory indeed exists before trying to get a list of the files in it [ use oe.path.join instead of + - RB ] Signed-off-by: Herve Jourdain <herve.jourdain@neuf.fr> Signed-off-by: Ross Burton <ross.burton@intel.com>