Use llvmpile for mesa on x86/x86-64
v3 cover Use llvmpile for mesa on x86/x86-64
This series fixes llvm build to support multilib configurations Adds dos2unix bbclass to core from meta-oe
Fixes ppc security flags world builds
v2:
Upgrade binutils and gdb
Fix libidb2 cross build issue when build host == target host
v3:
Fix sstate differences between different builds for llvm-native Fix gdb on x86_64/musl
Import dos2unix recipe into core along with bbclass
The following changes since commit 3cb303ffee8610d41c9a0745d366556c24066bc3:
weston-init: run login before start weston.service (2018-08-20 11:59:44 +0100)
are available in the Git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/master
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=kraj/master
Khem Raj (5):
mesa: Enable gallium-llvm on x86 and x86_64
gdb: Upgrade to 8.1.1
gdb: Alias rpl_stat to stat() on musl dos2unix.bbclass: Move to oe-core
llvm: Use HOST_ARCH in LLVM_TARGETS_TO_BUILD for builds
meta/conf/distro/include/maintainers.inc | 1 +
.../gdb/{gdb-8.1.inc => gdb-8.1.1.inc} | 4 +--
...ian_8.1.bb => gdb-cross-canadian_8.1.1.bb} | 0
.../{gdb-cross_8.1.bb => gdb-cross_8.1.1.bb} | 0
.../gdb/{gdb_8.1.bb => gdb_8.1.1.bb} | 2 +-
meta/recipes-devtools/llvm/llvm_git.bb | 11 +++---
meta/recipes-graphics/cairo/cairo.inc | 3 +-
meta/recipes-graphics/mesa/mesa.inc | 3 ++
.../dos2unix/dos2unix_7.4.0.bb | 34 +++++++++++++++++++
9 files changed, 49 insertions(+), 9 deletions(-)
rename meta/recipes-devtools/gdb/{gdb-8.1.inc => gdb-8.1.1.inc} (89%)
rename meta/recipes-devtools/gdb/{gdb-cross-canadian_8.1.bb => gdb-cross-canadian_8.1.1.bb} (100%)
rename meta/recipes-devtools/gdb/{gdb-cross_8.1.bb => gdb-cross_8.1.1.bb} (100%)
rename meta/recipes-devtools/gdb/{gdb_8.1.bb => gdb_8.1.1.bb} (92%)
create mode 100644 meta/recipes-support/dos2unix/dos2unix_7.4.0.bbSignature · 1 line
2.18.0
PATCH v3 1/5 mesa: Enable gallium-llvm on x86 and x86_64
--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)
meta/recipes-graphics/cairo/cairo.inc +2 -1
@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"
meta/recipes-graphics/mesa/mesa.inc +3 -0
@@ -48,6 +48,9 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland vulkan', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11 vulkan', 'dri3', '', d)} \ " +PACKAGECONFIG_append_x86 = " gallium-llvm gallium r600" +PACKAGECONFIG_append_x86-64 = " gallium-llvm gallium r600" + # "gbm" requires "dri", "opengl" PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm"
Signature · 1 line
2.18.0
PATCH v3 2/5 gdb: Upgrade to 8.1.1
In reply to Khem Raj---
meta/recipes-devtools/gdb/{gdb-8.1.inc => gdb-8.1.1.inc} | 4 ++--
...{gdb-cross-canadian_8.1.bb => gdb-cross-canadian_8.1.1.bb} | 0
.../gdb/{gdb-cross_8.1.bb => gdb-cross_8.1.1.bb} | 0
meta/recipes-devtools/gdb/{gdb_8.1.bb => gdb_8.1.1.bb} | 0
4 files changed, 2 insertions(+), 2 deletions(-)
rename meta/recipes-devtools/gdb/{gdb-8.1.inc => gdb-8.1.1.inc} (89%)
rename meta/recipes-devtools/gdb/{gdb-cross-canadian_8.1.bb => gdb-cross-canadian_8.1.1.bb} (100%)
rename meta/recipes-devtools/gdb/{gdb-cross_8.1.bb => gdb-cross_8.1.1.bb} (100%)
rename meta/recipes-devtools/gdb/{gdb_8.1.bb => gdb_8.1.1.bb} (100%)meta/recipes-devtools/gdb/gdb-8.1.1.inc renamed from meta/recipes-devtools/gdb/gdb-8.1.inc +2 -2
@@ -18,6 +18,6 @@ SRC_URI = "http://ftp.gnu.org/gnu/gdb/gdb-${PV}.tar.xz \ file://package_devel_gdb_patches_120-sigprocmask-invalid-call.patch \ file://gdb-Fix-ia64-defining-TRAP_HWBKPT-before-including-g.patch \ " -SRC_URI[md5sum] = "f46487561f9a16916a8102316f7fd105" -SRC_URI[sha256sum] = "af61a0263858e69c5dce51eab26662ff3d2ad9aa68da9583e8143b5426be4b34" +SRC_URI[md5sum] = "372fa63a53adeee1bfbfd581d8da9e34" +SRC_URI[sha256sum] = "97dcc3169bd430270fc29adb65145846a58c1b55cdbb73382a4a89307bdad03c"
meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.bb +0 -0
meta/recipes-devtools/gdb/gdb-cross_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb-cross_8.1.bb +0 -0
meta/recipes-devtools/gdb/gdb_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb_8.1.bb +0 -0
Signature · 1 line
2.18.0
PATCH v3 3/5 gdb: Alias rpl_stat to stat() on musl
In reply to Khem RajUse CPPFLAGS instead of CFLAGS since there is C++ compiler being used for somefiles
Fixesgdb/gdbserver/../../../gdb-8.1.1/gdb/gdbserver/../common/common-utils.c:419: undefined reference to `rpl_stat' | collect2: error: ld returned 1 exit status
| make[4]: *** [Makefile:414: libinproctrace.so] Error 1
--- meta/recipes-devtools/gdb/gdb_8.1.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-devtools/gdb/gdb_8.1.1.bb +1 -1
@@ -26,4 +26,4 @@ EOF chmod +x ${WORKDIR}/python fi } -CFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday" +CPPFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday -Drpl_stat=stat"
Signature · 1 line
2.18.0
PATCH v3 4/5 dos2unix.bbclass: Move to oe-core
In reply to Khem Raj- Import from meta-oe layer
- This is useful for many packages where CR-LF
needs to be adjusted, many recipes depend on it
e.g. meta-multimedia libebml and so on.
- Add myself as maintainer for now
--- meta/conf/distro/include/maintainers.inc | 1 + .../dos2unix/dos2unix_7.4.0.bb | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 meta/recipes-support/dos2unix/dos2unix_7.4.0.bb
meta/conf/distro/include/maintainers.inc +1 -0
@@ -134,6 +134,7 @@ RECIPE_MAINTAINER_pn-dmidecode = "Alexander Kanavin <[email protected]>" RECIPE_MAINTAINER_pn-dnf = "Alexander Kanavin <[email protected]>" RECIPE_MAINTAINER_pn-docbook-xml-dtd4 = "Yi Zhao <[email protected]>" RECIPE_MAINTAINER_pn-docbook-xsl-stylesheets = "Yi Zhao <[email protected]>" +RECIPE_MAINTAINER_pn-dos2unit = "Khem Raj <[email protected]>" RECIPE_MAINTAINER_pn-dosfstools = "Yi Zhao <[email protected]>" RECIPE_MAINTAINER_pn-dpkg = "Aníbal Limón <[email protected]>" RECIPE_MAINTAINER_pn-dropbear = "Yi Zhao <[email protected]>"
meta/recipes-support/dos2unix/dos2unix_7.4.0.bb new file +34 -0
@@ -0,0 +1,34 @@ +SUMMARY = "Convert text file line endings between CRLF and LF" +DESCRIPTION = "The Dos2unix package includes utilities dos2unix and \ +unix2dos to convert plain text files in DOS or Mac format to Unix \ +format and vice versa." +HOMEPAGE = "http://waterlan.home.xs4all.nl/dos2unix.html" +SECTION = "support" + +LICENSE = "BSD-2-Clause" +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=1b78fca784db24f4a40e30b300787f3f" + +SRC_URI = "git://git.code.sf.net/p/dos2unix/dos2unix" + +# Release 7.4.0 +SRCREV = "1182533bde3c1fe65be2ead465e87671faa2c027" + +S = "${WORKDIR}/git/dos2unix" + +inherit gettext perlnative + +# The dos2unix NLS relies on po4a-native, while po4a recipe is +# provided by meta-perl layer, so make it optional here, you +# need have meta-perl in bblayers.conf before enabling nls in +# PACKAGECONFIG. +PACKAGECONFIG ??= "" +PACKAGECONFIG[nls] = "ENABLE_NLS=1,ENABLE_NLS=,po4a-native" + +EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS} LDFLAGS_USER='${LDFLAGS}'" +EXTRA_OEMAKE_class-native = "ENABLE_NLS=" + +do_install () { + oe_runmake DESTDIR="${D}${base_prefix}" install +} + +BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
2.18.0
PATCH v3 5/5 llvm: Use HOST_ARCH in LLVM_TARGETS_TO_BUILD for builds
In reply to Khem RajLLVM_TARGETS_TO_BUILD is needed to represent HOST_ARCH for builds and target specific additions should use class-target override
--- meta/recipes-devtools/llvm/llvm_git.bb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)
meta/recipes-devtools/llvm/llvm_git.bb +6 -5
@@ -44,14 +44,15 @@ def get_llvm_arch(bb, d, arch_var): else: raise bb.parse.SkipRecipe("Cannot map '%s' to a supported LLVM architecture" % a) -def get_llvm_target_arch(bb, d): - return get_llvm_arch(bb, d, 'TARGET_ARCH') +def get_llvm_host_arch(bb, d): + return get_llvm_arch(bb, d, 'HOST_ARCH') + # # Default to build all OE-Core supported target arches (user overridable). # -LLVM_TARGETS ?= "${@get_llvm_target_arch(bb, d)}" -LLVM_TARGETS_prepend_x86 = "AMDGPU;" -LLVM_TARGETS_prepend_x86-64 = "AMDGPU;" +LLVM_TARGETS ?= "${@get_llvm_host_arch(bb, d)}" +LLVM_TARGETS_prepend_class-target_x86 = "AMDGPU;" +LLVM_TARGETS_prepend_class-target_x86-64 = "AMDGPU;" ARM_INSTRUCTION_SET_armv5 = "arm" ARM_INSTRUCTION_SET_armv4t = "arm"
Signature · 1 line
2.18.0
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
In reply to Khem Rajmeta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0
^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
Please check
Andreas
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
Quoted 27 lines · Andreas Müller
meta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
Quoted 2 lines
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
do you remove opengl from DISTRO_FEATURES when enabling glesv2 ? try that out.
Quoted 4 lines
Please check
Andreas
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
Quoted 28 lines · Khem Raj
Quoted 27 lines · Andreas Müller
meta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
Quoted 7 lines
Quoted 2 lines
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
do you remove opengl from
DISTRO_FEATURESwhen enabling glesv2 ? try that out.Quoted 1 line
Yes of course I can. But this patch is wrong - we don't have gles as distro feature - and it is not even mentioned in commit message why this is done.
Andreas
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
Quoted 32 lines · Andreas Müller
Quoted 31 lines · Khem Raj
Quoted 29 lines · Andreas Müller
meta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
Quoted 8 lines
Quoted 4 lines
do you remove opengl from
DISTRO_FEATURESwhen enabling glesv2 ? try that out.Quoted 1 line
Yes of course I can. But this patch is wrong - we don't have gles as distro feature - and it is not even mentioned in commit message why this is done.
I am tempted to send a revert for the cairo part:
* Cross: It changes defaults valid for long time
* Native: As far as I can remember it causes trouble for cairo-native
* It went through without mentioning
Andreas
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
Hi Andreas
Quoted 42 lines · Andreas Müller
Quoted 32 lines · Andreas Müller
Quoted 31 lines · Khem Raj
Quoted 29 lines · Andreas Müller
meta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
Quoted 8 lines
Quoted 4 lines
do you remove opengl from
DISTRO_FEATURESwhen enabling glesv2 ? try that out.Quoted 1 line
Yes of course I can. But this patch is wrong - we don't have gles as distro feature - and it is not even mentioned in commit message why this is done.
Quoted 5 lines
I am tempted to send a revert for the cairo part:
* Cross: It changes defaults valid for long time
* Native: As far as I can remember it causes trouble for cairo-native
* It went through without mentioning
opengl as a DISTRO_FEATURE should tie into packageconfigs, the situation before this patch was not ideal, people got to work with it.
as seen in the example you cited, we can't mix opengl and gles support in packages. other layers have solved your kind of usecase like below
Quoted 2 lines
Andreas
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
Quoted 51 lines · Khem Raj
Hi Andreas
Quoted 42 lines · Andreas Müller
Quoted 32 lines · Andreas Müller
Quoted 31 lines · Khem Raj
Quoted 29 lines · Andreas Müller
meta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
Quoted 8 lines
Quoted 4 lines
do you remove opengl from
DISTRO_FEATURESwhen enabling glesv2 ? try that out.Quoted 1 line
Yes of course I can. But this patch is wrong - we don't have gles as distro feature - and it is not even mentioned in commit message why this is done.
Quoted 5 lines
I am tempted to send a revert for the cairo part:
* Cross: It changes defaults valid for long time
* Native: As far as I can remember it causes trouble for cairo-native
* It went through without mentioning
Quoted 7 lines
opengl as a
DISTRO_FEATUREshould tie into packageconfigs, the situation before this patch was not ideal, people got to work with it.as seen in the example you cited, we can't mix opengl and gles support in packages. other layers have solved your kind of usecase like below
* ^The link is broken
* Am quite sure that it breaks cairo-native or dependants (have no logs at hand - it is some time ago)
* Again: I consider this a major change and it was not even mentioned/discussed. To me it has nothing to do with 'mesa: Enable gallium-llvm on x86 and x86_64' - btw: what does that fix?
Let's close discussion here - I think after all these years here I am able to find a workaround in case of further issues. Thanks for support.
Andreas
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
Hi Andreas
Quoted 53 lines · Andreas Müller
Quoted 51 lines · Khem Raj
Hi Andreas
Quoted 47 lines · Andreas Müller
Quoted 32 lines · Andreas Müller
Quoted 31 lines · Khem Raj
Quoted 29 lines · Andreas Müller
meta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
Quoted 8 lines
Quoted 4 lines
do you remove opengl from
DISTRO_FEATURESwhen enabling glesv2 ? try that out.Quoted 1 line
Yes of course I can. But this patch is wrong - we don't have gles as distro feature - and it is not even mentioned in commit message why this is done.
I am tempted to send a revert for the cairo part:
* Cross: It changes defaults valid for long time
* Native: As far as I can remember it causes trouble for cairo-native
* It went through without mentioning
Quoted 8 lines
Quoted 7 lines
opengl as a
DISTRO_FEATUREshould tie into packageconfigs, the situation before this patch was not ideal, people got to work with it.as seen in the example you cited, we can't mix opengl and gles support in packages. other layers have solved your kind of usecase like below
* ^The link is broken
ah see cairo bbappend here
https://github.com/WebPlatformForEmbedded/meta-wpe/tree/master/recipes-graphics/cairo
Quoted 6 lines
* Am quite sure that it breaks cairo-native or dependants (have no logs at hand - it is some time ago)
* Again: I consider this a major change and it was not even mentioned/discussed. To me it has nothing to do with 'mesa: Enable gallium-llvm on x86 andx86_64' - btw: what does that fix?
gallium is for enabling Gallium llvmpipe driver as rasterizer using llvm IR code generator.
Quoted 5 lines
Let's close discussion here - I think after all these years here I am able to find a workaround in case of further issues. Thanks for support.
Andreas
Re: [PATCH 1/5] mesa: Enable gallium-llvm on x86 and x86_64
Quoted 58 lines · Khem Raj
Hi Andreas
Quoted 56 lines · Andreas Müller
Quoted 54 lines · Khem Raj
Hi Andreas
Quoted 42 lines · Andreas Müller
Quoted 32 lines · Andreas Müller
Quoted 31 lines · Khem Raj
Quoted 29 lines · Andreas Müller
meta/recipes-graphics/mesa/mesa.inc
Quoted 22 lines · Khem Raj
Signed-off-by Khem Raj <[email protected]>--- meta/recipes-graphics/cairo/cairo.inc | 3 ++- meta/recipes-graphics/mesa/mesa.inc | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-)meta/recipes-graphics/cairo/cairo.inc +2
-1@@ -22,7 +22,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"meta/recipes-graphics/mesa/mesa.inc +0
-0^ I think this came in accidentaly and it breaks builds when adding packageconfig glesv2:
| configure: error: use either --enable-gl=yes or --enable-glesv2=yes. Not both at the same time.
Quoted 8 lines
Quoted 4 lines
do you remove opengl from
DISTRO_FEATURESwhen enabling glesv2 ? try that out.Quoted 1 line
Yes of course I can. But this patch is wrong - we don't have gles as distro feature - and it is not even mentioned in commit message why this is done.
Quoted 5 lines
I am tempted to send a revert for the cairo part:
* Cross: It changes defaults valid for long time
* Native: As far as I can remember it causes trouble for cairo-native
* It went through without mentioningopengl as a
DISTRO_FEATUREshould tie into packageconfigs, the situation before this patch was not ideal, people got to work with it.
Quoted 8 lines
Quoted 5 lines
Quoted 4 lines
as seen in the example you cited, we can't mix opengl and gles support in packages. other layers have solved your kind of usecase like below
* ^The link is broken
ah see cairo bbappend here
https://github.com/WebPlatformForEmbedded/meta-wpe/tree/master/recipes-graphics/cairo
That is more or less the same I am doing in
So meta-wpe will break from now on when used together with a distro layer enabling opengl in DISTRO_FEATURES - right?
Meanwhile I've checked the native case: It builds fine. To understand why I did:
| bitbake -e cairo | grep ^DISTRO_FEATURES | <...> | DISTRO_FEATURES="<...> opengl <...>' | <...>
and
| bitbake -e cairo-native | grep ^DISTRO_FEATURES | <...>
DISTRO_FEATURES="ipv6 x11 xattr pulseaudio bluez5
gobject-introspection-data ldconfig"
| <...>
Some magic which I can't find right now, removes opengl from DISTRO_FEATURES => You patch does not break anything.
Maybe you should send some patch to meta-wpe :)
Andreas
Re: [PATCH 3/5] gdb: Alias rpl_stat to stat() on musl
In reply to Khem RajQuoted 18 lines · Khem Raj
Use CPPFLAGS instead of CFLAGS since there is C++ compiler being used for somefiles
Fixes
gdb/gdbserver/../../../gdb-8.1.1/gdb/gdbserver/../common/common-utils.c:419: undefined reference to `rpl_stat' | collect2: error: ld returned 1 exit status
| make[4]: *** [Makefile:414: libinproctrace.so] Error 1Signed-off-by Khem Raj <[email protected]>--- meta/recipes-devtools/gdb/gdb_8.1.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)meta/recipes-devtools/gdb/gdb_8.1.1.bb +0
-0
meta/recipes-devtools/gdb/gdb_8.1.1.bb EOF · line 29
Quoted 5 lines
meta/recipes-devtools/gdb/gdb_8.1.1.bb +1
-1@@ -26,4 +26,4 @@ EOF chmod +x ${WORKDIR}/python fi } -CFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday" +CPPFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday -Drpl_stat=stat"
rpl_stat() is a wrapper for stat, so by forcefully redefining rpl_stat to stat you create a local stat() function which recurses infinitely... which causes obvious runtime problems (e.g. gdbserver crashes on startup).
Simply removing these additional CPPFLAGS fixes the runtime issues for me (and doesn't trigger the original build failure so presumably something has changed since the patch was originally created...).
Re: [PATCH 3/5] gdb: Alias rpl_stat to stat() on musl
Quoted 30 lines · Andre McCurdy
Quoted 18 lines · Khem Raj
Use CPPFLAGS instead of CFLAGS since there is C++ compiler being used for somefiles
Fixes
gdb/gdbserver/../../../gdb-8.1.1/gdb/gdbserver/../common/common-utils.c:419: undefined reference to `rpl_stat' | collect2: error: ld returned 1 exit status
| make[4]: *** [Makefile:414: libinproctrace.so] Error 1Signed-off-by Khem Raj <[email protected]>--- meta/recipes-devtools/gdb/gdb_8.1.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)meta/recipes-devtools/gdb/gdb_8.1.1.bb +0
-0meta/recipes-devtools/gdb/gdb_8.1.1.bb EOF · line 29
Quoted 5 lines
meta/recipes-devtools/gdb/gdb_8.1.1.bb +1
-1@@ -26,4 +26,4 @@ EOF chmod +x ${WORKDIR}/python fi } -CFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday" +CPPFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday -Drpl_stat=stat"
rpl_stat()is a wrapper for stat, so by forcefully redefiningrpl_statto stat you create a localstat()function which recurses infinitely... which causes obvious runtime problems (e.g. gdbserver crashes on startup).
Quoted 4 lines
Simply removing these additional CPPFLAGS fixes the runtime issues for me (and doesn't trigger the original build failure so presumably something has changed since the patch was originally created...).
I think setting CPPFLAGS is not right way and we can not fully remove it as well because in this case gnulib does not recognize musl as gnu system and detection logic is wrong for musl. So what we should do is remove the above CPPFLAGS settings and instead pass the cached values to configure
CACHED_CONFIGUREVARS += "gl_cv_func_gettimeofday_clobber=no"
for stat issue it has been fixed [1] so we can just drop it.
[1] https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=3c025cfe5efc44eb4dfb03b53dca28e75096dd1e
care to send a patch ?
Thanks
-Khem
Re: [PATCH 3/5] gdb: Alias rpl_stat to stat() on musl
Quoted 43 lines · Khem Raj
Quoted 30 lines · Andre McCurdy
Quoted 18 lines · Khem Raj
Use CPPFLAGS instead of CFLAGS since there is C++ compiler being used for somefiles
Fixes
gdb/gdbserver/../../../gdb-8.1.1/gdb/gdbserver/../common/common-utils.c:419: undefined reference to `rpl_stat' | collect2: error: ld returned 1 exit status
| make[4]: *** [Makefile:414: libinproctrace.so] Error 1Signed-off-by Khem Raj <[email protected]>--- meta/recipes-devtools/gdb/gdb_8.1.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)meta/recipes-devtools/gdb/gdb_8.1.1.bb +0
-0meta/recipes-devtools/gdb/gdb_8.1.1.bb EOF · line 29
Quoted 5 lines
meta/recipes-devtools/gdb/gdb_8.1.1.bb +1
-1@@ -26,4 +26,4 @@ EOF chmod +x ${WORKDIR}/python fi } -CFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday" +CPPFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday -Drpl_stat=stat"
rpl_stat()is a wrapper for stat, so by forcefully redefiningrpl_statto stat you create a localstat()function which recurses infinitely... which causes obvious runtime problems (e.g. gdbserver crashes on startup).Quoted 4 lines
Simply removing these additional CPPFLAGS fixes the runtime issues for me (and doesn't trigger the original build failure so presumably something has changed since the patch was originally created...).
I think setting CPPFLAGS is not right way and we can not fully remove it as well because in this case gnulib does not recognize musl as gnu system and detection logic is wrong for musl. So what we should do is remove the above CPPFLAGS settings and instead pass the cached values to configure
Quoted 8 lines
CACHED_CONFIGUREVARS+= "gl_cv_func_gettimeofday_clobber=no"for stat issue it has been fixed [1] so we can just drop it.
[1]
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=3c025cfe5efc44eb4dfb03b53dca28e75096dd1ecare to send a patch ?
Don't really have time right now. For the CACHED_CONFIGUREVARS tweaks you should have a look at the Buildroot solution - it also has similar fixes for strerror() and detection of prfpregset_t. They may be applicable for OE too.