mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-08-14 09:27:04 +00:00
* fixes:
| WARNING: Unable to execute waf --version, exit code 1. Assuming waf version without bindir/libdir support.
| DEBUG: Python function waf_preconfigure finished
| DEBUG: Executing shell function do_configure
| Traceback (most recent call last):
| File "/OE/build/luneos-kirkstone/tmp-glibc/work/core2-64-webos-linux/glmark2/2021.12-r0/git/./waf", line 163, in <module>
| from waflib import Scripting
| File "/OE/build/luneos-kirkstone/tmp-glibc/work/core2-64-webos-linux/glmark2/2021.12-r0/git/waflib/Scripting.py", line 6, in <module>
| from waflib import Utils,Configure,Logs,Options,ConfigSet,Context,Errors,Build,Node
| File "/OE/build/luneos-kirkstone/tmp-glibc/work/core2-64-webos-linux/glmark2/2021.12-r0/git/waflib/Configure.py", line 6, in <module>
| from waflib import ConfigSet,Utils,Options,Logs,Context,Build,Errors
| File "/OE/build/luneos-kirkstone/tmp-glibc/work/core2-64-webos-linux/glmark2/2021.12-r0/git/waflib/Options.py", line 6, in <module>
| from waflib import Logs,Utils,Context,Errors
| File "/OE/build/luneos-kirkstone/tmp-glibc/work/core2-64-webos-linux/glmark2/2021.12-r0/git/waflib/Context.py", line 5, in <module>
| import os,re,imp,sys
| ModuleNotFoundError: No module named 'imp'
| WARNING: /OE/build/luneos-kirkstone/tmp-glibc/work/core2-64-webos-linux/glmark2/2021.12-r0/temp/run.do_configure.1263276:146 exit 1 from 'waf_do_configure'
* this first issue can be fixed easily by backporting:
d2060dfd8a
* but then it still fails a bit later, because of SyntaxWarning in waf --version
output:
ERROR: glmark2-2021.12-r0 do_configure: Error executing a python function in exec_func_python() autogenerated:
The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_func_python() autogenerated', lineno: 2, function: <module>
0001:
*** 0002:waf_preconfigure(d)
0003:
File: '/OE/build/luneos-kirkstone/openembedded-core/meta/classes/waf.bbclass', lineno: 52, function: waf_preconfigure
0048: wafbin = os.path.join(subsrcdir, 'waf')
0049: try:
0050: result = subprocess.check_output([python, wafbin, '--version'], cwd=subsrcdir, stderr=subprocess.STDOUT)
0051: version = result.decode('utf-8').split()[1]
*** 0052: if bb.utils.vercmp_string_op(version, "1.8.7", ">="):
0053: d.setVar("WAF_EXTRA_CONF", "--bindir=${bindir} --libdir=${libdir}")
0054: except subprocess.CalledProcessError as e:
0055: bb.warn("Unable to execute waf --version, exit code %d. Assuming waf version without bindir/libdir support." % e.returncode)
0056: except FileNotFoundError:
File: '/OE/build/luneos-kirkstone/bitbake/lib/bb/utils.py', lineno: 148, function: vercmp_string_op
0144: Compare two versions and check if the specified comparison operator matches the result of the comparison.
0145: This function is fairly liberal about what operators it will accept since there are a variety of styles
0146: depending on the context.
0147: """
*** 0148: res = vercmp_string(a, b)
0149: if op in ('=', '=='):
0150: return res == 0
0151: elif op == '<=':
0152: return res <= 0
File: '/OE/build/luneos-kirkstone/bitbake/lib/bb/utils.py', lineno: 138, function: vercmp_string
0134: return r
0135:
0136:def vercmp_string(a, b):
0137: """ Split version strings and compare them """
*** 0138: ta = split_version(a)
0139: tb = split_version(b)
0140: return vercmp(ta, tb)
0141:
0142:def vercmp_string_op(a, b, op):
File: '/OE/build/luneos-kirkstone/bitbake/lib/bb/utils.py', lineno: 89, function: split_version
0085: """Split a version string into its constituent parts (PE, PV, PR)"""
0086: s = s.strip(" <>=")
0087: e = 0
0088: if s.count(':'):
*** 0089: e = int(s.split(":")[0])
0090: s = s.split(":")[1]
0091: r = ""
0092: if s.count('-'):
0093: r = s.rsplit("-", 1)[1]
Exception: ValueError: invalid literal for int() with base 10: 'SyntaxWarning'
ERROR: Logfile of failure stored in: /OE/build/luneos-kirkstone/tmp-glibc/work/core2-64-webos-linux/glmark2/2021.12-r0/temp/log.do_configure.1264918
so it's safer to just use python3-native everywhere, instead of more patches for waf
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
66 lines
2.6 KiB
BlitzBasic
66 lines
2.6 KiB
BlitzBasic
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://github.com/glmark2/glmark2"
|
|
BUGTRACKER = "https://github.com/glmark2/glmark2/issues"
|
|
|
|
LICENSE = "GPL-3.0-or-later & SGI-1"
|
|
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 wayland-protocols', '', d)}"
|
|
|
|
PV = "2021.12"
|
|
|
|
SRC_URI = " \
|
|
git://github.com/glmark2/glmark2.git;protocol=https;branch=master \
|
|
file://0001-fix-dispmanx-build.patch \
|
|
file://0002-run-dispmanx-fullscreen.patch \
|
|
file://0001-libmatrix-Include-missing-utility-header.patch \
|
|
file://0001-waflib-fix-compatibility-with-python-3.11.patch \
|
|
"
|
|
SRCREV = "0858b450cd88c84a15b99dda9698d44e7f7e8c70"
|
|
|
|
S = "${WORKDIR}/git"
|
|
|
|
inherit waf pkgconfig features_check python3native
|
|
|
|
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)} \
|
|
${@bb.utils.contains('DISTRO_FEATURES', 'dispmanx', 'dispmanx', '', d)} \
|
|
drm-gles2 \
|
|
"
|
|
|
|
PACKAGECONFIG[x11-gl] = ",,virtual/libgl virtual/libx11"
|
|
PACKAGECONFIG[x11-gles2] = ",,virtual/libgles2 virtual/libx11"
|
|
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()
|
|
flavors = []
|
|
if "x11-gles2" in packageconfig:
|
|
flavors.append("x11-glesv2")
|
|
if "x11-gl" in packageconfig:
|
|
flavors.append("x11-gl")
|
|
if "wayland-gles2" in packageconfig:
|
|
flavors.append("wayland-glesv2")
|
|
if "wayland-gl" in packageconfig:
|
|
flavors.append("wayland-gl")
|
|
if "drm-gles2" in packageconfig:
|
|
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))
|
|
}
|
|
|