diff options
author | Andrew Geissler <geissonator@yahoo.com> | 2020-12-12 01:27:59 +0300 |
---|---|---|
committer | Andrew Geissler <geissonator@yahoo.com> | 2020-12-12 01:28:21 +0300 |
commit | 8fc454f9beebdd347403145c991697019a593cff (patch) | |
tree | 8cf3da68cb51c21d0989a7fb81249229e70b6fc8 /meta-openembedded/meta-oe/recipes-benchmark | |
parent | 12e5ffbbbaa05790d387750fadff4a2bf74e4f93 (diff) | |
download | openbmc-8fc454f9beebdd347403145c991697019a593cff.tar.xz |
meta-openembedded: subtree update:f623d8b574..936f2380bb
Alexander Vickberg (2):
libwebsockets: upgrade to 4.1.6
mbedtls: upgrade to 2.24.0
Bartosz Golaszewski (1):
libgpiod: update v1.4.5 -> v1.6.2
Beniamin Sandu (1):
trace-cmd: create recipe for version 2.9.1
Fabio Berton (2):
beep: Add recipe for version 1.2.2
linuxconsole: Add recipe for version 1.7.0
Gianfranco (1):
dlt-daemon: add upstream patch to fix CVE-2020-29394
Kai Kang (1):
colord: fix installed-vs-shipped error
Khem Raj (1):
packagegroup-meta-python: Remove packages moved to core
Luca Boccassi (3):
dbus-broker: rdepend on dbus-common
dbus-brocker: upgrade 23 -> 24
dbus-broker: upgrade 24 -> 25
Martin Jansa (1):
nanopb: move to dynamic-layers
Michael Vetter (1):
jasper: upgrade 2.0.22 -> 2.0.23
Philip Balister (1):
spdlog: Fix recipe so other recipes can use spdlog with external fmt.
Robert Karszniewicz (1):
firmwared: add recipe
Roland Hieber (5):
pcsc-lite: provide pcsc-lite-lib-native explicitly for native build
lockfile-progs: use DEBIAN_MIRROR in SRC_URI
fbset: use DEBIAN_MIRROR in SRC_URI
liboop: use upstream SRC_URI
openct: use upstream SRC_URI
Senthil Selvaganesan (1):
fcgiwrap: add recipe
Thomas Perrot (1):
openocd: disable the support of ccache
Trevor Woerner (4):
glmark2: update information
glmark2: update to latest
glmark2: add support for dispmanx
glmark2: revert to previous behaviour
Vyacheslav Yurkov (1):
python3-aiohttp: added missing RDEPENDs
Wang Mingyu (2):
gensio: 2.1.4 -> 2.2.0
ser2net: 4.2.0 -> 4.3.0
Zang Ruochen (7):
dialog: upgrade 1.3-20200327 -> 1.3-20201126
fmt: upgrade 7.1.2 -> 7.1.3
hidapi: upgrade 0.10.0 -> 0.10.1
opensc: upgrade 0.20.0 -> 0.20.1
pugixml: upgrade 1.10 -> 1.11
satyr: upgrade 0.31 -> 0.35
nanopb: upgrade 0.4.3 -> 0.4.4
zhengruoqin (9):
c-periphery: upgrade 2.2.4 -> 2.2.5
crash: upgrade 7.2.8 -> 7.2.9
dfu-util: upgrade 0.9 -> 0.10
monit: upgrade 5.26.0 -> 5.27.1
qpdf: upgrade 10.0.1 -> 10.0.4
tcsh: upgrade 6.22.02 -> 6.22.03
xserver-xorg-cvt-native: upgrade 1.20.5 -> 1.20.9
zchunk: upgrade 1.1.6 -> 1.1.7
libconfig-autoconf-perl: upgrade 0.318 -> 0.319
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I8371eb789fa288193da895bd51ce2160194809d8
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-benchmark')
3 files changed, 172 insertions, 9 deletions
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0001-fix-dispmanx-build.patch b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0001-fix-dispmanx-build.patch new file mode 100644 index 000000000..e9b880c26 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0001-fix-dispmanx-build.patch @@ -0,0 +1,125 @@ +From 56e4959f0bc3e442c813d78e8ab6b3bf64b4ac66 Mon Sep 17 00:00:00 2001 +From: OpenEmbedded <oe.patch@oe> +Date: Wed, 2 Dec 2020 20:27:42 +0000 +Subject: [PATCH] fix dispmanx build + +For when the user is building "--with-flavors dispmanx-glesv2", fixes a bunch +of "redeclared as different kind of symbol" problems. + +This patch is almost entirely from: + https://github.com/glmark2/glmark2/commit/3b1a0f78d03ae126b78ee52a7c434809115e5993 + +Which was created by: Alexandros Frantzis <alexandros.frantzis@collabora.com> + +See: + https://github.com/glmark2/glmark2/issues/80 + +My contribution is to tweak the wscript to link all the required libraries. + +Upstream-status: submitted [https://github.com/glmark2/glmark2/pull/135] +Signed-off-by: Trevor Woerner <twoerner@gmail.com> +--- + src/native-state-dispmanx.cpp | 22 +++++++++++++++++----- + src/native-state-dispmanx.h | 7 +++---- + wscript | 2 +- + 3 files changed, 21 insertions(+), 10 deletions(-) + +diff --git a/src/native-state-dispmanx.cpp b/src/native-state-dispmanx.cpp +index 2117386..49f74e7 100644 +--- a/src/native-state-dispmanx.cpp ++++ b/src/native-state-dispmanx.cpp +@@ -23,13 +23,25 @@ + #include "native-state-dispmanx.h" + #include "log.h" + ++#include "EGL/egl.h" ++ + #include <cstring> + #include <csignal> + ++struct NativeStateDispmanx::Private ++{ ++ Private() ++ { ++ memset(&egl_dispmanx_window, 0, sizeof(egl_dispmanx_window)); ++ } ++ ++ EGL_DISPMANX_WINDOW_T egl_dispmanx_window; ++}; ++ + NativeStateDispmanx::NativeStateDispmanx() ++ : priv{std::make_unique<Private>()} + { + memset(&properties_, 0, sizeof(properties_)); +- memset(&egl_dispmanx_window, 0, sizeof(egl_dispmanx_window)); + } + + NativeStateDispmanx::~NativeStateDispmanx() +@@ -99,9 +111,9 @@ NativeStateDispmanx::create_window(WindowProperties const& properties) + 0 /*clamp*/, + DISPMANX_NO_ROTATE); + +- egl_dispmanx_window.element = dispmanx_element; +- egl_dispmanx_window.width = dst_rect.width; +- egl_dispmanx_window.height = dst_rect.height; ++ priv->egl_dispmanx_window.element = dispmanx_element; ++ priv->egl_dispmanx_window.width = dst_rect.width; ++ priv->egl_dispmanx_window.height = dst_rect.height; + vc_dispmanx_update_submit_sync(dispmanx_update); + + return true; +@@ -111,7 +123,7 @@ void* + NativeStateDispmanx::window(WindowProperties &properties) + { + properties = properties_; +- return &egl_dispmanx_window; ++ return &priv->egl_dispmanx_window; + } + + void +diff --git a/src/native-state-dispmanx.h b/src/native-state-dispmanx.h +index a6ed3d4..794b2d3 100644 +--- a/src/native-state-dispmanx.h ++++ b/src/native-state-dispmanx.h +@@ -24,10 +24,8 @@ + #define GLMARK2_NATIVE_STATE_DISPMANX_H_ + + #include <vector> ++#include <memory> + #include "bcm_host.h" +-#include "GLES/gl.h" +-#include "EGL/egl.h" +-#include "EGL/eglext.h" + + #include "native-state.h" + +@@ -46,11 +44,12 @@ public: + void flip(); + + private: ++ struct Private; + DISPMANX_DISPLAY_HANDLE_T dispmanx_display; + DISPMANX_UPDATE_HANDLE_T dispmanx_update; + DISPMANX_ELEMENT_HANDLE_T dispmanx_element; +- EGL_DISPMANX_WINDOW_T egl_dispmanx_window; + WindowProperties properties_; ++ std::unique_ptr<Private> priv; + }; + + #endif /* GLMARK2_NATIVE_STATE_DISPMANX_H_ */ +diff --git a/wscript b/wscript +index e09fa78..6c3869c 100644 +--- a/wscript ++++ b/wscript +@@ -205,7 +205,7 @@ def configure_linux(ctx): + + ctx.check_cxx(lib = 'brcmGLESv2', uselib_store = 'glesv2', libpath='/opt/vc/lib') + ctx.check_cxx(lib = ['brcmEGL', 'brcmGLESv2'], uselib_store = 'egl', libpath='/opt/vc/lib') +- ctx.check_cxx(lib = ['bcm_host', 'vcos', 'vchiq_arm'], uselib_store = 'dispmanx', libpath='/opt/vc/lib') ++ ctx.check_cxx(lib = ['brcmEGL', 'brcmGLESv2', 'vchostif', 'bcm_host', 'vcos', 'vchiq_arm'], uselib_store = 'dispmanx', libpath='/opt/vc/lib') + + # Check optional packages + opt_pkgs = [('x11', 'x11', None, list_contains(ctx.options.flavors, 'x11')), +-- +2.28.0.497.g54e85e7af1 + diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0002-run-dispmanx-fullscreen.patch b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0002-run-dispmanx-fullscreen.patch new file mode 100644 index 000000000..27bd62edb --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0002-run-dispmanx-fullscreen.patch @@ -0,0 +1,30 @@ +From 110ef8357ebaf24bc3995e631ec809a2f84c3b87 Mon Sep 17 00:00:00 2001 +From: Trevor Woerner <twoerner@gmail.com> +Date: Thu, 3 Dec 2020 07:16:58 -0500 +Subject: [PATCH] run dispmanx fullscreen + +The dispmanx flavour can only run fullscreen, therefore set the size to +fullscreen when glmark2-es2-dispmanx is run. + +Upstream-status: submitted [https://github.com/glmark2/glmark2/pull/135] +Signed-off-by: Trevor Woerner <twoerner@gmail.com> +--- + src/main.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/main.cpp b/src/main.cpp +index 677962e..273a217 100644 +--- a/src/main.cpp ++++ b/src/main.cpp +@@ -164,6 +164,11 @@ main(int argc, char *argv[]) + Options::size = std::pair<int,int>(800, 600); + } + ++#if GLMARK2_USE_DISPMANX ++ /* dispmanx can only run fullscreen */ ++ Options::size = std::pair<int,int>(-1, -1); ++#endif ++ + // Create the canvas + #if GLMARK2_USE_X11 + NativeStateX11 native_state; diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb index 2e727a01c..44bce9fb5 100644 --- a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb +++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb @@ -1,31 +1,36 @@ SUMMARY = "OpenGL (ES) 2.0 benchmark" DESCRIPTION = "glmark2 is a benchmark for OpenGL (ES) 2.0. \ It uses only the subset of the OpenGL 2.0 API that is compatible with OpenGL ES 2.0." -HOMEPAGE = "https://launchpad.net/glmark2" -BUGTRACKER = "https://bugs.launchpad.net/glmark2" +HOMEPAGE = "https://github.com/glmark2/glmark2" +BUGTRACKER = "https://github.com/glmark2/glmark2/issues" LICENSE = "GPLv3+ & SGIv1" LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ file://COPYING.SGI;beginline=5;md5=269cdab4af6748677acce51d9aa13552" DEPENDS = "libpng jpeg udev" +DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland-native', '', d)}" -PV = "20191226+${SRCPV}" +PV = "20201114+${SRCPV}" -COMPATIBLE_HOST_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '.*-linux*', 'null', d)}" - -SRC_URI = "git://github.com/glmark2/glmark2.git;protocol=https" -SRCREV = "72dabc5d72b49c6d45badeb8a941ba4d829b0bd6" +SRC_URI = " \ + git://github.com/glmark2/glmark2.git;protocol=https \ + file://0001-fix-dispmanx-build.patch \ + file://0002-run-dispmanx-fullscreen.patch \ + " +SRCREV = "784aca755a469b144acf3cae180b6e613b7b057a" S = "${WORKDIR}/git" inherit waf pkgconfig features_check -REQUIRED_DISTRO_FEATURES += "opengl" +ANY_OF_DISTRO_FEATURES = "opengl dispmanx" PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'x11-gles2', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland opengl', 'wayland-gles2', '', d)} \ - drm-gles2" + ${@bb.utils.contains('DISTRO_FEATURES', 'dispmanx', 'dispmanx', '', d)} \ + drm-gles2 \ + " PACKAGECONFIG[x11-gl] = ",,virtual/libgl virtual/libx11" PACKAGECONFIG[x11-gles2] = ",,virtual/libgles2 virtual/libx11" @@ -33,6 +38,7 @@ PACKAGECONFIG[drm-gl] = ",,virtual/libgl libdrm virtual/libgbm" PACKAGECONFIG[drm-gles2] = ",,virtual/libgles2 libdrm virtual/libgbm" PACKAGECONFIG[wayland-gl] = ",,virtual/libgl wayland" PACKAGECONFIG[wayland-gles2] = ",,virtual/libgles2 wayland" +PACKAGECONFIG[dispmanx] = ",,virtual/libgles2 virtual/libx11" python __anonymous() { packageconfig = (d.getVar("PACKAGECONFIG") or "").split() @@ -49,6 +55,8 @@ python __anonymous() { flavors.append("drm-glesv2") if "drm-gl" in packageconfig: flavors.append("drm-gl") + if "dispmanx" in packageconfig: + flavors = ["dispmanx-glesv2"] if flavors: d.appendVar("EXTRA_OECONF", " --with-flavors=%s" % ",".join(flavors)) } |